PyPI bdist_wininst upload failing

Steven Bethard steven.bethard at gmail.com
Sun May 27 11:19:03 EDT 2007


John Machin wrote:
> On May 27, 4:20 pm, Steven Bethard <steven.beth... at gmail.com> wrote:
>> Steven Bethard wrote:
>>> I just tried to upload new versions of the argparse module to PyPI, but
>>> it seems like I can no longer upload Windows installers:
> [snip]
>> That seems a little weird to me. Are the bdist_wininst exe files really
>> zip files? Or did I just misunderstand what "content" is?
> 
> They are exe files with a zip appended. Try out the above code on your
> file; it may just help you suss out what the problem is.
> E.g.:
>>>> import zipfile
>>>> zipfile.ZipFile('xlrd-0.6.1a4.win32.exe').namelist()
> ['PURELIB/xlrd-0.6.1a4-py2.5.egg-info', 'PURELIB/xlrd/biffh.py',
> ... snip ...
> 'SCRIPTS/xlrdnameAPIdemo.py']

Interesting. Thanks!

 >>> zipfile.ZipFile('argparse-0.8.0.win32.exe').namelist()
['.../lib/argparse-0.8.0-py2.5.egg-info', '.../lib/argparse.py']

Interestingly, it looks like none of these are "safe_zipnames" according to:

     https://svn.python.org/packages/trunk/pypi/verify_filetype.py

I wonder why that is...

Also, I couldn't get the StringIO code from there to work:

 >>> import StringIO
 >>> content = open('argparse-0.8.0.win32.exe').read()
 >>> t = StringIO.StringIO(content)
 >>> t.filename = 'argparse-0.8.0.win32.exe'
 >>> z = zipfile.ZipFile(t)
Traceback (most recent call last):
   File "<interactive input>", line 1, in <module>
   File "C:\Python25\lib\zipfile.py", line 346, in __init__
     self._GetContents()
   File "C:\Python25\lib\zipfile.py", line 366, in _GetContents
     self._RealGetContents()
   File "C:\Python25\lib\zipfile.py", line 378, in _RealGetContents
     raise BadZipfile, "File is not a zip file"
BadZipfile: File is not a zip file

STeVe



More information about the Python-list mailing list