@@ -67,35 +67,39 @@ Maintenance branches
67
67
--------------------
68
68
69
69
A branch for a previous feature release, currently being maintained for bug
70
- fixes. There are usually two maintenance branches at any given time for
71
- Python 3.x. Only during the beta/rc phase of a new
72
- minor/feature release will there be three active maintenance branches, e.g.
73
- during the beta phase for Python 3.8 there are master, 3.8, 3.7, and 3.6
74
- branches open. Releases
75
- produced from a maintenance branch are called **maintenance ** or **bugfix **
70
+ fixes, or for the next feature release in its
71
+ :ref: `beta <beta >` or :ref: `release candidate <rc >` stages.
72
+ There is usually either one or two maintenance branches at any given time for
73
+ Python 3.x. After the final release of a new minor version (3.x.0), releases
74
+ produced from a maintenance branch are called **bugfix ** or **maintenance **
76
75
releases; the terms are used interchangeably. These releases have a
77
76
**micro version ** number greater than zero.
78
77
79
78
The only changes allowed to occur in a maintenance branch without debate are
80
79
bug fixes. Also, a general rule for maintenance branches is that compatibility
81
- must not be broken at any point between sibling minor releases (3.5.1, 3.5.2,
80
+ must not be broken at any point between sibling micro releases (3.5.1, 3.5.2,
82
81
etc.). For both rules, only rare exceptions are accepted and **must ** be
83
82
discussed first.
84
83
85
- Sometime after a new maintenance branch is created (after a new *minor version *
86
- is released), the old maintenance branch on that major version will go into
87
- :ref: `security mode <secbranch >`,
88
- usually after one last maintenance release at the discretion of the
84
+ A new maintenance branch is normally created when the next feature release
85
+ cycle reaches feature freeze, i.e. at its first beta pre-release.
86
+ From that point on, changes intended for remaining pre-releases, the final
87
+ release (3.x.0), and subsequent bugfix releases are merged to
88
+ that maintenance branch.
89
+
90
+ Sometime following the final release (3.x.0), the maintenance branch for
91
+ the previous minor version will go into :ref: `security mode <secbranch >`,
92
+ usually after at least one more bugfix release at the discretion of the
89
93
release manager. For example, the 3.4 maintenance branch was put into
90
- :ref: `security mode <secbranch >` after the 3.4.4 final maintenance release
91
- following the release of 3.5.1.
94
+ :ref: `security mode <secbranch >` after the 3.4.4 bugfix release
95
+ which followed the release of 3.5.1.
92
96
93
97
.. _secbranch :
94
98
95
99
Security branches
96
100
-----------------
97
101
98
- A branch less than 5 years old but no longer in maintenance mode is a security
102
+ A branch less than 5 years old but no longer in bugfix mode is a security
99
103
branch.
100
104
101
105
The only changes made to a security branch are those fixing issues exploitable
@@ -107,6 +111,7 @@ since it is important to be able to run the tests successfully before releasing.
107
111
108
112
Commits to security branches are to be coordinated with the release manager
109
113
for the corresponding feature version, as listed in the :ref: `branchstatus `.
114
+ Merging of pull requests to security branches is restricted to release managers.
110
115
Any release made from a security branch is source-only and done only when actual
111
116
security patches have been applied to the branch. These releases have a
112
117
**micro version ** number greater than the last **bugfix ** release.
@@ -307,9 +312,12 @@ Current Administrators
307
312
+-------------------+----------------------------------------------------------+-----------------+
308
313
| Name | Role | GitHub Username |
309
314
+===================+==========================================================+=================+
315
+ | Pablo Galindo | Python 3.10 and 3.11 Release Manager, | pablogsal |
316
+ | | Maintainer of buildbot.python.org | |
317
+ +-------------------+----------------------------------------------------------+-----------------+
310
318
| Łukasz Langa | Python 3.8 and 3.9 Release Manager | ambv |
311
319
+-------------------+----------------------------------------------------------+-----------------+
312
- | Ned Deily | Python 3.7 Release Manager | ned-deily |
320
+ | Ned Deily | Python 3.6 and 3. 7 Release Manager | ned-deily |
313
321
+-------------------+----------------------------------------------------------+-----------------+
314
322
| Lary Hastings | Python 3.5 Release Manager | larryhastings |
315
323
+-------------------+----------------------------------------------------------+-----------------+
@@ -321,8 +329,6 @@ Current Administrators
321
329
+-------------------+----------------------------------------------------------+-----------------+
322
330
| Mariatta Wijaya | Maintainer of blurb_it and miss-islington | Mariatta |
323
331
+-------------------+----------------------------------------------------------+-----------------+
324
- | Pablo Galindo | Maintainer of buildbot.python.org | pablogsal |
325
- +-------------------+----------------------------------------------------------+-----------------+
326
332
327
333
Repository Release Manager Role Policy
328
334
--------------------------------------
0 commit comments