@@ -27,7 +27,8 @@ These labels are used to specify the type of issue:
27
27
core dump.
28
28
* :gh-label: `type-feature `: for feature requests or enhancements.
29
29
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 >`.
31
32
The `Ideas Discourse category `_ can be used to discuss enhancements
32
33
before filing an issue.
33
34
* :gh-label: `type-security `: for security issues.
@@ -97,9 +98,45 @@ These labels are used to indicate which versions of Python are affected.
97
98
The available version labels (with the form :samp: `3.{ N } `) are updated
98
99
whenever new feature releases are created or retired.
99
100
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
+
100
120
See also :ref: `the branch status page <branchstatus >`
101
121
for a list of active branches.
102
122
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
+
103
140
104
141
.. _Keywords :
105
142
.. _Other :
0 commit comments