commit:     a2c8342145573a55c5672eba8300acebe795766a
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Feb 20 06:50:23 2024 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Feb 20 06:58:18 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a2c83421

dev-python/matplotlib: Remove old

Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-python/matplotlib/Manifest                     |   5 -
 .../matplotlib/files/matplotlib-3.7.1-test.patch   | 244 ---------------
 .../files/matplotlib-3.7.2-macOS_no-Cocoa.patch    |  21 --
 .../files/matplotlib-3.7.2-pyparsing-3.1.patch     | 274 -----------------
 dev-python/matplotlib/matplotlib-3.7.1.ebuild      | 331 --------------------
 dev-python/matplotlib/matplotlib-3.7.2-r1.ebuild   | 334 --------------------
 dev-python/matplotlib/matplotlib-3.7.2.ebuild      | 336 ---------------------
 dev-python/matplotlib/matplotlib-3.7.3.ebuild      | 328 --------------------
 dev-python/matplotlib/matplotlib-3.8.0.ebuild      | 332 --------------------
 dev-python/matplotlib/matplotlib-3.8.1.ebuild      | 332 --------------------
 10 files changed, 2537 deletions(-)

diff --git a/dev-python/matplotlib/Manifest b/dev-python/matplotlib/Manifest
index e8b8bd5d91cf..9731b9c78a3b 100644
--- a/dev-python/matplotlib/Manifest
+++ b/dev-python/matplotlib/Manifest
@@ -1,8 +1,3 @@
 DIST freetype-2.6.1.tar.gz 2302080 BLAKE2B 
6a5fb98e5fa6cf4b7d7533ad44e364227d8c2f7dded4c552d6e22e204c32b7858f20d41d1e809ecdad6e5353d6cec81bea0e0b06a4533363a41ecab83ce3f7ca
 SHA512 
ff2daed64d712737085924c50e75862fafbcbb24eef6d72dac9eaae63bb656d7245397fd828f5d3e47ac847f7ff83d73dedfdd61fde1f7d6e0f0cdeb49bcf83b
-DIST matplotlib-3.7.1.tar.gz 38003777 BLAKE2B 
a387d23b58e09011cd3ae1f8c0ebf5dd8c04c8c15c1f6453c92cd22b2439fcabcf384f39ae8d2d2c6b7d2645817cd57a60856a4c05728e8f8aff9dd163af5083
 SHA512 
d7db4213d5b38eba779ba06ffaa8e67a435192e4a8cf62f8e1cd4b8079cd257b2e83cb79926df012b7084c785c0ce8b03275035f68cfcf0a36b0dda7322f2e67
-DIST matplotlib-3.7.2.tar.gz 38095843 BLAKE2B 
e26e78ce3a27604ff3d0f4d280798715b21a89104908e4fa66f96e32152d61f4f640e02e1eb2327563c71f3391c03716b5f6a1e769a07725d02c042b21973a4a
 SHA512 
3ddb223c869c01cf71ab65a628a3c996eed1ff8b2375c02e3158a5750652a5d8277a55706e50890c15c14c7a104db01f01b01ca8964f85b6ffec104fc273872d
-DIST matplotlib-3.7.3.tar.gz 38097222 BLAKE2B 
e0207c8f8bda2db3f9e45d2f606f01374c8d829d747f29d6a5e46cbfc215960b1bf3f5ee471c2c73f4200ebb0a7c9e8b783cb8569ecbb26a3fbc0d802592db0e
 SHA512 
034b81ef4811089e845855eb339155b18b1221ffd325ea73c83e83bb433374dfa4e650e29bbae5ad63a84090eb4b013d0f106ff37c30fd661b4d071004745caa
-DIST matplotlib-3.8.0.tar.gz 35864435 BLAKE2B 
d0eb2893447782f54ca9c8101ca54fa9d86a9f2ef89fb0a17d32c74f3e46728b55c6bed476852d0c11286dc0030028c241adce29024b34845546af6f579ac7bf
 SHA512 
0f75495210946adf0a36af13a75bc9910d345cc05636019952f35856b4c2bfac8a79c48d5a3348e844cfdac797f3ce490fe6a4e1a4fc7033092fee61f9913e21
-DIST matplotlib-3.8.1.tar.gz 35868840 BLAKE2B 
beec824c46279cb92608ffca0dc1835c1d82ef32d68b547c9a5088404a0b37044c1860c59ac16c0c1b65658c7d64b7b4c83b65b38ffb0b320d4c5a3cc4383fb9
 SHA512 
bb933361caba0f4ea590df56569edf4cb728f1daa1219f8793b5ae6ba591cb5d1600fdd1693b7c72a8bb70b0da696b05f1b6ddcabe93d723f29d8541fbf0372c
 DIST matplotlib-3.8.2.tar.gz 35866957 BLAKE2B 
17b3de0101c4e9d76cddc7fa5e44507f1dd628fa70ac0d3c55fb83ca5d36156904bfab50212aaeb0fb89d17615799fe22082ecc1ababd172e39a069b38519064
 SHA512 
4336ca9799bb03fc2f885e35889ad1c62412f7d7b6aa8e284049f75d1166d2f6753c27cf827f0e7f0bb461d3707ccf63a3172ed82f26ec413c0a6578791f957b
 DIST matplotlib-3.8.3.tar.gz 35879872 BLAKE2B 
2b4b819975a8386bfe2c3af8b1068512b106068c057ca62344f6636c0708327feafc75210a8b87b837779c9a57dede3b4ea2a8b7b673432d7732851d5601f4c6
 SHA512 
457d1d62b76752938a24780c697461949de00d779df55df122d789f9ebef154edda037f2a804241880a0b442c5fa8139b8ab13054898b8e08fd17a56bdc23312

