跳至主要内容

标志弃用

K3s 是一个快速发展的项目,因此我们需要一种方法来弃用标志和配置选项。此页面概述了弃用标志和配置选项的过程。为了确保用户不会对标志的移除感到意外,该过程类似于 Kubernetes 弃用策略

流程

  1. 标志可以随时声明为“即将弃用”。
  2. 标记为“即将弃用”的标志必须在所有当前支持版本的下一次补丁版本中进行标记。此外,该标志将开始警告用户它将在下一个次要版本中被弃用。
  3. 在下一个次要版本中,标志将在文档中标记为已弃用,并在代码中转换为隐藏标志。该标志将继续运行并向用户发出警告。
  4. 在随后的次要版本分支中,已弃用的标志将变得“无法使用”,如果使用则会导致致命错误。此错误必须向用户解释替换此标志的任何新标志或配置。
  5. 在下一个次要版本中,将从文档和代码中删除无法使用的标志。

示例

该过程的一个示例

  • --foo 存在于 v1.22.14、v1.23.10 和 v1.24.2 中。
  • 在 v1.24.2 版本发布后,决定弃用 --foo,而支持 --new-foo
  • 在 v1.22.15、v1.23.11 和 v1.24.3 中,--foo 继续存在,但会警告用户
    [Warning] --foo will be deprecated in v1.25.0, use `--new-foo` instead
    --foo 将作为操作标志在 v1.22、v1.23 和 v1.24 的整个生命周期中继续存在。
  • 在 v1.25.0 中,--foo 在文档中被标记为已弃用,并且将在代码中隐藏。它将继续工作并警告用户迁移到 --new-foo
  • 在 v1.26.0 中,如果使用 --foo 将导致致命错误。错误消息将显示
    [Fatal] exit 1: --foo is no longer supported, use --new-foo instead
  • 在 v1.27.0 中,--foo 将从所有代码和文档中完全删除。