This repository was archived by the owner on Apr 18, 2026. It is now read-only.
Support PEP 794 (Metadata-Version: 2.5)#39
Open
agriyakhetarpal wants to merge 1 commit intoziglang:mainfrom
Open
Support PEP 794 (Metadata-Version: 2.5)#39agriyakhetarpal wants to merge 1 commit intoziglang:mainfrom
agriyakhetarpal wants to merge 1 commit intoziglang:mainfrom
Conversation
5276e4c to
2a17193
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR updates the wheel builder to support
Metadata-Version: 2.5(https://peps.python.org/pep-0794/). The specification is available here: https://packaging.python.org/specifications/core-metadata/. We don't need to add theImport-Namespacefield sinceziglangis not a namespace package shared with other projects.I also added the
privatequalifier from the specification. It doesn't change any conflict-detection behaviour (so tools still prevent another package from claimingziglang). IMO, it just communicates to tools and users that this package doesn't offer a programmatic interface via a public API, and the CLI is the only way to use it. It's also possible to keepImport-Nameempty instead to indicate this, based on what I interpret from the PEP, but that would require us to to dropziglang/__init__.pyandziglang/__main__.py, and that breaks the "use as a module" (python -m ziglang) pathway, which we don't want happening.> [!IMPORTANT]> This isn't ready to be merged yet – we need a new release ofpypa/twine, which itself needs a newpypa/packagingrelease: pypa/packaging#950. PyPI itself needs support to ingest such wheels: pypi/warehouse#19083.packaging has made a 26.0 release with support, and support for PyPI was merged in February soon after.