[Distutils] Why are egg-info and related pth files required for rpm packages?

Phillip J. Eby pje at telecommunity.com
Tue Sep 4 23:25:14 CEST 2007

At 02:04 PM 9/4/2007 -0700, Toshio Kuratomi wrote:
> > Note, by the way, that as of Python 2.5, *all* distutils-generated
> > packages include .egg-info; they just use a single file instead of a
> > directory.  This makes it easy to detect what Python packages are
> > installed on a system, as long as the platform maintainers don't
> > remove this file.
> >
>I'm sorry to say that this is not true on Fedora 7's python2.5.

Well, as I said, "as long as the platform maintainers don't remove" 
it.  :)  I didn't know of anybody specifically removing it, but given 
the long and colorful history of distributions hacking up the way 
Python is installed, I expected that *somebody* would be unable to 
resist tinkering.  :)

>   There's
>a patch that disables generating egg-info files for distutils.  I've
>started talking with the python maintainer in Fedora to find out why the
>patch exists and if it can be removed but he needs some time to find out
>why the patch was added in the first place.
>(A note in the spec files implies that the patch was added so as not to
>generate egg-info for python core libraries and it might not have been
>meant to affect distutils as a whole.  I have to figure out if even that
>level of meddling is going to prove bothersome and make a
>recommendation.  If you can think of some cases where that would be bad,
>please reply so that I can include them in our discussion.)

If you mean the Python-2.5.egg-info and wsgiref.egg-info, they are 
both definitely supposed to be there.

The latter is there so that packages that depend on a specific 
version of wsgiref can do so without needing to check what Python 
version they're on.

I really would have liked to include .egg-info for *all* the 2.5 
stdlib add-ons including ctypes and ElementTree, but there wasn't 
time to co-ordinate that before the release.

More information about the Distutils-SIG mailing list