[Distutils] setuptools and sdist on Mac OS X, tarfile flukes

Phillip J. Eby pje at telecommunity.com
Thu Feb 15 21:15:03 CET 2007


At 05:38 PM 2/15/2007 +0000, Sidnei da Silva wrote:
>Not sure if anyone reported a similar issue here since I'm not subscribed, but
>here it goes.
>
>Some of the new plone.* eggs are being built on OS X by the developers, they
>usually do 'setup.py sdist bdist_egg upload'. Sometimes they only do 'setup.py
>sdist upload'
>
>Turns out that if you try to easy_install and there's only the sdist package,
>but no egg, easy_install uses tarfile to unpack the package, build an egg and
>install the egg. However, for some reason some of those nasty '._<filename>'
>files that OS X creates end up in the tarball. And tarfile then fails to 
>unpack
>the tarball. One such package is 'plone.app.controlpanel 1.0a2'
>(http://cheeseshop.python.org/packages/source/p/plone.app.controlpanel/plone.app.controlpanel-1.0a2.tar.gz#md5=2b2afeaba0d067f6b1a6707c6d69311d),
>with the following traceback:
>...
>I'm left wondering if the issue is:
>
>  a) Windows
>  b) The nasty OS X file
>  c) The Python 'tarfile' module
>  d) setuptools
>  e) None of the above :)

It appears to be a combination of "a" and "c".  Windows Python 2.5 does not 
have an issue with the above file, nor does Cygwin Python 2.3.  Windows 
Python 2.3 and 2.4 do have the problem.

>Thoughts?

Dunno.  It sounds like the people making these distributions have an 
over-eager MANIFEST.in or an over-eager source control system.  They should 
probably add a MANIFEST.in rule to exclude the files from the source release.



More information about the Distutils-SIG mailing list