From 3be8faef74cb863e207124a6fccbf01ce90c0799 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 15 Sep 2023 16:50:39 +0100 Subject: gentoo auto-resync : 15:09:2023 - 16:50:39 --- dev-python/Manifest.gz | Bin 268124 -> 268117 bytes dev-python/matplotlib/Manifest | 3 + .../matplotlib/files/matplotlib-3.8.0-test.patch | 263 +++++++++++++++++ dev-python/matplotlib/matplotlib-3.8.0.ebuild | 324 +++++++++++++++++++++ dev-python/pydata-sphinx-theme/Manifest | 3 + .../pydata-sphinx-theme-0.14.0.ebuild | 48 +++ dev-python/testfixtures/Manifest | 2 + dev-python/testfixtures/testfixtures-7.2.0.ebuild | 59 ++++ 8 files changed, 702 insertions(+) create mode 100644 dev-python/matplotlib/files/matplotlib-3.8.0-test.patch create mode 100644 dev-python/matplotlib/matplotlib-3.8.0.ebuild create mode 100644 dev-python/pydata-sphinx-theme/pydata-sphinx-theme-0.14.0.ebuild create mode 100644 dev-python/testfixtures/testfixtures-7.2.0.ebuild (limited to 'dev-python') diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz index 293c875fa689..dda17dfc1344 100644 Binary files a/dev-python/Manifest.gz and b/dev-python/Manifest.gz differ diff --git a/dev-python/matplotlib/Manifest b/dev-python/matplotlib/Manifest index 17655d29c70f..828cb991d4b5 100644 --- a/dev-python/matplotlib/Manifest +++ b/dev-python/matplotlib/Manifest @@ -2,12 +2,15 @@ AUX matplotlib-3.3.3-disable-lto.patch 828 BLAKE2B 2044ef633091f27080d20e3e1b2c7 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 AUX matplotlib-3.7.2-pyparsing-3.1.patch 10045 BLAKE2B 82135479f822b030e4824ae7e6b56eaab4d1d7fc1bafd3cffa5d6f21674f60a647c9a74a53ef3b7a3c6514d66ef4a33b48949940de1b1d0916f0931f25c942cb SHA512 0cfd7e339e080bbdb70936a64835ee4bed4c3a5d76110ba8b553eaf6e2da74f5e34027a9e5471fef06f51bbffad8eea1a3d91ea37e0dcbf28d09daa34052e3fa +AUX matplotlib-3.8.0-test.patch 10695 BLAKE2B cbe1268c0b6a7765eb0ae70fb0268ca37ec87751d32b4646f96496c3b2c80c3bd344df5a02cb7edd87621cadd956d79fc6f88d342e7a68ae17b53571dc332ce0 SHA512 17a956b5c6b971adafa1fa7d07baca09cb730fdda49910a466b0097ac6106a2bc5e572488358596ae2e9db98bf860b71f983daf24421c2c418306b4bd4e58c4b 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 EBUILD matplotlib-3.7.1.ebuild 10081 BLAKE2B 20a93311d408f379c381bf4412481b558142e03e31e2d6ae506f2f20663e836d31524d91d4826515bce90607d9184999df712f7b8b533385eaba6aa2007cf634 SHA512 ade41d705e30cc712edcd1c2447d2d0c196b0ad5bc475f42719a0b79363c0b12f59d4d9db27f16572719348fea66c5177ea0da2ec677ef87d42fe0f3d034997d EBUILD matplotlib-3.7.2-r1.ebuild 10221 BLAKE2B e9e08c3c43f9fb7c3cc352f2e46e257127dd8cf83844b6c963402f6c7e0534b389bb2c5bd65086c70fafb4188f05a89b286ec49ad637a317c745963b9720fa7e SHA512 9e3a4f710da8f822eee9e457b8fcbdd4432fbb17375ffab36fcb8597552f4f633e75caaaefb44c3ac5a7d49d5aa6a6dfaaf82347839020048ddd2d877b832711 EBUILD matplotlib-3.7.2.ebuild 10290 BLAKE2B f429909f7dceaf77aa96e921e426a6fbb2d67b96f450dfebbf12a09df23d35902abe25b425eb3ea8e331d4c252a0ef74a6eae83b46d9f3ef73e302b711a5fdf6 SHA512 dba873d255fbbd4d4cde4afca61150b600466cdcf597e9a25cd1ed9c6da2fcb928b824496c8e3f315463fc3d1651b49b32983ebdfaa8c887c93949dcee7fd1e8 EBUILD matplotlib-3.7.3.ebuild 10008 BLAKE2B ca25579dc5c3f41a890c38e2889fbbbd99e51d5defabe926a172aec975415563225b84499fad053cc41f737da6d66506e1185e102259df5700985fd18420a04c SHA512 0da8c030af4744a84709f7baa7fd52052eb36731621cf20251620b2d29a9897c36ad136a2523ae03a6a1db7a81dab16f754d1120a9d4d3db3b8227d0caf54f4a +EBUILD matplotlib-3.8.0.ebuild 9913 BLAKE2B 38ffefd5c898d4d17324497937bf13c137d17b03e566010f3a31ca6b188e9259ecfa0a38259cb786d18d9c800e734754916b9ab24a53c7570eeafb95658d9bd8 SHA512 4b76a921ff756087523b78460bce9d4aec5dc843f1b09ea7539be68acdb58e2b7a02e2447c1a5fcdac2a9322a9a242b3fb93be4f6a5b884462dcc1ffe9efdffd MISC metadata.xml 1074 BLAKE2B 1d7dce116e09939378872c2eaf5153948b7e934626110eb4899d0dfc2781429522328f1c4efd2c40f829da64e19bed8f9fbd1b8907a6e74a5fd54587c1d29e5b SHA512 e344bfc813e09c24a8edfa9c062eb2a6c44535559370f508a27a2de20c6ab92aeb48bc8daf9c357178e513eb2474a33782e4098c0f3bcbb84b11f7388ef1a704 diff --git a/dev-python/matplotlib/files/matplotlib-3.8.0-test.patch b/dev-python/matplotlib/files/matplotlib-3.8.0-test.patch new file mode 100644 index 000000000000..5653ed6a697e --- /dev/null +++ b/dev-python/matplotlib/files/matplotlib-3.8.0-test.patch @@ -0,0 +1,263 @@ +From a39e8395b7f1a6388c4c0897aade3a176b7644a3 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= +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 | 9 +++++---- + 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 | 5 +++-- + 11 files changed, 25 insertions(+), 24 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 30992d5780..0a254c95ca 100644 +--- a/lib/matplotlib/tests/test_axes.py ++++ b/lib/matplotlib/tests/test_axes.py +@@ -1132,7 +1132,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 + # use former defaults to match existing baseline image +@@ -2502,7 +2502,7 @@ def test_contour_hatching(): + + @image_comparison( + ['contour_colorbar'], style='mpl20', +- tol=0.54 if platform.machine() in ('aarch64', 'ppc64le', 's390x') else 0) ++ tol=0.54) + def test_contour_colorbar(): + x, y, z = contour_dat() + +@@ -4856,7 +4856,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)) + +@@ -8709,7 +8709,8 @@ def test_zorder_and_explicit_rasterization(): + fig.savefig(b, format='pdf') + + +-@image_comparison(["preset_clip_paths.png"], remove_text=True, style="mpl20") ++@image_comparison(["preset_clip_paths.png"], remove_text=True, style="mpl20", ++ tol=0.02) + def test_preset_clip_paths(): + fig, ax = plt.subplots() + +diff --git a/lib/matplotlib/tests/test_colorbar.py b/lib/matplotlib/tests/test_colorbar.py +index 73c4dab9a8..ddae80c449 100644 +--- a/lib/matplotlib/tests/test_colorbar.py ++++ b/lib/matplotlib/tests/test_colorbar.py +@@ -236,7 +236,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 6703dfe315..da7770b7c7 100644 +--- a/lib/matplotlib/tests/test_constrainedlayout.py ++++ b/lib/matplotlib/tests/test_constrainedlayout.py +@@ -652,11 +652,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 4a32fdc6ce..e745abb9dc 100644 +--- a/lib/matplotlib/tests/test_contour.py ++++ b/lib/matplotlib/tests/test_contour.py +@@ -383,8 +383,7 @@ def test_contourf_log_extension(split_collections): + @pytest.mark.parametrize("split_collections", [False, True]) + @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(split_collections): +diff --git a/lib/matplotlib/tests/test_figure.py b/lib/matplotlib/tests/test_figure.py +index 6d6a3d772f..d6b5797b52 100644 +--- a/lib/matplotlib/tests/test_figure.py ++++ b/lib/matplotlib/tests/test_figure.py +@@ -27,7 +27,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 aeeebd136b..2e5a44a9e6 100644 +--- a/lib/matplotlib/tests/test_image.py ++++ b/lib/matplotlib/tests/test_image.py +@@ -1352,7 +1352,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 759ac6aada..fc35d42542 100644 +--- a/lib/matplotlib/tests/test_legend.py ++++ b/lib/matplotlib/tests/test_legend.py +@@ -173,7 +173,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) +@@ -182,7 +182,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) +@@ -210,7 +210,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 4f23e6969b..952c643e35 100644 +--- a/lib/matplotlib/tests/test_lines.py ++++ b/lib/matplotlib/tests/test_lines.py +@@ -187,7 +187,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 342face450..c7256586bc 100644 +--- a/lib/matplotlib/tests/test_usetex.py ++++ b/lib/matplotlib/tests/test_usetex.py +@@ -15,6 +15,7 @@ import matplotlib.pyplot as plt + pytestmark = needs_usetex + + ++@pytest.mark.skip(reason="TODO: broken") + @image_comparison( + baseline_images=['test_usetex'], + extensions=['pdf', 'png'], +@@ -65,7 +66,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*}' +@@ -163,7 +164,7 @@ except mpl.ExecutableNotFoundError: + + + @image_comparison(baseline_images=['rotation'], extensions=['eps', 'pdf', 'png', 'svg'], +- style='mpl20', tol=3.91 if _old_gs_version else 0) ++ style='mpl20', tol=30) + def test_rotation(): + mpl.rcParams['text.usetex'] = True + +-- +2.42.0 + diff --git a/dev-python/matplotlib/matplotlib-3.8.0.ebuild b/dev-python/matplotlib/matplotlib-3.8.0.ebuild new file mode 100644 index 000000000000..171e2fb74336 --- /dev/null +++ b/dev-python/matplotlib/matplotlib-3.8.0.ebuild @@ -0,0 +1,324 @@ +# 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 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.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_{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.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 + ) + + [[ ${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 +} diff --git a/dev-python/pydata-sphinx-theme/Manifest b/dev-python/pydata-sphinx-theme/Manifest index 1c9e0e5432e3..6fddbfa555b4 100644 --- a/dev-python/pydata-sphinx-theme/Manifest +++ b/dev-python/pydata-sphinx-theme/Manifest @@ -1,4 +1,7 @@ DIST pydata-sphinx-theme-0.13.3.gh.tar.gz 3370023 BLAKE2B 3d5e05222cce5c92e0ffadbf91d3bfa575a809b06c23da800e845e5b4ec622a3bfba0f5a72cc0c969b1a074e765e611c2aeb3cef77842d51529537959a952cd5 SHA512 312308838a78bf66430660ee0d7484cf20004926446111e1e8bf89fc96b38f4b8345b96856705aaa56371b31c369066a043c53d263731ccb411e7e263fc3a96a +DIST pydata-sphinx-theme-0.14.0.gh.tar.gz 2412854 BLAKE2B 92e62820270db8a395be868ad400e672b9d081069ef252420e06fe966f18a8170354dbb034d3000abf12b2462b5f0793ed25bef2262735741757a4ae38bc179f SHA512 bd75f75eca88f2da8edd197934cc6257058b0fa5699c3f0a372647fc54fcdb5c2e4dc36fbf1a7ddc96a3751118f514374345e568774911feb1297c5b762ba3e3 DIST pydata_sphinx_theme-0.13.3-py3-none-any.whl 1979378 BLAKE2B 49f871167a73ee088aca87c49f728821a8df4b79015e543e84eee7ac85e2e8a81b3419cca0c8ad14197e44c2bb2b2533a9c7e9e29384d37956c5d814904cc2b7 SHA512 59ec688677cb6d150e4741e84bfd32914f139533118a297c6691b27ea56e2e85577593951a5b3daaf9d41c7de3cb8276c479b72b12c4e8921d7418c75dfe90ff +DIST pydata_sphinx_theme-0.14.0-py3-none-any.whl 3778988 BLAKE2B c6c368bb63d3014728a9ecc26f70efd61c38282e8123494a08ec747b9717c35ef83ef79f83b7235c90f6dffe2d23da77f9743c4abfd6a71c03dfd6b272d33ef3 SHA512 3dac39d1fc16cde46a1bc98b12fdfdb53bdf4e49b4218fa75b387387756a62c5f0a4a642cb6b4fea57e8e541112644b82d1e442ce7aeee18d62e3de965b64073 EBUILD pydata-sphinx-theme-0.13.3-r1.ebuild 1246 BLAKE2B c3522591bae63a651eb1c2bd1895f3a1a825149ae61ff1d7695d2af7b515672550984dd189c0b628bf1c3fe12dbdff5eec8333916103db780ee18e953968c170 SHA512 f83fec34d1d152bfda6a6aae84426a18755801ae5b4db5ebcdf3ae072d8bf62f852c9a4ffcbdd7efc000417b3cc96828bfdce41d3e8d79a948070c12b33ab9b0 +EBUILD pydata-sphinx-theme-0.14.0.ebuild 1212 BLAKE2B a4fdf3462f34f94e1875ee6806182c25394914ab98cb1c0ab89d4a80fb7efcff0c20507c2c4d316ad211538e85bbe371714a2a8092ae75b3214368b16b58161d SHA512 769561024ecd7c8a673b0426cef1c734e3a589d5fa01bdf8bee36c1bae000e562ed9ef142e596c5f434a76b1f9c8602b6eaeba2c6b9642fb2ad5a425e43d02ec MISC metadata.xml 532 BLAKE2B 397b44fab769346cc170d5627dc663adbe29b780cbabc3d7643d5bda6ff89d6fbe6e6f55da69e93b8b20ddee16856612063b442125a16e035803e50f5aae924f SHA512 9de912fb51a153d508f3a12a3eb7ef3cd926089452bd6bfb822ae4a797d8aeb9ac68973ea7bebf3095f546dd288fdf651710ca8536f19907ac69f622ca3b0550 diff --git a/dev-python/pydata-sphinx-theme/pydata-sphinx-theme-0.14.0.ebuild b/dev-python/pydata-sphinx-theme/pydata-sphinx-theme-0.14.0.ebuild new file mode 100644 index 000000000000..a9692a406120 --- /dev/null +++ b/dev-python/pydata-sphinx-theme/pydata-sphinx-theme-0.14.0.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=standalone +PYPI_NO_NORMALIZE=1 +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Bootstrap-based Sphinx theme from the PyData community" +HOMEPAGE=" + https://github.com/pydata/pydata-sphinx-theme/ + https://pypi.org/project/pydata-sphinx-theme/ +" +SRC_URI=" + https://github.com/pydata/pydata-sphinx-theme/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz + $(pypi_wheel_url) +" + +LICENSE="BSD-with-disclosure" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/accessible-pygments[${PYTHON_USEDEP}] + dev-python/Babel[${PYTHON_USEDEP}] + dev-python/beautifulsoup4[${PYTHON_USEDEP}] + dev-python/docutils[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/pygments[${PYTHON_USEDEP}] + >=dev-python/sphinx-5[${PYTHON_USEDEP}] + dev-python/typing-extensions[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/pytest-regressions[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_compile() { + distutils_wheel_install "${BUILD_DIR}/install" \ + "${DISTDIR}/$(pypi_wheel_name)" +} diff --git a/dev-python/testfixtures/Manifest b/dev-python/testfixtures/Manifest index 47e083f1aaad..0b5b196ff6ae 100644 --- a/dev-python/testfixtures/Manifest +++ b/dev-python/testfixtures/Manifest @@ -1,3 +1,5 @@ DIST testfixtures-7.1.0.tar.gz 133026 BLAKE2B 0fbb25e97c06cdd7c94be26c56e96a70847493f71b2f0adc58f333fe2ab930a9bfb6de154a1a23a5cb2cbb1e5e87cb6d9ac95433d357de0689296e33c04078c3 SHA512 d1b2b3ca9674865a45be254a41777c2cba42d4ac3de5d77420d6d33416bfde7ba6a8ca39033cd2c217b0eb81ef5c97bf5b197dd047f9a337bbe1a3da91d9c0ef +DIST testfixtures-7.2.0.tar.gz 133487 BLAKE2B f5c4ff354d1e2b06a28a947fffe8622e51ed680a29ed6fa3ff5e7e851c21e39ed432d6dc0f5f8c83c6541b0054ca3b2afce960f4a00e1e70619a29f29e03b5ae SHA512 b1b5fdd45509e60db8590ec454659efa42c87f75de9187286d820b5643388f83919ccf3763ec223018a5a5b48821041494982af2016c41e11fe30cabdb909223 EBUILD testfixtures-7.1.0.ebuild 1596 BLAKE2B c28edd68c850eab6a75c8c59bd94b69130068d2174bd525266d835b41d5c03a99699fe9ae9b1340cc31ac643bec747ca5e47ec03f7d5256984cbe86fa69c28a2 SHA512 d8f9cd7a6b98b1a4c9e1589e9f5d19fba7ac197b40048e385b93bb5684b01fecc42838c8281a1c48312815a02715cd464255a964cf9baa6c0dca50d6518c5841 +EBUILD testfixtures-7.2.0.ebuild 1559 BLAKE2B 14941bbd03340eb309b0fe7f1a0a55a7671eb393c79e5fee0959ba5d3bffa2cc4ccbd077943f454e65366e4594cb6753d086bb5b40d98cc4da2e4e40d23a8a7f SHA512 2b46a1d9c7c05a43cf19e9d19c539e20450a066c51397b2c2a1b28f876b129ac5909a729750b334377374b4f066c513307d70ade2bd4022614dd4ae3763df2a0 MISC metadata.xml 416 BLAKE2B 19f5d275458874364d2719ecf363f7a5627f9e612b7d3a3f2c075e306063ed899dec0b2e59ea5e5d7ba65209c9a6d91045d80b2fe50e74278e61247d0426b940 SHA512 8a5776feee4d6758da67dc0b413e2d0ddc0c843075ca96c9b44adace1f7669a6abf820c5b73b86652b27e9feed19a4a30e1004a021b24bda0829b5690a1687ec diff --git a/dev-python/testfixtures/testfixtures-7.2.0.ebuild b/dev-python/testfixtures/testfixtures-7.2.0.ebuild new file mode 100644 index 000000000000..b5276e04b446 --- /dev/null +++ b/dev-python/testfixtures/testfixtures-7.2.0.ebuild @@ -0,0 +1,59 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{10..12} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A collection of helpers and mock objects for unit tests and doc tests" +HOMEPAGE=" + https://pypi.org/project/testfixtures/ + https://github.com/Simplistix/testfixtures/ +" + +SLOT="0" +LICENSE="MIT" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~amd64-linux ~x86-linux" + +BDEPEND=" + test? ( + $(python_gen_impl_dep sqlite) + dev-python/django[${PYTHON_USEDEP}] + dev-python/pytest-django[${PYTHON_USEDEP}] + dev-python/sybil[${PYTHON_USEDEP}] + >=dev-python/twisted-18[${PYTHON_USEDEP}] + dev-python/zope-component[${PYTHON_USEDEP}] + ) +" + +distutils_enable_sphinx docs \ + dev-python/furo +distutils_enable_tests pytest + +python_test() { + local -x PYTHONPATH="." + local -x DJANGO_SETTINGS_MODULE=testfixtures.tests.test_django.settings + + local EPYTEST_DESELECT=( + # TODO + testfixtures/tests/test_shouldwarn.py::ShouldWarnTests::test_filter_missing + testfixtures/tests/test_shouldwarn.py::ShouldWarnTests::test_filter_present + ) + + case ${EPYTHON} in + python3.12) + EPYTEST_DESELECT+=( + # https://github.com/simplistix/testfixtures/issues/183 + docs/comparing.txt::line:790,column:1 + docs/comparing.txt::line:829,column:1 + testfixtures/tests/test_tempdirectory.py::TempDirectoryTests::test_as_path_relative_sequence + testfixtures/tests/test_tempdirectory.py::TempDirectoryTests::test_as_path_relative_string + ) + ;; + esac + + epytest +} -- cgit v1.2.3