[Python-Dev] [Distutils] how to easily consume just the parts of eggs that are good for you

Gael Varoquaux gael.varoquaux at normalesup.org
Wed Apr 9 09:54:16 CEST 2008


On Wed, Apr 09, 2008 at 11:37:07AM +1000, Ben Finney wrote:
> zooko <zooko at zooko.com> writes:

> > I am skeptical that prorgammers are going to be willing to use a new
> > database format. They already have a database -- their filesystem --
> > and they already have the tools to control it -- mv, rm, and
> > PYTHONPATH. Many of them already hate the existence the
> > "easy_instlal.pth" database file, and I don't see why a new database
> > file would be any different.

> Moreover, many of us already have a database of *all* packages on the
> system, not just Python-language ones: the package database of our
> operating system. Adding another, parallel, database which needs
> separate maintenance, and only applies to Python packages, is not a
> step forward in such a situation.

90 % (at least) of the world does not have such database. I, and probably
you, have such a very nice database. I works well, and we can choose to
forget the problems our users are facing. It does not solve them though.

In addition, packaging is system-specific. I recently had to learn some
Debian packaging, because I wanted my Ubuntu and Debian users to be able
to use my projects seamlessly. What about RPMs for RHEL, Fedora,
Mandriva? ... and coronary packages? and MSIs? ... When do I find time to
do development if I have to learn all this packaging.

It would be fantastic to have an abstraction on all these packaging
systems, including, as you point out, their database. I do agree that
reusing the system packaging's database is great, and would be the best
option for system-wide install. However one of the very neat features of
setuptools and eggs is that you don't need administrator access to
install the packages, and that is great in a shared environment, like a
computation cluster. The system's database is thus unfortunately not a
complete solution to the problem.

My 2 cents,

Gaël


More information about the Python-Dev mailing list