[PEAK] Re: setuptools test command generates exception after interpreter shutdown

Nikolaus Rath Nikolaus at rath.org
Mon May 3 13:55:40 EDT 2010


On 05/03/2010 01:20 PM, P.J. Eby wrote:
> At 07:04 PM 5/2/2010 -0400, Nikolaus Rath wrote:
>> Nikolaus Rath <Nikolaus at rath.org> writes:
>> > Hello,
>> >
>> > Consider this:
>> [...]
>>
>>
>> Note that this does not happen on every system. I reproduced this on
>> Ubuntu Intrepid with Python 2.6.2, but I was not able to reproduce it on
>> Ubuntu Lucid with Python 2.6.5. I can't tell if it's the Python version
>> or something else though.
> 
> It's probably something else in your environment -- maybe in a
> sitecustomize.py, or a setuptools plugin that's installed in one
> environment but not the other?

No, apparently not. It also happens with -S:

$ python -S ./setup.py test

---------------------------------------------------------------------------
This script requires setuptools version 0.6c11 to run (even to display
help).  I will attempt to download it for you (from
http://pypi.python.org/packages/2.6/s/setuptools/), but
you may need to enable firewall access for this script first.
I will start the download in 15 seconds.

(Note: if this machine does not have network access, please obtain the file

   http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg

and place it in this directory before rerunning this script.)
---------------------------------------------------------------------------
Downloading http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11-py2.6.egg
running test
running egg_info
writing UNKNOWN.egg-info/PKG-INFO
writing top-level names to UNKNOWN.egg-info/top_level.txt
writing dependency_links to UNKNOWN.egg-info/dependency_links.txt
reading manifest file 'UNKNOWN.egg-info/SOURCES.txt'
writing manifest file 'UNKNOWN.egg-info/SOURCES.txt'
running build_ext
test_getattr_root (tests.t3_fs_api.fs_api_tests) ... INFO:fsck:Woops!
ok

----------------------------------------------------------------------
Ran 1 test in 0.004s

OK
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/usr/lib/python2.6/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/usr/lib/python2.6/multiprocessing/util.py", line 258, in _exit_function
    info('process shutting down')
TypeError: 'NoneType' object is not callable
Error in sys.exitfunc:
Traceback (most recent call last):
  File "/usr/lib/python2.6/atexit.py", line 24, in _run_exitfuncs
    func(*targs, **kargs)
  File "/usr/lib/python2.6/multiprocessing/util.py", line 258, in _exit_function
    info('process shutting down')
TypeError: 'NoneType' object is not callable


> The 'multiprocessing.util' module (or any other part of
> 'multiprocessing' isn't imported by your simple test case, as far as I
> can tell -- and setuptools definitely doesn't import it either.  But
> your errors are in the multiprocessing.util module.  So, something else
> must be importing it.

Yes, it seems to be the logging module. If I remove it, then multiprocessing is no longer loaded. But the multiprocessing module is loaded both with- and without setuptools. And only with setuptools it produces exceptions.


Best,

   -Nikolaus

-- 
 »Time flies like an arrow, fruit flies like a Banana.«

  PGP fingerprint: 5B93 61F8 4EA2 E279 ABF6  02CF A9AD B7F8 AE4E 425C



More information about the PEAK mailing list