just
is a handy way to save and run project-specific commands.
It's unrelated to the package with the same name on PyPI.
# macOS
brew install just
# Linux
# Install from https://github.com/casey/just/releases
# Show all available commands
just # Shortcut for just --list
Set up a local development environment with
just devenv
and create a new branch. Then, iteratively:
-
Make changes to the code
-
Run the tests with
just test
-
Check the code for issues with
just check
-
Fix any issues with
just fix
-
Commit the changes
Finally, push the branch to GitHub and open a pull request against the main
branch.
OpenSAFELY SQL Runner follows Semantic Versioning, v2.0.0.
A new patch version is automatically tagged when a group of commits is pushed to the main
branch;
for example, when a group that comprises a pull request is merged.
Alternatively, a new patch version is tagged for each commit in the group that has a message title prefixed with fix
.
For example, a commit with the following message title would tag a new patch version when it is pushed to the main
branch:
fix: a bug fix
A new minor version is tagged for each commit in the group that has a message title prefixed with feat
.
For example, a commit with the following message title would tag a new minor version when it is pushed to the main
branch:
feat: a new feature
A new major version is tagged for each commit in the group that has BREAKING CHANGE
in its message body.
For example, a commit with the following message body would tag a new major version:
Remove a function
BREAKING CHANGE: Removing a function is not backwards-compatible.
Whilst there are other prefixes besides fix
and feat
, they do not tag new versions.