At 02:10 PM 10/1/2008 +0200, Tarek Ziadé wrote:
Proposals
========

this is also a synthezis of what I hurd, and some elements I have
added to respect the needs that were expressed.

0/ a lot of work can be done to clean distutils, no matter what is
decided (another PEP is built for that) cleanning, removing old-style
code, testing

1/ let's change the Python Metadata , in order to introduce a better
dependency system, by

- officialy introduce "install requires" and "test requires" metadata in there
 - mark "requires" as deprecated

2/ Let's move part of setuptools code in distutils, to respect those changes.

3/ let's create a simple convention : the metadata should be expressed
in a python module called 'pkginfo.py'
   where each metadata is a variable.

   that can be used by setup.py and therefore by any tool that work
with it, even if it does not run
   a setup.py command.

   This is simpler, this is cleaner. you don't have to run some setup
magic to read them.
   at least some magic introduces by commands

I'm -1 on all of the above. I think we need a standard for tools interop (ala WSGI), not implementation tweaks for the existing tools. I also think that a concrete metadata format proposal is premature at this time; we've barely begun to gather -- let alone specify -- our requirements for that metadata. (Essentially, only version dependencies have been discussed, AFAICT.)

There have been many people agreeing that the distutils are thoroughly broken and a new approach is needed; these proposals sound like minor tweaks to the existing infrastructure, rather than a way to get rid of it. So to me, the above doesn't seem like a synthesis of the threads that I've been reading.


4/ let's change PyPI to make it work with the new metadata and to
enforce a few things

Enforcements:
    - a binary distribution cannot be uploaded if a source distrbution
has not been previously provided for the version

Note that this doesn't allow closed-source packages to be uploaded; thus it would need to be a warning, rather than a requirement.


New features:
   - we should be able to download the metadata of a package without
downloading the package
   - PyPI should display the install and test dependencies in the UI

It could only do this for specific binaries, since dependencies can be dynamic.

_______________________________________________
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig

Reply via email to