Skip to content

PEP 839: PyFrozenSetWriter and PyFrozenDictWriter C API - #5041

Open
corona10 wants to merge 2 commits into
python:mainfrom
corona10:frozen_builder
Open

PEP 839: PyFrozenSetWriter and PyFrozenDictWriter C API#5041
corona10 wants to merge 2 commits into
python:mainfrom
corona10:frozen_builder

Conversation

@corona10

@corona10 corona10 commented Jul 15, 2026

Copy link
Copy Markdown
Member

Basic requirements (all PEP Types)

  • Read and followed PEP 1 & PEP 12
  • File created from the latest PEP template
  • PEP has next available number, & set in filename (pep-NNNN.rst), PR title (PEP 123: <Title of PEP>) and PEP header
    • Tip: find the next available number with pepotron — run uvx pepotron next (or pipx install pepotron then pep next)
  • Title clearly, accurately and concisely describes the content in 79 characters or less
  • Core dev/PEP editor listed as Author or Sponsor, and formally confirmed their approval
  • Author, Status (Draft), Type and Created headers filled out correctly
  • PEP-Delegate, Topic, Requires and Replaces headers completed if appropriate
  • Required sections included
    • Abstract (first section)
    • Copyright (last section; exact wording from template required)
  • Code is well-formatted (PEP 7/PEP 8) and is in code blocks, with the right lexer names if non-Python
  • PEP builds with no warnings, pre-commit checks pass and content displays as intended in the rendered HTML
  • Authors/sponsor added to .github/CODEOWNERS for the PEP

Standards Track requirements

  • PEP topic discussed in a suitable venue with general agreement that a PEP is appropriate
  • Suggested sections included (unless not applicable)
    • Motivation
    • Specification
    • Rationale
    • Backwards Compatibility
    • Security Implications
    • How to Teach This
    • Reference Implementation
    • Rejected Ideas
    • Open Issues
    • Acknowledgements
    • Footnotes
    • Change History
  • Python-Version set to valid (pre-beta) future Python version, if relevant
  • Any project stated in the PEP as supporting/endorsing/benefiting from the PEP formally confirmed such
  • Right before or after initial merging, PEP discussion thread created and linked to in Discussions-To and Post-History

@read-the-docs-community

read-the-docs-community Bot commented Jul 15, 2026

Copy link
Copy Markdown

Documentation build overview

📚 pep-previews | 🛠️ Build #33606165 | 📁 Comparing 52cce38 against latest (8618d76)

  🔍 Preview build  

5 files changed · + 1 added · ± 4 modified

+ Added

± Modified

@corona10
corona10 marked this pull request as ready for review July 15, 2026 20:19
@corona10
corona10 requested a review from a team as a code owner July 15, 2026 20:19
@sobolevn

sobolevn commented Jul 15, 2026

Copy link
Copy Markdown
Member

Sorry, I've missed the discussion of this PEP :)
Have you seen capi-workgroup/decisions#109 and vstinner/cpython#16 ?

@corona10

Copy link
Copy Markdown
Member Author

Sorry, I've missed the discussion of this PEP :)
Have you seen capi-workgroup/decisions#109 and vstinner/cpython#16 ?

No.. I am planning to be on DPO soon.

@corona10

corona10 commented Jul 15, 2026

Copy link
Copy Markdown
Member Author

Since @vstinner and @sobolevn share on-going discussions, I will delay everything about this PEP.

@vstinner

Copy link
Copy Markdown
Member

INADA-san has interesting concerns about such builder C API: https://discuss.python.org/t/provide-a-c-api-to-efficently-convert-dict-into-frozendict/107754/27.

@brianschubert brianschubert added the new-pep A new draft PEP submitted for initial review label Aug 6, 2026
@vstinner

Copy link
Copy Markdown
Member

So what's the status of this draft PEP? It seems like it has no been discussed at discuss.python.org yet (which is a good thing, a PEP PR must be merged to reserve the PEP number, before a public discussion is created).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-pep A new draft PEP submitted for initial review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants