[py-dev] py.test error with cygwin update
holger krekel
hpk at trillke.net
Tue Jul 19 12:21:51 CEST 2005
Hi,
On Tue, Jul 19, 2005 at 00:38 -0400, odonian at gmail.com wrote:
> 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.
good!
> 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
It seems that this is an error code that is not defined by
Python's errno module. We should provide a default
Error class like "UnknownErrno136" in case we can't discover
it from the errorcode module. I have just commited something
along these lines.
> 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,
The error should propagate because it indicates a real problem.
Once we have a proper error and know which os-level operation
actually failed we should be further. Can you 'svn up',
reinstall and report about the error/traceback again?
cheers,
holger
More information about the Pytest-dev
mailing list