Skip to content

Commit 35e855b

Browse files
committed
docs(#1168): add directive on backporting
1 parent 4baaf76 commit 35e855b

File tree

2 files changed

+16
-4
lines changed

2 files changed

+16
-4
lines changed

developer-workflow/development-cycle.rst

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -77,10 +77,21 @@ releases; the terms are used interchangeably. These releases have a
7777
**micro version** number greater than zero.
7878

7979
The only changes allowed to occur in a maintenance branch without debate are
80-
bug fixes. Also, a general rule for maintenance branches is that compatibility
80+
bug fixes. Also, a general rule for maintenance branches is that compatibility
8181
must not be broken at any point between sibling micro releases (3.5.1, 3.5.2,
82-
etc.). For both rules, only rare exceptions are accepted and **must** be
83-
discussed first.
82+
etc.). For both rules, only rare exceptions are accepted and **must** be
83+
discussed first. Among the rare exceptions to the rules of bug fixes and compatibility,
84+
backporting of documentation and tests is encouraged.
85+
86+
Backporting serves dual purposes. First, it increases the visibility of
87+
documentation changes since most users refer to stable versions at
88+
`docs.python.org/3/ <https://docs.python.org/3/>`_ rather
89+
than the `docs.python.org/dev/ <https://docs.python.org/dev/>`_ documentation.
90+
Second, it minimizes conflicts for future bugfix backports.
91+
92+
Backporting should target enhancements in documentation and tests for
93+
currently **stable** versions, specifically branches in a **bugfix** release cycle
94+
or higher.
8495

8596
A new maintenance branch is normally created when the next feature release
8697
cycle reaches feature freeze, i.e. at its first beta pre-release.

versions.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@ Status key
5050
but new source-only versions can be released
5151
:end-of-life: release cycle is frozen; no further changes can be pushed to it.
5252

53-
See also the :ref:`devcycle` page for more information about branches.
53+
See also :ref:`devcycle` for branch information and :ref:`maintbranch` for details on
54+
backporting documentation and test changes above the **bugfix** level.
5455

5556
By default, the end-of-life is scheduled 5 years after the first release,
5657
but can be adjusted by the release manager of each branch. All Python 2

0 commit comments

Comments
 (0)