[py-dev] py.test error with cygwin update

odonian at gmail.com odonian at gmail.com
Tue Jul 19 06:38:53 CEST 2005


I've been happily using py.test for about two months without problems
with an older version of cygwin (maybe 3-4 months old; sorry, don't
have the version number) and python 2.3.4.

Just recently I updated the cygwin environment, and now py.test keeps
failing; I have tried re-installing the py lib, re-installing cygwin,
and tried different versions of python (2.3.4, 2.4.1).  But this error
keeps coming up when running py.test, regardless of any other
command-line arguments (i.e. whether it's run in test collection mode,
or fed a specific test file, this error shows up):


Traceback (most recent call last):
  File "/usr/bin/py.test", line 4, in ?
    py.test.cmdline.main() 
  File "/usr/lib/python2.4/site-packages/py/test/cmdline.py", line 8, in main
    config, args = py.test.Config.parse(py.std.sys.argv[1:])
  File "/usr/lib/python2.4/site-packages/py/test/config.py", line 60, in parse
    configpaths = guessconfigpaths(*getanchorpaths(args))
  File "/usr/lib/python2.4/site-packages/py/test/config.py", line 183,
in guessconfigpaths
    if x.check(file=1):
  File "/usr/lib/python2.4/site-packages/py/path/common.py", line 96, in check
    return self.Checkers(self)._evaluate(kw)
  File "/usr/lib/python2.4/site-packages/py/path/common.py", line 69,
in _evaluate
    if bool(value) ^ bool(meth()) ^ invert:
  File "/usr/lib/python2.4/site-packages/py/path/local/local.py", line
38, in file
    return stat.S_ISREG(self._stat().st_mode)
  File "/usr/lib/python2.4/site-packages/py/path/local/local.py", line
29, in _stat
    self._statcache = self.path.stat()
  File "/usr/lib/python2.4/site-packages/py/path/local/local.py", line
283, in stat
    return self._callex(os.stat, self.strpath)
  File "/usr/lib/python2.4/site-packages/py/path/common.py", line 207,
in _callex
    cls = py.error._geterrnoclass(errno)
  File "/usr/lib/python2.4/site-packages/py/misc/error.py", line 45,
in _geterrnoclass
    clsname = py.std.errno.errorcode[eno]
KeyError: 136

Since this didn't show up before, ever, I'm guessing paths are somehow
handled differently in newer cygwin versions, but hard to imagine why
it would change that much.  I have tried catching the above particular
KeyError for the errorcode dictionary, but that only causes another
problem elsewhere.  Any help would be appreciated,

S.A.


More information about the py-dev mailing list