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