All notable changes to this project will be documented in this file.
- Pin the Rust nightly version
- Pin the Rust nightly version
- Allow custom commit range while prepending (#68)
- Remove redundant logging while using
--context
(#71) - Update expected changelog date
- Add more regex examples for commit_preprocessors
- Update GitHub Actions reference link in README.md
- Add
cliff-jumper
to similar projects (#83) - Update the title of projects section
- Show a message if a newer version is available (#69)
- Add
--context
flag for outputting context (#71) - Support placing configuration inside Cargo.toml (#46)
- [breaking] Prefix environment variables with
GIT_CLIFF_
(#76) - Print more debug information when
-vv
is used (#79) - Support preprocessing commit messages using regex (#62)
- Add man page generation script (#35)
- Return to nightly builds (#73)
- Include man page in the release assets
- Upgrade git-conventional dependency (#82)
- Upgrade versions in Dockerfile
- Build Docker images for arm64
- Disable default features for the Docker image
- Strip the binaries in Docker image
- Upgrade dependencies
- Make update-informer opt-out via feature flag (#69)
- Use implicit Result type in completions script
- Update the changelog template for tag message
- Do not skip all tags when
skip_tags
is empty (#63) - Use root commit when --latest and there is only one tag (#59)
- Use the correct branch for codecov (#65)
- Fix
keepachangelog
config example (#66)
- Upgrade regex dependency to fix CVE-2022-24713
- Upgrade dependencies
- Only drop previous releases if skipped (#44)
- Run clippy from nightly toolchain
- Update tests about optional config values
- Set the previous release when using
--unreleased
(#47) - Lower the priority of global configuration file (#51)
- Update the download link of latest grcov release
- Use the correct tar command for extracting grcov archive
- Update grcov download command
- Update custom error tests
- Update template contexts about link_parsers
- Add minimal example
- Update copyright years
- Add
link_parsers
for parsing/extracting links (#42) - Make the
git
section optional (#45) - Make the
changelog
section optional (#45) - [breaking] Use conventional commit body to check against commit parsers
- [breaking] Replace --topo-order by --date-order (#58)
- Update arg parsing to clap v3 (#49)
- Upgrade dependencies
- Bump the Rust version in Dockerfile
- Run cargo-audit for checking vulnerabilities
- Update the runner to macos-11
- Apply clippy suggestions
- [breaking] Change the default value of
trim
totrue
- Unify serde and serde_derive using derive feature (#57)
- Update the styling
- Comply with MD022 and fix minor typos (#61)
- Update log test about exclude path
- Override the sort related config if args are present (#39)
- Checkout the repository before running fixtures
- Use the defined configuration file for fixtures
- Update the multi line docker command
- Strip the carriage return on fixtures while comparing
- Drop the skipped releases from 'previous' field
- Update
--with-commit
example in README.md
- Add
--topo-order
flag for sorting tags (#29) - Support specifying the sorting methods in config (#31)
- Accept glob patterns for
--commit-path
argument - Support multiple values for
--commit-path
argument - Add
--exclude-path
argument for excluding related commits - Add
--current
flag for processing the current tag (#37) - Add
ignore_tags
option (#40) - Use more explanatory error messages about templates
- Support having both conventional and unconventional commits in the changelog
- Add
--with-commit
argument for including custom commit messages in changelog
- Improve the workflow for test fixtures
- Run test fixtures on ubuntu-latest
- Indicate the breaking changes via default config
- Rename the config value for commit order
- [breaking] Rename
--commit-path
argument to--include-path
- Install the Rust toolchain explicitly for crates.io releases
- Add support for special characters in scopes (#26)
- Add GitLab CI/CD section to README.md (#24)
- Update GitLab CI/CD section
- Run CI workflows periodically
- Remove unnecessary Cargo.lock entry from .gitignore
- Upgrade dependencies
- Migrate to Rust 2021 edition
- Bump the Rust version in Dockerfile
- Use a better error message for invalid repo path
- Update lychee arguments to skip checking files
- Remove tags from the base image names
- Remove only the leading "v" from tags (#18)
- Add scope-sorted example (#16)
- Add raw/rendered output for scoped-sorted example
- Add packaging status badge to installation section
- Mention the signing key for binary releases (#17)
- Add "build from source" section to README.md
- Add
--sort
argument for sorting commits (#15)
- Set a version for the checkout action
- Update the runner to ubuntu-20.04
- Use cache for docker builds
- Use docker meta for tagging for GHCR
- Extend the tags for docker meta
- Rename the GHCR package due to legacy reasons
- Specify the latest tag explicitly
- Use explicit image name for docker automated builds
- Use docker.yml workflow for CI/CD
- Upgrade dependencies
- Fix the newline issues in scoped-sorted example
- Fix default regexes and references in docs (#7)
- Update installation instructions for Arch Linux
- Add badge for joining the Matrix chat
- Update example regexes
- Update the default regex in scoped config example
- Support parsing the missing scopes with
default_scope
(#8) - Support generating a changelog scoped to a directory (#11)
- Upgrade dependencies
- Pin the cargo-chef version in Dockerfile
- Update docker commands to only mount the .git directory
- Bump
git-conventional
to0.10.1
(#6) - Bump dependencies
- Bump cargo-chef version in Dockerfile
- Mention breaking changes for templating
- Update template examples to mention how to contribute
- Add
breaking_description
to the template context (#4)
- Show the committed changes before creating a tag
- Change the config file location for crates.io release
- Fetch the dependencies before copying the file to embed
- Copy the config file into registry to resolve it for embed
- Copy the configuration file to embed into package
- Use custom error type for UTF-8 errors
- Update the doc comment of
prepend
- Embed the default configuration file into the binary
- Add
--init
flag for creating the default config - Support a global location for configuration file (#2)
- Move
cliff.toml
to config/
- Create a constant for default configuration file
- Update the log message for unprocessed tags
- Update the message of
--init
flag
- Use the correct name of completions binary
- Update the example completion command
- Set the previous release when using
--latest
(#3)
- Add installation instructions for the AUR
- Rename the shell completions binary
- Upgrade dependencies
- Process only the last 'previous' release
- Optimize the release vector size
- Update the environment variable parsing settings
- Use footers field as an array for the context
- Sort the commits in topological order
- Return error if there is not a latest tag to process
- Update symbolic link to the default config
- Remove symbolic link
- Use 7 digits for short SHA
- Update README.md about usage
- Update README.md about template and examples
- Add examples for CLI usage
- Add examples for templating
- Update detailed template example
- Add preview image to README.md
- Upgrade dependencies
- Remove etc directory from .gitignore
- Bump the rust version
- Upgrade dependencies
- Rename changelog argument to prepend
- Center the badges
- Update the comments in template context
- Remove comments from template context
- Wrap table of contents into summary
- Remove quotes from rendered output
- Add tests
- Update repository tests about getting the latest tag
- Wait for core library to update on crates.io before publish
- Wait between publishing crates
- Generate changelog on a dedicated/different job
- Update project details
- Use a separate step for setting the changelog body
- Fix the syntax of publish step arguments
- Publish the cargo workspace members seperately
- Verify the created tag after creation
- Indicate which versions are managed by the script
- Update lychee arguments to exclude invalid links
- Add CONTRIBUTING.md
- Add link to the signer key of the tag
- Add RELEASE.md
- Enable crates.io releases
- Set the new version in release script
- Use only one step for uploading releases
- Strip the changelog header before escaping
- Use seperate steps for uploading releases
- Use printf to prevent field splitting the variable
- Fix the character escape in release script
- Return tags by their creation order
- Update .editorconfig about shell scripts
- Include the commit id in the custom template
- Remove the custom changelog template
- Use custom error message for GroupError
- Update the order of entries in config
- Specify the committer email in release script
- Double quote the environment variable
- Rename the docker automated builds action
- Support setting the body template via args
- Set a custom changelog for the tag message
- Override the changelog template
- Set the release body on linux
- Update config to skip release commits
- Chore(config): update template to include commit ids
- Strip the unreleased title from tag message
- Update commit parsers to match the commit type
- Fix setting the release body
- Update the skip_tags regex
- Update template to include commit ids
- Use default tag_pattern for tests
- Add
--output
argument
- Add release title to the tag message
- Set the release name explicitly
- Remove user directive from Dockerfile
- Set the changelog as release body
- Make tag_pattern optional
- Update the doc comment for completions script
- Add usage section
- Add
--workdir
argument - Show the processsed commit message
- Add release script
- Update the release script about arguments
- Strip the markdown format from tag message
- Update the value name for
--strip
- Improve logging
- Update value names and description
- Use bash while setting the release version
- Add docker releases
- Include configuration file in the binary releases
- Specify the bash as shell
- Set the release body text
- Install musl-tools for musl builds
- Update config