Skip to content

Commit 86f4d99

Browse files
authored
Merge branch 'main' into sboms-for-python-packages
2 parents a7ff20c + 0a3e52c commit 86f4d99

39 files changed

Lines changed: 4305 additions & 363 deletions

.github/CODEOWNERS

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -625,6 +625,7 @@ peps/pep-0744.rst @brandtbucher @savannahostrowski
625625
peps/pep-0745.rst @hugovk
626626
peps/pep-0746.rst @JelleZijlstra
627627
peps/pep-0747.rst @JelleZijlstra
628+
peps/pep-0748.rst @ncoghlan
628629
# ...
629630
peps/pep-0749.rst @JelleZijlstra
630631
peps/pep-0750.rst @gvanrossum @lysnikolaou
@@ -641,6 +642,10 @@ peps/pep-0760.rst @pablogsal @brettcannon
641642
peps/pep-0761.rst @sethmlarson @hugovk
642643
peps/pep-0762.rst @pablogsal @ambv @lysnikolaou @emilyemorehouse
643644
peps/pep-0763.rst @dstufft
645+
peps/pep-0765.rst @iritkatriel @ncoghlan
646+
peps/pep-0766.rst @warsaw
647+
peps/pep-0767.rst @carljm
648+
peps/pep-0768.rst @pablogsal
644649
peps/pep-0770.rst @sethmlarson @brettcannon
645650
# ...
646651
peps/pep-0777.rst @warsaw

.github/workflows/render.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ jobs:
2323
matrix:
2424
python-version:
2525
- "3.x"
26-
- "3.13-dev"
26+
- "3.14-dev"
2727

2828
steps:
2929
- name: Checkout

.github/workflows/test.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,8 @@ jobs:
6262
uvx --with tox-uv tox -e py -- -v --cov-report term
6363
6464
- name: Upload coverage
65-
uses: codecov/codecov-action@v4
65+
uses: codecov/codecov-action@v5
6666
with:
6767
flags: ${{ matrix.os }}
6868
name: ${{ matrix.os }} Python ${{ matrix.python-version }}
69+
token: ${{ secrets.CODECOV_ORG_TOKEN }}

.pre-commit-config.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ repos:
9393
hooks:
9494
- id: codespell
9595
name: "Check for common misspellings in text files"
96+
require_serial: true
9697
stages: [manual]
9798

9899
# Local checks for PEP headers and more

.readthedocs.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
version: 2
66

77
build:
8-
os: ubuntu-22.04
8+
os: ubuntu-lts-latest
99
tools:
1010
python: "3"
1111

@@ -17,6 +17,7 @@ build:
1717

1818
sphinx:
1919
builder: dirhtml
20+
configuration: peps/conf.py
2021

2122
search:
2223
ignore: ['*']

Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ htmllive: _ensure-sphinx-autobuild html
4040
.PHONY: dirhtml
4141
dirhtml: BUILDER = dirhtml
4242
dirhtml: html
43+
mv $(BUILDDIR)/404/index.html $(BUILDDIR)/404.html
4344

4445
## linkcheck to check validity of links within PEP sources
4546
.PHONY: linkcheck

peps/conf.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
# Add any Sphinx extension module names here, as strings.
2121
extensions = [
22+
"notfound.extension",
2223
"pep_sphinx_extensions",
2324
"sphinx.ext.extlinks",
2425
"sphinx.ext.intersphinx",
@@ -85,6 +86,10 @@
8586
"pypi": ("https://pypi.org/project/%s/", "%s"),
8687
}
8788

89+
# sphinx-notfound-page
90+
# https://sphinx-notfound-page.readthedocs.io/en/latest/faq.html#does-this-extension-work-with-github-pages
91+
notfound_urls_prefix = None
92+
8893
# -- Options for HTML output -------------------------------------------------
8994

9095
_PSE_PATH = _ROOT / "pep_sphinx_extensions"

peps/pep-0012/pep-NNNN.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
PEP: <REQUIRED: pep number>
22
Title: <REQUIRED: pep title>
3-
Author: <REQUIRED: list of authors' real names and optionally, email addrs>
4-
Sponsor: <real name of sponsor>
5-
PEP-Delegate: <PEP delegate's real name>
3+
Author: <REQUIRED: list of authors' names and optionally, email addrs>
4+
Sponsor: <name of sponsor>
5+
PEP-Delegate: <PEP delegate's name>
66
Discussions-To: <REQUIRED: URL of current canonical discussion thread>
77
Status: <REQUIRED: Draft | Active | Accepted | Provisional | Deferred | Rejected | Withdrawn | Final | Superseded>
88
Type: <REQUIRED: Standards Track | Informational | Process>

