Hi, I'm trying to use the import hook in Python2.6, but I'm having a problem. It doesn't work for numpy. My error is such:
> >>> import knee > >>> import numpy > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > File "knee.py", line 16, in import_hook > q, tail = find_head_package(parent, name) > File "knee.py", line 52, in find_head_package > q = import_module(head, qname, parent) > File "knee.py", line 101, in import_module > m = imp.load_module(fqname, fp, pathname, stuff) > File "/usr/apps/python2.6/lib/python2.6/site-packages/numpy/__init__.py", > line 130, in <module> > import add_newdocs > File "knee.py", line 16, in import_hook > q, tail = find_head_package(parent, name) > File "knee.py", line 52, in find_head_package > q = import_module(head, qname, parent) > File "knee.py", line 101, in import_module > m = imp.load_module(fqname, fp, pathname, stuff) > File > "/usr/apps/python2.6/lib/python2.6/site-packages/numpy/add_newdocs.py", line > 9, in <module> > from lib import add_newdoc > File "knee.py", line 16, in import_hook > q, tail = find_head_package(parent, name) > File "knee.py", line 52, in find_head_package > q = import_module(head, qname, parent) > File "knee.py", line 101, in import_module > m = imp.load_module(fqname, fp, pathname, stuff) > File > "/usr/apps/python2.6/lib/python2.6/site-packages/numpy/lib/__init__.py", > line 4, in <module> > from type_check import * > File "knee.py", line 16, in import_hook > q, tail = find_head_package(parent, name) > File "knee.py", line 52, in find_head_package > q = import_module(head, qname, parent) > File "knee.py", line 101, in import_module > m = imp.load_module(fqname, fp, pathname, stuff) > File > "/usr/apps/python2.6/lib/python2.6/site-packages/numpy/lib/type_check.py", > line 8, in <module> > import numpy.core.numeric as _nx > File "knee.py", line 17, in import_hook > m = load_tail(q, tail) > File "knee.py", line 68, in load_tail > m = import_module(head, mname, m) > File "knee.py", line 101, in import_module > m = imp.load_module(fqname, fp, pathname, stuff) > File > "/usr/apps/python2.6/lib/python2.6/site-packages/numpy/core/__init__.py", > line 6, in <module> > import umath > File "knee.py", line 16, in import_hook > q, tail = find_head_package(parent, name) > File "knee.py", line 52, in find_head_package > q = import_module(head, qname, parent) > File "knee.py", line 101, in import_module > m = imp.load_module(fqname, fp, pathname, stuff) > TypeError: import_hook() takes at most 4 arguments (5 given) So I don't know what is going on, unless a "self" is being passed along the way. (which seems like it could happen when looking at __import__ in the source) Can any of you identify my problem or let me know of a fixed import hook? Thank you, Timothy D. Kadich
_______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com