Opened 12 years ago
Closed 7 years ago
#18937 closed New feature (fixed)
Use modern Python packaging metadata standard (1.2, PEP 345)
Reported by: | Marc Tamlyn | Owned by: | nobody |
---|---|---|---|
Component: | Packaging | Version: | dev |
Severity: | Normal | Keywords: | |
Cc: | Triage Stage: | Accepted | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
Add a PKG-INFO file as fitting with PEP 345.
See this blog post for reference.
Seems to me we can add this metadata file without too much difficulty and make new packaging happy :D
Change History (5)
comment:1 by , 12 years ago
Summary: | PEP 345 → Use modern Python packaging metadata standard (1.2, PEP 345) |
---|---|
Triage Stage: | Unreviewed → Accepted |
comment:2 by , 12 years ago
Component: | Python 3 → Core (Other) |
---|
comment:3 by , 12 years ago
Component: | Core (Other) → Packaging |
---|
comment:4 by , 9 years ago
Is this ticket still important 3 years later? If so, how can we move it forward?
Just to clarify, the complaint is that our PKG-INFO
file uses "Metadata-Version: 1.1" instead of "1.2"?
comment:5 by , 7 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
So 5 years later this ticket is no longer applicable.
- The original blog post linked suggested moving to Setuptools as a possible option. This was done in 66f546b906.
- Setuptools handles writing the PKG-INFO file, including version 1.2 metadata
- The generated
PKG-INFO
file does useMetadata-Version: 1.2
:
Metadata-Version: 1.2 Name: Django Version: 2.1.dev20180208153510 ...
Note:
See TracTickets
for help on using tickets.
FWIW, PEP345 is just the metadata standard, not really the carrier of the data. But it's easy enough to put the info in a setup.cfg as it's implemented by distutils2/packaging (http://alexis.notmyidea.org/distutils2/setupcfg.html).
We could use wrappers like d2to1 (http://pypi.python.org/pypi/d2to1) to maintain only one file with the data but would still be forward-compatible.
On the other hand as long as distutils2/packaging isn't officiall released/included in Python 3.X it may be senseless to do so.