All notable changes to this project will be documented in this file
- Fixed incorrect version inference in github actions
- Fixed package missing the cli module in some circumstances
- Added the
body-file
output to the github action.body_file
still exists but is aliased tobody-file
- Fixed package failing to install without git history
- Added the ability to specify the changelog path in the action
- Fixed escape characters being included in github actions body file
- Added pypi tags for python 3.11 and 3.12
- Added a github action to the repository. The action can create new releases and fetch version information. For more information see the "Github Actions" page in the handbook
- Added a
--version
option toyaclog show
that prints just the version number
- Removed support for Click 7 as a dependency
- Added the
-s
option toyaclog release
to increment arbitrary version segments - Added the
-n
option toyaclog release
to create a new release instead of releasing a new one - Added the
-y
option toyaclog release
to answer "yes" to all confirmation dialogs. Use with caution!
- Yaclog now only tries to use git when invoked with a command that needs it, meaning most sub commands can now be used on systems without git
- Fixed
yaclog release -C -c
not committing changes to cargo.toml
- Added a flag to update Rust Cargo.toml files when releasing a new version
- Fixed tests folder being installed as a package
- Fixed
show
command not working with Click version 8 - Fixed release message incorrectly stating if a commit will be created or not
- Updated to support Click version 8
- Modified module documentation page titles to include a module role
- Fixed tag names with spaces in versions
- Fixed broken header in new changelogs
- Improved consistency in command documentation metavars
- API changes:
header
attribute renamed topreamble
to avoid confusion.
- improved version header parsing to be more robust and handle multi-word version names.
- improved version number incrementing in
release
.- can now handle other text surrounding a pep440-compliant version number, which will not be modified
- can now handle pre-releases correctly. The version to increment is the most recent version in the log with a valid pep440 version number in it.
- Release increment and prerelease increments can be mixed, allowing e.g:
yaclog release -mr
to create a release candidate with in incremented minor version number.
release
base version is now an argument instead of an option, for consistency with other commands.
entry
with multiple-b
options no longer add sub bullet points, instead adding each bullet as its own line.
- Terminal output has color to distinguish version names/headers, sections, and git information.
- Extra newlines are added between versions to improve readability of the raw markdown file.
- Unit tests in the
tests
folder
- Default links and dates in VersionEntry are now consistently
None
- Changelog links dict now contains version links. Modified version links will overwrite those in the table when writing to a file
- Changelog object no longer errors when creating without a path.
release
now resets lesser version values when incrementingrelease
now works with logs that have only unreleased changes
- Readme file now has installation and usage instructions.
- yaclog command entry point added to setup.cfg.
release -c
will no longer create empty commits, and will use the current commit instead.
release
andentry
commands now work using empty changelogs.
yaclog
tool for manipulating changelogs from the command lineinit
command to make a new changelogformat
command to reformat the changelogshow
command to show changes from the changelogentry
command for manipulating entries in the changelogtag
command for manipulating tags in the changelogrelease
command for creating releases
- New yak log logo drawn by my sister
- Updated package metadata
- Rewrote parser to use a 2-step method that is more flexible.
- Parser can now handle code blocks.
- Parser can now handle setext-style headers and H2s not conforming to the schema.
First release
yaclog.read()
method to parse changelog files