Compare commits

...

67 Commits
f27 ... f30

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
4d50dc0e21 Remove comment after %endif
RPM 4.15 complains.
2019-07-03 12:02:12 +02:00
Zbigniew Jędrzejewski-Szmek
1d6529ba46 Update Obsoletes to be later than the last python2 builds 2019-07-03 12:02:12 +02:00
Elliott Sales de Andrade
b5e6655ad8 Update to latest version. 2019-03-04 04:05:00 -05:00
Miro Hrončok
6e771d1530 https://fedoraproject.org/wiki/Changes/Python_Extension_Flags 2019-02-13 00:54:28 +01:00
Fedora Release Engineering
b1b97b1ed1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-02 07:42:18 +00:00
Elliott Sales de Andrade
17130085de Fix missing changelog. 2018-11-13 19:36:37 -05:00
Elliott Sales de Andrade
f171297f40 Update to latest version. 2018-11-10 04:33:30 -05:00
Elliott Sales de Andrade
af995aa143 Upload sources for 3.0.1. 2018-10-31 05:07:20 -04:00
Elliott Sales de Andrade
308245a86e Remove unused patch. 2018-10-31 04:51:30 -04:00
Elliott Sales de Andrade
7424178997 Update to 3.0.1. 2018-10-31 04:07:46 -04:00
Miro Hrončok
cc106d1c4a Obsolete old python-matplotlib-data* to prevent conflicts and provide an upgrade path 2018-09-21 12:29:49 +02:00
Elliott Sales de Andrade
7901631a85 Add correct license for bundled fonts. 2018-09-21 04:25:34 -04:00
Elliott Sales de Andrade
b4eba4ae21 Rename *data packages to avoid conflict with python2. 2018-09-19 14:47:47 -04:00
Elliott Sales de Andrade
b8683378dd Update changelog. 2018-09-19 14:46:05 -04:00
Elliott Sales de Andrade
9fde50abab Stop setting a default backend.
It will be picked automatically by Matplotlib.
2018-09-19 14:42:58 -04:00
Elliott Sales de Andrade
ed3fa9581d Remove unnecessary dependencies. 2018-09-19 04:39:50 -04:00
Elliott Sales de Andrade
c08eccf6ad Run Qt5 tests separately to not conflict with Qt4. 2018-09-19 03:23:05 -04:00
Elliott Sales de Andrade
a0fbf93967 Add patch to fix Qt4 backends. 2018-09-18 23:52:36 -04:00
Elliott Sales de Andrade
6f3ec368b4 Stop setting explicit backend during testing. 2018-09-18 22:01:33 -04:00
Elliott Sales de Andrade
d2fa0263b8 Update to final 3.0.0. 2018-09-18 04:51:42 -04:00
Elliott Sales de Andrade
c385e2c1a9 Update to 3.0.0rc2. 2018-08-29 00:38:38 -04:00
Elliott Sales de Andrade
6995ee3297 Update backend package splits.
There is a WX backend that was never split, and without its proper
dependencies. Also, there are new *Cairo backends in this version.
2018-08-28 03:17:29 -04:00
Elliott Sales de Andrade
19b5ff96fa Remove old Fedora FreeType support.
This will not be built on Fedora < 29.
2018-08-28 03:17:29 -04:00
Elliott Sales de Andrade
1dcb7afa2a Update to 3.0.0rc1. 2018-08-28 03:17:28 -04:00
Elliott Sales de Andrade
ee42f59462 Add explicit gcc/gcc-c++ BR. 2018-08-18 02:15:48 -04:00
Elliott Sales de Andrade
8293bc2589 Remove Python 2 subpackages. 2018-08-18 02:15:45 -04:00
Elliott Sales de Andrade
20e40c3953 Don't run test_nose_image_comparison in parallel.
These tests overwrite certain names that causes issues when testing in
parallel. These tests will be gone with Matplotlib 3.0, so I don't want
to spend much time fixing them. Just ignore them and run in serial
afterwards.
2018-08-17 23:59:22 -04:00
Elliott Sales de Andrade
a6c4a06cef Update to latest version. 2018-08-13 21:27:10 -04:00
Elliott Sales de Andrade
862f207d27 Add missing texlive-cm BR. 2018-07-20 18:19:21 -04:00
Elliott Sales de Andrade
6f741c4a02 Don't use unversioned Python in build. 2018-07-20 16:23:12 -04:00
Fedora Release Engineering
b89d120a97 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-14 00:55:43 +00:00
Miro Hrončok
1b8cd73b7e Fix the release tag 2018-06-22 16:52:47 +02:00
Lumir Balhar
69d38c5f1e Fix tolerances and a timeout to fix build with Python 3.7 2018-06-22 09:50:26 +02:00
Miro Hrončok
725edd957b Rebuilt for Python 3.7 2018-06-19 11:08:46 +02:00
Elliott Sales de Andrade
c48ca2e7fd Add python?-matplotlib-test-data subpackages. 2018-04-27 03:51:51 -04:00
Elliott Sales de Andrade
5c2bf08c46 Remove bytecode produced by pytest. 2018-04-17 02:36:20 -04:00
Elliott Sales de Andrade
7930b4df8d Remove old sources. 2018-04-17 02:21:12 -04:00
Dominik 'Rathann' Mierzejewski
ffa18cbcd2 add missed 2.2.2 source 2018-04-12 14:36:42 +02:00
Elliott Sales de Andrade
c0a5a7d07f Add support for Rawhide / FreeType 2.9. 2018-04-01 15:14:21 -04:00
Elliott Sales de Andrade
c1840d0738 Skip another test that uses mpl_toolkits on Py2. 2018-04-01 03:44:29 -04:00
Elliott Sales de Andrade
c89bd06dd9 Skip flaky slowness test. 2018-03-31 20:08:43 -04:00
Elliott Sales de Andrade
b11ac2671c Patch out the rctemplate tests properly. 2018-03-31 20:07:46 -04:00
Elliott Sales de Andrade
15844872fc Update to latest version. 2018-03-31 03:28:44 -04:00
Elliott Sales de Andrade
ad961d502c Run tests in parallel. 2018-03-13 17:47:17 -04:00
Elliott Sales de Andrade
bf010710f1 Use more python2- dependencies where available. 2018-03-13 17:42:07 -04:00
Elliott Sales de Andrade
f46b703e96 Trim trailing whitespace. 2018-03-13 17:40:02 -04:00
Elliott Sales de Andrade
da0bd4c413 Add changelog entry about cleanup. 2018-03-13 17:40:02 -04:00
Elliott Sales de Andrade
c409bffb3d Remove checks for non-Fedora systems. 2018-03-13 17:40:01 -04:00
Elliott Sales de Andrade
172edad3e8 Remove support for Fedora 26.
It doesn't appear to be getting built there and adds extra conditionals.
2018-03-13 05:25:32 -04:00
Elliott Sales de Andrade
c3e31d8c7e Remove old workaround.
The F27+ packages include the correct Requires now.
2018-03-13 05:23:20 -04:00
Karsten Hopp
bc53b538e3 update and fix spec file conditionals 2018-02-05 17:47:47 +01:00
Elliott Sales de Andrade
14e86457fd Add patch to link with libdl. 2018-01-24 15:09:42 -05:00
Elliott Sales de Andrade
8d6885671d Increase tolerances on non-x86 systems. 2018-01-24 03:07:15 -05:00
Elliott Sales de Andrade
b470c189c1 Also apply tolerance patch for 32-bit systems. 2018-01-24 03:07:15 -05:00
Elliott Sales de Andrade
75d0d8966b Add test images re-generated with FreeType 2.8. 2018-01-24 03:07:14 -05:00
Elliott Sales de Andrade
0326098544 Update to latest release. 2018-01-21 04:05:53 -05:00
Elliott Sales de Andrade
2d712efe1e Update to latest version. 2017-12-10 05:16:41 -05:00
Elliott Sales de Andrade
09769170a4 Add changelog for update. 2017-10-16 02:44:45 -04:00
Elliott Sales de Andrade
3f6380df61 Increase some tolerances for 32-bit systems. 2017-10-15 22:31:31 -04:00
Elliott Sales de Andrade
c9345fa6ce Simplify and update patches. 2017-10-15 18:16:56 -04:00
Elliott Sales de Andrade
4cf6018279 Use 24-bit screen for Xvfb.
Without this mode, the Qt5 test crashes.
2017-10-07 04:44:54 -04:00
Elliott Sales de Andrade
f28833ef2d Disable broken tests. 2017-10-07 03:15:09 -04:00
Elliott Sales de Andrade
58a05487aa Update to final 2.1.0 release. 2017-10-06 19:29:27 -04:00
Elliott Sales de Andrade
5ff9cbe460 Update to 2.1.0 rc1. 2017-10-02 23:20:12 -04:00
Elliott Sales de Andrade
730689d98e Update to Matplotlib 2.0.2. 2017-09-28 02:40:53 -04:00
Elliott Sales de Andrade
14e87c4546 Update to 2.0.1. 2017-09-28 02:36:10 -04:00
Elliott Sales de Andrade
e9a5a6f0c0 Remove outdated patches. 2017-09-27 19:58:07 -04:00
20 changed files with 1537 additions and 815 deletions

23
.gitignore vendored
View File

@@ -13,3 +13,26 @@ matplotlib-1.0.0-without-gpc.tar.gz
/matplotlib-2.0.0rc2.tar.gz /matplotlib-2.0.0rc2.tar.gz
/matplotlib-2.0.0.tar.gz /matplotlib-2.0.0.tar.gz
/matplotlib-2.0.0-without-copyrighted.tar.xz /matplotlib-2.0.0-without-copyrighted.tar.xz
/matplotlib-2.0.1.tar.gz
/matplotlib-2.0.2.tar.gz
/matplotlib-2.1.0rc1.tar.gz
/matplotlib-2.1.0.tar.gz
/matplotlib-2.1.1.tar.gz
/matplotlib-2.1.2.tar.gz
/matplotlib-2.1.2-with-freetype-2.8.tar.gz
/matplotlib-2.2.2.tar.gz
/matplotlib-2.2.2-with-freetype-2.8.tar.gz
/matplotlib-2.2.2-with-freetype-2.9.tar.gz
/matplotlib-2.2.3.tar.gz
/matplotlib-2.2.3-with-freetype-2.8.tar.gz
/matplotlib-2.2.3-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.0rc1.tar.gz
/matplotlib-3.0.0rc1-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.0rc2.tar.gz
/matplotlib-3.0.0rc2-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.0.tar.gz
/matplotlib-3.0.0-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.1.tar.gz
/matplotlib-3.0.1-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.2.tar.gz
/matplotlib-3.0.3.tar.gz

View File

@@ -0,0 +1,43 @@
From 46361ca058295e3f08d3c54196d990c497834306 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Fri, 30 Mar 2018 03:15:51 -0400
Subject: [PATCH] Force using system qhull.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
setupext.py | 17 ++---------------
1 file changed, 2 insertions(+), 15 deletions(-)
diff --git a/setupext.py b/setupext.py
index d2ff239ad..30e0c9085 100644
--- a/setupext.py
+++ b/setupext.py
@@ -1318,23 +1318,10 @@ class Qhull(SetupPackage):
def check(self):
self.__class__.found_external = True
- try:
- return self._check_for_pkg_config(
- 'libqhull', 'libqhull/qhull_a.h', min_version='2015.2')
- except CheckFailed as e:
- self.__class__.found_pkgconfig = False
- self.__class__.found_external = False
- return str(e) + ' Using local copy.'
+ return ' Using system copy.'
def add_flags(self, ext):
- if self.found_external:
- pkg_config.setup_extension(ext, 'qhull',
- default_libraries=['qhull'])
- else:
- ext.include_dirs.insert(0, 'extern')
- ext.sources.extend(sorted(glob.glob('extern/libqhull/*.c')))
- if sysconfig.get_config_var('LIBM') == '-lm':
- ext.libraries.extend('m')
+ ext.libraries.append('qhull')
class TTConv(SetupPackage):
--
2.14.3

View File

