@@ -27,7 +27,8 @@ These labels are used to specify the type of issue:
2727 core dump.
2828* :gh-label: `type-feature `: for feature requests or enhancements.
2929 Feature requests do not need :ref: `version labels <Version labels >`;
30- it is implicit that features are added to the ``main `` branch only.
30+ it is implicit that features are added to the ``main `` branch only,
31+ except for some :ref: `exceptional cases <exceptional-version-labels >`.
3132 The `Ideas Discourse category `_ can be used to discuss enhancements
3233 before filing an issue.
3334* :gh-label: `type-security `: for security issues.
@@ -97,9 +98,45 @@ These labels are used to indicate which versions of Python are affected.
9798The available version labels (with the form :samp: `3.{ N } `) are updated
9899whenever new feature releases are created or retired.
99100
101+ Triagers may adhere to the following recommendations:
102+
103+ - For security issues, add the :gh-label: `type-security ` label and
104+ the affected version labels. This makes the issue stands out more.
105+
106+ - For non-security issues affecting *all * bugfix branches, only add
107+ the :gh-label: `type-bug ` label as knowing which versions are affected
108+ does not give more information.
109+
110+ Once the bug is resolved, one can optionally add the version labels for
111+ the affected versions. This helps readers in knowing whether their issue
112+ has been solved for their Python version.
113+
114+ - EOL version labels should be removed when possible but there is no need
115+ to explicitly go through old issues to remove such labels.
116+
117+ - Otherwise, add the corresponding version label(s) and remember to
118+ update them when the latest major version is updated.
119+
100120See also :ref: `the branch status page <branchstatus >`
101121for a list of active branches.
102122
123+ .. _exceptional-version-labels :
124+
125+ Exceptional version labels for features
126+ ---------------------------------------
127+
128+ While features should not have a version label, there are a few exceptional
129+ cases subject to the release manager approval:
130+
131+ - If we are currently in the *beta * period of :samp: `3.{ N } .0 ` and
132+ if a feature was implemented in its *alpha * period but requires a
133+ non-trivial extension (hence a new *feature * issue), this new
134+ feature issue is given the :samp: `3.{ N } ` label as the latest
135+ version under development would now be :samp: `3.{ N+1 } .0a1 `.
136+
137+ To indicate that the labelling is correct and the extension is
138+ approved, the :gh-label: `triaged ` label could also be applied.
139+
103140
104141.. _Keywords :
105142.. _Other :
0 commit comments