8000 Closes #38 (#116) · python/peps@1cdddf8 · GitHub
[go: up one dir, main page]

Skip to content

Commit 1cdddf8

Browse files
warsawncoghlan
authored andcommitted
Closes #38 (#116)
* Closes #38 * Updated workflow. * Respond to review. * s/clone/fork/ Use GitHub terminology rather than generic git terminology.
1 parent 6efb70f commit 1cdddf8

File tree

1 file changed

+68
-52
lines changed

1 file changed

+68
-52
lines changed

pep-0001.txt

Lines changed: 68 additions & 52 deletions
10000
Original file line numberDiff line numberDiff line change
@@ -92,15 +92,14 @@ details. The current editors are:
9292
* Guido van Rossum
9393
* Barry Warsaw
9494

95-
PEP editorship is by invitation of the current editors. The address
96-
<peps@python.org> is a mailing list for contacting the PEP editors. All
97-
email related to PEP administration (such as requesting a PEP number
98-
or providing an updated version of a PEP for posting) should be sent to
99-
this address (no cross-posting please).
95+
PEP editorship is by invitation of the current editors, and they can be
96+
contacted via the address <peps@python.org>, but you may only need to use this
97+
to contact the editors semi-privately. All of the PEP workflow can be
98+
conducted via the GitHub `PEP repository`_ issues and pull requests.
10099

101100

102-
Submitting a PEP
103-
----------------
101+
Start with an idea for Python
102+
-----------------------------
104103

105104
The PEP process begins with a new idea for Python. It is highly
106105
recommended that a single PEP contain a single key proposal or new
@@ -111,13 +110,13 @@ PEP, the more successful it tends to be. The PEP editors reserve the
111110
right to reject PEP proposals if they appear too unfocused or too
112111
broad. If in doubt, split your PEP into several well-focused ones.
113112

114-
Each PEP must have a champion -- someone who writes the PEP using the
115-
style and format described below, shepherds the discussions in the
116-
appropriate forums, and attempts to build community consensus around
117-
the idea. The PEP champion (a.k.a. Author) should first attempt to
118-
ascertain whether the idea is PEP-able. Posting to the
119-
comp.lang.python newsgroup (a.k.a. python-list@python.org mailing
120-
list) or the python-ideas mailing list is the best way to go about this.
113+
Each PEP must have a champion -- someone who writes the PEP using the style
114+
and format described below, shepherds the discussions in the appropriate
115+
forums, and attempts to build community consensus around the idea. The PEP
116+
champion (a.k.a. Author) should first attempt to ascertain whether the idea is
117+
PEP-able. Posting to the comp.lang.python newsgroup
118+
(a.k.a. python-list@python.org mailing list) or the python-ideas@python.org
119+
mailing list is the best way to go about this.
121120

122121
Vetting an idea publicly before going as far as writing a PEP is meant
123122
to save the potential author time. Many ideas have been brought
@@ -136,35 +135,46 @@ python-ideas. This gives the author a chance to flesh out the draft
136135
PEP to make properly formatted, of high quality, and to address
137136
initial concerns about the proposal.
138137

139-
Following a discussion on python-ideas, the proposal should be sent as a
140-
draft PEP to the PEP editors <peps@python.org>. The draft must be written
141-
in PEP style as described below, else it will be sent back without further
142-
regard until proper formatting rules are followed (although minor errors
143-
will be corrected by the editors).
144-
145-
If the PEP editors approve, they will assign the PEP a number, label it
146-
as Standards Track, Informational, or Process, give it status "Draft",
147-
and create and check-in the initial draft of the PEP. The PEP editors
148-
will not unreasonably deny a PEP. Reasons for denying PEP status
149-
include duplication of effort, being technically unsound, not
150-
providing proper motivation or addressing backwards compatibility, or
151-
not in keeping with the Python philosophy. The BDFL can be consulted
152-
during the approval phase, and is the final arbiter of the draft's
153-
PEP-ability.
154-
155-
Developers with git push privileges for the `PEP repository`_ may claim
156-
PEP numbers directly by creating and committing a new PEP. When doing so,
157< 8000 code class="diff-text syntax-highlighted-line deletion">-
the developer must handle the tasks that would normally be taken care of by
158-
the PEP editors (see `PEP Editor Responsibilities & Workflow`_). This
159-
includes ensuring the initial version meets the expected standards for
160-
submitting a PEP. Alternately, even developers may choose to submit PEPs
161-
through the PEP editors. When doing so, let the PEP editors know you have
162-
git push privileges and they can guide you through the process of updating
163-
the PEP repository directly.
138+
139+
Submitting a PEP
140+
----------------
141+
142+
Following a discussion on python-ideas, the proposal should be submitted as a
143+
draft PEP via a `GitHub pull request`_. The draft must be written in PEP
144+
style as described below, else it will fail review immediately (although minor
145+
errors may be corrected by the editors).
146+
147+
The standard PEP workflow is:
148+
149+
* You, the PEP author, fork the `PEP repository`_, and create a file named
150+
``pep-0xxx.rst`` that contains your new PEP. Use "XXX" as your draft PEP
151+
number.
152+
* Push this to your GitHub fork and submit a pull request.
153+
* The PEP editors review your PR for structure, formatting, and other errors.
154+
* Once approved, they will assign your PEP a number, and label it as Standards
155+
Track, Informational, or Process, and give it the status "Draft"
156+
157+
Once the review process is complete, and the PEP editors approve it (note that
158+
this is *not* the same as accepting your PEP!), they will squash commit your
159+
pull request onto master.
160+
161+
The PEP editors will not unreasonably deny a PEP. Reasons for denying PEP
162+
status include duplication of effort, being technically unsound, not providing
163+
proper motivation or addressing backwards compatibility, or not in keeping
164+
with the Python philosophy. The BDFL can be consulted during the approval
165+
phase, and is the final arbiter of the draft's PEP-ability.
166+
167+
Developers with git push privileges for the `PEP repository`_ may claim PEP
168+
numbers directly by creating and committing a new PEP. When doing so, the
169+
developer must handle the tasks that would normally be taken care of by the
170+
PEP editors (see `PEP Editor Responsibilities & Workflow`_). This includes
171+
ensuring the initial version meets the expected standards for submitting a
172+
PEP. Alternately, even developers may choose to submit PEPs via pull request.
173+
When doing so, let the PEP editors know you have git push privileges and they
174+
can guide you through the process of updating the PEP repository directly.
164175