@@ -0,0 +1,113 @@
From fede0d8731c1301720f16e2d46df8275e8ecf9e8 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Sat, 2 Mar 2019 18:18:29 -0500
Subject: [PATCH] Use packaged jquery and jquery-ui.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
.../backends/web_backend/all_figures.html | 6 +--
.../backends/web_backend/single_figure.html | 6 +--
setup.py | 46 -------------------
3 files changed, 6 insertions(+), 52 deletions(-)
diff --git a/lib/matplotlib/backends/web_backend/all_figures.html b/lib/matplotlib/backends/web_backend/all_figures.html
index 41f48dc6d..69097eb4f 100644
--- a/lib/matplotlib/backends/web_backend/all_figures.html
+++ b/lib/matplotlib/backends/web_backend/all_figures.html
@@ -3,9 +3,9 @@
<link rel="stylesheet" href="{{ prefix }}/_static/css/page.css" type="text/css">
<link rel="stylesheet" href="{{ prefix }}/_static/css/boilerplate.css" type="text/css" />
<link rel="stylesheet" href="{{ prefix }}/_static/css/fbm.css" type="text/css" />
- <link rel="stylesheet" href="{{ prefix }}/_static/jquery-ui-1.12.1/jquery-ui.min.css" >
- <script src="{{ prefix }}/_static/jquery-ui-1.12.1/external/jquery/jquery.js"></script>
- <script src="{{ prefix }}/_static/jquery-ui-1.12.1/jquery-ui.min.js"></script>
+ <link rel="stylesheet" href="/usr/share/javascript/jquery_ui/jquery-ui.min.css" >
+ <script src="/usr/share/javascript/jquery/latest/jquery.min.js"></script>
+ <script src="/usr/share/javascript/jquery_ui/jquery-ui.min.js"></script>
<script src="{{ prefix }}/_static/js/mpl_tornado.js"></script>
<script src="{{ prefix }}/js/mpl.js"></script>
diff --git a/lib/matplotlib/backends/web_backend/single_figure.html b/lib/matplotlib/backends/web_backend/single_figure.html
index 4d5a366fb..c11c86618 100644
--- a/lib/matplotlib/backends/web_backend/single_figure.html
+++ b/lib/matplotlib/backends/web_backend/single_figure.html
@@ -3,9 +3,9 @@
<link rel="stylesheet" href="{{ prefix }}/_static/css/page.css" type="text/css">
<link rel="stylesheet" href="{{ prefix }}/_static/css/boilerplate.css" type="text/css" />
<link rel="stylesheet" href="{{ prefix }}/_static/css/fbm.css" type="text/css" />
- <link rel="stylesheet" href="{{ prefix }}/_static/jquery-ui-1.12.1/jquery-ui.min.css" >
- <script src="{{ prefix }}/_static/jquery-ui-1.12.1/external/jquery/jquery.js"></script>
- <script src="{{ prefix }}/_static/jquery-ui-1.12.1/jquery-ui.min.js"></script>
+ <link rel="stylesheet" href="/usr/share/javascript/jquery_ui/jquery-ui.min.css" >
+ <script src="/usr/share/javascript/jquery/latest/jquery.min.js"></script>
+ <script src="/usr/share/javascript/jquery_ui/jquery-ui.min.js"></script>
<script src="{{ prefix }}/_static/js/mpl_tornado.js"></script>
<script src="{{ prefix }}/js/mpl.js"></script>
<script>
diff --git a/setup.py b/setup.py
index 94c8106d3..42ae7e294 100644
--- a/setup.py
+++ b/setup.py
@@ -28,8 +28,6 @@ from zipfile import ZipFile
from setuptools import setup
from setuptools.command.build_ext import build_ext as BuildExtCommand
-from setuptools.command.develop import develop as DevelopCommand
-from setuptools.command.install_lib import install_lib as InstallLibCommand
from setuptools.command.test import test as TestCommand
# The setuptools version of sdist adds a setup.cfg file to the tree.
@@ -121,50 +119,6 @@ cmdclass['test'] = NoopTestCommand
cmdclass['build_ext'] = BuildExtraLibraries
-def _download_jquery_to(dest):
- # Note: When bumping the jquery-ui version, also update the versions in
- # single_figure.html and all_figures.html.
- url = "https://jqueryui.com/resources/download/jquery-ui-1.12.1.zip"
- sha = 'f8233674366ab36b2c34c577ec77a3d70cac75d2e387d8587f3836345c0f624d'
- if not os.path.exists(os.path.join(dest, "jquery-ui-1.12.1")):
- _makedirs(dest, exist_ok=True)
- try:
- buff = download_or_cache(url, sha)
- except Exception:
- raise IOError("Failed to download jquery-ui. Please download " +
- "{url} and extract it to {dest}.".format(
- url=url, dest=dest))
- with ZipFile(buff) as zf:
- zf.extractall(dest)
-
-
-# Relying on versioneer's implementation detail.
-class sdist_with_jquery(cmdclass['sdist']):
- def make_release_tree(self, base_dir, files):
- super(sdist_with_jquery, self).make_release_tree(base_dir, files)
- _download_jquery_to(
- os.path.join(base_dir, "lib/matplotlib/backends/web_backend/"))
-
-
-# Affects install and bdist_wheel.
-class install_lib_with_jquery(InstallLibCommand):
- def run(self):
- super(install_lib_with_jquery, self).run()
- _download_jquery_to(
- os.path.join(self.install_dir, "matplotlib/backends/web_backend/"))
-
-
-class develop_with_jquery(DevelopCommand):
- def run(self):
- super(develop_with_jquery, self).run()
- _download_jquery_to("lib/matplotlib/backends/web_backend/")
-
-
-cmdclass['sdist'] = sdist_with_jquery
-cmdclass['install_lib'] = install_lib_with_jquery
-cmdclass['develop'] = develop_with_jquery
-
-
# One doesn't normally see `if __name__ == '__main__'` blocks in a setup.py,
# however, this is needed on Windows to avoid creating infinite subprocesses
# when using multiprocessing.
--
2.20.1

View File

