From 4661e3a6f12b1741f5de9834c8906c31e7ff8507 Mon Sep 17 00:00:00 2001 From: Ee Durbin Date: Tue, 21 Oct 2025 09:53:35 -0400 Subject: [PATCH 1/8] PEP 8107 - Python Steering Council Election - 2026 Term Initialize the 2026 term. I would appreciate specific review on the new voting system/configuration. --- peps/pep-8107.rst | 208 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 208 insertions(+) create mode 100644 peps/pep-8107.rst diff --git a/peps/pep-8107.rst b/peps/pep-8107.rst new file mode 100644 index 00000000000..2364ec4bc0b --- /dev/null +++ b/peps/pep-8107.rst @@ -0,0 +1,208 @@ +PEP: 8107 +Title: 2026 Term Steering Council election +Author: Ee Durbin +Sponsor: Barry Warsaw +Status: Active +Type: Informational +Topic: Governance +Created: 21-Oct-2025 + + +Abstract +======== + +This document describes the schedule and other details of the +2025 election for the Python steering council, as specified in +:pep:`13`. This is the steering council election for the 2026 term +(i.e. Python 3.15). + + +Election Administration +======================= + +The steering council appointed the +`Python Software Foundation `__ +Director of Infrastructure, Ee Durbin, to administer the election. + + +Schedule +======== + +There will be a two-week nomination period, followed by a two-week +vote. + +The nomination period will be: November 10, 2025 through `November 24, 2025 AoE +`_ [#note-aoe]_. + +The voting period will be: November 28, 2025 through `December 12, 2025 AoE +`_ [#note-aoe]_. + + +Candidates +========== + +Candidates must be nominated by a core team member. If the candidate +is a core team member, they may nominate themselves. + +Nominees (in alphabetical order by first name): + +- TBD + +Withdrawn nominations: + +- None + +Voter Roll +========== + +All active Python core team members are eligible to vote. Active status +is determined as :pep:`described in PEP 13 <13#membership>` +and implemented via the software at `python/voters `_ +[#note-voters]_. + +Ballots will be distributed based on the `Python Voter Roll +`_ [#note-voters]_ +for this election. + +While this file is not public as it contains private email addresses, the +`Complete Voter Roll`_ by name will be made available when the roll is +created. + +Election Implementation +======================= + +The election will be conducted using the `BetterVoting +`__ service. + +.. attention:: + This election will be the first where voting is conducted, and + results are calculated using + `Multi-winner Bloc STAR `__ + as `approved by the core developers `__ + and `codified `__ + into :pep:`13`. + + +Configuration +------------- + +Create a `new election `__. + +Poll or Election?: ``Election`` + +Title?: ``2026 Python Steering Council Election`` + +Restricted?: ``Yes`` + +Contact Email: ``psf-election@python.org`` + +Choose Voters: ``Email List`` + +This will initialize the election and you will be forwarded to the election admin page. +Further configuration is required. + +Click the pencil icon next to the election name on the admin. + +Election Description: ``Election for the Python steering council, as specified in PEP 13. This is steering council election for the 2026 term.`` + +Enable Start/End Times?: ``Check this box`` + +Time Zone: ``Midway Island, Samoa`` + +Start Date: ``11/28/2025, 01:00 AM`` + +End Date: ``12/13/2025, 01:00 AM`` + +Click "Save". + +Click "Extra Settings" + +Check "Randomize Candidate Order". + +Ensure "Show Preliminary Results" is unchecked. + +Check "Confirm That Voter Read Instructions". + +Ensure "Make Election Publicly Searchable" is unchecked. + +Ensure "Set Number of Rankings Allowed" is unchecked. + +Click "Save". + +* Voting is not open to the public, only those on the `Voter Roll`_ may + participate. Ballots will be emailed when voting starts. +* Candidates are presented in random order, to help avoid bias. + +Races +----- + +Add Race + +Race Title: ``2026 Python Steering Council`` + +Race Description: ``Rate candidates for the Python Steering Council`` + +How many Winners?: ``Basic Multi-Winner`` + +Number of winners: ``5`` + +Which Voting Method: ``STAR Voting`` + +Candidates (add each candidate): + +* TBD +* TBD +* TBD +* TBD +* TBD + +Now, use "Cast test ballot" section to preview the ballot and resolve any misconfigurations. + +Voters +------ + +Enter voter data using Email list from `Voter Roll`_ repository. + +Results +======= + +Of NN eligible voters, MM cast ballots. + +The top five vote-getters are: + +* TBD +* TBD +* TBD +* TBD +* TBD + +No conflict of interest as defined in :pep:`13` were observed. + +The full vote counts are as follows: + ++-----------------------+----------------+ +| Candidate | Votes Received | ++=======================+================+ +| TBD | | ++-----------------------+----------------+ + +Copyright +========= + +This document has been placed in the public domain. + + +Complete Voter Roll +=================== + +Active Python core developers +----------------------------- + +.. code-block:: text + + TBD + +.. [#note-voters] This repository is private and accessible only to Python Core + Developers, administrators, and Python Software Foundation Staff as it + contains personal email addresses. +.. [#note-aoe] AoE: `Anywhere on Earth `_. From 56c410ebbeeea3a09efd998208f1c817cefabf96 Mon Sep 17 00:00:00 2001 From: Ee Durbin Date: Tue, 21 Oct 2025 10:07:34 -0400 Subject: [PATCH 2/8] link to 8107 in 13 --- peps/pep-0013.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/peps/pep-0013.rst b/peps/pep-0013.rst index cad3d2c9fea..1d59dcb6120 100644 --- a/peps/pep-0013.rst +++ b/peps/pep-0013.rst @@ -347,6 +347,7 @@ History of council elections * December 2022: :pep:`8104` * December 2023: :pep:`8105` * December 2024: :pep:`8106` +* December 2025: :pep:`8107` History of amendments From 8c74f25bb7c8ef9b052669947eabedc5892116a7 Mon Sep 17 00:00:00 2001 From: Ee Durbin Date: Tue, 21 Oct 2025 10:22:52 -0400 Subject: [PATCH 3/8] Apply suggestion from @AA-Turner Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com> --- peps/pep-8107.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/peps/pep-8107.rst b/peps/pep-8107.rst index 2364ec4bc0b..a5add3b2bf8 100644 --- a/peps/pep-8107.rst +++ b/peps/pep-8107.rst @@ -78,7 +78,7 @@ The election will be conducted using the `BetterVoting This election will be the first where voting is conducted, and results are calculated using `Multi-winner Bloc STAR `__ - as `approved by the core developers `__ + as `approved by the core developers `__ and `codified `__ into :pep:`13`. From 2288f337cc01982a16221ff20c3d20fd25e04757 Mon Sep 17 00:00:00 2001 From: Ee Durbin Date: Tue, 21 Oct 2025 10:23:01 -0400 Subject: [PATCH 4/8] Apply suggestion from @merwok MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Éric --- peps/pep-8107.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/peps/pep-8107.rst b/peps/pep-8107.rst index a5add3b2bf8..961fb955d3a 100644 --- a/peps/pep-8107.rst +++ b/peps/pep-8107.rst @@ -189,7 +189,7 @@ The full vote counts are as follows: Copyright ========= -This document has been placed in the public domain. +This document is placed in the public domain or under the CC0-1.0-Universal license, whichever is more permissive. Complete Voter Roll From 61f962f0f546c1371429ffa73166d3cea88a5347 Mon Sep 17 00:00:00 2001 From: Adam Turner <9087854+AA-Turner@users.noreply.github.com> Date: Tue, 21 Oct 2025 18:48:48 +0100 Subject: [PATCH 5/8] Editorial: Copyright at the end Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> --- peps/pep-8107.rst | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/peps/pep-8107.rst b/peps/pep-8107.rst index 961fb955d3a..d08946236dd 100644 --- a/peps/pep-8107.rst +++ b/peps/pep-8107.rst @@ -186,12 +186,6 @@ The full vote counts are as follows: | TBD | | +-----------------------+----------------+ -Copyright -========= - -This document is placed in the public domain or under the CC0-1.0-Universal license, whichever is more permissive. - - Complete Voter Roll =================== @@ -202,6 +196,12 @@ Active Python core developers TBD +Copyright +========= + +This document is placed in the public domain or under the CC0-1.0-Universal license, whichever is more permissive. + + .. [#note-voters] This repository is private and accessible only to Python Core Developers, administrators, and Python Software Foundation Staff as it contains personal email addresses. From 7dd9a1ceb8ec106bf4a67b7c44fab0bc5b6c36c6 Mon Sep 17 00:00:00 2001 From: Ee Durbin Date: Tue, 21 Oct 2025 16:58:12 -0400 Subject: [PATCH 6/8] Update peps/pep-8107.rst Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> --- peps/pep-8107.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/peps/pep-8107.rst b/peps/pep-8107.rst index d08946236dd..e0e6654baf2 100644 --- a/peps/pep-8107.rst +++ b/peps/pep-8107.rst @@ -103,7 +103,7 @@ Further configuration is required. Click the pencil icon next to the election name on the admin. -Election Description: ``Election for the Python steering council, as specified in PEP 13. This is steering council election for the 2026 term.`` +Election Description: ``Election for the Python steering council, as specified in PEP 13. This is the steering council election for the 2026 term.`` Enable Start/End Times?: ``Check this box`` From d6f2856942e6b58a547984494f259ab25bbeed5c Mon Sep 17 00:00:00 2001 From: Ee Durbin Date: Tue, 21 Oct 2025 16:58:51 -0400 Subject: [PATCH 7/8] Update peps/pep-8107.rst Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com> --- peps/pep-8107.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/peps/pep-8107.rst b/peps/pep-8107.rst index e0e6654baf2..e721200359b 100644 --- a/peps/pep-8107.rst +++ b/peps/pep-8107.rst @@ -168,7 +168,7 @@ Results Of NN eligible voters, MM cast ballots. -The top five vote-getters are: +The five winners are: * TBD * TBD From 9aab06a4270fca44dec8a881de438ff05ca2ee64 Mon Sep 17 00:00:00 2001 From: Ee Durbin Date: Wed, 22 Oct 2025 12:44:24 -0400 Subject: [PATCH 8/8] massage words --- peps/pep-8107.rst | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/peps/pep-8107.rst b/peps/pep-8107.rst index e721200359b..83199daf109 100644 --- a/peps/pep-8107.rst +++ b/peps/pep-8107.rst @@ -75,10 +75,9 @@ The election will be conducted using the `BetterVoting `__ service. .. attention:: - This election will be the first where voting is conducted, and - results are calculated using + This election will be the first to use `Multi-winner Bloc STAR `__ - as `approved by the core developers `__ + voting as `approved by the core team `__ and `codified `__ into :pep:`13`.