commit 67c71e25e239e9172c0d5509bb4c3f1e4b933a3e Author: Dmitry Samoylik Date: Thu Dec 26 20:23:07 2024 +0300 import python-matplotlib-3.9.4-2.el10 diff --git a/..metadata b/..metadata new file mode 100644 index 0000000..273a05c --- /dev/null +++ b/..metadata @@ -0,0 +1,2 @@ +e69d8798c1580d7ca02715f11532efd1f163f987 SOURCES/matplotlib-3.9.4.tar.gz +b34c3b5e5cc9163d1420a44d64407ff79643ec15 SOURCES/matplotlib-3.9.3-with-freetype-2.13.1.tar.gz diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..94ac992 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +SOURCES/matplotlib-3.9.4.tar.gz +SOURCES/matplotlib-3.9.3-with-freetype-2.13.1.tar.gz diff --git a/SOURCES/0001-matplotlibrc-path-search-fix.patch b/SOURCES/0001-matplotlibrc-path-search-fix.patch new file mode 100644 index 0000000..a189044 --- /dev/null +++ b/SOURCES/0001-matplotlibrc-path-search-fix.patch @@ -0,0 +1,43 @@ +From fde31cca645d54c6f019d4882b6fe4e71a6dc946 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 + +Signed-off-by: Elliott Sales de Andrade +--- + lib/matplotlib/__init__.py | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py +index ad4676b11a..b925a4a703 100644 +--- a/lib/matplotlib/__init__.py ++++ b/lib/matplotlib/__init__.py +@@ -589,7 +589,8 @@ def get_cachedir(): + @_logged_cached('matplotlib data path: %s') + def get_data_path(): + """Return the path to Matplotlib data.""" +- return str(Path(__file__).with_name("mpl-data")) ++ return str(Path(__file__).parent.parent.parent.parent.parent / ++ 'share/matplotlib/mpl-data') + + + def matplotlib_fname(): +@@ -609,6 +610,7 @@ def matplotlib_fname(): + is not defined) + - On other platforms, + - ``$HOME/.matplotlib/matplotlibrc`` if ``$HOME`` is defined ++ - ``/etc/matplotlibrc`` + - Lastly, it looks in ``$MATPLOTLIBDATA/matplotlibrc``, which should always + exist. + """ +@@ -627,6 +629,7 @@ def matplotlib_fname(): + yield matplotlibrc + yield os.path.join(matplotlibrc, 'matplotlibrc') + yield os.path.join(get_configdir(), 'matplotlibrc') ++ yield '/etc/matplotlibrc' + yield os.path.join(get_data_path(), 'matplotlibrc') + + for fname in gen_candidates(): +-- +2.47.0 + diff --git a/SOURCES/0002-Unpin-NumPy-build-requirement.patch b/SOURCES/0002-Unpin-NumPy-build-requirement.patch new file mode 100644 index 0000000..d87498a --- /dev/null +++ b/SOURCES/0002-Unpin-NumPy-build-requirement.patch @@ -0,0 +1,41 @@ +From 9421754530479435e21a98d2f549330899ed8d85 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 + +This is so high simply to take advantage of the new +backwards-compatibility guarantee in NumPy 1.25, but Fedora will never +run against a version different from the one it was built against. + +Signed-off-by: Elliott Sales de Andrade +--- + pyproject.toml | 13 +------------ + 1 file changed, 1 insertion(+), 12 deletions(-) + +diff --git a/pyproject.toml b/pyproject.toml +index aa6aa23506..1894bbf3cd 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -76,18 +76,7 @@ requires = [ + "meson-python>=0.13.1,<0.17.0", + "pybind11>=2.6,!=2.13.3", + "setuptools_scm>=7", +- +- # Comments on numpy build requirement range: +- # +- # 1. >=2.0.x is the numpy requirement for wheel builds for distribution +- # on PyPI - building against 2.x yields wheels that are also +- # ABI-compatible with numpy 1.x at runtime. +- # 2. Note that building against numpy 1.x works fine too - users and +- # redistributors can do this by installing the numpy version they like +- # and disabling build isolation. +- # 3. The <2.3 upper bound is for matching the numpy deprecation policy, +- # it should not be loosened. +- "numpy>=2.0.0rc1,<2.3", ++ "numpy", + ] + + [tool.meson-python.args] +-- +2.47.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 new file mode 100644 index 0000000..21d78dc --- /dev/null +++ b/SOURCES/0003-Set-FreeType-version-to-2.13.1-and-update-tolerances.patch @@ -0,0 +1,171 @@ +From 283c5005dbbbea1147e539075032d6ec43c88166 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 + +Signed-off-by: Elliott Sales de Andrade +--- + 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 b925a4a703..ec68e4932b 100644 +--- a/lib/matplotlib/__init__.py ++++ b/lib/matplotlib/__init__.py +@@ -1316,7 +1316,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 `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 e99ef129eb..2355c82f62 100644 +--- a/lib/matplotlib/tests/test_axes.py ++++ b/lib/matplotlib/tests/test_axes.py +@@ -7765,7 +7765,7 @@ def test_normal_axes(): + ] + for nn, b in enumerate(bbaxis): + targetbb = mtransforms.Bbox.from_bounds(*target[nn]) +- assert_array_almost_equal(b.bounds, targetbb.bounds, decimal=2) ++ assert_array_almost_equal(b.bounds, targetbb.bounds, decimal=0) + + target = [ + [150.0, 119.999, 930.0, 11.111], +@@ -7783,7 +7783,7 @@ def test_normal_axes(): + + target = [85.5138, 75.88888, 1021.11, 1017.11] + targetbb = mtransforms.Bbox.from_bounds(*target) +- assert_array_almost_equal(bbtb.bounds, targetbb.bounds, decimal=2) ++ assert_array_almost_equal(bbtb.bounds, targetbb.bounds, decimal=0) + + # test that get_position roundtrips to get_window_extent + axbb = ax.get_position().transformed(fig.transFigure).bounds +diff --git a/lib/matplotlib/tests/test_backend_pgf.py b/lib/matplotlib/tests/test_backend_pgf.py +index 8a83515f16..26bc9d6c48 100644 +--- a/lib/matplotlib/tests/test_backend_pgf.py ++++ b/lib/matplotlib/tests/test_backend_pgf.py +@@ -165,7 +165,7 @@ def test_pathclip(): + # test mixed mode rendering + @needs_pgf_xelatex + @pytest.mark.backend('pgf') +-@image_comparison(['pgf_mixedmode.pdf'], style='default') ++@image_comparison(['pgf_mixedmode.pdf'], style='default', tol=0.87) + def test_mixedmode(): + 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 4dc4d9501e..47a4e80bb5 100644 +--- a/lib/matplotlib/tests/test_constrainedlayout.py ++++ b/lib/matplotlib/tests/test_constrainedlayout.py +@@ -435,7 +435,7 @@ def test_hidden_axes(): + extents1 = np.copy(axs[0, 0].get_position().extents) + + np.testing.assert_allclose( +- extents1, [0.045552, 0.543288, 0.47819, 0.982638], rtol=1e-5) ++ extents1, [0.045552, 0.543288, 0.47819, 0.982638], rtol=1e-2) + + + def test_colorbar_align(): +@@ -641,9 +641,9 @@ def test_compressed1(): + fig.draw_without_rendering() + + pos = axs[0, 0].get_position() +- np.testing.assert_allclose(pos.x0, 0.2344, atol=1e-3) ++ np.testing.assert_allclose(pos.x0, 0.2344, atol=1e-2) + pos = axs[0, 1].get_position() +- np.testing.assert_allclose(pos.x1, 0.7024, atol=1e-3) ++ np.testing.assert_allclose(pos.x1, 0.7024, atol=1e-2) + + # wider than tall + fig, axs = plt.subplots(2, 3, layout='compressed', +@@ -656,10 +656,10 @@ def test_compressed1(): + + 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.y1, 0.8537, atol=1e-2) + 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.y0, 0.1934, atol=1e-2) + + + @pytest.mark.parametrize('arg, state', [ +diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py +index 3c2af27564..2b8709f934 100644 +--- a/lib/matplotlib/tests/test_legend.py ++++ b/lib/matplotlib/tests/test_legend.py +@@ -520,9 +520,9 @@ def test_figure_legend_outside(): + fig.draw_without_rendering() + + assert_allclose(axs.get_window_extent().extents, +- axbb[nn]) ++ axbb[nn], rtol=1) + assert_allclose(leg.get_window_extent().extents, +- legbb[nn]) ++ legbb[nn], rtol=1) + + + @image_comparison(['legend_stackplot.png'], +diff --git a/lib/matplotlib/tests/test_polar.py b/lib/matplotlib/tests/test_polar.py +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(): + fig.canvas.draw() + bb = ax.get_tightbbox(fig.canvas.get_renderer()) + assert_allclose( +- bb.extents, [107.7778, 29.2778, 539.7847, 450.7222], rtol=1e-03) ++ bb.extents, [107.7778, 29.2778, 539.7847, 450.7222], rtol=1) + + + @check_figures_equal(extensions=["png"]) +diff --git a/lib/matplotlib/tests/test_tightlayout.py b/lib/matplotlib/tests/test_tightlayout.py +index 9c654f4d1f..9678e34a80 100644 +--- a/lib/matplotlib/tests/test_tightlayout.py ++++ b/lib/matplotlib/tests/test_tightlayout.py +@@ -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. + 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), + expected[nn]) + + +-- +2.47.0 + diff --git a/SOURCES/0004-Unpin-meson-python-build-requirement.patch b/SOURCES/0004-Unpin-meson-python-build-requirement.patch new file mode 100644 index 0000000..b7135a0 --- /dev/null +++ b/SOURCES/0004-Unpin-meson-python-build-requirement.patch @@ -0,0 +1,38 @@ +From b671c4141dc9692ce8745a4ddb9f6b0b14e5e70f Mon Sep 17 00:00:00 2001 +From: Elliott Sales de Andrade +Date: Fri, 13 Dec 2024 02:03:33 -0500 +Subject: [PATCH 4/5] Unpin meson-python build requirement + +This is pinned to fix sdists, but we already have one and are building a +wheel, which should be fine. + +Signed-off-by: Elliott Sales de Andrade +--- + pyproject.toml | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/pyproject.toml b/pyproject.toml +index 1894bbf3cd..bdf2119f1b 100644 +--- a/pyproject.toml ++++ b/pyproject.toml +@@ -48,7 +48,7 @@ requires-python = ">=3.9" + [project.optional-dependencies] + # Should be a copy of the build dependencies below. + dev = [ +- "meson-python>=0.13.1,<0.17.0", ++ "meson-python>=0.13.1", + "numpy>=1.25", + "pybind11>=2.6,!=2.13.3", + "setuptools_scm>=7", +@@ -73,7 +73,7 @@ dev = [ + build-backend = "mesonpy" + # Also keep in sync with optional dependencies above. + requires = [ +- "meson-python>=0.13.1,<0.17.0", ++ "meson-python>=0.13.1", + "pybind11>=2.6,!=2.13.3", + "setuptools_scm>=7", + "numpy", +-- +2.47.0 + diff --git a/SOURCES/0005-Use-old-stride_windows-implementation-on-32-bit-x86.patch b/SOURCES/0005-Use-old-stride_windows-implementation-on-32-bit-x86.patch new file mode 100644 index 0000000..1c729f1 --- /dev/null +++ b/SOURCES/0005-Use-old-stride_windows-implementation-on-32-bit-x86.patch @@ -0,0 +1,84 @@ +From f6ecac5a3c02b32d66acd0fff41e1732d0939f60 Mon Sep 17 00:00:00 2001 +From: Elliott Sales de Andrade +Date: Mon, 22 Aug 2022 18:43:28 -0400 +Subject: [PATCH 5/5] Use old stride_windows implementation on 32-bit x86 + +Signed-off-by: Elliott Sales de Andrade +--- + lib/matplotlib/mlab.py | 39 +++++++++++++++++++++++++++++++++++---- + 1 file changed, 35 insertions(+), 4 deletions(-) + +diff --git a/lib/matplotlib/mlab.py b/lib/matplotlib/mlab.py +index e1f08c0da5..5c0d56c74d 100644 +--- a/lib/matplotlib/mlab.py ++++ b/lib/matplotlib/mlab.py +@@ -49,6 +49,7 @@ Spectral functions + + import functools + from numbers import Number ++import sys + + import numpy as np + +@@ -210,6 +211,30 @@ def detrend_linear(y): + return y - (b*x + a) + + ++def _stride_windows(x, n, noverlap=0): ++ if noverlap >= n: ++ raise ValueError('noverlap must be less than n') ++ if n < 1: ++ raise ValueError('n cannot be less than 1') ++ ++ x = np.asarray(x) ++ ++ if n == 1 and noverlap == 0: ++ return x[np.newaxis] ++ if n > x.size: ++ raise ValueError('n cannot be greater than the length of x') ++ ++ # np.lib.stride_tricks.as_strided easily leads to memory corruption for ++ # non integer shape and strides, i.e. noverlap or n. See #3845. ++ noverlap = int(noverlap) ++ n = int(n) ++ ++ step = n - noverlap ++ shape = (n, (x.shape[-1]-noverlap)//step) ++ strides = (x.strides[0], step*x.strides[0]) ++ return np.lib.stride_tricks.as_strided(x, shape=shape, strides=strides) ++ ++ + def _spectral_helper(x, y=None, NFFT=None, Fs=None, detrend_func=None, + window=None, noverlap=None, pad_to=None, + sides=None, scale_by_freq=None, mode=None): +@@ -304,8 +329,11 @@ def _spectral_helper(x, y=None, NFFT=None, Fs=None, detrend_func=None, + raise ValueError( + "The window length must match the data's first dimension") + +- result = np.lib.stride_tricks.sliding_window_view( +- x, NFFT, axis=0)[::NFFT - noverlap].T ++ if sys.maxsize > 2**32: # NumPy version on 32-bit OOMs. ++ result = np.lib.stride_tricks.sliding_window_view( ++ x, NFFT, axis=0)[::NFFT - noverlap].T ++ else: ++ result = _stride_windows(x, NFFT, noverlap=noverlap) + result = detrend(result, detrend_func, axis=0) + result = result * window.reshape((-1, 1)) + result = np.fft.fft(result, n=pad_to, axis=0)[:numFreqs, :] +@@ -313,8 +341,11 @@ def _spectral_helper(x, y=None, NFFT=None, Fs=None, detrend_func=None, + + if not same_data: + # if same_data is False, mode must be 'psd' +- resultY = np.lib.stride_tricks.sliding_window_view( +- y, NFFT, axis=0)[::NFFT - noverlap].T ++ if sys.maxsize > 2**32: # NumPy version on 32-bit OOMs. ++ resultY = np.lib.stride_tricks.sliding_window_view( ++ y, NFFT, axis=0)[::NFFT - noverlap].T ++ else: ++ resultY = _stride_windows(y, NFFT, noverlap=noverlap) + resultY = detrend(resultY, detrend_func, axis=0) + resultY = resultY * window.reshape((-1, 1)) + resultY = np.fft.fft(resultY, n=pad_to, axis=0)[:numFreqs, :] +-- +2.47.0 + diff --git a/SPECS/python-matplotlib.spec b/SPECS/python-matplotlib.spec new file mode 100644 index 0000000..7551045 --- /dev/null +++ b/SPECS/python-matplotlib.spec @@ -0,0 +1,1208 @@ +## START: Set by rpmautospec +## (rpmautospec version 0.7.3) +## RPMAUTOSPEC: autorelease, autochangelog +%define autorelease(e:s:pb:n) %{?-p:0.}%{lua: + release_number = 2; + base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); + print(release_number + base_release_number - 1); +}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} +## END: Set by rpmautospec + +%bcond_with html +%bcond_without check +# https://fedorahosted.org/fpc/ticket/381 +%bcond_without bundled_fonts + +# No WX for EL8/ELN/EL9 +%if 0%{?rhel} >= 8 +%bcond_with wx +%else +%bcond_without wx +%endif + +# the default backend; one of GTK3Agg GTK3Cairo MacOSX Qt4Agg Qt5Agg TkAgg +# WXAgg Agg Cairo PS PDF SVG +%global backend TkAgg + +%if "%{backend}" == "TkAgg" +%global backend_subpackage tk +%else +% if "%{backend}" == "Qt5Agg" +%global backend_subpackage qt5 +% else +% if "%{backend}" == "WXAgg" +%global backend_subpackage wx +% endif +% 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.9.3 + +# The version of FreeType in this Fedora branch. +%global ftver 2.13.1 + +Name: python-matplotlib +Version: 3.9.4 +%global Version %{version_no_tilde %{quote:%nil}} +Release: %autorelease +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} + +# Fedora-specific patches; see: +# https://github.com/fedora-python/matplotlib/tree/fedora-patches +# Updated test images for new FreeType. +Source1000: https://github.com/QuLogic/mpl-images/archive/v%{mpl_images_version}-with-freetype-%{ftver}/matplotlib-%{mpl_images_version}-with-freetype-%{ftver}.tar.gz +# Search in /etc/matplotlibrc: +Patch1001: 0001-matplotlibrc-path-search-fix.patch +# We don't need to use NumPy 1.25. +Patch1002: 0002-Unpin-NumPy-build-requirement.patch +# Increase tolerances for new FreeType everywhere: +Patch1003: 0003-Set-FreeType-version-to-%{ftver}-and-update-tolerances.patch +# We don't need to use older meson-python. +Patch1004: 0004-Unpin-meson-python-build-requirement.patch + +# https://github.com/matplotlib/matplotlib/pull/21190#issuecomment-1223271888 +Patch0001: 0005-Use-old-stride_windows-implementation-on-32-bit-x86.patch + +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: glibc-langpack-en +BuildRequires: freetype-devel +BuildRequires: libpng-devel +BuildRequires: qhull-devel +BuildRequires: xorg-x11-server-Xvfb +BuildRequires: zlib-devel + +BuildRequires: ghostscript +# No ImageMagick for EL8/ELN/EL9 +%if 0%{?fedora} || (0%{?rhel} && 0%{?rhel} < 8) +BuildRequires: ImageMagick +%endif +BuildRequires: inkscape + +BuildRequires: font(dejavusans) +BuildRequires: font(notosanscjkjp) +BuildRequires: font(wenquanyizenhei) + +BuildRequires: texlive-collection-basic +BuildRequires: texlive-collection-fontsrecommended +BuildRequires: texlive-collection-latex +BuildRequires: texlive-collection-latexrecommended +BuildRequires: texlive-dvipng +BuildRequires: texlive-latex-bin +BuildRequires: texlive-luahbtex +BuildRequires: texlive-tex-bin +BuildRequires: texlive-xetex-bin +# Search for documentclass and add the classes here. +BuildRequires: tex(article.cls) +# Search for inputenc and add any encodings used with it. +BuildRequires: tex(utf8.def) +BuildRequires: tex(utf8x.def) +# Found with: rg -Io 'usepackage(\[.+\])?\{.+\}' lib | rg -o '\{.+\}' | sort -u +# and then removing duplicates in one line, etc. +BuildRequires: tex(avant.sty) +BuildRequires: tex(chancery.sty) +BuildRequires: tex(charter.sty) +BuildRequires: tex(chemformula.sty) +BuildRequires: tex(color.sty) +BuildRequires: tex(courier.sty) +BuildRequires: tex(fontenc.sty) +BuildRequires: tex(fontspec.sty) +BuildRequires: tex(geometry.sty) +BuildRequires: tex(graphicx.sty) +BuildRequires: tex(helvet.sty) +BuildRequires: tex(hyperref.sty) +BuildRequires: tex(import.sty) +BuildRequires: tex(inputenc.sty) +BuildRequires: tex(lmodern.sty) +BuildRequires: tex(mathpazo.sty) +BuildRequires: tex(mathptmx.sty) +BuildRequires: tex(pgf.sty) +BuildRequires: tex(sfmath.sty) +BuildRequires: tex(textcomp.sty) +BuildRequires: tex(txfonts.sty) +BuildRequires: tex(type1cm.sty) +BuildRequires: tex(type1ec.sty) +BuildRequires: tex(underscore.sty) +# See BakomaFonts._fontmap in lib/matplotlib/mathtext.py +BuildRequires: tex(cmb10.tfm) +BuildRequires: tex(cmex10.tfm) +BuildRequires: tex(cmmi10.tfm) +BuildRequires: tex(cmr10.tfm) +BuildRequires: tex(cmss10.tfm) +BuildRequires: tex(cmsy10.tfm) +BuildRequires: tex(cmtt10.tfm) + +%description +Matplotlib is a Python 2D plotting library which produces publication +quality figures in a variety of hardcopy formats and interactive +environments across platforms. Matplotlib can be used in Python +scripts, the Python and IPython shell, web application servers, and +various graphical user interface toolkits. + +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-data +Summary: Data used by python-matplotlib +BuildArch: noarch +%if %{with bundled_fonts} +Requires: python3-matplotlib-data-fonts = %{version}-%{release} +%endif +Obsoletes: python-matplotlib-data < 3 + +%description -n python3-matplotlib-data +%{summary} + +%if %{with bundled_fonts} +%package -n python3-matplotlib-data-fonts +Summary: Fonts used by python-matplotlib +# Carlogo, STIX and Computer Modern is OFL +# DejaVu is Bitstream Vera and Public Domain +License: OFL-1.1 AND Bitstream-Vera AND LicenseRef-Fedora-Public-Domain +BuildArch: noarch +Requires: python3-matplotlib-data = %{version}-%{release} +Obsoletes: python-matplotlib-data-fonts < 3 + +%description -n python3-matplotlib-data-fonts +%{summary} +%endif + +%package -n python3-matplotlib +Summary: Python 2D plotting library +BuildRequires: python3-devel +BuildRequires: python3dist(pycairo) +BuildRequires: python3dist(pytz) +BuildRequires: python3dist(sphinx) +Requires: dejavu-sans-fonts +Recommends: texlive-dvipng +Requires: (texlive-dvipng if texlive-base) +Requires: python3-matplotlib-data = %{version}-%{release} +Requires: python3dist(pycairo) +Requires: python3-matplotlib-%{?backend_subpackage}%{!?backend_subpackage:tk}%{?_isa} = %{version}-%{release} +%if %{with check} +BuildRequires: python3dist(pytest) +BuildRequires: python3dist(pytest-rerunfailures) +BuildRequires: python3dist(pytest-timeout) +BuildRequires: python3dist(pytest-xdist) +BuildRequires: python3dist(pikepdf) +%endif +%if %{without bundled_fonts} +Requires: stix-math-fonts +%else +Provides: bundled(stix-math-fonts) +%endif + +%description -n python3-matplotlib +Matplotlib is a Python 2D plotting library which produces publication +quality figures in a variety of hardcopy formats and interactive +environments across platforms. Matplotlib can be used in Python +scripts, the Python and IPython shell, web application servers, and +various graphical user interface toolkits. + +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) + +%description -n python3-matplotlib-qt6 +%{summary} + +%package -n python3-matplotlib-gtk3 +Summary: GTK3 backend for python3-matplotlib +# This should be converted to typelib(Gtk) when supported +BuildRequires: gtk3 +BuildRequires: python3-gobject +Requires: gtk3%{?_isa} +Requires: python3-gobject%{?_isa} +Requires: python3-matplotlib%{?_isa} = %{version}-%{release} + +%description -n python3-matplotlib-gtk3 +%{summary} + +%package -n python3-matplotlib-gtk4 +Summary: GTK4 backend for python3-matplotlib +# This should be converted to typelib(Gtk) when supported +BuildRequires: gtk4 +BuildRequires: python3-gobject +Requires: gtk4%{?_isa} +Requires: python3-gobject%{?_isa} +Requires: python3-matplotlib%{?_isa} = %{version}-%{release} + +%description -n python3-matplotlib-gtk4 +%{summary} + +%package -n python3-matplotlib-tk +Summary: Tk backend for python3-matplotlib +BuildRequires: python3-pillow-tk +BuildRequires: python3-tkinter +Requires: python3-matplotlib%{?_isa} = %{version}-%{release} +Requires: python3-pillow-tk +Requires: python3-tkinter + +%description -n python3-matplotlib-tk +%{summary} + +%if %{with wx} +%package -n python3-matplotlib-wx +Summary: WX backend for python3-matplotlib +BuildRequires: python3dist(wxpython) +Requires: python3-matplotlib%{?_isa} = %{version}-%{release} +Requires: python3dist(wxpython) + +%description -n python3-matplotlib-wx +%{summary} +%endif + +%package -n python3-matplotlib-doc +Summary: Documentation files for python-matplotlib +%if %{with html} +BuildRequires: graphviz +BuildRequires: make +BuildRequires: python3dist(sphinx) +BuildRequires: tex(latex) +BuildRequires: tex-preview +BuildRequires: ipython +%endif +Requires: python3-matplotlib%{?_isa} = %{version}-%{release} + +%description -n python3-matplotlib-doc +%{summary} + +%package -n python3-matplotlib-test-data +Summary: Test data for python3-matplotlib +Requires: python3-matplotlib%{?_isa} = %{version}-%{release} + +%description -n python3-matplotlib-test-data +%{summary} + + +%prep +%autosetup -n matplotlib-%{Version} -N + +# Fedora-specific patches follow: +%autopatch -p1 -m 1000 +# Updated test images for new FreeType. +gzip -dc %SOURCE1000 | tar xf - --transform='s~^mpl-images-%{mpl_images_version}-with-freetype-%{ftver}/~~' + +# Backports or reported upstream +%autopatch -p1 -M 999 + + +%generate_buildrequires +%pyproject_buildrequires -p + + +%build +%set_build_flags +export http_proxy=http://127.0.0.1/ + +MPLCONFIGDIR=$PWD %pyproject_wheel %build_backend_args +%if %{with html} +# Need to make built matplotlib libs available for the sphinx extensions: +MPLCONFIGDIR=$PWD \ +PYTHONPATH="%{pyproject_site_lib}" \ + make -C doc html +%endif +# Ensure all example files are non-executable so that the -doc +# package doesn't drag in dependencies +find galleries -name '*.py' -exec chmod a-x '{}' \; + + +%install +export http_proxy=http://127.0.0.1/ + +MPLCONFIGDIR=$PWD %pyproject_install + +# Delete unnecessary files. +rm %{buildroot}%{python3_sitearch}/matplotlib/tests/tinypages/.gitignore +rm %{buildroot}%{python3_sitearch}/matplotlib/tests/tinypages/_static/.gitignore + +# Move files to Fedora-specific locations. +mkdir -p %{buildroot}%{_sysconfdir} %{buildroot}%{_datadir}/matplotlib +mv %{buildroot}%{python3_sitearch}/matplotlib/mpl-data \ + %{buildroot}%{_datadir}/matplotlib +%if %{without bundled_fonts} +rm -rf %{buildroot}%{_datadir}/matplotlib/mpl-data/fonts +%endif + + +%if %{with check} +%check +# These files confuse pytest, and we want to test the installed copy. +rm -rf build*/ + +# We need to prime this LaTeX cache stuff, or it might fail while running tests +# in parallel. +mktexfmt latex.fmt +mktexfmt lualatex.fmt +mktexfmt pdflatex.fmt +mktexfmt xelatex.fmt +# Also prime the font cache. +%{py3_test_envvars} %{python3} -c 'import matplotlib.font_manager' + +export http_proxy=http://127.0.0.1/ + +# 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 + +# This fixes GTK4 which is missing a dependency for its current default renderer. +GSK_RENDERER=cairo \ +MPLCONFIGDIR=$PWD \ +%ifnarch %{ix86} + xvfb-run -a -s "-screen 0 640x480x24" \ +%endif + env %{pytest} -ra -n auto \ + -m 'not network' -k "${k-}" \ + --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} +%exclude %{_datadir}/matplotlib/mpl-data/fonts/ +%endif + +%if %{with bundled_fonts} +%files -n python3-matplotlib-data-fonts +%{_datadir}/matplotlib/mpl-data/fonts/ +%endif + +%files -n python3-matplotlib-doc +%doc galleries/examples +%if %{with html} +%doc doc/build/html/* +%endif + +%files -n python3-matplotlib +%license LICENSE/ +%doc README.md +%{python3_sitearch}/matplotlib-*.dist-info/ +%{python3_sitearch}/matplotlib/ +%exclude %{python3_sitearch}/matplotlib/tests/baseline_images/* +%{python3_sitearch}/mpl_toolkits/ +%exclude %{python3_sitearch}/mpl_toolkits/*/tests/baseline_images/* +%pycached %{python3_sitearch}/pylab.py +%pycached %exclude %{python3_sitearch}/matplotlib/backends/backend_qt5*.py +%pycached %exclude %{python3_sitearch}/matplotlib/backends/backend_gtk*.py +%pycached %exclude %{python3_sitearch}/matplotlib/backends/_backend_tk.py +%pycached %exclude %{python3_sitearch}/matplotlib/backends/backend_tk*.py +%exclude %{python3_sitearch}/matplotlib/backends/_tkagg.* +%pycached %exclude %{python3_sitearch}/matplotlib/backends/backend_wx*.py +%if %{with html} +%exclude %{_pkgdocdir}/*/ +%endif + +%files -n python3-matplotlib-test-data +%{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 + +%files -n python3-matplotlib-gtk3 +%pycached %{python3_sitearch}/matplotlib/backends/backend_gtk3*.py + +%files -n python3-matplotlib-gtk4 +%pycached %{python3_sitearch}/matplotlib/backends/backend_gtk4*.py + +%files -n python3-matplotlib-tk +%pycached %{python3_sitearch}/matplotlib/backends/backend_tk*.py +%pycached %{python3_sitearch}/matplotlib/backends/_backend_tk.py +%{python3_sitearch}/matplotlib/backends/_tkagg.* + +%if %{with wx} +%files -n python3-matplotlib-wx +%pycached %{python3_sitearch}/matplotlib/backends/backend_wx*.py +%endif + + +%changelog +* Thu Dec 26 2024 Dmitriy Samoylik - 3.9.4-2 +- Rebuilt for MSVSphere 10 + +## START: Generated by rpmautospec +* Mon Dec 16 2024 Orion Poplawski - 3.9.4-2 +- Rebuild with numpy 2.0 + +* Sat Dec 14 2024 Elliott Sales de Andrade - 3.9.4-1 +- Update to latest version + +* Thu Dec 05 2024 Elliott Sales de Andrade - 3.9.3-1 +- Update to latest version + +* Sat Nov 30 2024 Elliott Sales de Andrade - 3.9.1-3 +- Read the runtime dependencies from pyproject.toml + +* Fri Jul 19 2024 Fedora Release Engineering - 3.9.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jul 05 2024 Elliott Sales de Andrade - 3.9.1-1 +- Update to latest version (#2295755) + +* Sun Jun 09 2024 Python Maint - 3.9.0-4 +- Rebuilt for Python 3.13 + +* Sat Jun 08 2024 Python Maint - 3.9.0-3 +- Bootstrap for Python 3.13 + +* Thu May 30 2024 Karolina Surma - 3.9.0-2 +- Move IPython to html dependencies + +* Fri May 17 2024 Elliott Sales de Andrade - 3.9.0-1 +- Update to latest version (#2274216) + +* 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 + +* 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 + +* Fri Aug 11 2023 Tom Callaway - 3.7.2-2 +- rebuild for new qhull + +* Mon Aug 09 2021 Elliott Sales de Andrade - 3.4.2-5 +- Update test images for FreeType 2.11.0 +- Backport patch for NumPy 1.21 + +* Fri Jul 23 2021 Fedora Release Engineering - 3.4.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jun 04 2021 Python Maint - 3.4.2-3 +- Rebuilt for Python 3.10 + +* Fri Jun 04 2021 Python Maint - 3.4.2-2 +- Bootstrap for Python 3.10 + +* Fri Jun 04 2021 Elliott Sales de Andrade - 3.4.2-2 +- Workaround failures with texlive 2021 + +* Sat May 08 2021 Elliott Sales de Andrade - 3.4.2-1 +- Update to latest version (#1958461) + +* Wed Mar 31 2021 Elliott Sales de Andrade - 3.4.1-1 +- Update to latest version (#1943482) + +* Thu Mar 11 2021 Elliott Sales de Andrade - 3.4.0~rc3-1 +- Update to latest release candidate + +* Fri Feb 19 2021 Elliott Sales de Andrade - 3.4.0~rc1-1 +- Update to latest release candidate +- Deprecated python3-matplotlib-qt4 subpackage + +* Tue Feb 16 2021 Troy Dawson - 3.3.4-3 +- Add build deps that were only getting pulled in by other dependencies + +* Mon Feb 01 2021 Tomas Popela - 3.3.4-2 +- Conditionalize the WX backend and disable it on RHEL 8+ as WX is not + available there. + +* Thu Jan 28 2021 Elliott Sales de Andrade - 3.3.4-1 +- Update to latest version (#1921574) + +* Wed Jan 27 2021 Fedora Release Engineering - 3.3.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Dec 02 2020 Tomas Popela - 3.3.3-2 +- Don't build the Qt 4 backend in ELN/RHEL 9 as Qt 4 won't be available there + (reuse + https://src.fedoraproject.org/rpms/python-matplotlib/c/588e490738b06d525910f05bc1ba3f3f05ec7d50?branch=epel8) + +* Thu Nov 12 2020 Elliott Sales de Andrade - 3.3.3-1 +- Update to latest version (#1897021) + +* Tue Sep 15 2020 Elliott Sales de Andrade - 3.3.2-1 +- Update to latest version (#1878999) + +* Thu Aug 13 2020 Elliott Sales de Andrade - 3.3.1-1 +- Update to latest version +- Fixes RHBZ#1868838 + +* Wed Jul 29 2020 Fedora Release Engineering - 3.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sat Jul 18 2020 Elliott Sales de Andrade - 3.3.0-1 +- Update to latest version +- Fixes RHBZ#1858120 + +* Tue Jun 30 2020 Elliott Sales de Andrade - 3.3.0-0.2.rc1 +- Add more test dependencies + +* Mon Jun 29 2020 Elliott Sales de Andrade - 3.3.0-0.1.rc1 +- Update to latest version + +* Sat Jun 20 2020 Elliott Sales de Andrade - 3.2.2-1 +- Update to latest version + +* Mon Jun 01 2020 Miro Hrončok - 3.2.1-2 +- Only recommend texlive-dvipng (but require it if texlive is installed) (#1509657) + +* Mon May 25 2020 Miro Hrončok - 3.2.1-1.1 +- Rebuilt for Python 3.9 + +* Wed Mar 18 2020 Elliott Sales de Andrade - 3.2.1-1 +- Update to latest version + +* Tue Mar 03 2020 Elliott Sales de Andrade - 3.2.0-1 +- Update to latest version + +* Thu Jan 30 2020 Fedora Release Engineering - 3.1.2-1.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Fri Nov 22 2019 Elliott Sales de Andrade - 3.1.2-1 +- Update to latest version + +* Fri Sep 06 2019 Elliott Sales de Andrade - 3.1.1-2 +- Backport bool deprecation fix for Python 3.8 + +* Sun Aug 18 2019 Miro Hrončok - 3.1.1-1.1 +- Rebuilt for Python 3.8 + +* Thu Aug 08 2019 Elliott Sales de Andrade - 3.1.1-1 +- Update to latest version + +* Fri Jul 26 2019 Fedora Release Engineering - 3.0.3-2.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jul 3 2019 Zbigniew Jędrzejewski-Szmek - 3.0.3-2 +- Update Obsoletes to be later than the last python2 builds (#1726490) + +* Sat Mar 02 2019 Elliott Sales de Andrade - 3.0.3-1 +- Update to latest version + +* Sat Feb 02 2019 Fedora Release Engineering - 3.0.2-1.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Tue Nov 13 2018 Elliott Sales de Andrade - 3.0.2-1 +- Update to latest version + +* Wed Oct 31 2018 Elliott Sales de Andrade - 3.0.1-1 +- Update to latest version + +* Fri Sep 21 2018 Miro Hrončok - 3.0.0-2 +- Obsolete old python-matplotlib-data* to prevent conflicts and provide an upgrade path + +* Wed Sep 19 2018 Elliott Sales de Andrade - 3.0.0-1 +- Update to latest version +- Drop Python 2 subpackages +- Stop setting a default backend (allow Matplotlib to choose automatically) + +* Mon Aug 13 2018 Elliott Sales de Andrade - 2.2.3-1 +- Update to latest version + +* Fri Jul 20 2018 Elliott Sales de Andrade - 2.2.2-4 +- Don't use unversioned Python in build (#1605766) +- Add missing texlive-cm BR + +* Sat Jul 14 2018 Fedora Release Engineering - 2.2.2-3.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Tue Jun 19 2018 Miro Hrončok - 2.2.2-3 +- Rebuilt for Python 3.7 + +* Tue Apr 17 2018 Elliott Sales de Andrade - 2.2.2-2 +- Remove bytecode produced by pytest +- Add python?-matplotlib-test-data subpackages + +* Sat Mar 31 2018 Elliott Sales de Andrade - 2.2.2-1 +- Update to latest release +- Run tests in parallel + +* Tue Mar 13 2018 Elliott Sales de Andrade - 2.1.2-3 +- Cleanup spec file of old conditionals +- Use more python2- dependencies + +* Mon Feb 05 2018 Karsten Hopp - 2.1.2-2 +- update and fix spec file conditionals + +* Sun Jan 21 2018 Elliott Sales de Andrade - 2.1.2-1 +- Update to latest release + +* Sun Dec 10 2017 Elliott Sales de Andrade - 2.1.1-1 +- Update to latest release + +* Mon Oct 16 2017 Elliott Sales de Andrade - 2.1.0-1 +- Update to latest release + +* Thu Sep 28 2017 Elliott Sales de Andrade - 2.0.2-1 +- Update to latest release + +* Thu Sep 28 2017 Elliott Sales de Andrade - 2.0.1-1 +- Update to latest release + +* Thu Aug 03 2017 Fedora Release Engineering - 2.0.0-3.2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 2.0.0-3.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sun Mar 12 2017 Peter Robinson 2.0.0-3 +- Fix NVR + +* Mon Mar 06 2017 Thomas Spura - 2.0.0-2.2 +- Remove copyrighted file from tarball (gh-8034) + +* Sat Feb 11 2017 Fedora Release Engineering - 2.0.0-2.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Jan 25 2017 Dan Horák - 2.0.0-2 +- Apply the 'aarch64' test tolerance patch on s390(x) also + +* Fri Jan 20 2017 Orion Poplawski - 2.0.0-1 +- Update to 2.0.0 final + +* Tue Jan 10 2017 Adam Williamson - 2.0.0-0.7.rc2 +- Update to 2.0.0rc2 +- Fix more big-endian integer issues +- Apply the 'aarch64' test tolerance patch on ppc64 also (it's affected by same issues) +- Tweak the 'i686' test tolerance patch a bit (some errors are gone, some new ones) +- Re-enable test suite for all arches +- Note a remaining quasi-random test issue that causes build to fail sometimes + +* Mon Jan 09 2017 Adam Williamson - 2.0.0-0.6.b4 +- Fix another integer type issue which caused more issues on ppc64 + +* Sun Jan 08 2017 Adam Williamson - 2.0.0-0.5.b4 +- Fix int type conversion error that broke text rendering on ppc64 (#1411070) + +* Tue Dec 13 2016 Charalampos Stratakis - 2.0.0-0.4.b4 +- Rebuild for Python 3.6 + +* Mon Oct 24 2016 Dan Horák - 2.0.0-0.3.b4 +- disable tests on some alt-arches to unblock depending builds + +* Mon Sep 26 2016 Dominik Mierzejewski - 2.0.0-0.2.b4 +- add missing runtime dependencies for python2 package + +* Sat Sep 10 2016 Dominik Mierzejewski - 2.0.0-0.1.b4 +- Update to 2.0.0b4 +- Drop upstreamed or obsolete patches +- python-cycler >= 0.10.0 is required +- move around Requires and BRs and sort more or less alphabetically +- don't ship baseline images for tests (like Debian) +- Require stix fonts only when they're not bundled +- disable HTML doc building for bootstrapping 2.0.x series +- relax image rendering tests tolerance due to freetype version differences +- disable some failing tests on aarch64 for now + +* Tue Jul 19 2016 Fedora Release Engineering - 1.5.2-0.2.rc2 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Fri Jun 03 2016 Dominik Mierzejewski - 1.5.1-7 +- Update to 1.5.2rc2. +- Drop wrong hunk from use-system-six patch. +- Patch new qhull paths on F25+ instead of using sed. +- Rebase failing tests patch. + +* Mon May 23 2016 Dominik Mierzejewski - 1.5.1-6 +- Upstream no longer ships non-free images, use pristine source. + +* Wed May 18 2016 Dominik Mierzejewski - 1.5.1-5 +- Unbundle python-six (#1336740). +- Run tests (and temporarily disable failing ones). +- Use upstream-recommended way of running tests in parallel. +- python2-cycler and -mock are required for running tests. + +* Sat Apr 30 2016 Ralf Corsépius - 1.5.1-4 +- Rebuild for qhull-2015.2-1. +- Reflect qhull_a.h's location having changed. + +* Wed Apr 6 2016 Orion Poplawski - 1.5.1-3 +- Add requires python-cycler + +* Tue Apr 05 2016 Jon Ciesla - 1.5.1-2 +- Drop agg-devel BR, fix sphinx build with python*cycler BR + +* Mon Apr 04 2016 Thomas Spura - 1.5.1-1 +- update to 1.5.1 (#1276806) +- Add missing requires of dvipng to python3-matplotlib (#1270202) +- use bundled agg (#1276806) +- Drop cxx patch (was dropped upstream) +- Regenerate search path patch2 + +* Mon Apr 04 2016 Thomas Spura - 1.4.3-13 +- Require the qt5 subpackage from the qt4 subpackage (#1219556) + +* Thu Feb 04 2016 Fedora Release Engineering - 1.4.3-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Jan 12 2016 Thomas Spura - 1.4.3-11 +- Fix another requires of the main package + +* Thu Jan 07 2016 Thomas Spura - 1.4.3-10 +- Fix requiring the correct backend from the main package + +* Thu Jan 07 2016 Thomas Spura - 1.4.3-9 +- regenerate tarball to exclude lena image (#1295174) + +* Sun Nov 15 2015 Thomas Spura - 1.4.3-8 +- Pick upstream patch for fixing the gdk backend #1231748 +- Add python2 subpackages and use python_provide + +* Tue Nov 10 2015 Fedora Release Engineering - 1.4.3-7 +- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 + +* Thu Jun 18 2015 Fedora Release Engineering - 1.4.3-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat May 02 2015 Kalev Lember - 1.4.3-5 +- Rebuilt for GCC 5 C++11 ABI change + +* Wed Feb 25 2015 Zbigniew Jędrzejewski-Szmek - 1.4.3-4 +- Split out python-matplotlib-gtk, python-matplotlib-gtk3, + python3-matplotlib-gtk3 subpackages (#1067373) +- Add missing requirements on gtk + +* Tue Feb 24 2015 Zbigniew Jędrzejewski-Szmek - 1.4.3-3 +- Use %%license, add skimage to build requirements + +* Tue Feb 17 2015 Elliott Sales de Andrade - 1.4.3-2 +- Disable Qt5 backend on Fedora <21 and RHEL + +* Tue Feb 17 2015 Elliott Sales de Andrade - 1.4.3-1 +- New upstream release (#1134007) +- Add Qt5 backend + +* Tue Jan 13 2015 Elliott Sales de Andrade - 1.4.2-1 +- Bump to new upstream release +- Add qhull-devel to BR +- Add six to Requires + +* Sun Aug 17 2014 Fedora Release Engineering - 1.3.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 1.3.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed May 21 2014 Jaroslav Škarvada - 1.3.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Changes/f21tcl86 + +* Wed May 14 2014 Bohuslav Kabrda - 1.3.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 + +* Tue Feb 11 2014 pcpa - 1.3.1-3 +- Make TkAgg the default backend +- Remove python2 dependency from -data subpackage + +* Mon Jan 27 2014 pcpa - 1.3.1-2 +- Correct environment for and enable %%check +- Install system wide matplotlibrc under /etc +- Do not duplicate mpl-data for python2 and python3 packages +- Conditionally bundle data fonts (https://fedorahosted.org/fpc/ticket/381) + +* Sat Jan 25 2014 Thomas Spura - 1.3.1-1 +- update to 1.3.1 +- use GTKAgg as backend (#1030396, #982793, #1049624) +- use fontconfig +- add %%check for local testing (testing requires a display) + +* Wed Aug 7 2013 Thomas Spura - 1.3.0-1 +- update to new version +- use xz to compress sources +- drop fontconfig patch (upstream) +- drop tk patch (upstream solved build issue differently) +- redo use system agg patch +- delete bundled python-pycxx headers +- fix requires of python3-matplotlib-qt (fixes #988412) + +* Sun Aug 04 2013 Fedora Release Engineering - 1.2.0-15 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Mon Jun 10 2013 Jon Ciesla - 1.2.0-14 +- agg rebuild. + +* Wed Apr 10 2013 Thomas Spura - 1.2.0-13 +- use python3 version in python3-matplotlib-qt4 (#915727) +- include __pycache__ files in correct subpackages on python3 + +* Wed Apr 3 2013 Thomas Spura - 1.2.0-12 +- Decode output of subprocess to utf-8 or regex will fail (#928326) + +* Tue Apr 2 2013 pcpa - 1.2.0-11 +- Make stix-fonts a requires of matplotlib (#928326) + +* Thu Mar 28 2013 pcpa - 1.2.0-10 +- Use stix fonts avoid problems with missing cm fonts (#908717) +- Correct type mismatch in python3 font_manager (#912843, #928326) + +* Thu Feb 14 2013 Fedora Release Engineering - 1.2.0-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Wed Jan 16 2013 pcpa - 1.2.0-8 +- Update fontconfig patch to apply issue found by upstream +- Update fontconfig patch to apply issue with missing afm fonts (#896182) + +* Wed Jan 16 2013 pcpa - 1.2.0-7 +- Use fontconfig by default (#885307) + +* Thu Jan 3 2013 David Malcolm - 1.2.0-6 +- remove wx support for rhel >= 7 + +* Tue Dec 04 2012 pcpa - 1.2.0-5 +- Reinstantiate wx backend for python2.x. +- Run setup.py under xvfb-run to detect and default to gtk backend (#883502) +- Split qt4 backend subpackage and add proper requires for it. +- Correct wrong regex in tcl libdir patch. + +* Tue Nov 27 2012 pcpa - 1.2.0-4 +- Obsolete python-matplotlib-wx for clean updates. + +* Tue Nov 27 2012 pcpa - 1.2.0-3 +- Enable python 3 in fc18 as build requires are now available (#879731) + +* Thu Nov 22 2012 pcpa - 1.2.0-2 +- Build python3 only on f19 or newer (#837156) +- Build requires python3-six if building python3 support (#837156) + +* Thu Nov 22 2012 pcpa - 1.2.0-1 +- Update to version 1.2.0 +- Revert to regenerate tarball with generate-tarball.sh (#837156) +- Assume update to 1.2.0 is for recent releases +- Remove %%defattr +- Remove %%clean +- Use simpler approach to build html documentation +- Do not use custom/outdated setup.cfg +- Put one BuildRequires per line +- Enable python3 support +- Cleanup spec as wx backend is no longer supported +- Use default agg backend +- Fix bogus dates in changelog by assuming only week day was wrong + +* Fri Aug 17 2012 Jerry James - 1.1.1-1 +- Update to version 1.1.1. +- Remove obsolete spec file elements +- Fix sourceforge URLs +- Allow sample data to have a different version number than the sources +- Don't bother removing problematic file since we remove entire agg24 directory +- Fix building with pygtk in the absence of an X server +- Don't install license text for bundled software that we don't bundle + +* Sat Jul 21 2012 Fedora Release Engineering - 1.0.1-21 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Jul 3 2012 pcpa - 1.1.0-1 +- Update to version 1.1.0. +- Do not regenerate upstream tarball but remove problematic file in %%prep. +- Remove non longer applicable/required patch0. +- Rediff/rename -noagg patch. +- Remove propagate-timezone-info-in-plot_date-xaxis_da patch already applied. +- Remove tkinter patch now with critical code in a try block. +- Remove png 1.5 patch as upstream is now png 1.5 aware. +- Update file list. + +* Wed Apr 18 2012 David Malcolm - 1.0.1-20 +- remove wx support for rhel >= 7 + +* Tue Feb 28 2012 Fedora Release Engineering - 1.0.1-19 +- Rebuilt for c++ ABI breakage + +* Sat Jan 14 2012 Fedora Release Engineering - 1.0.1-18 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Tue Dec 6 2011 David Malcolm - 1.0.1-17 +- fix the build against libpng 1.5 + +* Tue Dec 6 2011 David Malcolm - 1.0.1-16 +- fix egg-info conditional for RHEL + +* Tue Dec 06 2011 Adam Jackson - 1.0.1-15 +- Rebuild for new libpng + +* Mon Oct 31 2011 Dan Horák - 1.0.1-14 +- fix build with new Tkinter which doesn't return an expected value in __version__ + +* Thu Sep 15 2011 Jef Spaleta - 1.0.1-13 +- apply upstream bugfix for timezone formatting (Bug 735677) + +* Fri May 20 2011 Orion Poplawski - 1.0.1-12 +- Add Requires dvipng (Bug 684836) +- Build against system agg (Bug 612807) +- Use system pyparsing (Bug 702160) + +* Sat Feb 26 2011 Jonathan G. Underwood - 1.0.1-11 +- Set PYTHONPATH during html doc building using find to prevent broken builds + +* Sat Feb 26 2011 Jonathan G. Underwood - 1.0.1-10 +- Spec file cleanups for readability + +* Sat Feb 26 2011 Jonathan G. Underwood - 1.0.1-9 +- Bump and rebuild + +* Sat Feb 26 2011 Jonathan G. Underwood - 1.0.1-8 +- Fix spec file typos so package builds + +* Fri Feb 25 2011 Jonathan G. Underwood - 1.0.1-7 +- Remove a debugging echo statement from the spec file +- Fix some line endings and permissions in -doc sub-package + +* Fri Feb 25 2011 Jonathan G. Underwood - 1.0.1-6 +- Spec file cleanups to silence some rpmlint warnings + +* Mon Feb 21 2011 Jonathan G. Underwood - 1.0.1-5 +- Add default attr to doc sub-package file list +- No longer designate -doc subpackage as noarch +- Add arch specific Requires for tk, wx and doc sub-packages + +* Mon Feb 21 2011 Jonathan G. Underwood - 1.0.1-4 +- Enable wxPython backend +- Make -doc sub-package noarch + +* Mon Feb 21 2011 Jonathan G. Underwood - 1.0.1-3 +- Add conditional for optionally building doc sub-package +- Add flag to build low res images for documentation +- Add matplotlib-1.0.1-plot_directive.patch to fix build of low res images +- Remove unused patches + +* Sat Feb 19 2011 Jonathan G. Underwood - 1.0.1-2 +- Build and package HTML documentation in -doc sub-package +- Move examples to -doc sub-package +- Make examples non-executable + +* Fri Feb 18 2011 Thomas Spura - 1.0.1-1 +- update to new bugfix version (#678489) +- set file attributes in tk subpackage +- filter private *.so + +* Tue Feb 08 2011 Fedora Release Engineering - 1.0.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Thu Jul 22 2010 David Malcolm - 1.0.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild + +* Thu Jul 8 2010 Jef Spaleta - 1.0.0-1 +- New upstream release +- Remove undistributable file from bundled agg library + +* Thu Jul 1 2010 Jef Spaleta - 0.99.3-1 +- New upstream release + +* Thu May 27 2010 Jef Spaleta - 0.99.1.2-4 +- Upstream patch to fix deprecated gtk tooltip warning. + +* Mon Apr 12 2010 Jef Spaleta - 0.99.1.2-2 +- Bump to rebuild against numpy 1.3 + +* Thu Apr 1 2010 Jef Spaleta - 0.99.1.2-1 +- Bump to rebuild against numpy 1.4.0 + +* Fri Dec 11 2009 Jon Ciesla - 0.99.1.2 +- Update to 0.99.1.2 + +* Sun Jul 26 2009 Fedora Release Engineering - 0.98.5.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Fri Mar 06 2009 Jef Spaleta - 0.98.5-4 +- Fixed font dep after font guideline change + +* Thu Feb 26 2009 Fedora Release Engineering - 0.98.5.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Tue Dec 23 2008 Jef Spaleta - 0.98.5-2 +- Add dep on DejaVu Sans font for default font support + +* Mon Dec 22 2008 Jef Spaleta - 0.98.5-1 +- Latest upstream release +- Strip out included fonts + +* Sat Nov 29 2008 Ignacio Vazquez-Abrams - 0.98.3-2 +- Rebuild for Python 2.6 + +* Wed Aug 6 2008 Jef Spaleta - 0.98.3-1 +- Latest upstream release + +* Tue Jul 1 2008 Jef Spaleta - 0.98.1-1 +- Latest upstream release + +* Fri Mar 21 2008 Jef Spaleta - 0.91.2-2 +- gcc43 cleanups + +* Fri Mar 21 2008 Jef Spaleta - 0.91.2-1 +- New upstream version +- Adding Fedora specific setup.cfg from included template +- removed numarry and numerics build requirements + +* Tue Feb 19 2008 Fedora Release Engineering - 0.90.1-6 +- Autorebuild for GCC 4.3 + +* Fri Jan 4 2008 Alex Lancaster - 0.90.1-5 +- Fixed typo in spec. + +* Fri Jan 4 2008 Alex Lancaster - 0.90.1-4 +- Support for Python Eggs for F9+ + +* Thu Jan 3 2008 Alex Lancaster - 0.90.1-3 +- Rebuild for new Tcl 8.5 + +* Thu Aug 23 2007 Orion Poplawski 0.90.1-2 +- Update license tag to Python +- Rebuild for BuildID + +* Mon Jun 04 2007 Orion Poplawski 0.90.1-1 +- Update to 0.90.1 + +* Wed Feb 14 2007 Orion Poplawski 0.90.0-2 +- Rebuild for Tcl/Tk downgrade + +* Sat Feb 10 2007 Jef Spaleta 0.90.0-2 +- Release bump for rebuild against new tk + +* Fri Feb 09 2007 Orion Poplawski 0.90.0-1 +- Update to 0.90.0 + +* Fri Jan 5 2007 Orion Poplawski 0.87.7-4 +- Add examples to %%docs + +* Mon Dec 11 2006 Jef Spaleta 0.87.7-3 +- Release bump for rebuild against python 2.5 in devel tree + +* Tue Dec 5 2006 Orion Poplawski 0.87.7-2 +- Force build of gtk/gtkagg backends in mock (bug #218153) +- Change Requires from python-numeric to numpy (bug #218154) + +* Tue Nov 21 2006 Orion Poplawski 0.87.7-1 +- Update to 0.87.7 and fix up the defaults to use numpy +- Force build of tkagg backend without X server +- Use src.rpm from Jef Spaleta, closes bug 216578 + +* Fri Oct 6 2006 Orion Poplawski 0.87.6-1 +- Update to 0.87.6 + +* Thu Sep 7 2006 Orion Poplawski 0.87.5-1 +- Update to 0.87.5 + +* Thu Jul 27 2006 Orion Poplawski 0.87.4-1 +- Update to 0.87.4 + +* Wed Jun 7 2006 Orion Poplawski 0.87.3-1 +- Update to 0.87.3 + +* Mon May 15 2006 Orion Poplawski 0.87.2-2 +- Rebuild for new numpy + +* Tue Mar 7 2006 Orion Poplawski 0.87.2-1 +- Update to 0.87.2 + +* Tue Mar 7 2006 Orion Poplawski 0.87.1-1 +- Update to 0.87.1 +- Add pycairo >= 1.0.2 requires (FC5+ only) + +* Fri Feb 24 2006 Orion Poplawski 0.87-1 +- Update to 0.87 +- Add BR numpy and python-numarray +- Add patch to keep Numeric as the default numerix package +- Add BR tkinter and tk-devel for TkInter backend +- Make separate package for Tk backend + +* Tue Jan 10 2006 Orion Poplawski 0.86-1 +- Update to 0.86 + +* Thu Dec 22 2005 Orion Poplawski 0.85-2 +- Rebuild + +* Sun Nov 20 2005 Orion Poplawski 0.85-1 +- New upstream version 0.85 + +* Mon Sep 19 2005 Orion Poplawski 0.84-1 +- New upstream version 0.84 + +* Tue Aug 02 2005 Orion Poplawski 0.83.2-3 +- bump release + +* Tue Aug 02 2005 Orion Poplawski 0.83.2-2 +- Add Requires: python-numeric, pytz, python-dateutil + +* Fri Jul 29 2005 Orion Poplawski 0.83.2-1 +- New upstream version matplotlib 0.83.2 + +* Thu Jul 28 2005 Orion Poplawski 0.83.1-2 +- Bump rel to fix botched tag + +* Thu Jul 28 2005 Orion Poplawski 0.83.1-1 +- New upstream version matplotlib 0.83.1 + +* Tue Jul 05 2005 Orion Poplawski 0.82-4 +- BuildRequires: pytz, python-dateutil - use upstream +- Don't use INSTALLED_FILES, list dirs +- Fix execute permissions + +* Fri Jul 01 2005 Orion Poplawski 0.82-3 +- Use %%{python_sitearch} + +* Thu Jun 30 2005 Orion Poplawski 0.82-2 +- Rename to python-matplotlib +- Remove unneeded Requires: python +- Add private directories to %%files + +* Tue Jun 28 2005 Orion Poplawski 0.82-1 +- Initial package for Fedora Extras + +## END: Generated by rpmautospec