@@ -0,0 +1,101 @@
From eeeee74ff61646d321500490bbb9dbbcde424e14 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/3] matplotlibrc path search fix
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/__init__.py | 18 +++---------------
lib/matplotlib/tests/test_rcparams.py | 22 ++++++++++++++++------
2 files changed, 19 insertions(+), 21 deletions(-)
diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py
index 091cb6178..5648392ce 100644
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
@@ -664,18 +664,7 @@ def _get_data_path():
return path
def get_candidate_paths():
- yield Path(__file__).with_name('mpl-data')
- # setuptools' namespace_packages may highjack this init file
- # so need to try something known to be in Matplotlib, not basemap.
- import matplotlib.afm
- yield Path(matplotlib.afm.__file__).with_name('mpl-data')
- # py2exe zips pure python, so still need special check.
- if getattr(sys, 'frozen', None):
- yield Path(sys.executable).with_name('mpl-data')
- # Try again assuming we need to step up one more directory.
- yield Path(sys.executable).parent.with_name('mpl-data')
- # Try again assuming sys.path[0] is a dir not a exe.
- yield Path(sys.path[0]) / 'mpl-data'
+ yield Path('/usr/share/matplotlib/mpl-data')
for path in get_candidate_paths():
if path.is_dir():
@@ -727,8 +716,7 @@ def matplotlib_fname():
- `$HOME/.matplotlib/matplotlibrc` if `$HOME` is defined.
- - Lastly, it looks in `$MATPLOTLIBDATA/matplotlibrc` for a
- system-defined copy.
+ - Lastly, it looks in `/etc/matplotlibrc` for a system-defined copy.
"""
def gen_candidates():
@@ -741,7 +729,7 @@ def matplotlib_fname():
yield matplotlibrc
yield os.path.join(matplotlibrc, 'matplotlibrc')
yield os.path.join(get_configdir(), 'matplotlibrc')
- yield os.path.join(get_data_path(), 'matplotlibrc')
+ yield '/etc/matplotlibrc'
for fname in gen_candidates():
if os.path.exists(fname):
diff --git a/lib/matplotlib/tests/test_rcparams.py b/lib/matplotlib/tests/test_rcparams.py
index 7eec4d421..4c74619f6 100644
--- a/lib/matplotlib/tests/test_rcparams.py
+++ b/lib/matplotlib/tests/test_rcparams.py
@@ -451,11 +451,22 @@ def test_rcparams_reset_after_fail():
assert mpl.rcParams['text.usetex'] is False
-def test_if_rctemplate_is_up_to_date():
+@pytest.fixture
+def mplrc():
+ # This is the Fedora-specific location ...
+ if 'MATPLOTLIBDATA' in os.environ:
+ # ... in buildroot.
+ return os.path.join(os.environ['MATPLOTLIBDATA'],
+ '../../../../etc/matplotlibrc')
+ else:
+ # ... on installed systems.
+ return '/etc/matplotlibrc'
+
+
+def test_if_rctemplate_is_up_to_date(mplrc):
# This tests if the matplotlibrc.template file contains all valid rcParams.
deprecated = {*mpl._all_deprecated, *mpl._deprecated_remain_as_none}
- path_to_rc = os.path.join(mpl.get_data_path(), 'matplotlibrc')
- with open(path_to_rc, "r") as f:
+ with open(mplrc, "r") as f:
rclines = f.readlines()
missing = {}
for k, v in mpl.defaultParams.items():
@@ -478,11 +489,10 @@ def test_if_rctemplate_is_up_to_date():
.format(missing.items()))
-def test_if_rctemplate_would_be_valid(tmpdir):
+def test_if_rctemplate_would_be_valid(tmpdir, mplrc):
# This tests if the matplotlibrc.template file would result in a valid
# rc file if all lines are uncommented.
- path_to_rc = os.path.join(mpl.get_data_path(), 'matplotlibrc')
- with open(path_to_rc, "r") as f:
+ with open(mplrc, "r") as f:
rclines = f.readlines()
newlines = []
for line in rclines:
--
2.20.1

View File

@@ -0,0 +1,40 @@
From 64c0ea2ea7986d6cb05b41d37226f510ffe41b76 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Tue, 23 Jan 2018 20:27:17 -0500
Subject: [PATCH 2/3] Increase tolerances for non-x86_64 arches.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_streamplot.py | 2 +-
lib/mpl_toolkits/tests/test_axes_grid1.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index 17c0d1967..e261513df 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -61,7 +61,7 @@ def test_linewidth():
@image_comparison(baseline_images=['streamplot_masks_and_nans'],
- tol=0.04 if on_win else 0,
+ tol=0.04 if on_win else 0.01,
remove_text=True, style='mpl20')
def test_masks_and_nans():
X, Y, U, V = velocity_field()
diff --git a/lib/mpl_toolkits/tests/test_axes_grid1.py b/lib/mpl_toolkits/tests/test_axes_grid1.py
index ddbf7e9f7..86e49cc45 100644
--- a/lib/mpl_toolkits/tests/test_axes_grid1.py
+++ b/lib/mpl_toolkits/tests/test_axes_grid1.py
@@ -361,7 +361,7 @@ def test_zooming_with_inverted_axes():
@image_comparison(baseline_images=['anchored_direction_arrows'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.02,
extensions=['png'])
def test_anchored_direction_arrows():
fig, ax = plt.subplots()
--
2.20.1

View File

@@ -0,0 +1,658 @@
From 4b3c9145a4c247197a40c5314151566e437f7bbe Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Sat, 31 Mar 2018 00:15:14 -0400
Subject: [PATCH 3/3] Increase some tolerances for 32-bit systems.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/testing/decorators.py | 2 +-
lib/matplotlib/tests/test_artist.py | 3 +-
lib/matplotlib/tests/test_axes.py | 49 ++++++++++---------
lib/matplotlib/tests/test_collections.py | 2 +-
lib/matplotlib/tests/test_colorbar.py | 11 +++--
.../tests/test_constrainedlayout.py | 2 +-
lib/matplotlib/tests/test_contour.py | 8 +--
lib/matplotlib/tests/test_cycles.py | 3 --
lib/matplotlib/tests/test_figure.py | 3 +-
lib/matplotlib/tests/test_image.py | 2 +-
lib/matplotlib/tests/test_legend.py | 5 +-
lib/matplotlib/tests/test_mathtext.py | 4 +-
lib/matplotlib/tests/test_patches.py | 3 +-
lib/matplotlib/tests/test_patheffects.py | 2 +-
lib/matplotlib/tests/test_pickle.py | 2 +-
lib/matplotlib/tests/test_quiver.py | 2 +-
lib/matplotlib/tests/test_streamplot.py | 2 +-
lib/matplotlib/tests/test_transforms.py | 2 +-
lib/matplotlib/tests/test_units.py | 1 -
.../tests/test_axisartist_floating_axes.py | 4 +-
...test_axisartist_grid_helper_curvelinear.py | 6 +--
lib/mpl_toolkits/tests/test_mplot3d.py | 4 +-
22 files changed, 59 insertions(+), 63 deletions(-)
diff --git a/lib/matplotlib/testing/decorators.py b/lib/matplotlib/testing/decorators.py
index 85b8d5e87..f3fc47c68 100644
--- a/lib/matplotlib/testing/decorators.py
+++ b/lib/matplotlib/testing/decorators.py
@@ -338,7 +338,7 @@ def _pytest_image_comparison(baseline_images, extensions, tol,
return decorator
-def image_comparison(baseline_images, extensions=None, tol=0,
+def image_comparison(baseline_images, extensions=None, tol=0.1,
freetype_version=None, remove_text=False,
savefig_kwarg=None,
# Default of mpl_test_settings fixture and cleanup too.
diff --git a/lib/matplotlib/tests/test_artist.py b/lib/matplotlib/tests/test_artist.py
index 283db9abe..2ae11142c 100644
--- a/lib/matplotlib/tests/test_artist.py
+++ b/lib/matplotlib/tests/test_artist.py
@@ -94,7 +94,8 @@ def test_collection_transform_of_none():
assert isinstance(c._transOffset, mtransforms.IdentityTransform)
-@image_comparison(baseline_images=["clip_path_clipping"], remove_text=True)
+@image_comparison(baseline_images=["clip_path_clipping"], remove_text=True,
+ tol=0.28)
def test_clipping():
exterior = mpath.Path.unit_rectangle().deepcopy()
exterior.vertices *= 4
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index c0e0e560d..6e88c167c 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -554,7 +554,7 @@ def test_single_point():
@image_comparison(baseline_images=['single_date'], extensions=['png'],
- style='mpl20')
+ style='mpl20', tol=1.97)
def test_single_date():
time1 = [721964.0]
data1 = [-65.54]
@@ -1028,7 +1028,7 @@ def test_fill_between_interpolate():
@image_comparison(baseline_images=['fill_between_interpolate_decreasing'],
- style='mpl20', remove_text=True)
+ style='mpl20', remove_text=True, tol=0.78)
def test_fill_between_interpolate_decreasing():
p = np.array([724.3, 700, 655])
t = np.array([9.4, 7, 2.2])
@@ -1110,7 +1110,8 @@ def test_pcolormesh():
@image_comparison(baseline_images=['pcolormesh_datetime_axis'],
- extensions=['png'], remove_text=False, style='mpl20')
+ extensions=['png'], remove_text=False, style='mpl20',
+ tol=0.19)
def test_pcolormesh_datetime_axis():
fig = plt.figure()
fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
@@ -1136,7 +1137,8 @@ def test_pcolormesh_datetime_axis():
@image_comparison(baseline_images=['pcolor_datetime_axis'],
- extensions=['png'], remove_text=False, style='mpl20')
+ extensions=['png'], remove_text=False, style='mpl20',
+ tol=0.19)
def test_pcolor_datetime_axis():
fig = plt.figure()
fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
@@ -1193,7 +1195,7 @@ def test_canonical():
@image_comparison(baseline_images=['arc_angles'], remove_text=True,
- style='default', extensions=['png'])
+ style='default', extensions=['png'], tol=0.17)
def test_arc_angles():
from matplotlib import patches
# Ellipse parameters
@@ -2540,7 +2542,7 @@ def test_boxplot_mod_artist_after_plotting():
@image_comparison(baseline_images=['violinplot_vert_baseline',
'violinplot_vert_baseline'],
- extensions=['png'])
+ extensions=['png'], tol=0.24)
def test_vert_violinplot_baseline():
# First 9 digits of frac(sqrt(2))
np.random.seed(414213562)
@@ -2558,7 +2560,7 @@ def test_vert_violinplot_baseline():
@image_comparison(baseline_images=['violinplot_vert_showmeans'],
- extensions=['png'])
+ extensions=['png'], tol=0.23)
def test_vert_violinplot_showmeans():
ax = plt.axes()
# First 9 digits of frac(sqrt(3))
@@ -2569,7 +2571,7 @@ def test_vert_violinplot_showmeans():
@image_comparison(baseline_images=['violinplot_vert_showextrema'],
- extensions=['png'])
+ extensions=['png'], tol=0.23)
def test_vert_violinplot_showextrema():
ax = plt.axes()
# First 9 digits of frac(sqrt(5))
@@ -2580,7 +2582,7 @@ def test_vert_violinplot_showextrema():
@image_comparison(baseline_images=['violinplot_vert_showmedians'],
- extensions=['png'])
+ extensions=['png'], tol=0.23)
def test_vert_violinplot_showmedians():
ax = plt.axes()
# First 9 digits of frac(sqrt(7))
@@ -2591,7 +2593,7 @@ def test_vert_violinplot_showmedians():
@image_comparison(baseline_images=['violinplot_vert_showall'],
- extensions=['png'])
+ extensions=['png'], tol=0.2)
def test_vert_violinplot_showall():
ax = plt.axes()
# First 9 digits of frac(sqrt(11))
@@ -2602,7 +2604,7 @@ def test_vert_violinplot_showall():
@image_comparison(baseline_images=['violinplot_vert_custompoints_10'],
- extensions=['png'])
+ extensions=['png'], tol=0.22)
def test_vert_violinplot_custompoints_10():
ax = plt.axes()
# First 9 digits of frac(sqrt(13))
@@ -2613,7 +2615,7 @@ def test_vert_violinplot_custompoints_10():
@image_comparison(baseline_images=['violinplot_vert_custompoints_200'],
- extensions=['png'])
+ extensions=['png'], tol=0.22)
def test_vert_violinplot_custompoints_200():
ax = plt.axes()
# First 9 digits of frac(sqrt(17))
@@ -2624,7 +2626,7 @@ def test_vert_violinplot_custompoints_200():
@image_comparison(baseline_images=['violinplot_horiz_baseline'],
- extensions=['png'])
+ extensions=['png'], tol=0.2)
def test_horiz_violinplot_baseline():
ax = plt.axes()
# First 9 digits of frac(sqrt(19))
@@ -2635,7 +2637,7 @@ def test_horiz_violinplot_baseline():
@image_comparison(baseline_images=['violinplot_horiz_showmedians'],
- extensions=['png'])
+ extensions=['png'], tol=0.23)
def test_horiz_violinplot_showmedians():
ax = plt.axes()
# First 9 digits of frac(sqrt(23))
@@ -2646,7 +2648,7 @@ def test_horiz_violinplot_showmedians():
@image_comparison(baseline_images=['violinplot_horiz_showmeans'],
- extensions=['png'])
+ extensions=['png'], tol=0.25)
def test_horiz_violinplot_showmeans():
ax = plt.axes()
# First 9 digits of frac(sqrt(29))
@@ -2657,7 +2659,7 @@ def test_horiz_violinplot_showmeans():
@image_comparison(baseline_images=['violinplot_horiz_showextrema'],
- extensions=['png'])
+ extensions=['png'], tol=0.2)
def test_horiz_violinplot_showextrema():
ax = plt.axes()
# First 9 digits of frac(sqrt(31))
@@ -2668,7 +2670,7 @@ def test_horiz_violinplot_showextrema():
@image_comparison(baseline_images=['violinplot_horiz_showall'],
- extensions=['png'])
+ extensions=['png'], tol=0.19)
def test_horiz_violinplot_showall():
ax = plt.axes()
# First 9 digits of frac(sqrt(37))
@@ -2679,7 +2681,7 @@ def test_horiz_violinplot_showall():
@image_comparison(baseline_images=['violinplot_horiz_custompoints_10'],
- extensions=['png'])
+ extensions=['png'], tol=0.22)
def test_horiz_violinplot_custompoints_10():
ax = plt.axes()
# First 9 digits of frac(sqrt(41))
@@ -2690,7 +2692,7 @@ def test_horiz_violinplot_custompoints_10():
@image_comparison(baseline_images=['violinplot_horiz_custompoints_200'],
- extensions=['png'])
+ extensions=['png'], tol=0.22)
def test_horiz_violinplot_custompoints_200():
ax = plt.axes()
# First 9 digits of frac(sqrt(43))
@@ -3369,8 +3371,7 @@ def test_vertex_markers():
@image_comparison(baseline_images=['vline_hline_zorder',
- 'errorbar_zorder'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ 'errorbar_zorder'])
def test_eb_line_zorder():
x = list(range(10))
@@ -4050,7 +4051,7 @@ def test_psd_noise():
@image_comparison(baseline_images=['csd_freqs'], remove_text=True,
- extensions=['png'], tol=0.002)
+ extensions=['png'], tol=0.21)
def test_csd_freqs():
'''test axes.csd with sinusoidal stimuli'''
n = 10000
@@ -4943,7 +4944,7 @@ def test_rc_spines():
@image_comparison(baseline_images=['rc_grid'], extensions=['png'],
- savefig_kwarg={'dpi': 40})
+ savefig_kwarg={'dpi': 40}, tol=0.2)
def test_rc_grid():
fig = plt.figure()
rc_dict0 = {
@@ -5462,7 +5463,7 @@ def test_date_timezone_y():
@image_comparison(baseline_images=['date_timezone_x_and_y'],
- extensions=['png'])
+ extensions=['png'], tol=3.05)
def test_date_timezone_x_and_y():
# Tests issue 5575
UTC = datetime.timezone.utc
diff --git a/lib/matplotlib/tests/test_collections.py b/lib/matplotlib/tests/test_collections.py
index 6812ee1ad..5e5f19aac 100644
--- a/lib/matplotlib/tests/test_collections.py
+++ b/lib/matplotlib/tests/test_collections.py
@@ -466,7 +466,7 @@ def test_EllipseCollection():
@image_comparison(baseline_images=['polycollection_close'],
- extensions=['png'], remove_text=True)
+ extensions=['png'], remove_text=True, tol=0.45)
def test_polycollection_close():
from mpl_toolkits.mplot3d import Axes3D
diff --git a/lib/matplotlib/tests/test_colorbar.py b/lib/matplotlib/tests/test_colorbar.py
index 1c358c09a..21019be34 100644
--- a/lib/matplotlib/tests/test_colorbar.py
+++ b/lib/matplotlib/tests/test_colorbar.py
@@ -94,7 +94,7 @@ def _colorbar_extension_length(spacing):
@image_comparison(
baseline_images=['colorbar_extensions_shape_uniform',
'colorbar_extensions_shape_proportional'],
- extensions=['png'])
+ extensions=['png'], tol=0.16)
def test_colorbar_extension_shape():
'''Test rectangular colorbar extensions.'''
# Create figures for uniform and proportionally spaced colorbars.
@@ -104,7 +104,7 @@ def test_colorbar_extension_shape():
@image_comparison(baseline_images=['colorbar_extensions_uniform',
'colorbar_extensions_proportional'],
- extensions=['png'])
+ extensions=['png'], tol=0.25)
def test_colorbar_extension_length():
'''Test variable length colorbar extensions.'''
# Create figures for uniform and proportionally spaced colorbars.
@@ -118,7 +118,7 @@ def test_colorbar_extension_length():
'cbar_sharing',
],
extensions=['png'], remove_text=True,
- savefig_kwarg={'dpi': 40})
+ savefig_kwarg={'dpi': 40}, tol=0.17)
def test_colorbar_positioning():
data = np.arange(1200).reshape(30, 40)
levels = [0, 200, 400, 600, 800, 1000, 1200]
@@ -172,7 +172,7 @@ def test_colorbar_positioning():
@image_comparison(baseline_images=['cbar_with_subplots_adjust'],
extensions=['png'], remove_text=True,
- savefig_kwarg={'dpi': 40})
+ savefig_kwarg={'dpi': 40}, tol=0.17)
def test_gridspec_make_colorbar():
plt.figure()
data = np.arange(1200).reshape(30, 40)
@@ -231,7 +231,8 @@ def test_colorbarbase():
@image_comparison(
baseline_images=['colorbar_closed_patch'],
- remove_text=True)
+ remove_text=True,
+ tol=0.22)
def test_colorbar_closed_patch():
fig = plt.figure(figsize=(8, 6))
ax1 = fig.add_axes([0.05, 0.85, 0.9, 0.1])
diff --git a/lib/matplotlib/tests/test_constrainedlayout.py b/lib/matplotlib/tests/test_constrainedlayout.py
index de8161ea7..a1f307abe 100644
--- a/lib/matplotlib/tests/test_constrainedlayout.py
+++ b/lib/matplotlib/tests/test_constrainedlayout.py
@@ -246,7 +246,7 @@ def test_constrained_layout12():
ax.set_xlabel('x-label')
-@image_comparison(baseline_images=['constrained_layout13'], tol=2.e-2,
+@image_comparison(baseline_images=['constrained_layout13'], tol=3.e-2,
extensions=['png'])
def test_constrained_layout13():
'Test that padding works.'
diff --git a/lib/matplotlib/tests/test_contour.py b/lib/matplotlib/tests/test_contour.py
index c1f27b9ef..149afadb9 100644
--- a/lib/matplotlib/tests/test_contour.py
+++ b/lib/matplotlib/tests/test_contour.py
@@ -227,7 +227,8 @@ def test_given_colors_levels_and_extends():
@image_comparison(baseline_images=['contour_datetime_axis'],
- extensions=['png'], remove_text=False, style='mpl20')
+ extensions=['png'], remove_text=False, style='mpl20',
+ tol=0.18)
def test_contour_datetime_axis():
fig = plt.figure()
fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
@@ -253,7 +254,8 @@ def test_contour_datetime_axis():
@image_comparison(baseline_images=['contour_test_label_transforms'],
- extensions=['png'], remove_text=True, style='mpl20')
+ extensions=['png'], remove_text=True, style='mpl20',
+ tol=1.38)
def test_labels():
# Adapted from pylab_examples example code: contour_demo.py
# see issues #2475, #2843, and #2818 for explanation
@@ -284,7 +286,7 @@ def test_labels():
@image_comparison(baseline_images=['contour_corner_mask_False',
'contour_corner_mask_True'],
- extensions=['png'], remove_text=True)
+ extensions=['png'], remove_text=True, tol=0.19)
def test_corner_mask():
n = 60
mask_level = 0.95
diff --git a/lib/matplotlib/tests/test_cycles.py b/lib/matplotlib/tests/test_cycles.py
index 8184d3eee..5a067f8e0 100644
--- a/lib/matplotlib/tests/test_cycles.py
+++ b/lib/matplotlib/tests/test_cycles.py
@@ -10,7 +10,6 @@ from cycler import cycler
@image_comparison(baseline_images=['color_cycle_basic'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
extensions=['png'])
def test_colorcycle_basic():
fig, ax = plt.subplots()
@@ -28,7 +27,6 @@ def test_colorcycle_basic():
@image_comparison(baseline_images=['marker_cycle', 'marker_cycle'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
remove_text=True, extensions=['png'])
def test_marker_cycle():
fig, ax = plt.subplots()
@@ -62,7 +60,6 @@ def test_marker_cycle():
@image_comparison(baseline_images=['lineprop_cycle_basic'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
extensions=['png'])
def test_linestylecycle_basic():
fig, ax = plt.subplots()
diff --git a/lib/matplotlib/tests/test_figure.py b/lib/matplotlib/tests/test_figure.py
index 4c688eb05..826b44869 100644
--- a/lib/matplotlib/tests/test_figure.py
+++ b/lib/matplotlib/tests/test_figure.py
@@ -13,8 +13,7 @@ import numpy as np
import pytest
-@image_comparison(baseline_images=['figure_align_labels'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(baseline_images=['figure_align_labels'])
def test_align_labels():
# Check the figure.align_labels() command
fig = plt.figure(tight_layout=True)
diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py
index c0ffc061a..ace55c2f5 100644
--- a/lib/matplotlib/tests/test_image.py
+++ b/lib/matplotlib/tests/test_image.py
@@ -766,7 +766,7 @@ def test_imshow_endianess():
@image_comparison(baseline_images=['imshow_masked_interpolation'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.25,
remove_text=True, style='mpl20')
def test_imshow_masked_interpolation():
diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py
index d508d6f41..69286069d 100644
--- a/lib/matplotlib/tests/test_legend.py
+++ b/lib/matplotlib/tests/test_legend.py
@@ -108,7 +108,6 @@ def test_multiple_keys():
@image_comparison(baseline_images=['rgba_alpha'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
extensions=['png'], remove_text=True)
def test_alpha_rgba():
import matplotlib.pyplot as plt
@@ -120,7 +119,6 @@ def test_alpha_rgba():
@image_comparison(baseline_images=['rcparam_alpha'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
extensions=['png'], remove_text=True)
def test_alpha_rcparam():
import matplotlib.pyplot as plt
@@ -148,8 +146,7 @@ def test_fancy():
ncol=2, shadow=True, title="My legend", numpoints=1)
-@image_comparison(baseline_images=['framealpha'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(baseline_images=['framealpha'], remove_text=True)
def test_framealpha():
x = np.linspace(1, 100, 100)
y = x
diff --git a/lib/matplotlib/tests/test_mathtext.py b/lib/matplotlib/tests/test_mathtext.py
index a05c8b3c8..b6f11281f 100644
--- a/lib/matplotlib/tests/test_mathtext.py
+++ b/lib/matplotlib/tests/test_mathtext.py
@@ -169,7 +169,7 @@ def baseline_images(request, fontset, index):
['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.31)
def test_mathtext_rendering(baseline_images, fontset, index, test):
matplotlib.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))
@@ -183,7 +183,7 @@ def test_mathtext_rendering(baseline_images, fontset, index, test):
['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.3)
def test_mathfont_rendering(baseline_images, fontset, index, test):
matplotlib.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))
diff --git a/lib/matplotlib/tests/test_patches.py b/lib/matplotlib/tests/test_patches.py
index 89a77e258..2e5c16f75 100644
--- a/lib/matplotlib/tests/test_patches.py
+++ b/lib/matplotlib/tests/test_patches.py
@@ -260,9 +260,8 @@ def test_wedge_movement():
assert getattr(w, attr) == new_v
-# png needs tol>=0.06, pdf tol>=1.617
@image_comparison(baseline_images=['wedge_range'],
- remove_text=True, tol=1.65 if on_win else 0)
+ remove_text=True)
def test_wedge_range():
ax = plt.axes()
diff --git a/lib/matplotlib/tests/test_patheffects.py b/lib/matplotlib/tests/test_patheffects.py
index 6e80d8d98..0f158eb9e 100644
--- a/lib/matplotlib/tests/test_patheffects.py
+++ b/lib/matplotlib/tests/test_patheffects.py
@@ -119,7 +119,7 @@ def test_SimplePatchShadow_offset():
assert pe._offset == (4, 5)
-@image_comparison(baseline_images=['collection'], tol=0.02, style='mpl20')
+@image_comparison(baseline_images=['collection'], tol=0.084, style='mpl20')
def test_collection():
x, y = np.meshgrid(np.linspace(0, 10, 150), np.linspace(-5, 5, 100))
data = np.sin(x) + np.cos(y)
diff --git a/lib/matplotlib/tests/test_pickle.py b/lib/matplotlib/tests/test_pickle.py
index 9cb806c6f..c0ccf5f8c 100644
--- a/lib/matplotlib/tests/test_pickle.py
+++ b/lib/matplotlib/tests/test_pickle.py
@@ -44,7 +44,7 @@ def test_simple():
@image_comparison(baseline_images=['multi_pickle'],
extensions=['png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.11,
style='mpl20')
def test_complete():
fig = plt.figure('Figure with a label?', figsize=(10, 6))
diff --git a/lib/matplotlib/tests/test_quiver.py b/lib/matplotlib/tests/test_quiver.py
index 4470e02fa..70aa1e718 100644
--- a/lib/matplotlib/tests/test_quiver.py
+++ b/lib/matplotlib/tests/test_quiver.py
@@ -130,7 +130,7 @@ def test_quiver_key_pivot():
@image_comparison(baseline_images=['barbs_test_image'],
- extensions=['png'], remove_text=True)
+ extensions=['png'], remove_text=True, tol=0.11)
def test_barbs():
x = np.linspace(-5, 5, 5)
X, Y = np.meshgrid(x, x)
diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index e261513df..907841494 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -40,7 +40,7 @@ def test_startpoints():
@image_comparison(baseline_images=['streamplot_colormap'],
- tol=.04, remove_text=True, style='mpl20')
+ remove_text=True, style='mpl20')
def test_colormap():
X, Y, U, V = velocity_field()
plt.streamplot(X, Y, U, V, color=U, density=0.6, linewidth=2,
diff --git a/lib/matplotlib/tests/test_transforms.py b/lib/matplotlib/tests/test_transforms.py
index 6275d5b54..a5c03f0a3 100644
--- a/lib/matplotlib/tests/test_transforms.py
+++ b/lib/matplotlib/tests/test_transforms.py
@@ -70,7 +70,7 @@ def test_external_transform_api():
@image_comparison(baseline_images=['pre_transform_data'],
- tol=0.08, remove_text=True, style='mpl20')
+ tol=0.155, remove_text=True, style='mpl20')
def test_pre_transform_plotting():
# a catch-all for as many as possible plot layouts which handle
# pre-transforming the data NOTE: The axis range is important in this
diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py
index fec498af3..fe8f3f383 100644
--- a/lib/matplotlib/tests/test_units.py
+++ b/lib/matplotlib/tests/test_units.py
@@ -75,7 +75,6 @@ def quantity_converter():
# Tests that the conversion machinery works properly for classes that
# work as a facade over numpy arrays (like pint)
@image_comparison(baseline_images=['plot_pint'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
extensions=['png'], remove_text=False, style='mpl20')
def test_numpy_facade(quantity_converter):
# Register the class
diff --git a/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py b/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
index 929c0368a..e6e5ca1ff 100644
--- a/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
+++ b/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
@@ -21,7 +21,7 @@ def test_subplot():
@image_comparison(baseline_images=['curvelinear3'],
- extensions=['png'], style='default', tol=0.01)
+ extensions=['png'], style='default', tol=0.02)
def test_curvelinear3():
fig = plt.figure(figsize=(5, 5))
fig.clf()
@@ -77,7 +77,7 @@ def test_curvelinear3():
@image_comparison(baseline_images=['curvelinear4'],
- extensions=['png'], style='default', tol=0.015)
+ extensions=['png'], style='default', tol=0.055)
def test_curvelinear4():
fig = plt.figure(figsize=(5, 5))
fig.clf()
diff --git a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
index 32e1c884d..2b38866c5 100644
--- a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
+++ b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
@@ -17,7 +17,7 @@ from mpl_toolkits.axisartist.grid_helper_curvelinear import \
@image_comparison(baseline_images=['custom_transform'],
- extensions=['png'], style='default', tol=0.03)
+ extensions=['png'], style='default', tol=0.035)
def test_custom_transform():
class MyTransform(Transform):
input_dims = 2
@@ -85,7 +85,7 @@ def test_custom_transform():
@image_comparison(baseline_images=['polar_box'],
- tol={'aarch64': 0.04}.get(platform.machine(), 0.03),
+ tol=0.08,
extensions=['png'], style='default')
def test_polar_box():
fig = plt.figure(figsize=(5, 5))
@@ -147,7 +147,7 @@ def test_polar_box():
@image_comparison(baseline_images=['axis_direction'],
- extensions=['png'], style='default', tol=0.03)
+ extensions=['png'], style='default', tol=0.05)
def test_axis_direction():
fig = plt.figure(figsize=(5, 5))
diff --git a/lib/mpl_toolkits/tests/test_mplot3d.py b/lib/mpl_toolkits/tests/test_mplot3d.py
index bc9c43ec7..48727de52 100644
--- a/lib/mpl_toolkits/tests/test_mplot3d.py
+++ b/lib/mpl_toolkits/tests/test_mplot3d.py
@@ -254,7 +254,7 @@ def test_text3d():
ax.set_zlabel('Z axis')
-@image_comparison(baseline_images=['trisurf3d'], remove_text=True, tol=0.03)
+@image_comparison(baseline_images=['trisurf3d'], remove_text=True, tol=0.05)
def test_trisurf3d():
n_angles = 36
n_radii = 8
@@ -733,7 +733,7 @@ class TestVoxels(object):
@image_comparison(
baseline_images=['voxels-xyz'],
extensions=['png'],
- tol=0.01
+ tol=0.02
)
def test_xyz(self):
fig, ax = plt.subplots(subplot_kw={"projection": "3d"})
--
2.20.1

View File

@@ -0,0 +1,289 @@
From 179885bd9a442bc171e562a8997abde2824997fa Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Sat, 31 Mar 2018 00:33:37 -0400
Subject: [PATCH 3/3] Increase some tolerances for non-x86 arches.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_arrow_patches.py | 4 ++--
lib/matplotlib/tests/test_axes.py | 6 +++---
lib/matplotlib/tests/test_backends_interactive.py | 2 +-
lib/matplotlib/tests/test_collections.py | 2 +-
lib/matplotlib/tests/test_constrainedlayout.py | 2 +-
lib/matplotlib/tests/test_cycles.py | 6 +++---
lib/matplotlib/tests/test_figure.py | 2 +-
lib/matplotlib/tests/test_image.py | 2 +-
lib/matplotlib/tests/test_legend.py | 6 +++---
lib/matplotlib/tests/test_pickle.py | 2 +-
lib/matplotlib/tests/test_scale.py | 2 +-
lib/matplotlib/tests/test_streamplot.py | 2 +-
lib/matplotlib/tests/test_units.py | 4 ++--
.../tests/test_axisartist_grid_helper_curvelinear.py | 4 ++--
14 files changed, 23 insertions(+), 23 deletions(-)
diff --git a/lib/matplotlib/tests/test_arrow_patches.py b/lib/matplotlib/tests/test_arrow_patches.py
index f678fbed3..bac0cb802 100644
--- a/lib/matplotlib/tests/test_arrow_patches.py
+++ b/lib/matplotlib/tests/test_arrow_patches.py
@@ -69,7 +69,7 @@ def __prepare_fancyarrow_dpi_cor_test():
@image_comparison(baseline_images=['fancyarrow_dpi_cor_100dpi'],
remove_text=True, extensions=['png'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.016,
savefig_kwarg=dict(dpi=100))
def test_fancyarrow_dpi_cor_100dpi():
"""
@@ -85,7 +85,7 @@ def test_fancyarrow_dpi_cor_100dpi():
@image_comparison(baseline_images=['fancyarrow_dpi_cor_200dpi'],
remove_text=True, extensions=['png'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.019,
savefig_kwarg=dict(dpi=200))
def test_fancyarrow_dpi_cor_200dpi():
"""
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index c0e0e560d..0021bbda4 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -387,7 +387,7 @@ def test_annotate_default_arrow():
assert ann.arrow_patch is not None
-@image_comparison(baseline_images=['polar_axes'], style='default')
+@image_comparison(baseline_images=['polar_axes'], style='default', tol=0.01)
def test_polar_annotations():
# you can specify the xypoint and the xytext in different
# positions and coordinate systems, and optionally turn on a
@@ -3370,7 +3370,7 @@ def test_vertex_markers():
@image_comparison(baseline_images=['vline_hline_zorder',
'errorbar_zorder'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.02)
def test_eb_line_zorder():
x = list(range(10))
@@ -5142,7 +5142,7 @@ def test_title_location_roundtrip():
@image_comparison(baseline_images=["loglog"], remove_text=True,
extensions=['png'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.009)
def test_loglog():
fig, ax = plt.subplots()
x = np.arange(1, 11)
diff --git a/lib/matplotlib/tests/test_backends_interactive.py b/lib/matplotlib/tests/test_backends_interactive.py
index 00cbf5db9..33e6fb21a 100644
--- a/lib/matplotlib/tests/test_backends_interactive.py
+++ b/lib/matplotlib/tests/test_backends_interactive.py
@@ -105,7 +105,7 @@ fig.canvas.mpl_connect("draw_event", lambda event: timer.start())
plt.show()
"""
-_test_timeout = 10 # Empirically, 1s is not enough on Travis.
+_test_timeout = 30 # Empirically, 1s is not enough on Travis.
@pytest.mark.parametrize("backend", _get_testable_interactive_backends())
diff --git a/lib/matplotlib/tests/test_collections.py b/lib/matplotlib/tests/test_collections.py
index 6812ee1ad..582aabb5c 100644
--- a/lib/matplotlib/tests/test_collections.py
+++ b/lib/matplotlib/tests/test_collections.py
@@ -442,7 +442,7 @@ def test_barb_limits():
@image_comparison(baseline_images=['EllipseCollection_test_image'],
extensions=['png'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.012,
remove_text=True)
def test_EllipseCollection():
# Test basic functionality
diff --git a/lib/matplotlib/tests/test_constrainedlayout.py b/lib/matplotlib/tests/test_constrainedlayout.py
index de8161ea7..2af2d6a42 100644
--- a/lib/matplotlib/tests/test_constrainedlayout.py
+++ b/lib/matplotlib/tests/test_constrainedlayout.py
@@ -173,7 +173,7 @@ def test_constrained_layout9():
@image_comparison(baseline_images=['constrained_layout10'],
- extensions=['png'])
+ extensions=['png'], tol=0.01)
def test_constrained_layout10():
'Test for handling legend outside axis'
fig, axs = plt.subplots(2, 2, constrained_layout=True)
diff --git a/lib/matplotlib/tests/test_cycles.py b/lib/matplotlib/tests/test_cycles.py
index 8184d3eee..73b0f216d 100644
--- a/lib/matplotlib/tests/test_cycles.py
+++ b/lib/matplotlib/tests/test_cycles.py
@@ -10,7 +10,7 @@ from cycler import cycler
@image_comparison(baseline_images=['color_cycle_basic'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.008,
extensions=['png'])
def test_colorcycle_basic():
fig, ax = plt.subplots()
@@ -28,7 +28,7 @@ def test_colorcycle_basic():
@image_comparison(baseline_images=['marker_cycle', 'marker_cycle'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.008,
remove_text=True, extensions=['png'])
def test_marker_cycle():
fig, ax = plt.subplots()
@@ -62,7 +62,7 @@ def test_marker_cycle():
@image_comparison(baseline_images=['lineprop_cycle_basic'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.009,
extensions=['png'])
def test_linestylecycle_basic():
fig, ax = plt.subplots()
diff --git a/lib/matplotlib/tests/test_figure.py b/lib/matplotlib/tests/test_figure.py
index 4c688eb05..63f562770 100644
--- a/lib/matplotlib/tests/test_figure.py
+++ b/lib/matplotlib/tests/test_figure.py
@@ -14,7 +14,7 @@ import pytest
@image_comparison(baseline_images=['figure_align_labels'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.01)
def test_align_labels():
# Check the figure.align_labels() command
fig = plt.figure(tight_layout=True)
diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py
index c0ffc061a..ca15df113 100644
--- a/lib/matplotlib/tests/test_image.py
+++ b/lib/matplotlib/tests/test_image.py
@@ -766,7 +766,7 @@ def test_imshow_endianess():
@image_comparison(baseline_images=['imshow_masked_interpolation'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.006,
remove_text=True, style='mpl20')
def test_imshow_masked_interpolation():
diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py
index d508d6f41..9147ef336 100644
--- a/lib/matplotlib/tests/test_legend.py
+++ b/lib/matplotlib/tests/test_legend.py
@@ -108,7 +108,7 @@ def test_multiple_keys():
@image_comparison(baseline_images=['rgba_alpha'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.007,
extensions=['png'], remove_text=True)
def test_alpha_rgba():
import matplotlib.pyplot as plt
@@ -120,7 +120,7 @@ def test_alpha_rgba():
@image_comparison(baseline_images=['rcparam_alpha'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.007,
extensions=['png'], remove_text=True)
def test_alpha_rcparam():
import matplotlib.pyplot as plt
@@ -149,7 +149,7 @@ def test_fancy():
@image_comparison(baseline_images=['framealpha'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.018)
def test_framealpha():
x = np.linspace(1, 100, 100)
y = x
diff --git a/lib/matplotlib/tests/test_pickle.py b/lib/matplotlib/tests/test_pickle.py
index 9cb806c6f..91774abfd 100644
--- a/lib/matplotlib/tests/test_pickle.py
+++ b/lib/matplotlib/tests/test_pickle.py
@@ -44,7 +44,7 @@ def test_simple():
@image_comparison(baseline_images=['multi_pickle'],
extensions=['png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.004,
style='mpl20')
def test_complete():
fig = plt.figure('Figure with a label?', figsize=(10, 6))
diff --git a/lib/matplotlib/tests/test_scale.py b/lib/matplotlib/tests/test_scale.py
index ebe5c4de9..2999b624d 100644
--- a/lib/matplotlib/tests/test_scale.py
+++ b/lib/matplotlib/tests/test_scale.py
@@ -99,7 +99,7 @@ def test_logscale_transform_repr():
@image_comparison(baseline_images=['logscale_nonpos_values'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.008,
extensions=['png'], style='mpl20')
def test_logscale_nonpos_values():
np.random.seed(19680801)
diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index e261513df..c8c8faf99 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -49,7 +49,7 @@ def test_colormap():
@image_comparison(baseline_images=['streamplot_linewidth'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.002,
remove_text=True, style='mpl20')
def test_linewidth():
X, Y, U, V = velocity_field()
diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py
index fec498af3..12a8d8a3e 100644
--- a/lib/matplotlib/tests/test_units.py
+++ b/lib/matplotlib/tests/test_units.py
@@ -75,7 +75,7 @@ def quantity_converter():
# Tests that the conversion machinery works properly for classes that
# work as a facade over numpy arrays (like pint)
@image_comparison(baseline_images=['plot_pint'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.003,
extensions=['png'], remove_text=False, style='mpl20')
def test_numpy_facade(quantity_converter):
# Register the class
@@ -100,7 +100,7 @@ def test_numpy_facade(quantity_converter):
# Tests gh-8908
@image_comparison(baseline_images=['plot_masked_units'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.007,
extensions=['png'], remove_text=True, style='mpl20')
def test_plot_masked_units():
data = np.linspace(-5, 5)
diff --git a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
index 32e1c884d..741d197b5 100644
--- a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
+++ b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
@@ -17,7 +17,7 @@ from mpl_toolkits.axisartist.grid_helper_curvelinear import \
@image_comparison(baseline_images=['custom_transform'],
- extensions=['png'], style='default', tol=0.03)
+ extensions=['png'], style='default', tol=0.04)
def test_custom_transform():
class MyTransform(Transform):
input_dims = 2
@@ -85,7 +85,7 @@ def test_custom_transform():
@image_comparison(baseline_images=['polar_box'],
- tol={'aarch64': 0.04}.get(platform.machine(), 0.03),
+ tol=0.04,
extensions=['png'], style='default')
def test_polar_box():
fig = plt.figure(figsize=(5, 5))
--
2.20.1

View File

@@ -1,24 +0,0 @@
--- a/lib/matplotlib/__init__.py 2016-04-04 12:54:26.427194940 +0200
+++ b/lib/matplotlib/__init__.py 2016-04-04 12:56:12.662590255 +0200
@@ -682,9 +682,12 @@
_file = _decode_filesystem_path(__file__)
path = os.sep.join([os.path.dirname(_file), 'mpl-data'])
+ path = '/usr/share/matplotlib/mpl-data'
if os.path.isdir(path):
return path
+ raise RuntimeError('Could not find the matplotlib data files')
+
# setuptools' namespace_packages may highjack this init file
# so need to try something known to be in matplotlib, not basemap
import matplotlib.afm
@@ -812,7 +815,7 @@
home, '.matplotlib', 'matplotlibrc')
return fname
- path = get_data_path() # guaranteed to exist or raise
+ path = '/etc' # guaranteed to exist or raise
fname = os.path.join(path, 'matplotlibrc')
if not os.path.exists(fname):
warnings.warn('Could not find matplotlibrc; using defaults')

View File

@@ -1,32 +0,0 @@
diff -up matplotlib-1.5.1/lib/matplotlib/tests/test_image.py.tests matplotlib-1.5.1/lib/matplotlib/tests/test_image.py
--- matplotlib-1.5.1/lib/matplotlib/tests/test_image.py.tests 2016-05-23 14:04:41.000000000 +0200
+++ matplotlib-1.5.1/lib/matplotlib/tests/test_image.py 2016-06-02 00:28:37.076703843 +0200
@@ -186,7 +186,8 @@ def test_cursor_data():
event = MouseEvent('motion_notify_event', fig.canvas, xdisp, ydisp)
z = im.get_cursor_data(event)
- assert z is None, "Did not get None, got %d" % z
+ #0 instead of None on armv7hl
+ #assert z is None, "Did not get None, got %d" % z
# Hmm, something is wrong here... I get 0, not None...
# But, this works further down in the tests with extents flipped
@@ -224,14 +225,16 @@ def test_cursor_data():
event = MouseEvent('motion_notify_event', fig.canvas, xdisp, ydisp)
z = im.get_cursor_data(event)
- assert z is None, "Did not get None, got %d" % z
+ #0 instead of None on armv7hl
+ #assert z is None, "Did not get None, got %d" % z
x, y = 0.01, -0.01
xdisp, ydisp = ax.transData.transform_point([x, y])
event = MouseEvent('motion_notify_event', fig.canvas, xdisp, ydisp)
z = im.get_cursor_data(event)
- assert z is None, "Did not get None, got %d" % z
+ #0 instead of None on armv7hl
+ #assert z is None, "Did not get None, got %d" % z
@image_comparison(baseline_images=['image_clip'])

View File

@@ -1,20 +0,0 @@
diff -up matplotlib-2.0.0b3/lib/matplotlib/sphinxext/tests/test_tinypages.py.tests matplotlib-2.0.0b3/lib/matplotlib/sphinxext/tests/test_tinypages.py
--- matplotlib-2.0.0b3/lib/matplotlib/sphinxext/tests/test_tinypages.py.tests 2016-07-17 01:04:11.000000000 +0200
+++ matplotlib-2.0.0b3/lib/matplotlib/sphinxext/tests/test_tinypages.py 2016-08-29 13:41:47.661198880 +0200
@@ -1,6 +1,7 @@
""" Tests for tinypages build using sphinx extensions """
import shutil
+import sys
import tempfile
from os.path import (join as pjoin, dirname, isdir)
@@ -16,6 +17,8 @@ TINY_PAGES = pjoin(HERE, 'tinypages')
def setup():
# Check we have the sphinx-build command
+ if sys.version_info[0] >= 3:
+ raise SkipTest('sphinx-build works only with python 2.x')
try:
ret = call(['sphinx-build', '--help'], stdout=PIPE, stderr=PIPE)
except OSError:

View File

@@ -1,126 +0,0 @@
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_axes.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_axes.py.new 2017-01-07 21:28:07.736224906 -0800
@@ -1285,7 +1285,7 @@
cbar.add_lines(cs2, erase=False)
-@image_comparison(baseline_images=['hist2d', 'hist2d'])
+@image_comparison(baseline_images=['hist2d', 'hist2d'], tol=10.677)
def test_hist2d():
np.random.seed(0)
# make it not symetric in case we switch x and y axis
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_quiver.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_quiver.py.new 2017-01-07 21:29:53.441682625 -0800
@@ -135,7 +135,7 @@
ax.quiverkey(q, 0, 0.5, 1, 'W', labelpos='W')
-@image_comparison(baseline_images=['barbs_test_image'],
+@image_comparison(baseline_images=['barbs_test_image'], tol=0.8,
extensions=['png'], remove_text=True)
def test_barbs():
x = np.linspace(-5, 5, 5)
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_transforms.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_transforms.py.new 2017-01-07 21:21:29.478503151 -0800
@@ -82,7 +82,7 @@
@image_comparison(baseline_images=['pre_transform_data'],
- tol=0.08)
+ tol=0.9)
def test_pre_transform_plotting():
# a catch-all for as many as possible plot layouts which handle
# pre-transforming the data NOTE: The axis range is important in this
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_mlab.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_mlab.py.new 2017-01-07 21:30:47.502916717 -0800
@@ -2279,90 +2279,6 @@
iscomplex=True, sides='default', nsides=2)
-class spectral_testcase_Fs4_real_onesided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4],
- iscomplex=False, sides='onesided', nsides=1)
-
-
-class spectral_testcase_Fs4_real_twosided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4],
- iscomplex=False, sides='twosided', nsides=2)
-
-
-class spectral_testcase_Fs4_real_defaultsided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4],
- iscomplex=False, sides='default', nsides=1)
-
-
-class spectral_testcase_Fs4_complex_onesided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4],
- iscomplex=True, sides='onesided', nsides=1)
-
-
-class spectral_testcase_Fs4_complex_twosided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4],
- iscomplex=True, sides='twosided', nsides=2)
-
-
-class spectral_testcase_Fs4_complex_defaultsided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4],
- iscomplex=True, sides='default', nsides=2)
-
-
-class spectral_testcase_FsAll_real_onesided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4, 5, 10],
- iscomplex=False, sides='onesided', nsides=1)
-
-
-class spectral_testcase_FsAll_real_twosided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4, 5, 10],
- iscomplex=False, sides='twosided', nsides=2)
-
-
-class spectral_testcase_FsAll_real_defaultsided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4, 5, 10],
- iscomplex=False, sides='default', nsides=1)
-
-
-class spectral_testcase_FsAll_complex_onesided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4, 5, 10],
- iscomplex=True, sides='onesided', nsides=1)
-
-
-class spectral_testcase_FsAll_complex_twosided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4, 5, 10],
- iscomplex=True, sides='twosided', nsides=2)
-
-
-class spectral_testcase_FsAll_complex_defaultsided(
- spectral_testcase_nosig_real_onesided):
- def setUp(self):
- self.createStim(fstims=[4, 5, 10],
- iscomplex=True, sides='default', nsides=2)
-
-
class spectral_testcase_nosig_real_onesided_noNFFT(
spectral_testcase_nosig_real_onesided):
def setUp(self):

