[Python-Dev] "PIL" vs. "Imaging" (was Re: eggs now mandatory for pypi?)

P.J. Eby pje at telecommunity.com
Mon Oct 5 20:48:37 CEST 2009

At 01:26 PM 10/5/2009 +0200, Jens W. Klein wrote:
>And as far as I understand PIL is not the
>problem, but the packaging/ setuptools. For the records: PIL is a great
>piece of software and I dont want to miss it.

Actually, the problem is that the package is called "PIL" in Pypi, 
but the actual installed package is called "Imaging".  If you want to 
depend on PIL, you need to add "Imaging" to your dependencies, and 
add a dependency link to http://effbot.org/downloads/ in order to 
make it work...  at least on platforms where you have a compiler.  If 
you're working on Windows, you need to depend on PIL in order to get 
a download to work, but once installed, it's still called 
Imaging.  So, pretty much you're hosed either way.  ;-)

If the package had just *one* name, used consistently for source, 
binaries, and PyPI registration, it would work.  Unfortunately, 
setuptools is not a human being and can't figure out that "PIL" and 
"Imaging" are two different names for the same thing.  (I'm guessing 
that PIL was registered on PyPI manually, before the "setup.py 
register" command existed.  Heck, it was probably being distributed 
before the distutils even existed, and indeed before there were such 
things as "packages" in Python.)

When I was first writing setuptools, I tried to get it to work with 
effbot.org packages as best I could, but there were some things I 
just couldn't do without hardcoding special cases, and working around 
this problem was one of them.

More information about the Python-Dev mailing list