#45046 closed defect (fixed)
py27-wxpython-2.8: Missing "numeric" dependency in wxpython-2.8
Reported by: | fhgwright (Fred Wright) | Owned by: | mojca (Mojca Miklavec) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | jyrkiwahlstedt | |
Port: | py-wxpython-2.8 |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
Grass stopped working, apparently due to the numpy upgrade from 1.8 to 1.9. The error is:
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/wx-2.8-gtk2-unicode/wx/lib/plot.py", line 132, in <module> raise ImportError, "Numeric,numarray or NumPy not found. \n" + msg ...
The relevant code is:
# Needs Numeric or numarray or NumPy try: import numpy.oldnumeric as _Numeric except: try: import numarray as _Numeric #if numarray is used it is renamed Numeric except: try: import Numeric as _Numeric except: ...
It appears that numpy was able to satisfy this until the numpy port was upgraded to 1.9, where "oldnumeric" had been removed. I was able to work around the problem by installing py27-numeric.
The wxpython-2.8 package doesn't list either numpy or numeric as dependencies, which may have led to the failure to discover the downside of upgrading the numpy port.
It appears that there was a fix in wxwidgets 3.0 to fix the compatibility problem with numpy 1.9, but the only variant of grass that claims to work (experimentally) with V3.0 doesn't actually work.
Change History (7)
comment:1 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | mojca@… added |
---|---|
Description: | modified (diff) |
Keywords: | wxpython numpy numeric removed |
Owner: | changed from macports-tickets@… to jwa@… |
Summary: | Missing "numeric" dependency in wxpython-2.8 → py27-wxpython-2.8: Missing "numeric" dependency in wxpython-2.8 |
comment:2 Changed 10 years ago by mojca (Mojca Miklavec)
Cc: | jwa@… added; mojca@… removed |
---|---|
Owner: | changed from jwa@… to mojca@… |
Version: | 2.3.1 |
comment:3 Changed 10 years ago by mojca (Mojca Miklavec)
Port: | py-wxpython-2.8 added; py27-wxpython-2.8 removed |
---|
comment:4 Changed 10 years ago by mojca (Mojca Miklavec)
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:5 Changed 10 years ago by jmroot (Joshua Root)
We do have py-numarray BTW. It currently lacks a py27 subport but that’s easily fixed. Just mentioning it since the quoted code prefers numarray over Numeric.
comment:6 Changed 10 years ago by mojca (Mojca Miklavec)
It's not really clear to me which one it prefers. It's first trying to use the deprecated/removed library, then numarray
which it calls _Numeric
(making one think that Numeric might be the preferred one). To me it looks as if they tried to list packages in "reverse order" ;), but I don't want to claim anything (if numarray
is present, that one would be used).
I also get a feeling that there are no users of py-numarray
given that nobody cared enough to add support for py27
so far. I agree that it's trivial to add py27 to it, but maybe we could just as well remove that module altogether (if nobody misses it)?
comment:7 Changed 10 years ago by fhgwright (Fred Wright)
Curiouser and curiouser. I now see the dependency listed for this package, and I also see it listed as a recursive dependency for grass (provided that I specify the installed variants explicitly; it doesn't do that by default). But I'm able to uninstall py27-numeric without any errors regarding dependent ports, which of course breaks grass again until I reinstall it. That's probably not a bug in the port itself. :-)
BTW, I don't think this bug has anything to do with grass per se; it's just where I observed it. Though it's presumably limited to whatever subset of wxpython clients that uses plot.py.
Dependency added in r125512. Please let me know if that solves the problem. Grass should be upgraded to 7.0 anyway (see #44056).