diff --git a/dev-python/matplotlib/files/matplotlib-3.7.1-test.patch 
b/dev-python/matplotlib/files/matplotlib-3.7.1-test.patch
deleted file mode 100644
index e2471a4282c2..000000000000
--- a/dev-python/matplotlib/files/matplotlib-3.7.1-test.patch
+++ /dev/null
@@ -1,244 +0,0 @@
-From 2290694d52ef1af255b9f0fa0d9c3c9ebcee9264 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <[email protected]>
-Date: Tue, 14 Feb 2023 20:46:30 +0100
-Subject: [PATCH] Adjust tolerances to make tests pass on real hardware
-
----
- lib/matplotlib/tests/test_arrow_patches.py     | 6 +++---
- lib/matplotlib/tests/test_axes.py              | 6 +++---
- lib/matplotlib/tests/test_colorbar.py          | 2 +-
- lib/matplotlib/tests/test_constrainedlayout.py | 8 ++++----
- lib/matplotlib/tests/test_contour.py           | 3 +--
- lib/matplotlib/tests/test_figure.py            | 2 +-
- lib/matplotlib/tests/test_image.py             | 2 +-
- lib/matplotlib/tests/test_legend.py            | 6 +++---
- lib/matplotlib/tests/test_lines.py             | 2 +-
- lib/matplotlib/tests/test_units.py             | 4 ++--
- lib/matplotlib/tests/test_usetex.py            | 3 ++-
- 11 files changed, 22 insertions(+), 22 deletions(-)
-
-diff --git a/lib/matplotlib/tests/test_arrow_patches.py 
b/lib/matplotlib/tests/test_arrow_patches.py
-index 8d573b4adb..dfc42efcb9 100644
---- a/lib/matplotlib/tests/test_arrow_patches.py
-+++ b/lib/matplotlib/tests/test_arrow_patches.py
-@@ -67,7 +67,7 @@ def __prepare_fancyarrow_dpi_cor_test():
- 
- 
- @image_comparison(['fancyarrow_dpi_cor_100dpi.png'], remove_text=True,
--                  tol=0 if platform.machine() == 'x86_64' else 0.02,
-+                  tol=0.015 if platform.machine() == 'x86_64' else 0.02,
-                   savefig_kwarg=dict(dpi=100))
- def test_fancyarrow_dpi_cor_100dpi():
-     """
-@@ -82,7 +82,7 @@ def test_fancyarrow_dpi_cor_100dpi():
- 
- 
- @image_comparison(['fancyarrow_dpi_cor_200dpi.png'], remove_text=True,
--                  tol=0 if platform.machine() == 'x86_64' else 0.02,
-+                  tol=0.018 if platform.machine() == 'x86_64' else 0.02,
-                   savefig_kwarg=dict(dpi=200))
- def test_fancyarrow_dpi_cor_200dpi():
-     """
-@@ -115,7 +115,7 @@ def test_fancyarrow_dash():
- 
- 
- @image_comparison(['arrow_styles.png'], style='mpl20', remove_text=True,
--                  tol=0 if platform.machine() == 'x86_64' else 0.005)
-+                  tol=0.005)
- def test_arrow_styles():
-     styles = mpatches.ArrowStyle.get_styles()
- 
-diff --git a/lib/matplotlib/tests/test_axes.py 
b/lib/matplotlib/tests/test_axes.py
-index 004f6320de..63d705cb91 100644
---- a/lib/matplotlib/tests/test_axes.py
-+++ b/lib/matplotlib/tests/test_axes.py
-@@ -1034,7 +1034,7 @@ def test_imshow():
- 
- @image_comparison(
-     ['imshow_clip'], style='mpl20',
--    tol=1.24 if platform.machine() in ('aarch64', 'ppc64le', 's390x') else 0)
-+    tol=1.24)
- def test_imshow_clip():
-     # As originally reported by Gellule Xg <[email protected]>
-     # use former defaults to match existing baseline image
-@@ -2364,7 +2364,7 @@ def test_contour_hatching():
- 
- @image_comparison(
-     ['contour_colorbar'], style='mpl20',
--    tol=0.02 if platform.machine() in ('aarch64', 'ppc64le', 's390x') else 0)
-+    tol=0.02)
- def test_contour_colorbar():
-     x, y, z = contour_dat()
- 
-@@ -4704,7 +4704,7 @@ def test_vertex_markers():
- 
- 
- @image_comparison(['vline_hline_zorder', 'errorbar_zorder'],
--                  tol=0 if platform.machine() == 'x86_64' else 0.02)
-+                  tol=0.015 if platform.machine() == 'x86_64' else 0.02)
- def test_eb_line_zorder():
-     x = list(range(10))
- 
-diff --git a/lib/matplotlib/tests/test_colorbar.py 
b/lib/matplotlib/tests/test_colorbar.py
-index e39d007378..fa0cb2e72f 100644
---- a/lib/matplotlib/tests/test_colorbar.py
-+++ b/lib/matplotlib/tests/test_colorbar.py
-@@ -237,7 +237,7 @@ def test_colorbar_single_ax_panchor_east(constrained):
- 
- @image_comparison(
-     ['contour_colorbar.png'], remove_text=True,
--    tol=0.01 if platform.machine() in ('aarch64', 'ppc64le', 's390x') else 0)
-+    tol=0.01)
- def test_contour_colorbar():
-     fig, ax = plt.subplots(figsize=(4, 2))
-     data = np.arange(1200).reshape(30, 40) - 500
-diff --git a/lib/matplotlib/tests/test_constrainedlayout.py 
b/lib/matplotlib/tests/test_constrainedlayout.py
-index b0833052ad..c7633f6842 100644
---- a/lib/matplotlib/tests/test_constrainedlayout.py
-+++ b/lib/matplotlib/tests/test_constrainedlayout.py
-@@ -651,11 +651,11 @@ def test_compressed1():
-     fig.draw_without_rendering()
- 
-     pos = axs[0, 0].get_position()
--    np.testing.assert_allclose(pos.x0, 0.06195, atol=1e-3)
--    np.testing.assert_allclose(pos.y1, 0.8537, atol=1e-3)
-+    np.testing.assert_allclose(pos.x0, 0.06195, atol=2e-3)
-+    np.testing.assert_allclose(pos.y1, 0.8537, atol=2e-3)
-     pos = axs[1, 2].get_position()
--    np.testing.assert_allclose(pos.x1, 0.8618, atol=1e-3)
--    np.testing.assert_allclose(pos.y0, 0.1934, atol=1e-3)
-+    np.testing.assert_allclose(pos.x1, 0.8618, atol=2e-3)
-+    np.testing.assert_allclose(pos.y0, 0.1934, atol=2e-3)
- 
- 
- @pytest.mark.parametrize('arg, state', [
-diff --git a/lib/matplotlib/tests/test_contour.py 
b/lib/matplotlib/tests/test_contour.py
-index 41d4dc8501..e0f9f5c112 100644
---- a/lib/matplotlib/tests/test_contour.py
-+++ b/lib/matplotlib/tests/test_contour.py
-@@ -316,8 +316,7 @@ def test_contourf_log_extension():
- 
- @image_comparison(
-     ['contour_addlines.png'], remove_text=True, style='mpl20',
--    tol=0.15 if platform.machine() in ('aarch64', 'ppc64le', 's390x')
--        else 0.03)
-+    tol=0.15)
- # tolerance is because image changed minutely when tick finding on
- # colorbars was cleaned up...
- def test_contour_addlines():
-diff --git a/lib/matplotlib/tests/test_figure.py 
b/lib/matplotlib/tests/test_figure.py
-index f3ece07660..18c95e4a55 100644
---- a/lib/matplotlib/tests/test_figure.py
-+++ b/lib/matplotlib/tests/test_figure.py
-@@ -26,7 +26,7 @@ import matplotlib.dates as mdates
- 
- 
- @image_comparison(['figure_align_labels'], extensions=['png', 'svg'],
--                  tol=0 if platform.machine() == 'x86_64' else 0.01)
-+                  tol=0.02)
- def test_align_labels():
-     fig = plt.figure(layout='tight')
-     gs = gridspec.GridSpec(3, 3)
-diff --git a/lib/matplotlib/tests/test_image.py 
b/lib/matplotlib/tests/test_image.py
-index 76a622181d..af81d2fc0d 100644
---- a/lib/matplotlib/tests/test_image.py
-+++ b/lib/matplotlib/tests/test_image.py
-@@ -1339,7 +1339,7 @@ def test_nonuniform_and_pcolor():
- 
- @image_comparison(
-     ['rgba_antialias.png'], style='mpl20', remove_text=True,
--    tol=0.007 if platform.machine() in ('aarch64', 'ppc64le', 's390x') else 0)
-+    tol=0.007)
- def test_rgba_antialias():
-     fig, axs = plt.subplots(2, 2, figsize=(3.5, 3.5), sharex=False,
-                             sharey=False, constrained_layout=True)
-diff --git a/lib/matplotlib/tests/test_legend.py 
b/lib/matplotlib/tests/test_legend.py
-index a8d7fd107d..2f658bc116 100644
---- a/lib/matplotlib/tests/test_legend.py
-+++ b/lib/matplotlib/tests/test_legend.py
-@@ -174,7 +174,7 @@ def test_multiple_keys():
- 
- 
- @image_comparison(['rgba_alpha.png'], remove_text=True,
--                  tol=0 if platform.machine() == 'x86_64' else 0.01)
-+                  tol=0.02)
- def test_alpha_rgba():
-     fig, ax = plt.subplots()
-     ax.plot(range(10), lw=5)
-@@ -183,7 +183,7 @@ def test_alpha_rgba():
- 
- 
- @image_comparison(['rcparam_alpha.png'], remove_text=True,
--                  tol=0 if platform.machine() == 'x86_64' else 0.01)
-+                  tol=0.02)
- def test_alpha_rcparam():
-     fig, ax = plt.subplots()
-     ax.plot(range(10), lw=5)
-@@ -209,7 +209,7 @@ def test_fancy():
- 
- 
- @image_comparison(['framealpha'], remove_text=True,
--                  tol=0 if platform.machine() == 'x86_64' else 0.02)
-+                  tol=0.02)
- def test_framealpha():
-     x = np.linspace(1, 100, 100)
-     y = x
-diff --git a/lib/matplotlib/tests/test_lines.py 
b/lib/matplotlib/tests/test_lines.py
-index b75d3c01b2..d08cc79172 100644
---- a/lib/matplotlib/tests/test_lines.py
-+++ b/lib/matplotlib/tests/test_lines.py
-@@ -185,7 +185,7 @@ def test_set_drawstyle():
- 
- @image_comparison(
-     ['line_collection_dashes'], remove_text=True, style='mpl20',
--    tol=0.65 if platform.machine() in ('aarch64', 'ppc64le', 's390x') else 0)
-+    tol=0.65)
- def test_set_line_coll_dash_image():
-     fig, ax = plt.subplots()
-     np.random.seed(0)
-diff --git a/lib/matplotlib/tests/test_units.py 
b/lib/matplotlib/tests/test_units.py
-index d3b8c5a716..56a1d0a0a4 100644
---- a/lib/matplotlib/tests/test_units.py
-+++ b/lib/matplotlib/tests/test_units.py
-@@ -79,7 +79,7 @@ def quantity_converter():
- # Tests that the conversion machinery works properly for classes that
- # work as a facade over numpy arrays (like pint)
- @image_comparison(['plot_pint.png'], style='mpl20',
--                  tol=0 if platform.machine() == 'x86_64' else 0.01)
-+                  tol=0.002 if platform.machine() == 'x86_64' else 0.01)
- def test_numpy_facade(quantity_converter):
-     # use former defaults to match existing baseline image
-     plt.rcParams['axes.formatter.limits'] = -7, 7
-@@ -106,7 +106,7 @@ def test_numpy_facade(quantity_converter):
- 
- # Tests gh-8908
- @image_comparison(['plot_masked_units.png'], remove_text=True, style='mpl20',
--                  tol=0 if platform.machine() == 'x86_64' else 0.01)
-+                  tol=0.02)
- def test_plot_masked_units():
-     data = np.linspace(-5, 5)
-     data_masked = np.ma.array(data, mask=(data > -2) & (data < 2))
-diff --git a/lib/matplotlib/tests/test_usetex.py 
b/lib/matplotlib/tests/test_usetex.py
-index 0f01ebaffb..5e44dc8d22 100644
---- a/lib/matplotlib/tests/test_usetex.py
-+++ b/lib/matplotlib/tests/test_usetex.py
-@@ -14,6 +14,7 @@ import matplotlib.pyplot as plt
- pytestmark = needs_usetex
- 
- 
[email protected](reason="TODO: broken")
- @image_comparison(
-     baseline_images=['test_usetex'],
-     extensions=['pdf', 'png'],
-@@ -64,7 +65,7 @@ def test_mathdefault():
-     fig.canvas.draw()
- 
- 
--@image_comparison(['eqnarray.png'])
-+@image_comparison(['eqnarray.png'], tol=23)
- def test_multiline_eqnarray():
-     text = (
-         r'\begin{eqnarray*}'
--- 
-2.39.2
-

diff --git a/dev-python/matplotlib/files/matplotlib-3.7.2-macOS_no-Cocoa.patch 
b/dev-python/matplotlib/files/matplotlib-3.7.2-macOS_no-Cocoa.patch
deleted file mode 100644
index 3f29134be621..000000000000
--- a/dev-python/matplotlib/files/matplotlib-3.7.2-macOS_no-Cocoa.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Do not automatically build against Cocoa on macOS.
-
-At Prefix/macOS, we do not support the propietary Cocoa SDK.  GUI
-applications use X11.
-
-The patch is specific to our need and not forwarded upstream.
-
-Signed-off-by: Benda Xu <[email protected]>
-
-Index: matplotlib-3.7.2/setup.py
-===================================================================
---- matplotlib-3.7.2.orig/setup.py
-+++ matplotlib-3.7.2/setup.py
-@@ -49,7 +49,6 @@ mpl_packages = [
-     setupext.FreeType(),
-     setupext.Qhull(),
-     setupext.Tests(),
--    setupext.BackendMacOSX(),
-     ]
- 
- 

diff --git a/dev-python/matplotlib/files/matplotlib-3.7.2-pyparsing-3.1.patch 
b/dev-python/matplotlib/files/matplotlib-3.7.2-pyparsing-3.1.patch
deleted file mode 100644
index 44082b5c0227..000000000000
--- a/dev-python/matplotlib/files/matplotlib-3.7.2-pyparsing-3.1.patch
+++ /dev/null
@@ -1,274 +0,0 @@
-https://bugs.gentoo.org/911127
-https://github.com/matplotlib/matplotlib/issues/26152
-https://github.com/matplotlib/matplotlib/pull/26432
-
-From c5183789d7d0cd151c201eeb2ce4fc786b6e43c2 Mon Sep 17 00:00:00 2001
-From: Jody Klymak <[email protected]>
-Date: Tue, 1 Aug 2023 13:41:44 -0700
-Subject: [PATCH 1/2] Backport PR #26431: MNT: Unpin pyparsing, xfail error
- message tests for pyparsing 3.1.0
-
---- a/environment.yml
-+++ b/environment.yml
-@@ -19,7 +19,7 @@ dependencies:
-   - pillow>=6.2
-   - pybind11>=2.6.0
-   - pygobject
--  - pyparsing!=3.1.0
-+  - pyparsing>=2.3.1
-   - pyqt
-   - python-dateutil>=2.1
-   - setuptools
---- a/lib/matplotlib/tests/test_mathtext.py
-+++ b/lib/matplotlib/tests/test_mathtext.py
-@@ -6,13 +6,18 @@
- from xml.etree import ElementTree as ET
- 
- import numpy as np
-+from packaging.version import parse as parse_version
-+import pyparsing
- import pytest
- 
-+
- import matplotlib as mpl
- from matplotlib.testing.decorators import check_figures_equal, 
image_comparison
- import matplotlib.pyplot as plt
- from matplotlib import mathtext, _mathtext
- 
-+pyparsing_version = parse_version(pyparsing.__version__)
-+
- 
- # If test is removed, use None as placeholder
- math_tests = [
-@@ -270,6 +275,9 @@ def test_fontinfo():
-     assert table['version'] == (1, 0)
- 
- 
-+# See gh-26152 for more context on this xfail
[email protected](pyparsing_version.release == (3, 1, 0),
-+                   reason="Error messages are incorrect for this version")
- @pytest.mark.parametrize(
-     'math, msg',
-     [
---- a/lib/matplotlib/tests/test_text.py
-+++ b/lib/matplotlib/tests/test_text.py
-@@ -4,6 +4,8 @@
- 
- import numpy as np
- from numpy.testing import assert_almost_equal
-+from packaging.version import parse as parse_version
-+import pyparsing
- import pytest
- 
- import matplotlib as mpl
-@@ -16,6 +18,8 @@
- from matplotlib.testing._markers import needs_usetex
- from matplotlib.text import Text
- 
-+pyparsing_version = parse_version(pyparsing.__version__)
-+
- 
- @image_comparison(['font_styles'])
- def test_font_styles():
-@@ -809,6 +813,9 @@ def test_unsupported_script(recwarn):
-          (r"Matplotlib currently does not support Bengali natively.",)])
- 
- 
-+# See gh-26152 for more information on this xfail
[email protected](pyparsing_version.release == (3, 1, 0),
-+                   reason="Error messages are incorrect with pyparsing 3.1.0")
- def test_parse_math():
-     fig, ax = plt.subplots()
-     ax.text(0, 0, r"$ \wrong{math} $", parse_math=False)
-@@ -819,6 +826,9 @@ def test_parse_math():
-         fig.canvas.draw()
- 
- 
-+# See gh-26152 for more information on this xfail
[email protected](pyparsing_version.release == (3, 1, 0),
-+                   reason="Error messages are incorrect with pyparsing 3.1.0")
- def test_parse_math_rcparams():
-     # Default is True
-     fig, ax = plt.subplots()
---- a/setup.py
-+++ b/setup.py
-@@ -325,7 +325,7 @@ def make_release_tree(self, base_dir, files):
-         "numpy>=1.20",
-         "packaging>=20.0",
-         "pillow>=6.2.0",
--        "pyparsing>=2.3.1,<3.1",
-+        "pyparsing>=2.3.1",
-         "python-dateutil>=2.7",
-     ] + (
-         # Installing from a git checkout that is not producing a wheel.
-
-From 7f475c5088a826adffac2885d027d4f8b3cba218 Mon Sep 17 00:00:00 2001
-From: Kyle Sunden <[email protected]>
-Date: Mon, 26 Jun 2023 22:17:27 -0500
-Subject: [PATCH 2/2] Manual backport of #26198
-
-Cherry picked and fixed up, ignored changes to the pyi file (which doesn't 
exist on this branch).
---- a/lib/matplotlib/_mathtext.py
-+++ b/lib/matplotlib/_mathtext.py
-@@ -1802,8 +1802,11 @@ def __init__(self):
-         def set_names_and_parse_actions():
-             for key, val in vars(p).items():
-                 if not key.startswith('_'):
--                    # Set names on everything -- very useful for debugging
--                    val.setName(key)
-+                    # Set names on (almost) everything -- very useful for 
debugging
-+                    # token, placeable, and auto_delim are forward references 
which
-+                    # are left without names to ensure useful error messages
-+                    if key not in ("token", "placeable", "auto_delim"):
-+                        val.setName(key)
-                     # Set actions
-                     if hasattr(self, key):
-                         val.setParseAction(getattr(self, key))
-@@ -1840,63 +1843,39 @@ def csnames(group, names):
-         p.unknown_symbol = Regex(r"\\[A-Za-z]*")("name")
- 
-         p.font           = csnames("font", self._fontnames)
--        p.start_group    = (
--            Optional(r"\math" + oneOf(self._fontnames)("font")) + "{")
-+        p.start_group    = Optional(r"\math" + 
oneOf(self._fontnames)("font")) + "{"
-         p.end_group      = Literal("}")
- 
-         p.delim          = oneOf(self._delims)
- 
--        set_names_and_parse_actions()  # for root definitions.
--
-         # Mutually recursive definitions.  (Minimizing the number of Forward
-         # elements is important for speed.)
--        p.accent           = Forward()
-         p.auto_delim       = Forward()
--        p.binom            = Forward()
--        p.customspace      = Forward()
--        p.frac             = Forward()
--        p.dfrac            = Forward()
--        p.function         = Forward()
--        p.genfrac          = Forward()
--        p.group            = Forward()
--        p.operatorname     = Forward()
--        p.overline         = Forward()
--        p.overset          = Forward()
-         p.placeable        = Forward()
-         p.required_group   = Forward()
--        p.simple           = Forward()
-         p.optional_group   = Forward()
--        p.sqrt             = Forward()
--        p.subsuper         = Forward()
-         p.token            = Forward()
--        p.underset         = Forward()
- 
-         set_names_and_parse_actions()  # for mutually recursive definitions.
- 
--        p.customspace <<= cmd(r"\hspace", "{" + p.float_literal("space") + 
"}")
-+        p.optional_group <<= "{" + ZeroOrMore(p.token)("group") + "}"
-+        p.required_group <<= "{" + OneOrMore(p.token)("group") + "}"
- 
--        p.accent <<= (
-+        p.customspace = cmd(r"\hspace", "{" + p.float_literal("space") + "}")
-+
-+        p.accent = (
-             csnames("accent", [*self._accent_map, *self._wide_accents])
-             - p.placeable("sym"))
- 
--        p.function <<= csnames("name", self._function_names)
--        p.operatorname <<= cmd(
--            r"\operatorname",
--            "{" + ZeroOrMore(p.simple | p.unknown_symbol)("name") + "}")
-+        p.function = csnames("name", self._function_names)
- 
--        p.group <<= p.start_group + ZeroOrMore(p.token)("group") + p.end_group
-+        p.group = p.start_group + ZeroOrMore(p.token)("group") + p.end_group
- 
--        p.optional_group <<= "{" + ZeroOrMore(p.token)("group") + "}"
--        p.required_group <<= "{" + OneOrMore(p.token)("group") + "}"
--
--        p.frac  <<= cmd(
--            r"\frac", p.required_group("num") + p.required_group("den"))
--        p.dfrac <<= cmd(
--            r"\dfrac", p.required_group("num") + p.required_group("den"))
--        p.binom <<= cmd(
--            r"\binom", p.required_group("num") + p.required_group("den"))
-+        p.frac  = cmd(r"\frac", p.required_group("num") + 
p.required_group("den"))
-+        p.dfrac = cmd(r"\dfrac", p.required_group("num") + 
p.required_group("den"))
-+        p.binom = cmd(r"\binom", p.required_group("num") + 
p.required_group("den"))
- 
--        p.genfrac <<= cmd(
-+        p.genfrac = cmd(
-             r"\genfrac",
-             "{" + Optional(p.delim)("ldelim") + "}"
-             + "{" + Optional(p.delim)("rdelim") + "}"
-@@ -1905,20 +1884,38 @@ def csnames(group, names):
-             + p.required_group("num")
-             + p.required_group("den"))
- 
--        p.sqrt <<= cmd(
-+        p.sqrt = cmd(
-             r"\sqrt{value}",
-             Optional("[" + OneOrMore(NotAny("]") + p.token)("root") + "]")
-             + p.required_group("value"))
- 
--        p.overline <<= cmd(r"\overline", p.required_group("body"))
-+        p.overline = cmd(r"\overline", p.required_group("body"))
- 
--        p.overset  <<= cmd(
-+        p.overset  = cmd(
-             r"\overset",
-             p.optional_group("annotation") + p.optional_group("body"))
--        p.underset <<= cmd(
-+        p.underset = cmd(
-             r"\underset",
-             p.optional_group("annotation") + p.optional_group("body"))
- 
-+        p.subsuper = (
-+            (Optional(p.placeable)("nucleus")
-+             + OneOrMore(oneOf(["_", "^"]) - p.placeable)("subsuper")
-+             + Regex("'*")("apostrophes"))
-+            | Regex("'+")("apostrophes")
-+            | (p.placeable("nucleus") + Regex("'*")("apostrophes"))
-+        )
-+
-+        p.simple = p.space | p.customspace | p.font | p.subsuper
-+
-+        p.token <<= (
-+            p.simple
-+            | p.auto_delim
-+            | p.unknown_symbol  # Must be last
-+        )
-+
-+        p.operatorname = cmd(r"\operatorname", "{" + 
ZeroOrMore(p.simple)("name") + "}")
-+
-         p.placeable     <<= (
-             p.accent     # Must be before symbol as all accents are symbols
-             | p.symbol   # Must be second to catch all named symbols and 
single
-@@ -1936,27 +1933,6 @@ def csnames(group, names):
-             | p.overline
-         )
- 
--        p.simple        <<= (
--            p.space
--            | p.customspace
--            | p.font
--            | p.subsuper
--        )
--
--        p.subsuper      <<= (
--            (Optional(p.placeable)("nucleus")
--             + OneOrMore(oneOf(["_", "^"]) - p.placeable)("subsuper")
--             + Regex("'*")("apostrophes"))
--            | Regex("'+")("apostrophes")
--            | (p.placeable("nucleus") + Regex("'*")("apostrophes"))
--        )
--
--        p.token         <<= (
--            p.simple
--            | p.auto_delim
--            | p.unknown_symbol  # Must be last
--        )
--
-         p.auto_delim    <<= (
-             r"\left" - (p.delim("left") | Error("Expected a delimiter"))
-             + ZeroOrMore(p.simple | p.auto_delim)("mid")
-

diff --git a/dev-python/matplotlib/matplotlib-3.7.1.ebuild 
b/dev-python/matplotlib/matplotlib-3.7.1.ebuild
deleted file mode 100644
index 6d55e63a2d55..000000000000
--- a/dev-python/matplotlib/matplotlib-3.7.1.ebuild
+++ /dev/null
@@ -1,331 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE='tk?,threads(+)'
-
-inherit distutils-r1 flag-o-matic multiprocessing prefix pypi
-inherit toolchain-funcs virtualx
-
-FT_PV=2.6.1
-DESCRIPTION="Pure python plotting library with matlab like syntax"
-HOMEPAGE="
-       https://matplotlib.org/
-       https://github.com/matplotlib/matplotlib/
-       https://pypi.org/project/matplotlib/
-"
-SRC_URI+="
-       test? (
-               
https://downloads.sourceforge.net/project/freetype/freetype2/${FT_PV}/freetype-${FT_PV}.tar.gz
-       )
-"
-
-# Main license: matplotlib
-# Some modules: BSD
-# matplotlib/backends/qt4_editor: MIT
-# Fonts: BitstreamVera, OFL-1.1
-LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 
sparc x86"
-IUSE="cairo doc excel examples gtk3 latex qt5 tk webagg wxwidgets"
-
-# internal copy of pycxx highly patched
-#      dev-python/pycxx
-RDEPEND="
-       dev-python/certifi[${PYTHON_USEDEP}]
-       >=dev-python/contourpy-1.0.1[${PYTHON_USEDEP}]
-       >=dev-python/cycler-0.10.0-r1[${PYTHON_USEDEP}]
-       >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}]
-       >=dev-python/kiwisolver-1.2.0[${PYTHON_USEDEP}]
-       >=dev-python/numpy-1.20[${PYTHON_USEDEP}]
-       >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
-       >=dev-python/pillow-7.1.1[jpeg,webp,${PYTHON_USEDEP}]
-       >=dev-python/pyparsing-2.3.1[${PYTHON_USEDEP}]
-       >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
-       >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-       media-fonts/dejavu
-       media-fonts/stix-fonts
-       media-libs/freetype:2
-       media-libs/libpng:0
-       >=media-libs/qhull-2013:=
-       virtual/imagemagick-tools[jpeg,tiff]
-       cairo? (
-               dev-python/cairocffi[${PYTHON_USEDEP}]
-       )
-       excel? (
-               dev-python/xlwt[${PYTHON_USEDEP}]
-       )
-       gtk3? (
-               >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-               x11-libs/gtk+:3[introspection]
-       )
-       latex? (
-               virtual/latex-base
-               app-text/dvipng
-               app-text/ghostscript-gpl
-               app-text/poppler[utils]
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-       )
-       qt5? (
-               dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
-       )
-       webagg? (
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-       )
-       wxwidgets? (
-               $(python_gen_cond_dep '
-                       dev-python/wxpython:*[${PYTHON_USEDEP}]
-               ' python3_{8..10})
-       )
-"
-
-BDEPEND="
-       ${RDEPEND}
-       dev-python/pybind11[${PYTHON_USEDEP}]
-       >=dev-python/setuptools-scm-7[${PYTHON_USEDEP}]
-       virtual/pkgconfig
-       doc? (
-               >=app-text/dvipng-1.15-r1
-               >=dev-python/colorspacious-1.1.2[${PYTHON_USEDEP}]
-               >=dev-python/ipython-1.18.2[${PYTHON_USEDEP}]
-               >=dev-python/numpydoc-0.9.2[${PYTHON_USEDEP}]
-               >=dev-python/scipy-1.4.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-1.3.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-gallery-0.3.1-r1[${PYTHON_USEDEP}]
-               >=dev-python/xlwt-1.3.0-r1[${PYTHON_USEDEP}]
-               virtual/latex-base
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexrecommended
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-               >=media-gfx/graphviz-2.42.3[cairo]
-       )
-       test? (
-               dev-python/mock[${PYTHON_USEDEP}]
-               dev-python/psutil[${PYTHON_USEDEP}]
-               dev-python/pytest-xdist[${PYTHON_USEDEP}]
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-               gtk3? (
-                       
>=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-                       x11-libs/gtk+:3[introspection]
-               )
-       )
-"
-
-distutils_enable_tests pytest
-
-use_setup() {
-       local uword="${2:-${1}}"
-       if use "${1}"; then
-               echo "${uword} = True"
-               echo "${uword}agg = True"
-       else
-               echo "${uword} = False"
-               echo "${uword}agg = False"
-       fi
-}
-
-python_prepare_all() {
-# Generates test failures, but fedora does it
-#      local PATCHES=(
-#              "${FILESDIR}"/${P}-unbundle-pycxx.patch
-#              "${FILESDIR}"/${P}-unbundle-agg.patch
-#      )
-#      rm -r agg24 CXX || die
-#      rm -r agg24 || die
-
-       # Affects installed _version.py, bug #854600
-       export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-       local PATCHES=(
-               "${FILESDIR}"/matplotlib-3.3.3-disable-lto.patch
-               "${FILESDIR}"/matplotlib-3.7.1-test.patch
-       )
-
-       sed \
-               -e 's/matplotlib.pyparsing_py[23]/pyparsing/g' \
-               -i lib/matplotlib/{mathtext,fontconfig_pattern}.py \
-               || die "sed pyparsing failed"
-       sed -i -e '/setuptools_scm/s:,<7::' setup.py || die
-
-       hprefixify setupext.py
-
-       rm -rf libqhull || die
-
-       distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-       append-flags -fno-strict-aliasing
-       append-cppflags -DNDEBUG  # or get old trying to do triangulation
-       tc-export PKG_CONFIG
-
-       unset DISPLAY # bug #278524
-       export XDG_RUNTIME_DIR="${T}/runtime-dir"
-       mkdir "${XDG_RUNTIME_DIR}" || die
-       chmod 0700 "${XDG_RUNTIME_DIR}" || die
-}
-
-python_configure() {
-       mkdir -p "${BUILD_DIR}" || die
-
-       # create setup.cfg (see setup.cfg.template for any changes).
-
-       # common switches.
-       cat > "${BUILD_DIR}"/setup.cfg <<- EOF || die
-               [directories]
-               basedirlist = ${EPREFIX}/usr
-               [provide_packages]
-               pytz = False
-               dateutil = False
-               [libs]
-               system_freetype = True
-               system_qhull = True
-               [packages]
-               tests = True
-               [gui_support]
-               agg = True
-               gtk = False
-               gtkagg = False
-               macosx = False
-               pyside = False
-               pysideagg = False
-               qt4 = False
-               qt4agg = False
-               $(use_setup cairo)
-               $(use_setup gtk3)
-               $(use_setup qt5)
-               $(use_setup tk)
-               $(use_setup wxwidgets wx)
-       EOF
-
-       if use gtk3 && use cairo; then
-               echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die
-       else
-               echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die
-       fi
-}
-
-wrap_setup() {
-       local MAKEOPTS=-j1
-       local -x MPLSETUPCFG="${BUILD_DIR}"/setup.cfg
-       "$@"
-}
-
-python_compile() {
-       wrap_setup distutils-r1_python_compile
-       find "${BUILD_DIR}" -name '*.pth' -delete || die
-}
-
-python_compile_all() {
-       if use doc; then
-               cd doc || die
-
-               VARTEXFONTS="${T}"/fonts \
-               emake SPHINXOPTS= O=-Dplot_formats=png:100 html
-       fi
-}
-
-src_test() {
-       mkdir build || die
-       ln -s "${WORKDIR}/freetype-${FT_PV}" build/ || die
-       virtx distutils-r1_src_test
-}
-
-python_test() {
-       local EPYTEST_DESELECT=(
-               # broken by -Wdefault
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg6-MatplotlibDeprecationWarning]"
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg7-MatplotlibDeprecationWarning]"
-               tests/test_testing.py::test_warn_to_fail
-               # TODO?
-               tests/test_backend_qt.py::test_fig_sigint_override
-               # unhappy about xdist
-               
tests/test_widgets.py::test_span_selector_animated_artists_callback
-       )
-       [[ ${EPYTHON} == python3.11 ]] && EPYTEST_DESELECT+=(
-               # https://github.com/matplotlib/matplotlib/issues/23384
-               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtagg', 'QT_API': 'PyQt5'}]"
-               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtcairo', 'QT_API': 'PyQt5'}]"
-       )
-
-       case "${ABI}" in
-               alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-                       EPYTEST_DESELECT+=(
-                               # too large for 32-bit platforms
-                               'tests/test_axes.py::test_psd_csd[png]'
-                       )
-                       ;;
-               *)
-                       ;;
-       esac
-
-       if use hppa ; then
-               EPYTEST_DESELECT+=(
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace without value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[function without space]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[accent without space]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
with empty parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac with empty 
parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline with empty 
parameter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[left 
with invalid delimiter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[right 
with invalid delimiter]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses with 
sizing]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses without 
sizing]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[underset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unknown symbol]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double superscript]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double subscript]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[super 
on sub without braces]'
-                       'tests/test_quiver.py::test_barbs[png]'
-                       'tests/test_quiver.py::test_barbs_pivot[png]'
-                       'tests/test_quiver.py::test_barbs_flip[png]'
-                       'tests/test_text.py::test_parse_math'
-                       'tests/test_text.py::test_parse_math_rcparams'
-               )
-       fi
-
-       # we need to rebuild mpl against bundled freetype, otherwise
-       # over 1000 tests will fail because of mismatched font rendering
-       grep -v system_freetype "${BUILD_DIR}"/setup.cfg \
-               > "${BUILD_DIR}"/test-setup.cfg || die
-       local -x MPLSETUPCFG="${BUILD_DIR}"/test-setup.cfg
-
-       esetup.py build -j1 --build-lib="${BUILD_DIR}"/test-lib
-       local -x PYTHONPATH=${BUILD_DIR}/test-lib:${PYTHONPATH}
-
-       # speed tests up
-       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-       nonfatal epytest --pyargs matplotlib -m "not network" \
-               -p xdist.plugin -n "$(makeopts_jobs)" || die
-}
-
-python_install_all() {
-       use doc && local HTML_DOCS=( doc/build/html/. )
-
-       distutils-r1_python_install_all
-
-       if use examples; then
-               dodoc -r examples
-               docompress -x /usr/share/doc/${PF}/examples
-       fi
-}

diff --git a/dev-python/matplotlib/matplotlib-3.7.2-r1.ebuild 
b/dev-python/matplotlib/matplotlib-3.7.2-r1.ebuild
deleted file mode 100644
index c9db102721f2..000000000000
--- a/dev-python/matplotlib/matplotlib-3.7.2-r1.ebuild
+++ /dev/null
@@ -1,334 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE='tk?,threads(+)'
-
-inherit distutils-r1 flag-o-matic multiprocessing prefix pypi
-inherit toolchain-funcs virtualx
-
-FT_PV=2.6.1
-DESCRIPTION="Pure python plotting library with matlab like syntax"
-HOMEPAGE="
-       https://matplotlib.org/
-       https://github.com/matplotlib/matplotlib/
-       https://pypi.org/project/matplotlib/
-"
-SRC_URI+="
-       test? (
-               
https://downloads.sourceforge.net/project/freetype/freetype2/${FT_PV}/freetype-${FT_PV}.tar.gz
-       )
-"
-
-# Main license: matplotlib
-# Some modules: BSD
-# matplotlib/backends/qt4_editor: MIT
-# Fonts: BitstreamVera, OFL-1.1
-LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv 
~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
-IUSE="cairo doc excel examples gtk3 latex qt5 tk webagg wxwidgets"
-
-# internal copy of pycxx highly patched
-#      dev-python/pycxx
-RDEPEND="
-       dev-python/certifi[${PYTHON_USEDEP}]
-       >=dev-python/contourpy-1.0.1[${PYTHON_USEDEP}]
-       >=dev-python/cycler-0.10.0-r1[${PYTHON_USEDEP}]
-       >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}]
-       >=dev-python/kiwisolver-1.2.0[${PYTHON_USEDEP}]
-       >=dev-python/numpy-1.20[${PYTHON_USEDEP}]
-       >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
-       >=dev-python/pillow-7.1.1[jpeg,webp,${PYTHON_USEDEP}]
-       >=dev-python/pyparsing-2.3.1[${PYTHON_USEDEP}]
-       >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
-       >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-       media-fonts/dejavu
-       media-fonts/stix-fonts
-       media-libs/freetype:2
-       media-libs/libpng:0
-       >=media-libs/qhull-2013:=
-       virtual/imagemagick-tools[jpeg,tiff]
-       cairo? (
-               dev-python/cairocffi[${PYTHON_USEDEP}]
-       )
-       excel? (
-               dev-python/xlwt[${PYTHON_USEDEP}]
-       )
-       gtk3? (
-               >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-               x11-libs/gtk+:3[introspection]
-       )
-       latex? (
-               virtual/latex-base
-               app-text/dvipng
-               app-text/ghostscript-gpl
-               app-text/poppler[utils]
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-       )
-       qt5? (
-               dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
-       )
-       webagg? (
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-       )
-       wxwidgets? (
-               $(python_gen_cond_dep '
-                       dev-python/wxpython:*[${PYTHON_USEDEP}]
-               ' python3_{8..10})
-       )
-"
-
-BDEPEND="
-       ${RDEPEND}
-       dev-python/pybind11[${PYTHON_USEDEP}]
-       >=dev-python/setuptools-scm-7[${PYTHON_USEDEP}]
-       virtual/pkgconfig
-       doc? (
-               >=app-text/dvipng-1.15-r1
-               >=dev-python/colorspacious-1.1.2[${PYTHON_USEDEP}]
-               >=dev-python/ipython-1.18.2[${PYTHON_USEDEP}]
-               >=dev-python/numpydoc-0.9.2[${PYTHON_USEDEP}]
-               >=dev-python/scipy-1.4.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-1.3.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-gallery-0.3.1-r1[${PYTHON_USEDEP}]
-               >=dev-python/xlwt-1.3.0-r1[${PYTHON_USEDEP}]
-               virtual/latex-base
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexrecommended
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-               >=media-gfx/graphviz-2.42.3[cairo]
-       )
-       test? (
-               dev-python/mock[${PYTHON_USEDEP}]
-               dev-python/psutil[${PYTHON_USEDEP}]
-               dev-python/pytest-xdist[${PYTHON_USEDEP}]
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-               gtk3? (
-                       
>=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-                       x11-libs/gtk+:3[introspection]
-               )
-       )
-"
-
-distutils_enable_tests pytest
-
-use_setup() {
-       local uword="${2:-${1}}"
-       if use "${1}"; then
-               echo "${uword} = True"
-               echo "${uword}agg = True"
-       else
-               echo "${uword} = False"
-               echo "${uword}agg = False"
-       fi
-}
-
-python_prepare_all() {
-# Generates test failures, but fedora does it
-#      local PATCHES=(
-#              "${FILESDIR}"/${P}-unbundle-pycxx.patch
-#              "${FILESDIR}"/${P}-unbundle-agg.patch
-#      )
-#      rm -r agg24 CXX || die
-#      rm -r agg24 || die
-
-       # Affects installed _version.py, bug #854600
-       export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-       local PATCHES=(
-               "${FILESDIR}"/matplotlib-3.3.3-disable-lto.patch
-               "${FILESDIR}"/matplotlib-3.7.1-test.patch
-               "${FILESDIR}"/matplotlib-3.7.2-macOS_no-Cocoa.patch
-               "${FILESDIR}"/matplotlib-3.7.2-pyparsing-3.1.patch
-       )
-
-       sed \
-               -e 's/matplotlib.pyparsing_py[23]/pyparsing/g' \
-               -i lib/matplotlib/{mathtext,fontconfig_pattern}.py \
-               || die "sed pyparsing failed"
-       sed -i -e '/setuptools_scm/s:,<7::' setup.py || die
-
-       hprefixify setupext.py
-
-       rm -rf libqhull || die
-
-       distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-       append-flags -fno-strict-aliasing
-       append-cppflags -DNDEBUG  # or get old trying to do triangulation
-       tc-export PKG_CONFIG
-
-       unset DISPLAY # bug #278524
-       export XDG_RUNTIME_DIR="${T}/runtime-dir"
-       mkdir "${XDG_RUNTIME_DIR}" || die
-       chmod 0700 "${XDG_RUNTIME_DIR}" || die
-}
-
-python_configure() {
-       mkdir -p "${BUILD_DIR}" || die
-
-       # create setup.cfg (see setup.cfg.template for any changes).
-
-       # common switches.
-       cat > "${BUILD_DIR}"/setup.cfg <<- EOF || die
-               [directories]
-               basedirlist = ${EPREFIX}/usr
-               [provide_packages]
-               pytz = False
-               dateutil = False
-               [libs]
-               system_freetype = True
-               system_qhull = True
-               [packages]
-               tests = True
-               [gui_support]
-               agg = True
-               gtk = False
-               gtkagg = False
-               macosx = False
-               pyside = False
-               pysideagg = False
-               qt4 = False
-               qt4agg = False
-               $(use_setup cairo)
-               $(use_setup gtk3)
-               $(use_setup qt5)
-               $(use_setup tk)
-               $(use_setup wxwidgets wx)
-       EOF
-
-       if use gtk3 && use cairo; then
-               echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die
-       else
-               echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die
-       fi
-}
-
-wrap_setup() {
-       local MAKEOPTS=-j1
-       local -x MPLSETUPCFG="${BUILD_DIR}"/setup.cfg
-       "$@"
-}
-
-python_compile() {
-       wrap_setup distutils-r1_python_compile
-       find "${BUILD_DIR}" -name '*.pth' -delete || die
-}
-
-python_compile_all() {
-       if use doc; then
-               cd doc || die
-
-               VARTEXFONTS="${T}"/fonts \
-               emake SPHINXOPTS= O=-Dplot_formats=png:100 html
-       fi
-}
-
-src_test() {
-       mkdir build || die
-       ln -s "${WORKDIR}/freetype-${FT_PV}" build/ || die
-       virtx distutils-r1_src_test
-}
-
-python_test() {
-       local EPYTEST_DESELECT=(
-               # broken by -Wdefault
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg6-MatplotlibDeprecationWarning]"
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg7-MatplotlibDeprecationWarning]"
-               tests/test_testing.py::test_warn_to_fail
-               # TODO?
-               tests/test_backend_qt.py::test_fig_sigint_override
-               # unhappy about xdist
-               
tests/test_widgets.py::test_span_selector_animated_artists_callback
-       )
-
-       [[ ${EPYTHON} == python3.11 ]] && EPYTEST_DESELECT+=(
-               # https://github.com/matplotlib/matplotlib/issues/23384
-               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtagg', 'QT_API': 'PyQt5'}]"
-               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtcairo', 'QT_API': 'PyQt5'}]"
-       )
-
-       case "${ABI}" in
-               alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-                       EPYTEST_DESELECT+=(
-                               # too large for 32-bit platforms
-                               'tests/test_axes.py::test_psd_csd[png]'
-                       )
-                       ;;
-               *)
-                       ;;
-       esac
-
-       if use hppa ; then
-               EPYTEST_DESELECT+=(
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace without value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[function without space]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[accent without space]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
with empty parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac with empty 
parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline with empty 
parameter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[left 
with invalid delimiter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[right 
with invalid delimiter]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses with 
sizing]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses without 
sizing]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[underset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unknown symbol]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double superscript]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double subscript]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[super 
on sub without braces]'
-                       'tests/test_quiver.py::test_barbs[png]'
-                       'tests/test_quiver.py::test_barbs_pivot[png]'
-                       'tests/test_quiver.py::test_barbs_flip[png]'
-                       'tests/test_text.py::test_parse_math'
-                       'tests/test_text.py::test_parse_math_rcparams'
-               )
-       fi
-
-       # we need to rebuild mpl against bundled freetype, otherwise
-       # over 1000 tests will fail because of mismatched font rendering
-       grep -v system_freetype "${BUILD_DIR}"/setup.cfg \
-               > "${BUILD_DIR}"/test-setup.cfg || die
-       local -x MPLSETUPCFG="${BUILD_DIR}"/test-setup.cfg
-
-       esetup.py build -j1 --build-lib="${BUILD_DIR}"/test-lib
-       local -x PYTHONPATH=${BUILD_DIR}/test-lib:${PYTHONPATH}
-
-       # speed tests up
-       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-       nonfatal epytest --pyargs matplotlib -m "not network" \
-               -p xdist.plugin -n "$(makeopts_jobs)" || die
-}
-
-python_install_all() {
-       use doc && local HTML_DOCS=( doc/build/html/. )
-
-       distutils-r1_python_install_all
-
-       if use examples; then
-               dodoc -r examples
-               docompress -x /usr/share/doc/${PF}/examples
-       fi
-}

