Skip to content

Latest commit

 

History

History
63 lines (43 loc) · 4 KB

CONTRIBUTING.md

File metadata and controls

63 lines (43 loc) · 4 KB

Contributing to Ballerina Library

Ballerina is an open source programming language and platform for cloud-era application programmers to easily write software. It is licensed under the Apache License and is nurtured by all the contributors of the Ballerina community. The Ballerina library are a set of Ballerina packages that are developed by the Ballerina team and the Ballerina community. The Ballerina Library repo is used to track all the issues related to Ballerina packages maintained by the Ballerina team. Each package has its own repository and the issues related to each package are tracked by the label module/<module-name>.

We appreciate your help!

Get started

  • Download Ballerina and go through the learning resources.
  • Read the Ballerina Code of Conduct.
  • Join the Ballerina community.
  • Submitting a bug is just as important as contributing to code. Report an issue.
  • Start with GitHub issues that can be fixed easily:
    • Browse issues labeled good first issue in the source code repo.
    • Use comments on the issue itself to indicate that you will be working on it and get guidance and help.
    • Check out the relevant module repository for the issue you are fixing.

Build the source code

Refer to the README of the relevant module repository for prerequisites and the build instructions.

Set up the development environment

Submit your contribution

  1. Do your changes in the source code.

  2. Add unit tests accordingly.

    • The build process will automatically execute all the tests.
    • A Pull Request must have at least 80% code coverage.
  3. Commit the changes to your fork and push them to the corresponding original repo by sending a Pull Request (PR).

    Tip: Follow these commit message requirements:

    • Separate subject from the body with a blank line

    • Limit the subject line to 50 characters

    • Capitalize the subject line

    • Do not end the subject line with a period

    • Use the imperative mood in the subject line. A properly formed Git commit subject line should always be able to complete the following sentence:

      If applied, this commit will <your subject line here>

    • Wrap the body at 72 characters

    • Use the body to explain what and why vs. how

    For more information, go to How to Write a Git Commit Message.

  4. Accept the Contributor License Agreement (CLA)

    You need to Accept the Ballerina Contributor License Agreement (CLA) when prompted by a GitHub email notification after sending your first Pull Request (PR). Subsequent PRs will not require CLA acceptance.

    If the CLA gets changed for some (unlikely) reason, you will be presented with the new CLA text after sending your first PR after the change.

Propose changes to Ballerina

Start the discussion on the changes you propose in the Ballerina Discord. Once there is enough consensus around the proposal, you will likely be asked to file an issue on GitHub and label it as Type/Proposal to continue a detailed discussion there.