Compare commits

...

10 Commits

Author SHA1 Message Date
openeuler-ci-bot
6c7a5c15b9
!16 [sync] PR-14: Upgrade python-matplotlib 3.6.2
From: @openeuler-sync-bot 
Reviewed-by: @caodongxia 
Signed-off-by: @caodongxia
2022-12-12 02:28:05 +00:00
cherry530
462410c875 Upgrade 3.6.2
Signed-off-by: cherry530 <xuping33@huawei.com>
(cherry picked from commit 3c152cedddb38f7bb5533df906313b1ecabde105)
2022-12-12 10:05:10 +08:00
openeuler-ci-bot
c203584c65
!10 [sync] PR-9: enable debuginfo
From: @openeuler-sync-bot 
Reviewed-by: @shinwell_hu 
Signed-off-by: @shinwell_hu
2022-04-14 01:16:04 +00:00
chen-jan
882bc42b3e enable debuginfo
(cherry picked from commit 586219546b83c8bc15afd969e4865b0c00433ba0)
2022-03-07 14:32:02 +08:00
openeuler-ci-bot
264756a697
!7 openEuler-22.03-LTS-Next Packages upgrade
From: @cherry530 
Reviewed-by: @shinwell_hu 
Signed-off-by: @shinwell_hu
2022-02-14 06:18:21 +00:00
cherry530
f3cb23da86 remove unuse files 2022-02-09 17:47:57 +08:00
openeuler-ci-bot
9781413524 !6 [sync] PR-5: Fix the function-import matplotlib and import matplotlib.pyplot
From: @openeuler-sync-bot
Reviewed-by: @shinwell_hu
Signed-off-by: @shinwell_hu
2021-03-11 19:08:56 +08:00
caodongxia
f63cd55428 fix issue
(cherry picked from commit dcab3ba15571a2aebdec7af99c034dee4f046427)
2021-03-11 11:14:35 +08:00
openeuler-ci-bot
46033d17ec !3 remove python2 dependency
From: @chengzihan2
Reviewed-by: @jeff200902,@small_leek
Signed-off-by: @small_leek
2021-02-19 17:08:09 +08:00
chengzihan2
cecc92b27c remove python2 dependency 2021-02-19 15:52:28 +08:00
10 changed files with 477 additions and 151 deletions

View File

@ -0,0 +1,43 @@
From 3e43f06eaad8cdb48d30b4cbe23a881c6fa5c1ff Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Wed, 27 Sep 2017 19:35:59 -0400
Subject: [PATCH 1/4] matplotlibrc path search fix
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
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 77d25bbe33..9786447e23 100644
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
@@ -540,7 +540,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():
@@ -560,6 +561,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.
"""
@@ -578,6 +580,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.36.1

View File

@ -0,0 +1,157 @@
From c7f6a197992cfd989fddb858afcde5abcdecf70e Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Fri, 14 Feb 2020 06:05:42 -0500
Subject: [PATCH 2/4] Set FreeType version to 2.12.1 and update tolerances.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/__init__.py | 2 +-
lib/matplotlib/tests/test_axes.py | 4 ++--
lib/matplotlib/tests/test_constrainedlayout.py | 6 +++---
lib/matplotlib/tests/test_polar.py | 2 +-
lib/matplotlib/tests/test_tightlayout.py | 10 +++++-----
setupext.py | 15 +++++++++++++--
6 files changed, 25 insertions(+), 14 deletions(-)
diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py
index 9786447e23..56266f0688 100644
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
@@ -1213,7 +1213,7 @@ default_test_modules = [
def _init_tests():
# The version of FreeType to install locally for running the
# tests. This must match the value in `setupext.py`
- LOCAL_FREETYPE_VERSION = '2.6.1'
+ LOCAL_FREETYPE_VERSION = '2.12.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 8d6466c749..c8604b8657 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -7210,7 +7210,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],
@@ -7228,7 +7228,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_constrainedlayout.py b/lib/matplotlib/tests/test_constrainedlayout.py
index 64906b74c3..bfa53cd430 100644
--- a/lib/matplotlib/tests/test_constrainedlayout.py
+++ b/lib/matplotlib/tests/test_constrainedlayout.py
@@ -431,7 +431,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():
@@ -637,7 +637,7 @@ 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)
@@ -652,7 +652,7 @@ 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)
diff --git a/lib/matplotlib/tests/test_polar.py b/lib/matplotlib/tests/test_polar.py
index c51508ae22..942ffcb521 100644
--- a/lib/matplotlib/tests/test_polar.py
+++ b/lib/matplotlib/tests/test_polar.py
@@ -314,7 +314,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 1eb7b4b453..697eba3211 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()
# 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]]]
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 0387223b94..13096a812c 100644
--- a/setupext.py
+++ b/setupext.py
@@ -168,13 +168,23 @@ _freetype_hashes = {
'955e17244e9b38adb0c98df66abb50467312e6bb70eac07e49ce6bd1a20e809a',
'2.10.1':
'3a60d391fd579440561bf0e7f31af2222bc610ad6ce4d9d7bd2165bca8669110',
+ '2.10.2':
+ 'e09aa914e4f7a5d723ac381420949c55c0b90b15744adce5d1406046022186ab',
+ '2.10.4':
+ '5eab795ebb23ac77001cfb68b7d4d50b5d6c7469247b0b01b2c953269f658dac',
+ '2.11.0':
+ 'a45c6b403413abd5706f3582f04c8339d26397c4304b78fa552f2215df64101f',
'2.11.1':
- 'f8db94d307e9c54961b39a1cc799a67d46681480696ed72ecf78d4473770f09b'
+ 'f8db94d307e9c54961b39a1cc799a67d46681480696ed72ecf78d4473770f09b',
+ '2.12.0':
+ '7940a46eeb0255baaa87c553d72778c4f8daa2b8888c8e2a05766a2a8686740c',
+ '2.12.1':
+ 'efe71fd4b8246f1b0b1b9bfca13cfff1c9ad85930340c27df469733bbb620938',
}
# 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`.
-TESTING_VERSION_OF_FREETYPE = '2.6.1'
+TESTING_VERSION_OF_FREETYPE = '2.12.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
@@ -584,6 +594,7 @@ class FreeType(SetupPackage):
ext.extra_objects.insert(
0, str(src_path / 'objs' / '.libs' / libfreetype))
ext.define_macros.append(('FREETYPE_BUILD_TYPE', 'local'))
+ ext.libraries.append('brotlidec')
def do_custom_build(self, env):
# We're using a system freetype
--
2.36.1

View File

@ -0,0 +1,158 @@
From 0939c27b1d47cabd19c09fc09f15ef4fb18331b4 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Tue, 24 Aug 2021 04:47:50 -0400
Subject: [PATCH 3/4] Increase a few test tolerances on some arches.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_axes.py | 6 ++++--
lib/matplotlib/tests/test_backend_pgf.py | 2 +-
lib/matplotlib/tests/test_colorbar.py | 5 ++++-
lib/matplotlib/tests/test_contour.py | 3 ++-
lib/matplotlib/tests/test_image.py | 4 ++--
lib/matplotlib/tests/test_lines.py | 4 +++-
lib/matplotlib/tests/test_mathtext.py | 7 +++++--
7 files changed, 21 insertions(+), 10 deletions(-)
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index c8604b8657..da72bb9415 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -1031,7 +1031,8 @@ def test_imshow():
ax.imshow("r", data=data)
-@image_comparison(['imshow_clip'], style='mpl20')
+@image_comparison(['imshow_clip'], style='mpl20',
+ tol=0 if platform.machine() == 'x86_64' else 1.24)
def test_imshow_clip():
# As originally reported by Gellule Xg <gellule.xg@free.fr>
# use former defaults to match existing baseline image
@@ -2340,7 +2341,8 @@ def test_contour_hatching():
extend='both', alpha=0.5)
-@image_comparison(['contour_colorbar'], style='mpl20')
+@image_comparison(['contour_colorbar'], style='mpl20',
+ tol=0 if platform.machine() == 'x86_64' else 0.02)
def test_contour_colorbar():
x, y, z = contour_dat()
diff --git a/lib/matplotlib/tests/test_backend_pgf.py b/lib/matplotlib/tests/test_backend_pgf.py
index 482bc073a7..ab16d9736c 100644
--- a/lib/matplotlib/tests/test_backend_pgf.py
+++ b/lib/matplotlib/tests/test_backend_pgf.py
@@ -169,7 +169,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.9)
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_colorbar.py b/lib/matplotlib/tests/test_colorbar.py
index 4336b761f6..7d3927408b 100644
--- a/lib/matplotlib/tests/test_colorbar.py
+++ b/lib/matplotlib/tests/test_colorbar.py
@@ -1,3 +1,5 @@
+import platform
+
import numpy as np
import pytest
@@ -233,7 +235,8 @@ def test_colorbar_single_ax_panchor_east(constrained):
assert ax.get_anchor() == 'E'
-@image_comparison(['contour_colorbar.png'], remove_text=True)
+@image_comparison(['contour_colorbar.png'], remove_text=True,
+ tol=0 if platform.machine() == 'x86_64' else 0.01)
def test_contour_colorbar():
fig, ax = plt.subplots(figsize=(4, 2))
data = np.arange(1200).reshape(30, 40) - 500
diff --git a/lib/matplotlib/tests/test_contour.py b/lib/matplotlib/tests/test_contour.py
index 8bf77f0d54..82c0b09ac3 100644
--- a/lib/matplotlib/tests/test_contour.py
+++ b/lib/matplotlib/tests/test_contour.py
@@ -319,7 +319,8 @@ def test_contourf_log_extension():
@image_comparison(['contour_addlines.png'],
- remove_text=True, style='mpl20', tol=0.03)
+ remove_text=True, style='mpl20',
+ tol=0.03 if platform.machine() == 'x86_64' else 0.15)
# tolerance is because image changed minutely when tick finding on
# colorbars was cleaned up...
def test_contour_addlines():
diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py
index 46dbe4cfe8..268473c6c0 100644
--- a/lib/matplotlib/tests/test_image.py
+++ b/lib/matplotlib/tests/test_image.py
@@ -1322,8 +1322,8 @@ def test_nonuniform_and_pcolor():
ax.set(xlim=(0, 10))
-@image_comparison(["rgba_antialias.png"], style="mpl20",
- remove_text=True)
+@image_comparison(["rgba_antialias.png"], style="mpl20", remove_text=True,
+ tol=0 if platform.machine() == 'x86_64' else 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_lines.py b/lib/matplotlib/tests/test_lines.py
index e7002df8a5..8738fd94a0 100644
--- a/lib/matplotlib/tests/test_lines.py
+++ b/lib/matplotlib/tests/test_lines.py
@@ -3,6 +3,7 @@ Tests specific to the lines module.
"""
import itertools
+import platform
import timeit
from types import SimpleNamespace
@@ -165,7 +166,8 @@ def test_set_drawstyle():
assert len(line.get_path().vertices) == len(x)
-@image_comparison(['line_collection_dashes'], remove_text=True, style='mpl20')
+@image_comparison(['line_collection_dashes'], remove_text=True, style='mpl20',
+ tol=0 if platform.machine() == 'x86_64' else 0.62)
def test_set_line_coll_dash_image():
fig, ax = plt.subplots()
np.random.seed(0)
diff --git a/lib/matplotlib/tests/test_mathtext.py b/lib/matplotlib/tests/test_mathtext.py
index 7f8b06fa0e..d7d5e687fe 100644
--- a/lib/matplotlib/tests/test_mathtext.py
+++ b/lib/matplotlib/tests/test_mathtext.py
@@ -1,5 +1,6 @@
import io
from pathlib import Path
+import platform
import re
import shlex
from xml.etree import ElementTree as ET
@@ -198,7 +199,8 @@ def baseline_images(request, fontset, index, text):
@pytest.mark.parametrize(
'fontset', ['cm', 'stix', 'stixsans', 'dejavusans', 'dejavuserif'])
@pytest.mark.parametrize('baseline_images', ['mathtext'], indirect=True)
-@image_comparison(baseline_images=None)
+@image_comparison(baseline_images=None,
+ tol=0.011 if platform.machine() in ('ppc64le', 's390x') else 0)
def test_mathtext_rendering(baseline_images, fontset, index, text):
mpl.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))
@@ -239,7 +241,8 @@ def test_mathtext_rendering_lightweight(baseline_images, fontset, index, text):
@pytest.mark.parametrize(
'fontset', ['cm', 'stix', 'stixsans', 'dejavusans', 'dejavuserif'])
@pytest.mark.parametrize('baseline_images', ['mathfont'], indirect=True)
-@image_comparison(baseline_images=None, extensions=['png'])
+@image_comparison(baseline_images=None, extensions=['png'],
+ tol=0.011 if platform.machine() in ('ppc64le', 's390x') else 0)
def test_mathfont_rendering(baseline_images, fontset, index, text):
mpl.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))
--
2.36.1

