diff options
Diffstat (limited to 'dev-python/matplotlib')
-rw-r--r-- | dev-python/matplotlib/Manifest | 3 | ||||
-rw-r--r-- | dev-python/matplotlib/files/matplotlib-3.5.2-test.patch | 261 | ||||
-rw-r--r-- | dev-python/matplotlib/matplotlib-3.5.3.ebuild | 283 |
3 files changed, 0 insertions, 547 deletions
diff --git a/dev-python/matplotlib/Manifest b/dev-python/matplotlib/Manifest index d5eb3ba65d08..6f0655831435 100644 --- a/dev-python/matplotlib/Manifest +++ b/dev-python/matplotlib/Manifest @@ -1,12 +1,9 @@ AUX matplotlib-3.3.3-disable-lto.patch 828 BLAKE2B 2044ef633091f27080d20e3e1b2c74605e13e99c9d044e97accde3b0a7946ef656f10c9bf5c036745f8ec85380e48cfd5e3d6fe8a023fa60e408d270f45a1da5 SHA512 81562749756b0415c6ce333d3cbbc197306dc9c2c425ec761767271c974badd13fe9a497c74231cd1bf9347f03ef0593bceff9b597289a8328e7c0211c7047ed -AUX matplotlib-3.5.2-test.patch 10981 BLAKE2B cd7406a1452b22d5782ef293b10e1fbed819c0fd832a7e4d5104020250f207bb87186a95815e2357379b2dc3bc87ae2f37387c7c423bdf41122ec330712ad53f SHA512 551d3ec3fb2bb14ccecee8056d78511e9b739af8b00f41d60be9a840b661725ff2eb4b22d72d8a9ccafa22e61c99db8dff216d7fb8ce537446a95056abea4d93 AUX matplotlib-3.7.1-test.patch 9910 BLAKE2B 6efcec53fa1b0001ee6121233fcf3718dce43b5f1d1b41401452c0193269427735e39400926ee2f94ee2c7a263c687fae66a9686563217b317afa3511f7bd29a SHA512 5f0661a1ac8305e45cb8de68d5b1a094c64002dac5d34bb937955d2e181721023eaba6ecea9fdf2a78a6ffc3cf29f6f640a5ae601ae6a0c6e355fe67e7393b07 AUX matplotlib-3.7.2-macOS_no-Cocoa.patch 565 BLAKE2B def5ba43c30792af7cbad5204eaa7c0cae24b7acf0f8e7832709af39dc1dd91998c034927ada344d19a27d427090b596304a4c33224c441bba863c8603807c65 SHA512 334661cf5b74c7ee8188bc519e13501daa75a544b5290bc03d4edc7c312f4a5499c2487ade43c0bb9883a02fbf9d90a163b2bbcc2f396bf648522527a8b057b4 DIST freetype-2.6.1.tar.gz 2302080 BLAKE2B 6a5fb98e5fa6cf4b7d7533ad44e364227d8c2f7dded4c552d6e22e204c32b7858f20d41d1e809ecdad6e5353d6cec81bea0e0b06a4533363a41ecab83ce3f7ca SHA512 ff2daed64d712737085924c50e75862fafbcbb24eef6d72dac9eaae63bb656d7245397fd828f5d3e47ac847f7ff83d73dedfdd61fde1f7d6e0f0cdeb49bcf83b -DIST matplotlib-3.5.3.tar.gz 35236343 BLAKE2B 0d3f4e15295afe2c737e441325206e77c520a514bc87ab1eebef624f89896a2cf609e8d57b8fa8ef28ecf8c836e20cb296adaa95f81dbfcf3f2a45631e3dd02c SHA512 f431d3046e9c5fbe5d44a16a762e9a178ba34380974964660eaf3681671178866a63b3bad9aad8d3ad423926f7db2965d514e9b1489e3a824a4532a01f0e0670 DIST matplotlib-3.7.1.tar.gz 38003777 BLAKE2B a387d23b58e09011cd3ae1f8c0ebf5dd8c04c8c15c1f6453c92cd22b2439fcabcf384f39ae8d2d2c6b7d2645817cd57a60856a4c05728e8f8aff9dd163af5083 SHA512 d7db4213d5b38eba779ba06ffaa8e67a435192e4a8cf62f8e1cd4b8079cd257b2e83cb79926df012b7084c785c0ce8b03275035f68cfcf0a36b0dda7322f2e67 DIST matplotlib-3.7.2.tar.gz 38095843 BLAKE2B e26e78ce3a27604ff3d0f4d280798715b21a89104908e4fa66f96e32152d61f4f640e02e1eb2327563c71f3391c03716b5f6a1e769a07725d02c042b21973a4a SHA512 3ddb223c869c01cf71ab65a628a3c996eed1ff8b2375c02e3158a5750652a5d8277a55706e50890c15c14c7a104db01f01b01ca8964f85b6ffec104fc273872d -EBUILD matplotlib-3.5.3.ebuild 7426 BLAKE2B 40a8f6c1f9b97a4c2a8be791b64cfd619b8d4e4e519708efbc6bb00c3722898c5ed1b4dd14ef900dff120b6f18a332ae9931aaedce8970410e0b1ca20875278e SHA512 24ab261e2c1dc3e1698c0b010cafba6e325b9db73a04c35b1671741d30bb25ec7842731f4cdd8e0720378c00c498cd60115282eaed5bb42b0c459530d3d8a104 EBUILD matplotlib-3.7.1.ebuild 7442 BLAKE2B 32cd3e2210c19526807256524101406177abc3b7fdd3d58488c6b09dc374fdefac7305b5763661dde27051f35891e5f17aa463f54446f2f66170481cde936dd8 SHA512 c39fed8519112a44efc7ad9e1bab3617aecf609814216fdd58862df36715511efe32d1fb3e1265ebcdbcd6a2229c66eba979a024fb208577f86881909c0e449a EBUILD matplotlib-3.7.2.ebuild 7655 BLAKE2B 9f5902fadb228227b10ab24d652fc78340a20005f64f605cda604f0862334b4f6bb54406e8a2d0c0a8c545d416cdae42c0f0d5163f4f052c11bdaed164945900 SHA512 9f66e6c9c9aabd64d774be795d5cb366c3325bd01ce61957aa65bec7dc0eb6cccdd1af831404437c72aaf1ad24b7bed4b7713b4807f769eced10fbd4b7d68bb0 MISC metadata.xml 1074 BLAKE2B 1d7dce116e09939378872c2eaf5153948b7e934626110eb4899d0dfc2781429522328f1c4efd2c40f829da64e19bed8f9fbd1b8907a6e74a5fd54587c1d29e5b SHA512 e344bfc813e09c24a8edfa9c062eb2a6c44535559370f508a27a2de20c6ab92aeb48bc8daf9c357178e513eb2474a33782e4098c0f3bcbb84b11f7388ef1a704 diff --git a/dev-python/matplotlib/files/matplotlib-3.5.2-test.patch b/dev-python/matplotlib/files/matplotlib-3.5.2-test.patch deleted file mode 100644 index 4b54480c5adf..000000000000 --- a/dev-python/matplotlib/files/matplotlib-3.5.2-test.patch +++ /dev/null @@ -1,261 +0,0 @@ -From ea4bae5e68e3065ca159ea309a0f3325a06e7f35 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Fri, 26 Mar 2021 13:42:49 +0100 -Subject: [PATCH] Increase image comparison limits - -Most of the tests require exact match which apparently doesn't always -happen in non-pristine environments. Some of them have very big -differences due to texlive font rendering changes. ---- - lib/matplotlib/tests/test_arrow_patches.py | 6 +++--- - lib/matplotlib/tests/test_axes.py | 4 ++-- - lib/matplotlib/tests/test_backend_pgf.py | 2 +- - lib/matplotlib/tests/test_colorbar.py | 2 +- - lib/matplotlib/tests/test_contour.py | 2 +- - lib/matplotlib/tests/test_figure.py | 5 +++-- - lib/matplotlib/tests/test_image.py | 2 +- - lib/matplotlib/tests/test_legend.py | 6 +++--- - lib/matplotlib/tests/test_lines.py | 3 ++- - lib/matplotlib/tests/test_streamplot.py | 3 ++- - lib/matplotlib/tests/test_units.py | 4 ++-- - lib/matplotlib/tests/test_usetex.py | 1 + - lib/mpl_toolkits/tests/test_axes_grid1.py | 2 +- - 13 files changed, 23 insertions(+), 19 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 eb4c34382b..cca73a23f9 100644 ---- a/lib/matplotlib/tests/test_axes.py -+++ b/lib/matplotlib/tests/test_axes.py -@@ -918,7 +918,7 @@ def test_imshow(): - ax.imshow("r", data=data) - - --@image_comparison(['imshow_clip'], style='mpl20') -+@image_comparison(['imshow_clip'], style='mpl20', tol=1.24) - def test_imshow_clip(): - # As originally reported by Gellule Xg <gellule.xg@free.fr> - # use former defaults to match existing baseline image -@@ -4231,7 +4231,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_backend_pgf.py b/lib/matplotlib/tests/test_backend_pgf.py -index 9b5b0b28ee..a374be0333 100644 ---- a/lib/matplotlib/tests/test_backend_pgf.py -+++ b/lib/matplotlib/tests/test_backend_pgf.py -@@ -80,7 +80,7 @@ def test_common_texification(plain_text, escaped_text): - # test compiling a figure to pdf with xelatex - @needs_xelatex - @pytest.mark.backend('pgf') --@image_comparison(['pgf_xelatex.pdf'], style='default') -+@image_comparison(['pgf_xelatex.pdf'], style='default', tol=0.8) - def test_xelatex(): - rc_xelatex = {'font.family': 'serif', - 'pgf.rcfonts': False} -diff --git a/lib/matplotlib/tests/test_colorbar.py b/lib/matplotlib/tests/test_colorbar.py -index 304056f6d1..9934bac550 100644 ---- a/lib/matplotlib/tests/test_colorbar.py -+++ b/lib/matplotlib/tests/test_colorbar.py -@@ -218,7 +218,7 @@ def test_colorbar_single_ax_panchor_false(): - plt.colorbar(panchor=False) - - --@image_comparison(['contour_colorbar.png'], remove_text=True) -+@image_comparison(['contour_colorbar.png'], remove_text=True, 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_contour.py b/lib/matplotlib/tests/test_contour.py -index 10fb011166..f49fb25dc8 100644 ---- a/lib/matplotlib/tests/test_contour.py -+++ b/lib/matplotlib/tests/test_contour.py -@@ -345,7 +345,7 @@ def test_contourf_log_extension(): - - - @image_comparison(['contour_addlines.png'], -- remove_text=True, style='mpl20', tol=0.03) -+ remove_text=True, style='mpl20', tol=0.1) - # 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 1e076bd64f..11c2668d33 100644 ---- a/lib/matplotlib/tests/test_figure.py -+++ b/lib/matplotlib/tests/test_figure.py -@@ -23,7 +23,7 @@ import matplotlib.gridspec as gridspec - - - @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(tight_layout=True) - gs = gridspec.GridSpec(3, 3) -@@ -1124,7 +1124,8 @@ def test_subfigure_tightbbox(): - - @image_comparison(['test_subfigure_ss.png'], style='mpl20', - savefig_kwarg={'facecolor': 'teal'}, -- remove_text=False) -+ remove_text=False, -+ tol=0.013) - def test_subfigure_ss(): - # test assigning the subfigure via subplotspec - np.random.seed(19680801) -diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py -index 719b190578..ee2263a88e 100644 ---- a/lib/matplotlib/tests/test_image.py -+++ b/lib/matplotlib/tests/test_image.py -@@ -1324,7 +1324,7 @@ def test_nonuniform_and_pcolor(): - - - @image_comparison(["rgba_antialias.png"], style="mpl20", -- remove_text=True) -+ remove_text=True, tol=0.005) - 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 fe8a8dd5f6..43fbda8ab0 100644 ---- a/lib/matplotlib/tests/test_legend.py -+++ b/lib/matplotlib/tests/test_legend.py -@@ -102,7 +102,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) -@@ -111,7 +111,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) -@@ -137,7 +137,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 f6917a134b..4a14abb74d 100644 ---- a/lib/matplotlib/tests/test_lines.py -+++ b/lib/matplotlib/tests/test_lines.py -@@ -162,7 +162,8 @@ def test_set_drawstyle(): - assert len(line.get_path().vertices) == len(x) - - --@image_comparison(['line_collection_dashes'], remove_text=True, style='mpl20') -+@image_comparison(['line_collection_dashes'], remove_text=True, style='mpl20', -+ tol=0.58) - def test_set_line_coll_dash_image(): - fig, ax = plt.subplots() - np.random.seed(0) -diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py -index c8824feb06..081e8c0559 100644 ---- a/lib/matplotlib/tests/test_streamplot.py -+++ b/lib/matplotlib/tests/test_streamplot.py -@@ -34,7 +34,8 @@ def test_startpoints(): - plt.plot(start_x, start_y, 'ok') - - --@image_comparison(['streamplot_colormap'], remove_text=True, style='mpl20') -+@image_comparison(['streamplot_colormap'], remove_text=True, style='mpl20', -+ tol=0.002) - def test_colormap(): - X, Y, U, V = velocity_field() - plt.streamplot(X, Y, U, V, color=U, density=0.6, linewidth=2, -diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py -index a6f6b44c97..ab5ad8b5cf 100644 ---- a/lib/matplotlib/tests/test_units.py -+++ b/lib/matplotlib/tests/test_units.py -@@ -76,7 +76,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'], remove_text=False, 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 -@@ -103,7 +103,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 12557cf847..25b65ead67 100644 ---- a/lib/matplotlib/tests/test_usetex.py -+++ b/lib/matplotlib/tests/test_usetex.py -@@ -11,6 +11,7 @@ if not mpl.checkdep_usetex(True): - pytestmark = pytest.mark.skip('Missing TeX of Ghostscript or dvipng') - - -+@pytest.mark.skip(reason="TODO: broken") - @image_comparison( - baseline_images=['test_usetex'], - extensions=['pdf', 'png'], -diff --git a/lib/mpl_toolkits/tests/test_axes_grid1.py b/lib/mpl_toolkits/tests/test_axes_grid1.py -index f8902ca72f..323579b8b6 100644 ---- a/lib/mpl_toolkits/tests/test_axes_grid1.py -+++ b/lib/mpl_toolkits/tests/test_axes_grid1.py -@@ -336,7 +336,7 @@ def test_zooming_with_inverted_axes(): - - - @image_comparison(['anchored_direction_arrows.png'], -- tol=0 if platform.machine() == 'x86_64' else 0.01) -+ tol=0.02) - def test_anchored_direction_arrows(): - fig, ax = plt.subplots() - ax.imshow(np.zeros((10, 10)), interpolation='nearest') --- -2.35.1 - diff --git a/dev-python/matplotlib/matplotlib-3.5.3.ebuild b/dev-python/matplotlib/matplotlib-3.5.3.ebuild deleted file mode 100644 index a765b2f7d83c..000000000000 --- a/dev-python/matplotlib/matplotlib-3.5.3.ebuild +++ /dev/null @@ -1,283 +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_{9..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="amd64 arm arm64 hppa ~ia64 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/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.18.2[${PYTHON_USEDEP}] - >=dev-python/packaging-20.0[${PYTHON_USEDEP}] - >=dev-python/pillow-7.1.1[jpeg,${PYTHON_USEDEP}] - >=dev-python/pyparsing-2.2.1[${PYTHON_USEDEP}] - >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}] - >=dev-python/pytz-2019.3[${PYTHON_USEDEP}] - >=dev-python/six-1.14.0[${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/setuptools-scm[${PYTHON_USEDEP}] - dev-python/setuptools_scm_git_archive[${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/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}] - >=dev-python/tornado-6.0.4[${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 - -# cat > lib/${PN}/externals/six.py <<-EOF -# from __future__ import absolute_import -# from six import * -# EOF - - # 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.5.2-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 - ) - [[ ${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'}]" - ) - - # 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 -} |