releasy - a simple release notes tool.
Writing and maintaining changelogs or release notes is not something a developer likes to spend time for nor is it fun to gather every information for a feature right before release time and write your changelogs or release notes late after you implemented a particular feature.
releasy
offers a pragmatic but opinionated approach to provide changelog or release note entries within a pull-request (PR), store them until release date and generate the artifacts as a part of your build process when your about to release a new version.
The releasy
-tool allows the following processes:
- Adding a changelog entry: Provided by the developer within a PR.
- Adding a release note entry: Provided by the developer within a PR.
- Creating release notes: Created out of existing release note entries within the repository as a part of the build pipeline.
- Updating a
CHANGELOG.md
-file: Created out of existing changelog entries within the repository as a part of the build pipeline.
releasy -h
Usage: releasy [command] [options]
Options:
-?|-h|--help Show help information.
Commands:
add-changelog Creates a new changelog entry (i.e. releasy add-changelog -i "my-issue-id" -p "feature" -t "audit" -m "My super duper text")
add-releasenote Creates a new release note entry (i.e. releasy add-releasenote -i "my-issue-id" -p "feature" -t "audit" -m "My super duper text")
create-releasenotes Creates releasenotes based on release note entries for a dedicated release (i.e. releasy create-releasenotes -v "1.2.3" -p "some-permalink")
update-changelog Updates the CHANGELOG.md based on changelog entries for a dedicated release (i.e. releasy update-changelog -v "1.2.3" -p "some-permalink")
Run 'releasy [command] -?|-h|--help' for more information about a command.
Note: Both
add-*
-commands if not pre-populated with arguments or options will guide and ask you on the cli for the appropriate input (interactive).
For a brief glimpse of how the generated changelog looks like see the CHANGELOG.md for this repo.
A sample for a generated releasenote might look as the following:
# Releasenotes v1.2.3
## Feature
- [#1001](https://github.com/thomasduft/releasy/issues/1001): Added audit module (audit)
- first
- second step
- third step
## Fix
- [#1002](https://github.com/thomasduft/releasy/issues/1002): Fixed wrong db schema (audit)
- first run the db migrations
- seed data
- test your application