Re: [matplotlib-devel] master macosx backend broken?

2013-09-19 Thread Michiel de Hoon
The crash occurs in the call to get_text_width_height_descent(self, s, prop, 
ismath) due to the fact that

family = prop.get_family() previously returned a list of strings, while now it 
returns a list of unicode strings. The backend then fails to find the font, and 
crashes over a NULL pointer. I will add a check for a NULL pointer and raise a 
Python exception appropriately, and also modify the backend to allow for 
unicode strings.
Note that other backends may also trip over this).

Best,
-Michiel.




 From: Michael Droettboom md...@stsci.edu
To: matplotlib-devel@lists.sourceforge.net 
Sent: Thursday, September 19, 2013 2:14 AM
Subject: Re: [matplotlib-devel] master macosx backend broken?
 


Try this.  It at least gets simple_plot.py running again on the OS-X backend.

https://github.com/matplotlib/matplotlib/pull/2433

Mike

On 09/18/2013 12:42 PM, Michael Droettboom wrote:

FWIW, once getting past the error reported by Eric in 2431, I am able to 
reproduce this on my Mac. I'm looking into it.  I suspect something in 
the macosx backend is getting passed a unicode string where it used to 
get a byte string. Mike On 09/17/2013 10:14 PM, Damon McDougall wrote: 
On Tue, Sep 17, 2013 at 8:55 PM, Damon McDougall damon.mcdoug...@gmail.com 
wrote: 
On Tue, Sep 17, 2013 at 3:49 PM, Eric Firing efir...@hawaii.edu wrote: 
When I build mpl from master on python.org python 2.7, Mountain Lion,
and try to plot anything with the macosx backend, I am now getting an
Apple crash--the plot window flashes up and vanishes, and a big OS X
crash report window pops up.  Ipython shows Trace/BPT trap: 5.  I have
never seen anything like this before.  Building from 1.3.0 works fine. Is 
anyone else seeing this? Master is also broken, at least on my machine, with 
other backends.  The
suggested fix is https://github.com/matplotlib/matplotlib/pull/2431. Eric 
Building from master produces a broken build of matplotlib for me.
After the build finishes, I get this warning from the linker: ld: warning: 
ignoring file /opt/local/lib/libfreetype.dylib, file was
built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0
0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the
architecture being linked (i386): /opt/local/lib/libfreetype.dylib I don't know 
why it's compiling with -arch i386.  It's also compiling
with -arch x86_64. When I install matplotlib, this is what happens from an 
ipython terminal: In [1]: import matplotlib
In [2]: print matplotlib.__version__
1.4.x
In [3]: matplotlib.use('macosx')
In [4]: import matplotlib.pyplot as plt
In [5]: fig = plt.figure()
In [6]: ax = fig.add_subplot(1, 1, 1)
In [7]: ax.plot([1, 2, 3])
Out[7]: [matplotlib.lines.Line2D at 0x107523250]
In [8]: plt.show()
Trace/BPT trap: 5 git bisecting says that 
f4adec7b569cfd0b30e0f8367ba8618b9e160f92 is
the first bad commit, which you can see the diff of
herehttps://github.com/matplotlib/matplotlib/commit/f4adec7b569cfd0b30e0f8367ba8618b9e160f92.
 That's a pretty big commit so it'll take a while to track down. I'm kind of 
swamped with work right now (a colleague I work with
recently resigned) so I don't have as much time as I'd like to
dedicate to helping out. Eric, I hope that helps a little bit. Best wishes,
Damon --
Damon McDougall http://www.damon-is-a-geek.com Institute for Computational 
Engineering Sciences
201 E. 24th St.
Stop C0200
The University of Texas at Austin
Austin, TX 78712-1229 
Oh, and I get the linker warning both with last good commit, *and* the
first bad commit.  Just as another data point. 


--  _
|\/|o _|_  _. _ | | \.__  __|__|_|_  _  _ ._ _  
|  ||(_| |(_|(/_| |_/|(_)(/_|_ |_|_)(_)(_)| | | http://www.droettboom.com
--
LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99!
1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint
2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes
Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. 
http://pubads.g.doubleclick.net/gampad/clk?id=58041151iu=/4140/ostg.clktrk
___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel--
LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99!
1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint
2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes
Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13. 
http://pubads.g.doubleclick.net/gampad/clk?id=58041151iu=/4140/ostg.clktrk___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel


Re: [matplotlib-devel] master macosx backend broken?

2013-09-19 Thread Michael Droettboom
You may want to look at or comment on the pull request I made yesterday 
to fix this:


https://github.com/matplotlib/matplotlib/pull/2433

Mike

On 09/19/2013 06:52 AM, Michiel de Hoon wrote:
The crash occurs in the call to get_text_width_height_descent(self, s, 
prop, ismath) due to the fact that
family = prop.get_family() previously returned a list of strings, 
while now it returns a list of unicode strings. The backend then fails 
to find the font, and crashes over a NULL pointer. I will add a check 
for a NULL pointer and raise a Python exception appropriately, and 
also modify the backend to allow for unicode strings.

Note that other backends may also trip over this).

Best,
-Michiel.


*From:* Michael Droettboom md...@stsci.edu
*To:* matplotlib-devel@lists.sourceforge.net
*Sent:* Thursday, September 19, 2013 2:14 AM
*Subject:* Re: [matplotlib-devel] master macosx backend broken?

Try this. It at least gets simple_plot.py running again on the OS-X 
backend.


https://github.com/matplotlib/matplotlib/pull/2433

Mike

On 09/18/2013 12:42 PM, Michael Droettboom wrote:

FWIW, once getting past the error reported by Eric in 2431, I am able to
reproduce this on my Mac. I'm looking into it.  I suspect something in
the macosx backend is getting passed a unicode string where it used to
get a byte string.

Mike

On 09/17/2013 10:14 PM, Damon McDougall wrote:

On Tue, Sep 17, 2013 at 8:55 PM, Damon McDougall
damon.mcdoug...@gmail.com  mailto:damon.mcdoug...@gmail.com  wrote:

On Tue, Sep 17, 2013 at 3:49 PM, Eric Firingefir...@hawaii.edu  
mailto:efir...@hawaii.edu  wrote:

When I build mpl from master on python.org python 2.7, Mountain Lion,
and try to plot anything with the macosx backend, I am now getting an
Apple crash--the plot window flashes up and vanishes, and a big OS X
crash report window pops up.  Ipython shows Trace/BPT trap: 5.  I have
never seen anything like this before.  Building from 1.3.0 works fine.

Is anyone else seeing this?

Master is also broken, at least on my machine, with other backends.  The
suggested fix ishttps://github.com/matplotlib/matplotlib/pull/2431.

Eric

Building from master produces a broken build of matplotlib for me.
After the build finishes, I get this warning from the linker:

ld: warning: ignoring file /opt/local/lib/libfreetype.dylib, file was
built for unsupported file format ( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0
0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 ) which is not the
architecture being linked (i386): /opt/local/lib/libfreetype.dylib

I don't know why it's compiling with -arch i386.  It's also compiling
with -arch x86_64.

When I install matplotlib, this is what happens from an ipython terminal:

In [1]: import matplotlib
In [2]: print matplotlib.__version__
1.4.x
In [3]: matplotlib.use('macosx')
In [4]: import matplotlib.pyplot as plt
In [5]: fig = plt.figure()
In [6]: ax = fig.add_subplot(1, 1, 1)
In [7]: ax.plot([1, 2, 3])
Out[7]: [matplotlib.lines.Line2D at 0x107523250]
In [8]: plt.show()
Trace/BPT trap: 5

git bisecting says that f4adec7b569cfd0b30e0f8367ba8618b9e160f92 is
the first bad commit, which you can see the diff of
herehttps://github.com/matplotlib/matplotlib/commit/f4adec7b569cfd0b30e0f8367ba8618b9e160f92
  
https://github.com/matplotlib/matplotlib/commit/f4adec7b569cfd0b30e0f8367ba8618b9e160f92.
   That's a pretty big commit so it'll take a while to track down.

I'm kind of swamped with work right now (a colleague I work with
recently resigned) so I don't have as much time as I'd like to
dedicate to helping out.

Eric, I hope that helps a little bit.

Best wishes,
Damon

--
Damon McDougall
http://www.damon-is-a-geek.com  http://www.damon-is-a-geek.com/
Institute for Computational Engineering Sciences
201 E. 24th St.
Stop C0200
The University of Texas at Austin
Austin, TX 78712-1229

Oh, and I get the linker warning both with last good commit, *and* the
first bad commit.  Just as another data point.




--
_
|\/|o _|_  _. _ | | \.__  __|__|_|_  _  _ ._ _
|  ||(_| |(_|(/_| |_/|(_)(/_|_ |_|_)(_)(_)| | |

http://www.droettboom.com  http://www.droettboom.com/

--
LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99!
1,500+ hours of tutorials including VisualStudio 2012, Windows 8, 
SharePoint
2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack 
includes

Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13.
http://pubads.g.doubleclick.net/gampad/clk?id=58041151iu=/4140/ostg.clktrk
___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net 
mailto:Matplotlib-devel@lists.sourceforge.net

https://lists.sourceforge.net/lists/listinfo/matplotlib-devel





--
   _
|\/|o _|_  _. _ | | \.__  __|__|_|_  _  _ ._ _
|  ||(_| |(_|(/_| |_/|(_)(/_|_ |_|_)(_)(_)| | |