🍺 BREW Explorer

← all formulae

cargo-release

brew install cargo-release v1.1.2 Apache-2.0 OR MIT

Cargo subcommand `release`: everything about releasing a rust crate

24
30-day installs · #6324
80
90-day · #6104
421
365-day · #5510
1.6k
★ GitHub stars · updated 2mo ago

Runtime dependencies

Build dependencies

GitHub topics

cargo cargo-subcommand rust

Links

Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [
    "pkgconf",
    "rust"
  ],
  "categories": [],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [
    "libgit2"
  ],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Cargo subcommand `release`: everything about releasing a rust crate",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:36:09+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "cargo-release",
  "github_default_branch": "master",
  "github_last_commit_at": "2026-06-15T15:27:14Z",
  "github_readme_excerpt": "# cargo release\n\n\u003e Streamline your crate release process\n\n`cargo release` extends `cargo publish` with common release practices like\nvalidation, version management, tagging, and pushing.\nThe process is customizable but with defaults that should help you get up and running quickly.\n\nFeatures include:\n- Ensure you are in a good state for release, including:\n  - Right branch\n  - Up-to-date with remote\n  - Clean tree\n- Supports workspaces using cargo\u0027s native flags, like `--workspace`, `--exclude` and `--package`\n  - Updates dependent crates in workspace when changing version\n  - Change detection to help guide in what crates might not need a release\n  - Optionally share commits\n- Handles `cargo publish`, tagging, and pushing\n- Pre-release search and replace for custom version updates, including\n  - [Updating changelogs](docs/faq.md#maintaining-changelog)\n  - Update tags in `Dockerfile`s\n- Pre-release hook for extra customization, including\n  - [CHANGELOG generation](docs/faq.md#maintaining-changelog)\n\n## Install\n\nCurrent release: 1.1.2\n\n```console,ignore\n$ cargo install cargo-release\n```\n\n## Usage\n\n```console,ignore\n$ cargo release [level]\n\u003cdry-run output\u003e\n$ cargo release [level] --execute\n```\n\n* See the [reference](docs/reference.md) for more on `level`, other CLI\n  arguments, and configuration file format.\n* See also the [FAQ](docs/faq.md) for help in figuring out how to adapt\n  cargo-release to your workflow.\n\n### Prerequisite\n\n* Your project should be managed by git.\n\n### Dry run\n\nBy default, `cargo-release` runs in dry-run mode so you can safely run it and\nverify what it will do.\n- Increase the logging level with each additional `-v` to get more details\n- Speed up dry-run by skipping `cargo-publish`s verify step with `--no-verify`\n\nOnce you are ready, pass the `--execute` flag.\n\n*Note:* the packaging and verifying steps will list the current version and not\nthe bumped version because `cargo release` delegates to `cargo publish` which\ndoes not know about the in-memo",
  "github_repo": "crate-ci/cargo-release",
  "github_stars": 1568,
  "github_topics": [
    "cargo",
    "cargo-subcommand",
    "rust"
  ],
  "homepage": "https://github.com/crate-ci/cargo-release",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 24,
  "installs_365d": 421,
  "installs_90d": 80,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "Apache-2.0 OR MIT",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "cargo-release",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": 6324,
  "rank_365d": 5510,
  "rank_90d": 6104,
  "raw_hash": "0b025396a55534a7",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/c/cargo-release.rb",
  "tap": "homebrew/core",
  "test_dependencies": [
    "rustup"
  ],
  "uses_from_macos": [],
  "version_head": "HEAD",
  "version_stable": "1.1.2",
  "versioned_formulae": [],
  "why_use_this": null
}