Download raw body.
[update] matplotlib 3.8.3 -> 3.9.4
Now that we have numpy2, here's an update of matplotlib to the 3.9.x
series.
As per the dev change notes:
- the build system changed to meson
- mplsetup.cfg was moved into meson_options.txt
- the test data flag was moved into pyproject.toml
The matplotlib system states an upper bound of meson-python of 16.x,
however since what we have in-tree is newer and seems to work, I've
loosened it to allow 18.x.
Index: Makefile
===================================================================
RCS file: /cvs/ports/graphics/py-matplotlib/Makefile,v
diff -u -p -u -r1.102 Makefile
--- Makefile 15 May 2025 21:38:54 -0000 1.102
+++ Makefile 18 May 2025 20:14:11 -0000
@@ -1,9 +1,8 @@
COMMENT = Python charting and plotting API
-MODPY_DISTV = 3.8.3
+MODPY_DISTV = 3.9.4
DISTNAME = matplotlib-${MODPY_DISTV}
PKGNAME = py-${DISTNAME}
-REVISION = 3
CATEGORIES = graphics devel math
@@ -21,13 +20,14 @@ COMPILER = base-clang ports-gcc base-gc
MODULES = lang/python
MODPY_PI = Yes
-MODPY_PYBUILD = setuptools_scm
+MODPY_PYBUILD = mesonpy
MODPY_TEST_LINK_SO = Yes
MODPY_TEST_LINK_SRC = ${WRKSRC}/lib
BUILD_DEPENDS = devel/py-certifi>=2020.06.20 \
devel/py-pybind11>=2.6 \
+ devel/py-setuptools_scm \
math/qhull \
math/py-numpy>=1.25 \
textproc/py-sphinx
@@ -56,12 +56,8 @@ MAKE_ENV+= LDSHARED="${CC} -shared -fPIC
EXAMPLESDIR= ${PREFIX}/share/examples/${MODPY_PY_PREFIX}matplotlib
-post-patch:
- cp ${WRKSRC}/mplsetup.cfg{.template,}
-
pre-configure:
find ${WRKSRC}/galleries/examples -name \*.py -exec ${MODPY_BIN_ADJ} {} +
- ${SUBST_CMD} ${WRKSRC}/setupext.py
post-install:
${INSTALL_DATA_DIR} ${EXAMPLESDIR}
Index: distinfo
===================================================================
RCS file: /cvs/ports/graphics/py-matplotlib/distinfo,v
diff -u -p -u -r1.23 distinfo
--- distinfo 23 Feb 2024 02:36:51 -0000 1.23
+++ distinfo 18 May 2025 20:14:11 -0000
@@ -1,2 +1,2 @@
-SHA256 (matplotlib-3.8.3.tar.gz) = e0FiOemuOL5UsCirv5BIr/UFSpq6VBa+8L0X+RYs4WE=
-SIZE (matplotlib-3.8.3.tar.gz) = 35879872
+SHA256 (matplotlib-3.9.4.tar.gz) = HgDovnOTy9xv7fqKb7oCzz6DgUsoXbHGC5BqAjukG8M=
+SIZE (matplotlib-3.9.4.tar.gz) = 36106529
Index: patches/patch-meson_options
===================================================================
RCS file: patches/patch-meson_options
diff -N patches/patch-meson_options
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-meson_options 18 May 2025 20:14:11 -0000
@@ -0,0 +1,15 @@
+Index: meson.options
+--- meson.options.orig
++++ meson.options
+@@ -5,9 +5,9 @@
+ # Qhull. You may use the following options to instead link against a system
+ # FreeType/Qhull. As an exception, Matplotlib defaults to the system version of
+ # FreeType on AIX.
+-option('system-freetype', type: 'boolean', value: false,
++option('system-freetype', type: 'boolean', value: true,
+ description: 'Build against system version of FreeType')
+-option('system-qhull', type: 'boolean', value: false,
++option('system-qhull', type: 'boolean', value: true,
+ description: 'Build against system version of Qhull')
+
+ # Some of Matplotlib's components are optional: the MacOSX backend (installed
Index: patches/patch-mplsetup_cfg_template
===================================================================
RCS file: patches/patch-mplsetup_cfg_template
diff -N patches/patch-mplsetup_cfg_template
--- patches/patch-mplsetup_cfg_template 16 Jan 2023 17:09:43 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,23 +0,0 @@
-Index: mplsetup.cfg.template
---- mplsetup.cfg.template.orig
-+++ mplsetup.cfg.template
-@@ -11,8 +11,8 @@
- # FreeType/Qhull. As an exception, Matplotlib defaults to the system version
- # of FreeType on AIX.
- #
--#system_freetype = False
--#system_qhull = False
-+system_freetype = True
-+system_qhull = True
-
- [packages]
- # Some of Matplotlib's components are optional: the MacOSX backend (installed
-@@ -22,7 +22,7 @@
- # lines. Note that the MacOSX backend is never built on Linux or Windows,
- # regardless of the config value.
- #
--#tests = False
-+tests = True
- #macosx = True
-
- [rc_options]
Index: patches/patch-pyproject_toml
===================================================================
RCS file: patches/patch-pyproject_toml
diff -N patches/patch-pyproject_toml
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-pyproject_toml 18 May 2025 20:14:11 -0000
@@ -0,0 +1,21 @@
+Index: pyproject.toml
+--- pyproject.toml.orig
++++ pyproject.toml
+@@ -73,7 +73,7 @@ dev = [
+ build-backend = "mesonpy"
+ # Also keep in sync with optional dependencies above.
+ requires = [
+- "meson-python>=0.13.1,<0.17.0",
++ "meson-python>=0.13.1,<0.19.0",
+ "pybind11>=2.6,!=2.13.3",
+ "setuptools_scm>=7",
+
+@@ -91,7 +91,7 @@ requires = [
+ ]
+
+ [tool.meson-python.args]
+-install = ['--tags=data,python-runtime,runtime']
++install = ['--tags=data,python-runtime,runtime,tests']
+
+ [tool.setuptools_scm]
+ version_scheme = "release-branch-semver"
Index: patches/patch-setupext_py
===================================================================
RCS file: patches/patch-setupext_py
diff -N patches/patch-setupext_py
--- patches/patch-setupext_py 22 Jan 2024 23:13:46 -0000 1.25
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,19 +0,0 @@
-Index: setupext.py
---- setupext.py.orig
-+++ setupext.py
-@@ -445,6 +445,7 @@ class Matplotlib(SetupPackage):
- ext = Extension(
- "matplotlib._qhull", ["src/_qhull_wrapper.cpp"],
- define_macros=[("MPL_DEVNULL", os.devnull)])
-+ ext.include_dirs.extend(['${PREFIX}/include'])
- add_numpy_flags(ext)
- Qhull.add_flags(ext)
- yield ext
-@@ -458,6 +459,7 @@ class Matplotlib(SetupPackage):
- libraries={"linux": ["dl"], "win32": ["comctl32", "psapi"],
- "cygwin": ["comctl32", "psapi"]}.get(sys.platform, []),
- extra_link_args={"win32": ["-mwindows"]}.get(sys.platform, []))
-+ ext.include_dirs.extend(['${X11BASE}/include'])
- add_numpy_flags(ext)
- add_libagg_flags(ext)
- yield ext
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/graphics/py-matplotlib/pkg/PLIST,v
diff -u -p -u -r1.29 PLIST
--- pkg/PLIST 29 Apr 2025 10:38:37 -0000 1.29
+++ pkg/PLIST 18 May 2025 20:14:13 -0000
@@ -4,24 +4,10 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/${MODPY_PYCACHE}pylab.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/
lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/
+lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/LICENSE
lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/METADATA
lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/RECORD
lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/WHEEL
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_AMSFONTS
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_BAKOMA
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_CARLOGO
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_COLORBREWER
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_COURIERTEN
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_JSXTOOLS_RESIZE_OBSERVER
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_QHULL
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_QT4_EDITOR
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_SOLARIZED
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_STIX
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/licenses/LICENSE/LICENSE_YORICK
-lib/python${MODPY_VERSION}/site-packages/matplotlib-${MODPY_DISTV}.dist-info/top_level.txt
lib/python${MODPY_VERSION}/site-packages/matplotlib/__init__.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/__init__.pyi
${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/matplotlib/${MODPY_PYCACHE}/
@@ -316,6 +302,8 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/${MODPY_PYCACHE}backend_wxcairo.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/${MODPY_PYCACHE}qt_compat.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/${MODPY_PYCACHE}qt_compat.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/${MODPY_PYCACHE}registry.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/${MODPY_PYCACHE}registry.${MODPY_PYC_MAGIC_TAG}pyc
@so lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/_backend_agg.${MODPY_PYC_MAGIC_TAG}so
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/_backend_agg.pyi
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/_backend_gtk.py
@@ -365,10 +353,8 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/qt_editor/${MODPY_PYCACHE}figureoptions.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/qt_editor/_formlayout.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/qt_editor/figureoptions.py
+lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/registry.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/
-lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/.eslintrc.js
-lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/.prettierignore
-lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/.prettierrc
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/all_figures.html
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/css/
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/css/boilerplate.css
@@ -381,7 +367,6 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/js/mpl_tornado.js
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/js/nbagg_mpl.js
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/nbagg_uat.ipynb
-lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/package.json
lib/python${MODPY_VERSION}/site-packages/matplotlib/backends/web_backend/single_figure.html
lib/python${MODPY_VERSION}/site-packages/matplotlib/bezier.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/bezier.pyi
@@ -681,9 +666,12 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/sphinxext/${MODPY_PYCACHE}mathmpl.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/sphinxext/${MODPY_PYCACHE}plot_directive.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/matplotlib/sphinxext/${MODPY_PYCACHE}plot_directive.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/matplotlib/sphinxext/${MODPY_PYCACHE}roles.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/matplotlib/sphinxext/${MODPY_PYCACHE}roles.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/sphinxext/figmpl_directive.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/sphinxext/mathmpl.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/sphinxext/plot_directive.py
+lib/python${MODPY_VERSION}/site-packages/matplotlib/sphinxext/roles.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/spines.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/spines.pyi
lib/python${MODPY_VERSION}/site-packages/matplotlib/stackplot.py
@@ -757,6 +745,7 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/testing/widgets.pyi
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/Courier10PitchBT-Bold.pfb
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/README
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/__init__.py
${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}/
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -815,8 +804,6 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_basic.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_bbox_tight.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_bbox_tight.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_bezier.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_bezier.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_category.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_category.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_cbook.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -839,6 +826,8 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_cycles.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_dates.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_dates.${MODPY_PYC_MAGIC_TAG}pyc
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_datetime.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_datetime.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_determinism.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_determinism.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/${MODPY_PYCACHE}test_doc.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
@@ -1000,6 +989,7 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/axhspan_epoch.pdf
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/axhspan_epoch.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/axhspan_epoch.svg
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/axhvlinespan_interpolation.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/axis_options.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/axisbelow.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/axvspan_epoch.pdf
@@ -1268,6 +1258,8 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/step_linestyle.pdf
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/step_linestyle.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/step_linestyle.svg
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/sticky_tolerance.png
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/sticky_tolerance_cf.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/symlog.pdf
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/symlog2.pdf
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/test_alpha.pdf
@@ -1296,6 +1288,7 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/violinplot_horiz_showextrema.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/violinplot_horiz_showmeans.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/violinplot_horiz_showmedians.png
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/violinplot_sides.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/violinplot_vert_baseline.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/violinplot_vert_custompoints_10.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_axes/violinplot_vert_custompoints_200.png
@@ -1487,6 +1480,7 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_contour/contour_manual_labels.svg
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_contour/contour_test_label_transforms.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_contour/contour_uneven.png
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_contour/contourf_hatch_colors.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_dates/
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_dates/DateFormatter_fractionalSeconds.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_dates/RRuleLocator_bounds.png
@@ -1500,6 +1494,8 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_figure/alpha_background.svg
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_figure/figure_align_labels.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_figure/figure_align_labels.svg
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_figure/figure_align_titles_constrained.png
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_figure/figure_align_titles_tight.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_figure/figure_legend.pdf
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_figure/figure_legend.png
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/baseline_images/test_figure/figure_legend.svg
@@ -3373,7 +3369,6 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_backends_interactive.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_basic.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_bbox_tight.py
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_bezier.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_category.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_cbook.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_collections.py
@@ -3385,6 +3380,7 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_contour.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_cycles.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_dates.py
+lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_datetime.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_determinism.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_doc.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tests/test_dviread.py
@@ -3490,22 +3486,6 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}_trirefine.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}_tritools.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}_tritools.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}triangulation.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}triangulation.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}tricontour.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}tricontour.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}trifinder.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}trifinder.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}triinterpolate.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}triinterpolate.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}tripcolor.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}tripcolor.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}triplot.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}triplot.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}trirefine.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}trirefine.${MODPY_PYC_MAGIC_TAG}pyc
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}tritools.${MODPY_PYC_MAGIC_TAG}${MODPY_PYOEXTENSION}
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/${MODPY_PYCACHE}tritools.${MODPY_PYC_MAGIC_TAG}pyc
lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/_triangulation.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/_triangulation.pyi
lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/_tricontour.py
@@ -3522,14 +3502,6 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/_trirefine.pyi
lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/_tritools.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/_tritools.pyi
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/triangulation.py
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/tricontour.py
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/trifinder.py
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/triinterpolate.py
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/tripcolor.py
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/triplot.py
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/trirefine.py
-lib/python${MODPY_VERSION}/site-packages/matplotlib/tri/tritools.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/typing.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/units.py
lib/python${MODPY_VERSION}/site-packages/matplotlib/widgets.py
@@ -3746,6 +3718,7 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/proj3d_axes_cube.png
lib/python${MODPY_VERSION}/site-packages/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/proj3d_axes_cube_ortho.png
lib/python${MODPY_VERSION}/site-packages/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/quiver3d.png
+lib/python${MODPY_VERSION}/site-packages/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/quiver3d_colorcoded.png
lib/python${MODPY_VERSION}/site-packages/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/quiver3d_masked.png
lib/python${MODPY_VERSION}/site-packages/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scatter3d.png
lib/python${MODPY_VERSION}/site-packages/mpl_toolkits/mplot3d/tests/baseline_images/test_axes3d/scatter3d_color.png
@@ -3807,7 +3780,6 @@ share/examples/${MODPY_PY_PREFIX}matplot
share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/demo_axes_grid2.py
share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/demo_axes_hbox_divider.py
share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/demo_axes_rgb.py
-share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/demo_colorbar_of_inset_axes.py
share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/demo_colorbar_with_axes_divider.py
share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/demo_colorbar_with_inset_locator.py
share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/demo_edge_colorbar.py
@@ -3825,7 +3797,6 @@ share/examples/${MODPY_PY_PREFIX}matplot
share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/simple_axesgrid.py
share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/simple_axesgrid2.py
share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/simple_axisline4.py
-share/examples/${MODPY_PY_PREFIX}matplotlib/axes_grid1/simple_colorbar.py
share/examples/${MODPY_PY_PREFIX}matplotlib/axisartist/
share/examples/${MODPY_PY_PREFIX}matplotlib/axisartist/README.txt
share/examples/${MODPY_PY_PREFIX}matplotlib/axisartist/axis_direction.py
@@ -4025,6 +3996,8 @@ share/examples/${MODPY_PY_PREFIX}matplot
share/examples/${MODPY_PY_PREFIX}matplotlib/mplot3d/custom_shaded_3d_surface.py
share/examples/${MODPY_PY_PREFIX}matplotlib/mplot3d/errorbar3d.py
share/examples/${MODPY_PY_PREFIX}matplotlib/mplot3d/hist3d.py
+share/examples/${MODPY_PY_PREFIX}matplotlib/mplot3d/imshow3d.py
+share/examples/${MODPY_PY_PREFIX}matplotlib/mplot3d/intersecting_planes.py
share/examples/${MODPY_PY_PREFIX}matplotlib/mplot3d/lines3d.py
share/examples/${MODPY_PY_PREFIX}matplotlib/mplot3d/lorenz_attractor.py
share/examples/${MODPY_PY_PREFIX}matplotlib/mplot3d/mixed_subplots.py
@@ -4110,6 +4083,7 @@ share/examples/${MODPY_PY_PREFIX}matplot
share/examples/${MODPY_PY_PREFIX}matplotlib/showcase/firefox.py
share/examples/${MODPY_PY_PREFIX}matplotlib/showcase/integral.py
share/examples/${MODPY_PY_PREFIX}matplotlib/showcase/mandelbrot.py
+share/examples/${MODPY_PY_PREFIX}matplotlib/showcase/pan_zoom_overlap.py
share/examples/${MODPY_PY_PREFIX}matplotlib/showcase/stock_prices.py
share/examples/${MODPY_PY_PREFIX}matplotlib/showcase/xkcd.py
share/examples/${MODPY_PY_PREFIX}matplotlib/specialty_plots/
@@ -4149,10 +4123,11 @@ share/examples/${MODPY_PY_PREFIX}matplot
share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/errorbars_and_boxes.py
share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/hexbin_demo.py
share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/hist.py
+share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/histogram_bihistogram.py
share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/histogram_cumulative.py
-share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/histogram_features.py
share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/histogram_histtypes.py
share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/histogram_multihist.py
+share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/histogram_normalization.py
share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/multiple_histograms_side_by_side.py
share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/time_series_histogram.py
share/examples/${MODPY_PY_PREFIX}matplotlib/statistics/violinplot.py
[update] matplotlib 3.8.3 -> 3.9.4