When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the maintainers of this repository before making a change.
Please have a look at the GitHub guides before contributing. Especially the GitHub workflow guide.
- Do create feature requests / issues before working on a new feature or fixing a bug.
- Do create a feature / bugfix branch whenever possible. No code
related commits should go directly to
main
. This will help to keep merge conflicts at a minimum and the history ofmain
tidy. - Do reference issues in your commit comments and PR. This will help to see the reason for a change. While it might be clear to you now why you made a certain change, you might have forgotten it in a few weeks.
- Do use Conventional Commits style for your commit messages.
- Do stick to the templates when writing an issue or pull request whenever possible.
- Do use Google style pydoc strings for documentation.
- Don't merge your own pull requets! Let someone else check your work before it goes into
main
.
- Do address a single concern in the least number of changes as possible.
- Do make sure your PR can be auto-merged into the branch you want to merge against e.g.
main
. - Do use squash commits on merging feature branches to
main
/develop
to keep their history clean. Rule of thumb: Every merge should result in one conventional commit for the CHANGELOG. - Do use Conventional Commits style for your PR comments.
- Merge all changes to
develop
branch. - TEST EVERYTHING!
- Update all version numbers. (setup.py, Dockerfile). Use semantic versioning.
- Create a version bump commit with comment
chore(release): <VERSION>
- Create version tag locally. Name it
v<version>
. - Run
auto-changelog -u -d "Commandline interface for Sen2Cube.at backend." --tag-prefix=v --github
- Amend
v<VERSION>
commit with generatedCHANGELOG.md
- Push everything and create GitHub release.