Crates.io | get-all-crates |
lib.rs | get-all-crates |
version | |
source | src |
created_at | 2022-12-25 19:00:51.109544 |
updated_at | 2024-10-07 19:17:26.06522 |
description | Download .crate files of all version of all crates from crates.io |
homepage | |
repository | https://github.com/dtolnay/get-all-crates |
max_upload_size | |
id | 745413 |
Cargo.toml error: | TOML parse error at line 18, column 1 | 18 | 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 |
Download .crate files of all versions of all crates from crates.io.
Useful for things like noisy-clippy which need to analyze the source code of all crates.
I wrote this tool to saturate a 1000 Mbps connection. From scratch, it can finish downloading in under 20 minutes. It can also check the checksums of a directory of downloaded crates in 40 seconds on 64 cores. For a more fully featured tool, which some of this code is based on, but which is much slower in my experience, check out https://git.shipyard.rs/jstrong/registry-backup.
$ cargo install get-all-crates
$ git clone https://github.com/rust-lang/crates.io-index /path/to/index
$ get-all-crates --index /path/to/index --out /path/to/crates
Warning: as of 2022 this writes out more than 100 GB of crates.
The output directory structure is similar to how Cargo's registry index is structured:
/path/to/crates ├── 1 │ └── m │ └── m-0.1.1.crate ├── 2 │ └── nu │ └── nu-0.73.0.crate ├── 3 │ └── s │ └── syn │ └── syn-1.0.107.crate └── se └── rd ├── serde │ └── serde-1.0.151.crate └── serde_json └── serde_json-1.0.91.crate