#下载 #版本 #输入/输出 #目录 #校验和 #索引 #注册表

app get-all-crates

从crates.io下载所有crate的所有版本的.crate文件

18个版本

0.1.17 2024年7月14日
0.1.13 2024年3月21日
0.1.11 2023年12月25日
0.1.10 2023年10月4日
0.1.1 2022年12月27日

#70开发工具

Download history 22/week @ 2024-04-14 21/week @ 2024-04-21 23/week @ 2024-04-28 15/week @ 2024-05-05 15/week @ 2024-05-12 24/week @ 2024-05-19 16/week @ 2024-05-26 161/week @ 2024-06-02 156/week @ 2024-06-09 75/week @ 2024-06-16 185/week @ 2024-06-23 37/week @ 2024-06-30 27/week @ 2024-07-07 169/week @ 2024-07-14 36/week @ 2024-07-21 40/week @ 2024-07-28

每月下载 275次

MIT 许可证

23KB
440 代码行

get-all-crates

github crates.io build status

从crates.io下载所有crate的所有版本的.crate文件。

对于需要分析所有crate源代码的如noisy-clippy等工具非常有用。

我编写这个工具是为了饱和一个1000 Mbps的连接。从头开始,它可以在不到20分钟内完成下载。它还可以在64核上40秒内检查下载crate目录的校验和。对于功能更全面的工具,虽然有些代码基于这个工具,但在我体验中速度较慢,请查看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

警告:截至2022年,此工具会输出超过100 GB的crate。

输出目录结构类似于Cargo的注册表索引结构。

/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

许可证

MIT 许可证.

依赖项

~16–30MB
~491K SLoC