From cfba564d7e20af074ae31dc14f4d804aa52db915 Mon Sep 17 00:00:00 2001 From: Matteo Collina Date: Thu, 9 Jul 2026 11:06:00 +0200 Subject: [PATCH] doc: allow deprecations while a release is Current Deprecations can land while a release line is Current, but not in Active LTS or Maintenance, and count as a cycle for that release. Signed-off-by: Matteo Collina --- doc/contributing/collaborator-guide.md | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/doc/contributing/collaborator-guide.md b/doc/contributing/collaborator-guide.md index c0777771be631e..8362b7f744ed06 100644 --- a/doc/contributing/collaborator-guide.md +++ b/doc/contributing/collaborator-guide.md @@ -539,12 +539,18 @@ example, due to removal of an End-of-Life deprecated API). A _deprecation cycle_ is a major release during which an API has been in one of -the three Deprecation levels. Documentation-Only Deprecations can land in a -minor release. They can not change to a Runtime Deprecation until the next major -release. +the three Deprecation levels. A deprecation can be added to a release line at +any point while that release line is Current, but not once it has entered the +Active LTS or Maintenance phases. A deprecation added while a major release is +Current counts as a deprecation cycle for that release: the API can change to +the next deprecation level in the following major release. Documentation-Only +Deprecations can land in a minor release. They can not change to a Runtime +Deprecation until the next major release. No deprecated APIs can change to End-of-Life without going through a Runtime -Deprecation cycle. There is no rule that deprecated code must progress to End-of-Life. +Deprecation cycle. An API that received a Runtime Deprecation while a major +release was Current can be removed (End-of-Life) in the following major +release. There is no rule that deprecated code must progress to End-of-Life. Documentation-Only and Runtime Deprecations can remain in place for an unlimited duration.