From 0ca5c37e6dfc3b72546523dd0dd9d140c5cf8d63 Mon Sep 17 00:00:00 2001 From: tigro Date: Sun, 29 Dec 2024 23:03:58 +0300 Subject: [PATCH] import python-matplotlib-3.9.1-6.el10 --- .gitignore | 4 +- .python-matplotlib.metadata | 4 +- .../0001-matplotlibrc-path-search-fix.patch | 14 +- .../0002-Unpin-NumPy-build-requirement.patch | 14 +- ...sion-to-2.13.1-and-update-tolerances.patch | 141 +++++++----------- ...windows-implementation-on-32-bit-x86.patch | 8 +- ...e-some-tolerances-for-non-x86-arches.patch | 26 ---- SOURCES/mplsetup.cfg | 8 - SPECS/python-matplotlib.spec | 114 +++++--------- 9 files changed, 111 insertions(+), 222 deletions(-) delete mode 100644 SOURCES/0005-TST-Increase-some-tolerances-for-non-x86-arches.patch delete mode 100644 SOURCES/mplsetup.cfg diff --git a/.gitignore b/.gitignore index 7c273cd..9d721a3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,2 @@ -SOURCES/matplotlib-3.8.4.tar.gz -SOURCES/matplotlib-3.8.3-with-freetype-2.13.1.tar.gz +SOURCES/matplotlib-3.9.1-with-freetype-2.13.1.tar.gz +SOURCES/matplotlib-3.9.1.tar.gz diff --git a/.python-matplotlib.metadata b/.python-matplotlib.metadata index 1003f66..761e8db 100644 --- a/.python-matplotlib.metadata +++ b/.python-matplotlib.metadata @@ -1,2 +1,2 @@ -1e396f85cbd275522fa43fc41c1320cba421337e SOURCES/matplotlib-3.8.4.tar.gz -46dde66f5d993e2b9eb22821372618fadee0faec SOURCES/matplotlib-3.8.3-with-freetype-2.13.1.tar.gz +a5dbd114859b0bd40258aa81c76d372d42921591 SOURCES/matplotlib-3.9.1-with-freetype-2.13.1.tar.gz +b98c9e75d53c85a5c0340adc87da0a405966837f SOURCES/matplotlib-3.9.1.tar.gz diff --git a/SOURCES/0001-matplotlibrc-path-search-fix.patch b/SOURCES/0001-matplotlibrc-path-search-fix.patch index 170cd01..5ba6270 100644 --- a/SOURCES/0001-matplotlibrc-path-search-fix.patch +++ b/SOURCES/0001-matplotlibrc-path-search-fix.patch @@ -1,7 +1,7 @@ -From ce0e47a95ec43750080afa889b35ec26106a6a47 Mon Sep 17 00:00:00 2001 +From 7aa7b4d240236c0660be400a7a9ef7d5837e6d47 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Wed, 27 Sep 2017 19:35:59 -0400 -Subject: [PATCH 1/5] matplotlibrc path search fix +Subject: [PATCH 1/4] matplotlibrc path search fix Signed-off-by: Elliott Sales de Andrade --- @@ -9,10 +9,10 @@ Signed-off-by: Elliott Sales de Andrade 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py -index 353406832c..26dd9372e1 100644 +index 9e9325a27d..346e3d3454 100644 --- a/lib/matplotlib/__init__.py +++ b/lib/matplotlib/__init__.py -@@ -582,7 +582,8 @@ def get_cachedir(): +@@ -586,7 +586,8 @@ def get_cachedir(): @_logged_cached('matplotlib data path: %s') def get_data_path(): """Return the path to Matplotlib data.""" @@ -22,7 +22,7 @@ index 353406832c..26dd9372e1 100644 def matplotlib_fname(): -@@ -602,6 +603,7 @@ def matplotlib_fname(): +@@ -606,6 +607,7 @@ def matplotlib_fname(): is not defined) - On other platforms, - ``$HOME/.matplotlib/matplotlibrc`` if ``$HOME`` is defined @@ -30,7 +30,7 @@ index 353406832c..26dd9372e1 100644 - Lastly, it looks in ``$MATPLOTLIBDATA/matplotlibrc``, which should always exist. """ -@@ -620,6 +622,7 @@ def matplotlib_fname(): +@@ -624,6 +626,7 @@ def matplotlib_fname(): yield matplotlibrc yield os.path.join(matplotlibrc, 'matplotlibrc') yield os.path.join(get_configdir(), 'matplotlibrc') @@ -39,5 +39,5 @@ index 353406832c..26dd9372e1 100644 for fname in gen_candidates(): -- -2.43.0 +2.44.0 diff --git a/SOURCES/0002-Unpin-NumPy-build-requirement.patch b/SOURCES/0002-Unpin-NumPy-build-requirement.patch index f471bf4..0f536ac 100644 --- a/SOURCES/0002-Unpin-NumPy-build-requirement.patch +++ b/SOURCES/0002-Unpin-NumPy-build-requirement.patch @@ -1,7 +1,7 @@ -From 05484ecf85b7f9ca67da454a4147098023626a81 Mon Sep 17 00:00:00 2001 +From 6caae8127c121be0ad36e0e7b47518519543dffd Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Fri, 11 Aug 2023 02:36:06 -0400 -Subject: [PATCH 2/5] Unpin NumPy build requirement +Subject: [PATCH 2/4] Unpin NumPy build requirement This is so high simply to take advantage of the new backwards-compatibility guarantee in NumPy 1.25, but Fedora will never @@ -13,12 +13,12 @@ Signed-off-by: Elliott Sales de Andrade 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/pyproject.toml b/pyproject.toml -index 44f56d8cc1..33ce124527 100644 +index fe75b325dc..4c34fa395f 100644 --- a/pyproject.toml +++ b/pyproject.toml -@@ -5,18 +5,7 @@ requires = [ +@@ -75,18 +75,7 @@ requires = [ + "meson-python>=0.13.1", "pybind11>=2.6", - "setuptools>=64", "setuptools_scm>=7", - - # Comments on numpy build requirement range: @@ -35,7 +35,7 @@ index 44f56d8cc1..33ce124527 100644 + "numpy", ] - [tool.setuptools_scm] + [tool.meson-python.args] -- -2.43.0 +2.44.0 diff --git a/SOURCES/0003-Set-FreeType-version-to-2.13.1-and-update-tolerances.patch b/SOURCES/0003-Set-FreeType-version-to-2.13.1-and-update-tolerances.patch index abbe775..d8a3a14 100644 --- a/SOURCES/0003-Set-FreeType-version-to-2.13.1-and-update-tolerances.patch +++ b/SOURCES/0003-Set-FreeType-version-to-2.13.1-and-update-tolerances.patch @@ -1,38 +1,51 @@ -From 1bbba2045f0722ccd97513037d49f2f656e349df Mon Sep 17 00:00:00 2001 +From d2ce17b7096e9f83f9ba4ac37052fe5d2e07f223 Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Fri, 14 Feb 2020 06:05:42 -0500 -Subject: [PATCH 3/5] Set FreeType version to 2.13.1 and update tolerances +Subject: [PATCH 3/4] Set FreeType version to 2.13.1 and update tolerances Signed-off-by: Elliott Sales de Andrade --- - lib/matplotlib/__init__.py | 2 +- - lib/matplotlib/tests/test_axes.py | 4 ++-- - lib/matplotlib/tests/test_backend_pgf.py | 2 +- - .../tests/test_constrainedlayout.py | 10 ++++----- - lib/matplotlib/tests/test_legend.py | 4 ++-- - lib/matplotlib/tests/test_polar.py | 2 +- - lib/matplotlib/tests/test_tightlayout.py | 10 ++++----- - setupext.py | 21 +++++++++++++++++-- - 8 files changed, 36 insertions(+), 19 deletions(-) + extern/meson.build | 2 +- + lib/matplotlib/__init__.py | 2 +- + lib/matplotlib/tests/test_axes.py | 4 ++-- + lib/matplotlib/tests/test_backend_pgf.py | 2 +- + lib/matplotlib/tests/test_constrainedlayout.py | 10 +++++----- + lib/matplotlib/tests/test_legend.py | 4 ++-- + lib/matplotlib/tests/test_polar.py | 2 +- + lib/matplotlib/tests/test_tightlayout.py | 10 +++++----- + 8 files changed, 18 insertions(+), 18 deletions(-) +diff --git a/extern/meson.build b/extern/meson.build +index 662feb7872..df42b908af 100644 +--- a/extern/meson.build ++++ b/extern/meson.build +@@ -14,7 +14,7 @@ else + # must match the value in `lib/matplotlib.__init__.py`. Also update the docs + # in `docs/devel/dependencies.rst`. Bump the cache key in + # `.circleci/config.yml` when changing requirements. +- LOCAL_FREETYPE_VERSION = '2.6.1' ++ LOCAL_FREETYPE_VERSION = '2.13.1' + + freetype_proj = subproject( + f'freetype-@LOCAL_FREETYPE_VERSION@', diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py -index 26dd9372e1..81b77d455f 100644 +index 346e3d3454..ebf5818417 100644 --- a/lib/matplotlib/__init__.py +++ b/lib/matplotlib/__init__.py -@@ -1307,7 +1307,7 @@ def _val_or_rc(val, rc_name): +@@ -1313,7 +1313,7 @@ def _val_or_rc(val, rc_name): def _init_tests(): - # The version of FreeType to install locally for running the - # tests. This must match the value in `setupext.py` + # The version of FreeType to install locally for running the tests. This must match + # the value in `meson.build`. - LOCAL_FREETYPE_VERSION = '2.6.1' + LOCAL_FREETYPE_VERSION = '2.13.1' from matplotlib import ft2font if (ft2font.__freetype_version__ != LOCAL_FREETYPE_VERSION or diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py -index 0372747009..9cee2dbd41 100644 +index 0ed5a11c13..ee220f1854 100644 --- a/lib/matplotlib/tests/test_axes.py +++ b/lib/matplotlib/tests/test_axes.py -@@ -7642,7 +7642,7 @@ def test_normal_axes(): +@@ -7714,7 +7714,7 @@ def test_normal_axes(): ] for nn, b in enumerate(bbaxis): targetbb = mtransforms.Bbox.from_bounds(*target[nn]) @@ -41,7 +54,7 @@ index 0372747009..9cee2dbd41 100644 target = [ [150.0, 119.999, 930.0, 11.111], -@@ -7660,7 +7660,7 @@ def test_normal_axes(): +@@ -7732,7 +7732,7 @@ def test_normal_axes(): target = [85.5138, 75.88888, 1021.11, 1017.11] targetbb = mtransforms.Bbox.from_bounds(*target) @@ -64,10 +77,10 @@ index 8a83515f16..26bc9d6c48 100644 mpl.rcParams.update({'font.family': 'serif', 'pgf.rcfonts': False}) Y, X = np.ogrid[-1:1:40j, -1:1:40j] diff --git a/lib/matplotlib/tests/test_constrainedlayout.py b/lib/matplotlib/tests/test_constrainedlayout.py -index 6703dfe315..ea6a8d9630 100644 +index 4dc4d9501e..47a4e80bb5 100644 --- a/lib/matplotlib/tests/test_constrainedlayout.py +++ b/lib/matplotlib/tests/test_constrainedlayout.py -@@ -432,7 +432,7 @@ def test_hidden_axes(): +@@ -435,7 +435,7 @@ def test_hidden_axes(): extents1 = np.copy(axs[0, 0].get_position().extents) np.testing.assert_allclose( @@ -76,7 +89,7 @@ index 6703dfe315..ea6a8d9630 100644 def test_colorbar_align(): -@@ -638,9 +638,9 @@ def test_compressed1(): +@@ -641,9 +641,9 @@ def test_compressed1(): fig.draw_without_rendering() pos = axs[0, 0].get_position() @@ -88,7 +101,7 @@ index 6703dfe315..ea6a8d9630 100644 # wider than tall fig, axs = plt.subplots(2, 3, layout='compressed', -@@ -653,10 +653,10 @@ def test_compressed1(): +@@ -656,10 +656,10 @@ def test_compressed1(): pos = axs[0, 0].get_position() np.testing.assert_allclose(pos.x0, 0.06195, atol=1e-3) @@ -102,10 +115,10 @@ index 6703dfe315..ea6a8d9630 100644 @pytest.mark.parametrize('arg, state', [ diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py -index 759ac6aada..8140d4d69f 100644 +index 0353f1408b..f5b341daaa 100644 --- a/lib/matplotlib/tests/test_legend.py +++ b/lib/matplotlib/tests/test_legend.py -@@ -516,9 +516,9 @@ def test_figure_legend_outside(): +@@ -520,9 +520,9 @@ def test_figure_legend_outside(): fig.draw_without_rendering() assert_allclose(axs.get_window_extent().extents, @@ -116,9 +129,9 @@ index 759ac6aada..8140d4d69f 100644 + legbb[nn], rtol=1) - @image_comparison(['legend_stackplot.png']) + @image_comparison(['legend_stackplot.png'], diff --git a/lib/matplotlib/tests/test_polar.py b/lib/matplotlib/tests/test_polar.py -index 9a1c6be6fc..7df88e96b4 100644 +index 6b3c08d2eb..5160112e37 100644 --- a/lib/matplotlib/tests/test_polar.py +++ b/lib/matplotlib/tests/test_polar.py @@ -321,7 +321,7 @@ def test_get_tightbbox_polar(): @@ -131,72 +144,28 @@ index 9a1c6be6fc..7df88e96b4 100644 @check_figures_equal(extensions=["png"]) diff --git a/lib/matplotlib/tests/test_tightlayout.py b/lib/matplotlib/tests/test_tightlayout.py -index 968f0da7b5..89caa81b98 100644 +index 9c654f4d1f..9678e34a80 100644 --- a/lib/matplotlib/tests/test_tightlayout.py +++ b/lib/matplotlib/tests/test_tightlayout.py -@@ -173,12 +173,12 @@ def test_outward_ticks(): - plt.tight_layout() +@@ -174,13 +174,13 @@ def test_outward_ticks(): # These values were obtained after visual checking that they correspond # to a tight layouting that did take the ticks into account. -- ans = [[[0.091, 0.607], [0.433, 0.933]], -- [[0.579, 0.607], [0.922, 0.933]], -- [[0.091, 0.140], [0.433, 0.466]], -- [[0.579, 0.140], [0.922, 0.466]]] -+ ans = [[[0.09, 0.61], [0.43, 0.93]], -+ [[0.58, 0.61], [0.92, 0.93]], -+ [[0.09, 0.14], [0.43, 0.47]], -+ [[0.58, 0.14], [0.92, 0.47]]] + expected = [ +- [[0.091, 0.607], [0.433, 0.933]], +- [[0.579, 0.607], [0.922, 0.933]], +- [[0.091, 0.140], [0.433, 0.466]], +- [[0.579, 0.140], [0.922, 0.466]], ++ [[0.09, 0.61], [0.43, 0.93]], ++ [[0.58, 0.61], [0.92, 0.93]], ++ [[0.09, 0.14], [0.43, 0.47]], ++ [[0.58, 0.14], [0.92, 0.47]], + ] for nn, ax in enumerate(fig.axes): - assert_array_equal(np.round(ax.get_position().get_points(), 3), + assert_array_equal(np.round(ax.get_position().get_points(), 2), - ans[nn]) - - -diff --git a/setupext.py b/setupext.py -index 9f78d88c87..6dc740e8f7 100644 ---- a/setupext.py -+++ b/setupext.py -@@ -176,14 +176,30 @@ _freetype_hashes = { - '955e17244e9b38adb0c98df66abb50467312e6bb70eac07e49ce6bd1a20e809a', - '2.10.1': - '3a60d391fd579440561bf0e7f31af2222bc610ad6ce4d9d7bd2165bca8669110', -+ '2.10.2': -+ 'e09aa914e4f7a5d723ac381420949c55c0b90b15744adce5d1406046022186ab', -+ '2.10.3': -+ '9dfb4e11efd6e460a87b1991a64bc69344ee7dc219d9b29e7faabc1c168ce8b0', -+ '2.10.4': -+ '5eab795ebb23ac77001cfb68b7d4d50b5d6c7469247b0b01b2c953269f658dac', -+ '2.11.0': -+ 'a45c6b403413abd5706f3582f04c8339d26397c4304b78fa552f2215df64101f', - '2.11.1': -- 'f8db94d307e9c54961b39a1cc799a67d46681480696ed72ecf78d4473770f09b' -+ 'f8db94d307e9c54961b39a1cc799a67d46681480696ed72ecf78d4473770f09b', -+ '2.12.0': -+ '7940a46eeb0255baaa87c553d72778c4f8daa2b8888c8e2a05766a2a8686740c', -+ '2.12.1': -+ 'efe71fd4b8246f1b0b1b9bfca13cfff1c9ad85930340c27df469733bbb620938', -+ '2.13.0': -+ 'a7aca0e532a276ea8d85bd31149f0a74c33d19c8d287116ef8f5f8357b4f1f80', -+ '2.13.1': -+ '0b109c59914f25b4411a8de2a506fdd18fa8457eb86eca6c7b15c19110a92fa5', - } - # This is the version of FreeType to use when building a local version. It - # must match the value in lib/matplotlib.__init__.py, and the cache path in - # `.circleci/config.yml`. Also update the docs in - # `docs/devel/dependencies.rst`. --TESTING_VERSION_OF_FREETYPE = '2.6.1' -+TESTING_VERSION_OF_FREETYPE = '2.13.1' - if sys.platform.startswith('win') and platform.machine() == 'ARM64': - # older versions of freetype are not supported for win/arm64 - # Matplotlib tests will not pass -@@ -599,6 +615,7 @@ class FreeType(SetupPackage): - name = ext.name.split('.')[-1] - ext.extra_link_args.append( - f'-Wl,-exported_symbol,_PyInit_{name}') -+ ext.libraries.append('brotlidec') - - def do_custom_build(self, env): - # We're using a system freetype + expected[nn]) + + -- -2.43.0 +2.44.0 diff --git a/SOURCES/0004-Use-old-stride_windows-implementation-on-32-bit-x86.patch b/SOURCES/0004-Use-old-stride_windows-implementation-on-32-bit-x86.patch index 5f99162..56a4743 100644 --- a/SOURCES/0004-Use-old-stride_windows-implementation-on-32-bit-x86.patch +++ b/SOURCES/0004-Use-old-stride_windows-implementation-on-32-bit-x86.patch @@ -1,7 +1,7 @@ -From 59c900f49d605c1300c4bdaef23c94ad32a07e29 Mon Sep 17 00:00:00 2001 +From 0aecbcfd5fd12c79f1f71998be9f86fc4108d91d Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Mon, 22 Aug 2022 18:43:28 -0400 -Subject: [PATCH 4/5] Use old stride_windows implementation on 32-bit x86 +Subject: [PATCH 4/4] Use old stride_windows implementation on 32-bit x86 Signed-off-by: Elliott Sales de Andrade --- @@ -9,7 +9,7 @@ Signed-off-by: Elliott Sales de Andrade 1 file changed, 35 insertions(+), 4 deletions(-) diff --git a/lib/matplotlib/mlab.py b/lib/matplotlib/mlab.py -index 1948e6333e..158417a1c0 100644 +index e1f08c0da5..5c0d56c74d 100644 --- a/lib/matplotlib/mlab.py +++ b/lib/matplotlib/mlab.py @@ -49,6 +49,7 @@ Spectral functions @@ -80,5 +80,5 @@ index 1948e6333e..158417a1c0 100644 resultY = resultY * window.reshape((-1, 1)) resultY = np.fft.fft(resultY, n=pad_to, axis=0)[:numFreqs, :] -- -2.43.0 +2.44.0 diff --git a/SOURCES/0005-TST-Increase-some-tolerances-for-non-x86-arches.patch b/SOURCES/0005-TST-Increase-some-tolerances-for-non-x86-arches.patch deleted file mode 100644 index 2c2c672..0000000 --- a/SOURCES/0005-TST-Increase-some-tolerances-for-non-x86-arches.patch +++ /dev/null @@ -1,26 +0,0 @@ -From f6edb2b275f8fb4daa047df0b12008eac53306f0 Mon Sep 17 00:00:00 2001 -From: Elliott Sales de Andrade -Date: Fri, 11 Aug 2023 05:13:38 -0400 -Subject: [PATCH 5/5] TST: Increase some tolerances for non-x86 arches - -Signed-off-by: Elliott Sales de Andrade ---- - lib/mpl_toolkits/mplot3d/tests/test_axes3d.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/lib/mpl_toolkits/mplot3d/tests/test_axes3d.py b/lib/mpl_toolkits/mplot3d/tests/test_axes3d.py -index b3fcffcc6e..f400312859 100644 ---- a/lib/mpl_toolkits/mplot3d/tests/test_axes3d.py -+++ b/lib/mpl_toolkits/mplot3d/tests/test_axes3d.py -@@ -2264,7 +2264,7 @@ def test_scatter_masked_color(): - len(super(type(path3d), path3d).get_facecolors()) - - --@mpl3d_image_comparison(['surface3d_zsort_inf.png'], style='mpl20') -+@mpl3d_image_comparison(['surface3d_zsort_inf.png'], style='mpl20', tol=0.055) - def test_surface3d_zsort_inf(): - fig = plt.figure() - ax = fig.add_subplot(projection='3d') --- -2.43.0 - diff --git a/SOURCES/mplsetup.cfg b/SOURCES/mplsetup.cfg deleted file mode 100644 index 362e6ab..0000000 --- a/SOURCES/mplsetup.cfg +++ /dev/null @@ -1,8 +0,0 @@ -[libs] -system_freetype = True -system_qhull = True - -[packages] -tests = True -toolkits = True -toolkits_tests = True diff --git a/SPECS/python-matplotlib.spec b/SPECS/python-matplotlib.spec index f2e634c..2235793 100644 --- a/SPECS/python-matplotlib.spec +++ b/SPECS/python-matplotlib.spec @@ -1,11 +1,6 @@ ## START: Set by rpmautospec -## (rpmautospec version 0.6.3) -## RPMAUTOSPEC: autorelease, autochangelog -%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: - release_number = 1; - base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); - print(release_number + base_release_number - 1); -}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} +## (rpmautospec version 0.7.3) +## RPMAUTOSPEC: autochangelog ## END: Set by rpmautospec %bcond_with html @@ -36,26 +31,27 @@ % endif %endif +%global build_backend_args -Csetup-args="-Dsystem-freetype=true" -Csetup-args="-Dsystem-qhull=true" -Cinstall-args="--tags=data,python-runtime,runtime,tests" + # Use the same directory of the main package for subpackage licence and docs %global _docdir_fmt %{name} # Updated test images for new FreeType. -%global mpl_images_version 3.8.3 +%global mpl_images_version 3.9.1 # The version of FreeType in this Fedora branch. %global ftver 2.13.1 Name: python-matplotlib -Version: 3.8.4 +Version: 3.9.1 %global Version %{version_no_tilde %{quote:%nil}} -Release: %autorelease +Release: 6%{?dist} Summary: Python 2D plotting library # qt_editor backend is MIT # ResizeObserver at end of lib/matplotlib/backends/web_backend/js/mpl.js is CC0 License: PSF-2.0 AND MIT AND CC0-1.0 URL: https://matplotlib.org Source0: %pypi_source matplotlib %{Version} -Source1: mplsetup.cfg # Fedora-specific patches; see: # https://github.com/fedora-python/matplotlib/tree/fedora-patches @@ -70,8 +66,6 @@ Patch1003: 0003-Set-FreeType-version-to-%{ftver}-and-update-tolerances.patc # https://github.com/matplotlib/matplotlib/pull/21190#issuecomment-1223271888 Patch0001: 0004-Use-old-stride_windows-implementation-on-32-bit-x86.patch -# https://github.com/matplotlib/matplotlib/pull/26502 -Patch0002: 0005-TST-Increase-some-tolerances-for-non-x86-arches.patch BuildRequires: gcc BuildRequires: gcc-c++ @@ -79,7 +73,7 @@ BuildRequires: glibc-langpack-en BuildRequires: freetype-devel BuildRequires: libpng-devel BuildRequires: qhull-devel -BuildRequires: xorg-x11-server-Xvfb +BuildRequires: wlheadless-run BuildRequires: zlib-devel BuildRequires: ghostscript @@ -87,7 +81,7 @@ BuildRequires: ghostscript %if 0%{?fedora} || (0%{?rhel} && 0%{?rhel} < 8) BuildRequires: ImageMagick %endif -BuildRequires: inkscape +## BuildRequires: inkscape BuildRequires: font(dejavusans) BuildRequires: font(notosanscjkjp) @@ -214,22 +208,11 @@ Matplotlib tries to make easy things easy and hard things possible. You can generate plots, histograms, power spectra, bar charts, errorcharts, scatterplots, etc, with just a few lines of code. -%package -n python3-matplotlib-qt5 -Summary: Qt5 backend for python3-matplotlib -BuildRequires: python3dist(cairocffi) -BuildRequires: python3dist(pyqt5) -Requires: python3-matplotlib%{?_isa} = %{version}-%{release} -Requires: python3dist(cairocffi) -Requires: python3dist(pyqt5) -Obsoletes: python3-matplotlib-qt4 < 3.5.0-0 - -%description -n python3-matplotlib-qt5 -%{summary} - %package -n python3-matplotlib-qt6 Summary: Qt6 backend for python3-matplotlib BuildRequires: python3dist(cairocffi) BuildRequires: python3dist(pyqt6) +BuildRequires: python3-pyqt6 Requires: python3-matplotlib%{?_isa} = %{version}-%{release} Requires: python3dist(cairocffi) Requires: python3dist(pyqt6) @@ -291,6 +274,7 @@ BuildRequires: make BuildRequires: python3dist(sphinx) BuildRequires: tex(latex) BuildRequires: tex-preview +BuildRequires: ipython %endif Requires: python3-matplotlib%{?_isa} = %{version}-%{release} @@ -313,22 +297,19 @@ Requires: python3-matplotlib%{?_isa} = %{version}-%{release} # Updated test images for new FreeType. gzip -dc %SOURCE1000 | tar xf - --transform='s~^mpl-images-%{mpl_images_version}-with-freetype-%{ftver}/~~' -# Copy mplsetup.cfg to the builddir -cp -p %{SOURCE1} mplsetup.cfg - # Backports or reported upstream %autopatch -p1 -M 999 %generate_buildrequires -%pyproject_buildrequires -r +%pyproject_buildrequires -w %build_backend_args %build %set_build_flags export http_proxy=http://127.0.0.1/ -MPLCONFIGDIR=$PWD %pyproject_wheel +MPLCONFIGDIR=$PWD %pyproject_wheel %build_backend_args %if %{with html} # Need to make built matplotlib libs available for the sphinx extensions: MPLCONFIGDIR=$PWD \ @@ -346,7 +327,6 @@ export http_proxy=http://127.0.0.1/ MPLCONFIGDIR=$PWD %pyproject_install # Delete unnecessary files. -rm %{buildroot}%{python3_sitearch}/matplotlib/backends/web_backend/.{eslintrc.js,prettierignore,prettierrc} rm %{buildroot}%{python3_sitearch}/matplotlib/tests/tinypages/.gitignore rm %{buildroot}%{python3_sitearch}/matplotlib/tests/tinypages/_static/.gitignore @@ -374,21 +354,17 @@ mktexfmt xelatex.fmt %{py3_test_envvars} %{python3} -c 'import matplotlib.font_manager' export http_proxy=http://127.0.0.1/ -# Skips: -# * test_invisible_Line_rendering: Checks for "slowness" that often fails on a -# heavily-loaded builder. -# * test_form_widget_get_with_datetime_and_date_fields is flaky. -MPLCONFIGDIR=$PWD \ -%ifnarch %{ix86} - xvfb-run -a -s "-screen 0 640x480x24" \ + +# This test checks for "slowness" that often fails on a heavily-loaded builder. +k="${k-}${k+ and }not test_invisible_Line_rendering" +# This test is flaky. +k="${k-}${k+ and }not test_form_widget_get_with_datetime_and_date_fields" +%ifarch %{ix86} +# This test won't work due to Xvfb not existing. +k="${k-}${k+ and }not test_cross_Qt_imports" %endif - env %{pytest} -ra -n auto \ - -m 'not network' \ - -k 'not test_invisible_Line_rendering and not test_form_widget_get_with_datetime_and_date_fields' \ - --pyargs matplotlib mpl_toolkits.axes_grid1 mpl_toolkits.axisartist mpl_toolkits.mplot3d %endif - %files -n python3-matplotlib-data %{_datadir}/matplotlib/mpl-data/ %if %{with bundled_fonts} @@ -429,9 +405,6 @@ MPLCONFIGDIR=$PWD \ %{python3_sitearch}/matplotlib/tests/baseline_images/ %{python3_sitearch}/mpl_toolkits/*/tests/baseline_images/ -%files -n python3-matplotlib-qt5 -%pycached %{python3_sitearch}/matplotlib/backends/backend_qt5*.py - # This is handled by backend_qt*.py (no number), so the package exists only for # the dependencies. %files -n python3-matplotlib-qt6 @@ -454,39 +427,20 @@ MPLCONFIGDIR=$PWD \ %changelog -## START: Generated by rpmautospec -* Thu Apr 04 2024 Elliott Sales de Andrade - 3.8.4-1 -- Update to latest version (#2273293) - -* Thu Mar 14 2024 Elliott Sales de Andrade - 3.8.3-2 -- Fix SPDX license expression - -* Thu Mar 14 2024 Elliott Sales de Andrade - 3.8.3-1 -- Update to latest version (#2264330) - -* Mon Jan 29 2024 Fedora Release Engineering - 3.8.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 26 2024 Fedora Release Engineering - 3.8.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Mon Jan 22 2024 Fedora Release Engineering - 3.8.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild +* Sun Dec 29 2024 Arkady L. Shane - 3.9.1-6 +- Rebuilt for MSVSphere 10 -* Sat Nov 18 2023 Elliott Sales de Andrade - 3.8.2-1 -- Update to latest version (#2250372) - -* Wed Nov 01 2023 Elliott Sales de Andrade - 3.8.1-1 -- Update to latest version (#2247356) - -* Sat Sep 16 2023 Elliott Sales de Andrade - 3.8.0-1 -- Update to latest version (#2230778) - -* Mon Aug 14 2023 Elliott Sales de Andrade - 3.8.0~rc1-1 -- Update to latest version (#2230778) - -* Fri Aug 11 2023 Tom Callaway - 3.7.2-4 -- add upstream sphinx fix +## START: Generated by rpmautospec +* Tue Dec 17 2024 Kaleb S. KEITHLEY - 3.9.1-4 +- 3.9.1-0, again + +* Tue Dec 17 2024 Kaleb S. KEITHLEY - 3.9.1-0 +- bootstrap epel10 +- temporarily (or is it?) remove qt5 sub-package. Will epel10 get qt5? +- temporarily remove test w/ xvfb-run until I can figure out the + proper replacement. +- inkscape seems to not be needed. Or am I wrong about that? It builds + without it as a BR. Will add it back when inkscape is built for EPEL10. * Fri Aug 11 2023 Tom Callaway - 3.7.2-2 - rebuild for new qhull