release-plz 0.3.27

Update version and changelog based on semantic versioning and conventional commits
release-plz-0.3.27 is not a library.

release-plz-logo

Crates.io CI Docker

Release-plz helps you release your Rust packages by automating:

  • CHANGELOG generation (with git-cliff).
  • Creation of GitHub/Gitea releases.
  • Publishing to a cargo registry (crates.io by default).
  • Version bumps in Cargo.toml.

Release-plz updates your packages with a release Pull Request based on:

🤔 What's a Release PR?

Release-plz maintains Release PRs, keeping them up-to-date as you merge additional commits. When you're ready to create a release, simply merge the release PR.

pr

When you merge the Release PR (or when you edit the Cargo.toml versions by yourself), release-plz:

  • Creates a git tag named <package_name>-v<version> (e.g. tokio-v1.8.1).
  • Publishes the package to the cargo registry by running cargo publish.
  • Publishes a GitHub/Gitea release based on the git tag.

📚 Docs

Learn how to use release-plz in the mdbook docs.

🤖 Running release-plz

There are two ways to run release-plz:

  • GitHub Action: Run Release-plz from CI. The action both updates and releases your packages.
  • CLI: Run release-plz from your terminal or other CI systems (Gitea supported).

💖 Users

This search and this page show the public GitHub repositories using release-plz in CI.

🌓 Similar projects

  • release-please: release-plz is inspired by release-please, but instead of determining the next versions based on git tags, release-plz compares local packages with the ones published in the cargo registry. Plus, release-plz doesn't need any configuration and is optimized for Rust projects.
  • cargo-smart-release: Fearlessly release workspace crates and with beautiful semi-handcrafted changelogs.

🙏 Credits

Parts of the codebase are inspired by: