#43 closed defect

on my cygwin install attempt after README guidelines the proposed "import zfec" test fails — at Version 15

Reported by: arnowa Owned by: zooko
Priority: minor Milestone:
Component: code Version:
Keywords: Cc:
Launchpad Bug:

Description (last modified by warner)

on my cygwin install attempt after README guidelines the proposed "import zfec" test fails:

Python 2.5 (r25:51908, Mar 13 2007, 08:13:14)
[GCC 3.4.4 (cygming special, gdc 0.12, using dmd 0.125)] on cygwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import zfec
/usr/lib/python2.5/site-packages/zfec-1.0.0-py2.5-cygwin-1.5.24-i686.egg/_fec.py:3: UserWarning: Module _fec was already imported from /usr/lib/python2.5/site-packages/zfec-1.0.0-py2.5-cygwi
n-1.5.24-i686.egg/_fec.pyc, but /cygdrive/k/src/tahoe/src/zfec is being added to sys.path
  import sys, pkg_resources, imp
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "zfec/__init__.py", line 19, in <module>
    from _fec import Encoder, Decoder, Error
  File "build/bdist.cygwin-1.5.24-i686/egg/_fec.py", line 7, in <module>
  File "build/bdist.cygwin-1.5.24-i686/egg/_fec.py", line 6, in __bootstrap__
ImportError: Permission denied
>>>
[4]+  Stopped                 python

Change History (15)

comment:1 Changed at 2007-05-10T15:24:59Z by zooko

Thanks for the bug report Arno. I don't yet understand why this happens.

After you get the error shown above, could you run "ls -l" to get permission information about the files names in the error message?

I'll try to reproduce this or deduce what is going on.

comment:2 Changed at 2007-05-10T22:06:45Z by zooko

I still haven't figured this out. Could you please do a couple of diagnostics:

  1. Try to run "ls -l" on any files that you can find. If build/bdist.cygwin-1.5.24-i686/egg/_fec.py doesn't actually exist, then try build/bdist.cygwin-1.5.24-i686/egg (I suspect that the "egg" is a ZIP file), and so on.
  1. {{{

python -i import setuptools setuptools.version }}}

The official stable version of setuptools is 0.6c5, but I required only 0.6c3 in order to make it a tad easier to install on Ubuntu Edgy. Anyway, I'd like to know what version of setuptools you have.

More soon...

comment:3 Changed at 2007-05-10T22:06:58Z by zooko

  • Owner changed from zooko to arnowa

comment:4 Changed at 2007-05-12T15:25:14Z by zooko

I just had a similar problem. The output was:

$ python -i
Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import zfec
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "zfec\__init__.py", line 19, in <module>
    from _fec import Encoder, Decoder, Error
ImportError: DLL load failed: The specified module could not be found.

Here are some possibly relevant facts:

$ python -i
Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.platform
'win32'
>>> sys.version
'2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)]'
>>> import setuptools
>>> setuptools.__version__
'0.6c5'

What versionf of those things are on your system, Arno?

comment:5 Changed at 2007-05-12T15:25:19Z by zooko

  • Owner changed from arnowa to zooko
  • Status changed from new to assigned

comment:6 Changed at 2007-05-12T15:31:15Z by zooko

  • Owner changed from zooko to arnowa
  • Status changed from assigned to new

Hm, so I ran setup.py clean --all, and then I ran darcs whatsnew -s -l and rm'ed everything that was identified as being new. (See also ticket #10.)

After that, then the problem goes away.

Will you try that, Arno? Also, if it makes a difference, you can get a darcs repository with just zfec and not tahoe from

http://allmydata.org/source/zfec/

Assigning to Arno to see if cleaning everything away and retrying changes the behavior.

comment:7 Changed at 2007-05-12T15:57:42Z by zooko

Once you can get zfec to load, then another thing we want to know is what is the path from which zfec was loaded:

$ python -i
Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import zfec
>>> print zfec
<module 'zfec' from 'c:\Python25\lib\site-packages\zfec-1.0.0-py2.5-win32.egg\zfec\__init__.pyc'>

comment:8 Changed at 2007-05-12T19:43:59Z by zooko

Arno mailed me this:

i found that that permission problem seems to be related to the fact that  
the _fec.dll is dlopened from ~/.python-eggs/zfec-something-egg-tmp dir,  
having 600 as permissions. Everything is fine when i change that manually  
to 777 or whatever. But i can't see where to influence python or whomever  
to avoid that 600...?

comment:9 Changed at 2007-05-13T15:30:01Z by arnowa

  • Owner changed from arnowa to zooko

using setuptools's 0.7a1 (i. e. the subversion trunk, i think) seems to solve this.

comment:10 Changed at 2007-05-13T18:53:29Z by zooko

  • Owner changed from zooko to arnowa
  • Priority changed from major to minor

Arno: Try putting "0.7a1" as the "default version" in ez_setup.py and adding in the appropriate md5sum for 0.7a1. :-)

comment:11 Changed at 2007-05-16T15:20:20Z by zooko

  • Owner changed from arnowa to zooko
  • Status changed from new to assigned

Philip J Eby reportsthat this will be fixed by setuptools v0.6c6, which is due to be released Real Soon Now.

comment:12 Changed at 2007-05-18T17:00:49Z by zooko

So... I guess the next step is either wait for 0.6c6 or else start using 0.7a1.

comment:13 Changed at 2007-06-04T19:45:14Z by zooko

setuptools 0.6c6 is out

comment:14 Changed at 2007-06-04T19:59:59Z by zooko

I'm making a new version of zfec packaging which uses setuptools 0.6c6 and which also uses pyutil package by automated import and dependency instead of by copying some of pyutil's files into zfec/util/.

comment:15 Changed at 2007-06-05T02:50:32Z by warner

  • Description modified (diff)

(just wikiformatting the exception in the descriptive text)

Note: See TracTickets for help on using tickets.