Uh oh!
There was an error while loading. Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork 963
Improve label versions triaging#1613
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base:main
Are you sure you want to change the base?
Uh oh!
There was an error while loading. Please reload this page.
Changes from all commits
File filter
Filter by extension
Conversations
Uh oh!
There was an error while loading. Please reload this page.
Jump to
Uh oh!
There was an error while loading. Please reload this page.
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| @@ -27,7 +27,8 @@ These labels are used to specify the type of issue: | ||||||||||||||||||||||||||||||||||
| core dump. | ||||||||||||||||||||||||||||||||||
| * :gh-label:`type-feature`: for feature requests or enhancements. | ||||||||||||||||||||||||||||||||||
| Feature requests do not need :ref:`version labels <Version labels>`; | ||||||||||||||||||||||||||||||||||
| it is implicit that features are added to the ``main`` branch only. | ||||||||||||||||||||||||||||||||||
| it is implicit that features are added to the ``main`` branch only, | ||||||||||||||||||||||||||||||||||
| except for some :ref:`exceptional cases <exceptional-version-labels>`. | ||||||||||||||||||||||||||||||||||
| The `Ideas Discourse category`_ can be used to discuss enhancements | ||||||||||||||||||||||||||||||||||
| before filing an issue. | ||||||||||||||||||||||||||||||||||
| * :gh-label:`type-security`: for security issues. | ||||||||||||||||||||||||||||||||||
| @@ -97,9 +98,42 @@ These labels are used to indicate which versions of Python are affected. | ||||||||||||||||||||||||||||||||||
| The available version labels (with the form :samp:`3.{N}`) are updated | ||||||||||||||||||||||||||||||||||
| whenever new feature releases are created or retired. | ||||||||||||||||||||||||||||||||||
| Recommendations | ||||||||||||||||||||||||||||||||||
| --------------- | ||||||||||||||||||||||||||||||||||
| - For security issues, add the :gh-label:`type-security` label and | ||||||||||||||||||||||||||||||||||
| the affected version labels. This makes the issue stand out. | ||||||||||||||||||||||||||||||||||
| - For non-security issues affecting *all* bugfix branches, only add | ||||||||||||||||||||||||||||||||||
| the :gh-label:`type-bug` label as knowing which versions are affected | ||||||||||||||||||||||||||||||||||
| does not give more information. | ||||||||||||||||||||||||||||||||||
| - Labels for end-of-life versions should be removed when possible but there is | ||||||||||||||||||||||||||||||||||
| no need to explicitly go through old issues to remove such labels. | ||||||||||||||||||||||||||||||||||
| - Otherwise, add the corresponding version labels and remember to | ||||||||||||||||||||||||||||||||||
| update them when the latest feature version is released. | ||||||||||||||||||||||||||||||||||
| See also :ref:`the branch status page <branchstatus>` | ||||||||||||||||||||||||||||||||||
| for a list of active branches. | ||||||||||||||||||||||||||||||||||
| .. _exceptional-version-labels: | ||||||||||||||||||||||||||||||||||
| Exceptional version labels for features | ||||||||||||||||||||||||||||||||||
| --------------------------------------- | ||||||||||||||||||||||||||||||||||
| While features should not have a version label, there are a few exceptional | ||||||||||||||||||||||||||||||||||
| cases subject to the release manager approval: | ||||||||||||||||||||||||||||||||||
| - If we are currently in the *beta* period of :samp:`3.{N}.0` and | ||||||||||||||||||||||||||||||||||
| if a feature was implemented in its *alpha* period but requires a | ||||||||||||||||||||||||||||||||||
| non-trivial extension (hence a new *feature* issue), this new | ||||||||||||||||||||||||||||||||||
| feature issue is given the :samp:`3.{N}` label as the latest | ||||||||||||||||||||||||||||||||||
| version under development would now be :samp:`3.{N+1}.0a1`. | ||||||||||||||||||||||||||||||||||
picnixz marked this conversation as resolved. Show resolvedHide resolvedUh oh!There was an error while loading. Please reload this page. | ||||||||||||||||||||||||||||||||||
| To indicate that the labelling is correct and the extension is | ||||||||||||||||||||||||||||||||||
| approved, the :gh-label:`triaged` label can also be applied. | ||||||||||||||||||||||||||||||||||
Comment on lines +128 to +135 MemberAuthor
| ||||||||||||||||||||||||||||||||||
| - If we are currently in the *beta* period of :samp:`3.{N}.0` and | |
| if a feature was implemented in its *alpha* period but requires a | |
| non-trivial extension (hence a new *feature* issue), this new | |
| feature issue is given the :samp:`3.{N}` label as the latest | |
| version under development would now be :samp:`3.{N+1}.0a1`. | |
| To indicate that the labelling is correct and the extension is | |
| approved, the :gh-label:`triaged` label can also be applied. | |
| - Assume that we are currently in the *beta* period of :samp:`3.{N}.0`, | |
| that is, the latest version under development is :samp:`3.{N+1}.0a1`. | |
| If a feature implemented in the *alpha* period of :samp:`3.{N}.0` | |
| requires a non-trivial extension, a *new* feature issue must be | |
| created and be given the :samp:`3.{N}` label. | |
| To indicate that the labelling is correct and the extension is | |
| approved, the :gh-label:`triaged` label can also be applied. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@hugovk Something like this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Note: another acceptable 3.N label is when we implement a PEP. It's good to have both feature & 3.N labels at the same time because the PEP is meant to be implemented in that version.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm a bit confused :)
Filling in numbers to make this concrete:
Assume that we are currently in the beta period of 3.14.0,
that is, the latest version under development is 3.15.0a1.
If a feature implemented in the alpha period of 3.14.0
requires a non-trivial extension, a new feature issue must be
created and be given the 3.14 label.
The 3.14 beta was May to July 2025.
3.15 was still in pre-alpha, versioned 3.15.0a0 (from May to October 2025).
Did you mean 3.{N+1}.0a0 rather than 3.{N+1}.0a1?
In any case, I'm not sure we really need to document such exceptional things.
(Nit: "there are a few exceptional cases" but then we list just one case.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah I meant 3.15.0.a0 sorry.
I think we need to document at least this case because we explicitly state that betas are feature frozen. As for the list, I thought I would have more but I do not think there will be more so I can rephrase this!
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe add a recommendation about whether to keep
type-bugintype-securityissues (are they truly redundant?)?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that the place for that is beside the type-security doc?