modulefinder goes into unbounded recursion when a
module named 'path.py', containing 'import os', is on
sys.path.
Last part of the traceback:
File "c:\python23\lib\modulefinder.py", line 255, in
import_module
m = self.load_module(fqname, fp, pathname, stuff)
File "c:\python23\lib\modulefinder.py", line 285, in
load_module
self.scan_code(co, m)
File "c:\python23\lib\modulefinder.py", line 342, in
scan_code
self._safe_import_hook(name, m, fromlist)
File "c:\python23\lib\modulefinder.py", line 300, in
_safe_import_hook
self.import_hook(name, caller)
File "c:\python23\lib\modulefinder.py", line 124, in
import_hook
q, tail = self.find_head_package(parent, name)
File "c:\python23\lib\modulefinder.py", line 166, in
find_head_package
q = self.import_module(head, qname, parent)
File "c:\python23\lib\modulefinder.py", line 237, in
import_module
self.msgin(3, "import_module", partname, fqname,
parent)
RuntimeError: maximum recursion depth exceeded
Running modulefinder with the '-x os.path' command line
option prevents the recursion.
This is not really a contrived situation, there's a
possibly useful path.py module from Jason Orendorff at
<http://www.jorendorff.com/articles/python/path>
|