docs.rs:默认情况下构建更少的目标

发布: (2026年4月3日 GMT+8 09:29)
2 分钟阅读
原文: Rust Blog

Source: Rust Blog

默认构建更少的目标

2026-05-01,docs.rs 将对其构建行为进行一次破坏性更改。

  • 当前行为:如果 crate 在其 docs.rs 元数据中没有定义 targets 列表,docs.rs 会为默认的五个目标构建文档。
  • 新行为(自 2026-05-01 起生效):除非显式请求额外目标,docs.rs 只会为默认目标构建文档。

这是自 2020 年首次引入的更改的下一步,当时 docs.rs 添加了选择更少构建目标的支持。大多数 crate 并不会为不同目标编译不同的代码,因此默认构建更少的目标更符合大多数发布的需求。这也能缩短构建时间并节省 docs.rs 的资源。

此更改仅影响

  • 新的发布
  • 旧发布的重新构建

默认目标是如何选择的?

如果你没有设置 default-target,docs.rs 将使用其构建服务器的目标:

x86_64-unknown-linux-gnu

你可以在 docs.rs 元数据中设置 default-target 来覆盖它:

[package.metadata.docs.rs]
default-target = "x86_64-apple-darwin"

如何为额外目标构建文档?

如果你的 crate 需要为默认目标之外的更多目标构建文档,请在 Cargo.toml 中显式定义完整的列表:

[package.metadata.docs.rs]
targets = [
    "x86_64-unknown-linux-gnu",
    "x86_64-apple-darwin",
    "x86_64-pc-windows-msvc",
    "i686-unknown-linux-gnu",
    "i686-pc-windows-msvc",
]

当设置了 targets 时,docs.rs 将仅为 这些 目标构建文档。docs.rs 仍然支持 Rust 工具链中可用的任何目标;只有默认行为发生了变化。

0 浏览
Back to Blog

相关文章

阅读更多 »