LinuxCommandLibrary
GitHubF-DroidGoogle Play Store

cargo-metadata

Output workspace and dependency metadata as JSON

TLDR

Output project metadata
$ cargo metadata
copy
Output with format version
$ cargo metadata --format-version 1
copy
Without dependencies
$ cargo metadata --no-deps
copy
Filter to specific features
$ cargo metadata --features [feature1,feature2]
copy
Pretty print JSON
$ cargo metadata --format-version 1 | jq .
copy

SYNOPSIS

cargo metadata [options]

DESCRIPTION

cargo metadata outputs JSON to stdout containing information about workspace members, resolved dependencies, and build configuration. Useful for tooling and IDE integration.

PARAMETERS

--format-version version

Schema version (use 1 for stability)
--no-deps
Skip dependency resolution (faster, workspace only)
--features features
Enable specified features
--all-features
Enable all features
--no-default-features
Disable default features
--filter-platform triple
Filter to specified platform
--manifest-path path
Path to Cargo.toml
-v, --verbose
Verbose output
-q, --quiet
Suppress log messages

OUTPUT FIELDS

packages

Array of all packages and dependencies
workspace_members
Package IDs of workspace members
workspace_root
Absolute path to workspace root
target_directory
Path to build output directory
resolve
Dependency resolution graph
version
Schema version number

INSTALL

sudo apt install cargo
copy
sudo dnf install cargo
copy
sudo apk add cargo
copy
sudo zypper install cargo
copy
nix profile install nixpkgs#cargo
copy

CAVEATS

Output format may change between Cargo versions. Always use --format-version for scripts. The cargo_metadata crate provides Rust parsing.

SEE ALSO

RESOURCES

Copied to clipboard
Kai