diff --git a/dev-python/matplotlib/matplotlib-3.7.2.ebuild 
b/dev-python/matplotlib/matplotlib-3.7.2.ebuild
deleted file mode 100644
index 8c0235df7092..000000000000
--- a/dev-python/matplotlib/matplotlib-3.7.2.ebuild
+++ /dev/null
@@ -1,336 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE='tk?,threads(+)'
-
-inherit distutils-r1 flag-o-matic multiprocessing prefix pypi
-inherit toolchain-funcs virtualx
-
-FT_PV=2.6.1
-DESCRIPTION="Pure python plotting library with matlab like syntax"
-HOMEPAGE="
-       https://matplotlib.org/
-       https://github.com/matplotlib/matplotlib/
-       https://pypi.org/project/matplotlib/
-"
-SRC_URI+="
-       test? (
-               
https://downloads.sourceforge.net/project/freetype/freetype2/${FT_PV}/freetype-${FT_PV}.tar.gz
-       )
-"
-
-# Main license: matplotlib
-# Some modules: BSD
-# matplotlib/backends/qt4_editor: MIT
-# Fonts: BitstreamVera, OFL-1.1
-LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 
sparc ~x86 ~arm64-macos ~x64-macos"
-IUSE="cairo doc excel examples gtk3 latex qt5 tk webagg wxwidgets"
-
-# internal copy of pycxx highly patched
-#      dev-python/pycxx
-#
-# <pyparsing-3.1.0 for https://github.com/matplotlib/matplotlib/issues/26152
-RDEPEND="
-       dev-python/certifi[${PYTHON_USEDEP}]
-       >=dev-python/contourpy-1.0.1[${PYTHON_USEDEP}]
-       >=dev-python/cycler-0.10.0-r1[${PYTHON_USEDEP}]
-       >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}]
-       >=dev-python/kiwisolver-1.2.0[${PYTHON_USEDEP}]
-       >=dev-python/numpy-1.20[${PYTHON_USEDEP}]
-       >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
-       >=dev-python/pillow-7.1.1[jpeg,webp,${PYTHON_USEDEP}]
-       >=dev-python/pyparsing-2.3.1[${PYTHON_USEDEP}]
-       <dev-python/pyparsing-3.1.0[${PYTHON_USEDEP}]
-       >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
-       >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-       media-fonts/dejavu
-       media-fonts/stix-fonts
-       media-libs/freetype:2
-       media-libs/libpng:0
-       >=media-libs/qhull-2013:=
-       virtual/imagemagick-tools[jpeg,tiff]
-       cairo? (
-               dev-python/cairocffi[${PYTHON_USEDEP}]
-       )
-       excel? (
-               dev-python/xlwt[${PYTHON_USEDEP}]
-       )
-       gtk3? (
-               >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-               x11-libs/gtk+:3[introspection]
-       )
-       latex? (
-               virtual/latex-base
-               app-text/dvipng
-               app-text/ghostscript-gpl
-               app-text/poppler[utils]
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-       )
-       qt5? (
-               dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
-       )
-       webagg? (
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-       )
-       wxwidgets? (
-               $(python_gen_cond_dep '
-                       dev-python/wxpython:*[${PYTHON_USEDEP}]
-               ' python3_{8..10})
-       )
-"
-
-BDEPEND="
-       ${RDEPEND}
-       dev-python/pybind11[${PYTHON_USEDEP}]
-       >=dev-python/setuptools-scm-7[${PYTHON_USEDEP}]
-       virtual/pkgconfig
-       doc? (
-               >=app-text/dvipng-1.15-r1
-               >=dev-python/colorspacious-1.1.2[${PYTHON_USEDEP}]
-               >=dev-python/ipython-1.18.2[${PYTHON_USEDEP}]
-               >=dev-python/numpydoc-0.9.2[${PYTHON_USEDEP}]
-               >=dev-python/scipy-1.4.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-1.3.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-gallery-0.3.1-r1[${PYTHON_USEDEP}]
-               >=dev-python/xlwt-1.3.0-r1[${PYTHON_USEDEP}]
-               virtual/latex-base
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexrecommended
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-               >=media-gfx/graphviz-2.42.3[cairo]
-       )
-       test? (
-               dev-python/mock[${PYTHON_USEDEP}]
-               dev-python/psutil[${PYTHON_USEDEP}]
-               dev-python/pytest-xdist[${PYTHON_USEDEP}]
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-               gtk3? (
-                       
>=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-                       x11-libs/gtk+:3[introspection]
-               )
-       )
-"
-
-distutils_enable_tests pytest
-
-use_setup() {
-       local uword="${2:-${1}}"
-       if use "${1}"; then
-               echo "${uword} = True"
-               echo "${uword}agg = True"
-       else
-               echo "${uword} = False"
-               echo "${uword}agg = False"
-       fi
-}
-
-python_prepare_all() {
-# Generates test failures, but fedora does it
-#      local PATCHES=(
-#              "${FILESDIR}"/${P}-unbundle-pycxx.patch
-#              "${FILESDIR}"/${P}-unbundle-agg.patch
-#      )
-#      rm -r agg24 CXX || die
-#      rm -r agg24 || die
-
-       # Affects installed _version.py, bug #854600
-       export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-       local PATCHES=(
-               "${FILESDIR}"/matplotlib-3.3.3-disable-lto.patch
-               "${FILESDIR}"/matplotlib-3.7.1-test.patch
-               "${FILESDIR}"/matplotlib-3.7.2-macOS_no-Cocoa.patch
-       )
-
-       sed \
-               -e 's/matplotlib.pyparsing_py[23]/pyparsing/g' \
-               -i lib/matplotlib/{mathtext,fontconfig_pattern}.py \
-               || die "sed pyparsing failed"
-       sed -i -e '/setuptools_scm/s:,<7::' setup.py || die
-
-       hprefixify setupext.py
-
-       rm -rf libqhull || die
-
-       distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-       append-flags -fno-strict-aliasing
-       append-cppflags -DNDEBUG  # or get old trying to do triangulation
-       tc-export PKG_CONFIG
-
-       unset DISPLAY # bug #278524
-       export XDG_RUNTIME_DIR="${T}/runtime-dir"
-       mkdir "${XDG_RUNTIME_DIR}" || die
-       chmod 0700 "${XDG_RUNTIME_DIR}" || die
-}
-
-python_configure() {
-       mkdir -p "${BUILD_DIR}" || die
-
-       # create setup.cfg (see setup.cfg.template for any changes).
-
-       # common switches.
-       cat > "${BUILD_DIR}"/setup.cfg <<- EOF || die
-               [directories]
-               basedirlist = ${EPREFIX}/usr
-               [provide_packages]
-               pytz = False
-               dateutil = False
-               [libs]
-               system_freetype = True
-               system_qhull = True
-               [packages]
-               tests = True
-               [gui_support]
-               agg = True
-               gtk = False
-               gtkagg = False
-               macosx = False
-               pyside = False
-               pysideagg = False
-               qt4 = False
-               qt4agg = False
-               $(use_setup cairo)
-               $(use_setup gtk3)
-               $(use_setup qt5)
-               $(use_setup tk)
-               $(use_setup wxwidgets wx)
-       EOF
-
-       if use gtk3 && use cairo; then
-               echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die
-       else
-               echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die
-       fi
-}
-
-wrap_setup() {
-       local MAKEOPTS=-j1
-       local -x MPLSETUPCFG="${BUILD_DIR}"/setup.cfg
-       "$@"
-}
-
-python_compile() {
-       wrap_setup distutils-r1_python_compile
-       find "${BUILD_DIR}" -name '*.pth' -delete || die
-}
-
-python_compile_all() {
-       if use doc; then
-               cd doc || die
-
-               VARTEXFONTS="${T}"/fonts \
-               emake SPHINXOPTS= O=-Dplot_formats=png:100 html
-       fi
-}
-
-src_test() {
-       mkdir build || die
-       ln -s "${WORKDIR}/freetype-${FT_PV}" build/ || die
-       virtx distutils-r1_src_test
-}
-
-python_test() {
-       local EPYTEST_DESELECT=(
-               # broken by -Wdefault
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg6-MatplotlibDeprecationWarning]"
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg7-MatplotlibDeprecationWarning]"
-               tests/test_testing.py::test_warn_to_fail
-               # TODO?
-               tests/test_backend_qt.py::test_fig_sigint_override
-               # unhappy about xdist
-               
tests/test_widgets.py::test_span_selector_animated_artists_callback
-       )
-
-       [[ ${EPYTHON} == python3.11 ]] && EPYTEST_DESELECT+=(
-               # https://github.com/matplotlib/matplotlib/issues/23384
-               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtagg', 'QT_API': 'PyQt5'}]"
-               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtcairo', 'QT_API': 'PyQt5'}]"
-       )
-
-       case "${ABI}" in
-               alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-                       EPYTEST_DESELECT+=(
-                               # too large for 32-bit platforms
-                               'tests/test_axes.py::test_psd_csd[png]'
-                       )
-                       ;;
-               *)
-                       ;;
-       esac
-
-       if use hppa ; then
-               EPYTEST_DESELECT+=(
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace without value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[function without space]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[accent without space]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
with empty parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac with empty 
parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline with empty 
parameter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[left 
with invalid delimiter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[right 
with invalid delimiter]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses with 
sizing]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses without 
sizing]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[underset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unknown symbol]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double superscript]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double subscript]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[super 
on sub without braces]'
-                       'tests/test_quiver.py::test_barbs[png]'
-                       'tests/test_quiver.py::test_barbs_pivot[png]'
-                       'tests/test_quiver.py::test_barbs_flip[png]'
-                       'tests/test_text.py::test_parse_math'
-                       'tests/test_text.py::test_parse_math_rcparams'
-               )
-       fi
-
-       # we need to rebuild mpl against bundled freetype, otherwise
-       # over 1000 tests will fail because of mismatched font rendering
-       grep -v system_freetype "${BUILD_DIR}"/setup.cfg \
-               > "${BUILD_DIR}"/test-setup.cfg || die
-       local -x MPLSETUPCFG="${BUILD_DIR}"/test-setup.cfg
-
-       esetup.py build -j1 --build-lib="${BUILD_DIR}"/test-lib
-       local -x PYTHONPATH=${BUILD_DIR}/test-lib:${PYTHONPATH}
-
-       # speed tests up
-       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-       nonfatal epytest --pyargs matplotlib -m "not network" \
-               -p xdist.plugin -n "$(makeopts_jobs)" || die
-}
-
-python_install_all() {
-       use doc && local HTML_DOCS=( doc/build/html/. )
-
-       distutils-r1_python_install_all
-
-       if use examples; then
-               dodoc -r examples
-               docompress -x /usr/share/doc/${PF}/examples
-       fi
-}

diff --git a/dev-python/matplotlib/matplotlib-3.7.3.ebuild 
b/dev-python/matplotlib/matplotlib-3.7.3.ebuild
deleted file mode 100644
index c140325a5722..000000000000
--- a/dev-python/matplotlib/matplotlib-3.7.3.ebuild
+++ /dev/null
@@ -1,328 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..11} )
-PYTHON_REQ_USE='tk?,threads(+)'
-
-inherit distutils-r1 flag-o-matic multiprocessing prefix pypi
-inherit toolchain-funcs virtualx
-
-FT_PV=2.6.1
-DESCRIPTION="Pure python plotting library with matlab like syntax"
-HOMEPAGE="
-       https://matplotlib.org/
-       https://github.com/matplotlib/matplotlib/
-       https://pypi.org/project/matplotlib/
-"
-SRC_URI+="
-       test? (
-               
https://downloads.sourceforge.net/project/freetype/freetype2/${FT_PV}/freetype-${FT_PV}.tar.gz
-       )
-"
-
-# Main license: matplotlib
-# Some modules: BSD
-# matplotlib/backends/qt4_editor: MIT
-# Fonts: BitstreamVera, OFL-1.1
-LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv 
~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
-IUSE="cairo doc excel examples gtk3 latex qt5 tk webagg wxwidgets"
-
-# internal copy of pycxx highly patched
-#      dev-python/pycxx
-RDEPEND="
-       dev-python/certifi[${PYTHON_USEDEP}]
-       >=dev-python/contourpy-1.0.1[${PYTHON_USEDEP}]
-       >=dev-python/cycler-0.10.0-r1[${PYTHON_USEDEP}]
-       >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}]
-       >=dev-python/kiwisolver-1.2.0[${PYTHON_USEDEP}]
-       <dev-python/numpy-2[${PYTHON_USEDEP}]
-       >=dev-python/numpy-1.20[${PYTHON_USEDEP}]
-       >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
-       >=dev-python/pillow-7.1.1[jpeg,webp,${PYTHON_USEDEP}]
-       >=dev-python/pyparsing-2.3.1[${PYTHON_USEDEP}]
-       >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
-       >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-       media-fonts/dejavu
-       media-fonts/stix-fonts
-       media-libs/freetype:2
-       media-libs/libpng:0
-       >=media-libs/qhull-2013:=
-       virtual/imagemagick-tools[jpeg,tiff]
-       cairo? (
-               dev-python/cairocffi[${PYTHON_USEDEP}]
-       )
-       excel? (
-               dev-python/xlwt[${PYTHON_USEDEP}]
-       )
-       gtk3? (
-               >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-               x11-libs/gtk+:3[introspection]
-       )
-       latex? (
-               virtual/latex-base
-               app-text/dvipng
-               app-text/ghostscript-gpl
-               app-text/poppler[utils]
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-       )
-       qt5? (
-               dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
-       )
-       webagg? (
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-       )
-       wxwidgets? (
-               $(python_gen_cond_dep '
-                       dev-python/wxpython:*[${PYTHON_USEDEP}]
-               ' python3_{8..10})
-       )
-"
-
-BDEPEND="
-       ${RDEPEND}
-       dev-python/pybind11[${PYTHON_USEDEP}]
-       >=dev-python/setuptools-scm-7[${PYTHON_USEDEP}]
-       virtual/pkgconfig
-       doc? (
-               >=app-text/dvipng-1.15-r1
-               >=dev-python/colorspacious-1.1.2[${PYTHON_USEDEP}]
-               >=dev-python/ipython-1.18.2[${PYTHON_USEDEP}]
-               >=dev-python/numpydoc-0.9.2[${PYTHON_USEDEP}]
-               >=dev-python/scipy-1.4.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-1.3.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-gallery-0.3.1-r1[${PYTHON_USEDEP}]
-               >=dev-python/xlwt-1.3.0-r1[${PYTHON_USEDEP}]
-               virtual/latex-base
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexrecommended
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-               >=media-gfx/graphviz-2.42.3[cairo]
-       )
-       test? (
-               dev-python/mock[${PYTHON_USEDEP}]
-               dev-python/psutil[${PYTHON_USEDEP}]
-               dev-python/pytest-xdist[${PYTHON_USEDEP}]
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-               gtk3? (
-                       
>=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-                       x11-libs/gtk+:3[introspection]
-               )
-       )
-"
-
-distutils_enable_tests pytest
-
-use_setup() {
-       local uword="${2:-${1}}"
-       if use "${1}"; then
-               echo "${uword} = True"
-               echo "${uword}agg = True"
-       else
-               echo "${uword} = False"
-               echo "${uword}agg = False"
-       fi
-}
-
-python_prepare_all() {
-# Generates test failures, but fedora does it
-#      local PATCHES=(
-#              "${FILESDIR}"/${P}-unbundle-pycxx.patch
-#              "${FILESDIR}"/${P}-unbundle-agg.patch
-#      )
-#      rm -r agg24 CXX || die
-#      rm -r agg24 || die
-
-       # Affects installed _version.py, bug #854600
-       export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-       local PATCHES=(
-               "${FILESDIR}"/matplotlib-3.3.3-disable-lto.patch
-               "${FILESDIR}"/matplotlib-3.7.1-test.patch
-               "${FILESDIR}"/matplotlib-3.7.2-macOS_no-Cocoa.patch
-       )
-
-       hprefixify setupext.py
-
-       rm -rf libqhull || die
-
-       distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-       append-flags -fno-strict-aliasing
-       append-cppflags -DNDEBUG  # or get old trying to do triangulation
-       tc-export PKG_CONFIG
-
-       unset DISPLAY # bug #278524
-       export XDG_RUNTIME_DIR="${T}/runtime-dir"
-       mkdir "${XDG_RUNTIME_DIR}" || die
-       chmod 0700 "${XDG_RUNTIME_DIR}" || die
-}
-
-python_configure() {
-       mkdir -p "${BUILD_DIR}" || die
-
-       # create setup.cfg (see setup.cfg.template for any changes).
-
-       # common switches.
-       cat > "${BUILD_DIR}"/setup.cfg <<- EOF || die
-               [directories]
-               basedirlist = ${EPREFIX}/usr
-               [provide_packages]
-               pytz = False
-               dateutil = False
-               [libs]
-               system_freetype = True
-               system_qhull = True
-               [packages]
-               tests = True
-               [gui_support]
-               agg = True
-               gtk = False
-               gtkagg = False
-               macosx = False
-               pyside = False
-               pysideagg = False
-               qt4 = False
-               qt4agg = False
-               $(use_setup cairo)
-               $(use_setup gtk3)
-               $(use_setup qt5)
-               $(use_setup tk)
-               $(use_setup wxwidgets wx)
-       EOF
-
-       if use gtk3 && use cairo; then
-               echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die
-       else
-               echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die
-       fi
-}
-
-wrap_setup() {
-       local MAKEOPTS=-j1
-       local -x MPLSETUPCFG="${BUILD_DIR}"/setup.cfg
-       "$@"
-}
-
-python_compile() {
-       wrap_setup distutils-r1_python_compile
-       find "${BUILD_DIR}" -name '*.pth' -delete || die
-}
-
-python_compile_all() {
-       if use doc; then
-               cd doc || die
-
-               VARTEXFONTS="${T}"/fonts \
-               emake SPHINXOPTS= O=-Dplot_formats=png:100 html
-       fi
-}
-
-src_test() {
-       mkdir build || die
-       ln -s "${WORKDIR}/freetype-${FT_PV}" build/ || die
-       virtx distutils-r1_src_test
-}
-
-python_test() {
-       local EPYTEST_DESELECT=(
-               # broken by -Wdefault
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg6-MatplotlibDeprecationWarning]"
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg7-MatplotlibDeprecationWarning]"
-               tests/test_testing.py::test_warn_to_fail
-               # TODO?
-               tests/test_backend_qt.py::test_fig_sigint_override
-               # unhappy about xdist
-               
tests/test_widgets.py::test_span_selector_animated_artists_callback
-       )
-
-       [[ ${EPYTHON} == python3.11 ]] && EPYTEST_DESELECT+=(
-               # https://github.com/matplotlib/matplotlib/issues/23384
-               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtagg', 'QT_API': 'PyQt5'}]"
-               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtcairo', 'QT_API': 'PyQt5'}]"
-       )
-
-       case "${ABI}" in
-               alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-                       EPYTEST_DESELECT+=(
-                               # too large for 32-bit platforms
-                               'tests/test_axes.py::test_psd_csd[png]'
-                       )
-                       ;;
-               *)
-                       ;;
-       esac
-
-       if use hppa ; then
-               EPYTEST_DESELECT+=(
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace without value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[function without space]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[accent without space]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
with empty parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac with empty 
parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline with empty 
parameter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[left 
with invalid delimiter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[right 
with invalid delimiter]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses with 
sizing]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses without 
sizing]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[underset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unknown symbol]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double superscript]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double subscript]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[super 
on sub without braces]'
-                       'tests/test_quiver.py::test_barbs[png]'
-                       'tests/test_quiver.py::test_barbs_pivot[png]'
-                       'tests/test_quiver.py::test_barbs_flip[png]'
-                       'tests/test_text.py::test_parse_math'
-                       'tests/test_text.py::test_parse_math_rcparams'
-               )
-       fi
-
-       # we need to rebuild mpl against bundled freetype, otherwise
-       # over 1000 tests will fail because of mismatched font rendering
-       grep -v system_freetype "${BUILD_DIR}"/setup.cfg \
-               > "${BUILD_DIR}"/test-setup.cfg || die
-       local -x MPLSETUPCFG="${BUILD_DIR}"/test-setup.cfg
-
-       esetup.py build -j1 --build-lib="${BUILD_DIR}"/test-lib
-       local -x PYTHONPATH=${BUILD_DIR}/test-lib:${PYTHONPATH}
-
-       # speed tests up
-       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-       nonfatal epytest --pyargs matplotlib -m "not network" \
-               -p xdist.plugin -n "$(makeopts_jobs)" || die
-}
-
-python_install_all() {
-       use doc && local HTML_DOCS=( doc/build/html/. )
-
-       distutils-r1_python_install_all
-
-       if use examples; then
-               dodoc -r examples
-               docompress -x /usr/share/doc/${PF}/examples
-       fi
-}

diff --git a/dev-python/matplotlib/matplotlib-3.8.0.ebuild 
b/dev-python/matplotlib/matplotlib-3.8.0.ebuild
deleted file mode 100644
index 4f9c75f2e269..000000000000
--- a/dev-python/matplotlib/matplotlib-3.8.0.ebuild
+++ /dev/null
@@ -1,332 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..12} )
-PYTHON_REQ_USE='tk?,threads(+)'
-
-inherit distutils-r1 flag-o-matic multiprocessing prefix pypi
-inherit toolchain-funcs virtualx
-
-FT_PV=2.6.1
-DESCRIPTION="Pure python plotting library with matlab like syntax"
-HOMEPAGE="
-       https://matplotlib.org/
-       https://github.com/matplotlib/matplotlib/
-       https://pypi.org/project/matplotlib/
-"
-SRC_URI+="
-       test? (
-               
https://downloads.sourceforge.net/project/freetype/freetype2/${FT_PV}/freetype-${FT_PV}.tar.gz
-       )
-"
-
-# Main license: matplotlib
-# Some modules: BSD
-# matplotlib/backends/qt4_editor: MIT
-# Fonts: BitstreamVera, OFL-1.1
-LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~ppc ppc64 ~riscv ~s390 
sparc ~x86 ~arm64-macos ~x64-macos"
-IUSE="cairo doc excel gtk3 latex qt5 tk webagg wxwidgets"
-
-# internal copy of pycxx highly patched
-#      dev-python/pycxx
-RDEPEND="
-       dev-python/certifi[${PYTHON_USEDEP}]
-       >=dev-python/contourpy-1.0.1[${PYTHON_USEDEP}]
-       >=dev-python/cycler-0.10.0-r1[${PYTHON_USEDEP}]
-       >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}]
-       >=dev-python/kiwisolver-1.2.0[${PYTHON_USEDEP}]
-       <dev-python/numpy-2[${PYTHON_USEDEP}]
-       >=dev-python/numpy-1.25[${PYTHON_USEDEP}]
-       >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
-       >=dev-python/pillow-7.1.1[jpeg,webp,${PYTHON_USEDEP}]
-       >=dev-python/pyparsing-2.3.1[${PYTHON_USEDEP}]
-       >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
-       >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-       media-fonts/dejavu
-       media-fonts/stix-fonts
-       media-libs/freetype:2
-       media-libs/libpng:0
-       >=media-libs/qhull-2013:=
-       virtual/imagemagick-tools[jpeg,tiff]
-       cairo? (
-               dev-python/cairocffi[${PYTHON_USEDEP}]
-       )
-       excel? (
-               dev-python/xlwt[${PYTHON_USEDEP}]
-       )
-       gtk3? (
-               >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-               x11-libs/gtk+:3[introspection]
-       )
-       latex? (
-               virtual/latex-base
-               app-text/dvipng
-               app-text/ghostscript-gpl
-               app-text/poppler[utils]
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-       )
-       qt5? (
-               dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
-       )
-       webagg? (
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-       )
-       wxwidgets? (
-               $(python_gen_cond_dep '
-                       dev-python/wxpython:*[${PYTHON_USEDEP}]
-               ' python3_{10..11})
-       )
-"
-
-BDEPEND="
-       ${RDEPEND}
-       dev-python/pybind11[${PYTHON_USEDEP}]
-       >=dev-python/setuptools-scm-7[${PYTHON_USEDEP}]
-       virtual/pkgconfig
-       doc? (
-               >=app-text/dvipng-1.15-r1
-               >=dev-python/colorspacious-1.1.2[${PYTHON_USEDEP}]
-               >=dev-python/ipython-1.18.2[${PYTHON_USEDEP}]
-               >=dev-python/numpydoc-0.9.2[${PYTHON_USEDEP}]
-               >=dev-python/scipy-1.4.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-1.3.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-gallery-0.3.1-r1[${PYTHON_USEDEP}]
-               >=dev-python/xlwt-1.3.0-r1[${PYTHON_USEDEP}]
-               virtual/latex-base
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexrecommended
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-               >=media-gfx/graphviz-2.42.3[cairo]
-       )
-       test? (
-               dev-python/psutil[${PYTHON_USEDEP}]
-               dev-python/pytest-xdist[${PYTHON_USEDEP}]
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-               gtk3? (
-                       
>=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-                       x11-libs/gtk+:3[introspection]
-               )
-       )
-"
-
-distutils_enable_tests pytest
-
-use_setup() {
-       local uword="${2:-${1}}"
-       if use "${1}"; then
-               echo "${uword} = True"
-               echo "${uword}agg = True"
-       else
-               echo "${uword} = False"
-               echo "${uword}agg = False"
-       fi
-}
-
-python_prepare_all() {
-# Generates test failures, but fedora does it
-#      local PATCHES=(
-#              "${FILESDIR}"/${P}-unbundle-pycxx.patch
-#              "${FILESDIR}"/${P}-unbundle-agg.patch
-#      )
-#      rm -r agg24 CXX || die
-#      rm -r agg24 || die
-
-       # Affects installed _version.py, bug #854600
-       export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-       local PATCHES=(
-               "${FILESDIR}"/matplotlib-3.3.3-disable-lto.patch
-               "${FILESDIR}"/matplotlib-3.8.0-test.patch
-       )
-
-       hprefixify setupext.py
-
-       rm -rf libqhull || die
-
-       distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-       append-flags -fno-strict-aliasing
-       append-cppflags -DNDEBUG  # or get old trying to do triangulation
-       tc-export PKG_CONFIG
-
-       unset DISPLAY # bug #278524
-       export XDG_RUNTIME_DIR="${T}/runtime-dir"
-       mkdir "${XDG_RUNTIME_DIR}" || die
-       chmod 0700 "${XDG_RUNTIME_DIR}" || die
-}
-
-python_configure() {
-       mkdir -p "${BUILD_DIR}" || die
-
-       # create setup.cfg (see setup.cfg.template for any changes).
-
-       # common switches.
-       cat > "${BUILD_DIR}"/setup.cfg <<- EOF || die
-               [directories]
-               basedirlist = ${EPREFIX}/usr
-               [provide_packages]
-               pytz = False
-               dateutil = False
-               [libs]
-               system_freetype = True
-               system_qhull = True
-               [packages]
-               tests = True
-               [gui_support]
-               agg = True
-               gtk = False
-               gtkagg = False
-               macosx = False
-               pyside = False
-               pysideagg = False
-               qt4 = False
-               qt4agg = False
-               $(use_setup cairo)
-               $(use_setup gtk3)
-               $(use_setup qt5)
-               $(use_setup tk)
-               $(use_setup wxwidgets wx)
-       EOF
-
-       if use gtk3 && use cairo; then
-               echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die
-       else
-               echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die
-       fi
-}
-
-wrap_setup() {
-       local MAKEOPTS=-j1
-       local -x MPLSETUPCFG="${BUILD_DIR}"/setup.cfg
-       "$@"
-}
-
-python_compile() {
-       wrap_setup distutils-r1_python_compile
-       find "${BUILD_DIR}" -name '*.pth' -delete || die
-}
-
-python_compile_all() {
-       if use doc; then
-               cd doc || die
-
-               VARTEXFONTS="${T}"/fonts \
-               emake SPHINXOPTS= O=-Dplot_formats=png:100 html
-       fi
-}
-
-src_test() {
-       mkdir build || die
-       ln -s "${WORKDIR}/freetype-${FT_PV}" build/ || die
-       virtx distutils-r1_src_test
-}
-
-python_test() {
-       local EPYTEST_DESELECT=(
-               # broken by -Wdefault
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg6-MatplotlibDeprecationWarning]"
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg7-MatplotlibDeprecationWarning]"
-               tests/test_testing.py::test_warn_to_fail
-               # TODO?
-               tests/test_backend_qt.py::test_fig_sigint_override
-               # unhappy about xdist
-               
tests/test_widgets.py::test_span_selector_animated_artists_callback
-               # timeout
-               tests/test_backends_interactive.py::test_webagg
-       )
-
-       case ${EPYTHON} in
-               python3.11)
-                       EPYTEST_DESELECT+=(
-                               # 
https://github.com/matplotlib/matplotlib/issues/23384
-                               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtagg', 'QT_API': 'PyQt5'}]"
-                               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtcairo', 'QT_API': 'PyQt5'}]"
-                       )
-                       ;;
-               python3.12)
-                       EPYTEST_DESELECT+=(
-                               
tests/test_constrainedlayout.py::test_compressed1
-                       )
-                       ;;
-       esac
-
-       case "${ABI}" in
-               alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-                       EPYTEST_DESELECT+=(
-                               # too large for 32-bit platforms
-                               'tests/test_axes.py::test_psd_csd[png]'
-                       )
-                       ;;
-               *)
-                       ;;
-       esac
-
-       if use hppa ; then
-               EPYTEST_DESELECT+=(
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace without value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[function without space]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[accent without space]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
with empty parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac with empty 
parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline with empty 
parameter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[left 
with invalid delimiter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[right 
with invalid delimiter]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses with 
sizing]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses without 
sizing]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[underset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unknown symbol]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double superscript]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double subscript]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[super 
on sub without braces]'
-                       'tests/test_quiver.py::test_barbs[png]'
-                       'tests/test_quiver.py::test_barbs_pivot[png]'
-                       'tests/test_quiver.py::test_barbs_flip[png]'
-                       'tests/test_text.py::test_parse_math'
-                       'tests/test_text.py::test_parse_math_rcparams'
-               )
-       fi
-
-       # we need to rebuild mpl against bundled freetype, otherwise
-       # over 1000 tests will fail because of mismatched font rendering
-       grep -v system_freetype "${BUILD_DIR}"/setup.cfg \
-               > "${BUILD_DIR}"/test-setup.cfg || die
-       local -x MPLSETUPCFG="${BUILD_DIR}"/test-setup.cfg
-
-       esetup.py build -j1 --build-lib="${BUILD_DIR}"/test-lib
-       local -x PYTHONPATH=${BUILD_DIR}/test-lib:${PYTHONPATH}
-
-       # speed tests up
-       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-       nonfatal epytest --pyargs matplotlib -m "not network" \
-               -p xdist.plugin -n "$(makeopts_jobs)" || die
-}
-
-python_install_all() {
-       use doc && local HTML_DOCS=( doc/build/html/. )
-
-       distutils-r1_python_install_all
-}

diff --git a/dev-python/matplotlib/matplotlib-3.8.1.ebuild 
b/dev-python/matplotlib/matplotlib-3.8.1.ebuild
deleted file mode 100644
index 4784569e6848..000000000000
--- a/dev-python/matplotlib/matplotlib-3.8.1.ebuild
+++ /dev/null
@@ -1,332 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_EXT=1
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..12} )
-PYTHON_REQ_USE='tk?,threads(+)'
-
-inherit distutils-r1 flag-o-matic multiprocessing prefix pypi
-inherit toolchain-funcs virtualx
-
-FT_PV=2.6.1
-DESCRIPTION="Pure python plotting library with matlab like syntax"
-HOMEPAGE="
-       https://matplotlib.org/
-       https://github.com/matplotlib/matplotlib/
-       https://pypi.org/project/matplotlib/
-"
-SRC_URI+="
-       test? (
-               
https://downloads.sourceforge.net/project/freetype/freetype2/${FT_PV}/freetype-${FT_PV}.tar.gz
-       )
-"
-
-# Main license: matplotlib
-# Some modules: BSD
-# matplotlib/backends/qt4_editor: MIT
-# Fonts: BitstreamVera, OFL-1.1
-LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv 
~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
-IUSE="cairo doc excel gtk3 latex qt5 tk webagg wxwidgets"
-
-# internal copy of pycxx highly patched
-#      dev-python/pycxx
-RDEPEND="
-       dev-python/certifi[${PYTHON_USEDEP}]
-       >=dev-python/contourpy-1.0.1[${PYTHON_USEDEP}]
-       >=dev-python/cycler-0.10.0-r1[${PYTHON_USEDEP}]
-       >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}]
-       >=dev-python/kiwisolver-1.3.1[${PYTHON_USEDEP}]
-       <dev-python/numpy-2[${PYTHON_USEDEP}]
-       >=dev-python/numpy-1.25[${PYTHON_USEDEP}]
-       >=dev-python/packaging-20.0[${PYTHON_USEDEP}]
-       >=dev-python/pillow-8[jpeg,webp,${PYTHON_USEDEP}]
-       >=dev-python/pyparsing-2.3.1[${PYTHON_USEDEP}]
-       >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
-       >=dev-python/pytz-2019.3[${PYTHON_USEDEP}]
-       media-fonts/dejavu
-       media-fonts/stix-fonts
-       media-libs/freetype:2
-       media-libs/libpng:0
-       >=media-libs/qhull-2013:=
-       virtual/imagemagick-tools[jpeg,tiff]
-       cairo? (
-               dev-python/cairocffi[${PYTHON_USEDEP}]
-       )
-       excel? (
-               dev-python/xlwt[${PYTHON_USEDEP}]
-       )
-       gtk3? (
-               >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-               x11-libs/gtk+:3[introspection]
-       )
-       latex? (
-               virtual/latex-base
-               app-text/dvipng
-               app-text/ghostscript-gpl
-               app-text/poppler[utils]
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-       )
-       qt5? (
-               dev-python/PyQt5[gui,widgets,${PYTHON_USEDEP}]
-       )
-       webagg? (
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-       )
-       wxwidgets? (
-               $(python_gen_cond_dep '
-                       dev-python/wxpython:*[${PYTHON_USEDEP}]
-               ' python3_{10..11})
-       )
-"
-
-BDEPEND="
-       ${RDEPEND}
-       dev-python/pybind11[${PYTHON_USEDEP}]
-       >=dev-python/setuptools-scm-7[${PYTHON_USEDEP}]
-       virtual/pkgconfig
-       doc? (
-               >=app-text/dvipng-1.15-r1
-               >=dev-python/colorspacious-1.1.2[${PYTHON_USEDEP}]
-               >=dev-python/ipython-1.18.2[${PYTHON_USEDEP}]
-               >=dev-python/numpydoc-0.9.2[${PYTHON_USEDEP}]
-               >=dev-python/scipy-1.4.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-1.3.1[${PYTHON_USEDEP}]
-               >=dev-python/sphinx-gallery-0.3.1-r1[${PYTHON_USEDEP}]
-               >=dev-python/xlwt-1.3.0-r1[${PYTHON_USEDEP}]
-               virtual/latex-base
-               dev-texlive/texlive-latexextra
-               dev-texlive/texlive-fontsrecommended
-               dev-texlive/texlive-latexrecommended
-               dev-texlive/texlive-luatex
-               dev-texlive/texlive-xetex
-               >=media-gfx/graphviz-2.42.3[cairo]
-       )
-       test? (
-               dev-python/psutil[${PYTHON_USEDEP}]
-               dev-python/pytest-xdist[${PYTHON_USEDEP}]
-               >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}]
-               gtk3? (
-                       
>=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}]
-                       x11-libs/gtk+:3[introspection]
-               )
-       )
-"
-
-distutils_enable_tests pytest
-
-use_setup() {
-       local uword="${2:-${1}}"
-       if use "${1}"; then
-               echo "${uword} = True"
-               echo "${uword}agg = True"
-       else
-               echo "${uword} = False"
-               echo "${uword}agg = False"
-       fi
-}
-
-python_prepare_all() {
-# Generates test failures, but fedora does it
-#      local PATCHES=(
-#              "${FILESDIR}"/${P}-unbundle-pycxx.patch
-#              "${FILESDIR}"/${P}-unbundle-agg.patch
-#      )
-#      rm -r agg24 CXX || die
-#      rm -r agg24 || die
-
-       # Affects installed _version.py, bug #854600
-       export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
-
-       local PATCHES=(
-               "${FILESDIR}"/matplotlib-3.3.3-disable-lto.patch
-               "${FILESDIR}"/matplotlib-3.8.0-test.patch
-       )
-
-       hprefixify setupext.py
-
-       rm -rf libqhull || die
-
-       distutils-r1_python_prepare_all
-}
-
-python_configure_all() {
-       append-flags -fno-strict-aliasing
-       append-cppflags -DNDEBUG  # or get old trying to do triangulation
-       tc-export PKG_CONFIG
-
-       unset DISPLAY # bug #278524
-       export XDG_RUNTIME_DIR="${T}/runtime-dir"
-       mkdir "${XDG_RUNTIME_DIR}" || die
-       chmod 0700 "${XDG_RUNTIME_DIR}" || die
-}
-
-python_configure() {
-       mkdir -p "${BUILD_DIR}" || die
-
-       # create setup.cfg (see setup.cfg.template for any changes).
-
-       # common switches.
-       cat > "${BUILD_DIR}"/setup.cfg <<- EOF || die
-               [directories]
-               basedirlist = ${EPREFIX}/usr
-               [provide_packages]
-               pytz = False
-               dateutil = False
-               [libs]
-               system_freetype = True
-               system_qhull = True
-               [packages]
-               tests = True
-               [gui_support]
-               agg = True
-               gtk = False
-               gtkagg = False
-               macosx = False
-               pyside = False
-               pysideagg = False
-               qt4 = False
-               qt4agg = False
-               $(use_setup cairo)
-               $(use_setup gtk3)
-               $(use_setup qt5)
-               $(use_setup tk)
-               $(use_setup wxwidgets wx)
-       EOF
-
-       if use gtk3 && use cairo; then
-               echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die
-       else
-               echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die
-       fi
-}
-
-wrap_setup() {
-       local MAKEOPTS=-j1
-       local -x MPLSETUPCFG="${BUILD_DIR}"/setup.cfg
-       "$@"
-}
-
-python_compile() {
-       wrap_setup distutils-r1_python_compile
-       find "${BUILD_DIR}" -name '*.pth' -delete || die
-}
-
-python_compile_all() {
-       if use doc; then
-               cd doc || die
-
-               VARTEXFONTS="${T}"/fonts \
-               emake SPHINXOPTS= O=-Dplot_formats=png:100 html
-       fi
-}
-
-src_test() {
-       mkdir build || die
-       ln -s "${WORKDIR}/freetype-${FT_PV}" build/ || die
-       virtx distutils-r1_src_test
-}
-
-python_test() {
-       local EPYTEST_DESELECT=(
-               # broken by -Wdefault
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg6-MatplotlibDeprecationWarning]"
-               
"tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg7-MatplotlibDeprecationWarning]"
-               tests/test_testing.py::test_warn_to_fail
-               # TODO?
-               tests/test_backend_qt.py::test_fig_sigint_override
-               # unhappy about xdist
-               
tests/test_widgets.py::test_span_selector_animated_artists_callback
-               # timeout
-               tests/test_backends_interactive.py::test_webagg
-       )
-
-       case ${EPYTHON} in
-               python3.11)
-                       EPYTEST_DESELECT+=(
-                               # 
https://github.com/matplotlib/matplotlib/issues/23384
-                               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtagg', 'QT_API': 'PyQt5'}]"
-                               
"tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND':
 'qtcairo', 'QT_API': 'PyQt5'}]"
