Not getting merged
A simple standalone Python module for CHANGELOG and release management. Spun out of octoDNS.
pip install changelet
For help with using the command
changelet --help
In most cases the only command you're likely to encounter is create
. It will be used to add a changelog entry to your branch/PR.
changelet create --type (TYPE) Short description of your change to be included in the changelog
The options for type are
major
- rare for non-maintainers, a change that will break backwards compatibility and require users to take care when updatingminor
- adds new functionality that is either self contained or done in a completely backwards compatible mannerpatch
- fixes an issue or bug with existing functionalitynone
- change that should not be included in the CHANGELOG and will not directly impact users, e.g. documentation, README, tooling, ...
There is an optional GitHub slash command action that can installed. If it's installed users with write permissions to the repo can add a comment in the PR to add Changelog entries. The interface is almost idential to the command line, though only the create command is supported at this time.
/changelog create -t none This is an example changelog entry added as a PR comment
Currently the tooling has only been tested with repositories in the octoDNS org, but it should be usable elsewhere. You'll want to have a look at the following for how to incorporate it into your repo and workflows.
- (octodns) script/changelog
- .git_hooks_pre-commit (and script/bootstrap which installs it)
- .github/workflows/changelog.yml
See the /script/ directory for some tools to help with the development process. They generally follow the Script to rule them all pattern. Most useful is ./script/bootstrap
which will create a venv and install both the runtime and development related requirements. It will also hook up a pre-commit hook that covers most of what's run by CI.