egg and modpython

Paul Boddie paul at boddie.org.uk
Wed Sep 13 05:36:36 EDT 2006


Bruno Desthuilliers wrote:
>
> AFAIK, jar files don't include native dynamic libs... But I'm not a Java
> expert (happily forgot most of what I used to know about this language).

I can't be bothered to read the specification to say what is allowed in
.jar files, but .war files frequently get unpacked by various
application servers either for efficiency reasons or in order to access
resources that have to be processed. Whether such software is badly
designed or not (eg. the horror of Oracle Containers for Java), there's
a precedent for such behaviour that needs to be reviewed continuously.

[...]

> Yes, true. But I'd still say that it's more a problem of proper
> packaging (ie, an egg with dynamic libs inside should better not be
> packaged as 'zip-safe') than a bug in the eggs system itself.

There's always going to be an issue of how much you need to know in
order to be able to package stuff effectively. With Debian packaging,
there's a culture around this with a moderately steep learning curve;
with distutils, a simple script is often enough for a Python-only
package, but various strangely defined options for installing scripts,
data and programs cause the learning curve to point more steeply
upwards. I imagine that providing native code libraries can be even
more of a hassle, but at such a point setuptools should really start to
help out and detect the situations where compressed .egg files have to
be unpacked.

But returning briefly to my point about what setuptools and its
associates should be used for, I think the following message sums up
one side of the conflicting demands made upon it:

http://mail.python.org/pipermail/python-dev/2004-October/049572.html

Because one platform has no package manager, people reach for the
closest solution, inflicting a (meta)package format on everyone else.
Attempts to make distutils work with .deb files seem to have stalled,
and I don't buy the "awkward Debian" argument that some suggest is the
reason for this. It's more likely that the metapackage format in
question isn't expressive enough to get the job done.

Paul




More information about the Python-list mailing list