165176
As updates are necessary, the PEP author can check in new versions if they
166-
(or a collaborating developer) have git push privileges, or else they can
167-
email new PEP versions to the PEP editors for publication.
177+
(or a collaborating developer) have git push privileges.
168178

169179
After a PEP number has been assigned, a draft PEP may be discussed further on
170180
python-ideas (getting a PEP number assigned early can be useful for ease of
@@ -491,19 +501,22 @@ direction of the PEP. One aim of the PEP process is to try to build
491501
consensus around a PEP, but if that's not possible, an author can always
492502
submit a competing PEP.
493503

494-
If you are interested in assuming ownership of a PEP, send a message
495-
asking to take over, addressed to both the original author and the PEP
496-
editors <peps@python.org>. If the original author doesn't respond to
497-
email in a timely manner, the PEP editors will make a unilateral
498-
decision (it's not like such decisions can't be reversed :).
504+
If you are interested in assuming ownership of a PEP, you can also do this via
505+
pull request. Fork the `PEP repository`_, make your ownership modification,
506+
and submit a pull request. You should also send a message asking to take
507+
over, addressed to both the original author and the PEP editors
508+
<peps@python.org>. If the original author doesn't respond to email in a
509+
timely manner, the PEP editors will make a unilateral decision (it's not like
510+
such decisions can't be reversed :).
499511

500512

501513
PEP Editor Responsibilities & Workflow
502514
======================================
503515

504-
A PEP editor must subscribe to the <peps@python.org> list. All
505-
correspondence related to PEP administration should be sent (or forwarded) to
506-
<peps@python.org> (but please do not cross-post!).
516+
A PEP editor must subscribe to the <peps@python.org> list and must watch the
517+
`PEP repository`_. Most correspondence regarding PEP administration can be
518+
handled through GitHub issues and pull requests, but you may also use
519+
<peps@python.org> for semi-private discussions. Please do not cross-post!
507520

508521
For each new PEP that comes in an editor does the following:
509522

@@ -529,7 +542,7 @@ Once the PEP is ready for the repository, a PEP editor will:
529542
Python 3 only, the process is back to using numbers in the 100s again.
530543
Remember that numbers below 100 are meta-PEPs.)
531544

532-
* Add the PEP to a local clone of the PEP repository. For workflow
545+
* Add the PEP to a local fork of the PEP repository. For workflow
533546
instructions, follow `The Python Developers Guide <http://docs.python.org/devguide>`_
534547

535548
The git repo for the peps is::
@@ -550,8 +563,8 @@ Once the PEP is ready for the repository, a PEP editor will:
550563
* Send email back to the PEP author with next steps (post to
551564
python-list & -dev).
552565

553-
Updates to existing PEPs also come in to peps@python.org. Many PEP
554-
authors are not Python committers yet, so PEP editors do the commits for them.
566+
Updates to existing PEPs should be submitted as a `GitHub pull request`_.
567+
Questions may of course still be sent to <peps@python.org>.
555568

556569
Many PEPs are written and maintained by developers with write access
557570
to the Python codebase. The PEP editors monitor the python-checkins
@@ -573,6 +586,7 @@ Resources:
573586
* `Frequently Asked Questions for Developers
574587
<http://docs.python.org/devguide/faq.html>`_
575588

589+
576590
References and Footnotes
577591
========================
578592

@@ -606,6 +620,8 @@ References and Footnotes
606620

607621
.. _PEP repository: https://github.com/python/peps
608622

623+
.. _`GitHub pull request`: https://github.com/python/peps/pulls
624+
609625

610626
Copyright
611627
=========

0 commit comments

Comments
 (0)
0