towncrier VS cargo-release

Compare towncrier vs cargo-release and see what are their differences.

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
towncrier cargo-release
5 11
734 1,245
1.0% 1.3%
7.6 9.1
7 days ago 5 days ago
Python Rust
MIT License Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

towncrier

Posts with mentions or reviews of towncrier. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-23.
  • Changelog-Driven Releases
    5 projects | news.ycombinator.com | 23 Apr 2024
    I don't really like writing the change log automatically from commits. I think those both have a slightly different audience and thus need different wording.

    I know the frustration of merge conflicts on the change log file.

    Right now, I'm creating change logs by hand which is time consuming to do on release time. I'm considering switching to using towncrier or something similar, where you have a changes dir with one file per change for creating change logs --> https://towncrier.readthedocs.io/

  • towncrier VS cf_changelog - a user suggested alternative
    2 projects | 10 Jan 2024
  • What are some examples of good release notes from open source projects that you have come across?
    3 projects | /r/opensource | 17 Apr 2023
    Here is an example of another decent one. Not perfect, but it is generated with TownCrier, so it is easy to maintain.
  • The Subtle Art of the Changelog
    5 projects | news.ycombinator.com | 25 Jan 2023
    We used to... somewhat attempt manual changelogs. Every time it came to a release the release manager would ask around for what the key changes were, and we usually ended up with only a couple of entries.

    Now, we use https://github.com/twisted/towncrier . Every change goes through pull requests, and every PR must have a newsfragment file - and we enforce this with a test that fails if it isn't present (with convenience functions of rewriting the number to match the PR if you name the news file XXX.{category}). If it's not a user-facing change, then we just have a category that is ignored.

    On releases (or on individual PRS along the way), the release manager generates the changelog, but also edits them into a relatively coherent style (or rewrites developers news fragments along the way).

    Every change has a note written aimed at the user. Every entry in the changelog has a link to the relevant PR or commit. We have much better changelogs now.

  • Changie - Automated Changelog Tool
    5 projects | dev.to | 20 Feb 2021
    Twisted's Town Crier is a generic tool

cargo-release

Posts with mentions or reviews of cargo-release. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-23.
  • Changelog-Driven Releases
    5 projects | news.ycombinator.com | 23 Apr 2024
    My problem with maintaining a changelog during development is it can serve as a source of merge conflicts. Instead, I follow Covnentional Commit style and manually write my changelog entries based on the commits. I have a tool [0] that can show me the relevant commits for a package in my repo and automates the entire release process, including doing sanity checks.

    I also feel like releasing from CI is hard, especially if you have multiple packages in a repo [1], including

    - You can't as easily introspect the process

    - You can't as easily recover from failure

    - Getting a lot of the nuance right, like handling releases concurrent to merging of PRs, is difficult

    - When the workflow is an ever-present "release PR" that you merge when ready has issues with selecting which packages to release and at what version

    I have been considering making a tool to generate changelogs from fragments. Been keeping notes at https://github.com/epage/epage.github.io/issues/23

    [0]: https://github.com/crate-ci/cargo-release

    [1]: https://github.com/MarcoIeni/release-plz/discussions/1019

  • Oxlint – written in Rust – 50-100 Times Faster than ESLint
    13 projects | news.ycombinator.com | 15 Dec 2023
    You should combine step 1 and 2 with CI. Just tag a version in your git, push to remote and have CI auto build a release for you.

    Use github actions or other setup for other backends.

    Or go nuts with cargo-release.

    https://github.com/crate-ci/cargo-release

    https://github.com/cargo-bins/release-pr

  • Rust 2030 Christmas list: Subcrate dependencies
    6 projects | /r/rust | 24 Jan 2023
    tools like cargo-release
  • `toml` vs `toml_edit` (ie `toml` 0.6 is out)
    5 projects | /r/rust | 23 Jan 2023
    Just to check, are you aware of cargo-edit's cargo-set-version or cargo-release?
  • What's everyone working on this week (45/2022)?
    9 projects | /r/rust | 7 Nov 2022
    I released my first crate that provides a derive macro to easily obtain a name of a current variant in an enum as a string. I did it mostly to learn about procedural macros and the process of releasing a crate. I then found out there is strum which does this and much more. Nonetheless, I learned a lot and I found couple of nice tools like ```cargo-release and git-cliff.
  • cargo-release v0.22 is out!
    1 project | /r/rust | 21 Oct 2022
  • A GitHub Action for creating "Release PRs" for Cargo projects.
    3 projects | /r/rust | 5 Sep 2022
    I'll note there is an issue in the cargo-release repo where this kind of workflow is wanted. https://github.com/crate-ci/cargo-release/issues/119
  • [Gitoxide December Update]: a new object database and upcoming multi-pack index support
    5 projects | /r/rust | 21 Jan 2022
    cargo-release is on about the same level of features used
  • cargo-release v0.19
    1 project | /r/rust | 7 Jan 2022
    cargo-release automates the release process for your crate. For example, with clap, all I do is add entries to the CHANGELOG and run cargo release patch and cargo-release takes care of updating files, publishing to crates.io, tagging, and pushing.
  • Introducing `cargo smart-release` - the new way to release workspace crates
    3 projects | /r/rust | 13 Aug 2021
    Yes, developers from all three tools were sharing ideas with each other recently

What are some alternatives?

When comparing towncrier and cargo-release you can also consider the following projects:

standard-version - :trophy: Automate versioning and CHANGELOG generation, with semver.org and conventionalcommits.org

Rustup - The Rust toolchain installer

changie - Automated changelog tool for preparing releases with lots of customization options

just - 🤖 Just a command runner

conventional-changelog-config-spec - a spec describing the config options supported by conventional-config for upstream tooling

cargo-make - Rust task runner and build tool.

nextrelease - One-click release publishing by merging an automated PR.

Clippy - A bunch of lints to catch common mistakes and improve your Rust code. Book: https://doc.rust-lang.org/clippy/

semver - Semantic Versioning Specification

cargo-ebuild - cargo extension that can generate ebuilds using the in-tree eclasses

pyscaffold - 🛠 Python project template generator with batteries included

cargo-modules - Visualize/analyze a Rust crate's internal structure