View File

@ -0,0 +1,36 @@
From 77d0ef4bac7e14da704556a6f1f99962b0864a6a Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Mon, 22 Aug 2022 18:43:28 -0400
Subject: [PATCH 4/4] Use old stride_windows implementation on 32-bit x86
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/mlab.py | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/matplotlib/mlab.py b/lib/matplotlib/mlab.py
index 5e85a9c119..d75acf6d26 100644
--- a/lib/matplotlib/mlab.py
+++ b/lib/matplotlib/mlab.py
@@ -52,6 +52,7 @@ Spectral functions
import functools
from numbers import Number
+import sys
import numpy as np
@@ -252,7 +253,9 @@ def stride_windows(x, n, noverlap=None, axis=0):
def _stride_windows(x, n, noverlap=0, axis=0):
# np>=1.20 provides sliding_window_view, and we only ever use axis=0.
- if hasattr(np.lib.stride_tricks, "sliding_window_view") and axis == 0:
+ if (sys.maxsize > 2**32 and # NumPy version on 32-bit OOMs.
+ hasattr(np.lib.stride_tricks, "sliding_window_view") and
+ axis == 0):
if noverlap >= n:
raise ValueError('noverlap must be less than n')
return np.lib.stride_tricks.sliding_window_view(
--
2.36.1

View File

@ -0,0 +1,28 @@
diff --git a/setup.py b/setup.py
index d1f1de7..1d64d11 100644
--- a/setup.py
+++ b/setup.py
@@ -303,12 +303,11 @@ setup( # Finally, pass this all along to setuptools to do the heavy lifting.
setup_requires=[
"certifi>=2020.06.20",
"numpy>=1.19",
- "setuptools_scm>=7",
+ "setuptools_scm>=4",
],
install_requires=[
- "contourpy>=1.0.1",
"cycler>=0.10",
- "fonttools>=4.22.0",
+ "fonttools>=3.29.0",
"kiwisolver>=1.0.1",
"numpy>=1.19",
"packaging>=20.0",
@@ -317,7 +316,7 @@ setup( # Finally, pass this all along to setuptools to do the heavy lifting.
"python-dateutil>=2.7",
] + (
# Installing from a git checkout that is not producing a wheel.
- ["setuptools_scm>=7"] if (
+ ["setuptools_scm>=4"] if (
Path(__file__).with_name(".git").exists() and
os.environ.get("CIBUILDWHEEL", "0") != "1"
) else []

View File

@ -1,7 +1,8 @@
[libs]
system_freetype = True
system_qhull = True
[packages]
tests = True
toolkits = True
toolkits_tests = True
[rc_options]
backend = GTKAgg

View File

@ -1,109 +1,28 @@
Name: python-matplotlib
Version: 2.2.4
Release: 2
Version: 3.6.2
Release: 1
Summary: A comprehensive library for creating static, animated, and interactive visualizations
License: Python and MIT
URL: http://matplotlib.org
License: Python and MIT and OFL-1.1 and Public Domain
URL: https://github.com/matplotlib/matplotlib
Source0: https://github.com/matplotlib/matplotlib/archive/v%{version}/matplotlib-%{version}.tar.gz
# The config file for python-matplotlib
Source1: setup.cfg
Source1000: https://github.com/QuLogic/mpl-images/archive/v2.2.3-with-freetype-2.8/matplotlib-2.2.3-with-freetype-2.9.1.tar.gz
Source1: mplsetup.cfg
Source1000: https://github.com/QuLogic/mpl-images/archive/v3.6.1-with-freetype-2.12.1/matplotlib-3.6.1-with-freetype-2.12.1.tar.gz
Patch0001: 0001-matplotlibrc-path-search-fix.patch
Patch0002: 0002-Set-FreeType-version-to-2.12.1-and-update-tolerances.patch
Patch0003: 0003-Increase-a-few-test-tolerances-on-some-arches.patch
Patch0004: 0004-Use-old-stride_windows-implementation-on-32-bit-x86.patch
Patch0005: adapted-requires-package-version.patch
BuildRequires: freetype-devel libpng-devel qhull-devel texlive-cm xorg-x11-server-Xvfb zlib-devel
BuildRequires: python3-certifi
BuildRequires: python3-numpy python3-pip python3-wheel python3-setuptools_scm ghostscript
%description
The package produces publication-quality figures in a variety of hardcopy formats and interactive environments
across platforms.
%package -n python2-matplotlib
Summary: Plotting with Python
BuildRequires: python2-numpy python2-pyparsing python2-dateutil python2-kiwisolver
BuildRequires: python2-pyside python2-setuptools python2-six python2-sphinx python2-subprocess32
BuildRequires: python2-devel python2-backports-functools_lru_cache python2-pillow python2-pytz
Requires: dejavu-sans-fonts dvipng python2-numpy python2-pyparsing python2-cycler >= 0.10.0
Requires: python2-dateutil python2-kiwisolver python2-backports-functools_lru_cache
Requires: python-matplotlib-data = %{version}-%{release} python2-six python2-subprocess32
Requires: python2-matplotlib-tk = %{version}-%{release} python2-pytz
Provides: bundled(stix-math-fonts) bundled(agg) = 2.4 bundled(ttconv) bundled(js-jquery1) = 1.11.3
Provides: bundled(js-jquery1-ui) = 1.11.4 bundled(texlive-helvetic)
Recommends: python2-pillow
%python_provide python2-matplotlib
%description -n python2-matplotlib
The package produces publication-quality figures in a variety of hardcopy formats and interactive environments
across platforms.
%package -n python2-matplotlib-qt4
Summary: Qt4 backend for python-matplotlib
BuildRequires: PyQt4-devel
Requires: python2-PyQt4 python2-matplotlib = %{version}-%{release} python2-matplotlib-qt5
%python_provide python2-matplotlib-qt4
%description -n python2-matplotlib-qt4
The qt4 backend for python-matplotlib.
%package -n python2-matplotlib-qt5
Summary: Qt5 backend for python-matplotlib
BuildRequires: python2-qt5
Requires: python2-qt5 python2-matplotlib = %{version}-%{release}
%python_provide python2-matplotlib-qt5
%description -n python2-matplotlib-qt5
The qt5 backend for python-matplotlib.
%package -n python2-matplotlib-gtk
Summary: GTK backend for python-matplotlib
BuildRequires: gtk2-devel pycairo-devel pygtk2-devel
Requires: pycairo pygtk2 python2-matplotlib = %{version}-%{release}
%python_provide python2-matplotlib-gtk
%description -n python2-matplotlib-gtk
The gtk backend for python-matplotlib.
%package -n python2-matplotlib-gtk3
Summary: GTK3 backend for python-matplotlib
BuildRequires: gtk3 pygobject3-base
Requires: gtk3 pygobject3-base python2-matplotlib = %{version}-%{release}
%python_provide python2-matplotlib-gtk3
%description -n python2-matplotlib-gtk3
The gtk3 backend for python-matplotlib.
%package -n python2-matplotlib-tk
Summary: Tk backend for python-matplotlib
BuildRequires: tcl-devel tkinter tk-devel
Requires: python2-matplotlib = %{version}-%{release} tkinter
%python_provide python2-matplotlib-tk
%description -n python2-matplotlib-tk
The tk backend for python-matplotlib.
%package -n python2-matplotlib-wx
Summary: wxPython backend for python-matplotlib
BuildRequires: wxPython-devel
Requires: python2-matplotlib = %{version}-%{release} python2-wxpython
%python_provide python2-matplotlib-wx
%description -n python2-matplotlib-wx
The wxPython backend for python-matplotlib.
%package -n python2-matplotlib-test-data
Summary: Test data for python2-matplotlib
Requires: python2-matplotlib = %{version}-%{release}
%python_provide python2-matplotlib-test-data
%description -n python2-matplotlib-test-data
Test data for python2-matplotlib.
%package -n python2-matplotlib-help
Summary: Documentation files for python-matplotlib
Requires: python2-matplotlib = %{version}-%{release}
Provides: python2-matplotlib-doc = %{version}-%{release}
Obsoletes: python2-matplotlib-doc < %{version}-%{release}
%python_provide python2-matplotlib-help
%description -n python2-matplotlib-help
Documentation files for python-matplotlib.
%package -n python-matplotlib-data
Summary: Data used by python-matplotlib
BuildArch: noarch
@ -184,69 +103,39 @@ Requires: python3-matplotlib = %{version}-%{release}
Test data for python3-matplotlib.
%prep
%autosetup -n matplotlib-%{version} -p1 -N
gzip -dc %SOURCE1000 | tar xvf - --transform='s~^mpl-images-2.2.3-with-freetype-2.9.1/\([^/]\+\)/~lib/\1/tests/baseline_images/~'
rm -r extern/libqhull
sed 's/\(backend = \).*/\1TkAgg/' >setup.cfg <%{SOURCE1}
%autosetup -n matplotlib-%{version} -N
%patch0001 -p1
%patch0002 -p1
%patch0005 -p1
gzip -dc %SOURCE1000 | tar xvf - --transform='s~^mpl-images-3.6.1-with-freetype-2.12.1/\([^/]\+\)/~lib/\1/tests/baseline_images/~'
# Copy setup.cfg to the builddir
cp -p %{SOURCE1} mplsetup.cfg
%patch0003 -p1
%patch0004 -p1
%build
export http_proxy=http://127.0.0.1/
MPLCONFIGDIR=$PWD MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data xvfb-run %{__python2} setup.py build
find examples -name '*.py' -exec chmod a-x '{}' \;
MPLCONFIGDIR=$PWD MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data xvfb-run %{__python3} setup.py build
PLCONFIGDIR=$PWD %py3_build
%install
export http_proxy=http://127.0.0.1/
MPLCONFIGDIR=$PWD MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data/ %{__python2} setup.py install -O1 --skip-build --root=%{buildroot}
chmod +x %{buildroot}%{python2_sitearch}/matplotlib/dates.py
MPLCONFIGDIR=$PWD %py3_install
mkdir -p %{buildroot}%{_sysconfdir} %{buildroot}%{_datadir}/matplotlib
mv %{buildroot}%{python2_sitearch}/matplotlib/mpl-data/matplotlibrc %{buildroot}%{_sysconfdir}
mv %{buildroot}%{python2_sitearch}/matplotlib/mpl-data %{buildroot}%{_datadir}/matplotlib
MPLCONFIGDIR=$PWD MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data/ %{__python3} setup.py install -O1 --skip-build --root=%{buildroot}
chmod +x %{buildroot}%{python3_sitearch}/matplotlib/dates.py
rm -fr %{buildroot}%{python3_sitearch}/matplotlib/mpl-data
mv %{buildroot}%{python3_sitearch}/matplotlib/mpl-data %{buildroot}%{_datadir}/matplotlib
%files -n python-matplotlib-data
%{_sysconfdir}/matplotlibrc
%{_datadir}/matplotlib/mpl-data/
%exclude %{_datadir}/matplotlib/mpl-data/fonts/
%files -n python-matplotlib-data-fonts
%{_datadir}/matplotlib/mpl-data/fonts/
%files -n python2-matplotlib
%doc README.rst LICENSE/
%{python2_sitearch}/{*egg-info,matplotlib-*-nspkg.pth,matplotlib/,mpl_toolkits/,pylab.py*}
%exclude %{python2_sitearch}/matplotlib/tests/baseline_images/*
%exclude %{python2_sitearch}/mpl_toolkits/tests/baseline_images/*
%exclude %{python2_sitearch}/matplotlib/backends/{backend_qt4*,backend_qt5*,backend_gtk*,_gtkagg.*,backend_tkagg.*}
%exclude %{python2_sitearch}/matplotlib/backends/{tkagg.*,_tkagg.so,backend_wx.*,backend_wxagg.*}
%exclude %{_pkgdocdir}/{*,*/*}
%files -n python2-matplotlib-test-data
%{python2_sitearch}/matplotlib/tests/baseline_images/
%{python2_sitearch}/mpl_toolkits/tests/baseline_images/
%files -n python2-matplotlib-qt4
%{python2_sitearch}/matplotlib/backends/{backend_qt4.*,backend_qt4agg.*}
%files -n python2-matplotlib-qt5
%{python2_sitearch}/matplotlib/backends/{backend_qt5.*,backend_qt5agg.*}
%files -n python2-matplotlib-gtk
%{python2_sitearch}/matplotlib/backends/{backend_gtk.py*,backend_gtkagg.py*,backend_gtkcairo.py*,_gtkagg.so}
%files -n python2-matplotlib-gtk3
%{python2_sitearch}/matplotlib/backends/backend_gtk3*.py*
%files -n python2-matplotlib-tk
%{python2_sitearch}/matplotlib/backends/{backend_tkagg.py*,tkagg.py*,_tkagg.so}
%files -n python2-matplotlib-wx
%{python2_sitearch}/matplotlib/backends/{backend_wx.*,backend_wxagg.*}
%files -n python2-matplotlib-help
%doc examples
%files -n python3-matplotlib
%doc README.rst LICENSE/
@ -255,7 +144,6 @@ rm -fr %{buildroot}%{python3_sitearch}/matplotlib/mpl-data
%{python3_sitearch}/{pylab.py*,__pycache__/*}
%exclude %{python3_sitearch}/matplotlib/tests/baseline_images/*
%exclude %{python3_sitearch}/mpl_toolkits/tests/baseline_images/*
%exclude %{python3_sitearch}/matplotlib/backends/{backend_qt4*,__pycache__/backend_qt4*}
%exclude %{python3_sitearch}/matplotlib/backends/{backend_qt5*,__pycache__/backend_qt5*}
%exclude %{python3_sitearch}/matplotlib/backends/{backend_gtk*,__pycache__/backend_gtk*}
%exclude %{python3_sitearch}/matplotlib/backends/{backend_tkagg.*,__pycache__/backend_tkagg.*}
@ -266,10 +154,6 @@ rm -fr %{buildroot}%{python3_sitearch}/matplotlib/mpl-data
%{python3_sitearch}/matplotlib/tests/baseline_images/
%{python3_sitearch}/mpl_toolkits/tests/baseline_images/
%files -n python3-matplotlib-qt4
%{python3_sitearch}/matplotlib/backends/{backend_qt4.*,__pycache__/backend_qt4.*}
%{python3_sitearch}/matplotlib/backends/{backend_qt4agg.*,__pycache__/backend_qt4agg.*}
%files -n python3-matplotlib-qt5
%{python3_sitearch}/matplotlib/backends/{backend_qt5.*,__pycache__/backend_qt5.*}
%{python3_sitearch}/matplotlib/backends/{backend_qt5agg.*,__pycache__/backend_qt5agg.*}
@ -282,5 +166,20 @@ rm -fr %{buildroot}%{python3_sitearch}/matplotlib/mpl-data
%{python3_sitearch}/matplotlib/backends/{tkagg.*,__pycache__/tkagg.*,_tkagg.*}
%changelog
* Thu Dec 01 2022 xu_ping <xuping33@h-partners.com> - 3.6.2-1
- Upgrade 3.6.2 to fix oscilloscope -h error
* Sat Mar 05 2022 chenchen <chen_aka_jan@163.com> - 3.4.3-2
- enable debuginfo
* Fri Jan 28 2022 SimpleUpdate Robot <tc@openeuler.org> - 3.4.3-1
- Upgrade to version 3.4.3
* Wed Mar 10 2021 caodongxia <caodongxia@huawei.com> - 2.2.4-4
- Fix the function-import matplotlib and import matplotlib.pyplot
* Fri Feb 19 2021 liyanan <liyanan32@huawei.com> - 2.2.4-3
- remove python2 dependency
* Fri Mar 6 2020 chenli <chenli147@huawei.com> - 2.2.4-2
- Init Package

4
python-matplotlib.yaml Normal file
View File

@ -0,0 +1,4 @@
version_control: github
src_repo: matplotlib/matplotlib
tag_prefix: "^v"
separator: "."