View File

@@ -1,65 +0,0 @@
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_axes.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_axes.py.new 2017-01-07 21:35:06.874039829 -0800
@@ -361,7 +361,7 @@
plt.plot('b','b', 'o', data=data)
-@image_comparison(baseline_images=['single_date'])
+@image_comparison(baseline_images=['single_date'], tol=1.97)
def test_single_date():
time1 = [721964.0]
data1 = [-65.54]
@@ -4696,7 +4696,7 @@
@image_comparison(baseline_images=['date_timezone_x_and_y'],
- extensions=['png'])
+ extensions=['png'], tol=3.042)
def test_date_timezone_x_and_y():
# Tests issue 5575
time_index = [pytz.timezone('UTC').localize(datetime.datetime(
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_collections.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_collections.py.new 2017-01-07 21:35:52.016235301 -0800
@@ -489,7 +489,7 @@
ax.autoscale_view()
-@image_comparison(baseline_images=['polycollection_close'],
+@image_comparison(baseline_images=['polycollection_close'], tol=0.446,
extensions=['png'], remove_text=True)
def test_polycollection_close():
from mpl_toolkits.mplot3d import Axes3D
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_contour.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_contour.py.new 2017-01-07 21:36:29.283396673 -0800
@@ -233,7 +233,7 @@
label.set_rotation(30)
-@image_comparison(baseline_images=['contour_test_label_transforms'],
+@image_comparison(baseline_images=['contour_test_label_transforms'], tol=0.731,
extensions=['png'], remove_text=True)
def test_labels():
# Adapted from pylab_examples example code: contour_demo.py
--- matplotlib-2.0.0rc2/lib/mpl_toolkits/tests/test_mplot3d.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/mpl_toolkits/tests/test_mplot3d.py.new 2017-01-07 21:37:04.144547626 -0800
@@ -171,7 +171,7 @@
ax.set_zlabel('Z axis')
-@image_comparison(baseline_images=['trisurf3d'], remove_text=True, tol=0.03)
+@image_comparison(baseline_images=['trisurf3d'], remove_text=True, tol=0.081)
def test_trisurf3d():
n_angles = 36
n_radii = 8
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_transforms.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_transforms.py.new 2017-01-07 21:21:29.478503151 -0800
@@ -82,7 +82,7 @@
@image_comparison(baseline_images=['pre_transform_data'],
- tol=0.08)
+ tol=0.15)
def test_pre_transform_plotting():
# a catch-all for as many as possible plot layouts which handle
# pre-transforming the data NOTE: The axis range is important in this

View File

@@ -1,55 +0,0 @@
--- matplotlib-2.0.0rc2/lib/matplotlib/testing/decorators.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/testing/decorators.py.new 2017-01-07 21:19:51.078081193 -0800
@@ -266,7 +266,7 @@
yield do_test, fignum, actual_fname, expected_fname
-def image_comparison(baseline_images=None, extensions=None, tol=0,
+def image_comparison(baseline_images=None, extensions=None, tol=0.306,
freetype_version=None, remove_text=False,
savefig_kwarg=None, style='classic'):
"""
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_png.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_png.py.new 2017-01-07 21:20:22.388215456 -0800
@@ -17,7 +17,7 @@
@image_comparison(baseline_images=['pngsuite'], extensions=['png'],
- tol=0.01 if on_win else 0)
+ tol=0.014)
def test_pngsuite():
dirname = os.path.join(
os.path.dirname(__file__),
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_streamplot.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_streamplot.py.new 2017-01-07 21:20:42.180300328 -0800
@@ -18,7 +18,7 @@
@image_comparison(baseline_images=['streamplot_colormap'],
- tol=0.002)
+ tol=0.009)
def test_colormap():
X, Y, U, V = velocity_field()
plt.streamplot(X, Y, U, V, color=U, density=0.6, linewidth=2,
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_patheffects.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_patheffects.py.new 2017-01-07 21:21:08.014411109 -0800
@@ -110,7 +110,7 @@
assert_equal(pe._offset, (4, 5))
-@image_comparison(baseline_images=['collection'], tol=0.015)
+@image_comparison(baseline_images=['collection'], tol=0.083)
def test_collection():
x, y = np.meshgrid(np.linspace(0, 10, 150), np.linspace(-5, 5, 100))
data = np.sin(x) + np.cos(y)
--- matplotlib-2.0.0rc2/lib/matplotlib/tests/test_mathtext.py 2016-12-18 11:40:53.000000000 -0800
+++ matplotlib-2.0.0rc2/lib/matplotlib/tests/test_mathtext.py.new 2017-01-07 22:02:42.396426402 -0800
@@ -158,7 +158,7 @@
def make_set(basename, fontset, tests, extensions=None):
def make_test(filename, test):
- @image_comparison(baseline_images=[filename], extensions=extensions)
+ @image_comparison(baseline_images=[filename], extensions=extensions, tol=0.310)
def single_test():
matplotlib.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))

View File

@@ -1,33 +0,0 @@
--- setupext.py.orig 2013-08-02 09:39:43.914247832 +0200
+++ setupext.py 2013-08-02 09:40:14.785304342 +0200
@@ -914,28 +914,13 @@ class LibAgg(SetupPackage):
self.__class__.found_external = True
try:
return self._check_for_pkg_config(
- 'libagg', 'agg2/agg_basics.h', min_version='PATCH')
+ 'libagg', 'agg2/agg_basics.h', min_version='2.5.0')
except CheckFailed as e:
self.__class__.found_external = False
return str(e) + ' Using local copy.'
def add_flags(self, ext):
- if self.found_external:
- pkg_config.setup_extension(ext, 'libagg')
- else:
- ext.include_dirs.append('extern/agg24/include')
- agg_sources = [
- 'agg_bezier_arc.cpp',
- 'agg_curves.cpp',
- 'agg_image_filters.cpp',
- 'agg_trans_affine.cpp',
- 'agg_vcgen_contour.cpp',
- 'agg_vcgen_dash.cpp',
- 'agg_vcgen_stroke.cpp',
- 'agg_vpgen_segmentator.cpp'
- ]
- ext.sources.extend(
- os.path.join('extern', 'agg24', 'src', x) for x in agg_sources)
+ pkg_config.setup_extension(ext, 'libagg', default_include_dirs=["/usr/include/agg2"])
class FreeType(SetupPackage):

View File

@@ -1,24 +0,0 @@
diff -up matplotlib-1.5.2rc2/setupext.py.qh matplotlib-1.5.2rc2/setupext.py
--- matplotlib-1.5.2rc2/setupext.py.qh 2016-06-04 00:09:22.605827942 +0200
+++ matplotlib-1.5.2rc2/setupext.py 2016-06-04 00:09:22.611827972 +0200
@@ -1018,7 +1018,7 @@ class Qhull(SetupPackage):
# present on this system, so check if the header files can be
# found.
include_dirs = [
- os.path.join(x, 'qhull') for x in get_include_dirs()]
+ os.path.join(x, 'libqhull') for x in get_include_dirs()]
if has_include_file(include_dirs, 'qhull_a.h'):
return 'Using system Qhull (version unknown, no pkg-config info)'
else:
diff -up matplotlib-1.5.2rc2/src/qhull_wrap.c.qh matplotlib-1.5.2rc2/src/qhull_wrap.c
--- matplotlib-1.5.2rc2/src/qhull_wrap.c.qh 2016-05-27 04:19:34.000000000 +0200
+++ matplotlib-1.5.2rc2/src/qhull_wrap.c 2016-06-04 00:09:22.608827957 +0200
@@ -7,7 +7,7 @@
*/
#include "Python.h"
#include "numpy/noprefix.h"
-#include "qhull/qhull_a.h"
+#include <libqhull/qhull_a.h>
#include <stdio.h>

View File

@@ -1,34 +0,0 @@
diff -up matplotlib-1.5.1/setupext.py.six matplotlib-1.5.1/setupext.py
--- matplotlib-1.5.1/setupext.py.six 2016-01-10 23:20:20.000000000 +0100
+++ matplotlib-1.5.1/setupext.py 2016-05-18 13:44:21.534494158 +0200
@@ -1026,6 +1026,18 @@ class Qhull(SetupPackage):
ext.sources.extend(glob.glob('extern/qhull/*.c'))
+class Six(SetupPackage):
+ name = "six"
+
+ def check(self):
+ try:
+ import six
+ except ImportError:
+ return 'not found. pip may install it below.'
+
+ return 'version %s' % six.__version__
+
+
class TTConv(SetupPackage):
name = "ttconv"
diff -up matplotlib-1.5.1/setup.py.six matplotlib-1.5.1/setup.py
--- matplotlib-1.5.1/setup.py.six 2016-01-10 23:20:20.000000000 +0100
+++ matplotlib-1.5.1/setup.py 2016-05-18 13:44:21.528494040 +0200
@@ -84,7 +84,7 @@ mpl_packages = [
setupext.Delaunay(),
setupext.QhullWrap(),
setupext.Tri(),
- setupext.Externals(),
+ setupext.Six(),
'Optional subpackages',
setupext.SampleData(),
setupext.Toolkits(),

View File

@@ -1,9 +1,3 @@
%if 0%{?fedora}
%global with_python3 1
%else
%global with_python3 0
%endif
%global __provides_exclude_from .*/site-packages/.*\\.so$
%global with_html 0 %global with_html 0
# It seems like there's some kind of weird occasional error where a # It seems like there's some kind of weird occasional error where a
@@ -14,23 +8,8 @@
# happen. # happen.
%global run_tests 1 %global run_tests 1
# the default backend; one of GTK3Agg GTK3Cairo MacOSX Qt4Agg Qt5Agg TkAgg
# On RHEL 7 onwards, don't build with wx: # WXAgg Agg Cairo PS PDF SVG
%if 0%{?rhel} >= 7
%global with_wx 0
%else
%global with_wx 1
%endif
# On Fedora 21 onwards, enable Qt5 backend:
%if 0%{?fedora}
%global with_qt5 1
%else
%global with_qt5 0
%endif
# the default backend; one of GTK GTKAgg GTKCairo GTK3Agg GTK3Cairo
# CocoaAgg MacOSX Qt4Agg Qt5Agg TkAgg WX WXAgg Agg Cairo GDK PS PDF SVG
%global backend TkAgg %global backend TkAgg
%if "%{backend}" == "TkAgg" %if "%{backend}" == "TkAgg"
@@ -41,6 +20,10 @@
% else % else
% if "%{backend}" == "Qt5Agg" % if "%{backend}" == "Qt5Agg"
%global backend_subpackage qt5 %global backend_subpackage qt5
% else
% if "%{backend}" == "WXAgg"
%global backend_subpackage wx
% endif
% endif % endif
% endif % endif
%endif %endif
@@ -51,36 +34,51 @@
# Use the same directory of the main package for subpackage licence and docs # Use the same directory of the main package for subpackage licence and docs
%global _docdir_fmt %{name} %global _docdir_fmt %{name}
#global rctag rc2 #global rctag rc1
# Updated test images for new FreeType.
%global mpl_images_version 3.0.1
# The version of FreeType in this Fedora branch.
%global ftver 2.9.1
Name: python-matplotlib Name: python-matplotlib
Version: 2.0.0 Version: 3.0.3
Release: 3%{?rctag:.%{rctag}}%{?dist}.2 Release: 2%{?rctag:.%{rctag}}%{?dist}
Summary: Python 2D plotting library Summary: Python 2D plotting library
Group: Development/Libraries
# qt4_editor backend is MIT # qt4_editor backend is MIT
License: Python and MIT License: Python and MIT
URL: http://matplotlib.org URL: http://matplotlib.org
#Source0: https://github.com/matplotlib/matplotlib/archive/v%{version}%{?rctag}.tar.gz#/matplotlib-%{version}%{?rctag}.tar.gz Source0: https://github.com/matplotlib/matplotlib/archive/v%{version}%{?rctag}/matplotlib-%{version}%{?rctag}.tar.gz
Source0: matplotlib-%{version}-without-copyrighted.tar.xz
Source1: setup.cfg Source1: setup.cfg
Patch2: 20_matplotlibrc_path_search_fix.patch # Because the qhull package stopped shipping pkgconfig files.
# https://github.com/matplotlib/matplotlib/issues/6538 # https://src.fedoraproject.org/rpms/qhull/pull-request/1
Patch8: python-matplotlib-disable-failing-tests-arm.patch Patch0001: 0001-Force-using-system-qhull.patch
# https://github.com/matplotlib/matplotlib/issues/6791
Patch9: python-matplotlib-qhull.patch
# https://github.com/matplotlib/matplotlib/issues/7134
# https://github.com/matplotlib/matplotlib/issues/7158
# https://github.com/matplotlib/matplotlib/issues/7159
# https://github.com/matplotlib/matplotlib/issues/7797
Patch10: python-matplotlib-increase-tests-tolerance.patch
Patch11: python-matplotlib-increase-tests-tolerance-aarch64ppc64.patch
Patch13: python-matplotlib-increase-tests-tolerance-i686.patch
# Don't attempt to download jQuery and jQuery UI
Patch0002: 0001-Use-packaged-jquery-and-jquery-ui.patch
# Fedora-specific patches; see:
# https://github.com/QuLogic/matplotlib/tree/fedora-patches
# https://github.com/QuLogic/matplotlib/tree/fedora-patches-non-x86
# 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
# Image tolerances for anything but x86_64:
Patch1002: 0002-Increase-tolerances-for-non-x86_64-arches.patch
# Image tolerances for 32-bit systems: i686 armv7hl
Patch1003: 0003-Increase-some-tolerances-for-32-bit-systems.patch
# Image tolerances for 64-bit (but not x86_64) systems: aarch64 ppc64(le) s390x
Patch1004: 0003-Increase-some-tolerances-for-non-x86-arches.patch
BuildRequires: gcc
BuildRequires: gcc-c++
BuildRequires: freetype-devel BuildRequires: freetype-devel
BuildRequires: libpng-devel BuildRequires: libpng-devel
BuildRequires: qhull-devel BuildRequires: qhull-devel
BuildRequires: texlive-cm
BuildRequires: xorg-x11-server-Xvfb BuildRequires: xorg-x11-server-Xvfb
BuildRequires: zlib-devel BuildRequires: zlib-devel
@@ -95,231 +93,65 @@ Matplotlib tries to make easy things easy and hard things possible.
You can generate plots, histograms, power spectra, bar charts, You can generate plots, histograms, power spectra, bar charts,
errorcharts, scatterplots, etc, with just a few lines of code. errorcharts, scatterplots, etc, with just a few lines of code.
%package -n python2-matplotlib %package -n python3-matplotlib-data
Summary: Python 2D plotting library
BuildRequires: numpy
BuildRequires: pyparsing
BuildRequires: python-dateutil
BuildRequires: python-pycxx-devel
BuildRequires: python-pyside
BuildRequires: python-setuptools
BuildRequires: python-six
BuildRequires: python-subprocess32
BuildRequires: python2-devel
BuildRequires: python2-functools32
BuildRequires: python2-pillow
BuildRequires: pytz
%if %{with_html}
BuildRequires: %{_bindir}/pdftops
# circular dependency: python-basemap requires matplotlib
BuildRequires: python-basemap
BuildRequires: python-ipython-sphinx
BuildRequires: python-numpydoc
BuildRequires: python-scikit-image
BuildRequires: python2-colorspacious
BuildRequires: python2-cycler >= 0.10.0
%endif
%if %{run_tests}
BuildRequires: python-nose
BuildRequires: python2-cycler >= 0.10.0
BuildRequires: python2-mock
%endif
Requires: dejavu-sans-fonts
Requires: dvipng
Requires: numpy
Requires: pyparsing
Requires: python2-cycler >= 0.10.0
Requires: python-dateutil
Requires: python2-functools32
Requires: python-matplotlib-data = %{version}-%{release}
%{?backend_subpackage:Requires: python2-matplotlib-%{backend_subpackage}%{?_isa} = %{version}-%{release}}
Recommends: python2-pillow
Requires: python-six
Requires: python-subprocess32
Requires: pytz
%if !%{with_bundled_fonts}
%if 0%{?fedora}
Requires: stix-math-fonts
%else
Requires: stix-fonts
%endif
%else
Provides: bundled(stix-math-fonts)
%endif
%{?python_provide:%python_provide python2-matplotlib}
Provides: bundled(agg) = 2.4
Provides: bundled(ttconv)
Provides: bundled(js-jquery1) = 1.11.3
Provides: bundled(js-jquery1-ui) = 1.11.4
Provides: bundled(texlive-helvetic)
%description -n python2-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
six 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 python2-matplotlib-qt4
Summary: Qt4 backend for python-matplotlib
Group: Development/Libraries
BuildRequires: PyQt4-devel
Requires: PyQt4
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
Requires: python2-matplotlib-qt5
%{?python_provide:%python_provide python2-matplotlib-qt4}
%description -n python2-matplotlib-qt4
%{summary}
%if %{with_qt5}
%package -n python2-matplotlib-qt5
Summary: Qt5 backend for python-matplotlib
Group: Development/Libraries
BuildRequires: python-qt5
Requires: python-qt5
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python2-matplotlib-qt5}
%description -n python2-matplotlib-qt5
%{summary}
%endif # with_qt5
%package -n python2-matplotlib-gtk
Summary: GTK backend for python-matplotlib
Group: Development/Libraries
BuildRequires: gtk2-devel
BuildRequires: pycairo-devel
BuildRequires: pygtk2-devel
Requires: pycairo
Requires: pygtk2
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python2-matplotlib-gtk}
%description -n python2-matplotlib-gtk
%{summary}
%package -n python2-matplotlib-gtk3
Summary: GTK3 backend for python-matplotlib
Group: Development/Libraries
# This should be converted to typelib(Gtk) when supported
BuildRequires: gtk3
BuildRequires: pygobject3-base
Requires: gtk3%{?_isa}
Requires: pygobject3-base%{?_isa}
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python2-matplotlib-gtk3}
%description -n python2-matplotlib-gtk3
%{summary}
%package -n python2-matplotlib-tk
Summary: Tk backend for python-matplotlib
Group: Development/Libraries
BuildRequires: tcl-devel
BuildRequires: tkinter
BuildRequires: tk-devel
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
Requires: tkinter
%{?python_provide:%python_provide python2-matplotlib-tk}
%description -n python2-matplotlib-tk
%{summary}
%if %{with_wx}
%package -n python2-matplotlib-wx
Summary: wxPython backend for python-matplotlib
Group: Development/Libraries
BuildRequires: wxPython-devel
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
Requires: wxPython
%{?python_provide:%python_provide python2-matplotlib-wx}
%description -n python2-matplotlib-wx
%{summary}
%endif # with_wx
%package -n python2-matplotlib-doc
Summary: Documentation files for python-matplotlib
Group: Documentation
%if %{with_html}
BuildRequires: dvipng
BuildRequires: graphviz
BuildRequires: python-sphinx
BuildRequires: tex(latex)
BuildRequires: tex-preview
%endif
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python2-matplotlib-doc}
%description -n python2-matplotlib-doc
%{summary}
%package -n python-matplotlib-data
Summary: Data used by python-matplotlib Summary: Data used by python-matplotlib
BuildArch: noarch BuildArch: noarch
%if %{with_bundled_fonts} %if %{with_bundled_fonts}
Requires: python-matplotlib-data-fonts = %{version}-%{release} Requires: python3-matplotlib-data-fonts = %{version}-%{release}
%endif %endif
%{?python_provide:%python_provide python-matplotlib-data} Obsoletes: python-matplotlib-data < 3
%{?python_provide:%python_provide python3-matplotlib-data}
%description -n python-matplotlib-data %description -n python3-matplotlib-data
%{summary} %{summary}
%if %{with_bundled_fonts} %if %{with_bundled_fonts}
%package -n python-matplotlib-data-fonts %package -n python3-matplotlib-data-fonts
Summary: Fonts used by python-matplotlib Summary: Fonts used by python-matplotlib
# STIX and Computer Modern is OFL
# DejaVu is Bitstream Vera and Public Domain
License: OFL and Bitstream Vera and Public Domain
BuildArch: noarch BuildArch: noarch
Requires: python-matplotlib-data = %{version}-%{release} Requires: python3-matplotlib-data = %{version}-%{release}
%{?python_provide:%python_provide python-matplotlib-data-fonts} Obsoletes: python-matplotlib-data-fonts < 3
%{?python_provide:%python_provide python3-matplotlib-data-fonts}
%description -n python-matplotlib-data-fonts %description -n python3-matplotlib-data-fonts
%{summary} %{summary}
%endif %endif
%if %{with_python3}
%package -n python3-matplotlib %package -n python3-matplotlib
Summary: Python 2D plotting library Summary: Python 2D plotting library
Group: Development/Libraries
BuildRequires: python3-cairo BuildRequires: python3-cairo
BuildRequires: python3-cycler >= 0.10.0 BuildRequires: python3-cycler >= 0.10.0
BuildRequires: python3-dateutil BuildRequires: python3-dateutil
BuildRequires: python3-devel BuildRequires: python3-devel
BuildRequires: python3-setuptools BuildRequires: python3-setuptools
BuildRequires: python3-gobject BuildRequires: python3-gobject
BuildRequires: python3-kiwisolver
BuildRequires: python3-numpy BuildRequires: python3-numpy
BuildRequires: python3-pillow BuildRequires: python3-pillow
BuildRequires: python3-pycxx-devel
BuildRequires: python3-pyparsing BuildRequires: python3-pyparsing
BuildRequires: python3-pytz BuildRequires: python3-pytz
BuildRequires: python3-six BuildRequires: python3-sphinx
Requires: dejavu-sans-fonts Requires: dejavu-sans-fonts
Requires: dvipng Requires: dvipng
Requires: python-matplotlib-data = %{version}-%{release} Requires: python3-matplotlib-data = %{version}-%{release}
Requires: python3-cairo Requires: python3-cairo
Requires: python3-cycler >= 0.10.0 Requires: python3-cycler >= 0.10.0
Requires: python3-dateutil Requires: python3-dateutil
Requires: python3-kiwisolver
Requires: python3-matplotlib-%{?backend_subpackage}%{!?backend_subpackage:tk}%{?_isa} = %{version}-%{release} Requires: python3-matplotlib-%{?backend_subpackage}%{!?backend_subpackage:tk}%{?_isa} = %{version}-%{release}
%if %{run_tests} %if %{run_tests}
BuildRequires: python3-mock BuildRequires: python3-pytest
BuildRequires: python3-nose BuildRequires: python3-pytest-xdist
%endif %endif
Requires: python3-numpy Requires: python3-numpy
Recommends: python3-pillow Recommends: python3-pillow
Requires: python3-pyparsing Requires: python3-pyparsing
Requires: python3-pytz
Requires: python3-six
%if !%{with_bundled_fonts} %if !%{with_bundled_fonts}
%if 0%{?fedora}
Requires: stix-math-fonts Requires: stix-math-fonts
%else %else
Requires: stix-fonts
%endif
%else
Provides: bundled(stix-math-fonts) Provides: bundled(stix-math-fonts)
%endif %endif
%{?python_provide:%python_provide python3-matplotlib} %{?python_provide:%python_provide python3-matplotlib}
@@ -337,7 +169,6 @@ errorcharts, scatterplots, etc, with just a few lines of code.
%package -n python3-matplotlib-qt4 %package -n python3-matplotlib-qt4
Summary: Qt4 backend for python3-matplotlib Summary: Qt4 backend for python3-matplotlib
Group: Development/Libraries
BuildRequires: python3-PyQt4-devel BuildRequires: python3-PyQt4-devel
Requires: python3-matplotlib%{?_isa} = %{version}-%{release} Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
Requires: python3-matplotlib-qt5 Requires: python3-matplotlib-qt5
@@ -347,10 +178,8 @@ Requires: python3-PyQt4
%description -n python3-matplotlib-qt4 %description -n python3-matplotlib-qt4
%{summary} %{summary}
%if %{with_qt5}
%package -n python3-matplotlib-qt5 %package -n python3-matplotlib-qt5
Summary: Qt5 backend for python3-matplotlib Summary: Qt5 backend for python3-matplotlib
Group: Development/Libraries
BuildRequires: python3-qt5 BuildRequires: python3-qt5
Requires: python3-matplotlib%{?_isa} = %{version}-%{release} Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
Requires: python3-qt5 Requires: python3-qt5
@@ -358,12 +187,9 @@ Requires: python3-qt5
%description -n python3-matplotlib-qt5 %description -n python3-matplotlib-qt5
%{summary} %{summary}
%endif # with_qt5
# gtk2 never worked in Python 3 afaict, so no need for -gtk subpackage
%package -n python3-matplotlib-gtk3 %package -n python3-matplotlib-gtk3
Summary: GTK3 backend for python3-matplotlib Summary: GTK3 backend for python3-matplotlib
Group: Development/Libraries
# This should be converted to typelib(Gtk) when supported # This should be converted to typelib(Gtk) when supported
BuildRequires: gtk3 BuildRequires: gtk3
BuildRequires: python3-gobject BuildRequires: python3-gobject
@@ -377,7 +203,6 @@ Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
%package -n python3-matplotlib-tk %package -n python3-matplotlib-tk
Summary: Tk backend for python3-matplotlib Summary: Tk backend for python3-matplotlib
Group: Development/Libraries
BuildRequires: python3-tkinter BuildRequires: python3-tkinter
Requires: python3-matplotlib%{?_isa} = %{version}-%{release} Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
Requires: python3-tkinter Requires: python3-tkinter
@@ -385,14 +210,68 @@ Requires: python3-tkinter
%description -n python3-matplotlib-tk %description -n python3-matplotlib-tk
%{summary} %{summary}
%package -n python3-matplotlib-wx
Summary: WX backend for python3-matplotlib
BuildRequires: python3-wxpython4
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
Requires: python3-wxpython4
%{?python_provide:%python_provide python3-matplotlib-wx}
%description -n python3-matplotlib-wx
%{summary}
%package -n python3-matplotlib-doc
Summary: Documentation files for python-matplotlib
%if %{with_html}
BuildRequires: dvipng
BuildRequires: graphviz
BuildRequires: python3-sphinx
BuildRequires: tex(latex)
BuildRequires: tex-preview
BuildRequires: js-jquery >= 3.2.1
BuildRequires: xstatic-jquery-ui-common
Requires: js-jquery >= 3.2.1
Requires: xstatic-jquery-ui-common
%endif %endif
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python3-matplotlib-doc}
%description -n python3-matplotlib-doc
%{summary}
%package -n python3-matplotlib-test-data
Summary: Test data for python3-matplotlib
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python3-matplotlib-test-data}
%description -n python3-matplotlib-test-data
%{summary}
%prep %prep
%setup -q -n matplotlib-%{version}%{?rctag} %autosetup -n matplotlib-%{version}%{?rctag} -N
rm -r extern/qhull %patch0001 -p1
%patch0002 -p1
# Fedora-specific patches follow:
%patch1001 -p1
# Updated test images for new FreeType.
gzip -dc %SOURCE1000 | tar xvf - --transform='s~^mpl-images-%{mpl_images_version}-with-freetype-%{ftver}/\([^/]\+\)/~lib/\1/tests/baseline_images/~'
%ifnarch x86_64
%patch1002 -p1
%endif
%ifarch aarch64 ppc64 ppc64le s390x
%patch1004 -p1
%endif
%ifarch i686 armv7hl
%patch1003 -p1
%endif
rm -r extern/libqhull
# Copy setup.cfg to the builddir # Copy setup.cfg to the builddir
sed 's/\(backend = \).*/\1%{backend}/' >setup.cfg <%{SOURCE1} cp -p %{SOURCE1} setup.cfg
# Keep this until next version, and increment if changing from # Keep this until next version, and increment if changing from
# USE_FONTCONFIG to False or True so that cache is regenerated # USE_FONTCONFIG to False or True so that cache is regenerated
@@ -407,95 +286,74 @@ fi
sed -i 's/\(USE_FONTCONFIG = \)False/\1True/' lib/matplotlib/font_manager.py sed -i 's/\(USE_FONTCONFIG = \)False/\1True/' lib/matplotlib/font_manager.py
%endif %endif
%patch2 -p1
%ifarch armv7hl aarch64
%patch8 -p1 -b .tests-arm
%endif
%if 0%{?fedora} > 24
# Installation paths changed
%patch9 -p1 -b .qh
%endif
%patch10 -p1 -b .tests
%ifarch aarch64 %{power64} s390 s390x
%patch11 -p1 -b .tests-aarch64ppc64
%endif
%ifarch i686
%patch13 -p1 -b .tests-i686
%endif
chmod -x lib/matplotlib/mpl-data/images/*.svg
chmod -x lib/matplotlib/{dates,sankey}.py
chmod -x lib/mpl_toolkits/mplot3d/*.py
%build %build
%set_build_flags
export http_proxy=http://127.0.0.1/ export http_proxy=http://127.0.0.1/
MPLCONFIGDIR=$PWD \ MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \ MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \
xvfb-run %{__python2} setup.py build xvfb-run %{__python3} setup.py build
%if %{with_html} %if %{with_html}
# Need to make built matplotlib libs available for the sphinx extensions: # Need to make built matplotlib libs available for the sphinx extensions:
pushd doc pushd doc
MPLCONFIGDIR=$PWD/.. \ MPLCONFIGDIR=$PWD/.. \
MATPLOTLIBDATA=$PWD/../lib/matplotlib/mpl-data \ MATPLOTLIBDATA=$PWD/../lib/matplotlib/mpl-data \
PYTHONPATH=`realpath ../build/lib.linux*` \ PYTHONPATH=`realpath ../build/lib.linux*` \
%{__python2} make.py html %{__python3} make.py html
popd popd
%endif %endif
# Ensure all example files are non-executable so that the -doc # Ensure all example files are non-executable so that the -doc
# package doesn't drag in dependencies # package doesn't drag in dependencies
find examples -name '*.py' -exec chmod a-x '{}' \; find examples -name '*.py' -exec chmod a-x '{}' \;
%if %{with_python3}
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \
xvfb-run %{__python3} setup.py build
# documentation cannot be built with python3 due to syntax errors
# https://github.com/matplotlib/matplotlib/issues/5805
%endif
%install %install
export http_proxy=http://127.0.0.1/ export http_proxy=http://127.0.0.1/
MPLCONFIGDIR=$PWD \ MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data/ \ MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data/ \
%{__python} setup.py install -O1 --skip-build --root=%{buildroot} %{__python3} setup.py install -O1 --skip-build --root=%{buildroot}
chmod +x %{buildroot}%{python2_sitearch}/matplotlib/dates.py chmod +x %{buildroot}%{python3_sitearch}/matplotlib/dates.py
mkdir -p %{buildroot}%{_sysconfdir} %{buildroot}%{_datadir}/matplotlib mkdir -p %{buildroot}%{_sysconfdir} %{buildroot}%{_datadir}/matplotlib
mv %{buildroot}%{python2_sitearch}/matplotlib/mpl-data/matplotlibrc \ mv %{buildroot}%{python3_sitearch}/matplotlib/mpl-data/matplotlibrc \
%{buildroot}%{_sysconfdir} %{buildroot}%{_sysconfdir}
mv %{buildroot}%{python2_sitearch}/matplotlib/mpl-data \ mv %{buildroot}%{python3_sitearch}/matplotlib/mpl-data \
%{buildroot}%{_datadir}/matplotlib %{buildroot}%{_datadir}/matplotlib
%if !%{with_bundled_fonts} %if !%{with_bundled_fonts}
rm -rf %{buildroot}%{_datadir}/matplotlib/mpl-data/fonts rm -rf %{buildroot}%{_datadir}/matplotlib/mpl-data/fonts
%endif %endif
%if %{with_python3}
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
%endif
%if %{run_tests} %if %{run_tests}
%check %check
# These files confuse pytest, and we want to test the installed copy.
rm -rf build*/
export http_proxy=http://127.0.0.1/ export http_proxy=http://127.0.0.1/
# This should match the default backend # Skips:
echo "backend : %{backend}" > matplotlibrc # * test_invisible_Line_rendering: Checks for "slowness" that often fails on a
MPLCONFIGDIR=$PWD \ # heavily-loaded builder.
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python2_sitearch} \
xvfb-run -a %{__python2} tests.py --no-network --processes=$(getconf _NPROCESSORS_ONLN) --process-timeout=300
%if %{with_python3}
MPLCONFIGDIR=$PWD \ MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \ MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
MATPLOTLIBRC=%{buildroot}%{_sysconfdir}/matplotlibrc \
PYTHONPATH=%{buildroot}%{python3_sitearch} \ PYTHONPATH=%{buildroot}%{python3_sitearch} \
xvfb-run -a %{__python3} tests.py --no-network --processes=$(getconf _NPROCESSORS_ONLN) --process-timeout=300 PYTHONDONTWRITEBYTECODE=1 \
xvfb-run -a -s "-screen 0 640x480x24" \
%{__python3} tests.py -ra -n $(getconf _NPROCESSORS_ONLN) \
-m 'not network' \
-k 'not test_invisible_Line_rendering and not backend_qt5'
# Run Qt5Agg tests separately to not conflict with Qt4 tests.
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
MATPLOTLIBRC=%{buildroot}%{_sysconfdir}/matplotlibrc \
PYTHONPATH=%{buildroot}%{python3_sitearch} \
PYTHONDONTWRITEBYTECODE=1 \
xvfb-run -a -s "-screen 0 640x480x24" \
%{__python3} tests.py -ra -n $(getconf _NPROCESSORS_ONLN) \
-m 'not network' \
matplotlib.tests.test_backend_qt5
%endif %endif
%endif # run_tests
%files -n python-matplotlib-data %files -n python3-matplotlib-data
%{_sysconfdir}/matplotlibrc %{_sysconfdir}/matplotlibrc
%{_datadir}/matplotlib/mpl-data/ %{_datadir}/matplotlib/mpl-data/
%if %{with_bundled_fonts} %if %{with_bundled_fonts}
@@ -503,75 +361,18 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%endif %endif
%if %{with_bundled_fonts} %if %{with_bundled_fonts}
%files -n python-matplotlib-data-fonts %files -n python3-matplotlib-data-fonts
%{_datadir}/matplotlib/mpl-data/fonts/ %{_datadir}/matplotlib/mpl-data/fonts/
%endif %endif
%files -n python2-matplotlib %files -n python3-matplotlib-doc
%license LICENSE/
%doc CONTRIBUTING.md
%doc CHANGELOG
%doc README.rst
%{python2_sitearch}/*egg-info
%{python2_sitearch}/matplotlib-*-nspkg.pth
%{python2_sitearch}/matplotlib/
%exclude %{python2_sitearch}/matplotlib/tests/baseline_images/*
%{python2_sitearch}/mpl_toolkits/
%exclude %{python2_sitearch}/mpl_toolkits/tests/baseline_images/*
%{python2_sitearch}/pylab.py*
%exclude %{python2_sitearch}/matplotlib/backends/backend_qt4*
%exclude %{python2_sitearch}/matplotlib/backends/backend_qt5*
%exclude %{python2_sitearch}/matplotlib/backends/backend_gtk*
%exclude %{python2_sitearch}/matplotlib/backends/_gtkagg.*
%exclude %{python2_sitearch}/matplotlib/backends/backend_tkagg.*
%exclude %{python2_sitearch}/matplotlib/backends/tkagg.*
%exclude %{python2_sitearch}/matplotlib/backends/_tkagg.so
%exclude %{python2_sitearch}/matplotlib/backends/backend_wx.*
%exclude %{python2_sitearch}/matplotlib/backends/backend_wxagg.*
%exclude %{_pkgdocdir}/*
%exclude %{_pkgdocdir}/*/*
%files -n python2-matplotlib-qt4
%{python2_sitearch}/matplotlib/backends/backend_qt4.*
%{python2_sitearch}/matplotlib/backends/backend_qt4agg.*
%if %{with_qt5}
%files -n python2-matplotlib-qt5
%{python2_sitearch}/matplotlib/backends/backend_qt5.*
%{python2_sitearch}/matplotlib/backends/backend_qt5agg.*
%endif # with_qt5
%files -n python2-matplotlib-gtk
%{python2_sitearch}/matplotlib/backends/backend_gtk.py*
%{python2_sitearch}/matplotlib/backends/backend_gtkagg.py*
%{python2_sitearch}/matplotlib/backends/backend_gtkcairo.py*
%{python2_sitearch}/matplotlib/backends/_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*
%{python2_sitearch}/matplotlib/backends/tkagg.py*
%{python2_sitearch}/matplotlib/backends/_tkagg.so
%if %{with_wx}
%files -n python2-matplotlib-wx
%{python2_sitearch}/matplotlib/backends/backend_wx.*
%{python2_sitearch}/matplotlib/backends/backend_wxagg.*
%endif # with_wx
%files -n python2-matplotlib-doc
%doc examples %doc examples
%if %{with_html} %if %{with_html}
%doc doc/build/html/* %doc doc/build/html/*
%endif %endif
%if %{with_python3}
%files -n python3-matplotlib %files -n python3-matplotlib
%license LICENSE/ %license LICENSE/
%doc CONTRIBUTING.md
%doc CHANGELOG
%doc README.rst %doc README.rst
%{python3_sitearch}/*egg-info %{python3_sitearch}/*egg-info
%{python3_sitearch}/matplotlib-*-nspkg.pth %{python3_sitearch}/matplotlib-*-nspkg.pth
@@ -581,46 +382,134 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%exclude %{python3_sitearch}/mpl_toolkits/tests/baseline_images/* %exclude %{python3_sitearch}/mpl_toolkits/tests/baseline_images/*
%{python3_sitearch}/pylab.py* %{python3_sitearch}/pylab.py*
%{python3_sitearch}/__pycache__/* %{python3_sitearch}/__pycache__/*
%exclude %{python3_sitearch}/matplotlib/backends/backend_qt4* %exclude %{python3_sitearch}/matplotlib/backends/backend_qt4*.py
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4* %exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4*
%exclude %{python3_sitearch}/matplotlib/backends/backend_qt5* #exclude #{python3_sitearch}/matplotlib/backends/backend_qt5*.py
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5* #exclude #{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5*
%exclude %{python3_sitearch}/matplotlib/backends/backend_gtk* %exclude %{python3_sitearch}/matplotlib/backends/_gtk3_compat.py
%exclude %{python3_sitearch}/matplotlib/backends/backend_gtk*.py
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/_gtk3_compat.*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_gtk* %exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_gtk*
%exclude %{python3_sitearch}/matplotlib/backends/backend_tkagg.* %exclude %{python3_sitearch}/matplotlib/backends/_backend_tk.py
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_tkagg.* %exclude %{python3_sitearch}/matplotlib/backends/backend_tk*.py
%exclude %{python3_sitearch}/matplotlib/backends/tkagg.* %exclude %{python3_sitearch}/matplotlib/backends/tkagg.py
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/_backend_tk.*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_tk*.*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/tkagg.* %exclude %{python3_sitearch}/matplotlib/backends/__pycache__/tkagg.*
%exclude %{python3_sitearch}/matplotlib/backends/_tkagg.* %exclude %{python3_sitearch}/matplotlib/backends/_tkagg.*
%exclude %{python3_sitearch}/matplotlib/backends/backend_wx*
%exclude %{python3_sitearch}/matplotlib/backends/wx_compat.*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/backend_wx*
%exclude %{python3_sitearch}/matplotlib/backends/__pycache__/wx_compat.*
%exclude %{_pkgdocdir}/*/ %exclude %{_pkgdocdir}/*/
%files -n python3-matplotlib-test-data
%{python3_sitearch}/matplotlib/tests/baseline_images/
%{python3_sitearch}/mpl_toolkits/tests/baseline_images/
%files -n python3-matplotlib-qt4 %files -n python3-matplotlib-qt4
%{python3_sitearch}/matplotlib/backends/backend_qt4.* %{python3_sitearch}/matplotlib/backends/backend_qt4.py
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4.* %{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4.*
%{python3_sitearch}/matplotlib/backends/backend_qt4agg.* %{python3_sitearch}/matplotlib/backends/backend_qt4agg.py
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4agg.* %{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4agg.*
%if %{with_qt5} # This subpackage is empty because the Qt4 backend imports it, so we leave
# these files in the default package, and only use this one for dependencies.
%files -n python3-matplotlib-qt5 %files -n python3-matplotlib-qt5
%{python3_sitearch}/matplotlib/backends/backend_qt5.* #{python3_sitearch}/matplotlib/backends/backend_qt5.py
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5.* #{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5.*
%{python3_sitearch}/matplotlib/backends/backend_qt5agg.* #{python3_sitearch}/matplotlib/backends/backend_qt5agg.py
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5agg.* #{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5agg.*
%endif # with_qt5
%files -n python3-matplotlib-gtk3 %files -n python3-matplotlib-gtk3
%{python3_sitearch}/matplotlib/backends/backend_gtk* %{python3_sitearch}/matplotlib/backends/backend_gtk*.py
%{python3_sitearch}/matplotlib/backends/_gtk3_compat.py
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_gtk* %{python3_sitearch}/matplotlib/backends/__pycache__/backend_gtk*
%{python3_sitearch}/matplotlib/backends/__pycache__/_gtk3_compat.*
%files -n python3-matplotlib-tk %files -n python3-matplotlib-tk
%{python3_sitearch}/matplotlib/backends/backend_tkagg.py* %{python3_sitearch}/matplotlib/backends/backend_tk*.py
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_tkagg.* %{python3_sitearch}/matplotlib/backends/_backend_tk.py
%{python3_sitearch}/matplotlib/backends/tkagg.* %{python3_sitearch}/matplotlib/backends/tkagg.py
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_tk*.*
%{python3_sitearch}/matplotlib/backends/__pycache__/_backend_tk.*
%{python3_sitearch}/matplotlib/backends/__pycache__/tkagg.* %{python3_sitearch}/matplotlib/backends/__pycache__/tkagg.*
%{python3_sitearch}/matplotlib/backends/_tkagg.* %{python3_sitearch}/matplotlib/backends/_tkagg.*
%endif
%files -n python3-matplotlib-wx
%{python3_sitearch}/matplotlib/backends/backend_wx*.py
%{python3_sitearch}/matplotlib/backends/wx_compat.py
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_wx*
%{python3_sitearch}/matplotlib/backends/__pycache__/wx_compat.*
%changelog %changelog
* Wed Jul 3 2019 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 3.0.3-2
- Update Obsoletes to be later than the last python2 builds (#1726490)
* Sat Mar 02 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.0.3-1
- Update to latest version
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.2-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Tue Nov 13 2018 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.0.2-1
- Update to latest version
* Wed Oct 31 2018 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.0.1-1
- Update to latest version
* Fri Sep 21 2018 Miro Hrončok <mhroncok@redhat.com> - 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 <quantum.analyst@gmail.com> - 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 <quantum.analyst@gmail.com> - 2.2.3-1
- Update to latest version
* Fri Jul 20 2018 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 2.2.2-4
- Don't use unversioned Python in build (#1605766)
- Add missing texlive-cm BR
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.2.2-3.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 2.2.2-3
- Rebuilt for Python 3.7
* Tue Apr 17 2018 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 2.2.2-2
- Remove bytecode produced by pytest
- Add python?-matplotlib-test-data subpackages
* Sat Mar 31 2018 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 2.2.2-1
- Update to latest release
- Run tests in parallel
* Tue Mar 13 2018 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 2.1.2-3
- Cleanup spec file of old conditionals
- Use more python2- dependencies
* Mon Feb 05 2018 Karsten Hopp <karsten@redhat.com> - 2.1.2-2
- update and fix spec file conditionals
* Sun Jan 21 2018 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 2.1.2-1
- Update to latest release
* Sun Dec 10 2017 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 2.1.1-1
- Update to latest release
* Mon Oct 16 2017 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 2.1.0-1
- Update to latest release
* Thu Sep 28 2017 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 2.0.2-1
- Update to latest release
* Thu Sep 28 2017 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 2.0.1-1
- Update to latest release
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.0-3.2 * Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.0-3.2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
@@ -903,7 +792,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
- fix build with new Tkinter which doesn't return an expected value in __version__ - fix build with new Tkinter which doesn't return an expected value in __version__
* Thu Sep 15 2011 Jef Spaleta <jspaleta@fedoraproject.org> - 1.0.1-13 * Thu Sep 15 2011 Jef Spaleta <jspaleta@fedoraproject.org> - 1.0.1-13
- apply upstream bugfix for timezone formatting (Bug 735677) - apply upstream bugfix for timezone formatting (Bug 735677)
* Fri May 20 2011 Orion Poplawski <orion@cora.nwra.com> - 1.0.1-12 * Fri May 20 2011 Orion Poplawski <orion@cora.nwra.com> - 1.0.1-12
- Add Requires dvipng (Bug 684836) - Add Requires dvipng (Bug 684836)
@@ -961,20 +850,20 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild - Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
* Thu Jul 8 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 1.0.0-1 * Thu Jul 8 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 1.0.0-1
- New upstream release - New upstream release
- Remove undistributable file from bundled agg library - Remove undistributable file from bundled agg library
* Thu Jul 1 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.3-1 * Thu Jul 1 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.3-1
- New upstream release - New upstream release
* Thu May 27 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.1.2-4 * Thu May 27 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.1.2-4
- Upstream patch to fix deprecated gtk tooltip warning. - Upstream patch to fix deprecated gtk tooltip warning.
* Mon Apr 12 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.1.2-2 * Mon Apr 12 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.1.2-2
- Bump to rebuild against numpy 1.3 - Bump to rebuild against numpy 1.3
* Thu Apr 1 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.1.2-1 * Thu Apr 1 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.1.2-1
- Bump to rebuild against numpy 1.4.0 - Bump to rebuild against numpy 1.4.0
* Fri Dec 11 2009 Jon Ciesla <limb@jcomserv.net> - 0.99.1.2 * Fri Dec 11 2009 Jon Ciesla <limb@jcomserv.net> - 0.99.1.2
- Update to 0.99.1.2 - Update to 0.99.1.2
@@ -1035,7 +924,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
- Rebuild for Tcl/Tk downgrade - Rebuild for Tcl/Tk downgrade
* Sat Feb 10 2007 Jef Spaleta <jspaleta@gmail.com> 0.90.0-2 * Sat Feb 10 2007 Jef Spaleta <jspaleta@gmail.com> 0.90.0-2
- Release bump for rebuild against new tk - Release bump for rebuild against new tk
* Fri Feb 09 2007 Orion Poplawski <orion@cora.nwra.com> 0.90.0-1 * Fri Feb 09 2007 Orion Poplawski <orion@cora.nwra.com> 0.90.0-1
- Update to 0.90.0 - Update to 0.90.0
@@ -1097,7 +986,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
- New upstream version 0.84 - New upstream version 0.84
* Tue Aug 02 2005 Orion Poplawski <orion@cora.nwra.com> 0.83.2-3 * Tue Aug 02 2005 Orion Poplawski <orion@cora.nwra.com> 0.83.2-3
- bump release - bump release
* Tue Aug 02 2005 Orion Poplawski <orion@cora.nwra.com> 0.83.2-2 * Tue Aug 02 2005 Orion Poplawski <orion@cora.nwra.com> 0.83.2-2
- Add Requires: python-numeric, pytz, python-dateutil - Add Requires: python-numeric, pytz, python-dateutil

View File

@@ -1,21 +0,0 @@
#! /bin/sh
version=$1
[ -z $version ] && exit 1
dir=matplotlib-${version}
file=matplotlib-${version}.tar.gz
result=matplotlib-${version}-without-copyrighted.tar.xz
test -f $file || exit 1
rm -rf matplotlib-${version}
tar xzf $file
# https://github.com/matplotlib/matplotlib/issues/8034
rm -vr matplotlib-${version}/lib/matplotlib/mpl-data/sample_data/necked_tensile_specimen.png
rm -vr matplotlib-${version}/examples/images_contours_and_fields/interpolation_none_vs_nearest.py
rm -f $result
tar cJf $result $dir

View File

@@ -1,5 +1,4 @@
[packages] [packages]
tests = True tests = True
toolkits = True
[rc_options] toolkits_tests = True
backend = GTKAgg

View File

@@ -1 +1,2 @@
SHA512 (matplotlib-2.0.0-without-copyrighted.tar.xz) = 6413b0187b3d7ce5e4cbfaf7de4f42a747f1a415dbe3dca71c5f0ff0b8ac7139dc2807302bfbc67428281cfc7744cc23c6bbda041cd0568eff71801a740b862d SHA512 (matplotlib-3.0.3.tar.gz) = 9fe00b8d0ca6dcf2f1b907118b656353e115b73f8b21adeb4391c87e164c111a4994c3ac17cdd02e75b896d9aa26c279618132f9a7bfe995c0f7c62356ed85ad
SHA512 (matplotlib-3.0.1-with-freetype-2.9.1.tar.gz) = 7d2f9fa2a1ae58107283877cbb96d74f79cfda4d6328bdee90d88b2a286eaad9ae8ff6d764f10a5c05eec6fb5de8598cada168fe7c85d33bd07873fdfc142e3a