[Distutils] Spec for the egg-info format

PJ Eby pje at telecommunity.com
Thu Mar 8 06:07:17 CET 2012

On Mon, Mar 5, 2012 at 4:47 PM, Paul Moore <p.f.moore at gmail.com> wrote:

> Is there a good spec of the egg-info (directory) format anywhere?

The official spec is http://peak.telecommunity.com/DevCenter/EggFormats

- What files are mandatory?
PKG-INFO - that's it.  The rest are optional - see

> - What format should files be in (specifically, line-ending format and
> to an extent encoding)

Setuptools doesn't define an encoding, and it treats any line ending
character(s) as line ending characters in the files it reads.  Think
universal newlines.

> - Should filenames in installed-files.txt be absolute or relative (and
> if relative, then to what)?

That's defined by the appropriate PEP; setuptools doesn't yet support an
installed-files log.

> - Directory name format is PACKAGE-VERSION-PYVERSION.egg-info,
> correct? Always?

The minimum is PACKAGE.egg-info, which is used for "setup.py develop"

> What about platform-specific binaries? Do they need a
> platform ID in there?

That goes in the .egg filename, yes.  See:


> Also, what is the defined filename format for egg files and wininst
> executables? Is that defined anywhere (it seems to be more or less

The wininst format is distutils defined rather than setuptools-defined; for
the rest, see the above link.

If necessary, I can read the code from distutils/setuptools, but there
> seem to be odd variations on the cheeseshop, and I'd rather be sure
> what's accepted than stick purely to what the tools generate. But if
> what the tools generate is all that's going to be reliably accepted,
> then great, I'll go with that.
> My main interest is in what pip accepts, FWIW. (I'm trying to write a
> pip-compatible binary file installer).
> Paul.
> _______________________________________________
> Distutils-SIG maillist  -  Distutils-SIG at python.org
> http://mail.python.org/mailman/listinfo/distutils-sig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/distutils-sig/attachments/20120308/3a66211c/attachment.html>

More information about the Distutils-SIG mailing list