Crates.io | cargo-tally |
lib.rs | cargo-tally |
version | |
source | src |
created_at | 2017-11-21 15:38:24.619976 |
updated_at | 2024-12-05 03:31:04.982621 |
description | Cargo subcommand for drawing graphs of the number of dependencies on a crate over time |
homepage | |
repository | https://github.com/dtolnay/cargo-tally |
max_upload_size | |
id | 40150 |
Cargo.toml error: | TOML parse error at line 19, column 1 | 19 | autolib = false | ^^^^^^^ unknown field `autolib`, expected one of `name`, `version`, `edition`, `authors`, `description`, `readme`, `license`, `repository`, `homepage`, `documentation`, `build`, `resolver`, `links`, `default-run`, `default_dash_run`, `rust-version`, `rust_dash_version`, `rust_version`, `license-file`, `license_dash_file`, `license_file`, `licenseFile`, `license_capital_file`, `forced-target`, `forced_dash_target`, `autobins`, `autotests`, `autoexamples`, `autobenches`, `publish`, `metadata`, `keywords`, `categories`, `exclude`, `include` |
size | 0 |
cargo tally
is a Cargo subcommand for drawing graphs of the number of crates
that depend directly or indirectly on a crate over time.
Usage: cargo tally [options] queries...
Options:
--db <PATH> Path to crates.io's database dump [default: ./db-dump.tar.gz]
--jobs, -j <N> Number of threads to run differential dataflow
--relative Display as a fraction of total crates, not absolute number
--transitive Count transitive dependencies, not just direct dependencies
$ wget https://static.crates.io/db-dump.tar.gz
$ cargo install cargo-tally
Data is drawn from crates.io database dumps, which are published nightly by automation running on crates.io. You can download a new dump whenever you feel like having fresh data.
The tally command accepts a list of which crates to tally. This can either be
the name of a crate like serde
or a name with arbitrary semver version
specification like serde:1.0
. If a version is not specified, dependencies on
all versions of the crate are tallied together.
The generated graphs use D3; the cargo tally command
should pop open a browser showing your graph. It uses the same mechanism that
cargo doc --open
uses so hopefully it works well on various systems.
Number of crates that depend directly on each major version of the regex crate.
$ cargo tally regex:0.1 regex:0.2 regex:1.0
Fraction of crates.io that depends directly on each major version of the regex crate. This is the same graph as the previous, but scaled to the exponentially growing total number of crates on crates.io.
$ cargo tally regex:0.1 regex:0.2 regex:1.0 --relative
Fraction of crates.io that depends directly on various error handling
libraries. Note that crates are not double-counted; a crate that depends on
both anyhow
and thiserror
counts as only one for the purpose of the
anyhow+thiserror
curve.
$ cargo tally --relative failure anyhow thiserror anyhow+thiserror
Fraction of crates.io that depends transitively on libc.
$ cargo tally --relative --transitive libc
The implementation is powered by differential-dataflow.