Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

PEP 819: JSON Package Metadata #4751

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
emmatyping wants to merge 14 commits into python:main
base: main
Choose a base branch
Loading
from wheelnext:norender-json-metadata-pep

Conversation

@emmatyping
Copy link
Member

@emmatyping emmatyping commented Dec 18, 2025
edited by hugovk
Loading

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
  • 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
    • Rationale
    • Specification
    • Backwards Compatibility
    • Security Implications
    • (削除) How to Teach This (削除ここまで)
    • Reference Implementation
    • Rejected Ideas
    • Open Issues
  • (削除) 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

📚 Documentation preview 📚: https://pep-previews--4751.org.readthedocs.build/pep-0819/

This is the first revision of a PEP to change package metadata to JSON format.
@emmatyping emmatyping requested a review from a team as a code owner December 18, 2025 22:47
Copy link

Let's GO 🚀 !

emmatyping reacted with heart emoji

@AA-Turner AA-Turner added the new-pep A new draft PEP submitted for initial review label Dec 18, 2025
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
@AA-Turner AA-Turner self-requested a review December 18, 2025 22:53
Copy link
Member

@AA-Turner AA-Turner left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly minor suggestions:

One point I don't believe I saw covered is installed package metadata - I imagine the PEP should just call for copying the METADATA.json file if present in the binary distribution.

Thanks,
Adam

Comment on lines 129 to 131
in the root directory of the project sources. Tools that prefer the JSON
formatted metadata file MUST check for the existence of a ``METADATA.json``
in the source distribution before reading the file.
Copy link
Member

@AA-Turner AA-Turner Dec 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems circular?

Copy link
Member Author

@emmatyping emmatyping Dec 23, 2025
edited
Loading

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, perhaps the first sentence is unclear. METADATA.json is still optional (since older packages may not have it), so if it does exist it should go at the root of the sources. The second sentence would probably be much better written as "Tools MUST NOT assume the METADATA.json file exists in source distributions."

Copy link
Member Author

@emmatyping emmatyping Dec 23, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay, rewrote this paragraph, hopefully much clearer!

Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Copy link
Member Author

One point I don't believe I saw covered is installed package metadata - I imagine the PEP should just call for copying the METADATA.json file if present in the binary distribution.

Good point!

Copy link
Member Author

I believe I've addressed all review points, but please let me know if there's anything I missed!

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

Reviewers

@AA-Turner AA-Turner AA-Turner left review comments

Assignees

No one assigned

Labels

new-pep A new draft PEP submitted for initial review

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /