|
Webb Sprague
webb.sprague at gmail.com
Mon Apr 3 00:06:16 EDT 2006
Thanks to Graham's help, I found the typo
("sys.path.append(os.getcwd)" should have been
"sys.path.append(os.getcwd())"), and all is well.
W
On 4/2/06, Graham Dumpleton <grahamd at dscpl.com.au> wrote:
> Webb Sprague wrote ..
> > This may be un-reproducible, and it does NOT happen within ipython
> > shell, but I am getting the backtrace below when trying to import
> > scipy within my application. I would guess it has to do with the very
> > outdated ebuild of mod_python, (see the gentoo bug:
> > http://bugs.gentoo.org/show_bug.cgi?id=123852), but just in case
> > anybody has any quick fixes, please let me know.
> >
> > I have restarted Apache numerous times to make sure there isn't some
> > weird cache thing going on (the source of most of my phantom bug
> > reports). Scipy 0.3.2 does not have this problem.
>
> Looking through pkg_resources.py, critical bit of code seems to be:
>
> class WorkingSet(object):
> """A collection of active distributions on sys.path (or a similar list)"""
>
> def __init__(self, entries=None):
> """Create working set from list of path entries (default=sys.path)"""
> self.entries = []
> self.entry_keys = {}
> self.by_key = {}
> self.callbacks = []
>
> if entries is None:
> entries = sys.path
>
> for entry in entries:
> self.add_entry(entry)
>
> Specifically, "entries" is set to 'sys.path' and then each entry in that is
> processed. The final error suggests that one of the entries in 'sys.path'
> is actually a function and not a string.
>
> Are you setting 'sys.path' using PythonPath directive in mod_python
> and somehow stuffed it up, or are you setting 'sys.path' explicitly in
> any other places?
>
> Graham
>
> > Backtrace follows. (6), with LcUtil.py, is where it tries to import
> > and errors out.
> >
> > Mod_python error: "PythonHandler mod_python.publisher"
> >
> > Traceback (most recent call last):
> >
> > (1) File "/usr/lib/python2.4/site-packages/mod_python/apache.py",
> > line 299, in HandlerDispatch
> > result = object(req)
> >
> > (2) File "/usr/lib/python2.4/site-packages/mod_python/publisher.py",
> > line 98, in handler
> > path=[path])
> >
> > (3) File "/usr/lib/python2.4/site-packages/mod_python/apache.py",
> > line 457, in import_module
> > module = imp.load_module(mname, f, p, d)
> >
> > (4) File "/var/www/localhost/htdocs/larry/lc.py", line 32, in ?
> > import LcSinglePopObject
> >
> > (5) File "/var/www/localhost/htdocs/larry/LcSinglePopObject.py", line
> > 40, in ?
> > import LcUtil
> >
> > (6) File "/var/www/localhost/htdocs/larry/LcUtil.py", line 8, in ?
> > import scipy as S
> >
> > File "/usr/lib/python2.4/site-packages/scipy/__init__.py", line 18, in
> > ?
> > import pkg_resources as _pr # activate namespace packages
> > (manipulates __path__)
> >
> > File "/usr/lib/python2.4/site-packages/pkg_resources.py", line 2347,
> > in ?
> > working_set = WorkingSet()
> >
> > File "/usr/lib/python2.4/site-packages/pkg_resources.py", line 343,
> > in __init__
> > self.add_entry(entry)
> >
> > File "/usr/lib/python2.4/site-packages/pkg_resources.py", line 358,
> > in add_entry
> > for dist in find_distributions(entry, True):
> >
> > File "/usr/lib/python2.4/site-packages/pkg_resources.py", line 1450,
> > in find_distributions
> > importer = get_importer(path_item)
> >
> > File "/usr/lib/python2.4/site-packages/pkg_resources.py", line 1407,
> > in get_importer
> > importer = hook(path_item)
> >
> > TypeError: zipimporter() argument 1 must be string, not
> > builtin_function_or_method
> >
> > _______________________________________________
> > Mod_python mailing list
> > Mod_python at modpython.org
> > http://mailman.modpython.org/mailman/listinfo/mod_python
>
|