5.11.1 版本管理

原文链接: https://docs.astral.sh/uv/reference/policies/versioning/

5.11.1 版本管理

uv 在生产环境中被广泛使用,是稳定的软件。

uv 使用自定义的版本方案:次要版本号用于破坏性变更,补丁版本号用于缺陷修复、功能增强以及其他非破坏性变更。

我们对向后不兼容变更的谨慎程度与预期的实际影响成正比,而不是任意版本号策略的函数。我们看重快速迭代新特性的能力,也看重把可能具有破坏性的变更集中到明确标记的发布中。

uv 的更新日志可以在 GitHub 上查看。

crate 版本管理

uv 的 crate 发布到 crates.io。以下 crate 遵循 uv 的正常版本策略:

  • uv
  • uv-build
  • uv-version

uv 和 uv-build crate 的版本由二进制命令行接口决定。这些 crate 的 Rust 接口不遵循语义化版本。

uv 其余的 crate 不提供任何稳定性保证。其 Rust 接口被视为内部且不稳定的。因此它们的版本号为 0.0.x。无论 crate 是否变化,补丁版本都会在每次 uv 发布时递增。

缓存版本管理

缓存版本被视为 uv 的内部实现,因此可能在次要或补丁版本中变更。更多内容请参阅缓存版本管理。

锁文件版本管理

uv.lock 的 schema 版本被视为公共 API 的一部分,因此只会在次要版本中作为破坏性变更递增。更多内容请参阅锁文件版本管理。

最后修改 September 25, 2026: 更新 (221c74c33)