[Python-Dev] magic in setuptools (Was: setuptools in the stdlib)

"Martin v. Löwis" martin at v.loewis.de
Thu Apr 20 23:08:34 CEST 2006


Ronald Oussoren wrote:
> As far as I understand the issues they compete up to a point, but should
> also make it easier to create platform packages that contain proper the
> proper dependencies because those are part of machine-readable meta-data
> instead of being written down in readme files. Oddly enough that was
> also the objection from one linux distribution maintainer: somehow his
> opinion was that the author of a package couldn't possibly know the
> right depedencies for it.

What he can't possibly know is the *name* of the package he depends on.
For example, a distutils package might be called 'setuptools', so
developers of additional packages might depend on 'setuptools'. However,
on Debian, the dependency should be different: The package should depend
on either 'python-setuptools' or 'python2.3-setuptools', depending
on details which are off-topic here.

> As for platform packages: not all platforms have useable packaging systems.
> MacOSX is one example of those, the system packager is an installer and
> doesn't include an uninstaller. Eggs make it a lot easier to manage python
> software in such an environment (and please don't point me to Fink or
> DarwinPorts on OSX, those have serious problems of their own).

Isn't uninstallation just a matter of deleting a directory? If I know
that I want to uninstall the Python package 'foo', I just delete
its directory. Now, with setuptools, I might have multiple versions
installed, so I have to chose (in Finder) which of them I want to
delete.

That doesn't require Eggs to be single-file zipfiles; deleting
a directory would work just as will (and I believe it will work
with ez_install, too).

>> Package
>> authors will refuse to produce them, putting the burden of package
>> maintenance (what packages are installed, what are their dependencies,
>> when should I remove a package) onto the the end user/system
>> administrator.
> 
> Philip has added specific support for them: it is possible to install
> packages in the tradition way but with some additional files that tell
> setuptools about installed packages.

As a system administrator, I don't *want* to learn how to install
Python packages. I know how to install RPMs (or MSIs, or whatever
system I manage); this should be good enough. If "this Python junk"
comes with its own installer procedure, I will hate it.

Regards,
Martin


More information about the Python-Dev mailing list