uv 拆成 14 个 crate,增量编译提速 30-43%
charliermarsh · x · 2026-10-15
uv 作者 Charlie Marsh 分享了 uv 的一次构建优化:Cargo 的编译模型以 crate 为单位,独立 crate 可并行编译,未受影响的 crate 可完全跳过。团队把 uv 的主 crate(46k 行代码)拆分成 14 个 crate(每个约 6k 行),结果增量构建时间提速 30-40%。
配图给出了 0.12.24 版本(2026-10-08)对 7 个历史改动的重建时间对比:
- Python installation(共享类型+命令):43.11s → 29.37s,省 31.9%
- Lock internals(冲突组):22.21s → 14.41s,省 35.1%
- Lock metadata:16.74s → 11.67s,省 30.3%
- CLI settings:14.44s → 8.95s,省 38.0%
- Install operations:14.18s → 9.40s,省 33.7%
- Project add:12.25s → 8.39s,省 31.5%
- Project sync:12.07s → 6.92s,省 42.7%
结论:对大型 Rust 项目,按功能边界拆分巨型 crate 是低风险高收益的构建提速手段。
所属事件:uv 主 crate 拆成 14 个,增量编译提速四成(3 条相关)→
「编程与Agent」频道最新
- INT21 用 AI 一小时生成 Drama3 Rust 推理运行时,吞吐提升 63% — bingxu_ · 2026-10-15
- Claude 平台公测 OpenTelemetry 追踪,覆盖 Messages API 与 Agents — EricBuess · 2026-10-15
- Claude 平台支持 OpenTelemetry,请求与 Agent 会话可导出追踪 — ClaudeDevs · 2026-10-15
- 给编码 Agent 建代码图谱,16 秒告别反复读库 — alex_verem · 2026-10-15
- Hermes 新插件实现真机操控 iPhone 与 Android — lifebypixels · 2026-10-15
- 开发者构想本地优先多人协作网页视频编辑器 — austin_malerba · 2026-10-15