入门 The Cargo Team 2026-09-13 15:48:22 · 0 阅读
第27章 Cargo 未来不兼容报告
Cargo 会检查所有依赖中的 future-incompatible 警告。这类警告对应的是未来可能变成硬错误的变更,一旦成为错误,依赖将无法在后续版本的 rustc 上编译。如果发现了这类警告,Cargo 会显示一条简短提示,说明发现了警告,并给出查看完整报告的方法。
例如,构建结束时你可能会看到类似这样的输出:
warning: the following packages contain code that will be rejected by a future
version of Rust: rental v0.5.5
note: to see what the problems were, use the option `--future-incompat-report`,
or run `cargo report future-incompatibilities --id 1`
完整报告可以通过 cargo report future-incompatibilities --id ID 命令查看,也可以在构建时加上 --future-incompat-report 标志重新构建。开发者随后应把依赖更新到已修复该问题的版本,或者与依赖的维护者协作,帮助解决相关问题。
配置
这个功能可以通过 .cargo/config.toml 中的 [future-incompat-report] 配置节来设置。目前支持的选项有:
[future-incompat-report]
frequency = "always"
frequency 支持的取值为 "always" 和 "never",用于控制在 cargo build / cargo check 结束时是否打印提示信息。