随rust 1.100发布,cargo加入最小发布时间限制,允许解析依赖时暂缓采用刚发布的版本;新的cargo lint体系也开始报告未使用依赖。构建目录布局同步调整,通过更一致的配置哈希减少不同构建方式之间的缓存冲突。

Cargo官方配置中的最小发布时间限制
冷却期由配置主动启用
registry.global-min-publish-age可设置全局等待时间,也能针对注册表单独配置。解析器暂缓选取尚未达到指定时间的版本,但已存在于Cargo.lock中的版本不会仅因开启冷却期被回退。需要立即采用某个版本时,可为指定更新显式放行。
这项机制依赖注册表索引提供发布时间;没有pubtime的数据不会被拦下。cargo install也不使用这项最低发布时间限制,因此它不能替代版本审核、锁文件检查和其他供应链保护。

Cargo官方说明unused_dependencies的检查范围
依赖检查与构建缓存各有适用范围
unused_dependencies默认警告,级别可在Cargo.toml的[lints.cargo]中调整。检查需要覆盖能够使用该依赖表的构建目标;只检查某个二进制,不足以认定整个包没有使用依赖。dev-dependencies暂不在这项完整性检查范围内。
新的build-dir布局把配置哈希用于各项构建内容,减轻跨特性配置和Git工作树共享目录时的冲突。直接依赖旧目录结构的脚本和测试仍需核对路径;这些变化并不保证所有工程无需重新构建。











