Skip to content

Commit c348b69

Browse files
committed
Meta: Move more general/normative PEP modification guidance to PEP 1
1 parent aa6c83a commit c348b69

File tree

2 files changed

+49
-59
lines changed

2 files changed

+49
-59
lines changed

CONTRIBUTING.rst

Lines changed: 23 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -21,62 +21,34 @@ developing at least a prototype reference implementation of your idea.
2121
Contributing changes to existing PEPs
2222
-------------------------------------
2323

24-
In general, PEPs that are not marked as Draft, Active or Provisional are
25-
considered to be historical documents rather than living specifications
26-
or documentation. Major changes to their core content usually require
27-
a new PEP, while smaller modifications may or may not be appropriate,
28-
depending on the PEP's status:
29-
30-
* **Rejected**, **Deferred**, **Withdrawn** and **Superceded** PEPs should
31-
usually only be modified when necessary to correct technical issues with
32-
the syntax. Occasionally, a Deferred or even Withdrawn PEP may be resurrected
33-
with major updates, but it is often better to just propose a new one.
34-
35-
* **Final** PEPs are considered complete, though small fixes to unintentional
36-
errors in the document that impair understanding may be accepted.
37-
38-
* **Accepted** PEPs may be updated to reflect minor details of the final
39-
implementation, but changes to the specification should be avoided.
40-
41-
* **Provisional** PEPs can be incrementally modified if needed, though rewrites
42-
and compatibility breakage are discouraged unless absolutely necessary.
43-
44-
* **Active** PEPs can and should be updated whenever the information described
45-
changes. Substantive changes to governance PEPs should be reviewed by the
46-
Steering Council (by opening an
47-
`issue <https://github.com/python/steering-council/issues>`__ in the SC repo)
48-
and are subject to any further conditions stated in the PEP itself.
49-
50-
* **Draft** PEPs are freely open for discussion and proposed modification
51-
until submitted to the Steering Council or PEP-Delegate.
52-
Copyediting, formatting and proofreading can be opened here as pull requests,
53-
while more substantive content changes should generally be first proposed
54-
on the PEP's discussion thread listed in its ``Discussions-To`` header.
55-
56-
Also, while fixing spelling and formatting issues as part of more substantive
57-
copyediting and proofreading of draft and active PEPs is encouraged,
58-
we generally advise against PRs that simply mass-correct minor typos
59-
that don't significantly impair meaning and understanding.
60-
61-
If you're unsure, we encourage you to reach out first before opening a PR here.
62-
For example, you could contact the PEP author(s),
63-
propose your idea in a discussion venue appropriate to the PEP (e.g.
64-
`Typing-SIG <https://mail.python.org/archives/list/[email protected]/>`__
65-
for static typing, or the `Packaging Discourse
66-
<https://discuss.python.org/c/packaging/>`__ for packaging), and/or
67-
open an `issue on this repo <https://github.com/python/peps/issues>`__.
24+
In general, most non-Draft/Active PEPs are considered to be historical
25+
documents rather than living specifications or documentation. Major changes to
26+
their core content usually require a new PEP, while smaller modifications may
27+
or may not be appropriate, depending on the PEP's status. See `PEP 1
28+
<https://www.python.org/dev/peps/pep-0001/#pep-maintenance>`__ for more.
29+
30+
Copyediting and proofreading Draft and Active PEPs (including fixing spelling
31+
and formatting issues) is welcomed, and can be done via pull request to this
32+
repo, though we generally advise against PRs that simply mass-correct minor
33+
typos on older PEPs which don't significantly impair meaning and understanding.
34+
Substantive content changes should first be proposed on PEP discussion threads.
35+
36+
If you're still unsure, we encourage you to reach out first before opening a
37+
PR here. For example, you could contact the PEP author(s), propose your idea in
38+
a discussion venue appropriate to the PEP (such as `Typing-SIG
39+
<https://mail.python.org/archives/list/[email protected]/>`__ for static
40+
typing, or `Packaging Discourse <https://discuss.python.org/c/packaging/>`__
41+
for packaging), or `open an issue <https://github.com/python/peps/issues>`__.
6842

6943

7044
Commit messages and PR titles
7145
-----------------------------
7246

73-
When adding or modifying a PEP, please always include the PEP number in the
74-
commit summary and pull request title.
75-
For example, ``PEP NNN: <summary of changes>``.
76-
Likewise, prefix rendering infrastructure changes with ``Infra:``,
77-
linting-related alterations with ``Lint:`` and other non-PEP meta changes,
78-
such as updates to the Readme/Contributing Guide, issue/PR template, etc.,
79-
with ``Meta:``.
47+
When adding or modifying a PEP, please include the PEP number in the commit
48+
summary and pull request title. For example, ``PEP NNN: <summary of changes>``.
49+
Likewise, prefix rendering infrastructure changes with ``Infra:``, linting
50+
alterations with ``Lint:`` and other non-PEP meta changes, such as updates to
51+
the Readme/Contributing Guide, issue/PR template, etc., with ``Meta:``.
8052

8153

8254
Sign the CLA

pep-0001.txt

Lines changed: 26 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -457,19 +457,30 @@ if they are never meant to be completed. E.g. :pep:`1` (this PEP).
457457
PEP Maintenance
458458
---------------
459459

460-
In general, Standards track PEPs are no longer modified after they have
461-
reached the Final state. Once a PEP has been completed, the Language and
462-
Standard Library References become the formal documentation of the expected
463-
behavior.
460+
In general, PEPs are no longer substantially modified after they have reached
461+
the Final, Rejected or Superseded state. Once a PEP has been completed,
462+
it is considered to be a historical document rather than living specifications.
463+
Formal documentation of the expected behavior should be maintained elsewhere,
464+
such as the `Language Reference`_ for core features, the `Library Reference`_
465+
for standard library modules or the `PyPA Specifications`_ for packaging.
464466

465467
If changes based on implementation experience and user feedback are made to
466-
Standards track PEPs while in the Accepted or Provisional State, those changes
468+
Standards track PEPs while in the Accepted or Provisional state, they
467469
should be noted in the PEP, such that the PEP accurately describes the state of
468470
the implementation at the point where it is marked Final.
469471

470-
Informational and Process PEPs may be updated over time to reflect changes
471-
to development practices and other details. The precise process followed in
472-
these cases will depend on the nature and purpose of the PEP being updated.
472+
Active Informational and Process PEPs may be updated over time to reflect
473+
changes to development practices and other details. The precise process
474+
followed in these cases will depend on the nature and purpose of the PEP
475+
being updated. Substantive changes to governance PEPs must be reviewed by the
476+
Steering Council (by opening a `Steering Council issue`_).
477+
478+
Draft PEPs are freely open for discussion and proposed modification until
479+
submitted to the Steering Council or PEP-Delegate for review and resolution.
480+
Substantive content changes should generally be first proposed on
481+
the PEP's discussion thread listed in its ``Discussions-To`` header.
482+
Occasionally, a Deferred or even a Withdrawn PEP may be resurrected
483+
with major updates, but it is often better to just propose a new one.
473484

474485

475486
What belongs in a successful PEP?
@@ -867,6 +878,13 @@ Footnotes
867878

868879
.. _Packaging category: https://discuss.python.org/c/packaging/
869880

881+
.. _Language Reference: https://docs.python.org/3/reference/index.html
882+
883+
.. _Library Reference: https://docs.python.org/3/library/index.html
884+
885+
.. _PyPA Specifications: https://packaging.python.org/en/latest/specifications/
886+
887+
870888

871889
Copyright
872890
=========

0 commit comments

Comments
 (0)