peps/pep-0013.rst

Lines changed: 23 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,15 +20,15 @@ to exercise as rarely as possible.
2020
Current steering council
2121
========================
2222

23-
The 2024 term steering council consists of:
23+
The 2025 term steering council consists of:
2424

2525
* Barry Warsaw
26+
* Donghee Na
2627
* Emily Morehouse
2728
* Gregory P. Smith
2829
* Pablo Galindo Salgado
29-
* Thomas Wouters
3030

31-
Per the results of the vote tracked in :pep:`8105`.
31+
Per the results of the vote tracked in :pep:`8106`.
3232

3333
The core team consists of those listed in the private
3434
https://github.com/python/voters/ repository which is publicly
@@ -105,9 +105,11 @@ A council election consists of two phases:
105105
must be nominated by a core team member. Self-nominations are
106106
allowed.
107107

108-
* Phase 2: Each core team member can vote for zero or more of the
109-
candidates. Voting is performed anonymously. Candidates are ranked
110-
by the total number of votes they receive. If a tie occurs, it may
108+
* Phase 2: Each core team member can assign zero to five stars to each
109+
candidate. Voting is performed anonymously. The outcome of the vote
110+
is determined using the `STAR voting system <https://www.starvoting.org/>`__,
111+
modified to use the `Multi-winner Bloc STAR <https://www.starvoting.org/multi_winner>`__)
112+
approach. If a tie occurs, it may
111113
be resolved by mutual agreement among the candidates, or else the
112114
winner will be chosen at random.
113115

@@ -190,7 +192,7 @@ council member, or the entire council, via a vote of no confidence.
190192

191193
A no-confidence vote is triggered when a core team member calls for
192194
one publicly on an appropriate project communication channel, and
193-
another core team member seconds the proposal.
195+
another core team member seconds the proposal within one week.
194196

195197
The vote lasts for two weeks. Core team members vote for or against.
196198
If at least two thirds of voters express a lack of confidence, then
@@ -270,6 +272,10 @@ It is granted by receiving at least two-thirds positive votes in a
270272
core team vote that is open for one week and is not vetoed by the
271273
steering council.
272274

275+
.. note:: The devguide has a `suggested template
276+
<https://devguide.python.org/core-developers/become-core-developer/#poll-template>`__
277+
to use for such votes.
278+
273279
Core team members are always looking for promising contributors,
274280
teaching them how the project is managed, and submitting their names
275281
to the core team's vote when they're ready.
@@ -301,6 +307,10 @@ Changing this document
301307
Changes to this document require at least a two-thirds majority of
302308
votes cast in a core team vote which should be open for two weeks.
303309

310+
No vote is required to update note blocks and the "Current steering
311+
council" and "History of council elections" sections with current
312+
information.
313+
304314

305315
History
306316
=======
@@ -337,12 +347,17 @@ History of council elections
337347
* December 2021: :pep:`8103`
338348
* December 2022: :pep:`8104`
339349
* December 2023: :pep:`8105`
350+
* December 2024: :pep:`8106`
340351

341352

342353
History of amendments
343354
---------------------
344355

345-
2019-04-17: Added the vote length for core devs and changes to this document.
356+
* 2019-04-17: Added the vote length for core devs and changes to this document.
357+
* `2024-12-10 <https://discuss.python.org/t/64971>`__:
358+
Adopted Multi-winner Bloc STAR voting for council elections.
359+
* `2024-12-10 <https://discuss.python.org/t/72293/4>`__:
360+
Added a one-week deadline for seconding a vote of no confidence.
346361

347362

348363

peps/pep-0101.rst

Lines changed: 17 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,13 @@ Here's a hopefully-complete list.
3333

3434
* A GPG key.
3535

36-
Python releases are digitally signed with GPG; you'll need a key,
37-
which hopefully will be on the "web of trust" with at least one of
36+
Python releases before 3.14 are digitally signed with GPG; for these you'll
37+
need a key, which hopefully will be on the "web of trust" with at least one of
3838
the other release managers.
3939

40+
.. note:: GPG instructions in this PEP can be ignored for Python 3.14 and
41+
later. See :pep:`761` for details.
42+
4043
* A bunch of software:
4144