-                       )
-                       ;;
-               python3.12)
-                       EPYTEST_DESELECT+=(
-                               
tests/test_constrainedlayout.py::test_compressed1
-                       )
-                       ;;
-       esac
-
-       case "${ABI}" in
-               alpha|arm|hppa|m68k|o32|ppc|s390|sh|sparc|x86)
-                       EPYTEST_DESELECT+=(
-                               # too large for 32-bit platforms
-                               'tests/test_axes.py::test_psd_csd[png]'
-                       )
-                       ;;
-               *)
-                       ;;
-       esac
-
-       if use hppa ; then
-               EPYTEST_DESELECT+=(
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace without value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[hspace with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[function without space]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[accent without space]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[frac 
with empty parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[binom 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[genfrac with empty 
parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[sqrt 
with invalid value]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overline with empty 
parameter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[left 
with invalid delimiter]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[right 
with invalid delimiter]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses with 
sizing]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses without 
sizing]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
without parameters]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[dfrac 
with empty parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[overset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[underset without parameters]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[unknown symbol]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double superscript]'
-                       
'tests/test_mathtext.py::test_mathtext_exceptions[double subscript]'
-                       'tests/test_mathtext.py::test_mathtext_exceptions[super 
on sub without braces]'
-                       'tests/test_quiver.py::test_barbs[png]'
-                       'tests/test_quiver.py::test_barbs_pivot[png]'
-                       'tests/test_quiver.py::test_barbs_flip[png]'
-                       'tests/test_text.py::test_parse_math'
-                       'tests/test_text.py::test_parse_math_rcparams'
-               )
-       fi
-
-       # we need to rebuild mpl against bundled freetype, otherwise
-       # over 1000 tests will fail because of mismatched font rendering
-       grep -v system_freetype "${BUILD_DIR}"/setup.cfg \
-               > "${BUILD_DIR}"/test-setup.cfg || die
-       local -x MPLSETUPCFG="${BUILD_DIR}"/test-setup.cfg
-
-       esetup.py build -j1 --build-lib="${BUILD_DIR}"/test-lib
-       local -x PYTHONPATH=${BUILD_DIR}/test-lib:${PYTHONPATH}
-
-       # speed tests up
-       local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
-       nonfatal epytest --pyargs matplotlib -m "not network" \
-               -p xdist.plugin -n "$(makeopts_jobs)" || die
-}
-
-python_install_all() {
-       use doc && local HTML_DOCS=( doc/build/html/. )
-
-       distutils-r1_python_install_all
-}


Reply via email to