Foreword¶
This is a brief introduction about how this tool works and what it can do, so you can know if it is right for your project.
How it works¶
Braulio walks through all commits of your Git project and classifies them to determine what should be the next version and generate a proper changelog. To do so, it collects only Commits that follow a given message convention.
Release steps:¶
- Determine the current version.
- Collect unreleased changes.
- Classify them by type and scope.
- Determine the new version.
- Generate the changelog.
- Update files with the new version string.
- Commit and tag.
Version schema¶
This tool works with the major.minor.patch version scheme and most of the features of Semantic Versioning 2.0 are supported. If you use Calendar Versioning or another version schema, this tool is not for you.
It works with final releases as well as pre-releases, although you have to configure the stages of your project first.
PEP440 dictates how pre-release segments should look. This tool does not enforce anything about the pre-release segment format, but you can configure it to fit PEP440.
Changelog¶
The changelog is generated using the subject extracted from the commit messages. The output is in ReStructuredText format and can not be customized at this moment.
Project Status¶
This is still in development, and things may change, but you can give it a try if you want.