On Fri, Jul 10, 2009 at 09:41:30AM -1000, Eric Firing wrote:
>> OK, but right now MPL is broken with my version of wxversion, which is the
>> one shipped by default in Ubuntu. So it is broken for a lot of user.
>
> Are you sure? Could you be pulling in some other wxversion? The only
> other person reporting this problem so far is Tony Yu. I am now on
> jaunty, and my wxversion has AlreadyImportedError. What version of
> ubuntu are you using, and what is the full wx version that it includes?
Ha, interesting:
$ ipython
Python 2.6.2 (release26-maint, Apr 19 2009, 01:56:41)
Type "copyright", "credits" or "license" for more information.
IPython 0.10.bzr.r1163 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object'. ?object also works, ?? prints more.
In [1]: import wxversion
In [2]: wxversion.__file__
Out[2]: '/usr/lib/python2.6/dist-packages/wx-2.6-gtk2-unicode/wxversion.pyc'
So, if wx2.6 is installed (I have 2.8 installed too), we run into these
problem.
Also, it is interesting to see that the older wxversion gets imported.
That does defeat the purpose of wxversion :). It means that you can't
have multiple versions of wx installed.
>> It seems wrong for me to require the users to upgrade wxversion while
>> there is a solution that works, eventhough it may not be exactly what you
>> want.
>
> The solution you propose doesn't work. It completely defeats the
> version check.
In a way it does. So we can add a check:
"if 'wx' in sys.module:"
to replace the "AlreadyImportedError", it is clearly bug ware.
>> One solution is to do bugware with hasattr(wxversion, 'AlreadyImportedError')
>
> Committed to svn. Please check it.
Certainly does work betters. Also, the "AlreadyImported" problem is
caught elsewhere if I preimport an older version of wx:
File "/home/varoquau/dev/matplotlib/lib/pylab.py", line 1, in <module>
from matplotlib.pylab import *
File "/home/varoquau/dev/matplotlib/lib/matplotlib/pylab.py", line 244,
in <module>
from matplotlib.pyplot import *
File "/home/varoquau/dev/matplotlib/lib/matplotlib/pyplot.py", line 76,
in <module>
new_figure_manager, draw_if_interactive, show = pylab_setup()
File
"/home/varoquau/dev/matplotlib/lib/matplotlib/backends/__init__.py", line
25, in pylab_setup
globals(),locals(),[backend_name])
File
"/home/varoquau/dev/matplotlib/lib/matplotlib/backends/backend_wxagg.py",
line 23, in <module>
import backend_wx # already uses wxversion.ensureMinimal('2.8')
File
"/home/varoquau/dev/matplotlib/lib/matplotlib/backends/backend_wx.py",
line 137, in <module>
raise ImportError(missingwx)
ImportError: Matplotlib backend_wx and backend_wxagg require wxPython >=2.8
Thanks for your fix.
Gaƫl
------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge
This is your chance to win up to $100,000 in prizes! For a limited time,
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
Matplotlib-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel