Skip to content

Commit

Permalink
Merge remote-tracking branch 'main/master'
Browse files Browse the repository at this point in the history
Conflicts:
	CHANGELOG
	INSTALL
	doc/_templates/indexsidebar.html
	doc/mpl_toolkits/mplot3d/api.rst
	examples/api/sankey_demo_old.py
	examples/pylab_examples/stix_fonts_demo.py
	examples/user_interfaces/embedding_in_tk.py
	examples/user_interfaces/embedding_in_tk2.py
	lib/matplotlib/axes.py
	lib/matplotlib/backend_bases.py
	lib/matplotlib/backends/backend_gtk.py
	lib/matplotlib/backends/backend_qt4.py
	lib/matplotlib/backends/backend_svg.py
	lib/matplotlib/backends/qt4_editor/formlayout.py
	lib/matplotlib/lines.py
	lib/matplotlib/markers.py
	lib/matplotlib/mathtext.py
	lib/matplotlib/scale.py
	lib/matplotlib/sphinxext/ipython_directive.py
	lib/matplotlib/sphinxext/plot_directive.py
	lib/matplotlib/tests/baseline_images/test_axes/symlog.pdf
	lib/matplotlib/tests/baseline_images/test_axes/symlog.png
	lib/matplotlib/tests/baseline_images/test_axes/symlog.svg
	lib/matplotlib/tests/baseline_images/test_axes/symlog2.pdf
	lib/matplotlib/tests/baseline_images/test_axes/symlog2.png
	lib/matplotlib/tests/baseline_images/test_axes/symlog2.svg
	lib/matplotlib/tests/test_axes.py
	lib/matplotlib/tests/test_figure.py
	lib/matplotlib/tests/test_mlab.py
	lib/matplotlib/tests/test_text.py
	lib/matplotlib/textpath.py
	lib/matplotlib/ticker.py
	lib/mpl_toolkits/axisartist/angle_helper.py
	release/win32/data/setupwin.py
	release/win32/data/setupwinegg.py
	setupext.py
	src/_png.cpp
	src/_tkagg.cpp
  • Loading branch information
mdboom committed Oct 28, 2011
2 parents cedc5ad + 1aa1161 commit cafa53c
Show file tree
Hide file tree
Showing 208 changed files with 15,408 additions and 1,520 deletions.
7 changes: 7 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
John Hunter <jdh2358@gmail.com> jdh2358 <jdh2358@gmail.com>
Michael Droettboom <mdboom@gmail.com> Michael Droettboom <mdroe@stsci.edu>
Jouni K. Seppänen <jks@iki.fi> Jouni K. Seppänen <jks@iki.fi>
Ben Root <ben.v.root@gmail.com> Benjamin Root <ben.v.root@gmail.com>
Michiel de Hoon <mjldehoon@yahoo.com> Michiel de Hoon <mdehoon@michiel-de-hoons-computer.local>
Kevin Davies <kdavies4@gmail.com> Kevin Davies <daviesk24@yahoo.com>
Christoph Gohlke <cgohlke@uci.edu> cgohlke <cgohlke@uci.edu>
18 changes: 18 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
2011-10-25 added support for \operatorname to mathtext,
including the ability to insert spaces, such as
$\operatorname{arg\,max}$ - PI

2011-08-18 Change api of Axes.get_tightbbox and add an optional
keyword parameter *call_axes_locator*. - JJL

Expand Down Expand Up @@ -29,6 +33,14 @@
Significant revisions to the documentation as well.
- BVR

2011-07-07 Added compatibility with IPython strategy for picking
a version of Qt4 support, and an rcParam for making
the choice explicitly: backend.qt4. - EF

2011-07-07 Modified AutoMinorLocator to improve automatic choice of
the number of minor intervals per major interval, and
to allow one to specify this number via a kwarg. - EF

2011-06-28 3D versions of scatter, plot, plot_wireframe, plot_surface,
bar3d, and some other functions now support empty inputs. - BVR

Expand All @@ -39,10 +51,16 @@
2011-06-22 Add axes.labelweight parameter to set font weight to axis
labels - MGD.

2011-06-20 Add pause function to pyplot. - EF

2011-06-16 Added *bottom* keyword parameter for the stem command.
Also, implemented a legend handler for the stem plot.
- JJL

2011-06-16 Added legend.frameon rcParams. - Mike Kaufman

2011-05-31 Made backend_qt4 compatible with PySide . - Gerald Storer

2011-04-17 Disable keyboard auto-repeat in qt4 backend by ignoring
key events resulting from auto-repeat. This makes
constrained zoom/pan work. - EF
Expand Down
12 changes: 10 additions & 2 deletions CXX/Python2/ExtensionModule.hxx
Original file line number Diff line number Diff line change
Expand Up @@ -136,11 +136,19 @@ namespace Py
{
MethodDefExt<T> *method_def = (*i).second;

static PyObject *self = PyCObject_FromVoidPtr( this, do_not_dealloc );
#if PY_VERSION_HEX < 0x02070000
static PyObject *self = PyCObject_FromVoidPtr( this, do_not_dealloc );
#else
static PyObject *self = PyCapsule_New( this, NULL, NULL );
#endif

Tuple args( 2 );
args[0] = Object( self );
args[1] = Object( PyCObject_FromVoidPtr( method_def, do_not_dealloc ) );
#if PY_VERSION_HEX < 0x02070000
args[1] = Object( PyCObject_FromVoidPtr( method_def, do_not_dealloc ) );
#else
args[1] = Object( PyCapsule_New( method_def, NULL, NULL ) );
#endif

PyObject *func = PyCFunction_New
(
Expand Down
31 changes: 23 additions & 8 deletions CXX/Python2/ExtensionOldType.hxx
Original file line number Diff line number Diff line change
Expand Up @@ -178,8 +178,11 @@ namespace Py
Tuple self( 2 );

self[0] = Object( this );
self[1] = Object( PyCObject_FromVoidPtr( method_def, do_not_dealloc ), true );

#if PY_VERSION_HEX < 0x02070000
self[1] = Object( PyCObject_FromVoidPtr( method_def, do_not_dealloc ), true );
#else
self[1] = Object( PyCapsule_New( method_def, NULL, NULL ), true );
#endif
PyObject *func = PyCFunction_New( &method_def->ext_meth_def, self.ptr() );

return Object(func, true);
Expand Down Expand Up @@ -235,8 +238,12 @@ namespace Py

PyObject *self_in_cobject = self_and_name_tuple[0].ptr();
T *self = static_cast<T *>( self_in_cobject );
MethodDefExt<T> *meth_def = reinterpret_cast<MethodDefExt<T> *>(
PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ) );
#if PY_VERSION_HEX < 0x02070000
void *capsule = PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() );
#else
void *capsule = PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL );
#endif
MethodDefExt<T> *meth_def = reinterpret_cast<MethodDefExt<T> *>( capsule );
Object result;

// Adding try & catch in case of STL debug-mode exceptions.
Expand Down Expand Up @@ -271,8 +278,12 @@ namespace Py
PyObject *self_in_cobject = self_and_name_tuple[0].ptr();
T *self = static_cast<T *>( self_in_cobject );

MethodDefExt<T> *meth_def = reinterpret_cast<MethodDefExt<T> *>(
PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ) );
#if PY_VERSION_HEX < 0x02070000
void *capsule = PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() );
#else
void *capsule = PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL );
#endif
MethodDefExt<T> *meth_def = reinterpret_cast<MethodDefExt<T> *>( capsule );
Tuple args( _args );

Object result;
Expand Down Expand Up @@ -308,8 +319,12 @@ namespace Py
PyObject *self_in_cobject = self_and_name_tuple[0].ptr();
T *self = static_cast<T *>( self_in_cobject );

MethodDefExt<T> *meth_def = reinterpret_cast<MethodDefExt<T> *>(
PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ) );
#if PY_VERSION_HEX < 0x02070000
void *capsule = PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() );
#else
void *capsule = PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL );
#endif
MethodDefExt<T> *meth_def = reinterpret_cast<MethodDefExt<T> *>( capsule );

Tuple args( _args );

Expand Down
10 changes: 10 additions & 0 deletions CXX/Python2/IndirectPythonInterface.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,9 @@ namespace Py
bool _Buffer_Check( PyObject *op ) { return (op)->ob_type == _Buffer_Type(); }
bool _CFunction_Check( PyObject *op ) { return (op)->ob_type == _CFunction_Type(); }
bool _Class_Check( PyObject *op ) { return (op)->ob_type == _Class_Type(); }
#if PY_VERSION_HEX < 0x02070000
bool _CObject_Check( PyObject *op ) { return (op)->ob_type == _CObject_Type(); }
#endif
bool _Complex_Check( PyObject *op ) { return (op)->ob_type == _Complex_Type(); }
bool _Dict_Check( PyObject *op ) { return (op)->ob_type == _Dict_Type(); }
bool _File_Check( PyObject *op ) { return (op)->ob_type == _File_Type(); }
Expand Down Expand Up @@ -123,7 +125,9 @@ static PyObject *ptr__PyTrue = NULL;
static PyTypeObject *ptr__Buffer_Type = NULL;
static PyTypeObject *ptr__CFunction_Type = NULL;
static PyTypeObject *ptr__Class_Type = NULL;
#if PY_VERSION_HEX < 0x02070000
static PyTypeObject *ptr__CObject_Type = NULL;
#endif
static PyTypeObject *ptr__Complex_Type = NULL;
static PyTypeObject *ptr__Dict_Type = NULL;
static PyTypeObject *ptr__File_Type = NULL;
Expand Down Expand Up @@ -310,7 +314,9 @@ bool InitialisePythonIndirectInterface()
ptr__Buffer_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyBuffer_Type" );
ptr__CFunction_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyCFunction_Type" );
ptr__Class_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyClass_Type" );
#if PY_VERSION_HEX < 0x02070000
ptr__CObject_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyCObject_Type" );
#endif
ptr__Complex_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyComplex_Type" );
ptr__Dict_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyDict_Type" );
ptr__File_Type = GetPyTypeObject_As_PyTypeObjectPointer( "PyFile_Type" );
Expand Down Expand Up @@ -398,7 +404,9 @@ PyObject * _True() { return ptr__PyTrue; }
PyTypeObject * _Buffer_Type() { return ptr__Buffer_Type; }
PyTypeObject * _CFunction_Type(){ return ptr__CFunction_Type; }
PyTypeObject * _Class_Type() { return ptr__Class_Type; }
#if PY_VERSION_HEX < 0x02070000
PyTypeObject * _CObject_Type() { return ptr__CObject_Type; }
#endif
PyTypeObject * _Complex_Type() { return ptr__Complex_Type; }
PyTypeObject * _Dict_Type() { return ptr__Dict_Type; }
PyTypeObject * _File_Type() { return ptr__File_Type; }
Expand Down Expand Up @@ -542,7 +550,9 @@ PyObject * _True() { return Py_True; }
PyTypeObject * _Buffer_Type() { return &PyBuffer_Type; }
PyTypeObject * _CFunction_Type() { return &PyCFunction_Type; }
PyTypeObject * _Class_Type() { return &PyClass_Type; }
#if PY_VERSION_HEX < 0x02070000
PyTypeObject * _CObject_Type() { return &PyCObject_Type; }
#endif
PyTypeObject * _Complex_Type() { return &PyComplex_Type; }
PyTypeObject * _Dict_Type() { return &PyDict_Type; }
PyTypeObject * _File_Type() { return &PyFile_Type; }
Expand Down
2 changes: 2 additions & 0 deletions CXX/Python2/IndirectPythonInterface.hxx
Original file line number Diff line number Diff line change
Expand Up @@ -113,8 +113,10 @@ bool _Instance_Check( PyObject *op );
PyTypeObject * _Method_Type();
bool _Method_Check( PyObject *op );

#if PY_VERSION_HEX < 0x02070000
PyTypeObject * _CObject_Type();
bool _CObject_Check( PyObject *op );
#endif

PyTypeObject * _Complex_Type();
bool _Complex_Check( PyObject *op );
Expand Down
30 changes: 25 additions & 5 deletions CXX/Python2/cxx_extensions.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -1719,7 +1719,11 @@ extern "C" PyObject *method_keyword_call_handler( PyObject *_self_and_name_tuple
Tuple self_and_name_tuple( _self_and_name_tuple );

PyObject *self_in_cobject = self_and_name_tuple[0].ptr();
void *self_as_void = PyCObject_AsVoidPtr( self_in_cobject );
#if PY_VERSION_HEX < 0x02070000
void *self_as_void = PyCObject_AsVoidPtr( self_in_cobject );
#else
void *self_as_void = PyCapsule_GetPointer( self_in_cobject, NULL );
#endif
if( self_as_void == NULL )
return NULL;

Expand All @@ -1735,7 +1739,11 @@ extern "C" PyObject *method_keyword_call_handler( PyObject *_self_and_name_tuple
(
self->invoke_method_keyword
(
PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ),
#if PY_VERSION_HEX < 0x02070000
PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ),
#else
PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ),
#endif
args,
keywords
)
Expand All @@ -1751,7 +1759,11 @@ extern "C" PyObject *method_keyword_call_handler( PyObject *_self_and_name_tuple
(
self->invoke_method_keyword
(
PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ),
#if PY_VERSION_HEX < 0x02070000
PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ),
#else
PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ),
#endif
args,
keywords
)
Expand All @@ -1773,7 +1785,11 @@ extern "C" PyObject *method_varargs_call_handler( PyObject *_self_and_name_tuple
Tuple self_and_name_tuple( _self_and_name_tuple );

PyObject *self_in_cobject = self_and_name_tuple[0].ptr();
void *self_as_void = PyCObject_AsVoidPtr( self_in_cobject );
#if PY_VERSION_HEX < 0x02070000
void *self_as_void = PyCObject_AsVoidPtr( self_in_cobject );
#else
void *self_as_void = PyCapsule_GetPointer( self_in_cobject, NULL );
#endif
if( self_as_void == NULL )
return NULL;

Expand All @@ -1784,7 +1800,11 @@ extern "C" PyObject *method_varargs_call_handler( PyObject *_self_and_name_tuple
(
self->invoke_method_varargs
(
PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ),
#if PY_VERSION_HEX < 0x02070000
PyCObject_AsVoidPtr( self_and_name_tuple[1].ptr() ),
#else
PyCapsule_GetPointer( self_and_name_tuple[1].ptr(), NULL ),
#endif
args
)
);
Expand Down
Loading

0 comments on commit cafa53c

Please sign in to comment.