4245
* A checkout of the `python/release-tools`_ repo.
@@ -263,20 +266,6 @@ to perform some manual editing steps.
263266
- Make sure all changes have been committed. (``release.py --bump``
264267
doesn't check in its changes for you.)
265268

266-
- Check the years on the copyright notice. If the last release
267-
was some time last year, add the current year to the copyright
268-
notice in several places:
269-
270-
- ``README``
271-
- ``LICENSE`` (make sure to change on ``main`` and the branch)
272-
- ``Python/getcopyright.c``
273-
- ``Doc/copyright.rst``
274-
- ``Doc/license.rst``
275-
- ``PC/python_ver_rc.h`` sets up the DLL version resource for Windows
276-
(displayed when you right-click on the DLL and select
277-
Properties). This isn't a C include file, it's a Windows
278-
"resource file" include file.
279-
280269
- For a **final** major release, edit the first paragraph of
281270
``Doc/whatsnew/3.X.rst`` to include the actual release date; e.g. "Python
282271
2.5 was released on August 1, 2003." There's no need to edit this for
@@ -610,7 +599,7 @@ the main repo.
610599
release branch (3.X-1) and use them as a template.
611600
https://github.com/python/cpython/settings/branches
612601

613-
Also, add a ``needs backport to 3.X`` label to the GitHub repo.
602+
Also, add ``3.x`` and ``needs backport to 3.X`` labels to the GitHub repo.
614603
https://github.com/python/cpython/labels
615604

616605
- You can now re-enable enforcement of branch settings against administrators
@@ -637,7 +626,7 @@ permissions.
637626
Python release "page", editing as you go.
638627

639628
You can use `Markdown <https://daringfireball.net/projects/markdown/syntax>`_ or
640-
`reStructured Text <http://docutils.sourceforge.net/docs/user/rst/quickref.html>`_
629+
`reStructured Text <https://docutils.sourceforge.io/docs/user/rst/quickref.html>`_
641630
to describe your release. The former is less verbose, while the latter has nifty
642631
integration for things like referencing PEPs.
643632

@@ -742,28 +731,20 @@ permissions.
742731

743732
* python-list@python.org
744733
* python-announce@python.org
745-
* python-dev@python.org
746734

747735
- Also post the announcement to the
748-
`Python Insider blog <http://blog.python.org>`_.
736+
`Python Insider blog <https://blog.python.org>`_.
749737
To add a new entry, go to
750-
`your Blogger home page, here <https://www.blogger.com/home>`_.
738+
`your Blogger home page <https://www.blogger.com/home>`_.
751739

752-
- Update any release PEPs (e.g. 719) with the release dates.
740+
- Update `release PEPs <https://peps.python.org/topic/release/>`__
741+
(e.g. 719) with the release dates.
753742

754743
- Update the labels on https://github.com/python/cpython/issues:
755744

756745
- Flip all the `deferred-blocker`_ issues back to `release-blocker`_
757746
for the next release.
758747

759-
- Add version ``3.X+1`` as when version ``3.X`` enters alpha.
760-
761-
- Change non-doc feature requests to version ``3.X+1`` when version ``3.X``
762-
enters beta.
763-
764-
- Update issues from versions that your release makes
765-
unsupported to the next supported version.
766-
767748
- Review open issues, as this might find lurking showstopper bugs,
768749
besides reminding people to fix the easy ones they forgot about.
769750

@@ -788,7 +769,7 @@ permissions.
788769
or Zach Ware).
789770

790771
- Ensure the various GitHub bots are updated, as needed, for the
791-
new branch, in particular, make sure backporting to the new
772+
new branch. In particular, make sure backporting to the new
792773
branch works (contact the `core-workflow team
793774
<https://github.com/python/core-workflow/issues>`__).
794775

@@ -801,7 +782,7 @@ permissions.
801782
branches and that the release branch is properly protected (no direct
802783
pushes, etc).
803784

804-
- Verify that the `on-line docs <https://docs.python.org/>`__ are building
785+
- Verify that the `online docs <https://docs.python.org/>`__ are building
805786
properly (this may take up to 24 hours for a complete build on the website).
806787

807788

@@ -869,12 +850,16 @@ else does them. Some of those tasks include:
869850

870851
- Retire the release from the `issue tracker`_. Tasks include:
871852

853+
* update issues from this version to the next supported version
854+
872855
* remove version label from list of versions
873856

874857
* remove the ``needs backport to`` label for the retired version
875858

876859
* review and dispose of open issues marked for this branch
877860

861+
- Run a final build of the online docs to add the end-of-life banner
862+
878863
- Announce the branch retirement in the usual places:
879864

880865
* `discuss.python.org`_

0 commit comments

Comments
 (0)