> The technical problem with PEP 426 is that unless you want to throw away pypi 
> and start over, 
> all tools need to understand the old METADATA files regardless. 

It might not be as bad as that. For example, that IMO was the mistake behind 
the original 
concept of distutils2 - it was never going to fly as it required everyone to 
switch over to 
distutils2's way of doing things, and wouldn't be able to deal with old 
releases etc. 

For a time, I maintained a pretty extensive parallel set of metadata, based on 
just the data 
passed to setup() by packages using distutils/setuptools. This included not 
just the data for 
installation but even the data for package build, where it was purely 
declarative at the 
arguments-to-setup() level. Where a package didn't do completely bespoke things 
in setup() - 
like create new files, move files around etc. then the parallel set of metadata 
would allow 
installation of even old releases, without executing any setuptools code at 
all. 

I've not had the bandwidth to keep working on distlib and the metadata (example 
[1]), and the 
volume of new stuff going onto PyPI meant I didn't have time to keep on top of 
it. But the 
approach had some promise, in my view, and certainly showed that purely 
declarative packages 
(which didn't use e.g. custom build and install distutils/setuptools commands) 
could be 
installed using a completely different tool [than distutils/setuptools] without 
package 
authors having to change anything (beyond staying purely declarative). The 
distil 
documentation [2] shows installing a number of distributions (existing 
releases) 
from PyPI with better dependency resolution than pip does now, and without 
"throwing away 
PyPI". 

Anyway, I guess it's water under the bridge. 

Regards, 

Vinay Sajip 

[1] https://www.red-dove.com/pypi/projects/J/Jinja2/package-2.7.3.json 
[2] 
https://distil.readthedocs.io/en/0.1.0/installing.html#installing-distributions
_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
https://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to