Automic VaultAutomic Vault

brew

Install cargo-hack with Homebrew, apk, Nix, pacman

Cargo subcommand to provide options for testing and continuous integration. Version 0.6.45 via Homebrew; verified 2026-05-30.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install cargo-hack

local Homebrew formula metadata

Linux

Alpine Linux apkverified · 92%
sudo apk add cargo-hack

Alpine Linux edge package indexes · cargo-hack · source: dl-cdn.alpinelinux.org

Nixverified · 92%
nix profile install nixpkgs#cargo-hack

nixpkgs package indexes · pkgs/by-name/ca/cargo-hack/package.nix · source: api.github.com

Arch Linux pacmanverified · 92%
sudo pacman -S cargo-hack

Arch Linux sync databases · cargo-hack · source: geo.mirror.pkgbuild.com

overview

Package summary

Cargo subcommand to provide options for testing and continuous integration

Commands and aliases

  • cargo-hack

history

Project history and usage

cargo-hack is a Cargo subcommand for testing Rust packages across feature combinations, workspace selections, and Rust version ranges. It is built for the practical pain of continuous integration in feature-heavy crates.

Its best-known commands, `--each-feature` and `--feature-powerset`, make Cargo feature-matrix testing explicit and scriptable.

Project history

The cargo-hack repository was created in October 2019 and version 0.1.0 was published to crates.io the next day. The README describes it as a Cargo subcommand providing options useful for testing and continuous integration.

The project developed around gaps in Cargo's native feature testing ergonomics. Its README references several upstream Cargo issues and documents behavior around workspaces, features, optional dependencies, package selection, and Rust version checks.

Adoption history

cargo-hack was adopted by Rust crate maintainers who needed confidence that optional features, no-default-features builds, and workspace combinations continued to compile.

Its usage fits CI particularly well because a maintainer can run ordinary Cargo subcommands through cargo-hack while expanding the matrix of features or Rust versions under test.

How it is used

Common usage wraps a Cargo command, for example checking every individual feature or a feature powerset. The README documents `--each-feature`, `--feature-powerset`, feature exclusions, optional dependency handling, `--rust-version`, and `--version-range`.

The tool also improves or extends behavior around existing Cargo flags such as workspace/package selection and manifest paths, keeping it close to Cargo rather than inventing a separate build system.

Why package nerds care

cargo-hack is important to package maintainers because Rust features form part of a crate's public compatibility surface. Testing only the default feature set can miss broken optional integrations; cargo-hack makes those combinations cheap to exercise.

It is also a good example of an ecosystem utility that exists because package metadata is combinatorial: the hard part is not installing the package, it is validating all the shapes users can request from it.

Timeline

  • 2019-10-29: GitHub repository created.
  • 2019-10-30: cargo-hack 0.1.0 published to crates.io.
  • 2020s: README documents feature powerset, each-feature, optional dependency, workspace, and Rust-version testing flows.
  • 2026: Crate has more than 1.6 million crates.io downloads and remains active.

Related projects

  • The README lists cargo-llvm-cov, cargo-minimal-versions, and cargo-config2 as related projects by the same maintainer ecosystem.
  • Cargo itself is the underlying command runner and source of many linked feature/workspace issues in the README.
  • cargo-minimal-versions is especially adjacent because both tools help maintainers test package compatibility beyond the default build.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
cargo-hackcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version0.6.45
manager updated2026-05-30
local dataok
upstreamcurrent
latest detectedv0.6.45

https://github.com/taiki-e/cargo-hack

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:cargo-hack
Version0.6.45
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/cargo-hack
Homepagehttps://github.com/taiki-e/cargo-hack
Repositoryhttps://github.com/taiki-e/cargo-hack
Upstream docshttps://github.com/taiki-e/cargo-hack#readme
LicenseApache-2.0 OR MIT
Source archivehttps://github.com/taiki-e/cargo-hack/archive/refs/tags/v0.6.45.tar.gz
Last updated2026-05-30T17:37:11Z
Pulseupdated
Build dependenciesrust
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namecargo-hack
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

cargo-hack

nix profile install nixpkgs#cargo-hack
  • normalized package name match
  • Matched by: Cargo Hack
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/ca/cargo-hack/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
apk95%

cargo-hack 0.6.45-r0

Cargo subcommand to provide various options useful for testing and continuous integration.

https://github.com/taiki-e/cargo-hack

sudo apk add cargo-hack
  • License: MIT OR Apache-2.0
  • Architecture: x86_64
  • Source Package: cargo-hack
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Cargo Hack
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: cargo-hack from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

cargo-hack-doc 0.6.45-r0

Cargo subcommand to provide various options useful for testing and continuous integration. (documentation)

https://github.com/taiki-e/cargo-hack

sudo apk add cargo-hack-doc
  • License: MIT OR Apache-2.0
  • Architecture: x86_64
  • Source Package: cargo-hack
  • normalized package name match
  • Matched by: Cargo Hack
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: cargo-hack-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
pacman95%

cargo-hack 0.6.45-1

A cargo subcommand to provide various options useful for testing and CI

https://github.com/taiki-e/cargo-hack

sudo pacman -S cargo-hack
  • License: MIT AND Apache-2.0
  • Architecture: x86_64
  • 3 dependencies
  • normalized package name match
  • Matched by: Cargo Hack
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: cargo-hack from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment