Making it easier to contribute code to Liquibase
The internal Liquibase team spent the past month streamlining code contributions for Liquibase Community! We have a lot of updates to share.
Making it simple to contribute
Here are a few ways we’ve simplified your experience:
- Easy, step-by-step instructions for contributing
- Consolidation of issues and pull requests into GitHub
- New issue and pull request templates
- Improved pull request process with better status and automated builds
Contributing code
To ensure everyone knows how to contribute code, issues, and documentation feedback to Liquibase, we’ve updated our documentation!
- How to Report an Issue in Liquibase Core
- How to Contribute Code to Liquibase Core
- How to Write Liquibase Core Unit Tests
- How to Write Liquibase Core Integration Tests
- How to Provide Liquibase Documentation Feedback
Moving all the way to GitHub
While we’ve always used GitHub for pull requests (at least since the source code was migrated from SourceForge), issues have been tracked separately in Jira. Last month, we closed Jira to new issues and made GitHub Issues our primary place for new tickets. Now that everything is in GitHub, it will be easier to open issues and we’ll be able to process your code contributions more quickly.
New templates We also made improvements to our GitHub space. We configured default templates for both new issues and pull requests. You’ll know exactly what information we need so there should be less back-and-forth.
Improved communication We improved the communication of GitHub pull requests by adding additional status values so you can easily track your contribution’s process. Here is the new list of status values:
Automated build and test Finally, we completed the automated build and test platform in Travis CI. From now on, when you make a commit back to the main liquibase/liquibase repository, all pull requests will be built automatically. The builds are available for both the 3.8.x and master branches.
Please make all new pull requests against master!
After the build is complete, the system runs unit and integration tests (currently for in-memory databases). We are in the process of adding an external database for the integration tests. We’ll keep you posted and let you know when it’s ready.
The output of each build can be found at the bottom of your pull request (see below). We also added Codecov to give feedback on unit test coverage and Snyk to alert us to 3rd party license issues and vulnerabilities. Click the Details link in your pull request to see the results from each of these tools (as shown below).
Please share your feedback with us on these and any other changes you’d like to see! With your help, we’ll continue to improve so we can make contributing to Liquibase a simple and rewarding experience.