Compare commits

..

1 Commits
f36 ... f31

Author SHA1 Message Date
Elliott Sales de Andrade
b0c798dbcb Update to latest version. 2020-02-14 04:24:14 -05:00
17 changed files with 2182 additions and 1261 deletions

39
.gitignore vendored
View File

@@ -42,41 +42,4 @@ matplotlib-1.0.0-without-gpc.tar.gz
/matplotlib-3.1.1.tar.gz /matplotlib-3.1.1.tar.gz
/matplotlib-3.1.1-with-freetype-2.10.0.tar.gz /matplotlib-3.1.1-with-freetype-2.10.0.tar.gz
/matplotlib-3.1.2.tar.gz /matplotlib-3.1.2.tar.gz
/matplotlib-3.2.0rc3.tar.gz /matplotlib-3.1.3.tar.gz
/matplotlib-3.2.0rc3-with-freetype-2.10.1.tar.gz
/matplotlib-3.2.0.tar.gz
/matplotlib-3.2.0-with-freetype-2.10.1.tar.gz
/matplotlib-3.2.1.tar.gz
/matplotlib-3.2.2.tar.gz
/matplotlib-3.2.2-with-freetype-2.10.1.tar.gz
/matplotlib-3.3.0rc1.tar.gz
/matplotlib-3.3.0rc1-with-freetype-2.10.1.tar.gz
/matplotlib-3.3.0.tar.gz
/matplotlib-3.3.0-with-freetype-2.10.2.tar.gz
/matplotlib-3.3.1.tar.gz
/matplotlib-3.3.2.tar.gz
/matplotlib-3.3.3.tar.gz
/matplotlib-3.3.3-with-freetype-2.10.4.tar.gz
/matplotlib-3.3.4.tar.gz
/matplotlib-3.4.0rc1.tar.gz
/matplotlib-3.4.0rc1-with-freetype-2.10.4.tar.gz
/matplotlib-3.4.0rc3.tar.gz
/matplotlib-3.4.1.tar.gz
/matplotlib-3.4.1-with-freetype-2.10.4.tar.gz
/matplotlib-3.4.2.tar.gz
/matplotlib-3.4.1-with-freetype-2.11.0.tar.gz
/matplotlib-3.4.3.tar.gz
/matplotlib-3.4.3-with-freetype-2.11.0.tar.gz
/matplotlib-3.5.0b1.tar.gz
/matplotlib-3.5.0b1-with-freetype-2.11.0.tar.gz
/matplotlib-3.5.0rc1.tar.gz
/matplotlib-3.5.0rc1-with-freetype-2.11.0.tar.gz
/matplotlib-3.5.0.tar.gz
/matplotlib-3.5.0-with-freetype-2.11.0.tar.gz
/matplotlib-3.5.1.tar.gz
/matplotlib-3.5.1-with-freetype-2.11.0.tar.gz
/matplotlib-3.5.2.tar.gz
/matplotlib-3.5.2-with-freetype-2.11.0.tar.gz
/matplotlib-3.5.3.tar.gz
/matplotlib-3.5.3-with-freetype-2.11.0.tar.gz
/matplotlib-3.5.3-with-freetype-2.12.1.tar.gz

View File

@@ -0,0 +1,36 @@
From f0dbd8d7b76ac217df3641d03997b393c476d77c Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Wed, 20 Nov 2019 15:58:04 -0500
Subject: [PATCH] Fix env override in WebAgg backend test.
It's only necessary to override DISPLAY, not throw away the rest of the
environment. Without the other environment variables, stuff like custom
PYTHONPATH break in this test.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_backend_webagg.py | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/lib/matplotlib/tests/test_backend_webagg.py b/lib/matplotlib/tests/test_backend_webagg.py
index 220670aa4..997c36a3a 100644
--- a/lib/matplotlib/tests/test_backend_webagg.py
+++ b/lib/matplotlib/tests/test_backend_webagg.py
@@ -8,11 +8,9 @@ import pytest
def test_webagg_fallback(backend):
if backend == "nbagg":
pytest.importorskip("IPython")
- env = {}
- if os.name == "nt":
- env = dict(os.environ)
- else:
- env = {"DISPLAY": ""}
+ env = dict(os.environ)
+ if os.name != "nt":
+ env["DISPLAY"] = ""
env["MPLBACKEND"] = backend
--
2.21.0

View File

@@ -0,0 +1,37 @@
From ee5c28ea8cd17cbc04d5a9b79d5ce1326df93466 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 | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/setupext.py b/setupext.py
index 3e8b382cc..66a278b0c 100644
--- a/setupext.py
+++ b/setupext.py
@@ -838,14 +838,12 @@ class Png(SetupPackage):
class Qhull(SetupPackage):
name = "qhull"
+ def check(self):
+ self.__class__.found_external = True
+ return ' Using system copy.'
+
def add_flags(self, ext):
- # Qhull doesn't distribute pkg-config info, so we have no way of
- # knowing whether a system install is recent enough. Thus, always use
- # the vendored version.
- 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.21.0

View File

@@ -0,0 +1,25 @@
From 5c714fede82e29bd42a3a6f20ec2898a9c37a0ed Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Fri, 22 Nov 2019 19:50:20 -0500
Subject: [PATCH] Skip webagg test if tornado is not available.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_backend_webagg.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/lib/matplotlib/tests/test_backend_webagg.py b/lib/matplotlib/tests/test_backend_webagg.py
index 997c36a3a..5c6ddfa25 100644
--- a/lib/matplotlib/tests/test_backend_webagg.py
+++ b/lib/matplotlib/tests/test_backend_webagg.py
@@ -6,6 +6,7 @@ import pytest
@pytest.mark.parametrize("backend", ["webagg", "nbagg"])
def test_webagg_fallback(backend):
+ pytest.importorskip("tornado")
if backend == "nbagg":
pytest.importorskip("IPython")
env = dict(os.environ)
--
2.21.0

View File

@@ -0,0 +1,123 @@
From c2af74bf18d46d03ec34bfda32afe1a99511ac9f 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 | 56 -------------------
3 files changed, 6 insertions(+), 62 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 adabf1753..57d6b91b4 100644
--- a/setup.py
+++ b/setup.py
@@ -27,8 +27,6 @@ from zipfile import ZipFile
from setuptools import setup, Extension
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.
@@ -124,60 +122,6 @@ cmdclass['test'] = NoopTestCommand
cmdclass['build_ext'] = BuildExtraLibraries
-def _download_jquery_to(dest):
- if os.path.exists(os.path.join(dest, "jquery-ui-1.12.1")):
- return
-
- # If we are installing from an sdist, use the already downloaded jquery-ui
- sdist_src = os.path.join(
- "lib/matplotlib/backends/web_backend", "jquery-ui-1.12.1")
- if os.path.exists(sdist_src):
- shutil.copytree(sdist_src, os.path.join(dest, "jquery-ui-1.12.1"))
- return
-
- # 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")):
- os.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.21.0

View File

@@ -1,43 +1,105 @@
From a2d7ef7b895d3b0bc9654d31c6cb40935eec0ce9 Mon Sep 17 00:00:00 2001 From 9776757607af144c824d72920f8983efc35face3 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com> From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Wed, 27 Sep 2017 19:35:59 -0400 Date: Wed, 27 Sep 2017 19:35:59 -0400
Subject: [PATCH 1/3] matplotlibrc path search fix Subject: [PATCH 1/4] matplotlibrc path search fix
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com> Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
--- ---
lib/matplotlib/__init__.py | 5 ++++- lib/matplotlib/__init__.py | 19 ++++---------------
1 file changed, 4 insertions(+), 1 deletion(-) lib/matplotlib/tests/test_rcparams.py | 18 ++++++++++++------
2 files changed, 16 insertions(+), 21 deletions(-)
diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py
index b8fd4f9860..23841c8377 100644 index 825303171..7a4115491 100644
--- a/lib/matplotlib/__init__.py --- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py +++ b/lib/matplotlib/__init__.py
@@ -526,7 +526,8 @@ def get_cachedir(): @@ -624,18 +624,8 @@ def _get_data_path():
@_logged_cached('matplotlib data path: %s') return path
def get_data_path():
"""Return the path to Matplotlib data.""" def get_candidate_paths():
- return str(Path(__file__).with_name("mpl-data")) - yield Path(__file__).with_name('mpl-data')
+ return str(Path(__file__).parent.parent.parent.parent.parent / - # setuptools' namespace_packages may hijack 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(__file__).parent.parent.parent.parent.parent /
+ 'share/matplotlib/mpl-data') + 'share/matplotlib/mpl-data')
for path in get_candidate_paths():
def matplotlib_fname(): if path.is_dir():
@@ -546,6 +547,7 @@ def matplotlib_fname(): @@ -678,8 +668,7 @@ def matplotlib_fname():
is not defined) is not defined)
- On other platforms, - On other platforms,
- ``$HOME/.matplotlib/matplotlibrc`` if ``$HOME`` is defined - ``$HOME/.matplotlib/matplotlibrc`` if ``$HOME`` is defined
+ - ``/etc/matplotlibrc`` - - Lastly, it looks in ``$MATPLOTLIBDATA/matplotlibrc``, which should always
- Lastly, it looks in ``$MATPLOTLIBDATA/matplotlibrc``, which should always - exist.
exist. + - Lastly, it looks in ``/etc/matplotlibrc``, which should always exist.
""" """
@@ -564,6 +566,7 @@ def matplotlib_fname():
def gen_candidates():
@@ -692,7 +681,7 @@ def matplotlib_fname():
yield matplotlibrc yield matplotlibrc
yield os.path.join(matplotlibrc, 'matplotlibrc') yield os.path.join(matplotlibrc, 'matplotlibrc')
yield os.path.join(get_configdir(), 'matplotlibrc') yield os.path.join(get_configdir(), 'matplotlibrc')
- yield os.path.join(get_data_path(), 'matplotlibrc')
+ yield '/etc/matplotlibrc' + yield '/etc/matplotlibrc'
yield os.path.join(get_data_path(), 'matplotlibrc')
for fname in gen_candidates(): for fname in gen_candidates():
if os.path.exists(fname) and not os.path.isdir(fname):
diff --git a/lib/matplotlib/tests/test_rcparams.py b/lib/matplotlib/tests/test_rcparams.py
index d8fe73ceb..c3aeb58ef 100644
--- a/lib/matplotlib/tests/test_rcparams.py
+++ b/lib/matplotlib/tests/test_rcparams.py
@@ -1,6 +1,7 @@
from collections import OrderedDict
import copy
import os
+from pathlib import Path
from unittest import mock
import warnings
@@ -457,11 +458,17 @@ 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.
+ return (Path(__file__).parent.parent.parent.parent.parent.parent.parent /
+ '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():
@@ -484,11 +491,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.36.1 2.21.1

View File

@@ -0,0 +1,114 @@
From 939fcad1ab9dc4986bd86842f616dc50cb6398e2 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Sat, 4 May 2019 04:36:45 -0400
Subject: [PATCH 2/4] Set FreeType version to 2.10.0 and update tolerances.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/__init__.py | 2 +-
lib/matplotlib/tests/test_axes.py | 6 +++---
lib/matplotlib/tests/test_constrainedlayout.py | 2 +-
lib/matplotlib/tests/test_tightlayout.py | 10 +++++-----
setupext.py | 5 ++++-
5 files changed, 14 insertions(+), 11 deletions(-)
diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py
index 7a4115491..1bf9d3e03 100644
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
@@ -1361,7 +1361,7 @@ def _init_tests():
# The version of FreeType to install locally for running the
# tests. This must match the value in `setupext.py`
- LOCAL_FREETYPE_VERSION = '2.6.1'
+ LOCAL_FREETYPE_VERSION = '2.10.0'
from matplotlib import ft2font
if (ft2font.__freetype_version__ != LOCAL_FREETYPE_VERSION or
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index 356b9ad42..84a1956ee 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -6207,7 +6207,7 @@ def test_normal_axes():
]
for nn, b in enumerate(bbaxis):
targetbb = mtransforms.Bbox.from_bounds(*target[nn])
- assert_array_almost_equal(b.bounds, targetbb.bounds, decimal=2)
+ assert_array_almost_equal(b.bounds, targetbb.bounds, decimal=0)
target = [
[150.0, 119.999, 930.0, 11.111],
@@ -6225,7 +6225,7 @@ def test_normal_axes():
target = [85.5138, 75.88888, 1021.11, 1017.11]
targetbb = mtransforms.Bbox.from_bounds(*target)
- assert_array_almost_equal(bbtb.bounds, targetbb.bounds, decimal=2)
+ assert_array_almost_equal(bbtb.bounds, targetbb.bounds, decimal=0)
# test that get_position roundtrips to get_window_extent
axbb = ax.get_position().transformed(fig.transFigure).bounds
@@ -6350,7 +6350,7 @@ def test_get_tightbbox_polar():
fig.canvas.draw()
bb = ax.get_tightbbox(fig.canvas.get_renderer())
assert_allclose(bb.extents,
- [107.7778, 29.2778, 539.7847, 450.7222], rtol=1e-03)
+ [107.7778, 29.2778, 539.7847, 450.7222], rtol=1)
@check_figures_equal(extensions=["png"])
diff --git a/lib/matplotlib/tests/test_constrainedlayout.py b/lib/matplotlib/tests/test_constrainedlayout.py
index 8769fcec3..e9ae292f6 100644
--- a/lib/matplotlib/tests/test_constrainedlayout.py
+++ b/lib/matplotlib/tests/test_constrainedlayout.py
@@ -416,4 +416,4 @@ def test_hidden_axes():
extents1 = np.copy(axs[0, 0].get_position().extents)
np.testing.assert_allclose(extents1,
- [0.045552, 0.548288, 0.47319, 0.982638], rtol=1e-5)
+ [0.045552, 0.548288, 0.47319, 0.982638], rtol=1e-2)
diff --git a/lib/matplotlib/tests/test_tightlayout.py b/lib/matplotlib/tests/test_tightlayout.py
index 0b9469cb8..7963b82ff 100644
--- a/lib/matplotlib/tests/test_tightlayout.py
+++ b/lib/matplotlib/tests/test_tightlayout.py
@@ -186,12 +186,12 @@ def test_outward_ticks():
plt.tight_layout()
# These values were obtained after visual checking that they correspond
# to a tight layouting that did take the ticks into account.
- ans = [[[0.091, 0.607], [0.433, 0.933]],
- [[0.579, 0.607], [0.922, 0.933]],
- [[0.091, 0.140], [0.433, 0.466]],
- [[0.579, 0.140], [0.922, 0.466]]]
+ ans = [[[0.09, 0.61], [0.43, 0.93]],
+ [[0.58, 0.61], [0.92, 0.93]],
+ [[0.09, 0.14], [0.43, 0.47]],
+ [[0.58, 0.14], [0.92, 0.47]]]
for nn, ax in enumerate(fig.axes):
- assert_array_equal(np.round(ax.get_position().get_points(), 3),
+ assert_array_equal(np.round(ax.get_position().get_points(), 2),
ans[nn])
diff --git a/setupext.py b/setupext.py
index 3e8b382cc..2a3fc3ee7 100644
--- a/setupext.py
+++ b/setupext.py
@@ -135,12 +135,15 @@ _freetype_hashes = {
'2.7.1': '162ef25aa64480b1189cdb261228e6c5c44f212aac4b4621e28cf2157efb59f5',
'2.8': '33a28fabac471891d0523033e99c0005b95e5618dc8ffa7fa47f9dadcacb1c9b',
'2.8.1': '876711d064a6a1bd74beb18dd37f219af26100f72daaebd2d86cb493d7cd7ec6',
+ '2.9': 'bf380e4d7c4f3b5b1c1a7b2bf3abb967bda5e9ab480d0df656e0e08c5019c5e6',
+ '2.9.1': 'ec391504e55498adceb30baceebd147a6e963f636eb617424bcfc47a169898ce',
+ '2.10.0': '955e17244e9b38adb0c98df66abb50467312e6bb70eac07e49ce6bd1a20e809a',
}
# This is the version of FreeType to use when building a local
# version. It must match the value in
# lib/matplotlib.__init__.py and also needs to be changed below in the
# embedded windows build script (grep for "REMINDER" in this file)
-LOCAL_FREETYPE_VERSION = '2.6.1'
+LOCAL_FREETYPE_VERSION = '2.10.0'
LOCAL_FREETYPE_HASH = _freetype_hashes.get(LOCAL_FREETYPE_VERSION, 'unknown')
--
2.21.1

View File

@@ -1,172 +0,0 @@
From 70e97e4ede29ccc16bad1d329d08b27d753a8f00 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Fri, 14 Feb 2020 06:05:42 -0500
Subject: [PATCH 2/3] Set FreeType version to 2.12.1 and update tolerances.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/__init__.py | 2 +-
lib/matplotlib/tests/test_axes.py | 4 ++--
lib/matplotlib/tests/test_constrainedlayout.py | 2 +-
lib/matplotlib/tests/test_mathtext.py | 7 +++++--
lib/matplotlib/tests/test_polar.py | 2 +-
lib/matplotlib/tests/test_tightlayout.py | 10 +++++-----
setupext.py | 15 +++++++++++++--
7 files changed, 28 insertions(+), 14 deletions(-)
diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py
index 23841c8377..f7f76cbae6 100644
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
@@ -1203,7 +1203,7 @@ default_test_modules = [
def _init_tests():
# The version of FreeType to install locally for running the
# tests. This must match the value in `setupext.py`
- LOCAL_FREETYPE_VERSION = '2.6.1'
+ LOCAL_FREETYPE_VERSION = '2.12.1'
from matplotlib import ft2font
if (ft2font.__freetype_version__ != LOCAL_FREETYPE_VERSION or
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index 3bd3fecac3..f0b247a7bb 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -6732,7 +6732,7 @@ def test_normal_axes():
]
for nn, b in enumerate(bbaxis):
targetbb = mtransforms.Bbox.from_bounds(*target[nn])
- assert_array_almost_equal(b.bounds, targetbb.bounds, decimal=2)
+ assert_array_almost_equal(b.bounds, targetbb.bounds, decimal=0)
target = [
[150.0, 119.999, 930.0, 11.111],
@@ -6750,7 +6750,7 @@ def test_normal_axes():
target = [85.5138, 75.88888, 1021.11, 1017.11]
targetbb = mtransforms.Bbox.from_bounds(*target)
- assert_array_almost_equal(bbtb.bounds, targetbb.bounds, decimal=2)
+ assert_array_almost_equal(bbtb.bounds, targetbb.bounds, decimal=0)
# test that get_position roundtrips to get_window_extent
axbb = ax.get_position().transformed(fig.transFigure).bounds
diff --git a/lib/matplotlib/tests/test_constrainedlayout.py b/lib/matplotlib/tests/test_constrainedlayout.py
index 8fd3cc5a35..b1e0fa57cd 100644
--- a/lib/matplotlib/tests/test_constrainedlayout.py
+++ b/lib/matplotlib/tests/test_constrainedlayout.py
@@ -431,7 +431,7 @@ def test_hidden_axes():
extents1 = np.copy(axs[0, 0].get_position().extents)
np.testing.assert_allclose(
- extents1, [0.045552, 0.543288, 0.47819, 0.982638], rtol=1e-5)
+ extents1, [0.045552, 0.543288, 0.47819, 0.982638], rtol=1e-2)
def test_colorbar_align():
diff --git a/lib/matplotlib/tests/test_mathtext.py b/lib/matplotlib/tests/test_mathtext.py
index 6921a17980..ba0e2a3a6c 100644
--- a/lib/matplotlib/tests/test_mathtext.py
+++ b/lib/matplotlib/tests/test_mathtext.py
@@ -1,5 +1,6 @@
import io
from pathlib import Path
+import platform
import re
import shlex
from xml.etree import ElementTree as ET
@@ -192,7 +193,8 @@ def baseline_images(request, fontset, index, text):
@pytest.mark.parametrize(
'fontset', ['cm', 'stix', 'stixsans', 'dejavusans', 'dejavuserif'])
@pytest.mark.parametrize('baseline_images', ['mathtext'], indirect=True)
-@image_comparison(baseline_images=None)
+@image_comparison(baseline_images=None,
+ tol=0.011 if platform.machine() in ('ppc64le', 's390x') else 0)
def test_mathtext_rendering(baseline_images, fontset, index, text):
mpl.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))
@@ -216,7 +218,8 @@ def test_mathtext_rendering_lightweight(baseline_images, fontset, index, text):
@pytest.mark.parametrize(
'fontset', ['cm', 'stix', 'stixsans', 'dejavusans', 'dejavuserif'])
@pytest.mark.parametrize('baseline_images', ['mathfont'], indirect=True)
-@image_comparison(baseline_images=None, extensions=['png'])
+@image_comparison(baseline_images=None, extensions=['png'],
+ tol=0.011 if platform.machine() in ('ppc64le', 's390x') else 0)
def test_mathfont_rendering(baseline_images, fontset, index, text):
mpl.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))
diff --git a/lib/matplotlib/tests/test_polar.py b/lib/matplotlib/tests/test_polar.py
index 85aece5fce..9fea856af4 100644
--- a/lib/matplotlib/tests/test_polar.py
+++ b/lib/matplotlib/tests/test_polar.py
@@ -314,7 +314,7 @@ def test_get_tightbbox_polar():
fig.canvas.draw()
bb = ax.get_tightbbox(fig.canvas.get_renderer())
assert_allclose(
- bb.extents, [107.7778, 29.2778, 539.7847, 450.7222], rtol=1e-03)
+ bb.extents, [107.7778, 29.2778, 539.7847, 450.7222], rtol=1)
@check_figures_equal(extensions=["png"])
diff --git a/lib/matplotlib/tests/test_tightlayout.py b/lib/matplotlib/tests/test_tightlayout.py
index e9b01b160d..beab853489 100644
--- a/lib/matplotlib/tests/test_tightlayout.py
+++ b/lib/matplotlib/tests/test_tightlayout.py
@@ -172,12 +172,12 @@ def test_outward_ticks():
plt.tight_layout()
# These values were obtained after visual checking that they correspond
# to a tight layouting that did take the ticks into account.
- ans = [[[0.091, 0.607], [0.433, 0.933]],
- [[0.579, 0.607], [0.922, 0.933]],
- [[0.091, 0.140], [0.433, 0.466]],
- [[0.579, 0.140], [0.922, 0.466]]]
+ ans = [[[0.09, 0.61], [0.43, 0.93]],
+ [[0.58, 0.61], [0.92, 0.93]],
+ [[0.09, 0.14], [0.43, 0.47]],
+ [[0.58, 0.14], [0.92, 0.47]]]
for nn, ax in enumerate(fig.axes):
- assert_array_equal(np.round(ax.get_position().get_points(), 3),
+ assert_array_equal(np.round(ax.get_position().get_points(), 2),
ans[nn])
diff --git a/setupext.py b/setupext.py
index ae8c21599f..abd01d8813 100644
--- a/setupext.py
+++ b/setupext.py
@@ -167,14 +167,24 @@ _freetype_hashes = {
'955e17244e9b38adb0c98df66abb50467312e6bb70eac07e49ce6bd1a20e809a',
'2.10.1':
'3a60d391fd579440561bf0e7f31af2222bc610ad6ce4d9d7bd2165bca8669110',
+ '2.10.2':
+ 'e09aa914e4f7a5d723ac381420949c55c0b90b15744adce5d1406046022186ab',
+ '2.10.4':
+ '5eab795ebb23ac77001cfb68b7d4d50b5d6c7469247b0b01b2c953269f658dac',
+ '2.11.0':
+ 'a45c6b403413abd5706f3582f04c8339d26397c4304b78fa552f2215df64101f',
'2.11.1':
- 'f8db94d307e9c54961b39a1cc799a67d46681480696ed72ecf78d4473770f09b'
+ 'f8db94d307e9c54961b39a1cc799a67d46681480696ed72ecf78d4473770f09b',
+ '2.12.0':
+ '7940a46eeb0255baaa87c553d72778c4f8daa2b8888c8e2a05766a2a8686740c',
+ '2.12.1':
+ 'efe71fd4b8246f1b0b1b9bfca13cfff1c9ad85930340c27df469733bbb620938',
}
# This is the version of FreeType to use when building a local version. It
# must match the value in lib/matplotlib.__init__.py and also needs to be
# changed below in the embedded windows build script (grep for "REMINDER" in
# this file). Also update the cache path in `.circleci/config.yml`.
-TESTING_VERSION_OF_FREETYPE = '2.6.1'
+TESTING_VERSION_OF_FREETYPE = '2.12.1'
if sys.platform.startswith('win') and platform.machine() == 'ARM64':
# older versions of freetype are not supported for win/arm64
# Matplotlib tests will not pass
@@ -593,6 +603,7 @@ class FreeType(SetupPackage):
ext.extra_objects.insert(
0, str(src_path / 'objs' / '.libs' / libfreetype))
ext.define_macros.append(('FREETYPE_BUILD_TYPE', 'local'))
+ ext.libraries.append('brotlidec')
def do_custom_build(self, env):
# We're using a system freetype
--
2.36.1

View File

@@ -1,127 +0,0 @@
From 5fcd96777ede1f29bc3f749d12152879a4d67fdf Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Tue, 24 Aug 2021 04:47:50 -0400
Subject: [PATCH 3/3] Increase a few test tolerances on some arches.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_axes.py | 6 ++++--
lib/matplotlib/tests/test_colorbar.py | 5 ++++-
lib/matplotlib/tests/test_contour.py | 3 ++-
lib/matplotlib/tests/test_image.py | 4 ++--
lib/matplotlib/tests/test_lines.py | 4 +++-
lib/matplotlib/tests/test_streamplot.py | 3 ++-
6 files changed, 17 insertions(+), 8 deletions(-)
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index f0b247a7bb..0a025bb6c7 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -918,7 +918,8 @@ def test_imshow():
ax.imshow("r", data=data)
-@image_comparison(['imshow_clip'], style='mpl20')
+@image_comparison(['imshow_clip'], style='mpl20',
+ tol=0 if platform.machine() == 'x86_64' else 1.24)
def test_imshow_clip():
# As originally reported by Gellule Xg <gellule.xg@free.fr>
# use former defaults to match existing baseline image
@@ -2127,7 +2128,8 @@ def test_contour_hatching():
extend='both', alpha=0.5)
-@image_comparison(['contour_colorbar'], style='mpl20')
+@image_comparison(['contour_colorbar'], style='mpl20',
+ tol=0 if platform.machine() == 'x86_64' else 0.02)
def test_contour_colorbar():
x, y, z = contour_dat()
diff --git a/lib/matplotlib/tests/test_colorbar.py b/lib/matplotlib/tests/test_colorbar.py
index f103fde7ee..920f392fc5 100644
--- a/lib/matplotlib/tests/test_colorbar.py
+++ b/lib/matplotlib/tests/test_colorbar.py
@@ -1,3 +1,5 @@
+import platform
+
import numpy as np
import pytest
@@ -230,7 +232,8 @@ def test_colorbar_single_ax_panchor_east(constrained):
assert ax.get_anchor() == 'E'
-@image_comparison(['contour_colorbar.png'], remove_text=True)
+@image_comparison(['contour_colorbar.png'], remove_text=True,
+ tol=0 if platform.machine() == 'x86_64' else 0.01)
def test_contour_colorbar():
fig, ax = plt.subplots(figsize=(4, 2))
data = np.arange(1200).reshape(30, 40) - 500
diff --git a/lib/matplotlib/tests/test_contour.py b/lib/matplotlib/tests/test_contour.py
index f4854db502..c4f0a2a31d 100644
--- a/lib/matplotlib/tests/test_contour.py
+++ b/lib/matplotlib/tests/test_contour.py
@@ -345,7 +345,8 @@ def test_contourf_log_extension():
@image_comparison(['contour_addlines.png'],
- remove_text=True, style='mpl20', tol=0.03)
+ remove_text=True, style='mpl20',
+ tol=0.03 if platform.machine() == 'x86_64' else 0.15)
# tolerance is because image changed minutely when tick finding on
# colorbars was cleaned up...
def test_contour_addlines():
diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py
index ae02a50727..15f843fd42 100644
--- a/lib/matplotlib/tests/test_image.py
+++ b/lib/matplotlib/tests/test_image.py
@@ -1329,8 +1329,8 @@ def test_nonuniform_and_pcolor():
ax.set(xlim=(0, 10))
-@image_comparison(["rgba_antialias.png"], style="mpl20",
- remove_text=True)
+@image_comparison(["rgba_antialias.png"], style="mpl20", remove_text=True,
+ tol=0 if platform.machine() == 'x86_64' else 0.007)
def test_rgba_antialias():
fig, axs = plt.subplots(2, 2, figsize=(3.5, 3.5), sharex=False,
sharey=False, constrained_layout=True)
diff --git a/lib/matplotlib/tests/test_lines.py b/lib/matplotlib/tests/test_lines.py
index f6917a134b..a7b5772e8c 100644
--- a/lib/matplotlib/tests/test_lines.py
+++ b/lib/matplotlib/tests/test_lines.py
@@ -3,6 +3,7 @@ Tests specific to the lines module.
"""
import itertools
+import platform
import timeit
from types import SimpleNamespace
@@ -162,7 +163,8 @@ def test_set_drawstyle():
assert len(line.get_path().vertices) == len(x)
-@image_comparison(['line_collection_dashes'], remove_text=True, style='mpl20')
+@image_comparison(['line_collection_dashes'], remove_text=True, style='mpl20',
+ tol=0 if platform.machine() == 'x86_64' else 0.62)
def test_set_line_coll_dash_image():
fig, ax = plt.subplots()
np.random.seed(0)
diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index c8824feb06..879d43f28b 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -34,7 +34,8 @@ def test_startpoints():
plt.plot(start_x, start_y, 'ok')
-@image_comparison(['streamplot_colormap'], remove_text=True, style='mpl20')
+@image_comparison(['streamplot_colormap'], remove_text=True, style='mpl20',
+ tol=0.01)
def test_colormap():
X, Y, U, V = velocity_field()
plt.streamplot(X, Y, U, V, color=U, density=0.6, linewidth=2,
--
2.36.1

View File

@@ -0,0 +1,40 @@
From 83ec21942e1b7d80000d801595c57a653eefa243 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 3/4] 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 a712680cd..6007c9b9a 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 95b1ae5a3..e054196b4 100644
--- a/lib/mpl_toolkits/tests/test_axes_grid1.py
+++ b/lib/mpl_toolkits/tests/test_axes_grid1.py
@@ -362,7 +362,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.21.1

View File

@@ -0,0 +1,658 @@
From d9fada8cc0ef89142222f4c163ec9dd155662cb6 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 4/4] 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 04d5bcda8..70de0263b 100644
--- a/lib/matplotlib/testing/decorators.py
+++ b/lib/matplotlib/testing/decorators.py
@@ -341,7 +341,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 9bf15d0b9..5339dd2eb 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 84a1956ee..50eb0e6a4 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -562,7 +562,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]
@@ -1079,7 +1079,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])
@@ -1164,7 +1164,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)
@@ -1190,7 +1191,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)
@@ -1247,7 +1249,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
@@ -2644,7 +2646,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)
@@ -2662,7 +2664,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))
@@ -2673,7 +2675,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))
@@ -2684,7 +2686,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))
@@ -2695,7 +2697,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))
@@ -2706,7 +2708,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))
@@ -2717,7 +2719,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))
@@ -2728,7 +2730,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))
@@ -2739,7 +2741,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))
@@ -2750,7 +2752,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))
@@ -2761,7 +2763,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))
@@ -2772,7 +2774,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))
@@ -2783,7 +2785,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))
@@ -2794,7 +2796,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))
@@ -3518,8 +3520,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))
@@ -4199,7 +4200,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
@@ -5117,7 +5118,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 = {
@@ -5679,7 +5680,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 773093100..37356d5e0 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 c65ad02c3..79deb249c 100644
--- a/lib/matplotlib/tests/test_colorbar.py
+++ b/lib/matplotlib/tests/test_colorbar.py
@@ -97,7 +97,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.
@@ -107,7 +107,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.
@@ -121,7 +121,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]
@@ -175,7 +175,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)
@@ -233,7 +233,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 e9ae292f6..0edfa1e27 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 d78dcb1ff..ad39426e2 100644
--- a/lib/matplotlib/tests/test_contour.py
+++ b/lib/matplotlib/tests/test_contour.py
@@ -226,7 +226,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)
@@ -252,7 +253,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
@@ -283,7 +285,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 1254f3c7c..de11f6103 100644
--- a/lib/matplotlib/tests/test_cycles.py
+++ b/lib/matplotlib/tests/test_cycles.py
@@ -9,7 +9,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()
@@ -27,7 +26,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()
@@ -61,7 +59,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 6ecb3edbe..47aff1b74 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 22cd78d46..b4d41f882 100644
--- a/lib/matplotlib/tests/test_image.py
+++ b/lib/matplotlib/tests/test_image.py
@@ -810,7 +810,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 b4bcecde8..45228e16c 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 bbb442638..b5d291c87 100644
--- a/lib/matplotlib/tests/test_mathtext.py
+++ b/lib/matplotlib/tests/test_mathtext.py
@@ -173,7 +173,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, recwarn):
matplotlib.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))
@@ -187,7 +187,7 @@ def test_mathtext_rendering(baseline_images, fontset, index, test, recwarn):
['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, recwarn):
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 31c240a60..979ab3ad0 100644
--- a/lib/matplotlib/tests/test_patches.py
+++ b/lib/matplotlib/tests/test_patches.py
@@ -259,9 +259,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 d8ee5ffa7..f43a7fd34 100644
--- a/lib/matplotlib/tests/test_pickle.py
+++ b/lib/matplotlib/tests/test_pickle.py
@@ -41,7 +41,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 eab049d91..c3708890b 100644
--- a/lib/matplotlib/tests/test_quiver.py
+++ b/lib/matplotlib/tests/test_quiver.py
@@ -155,7 +155,7 @@ def test_quiver_key_xy():
@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 6007c9b9a..736105a56 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 f36f480af..2b773b042 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 7d0f38a70..a40d81a4f 100644
--- a/lib/matplotlib/tests/test_units.py
+++ b/lib/matplotlib/tests/test_units.py
@@ -73,7 +73,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 7105a6480..a5fecba1b 100644
--- a/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
+++ b/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
@@ -19,7 +19,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))
@@ -74,7 +74,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))
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 4bfb6f8ff..a6eee9ff6 100644
--- a/lib/mpl_toolkits/tests/test_mplot3d.py
+++ b/lib/mpl_toolkits/tests/test_mplot3d.py
@@ -269,7 +269,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
@@ -778,7 +778,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.21.1

View File

@@ -0,0 +1,266 @@
From 390e418a5da886ce1b4358f454342c6af311b00a 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 4/4] 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 | 4 ++--
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_streamplot.py | 2 +-
lib/matplotlib/tests/test_units.py | 4 ++--
.../tests/test_axisartist_grid_helper_curvelinear.py | 4 ++--
13 files changed, 21 insertions(+), 21 deletions(-)
diff --git a/lib/matplotlib/tests/test_arrow_patches.py b/lib/matplotlib/tests/test_arrow_patches.py
index de596a9e0..9f12effa6 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 84a1956ee..eeafd816f 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -395,7 +395,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
@@ -3519,7 +3519,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))
diff --git a/lib/matplotlib/tests/test_backends_interactive.py b/lib/matplotlib/tests/test_backends_interactive.py
index ad23abe3f..7b9660f2b 100644
--- a/lib/matplotlib/tests/test_backends_interactive.py
+++ b/lib/matplotlib/tests/test_backends_interactive.py
@@ -104,7 +104,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 773093100..9cce4ed9f 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 e9ae292f6..8e1fcb36f 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 1254f3c7c..cea1522de 100644
--- a/lib/matplotlib/tests/test_cycles.py
+++ b/lib/matplotlib/tests/test_cycles.py
@@ -9,7 +9,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()
@@ -27,7 +27,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()
@@ -61,7 +61,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 6ecb3edbe..207659648 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 22cd78d46..76149bce4 100644
--- a/lib/matplotlib/tests/test_image.py
+++ b/lib/matplotlib/tests/test_image.py
@@ -810,7 +810,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 b4bcecde8..227b654cc 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 d8ee5ffa7..607c13346 100644
--- a/lib/matplotlib/tests/test_pickle.py
+++ b/lib/matplotlib/tests/test_pickle.py
@@ -41,7 +41,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_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index 6007c9b9a..96d43a3e3 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 7d0f38a70..ef21a166c 100644
--- a/lib/matplotlib/tests/test_units.py
+++ b/lib/matplotlib/tests/test_units.py
@@ -73,7 +73,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
@@ -98,7 +98,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.21.1

View File

@@ -1,38 +0,0 @@
From dc5b6e87b6f4e1817720ea5aea1110231aab5667 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Wed, 4 May 2022 20:41:01 -0400
Subject: [PATCH] Skip additional backend tests on import error
All the Qt tests in this file already do this, and the remaining one
fails if running headless.
---
lib/matplotlib/tests/test_backend_gtk3.py | 2 +-
lib/matplotlib/tests/test_backend_qt.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/matplotlib/tests/test_backend_gtk3.py b/lib/matplotlib/tests/test_backend_gtk3.py
index 5442930d117f..937ddef5a13f 100644
--- a/lib/matplotlib/tests/test_backend_gtk3.py
+++ b/lib/matplotlib/tests/test_backend_gtk3.py
@@ -6,7 +6,7 @@
pytest.importorskip("matplotlib.backends.backend_gtk3agg")
-@pytest.mark.backend("gtk3agg")
+@pytest.mark.backend("gtk3agg", skip_on_importerror=True)
def test_correct_key():
pytest.xfail("test_widget_send_event is not triggering key_press_event")
diff --git a/lib/matplotlib/tests/test_backend_qt.py b/lib/matplotlib/tests/test_backend_qt.py
index eee4e56536ec..61abf58ac84e 100644
--- a/lib/matplotlib/tests/test_backend_qt.py
+++ b/lib/matplotlib/tests/test_backend_qt.py
@@ -193,7 +193,7 @@ def test_other_signal_before_sigint(target, kwargs):
plt.figure()
-@pytest.mark.backend('Qt5Agg')
+@pytest.mark.backend('Qt5Agg', skip_on_importerror=True)
def test_fig_sigint_override(qt_core):
from matplotlib.backends.backend_qt5 import _BackendQT5
# Create a figure

674
changelog
View File

@@ -1,674 +0,0 @@
* Mon Aug 09 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.4.2-5
- Update test images for FreeType 2.11.0
- Backport patch for NumPy 1.21
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.4.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 3.4.2-3
- Rebuilt for Python 3.10
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 3.4.2-2
- Bootstrap for Python 3.10
* Fri Jun 04 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.4.2-2
- Workaround failures with texlive 2021
* Sat May 08 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.4.2-1
- Update to latest version (#1958461)
* Wed Mar 31 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.4.1-1
- Update to latest version (#1943482)
* Thu Mar 11 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.4.0~rc3-1
- Update to latest release candidate
* Fri Feb 19 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.4.0~rc1-1
- Update to latest release candidate
- Deprecated python3-matplotlib-qt4 subpackage
* Tue Feb 16 2021 Troy Dawson <tdawson@redhat.com> - 3.3.4-3
- Add build deps that were only getting pulled in by other dependencies
* Mon Feb 01 2021 Tomas Popela <tpopela@redhat.com> - 3.3.4-2
- Conditionalize the WX backend and disable it on RHEL 8+ as WX is not
available there.
* Thu Jan 28 2021 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.3.4-1
- Update to latest version (#1921574)
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Dec 02 2020 Tomas Popela <tpopela@redhat.com> - 3.3.3-2
- Don't build the Qt 4 backend in ELN/RHEL 9 as Qt 4 won't be available there
(reuse
https://src.fedoraproject.org/rpms/python-matplotlib/c/588e490738b06d525910f05bc1ba3f3f05ec7d50?branch=epel8)
* Thu Nov 12 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.3.3-1
- Update to latest version (#1897021)
* Tue Sep 15 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.3.2-1
- Update to latest version (#1878999)
* Thu Aug 13 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.3.1-1
- Update to latest version
- Fixes RHBZ#1868838
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.3.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Sat Jul 18 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.3.0-1
- Update to latest version
- Fixes RHBZ#1858120
* Tue Jun 30 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.3.0-0.2.rc1
- Add more test dependencies
* Mon Jun 29 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.3.0-0.1.rc1
- Update to latest version
* Sat Jun 20 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.2.2-1
- Update to latest version
* Mon Jun 01 2020 Miro Hrončok <mhroncok@redhat.com> - 3.2.1-2
- Only recommend texlive-dvipng (but require it if texlive is installed) (#1509657)
* Mon May 25 2020 Miro Hrončok <mhroncok@redhat.com> - 3.2.1-1.1
- Rebuilt for Python 3.9
* Wed Mar 18 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.2.1-1
- Update to latest version
* Tue Mar 03 2020 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.2.0-1
- Update to latest version
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.1.2-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Nov 22 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.1.2-1
- Update to latest version
* Fri Sep 06 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.1.1-2
- Backport bool deprecation fix for Python 3.8
* Sun Aug 18 2019 Miro Hrončok <mhroncok@redhat.com> - 3.1.1-1.1
- Rebuilt for Python 3.8
* Thu Aug 08 2019 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 3.1.1-1
- Update to latest version
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.3-2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* 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
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.0-3.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sun Mar 12 2017 Peter Robinson <pbrobinson@fedoraproject.org> 2.0.0-3
- Fix NVR
* Mon Mar 06 2017 Thomas Spura <tomspur@fedoraproject.org> - 2.0.0-2.2
- Remove copyrighted file from tarball (gh-8034)
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0.0-2.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Wed Jan 25 2017 Dan Horák <dan[at]danny.cz> - 2.0.0-2
- Apply the 'aarch64' test tolerance patch on s390(x) also
* Fri Jan 20 2017 Orion Poplawski <orion@cora.nwra.com> - 2.0.0-1
- Update to 2.0.0 final
* Tue Jan 10 2017 Adam Williamson <awilliam@redhat.com> - 2.0.0-0.7.rc2
- Update to 2.0.0rc2
- Fix more big-endian integer issues
- Apply the 'aarch64' test tolerance patch on ppc64 also (it's affected by same issues)
- Tweak the 'i686' test tolerance patch a bit (some errors are gone, some new ones)
- Re-enable test suite for all arches
- Note a remaining quasi-random test issue that causes build to fail sometimes
* Mon Jan 09 2017 Adam Williamson <awilliam@redhat.com> - 2.0.0-0.6.b4
- Fix another integer type issue which caused more issues on ppc64
* Sun Jan 08 2017 Adam Williamson <awilliam@redhat.com> - 2.0.0-0.5.b4
- Fix int type conversion error that broke text rendering on ppc64 (#1411070)
* Tue Dec 13 2016 Charalampos Stratakis <cstratak@redhat.com> - 2.0.0-0.4.b4
- Rebuild for Python 3.6
* Mon Oct 24 2016 Dan Horák <dan[at]danny.cz> - 2.0.0-0.3.b4
- disable tests on some alt-arches to unblock depending builds
* Mon Sep 26 2016 Dominik Mierzejewski <rpm@greysector.net> - 2.0.0-0.2.b4
- add missing runtime dependencies for python2 package
* Sat Sep 10 2016 Dominik Mierzejewski <rpm@greysector.net> - 2.0.0-0.1.b4
- Update to 2.0.0b4
- Drop upstreamed or obsolete patches
- python-cycler >= 0.10.0 is required
- move around Requires and BRs and sort more or less alphabetically
- don't ship baseline images for tests (like Debian)
- Require stix fonts only when they're not bundled
- disable HTML doc building for bootstrapping 2.0.x series
- relax image rendering tests tolerance due to freetype version differences
- disable some failing tests on aarch64 for now
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.5.2-0.2.rc2
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Fri Jun 03 2016 Dominik Mierzejewski <rpm@greysector.net> - 1.5.1-7
- Update to 1.5.2rc2.
- Drop wrong hunk from use-system-six patch.
- Patch new qhull paths on F25+ instead of using sed.
- Rebase failing tests patch.
* Mon May 23 2016 Dominik Mierzejewski <rpm@greysector.net> - 1.5.1-6
- Upstream no longer ships non-free images, use pristine source.
* Wed May 18 2016 Dominik Mierzejewski <rpm@greysector.net> - 1.5.1-5
- Unbundle python-six (#1336740).
- Run tests (and temporarily disable failing ones).
- Use upstream-recommended way of running tests in parallel.
- python2-cycler and -mock are required for running tests.
* Sat Apr 30 2016 Ralf Corsépius <corsepiu@fedoraproject.org> - 1.5.1-4
- Rebuild for qhull-2015.2-1.
- Reflect qhull_a.h's location having changed.
* Wed Apr 6 2016 Orion Poplawski <orion@cora.nwra.com> - 1.5.1-3
- Add requires python-cycler
* Tue Apr 05 2016 Jon Ciesla <limburgher@gmail.com> - 1.5.1-2
- Drop agg-devel BR, fix sphinx build with python*cycler BR
* Mon Apr 04 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.5.1-1
- update to 1.5.1 (#1276806)
- Add missing requires of dvipng to python3-matplotlib (#1270202)
- use bundled agg (#1276806)
- Drop cxx patch (was dropped upstream)
- Regenerate search path patch2
* Mon Apr 04 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-13
- Require the qt5 subpackage from the qt4 subpackage (#1219556)
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.4.3-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Tue Jan 12 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-11
- Fix another requires of the main package
* Thu Jan 07 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-10
- Fix requiring the correct backend from the main package
* Thu Jan 07 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-9
- regenerate tarball to exclude lena image (#1295174)
* Sun Nov 15 2015 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-8
- Pick upstream patch for fixing the gdk backend #1231748
- Add python2 subpackages and use python_provide
* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4.3-7
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4.3-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sat May 02 2015 Kalev Lember <kalevlember@gmail.com> - 1.4.3-5
- Rebuilt for GCC 5 C++11 ABI change
* Wed Feb 25 2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.4.3-4
- Split out python-matplotlib-gtk, python-matplotlib-gtk3,
python3-matplotlib-gtk3 subpackages (#1067373)
- Add missing requirements on gtk
* Tue Feb 24 2015 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 1.4.3-3
- Use %%license, add skimage to build requirements
* Tue Feb 17 2015 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 1.4.3-2
- Disable Qt5 backend on Fedora <21 and RHEL
* Tue Feb 17 2015 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 1.4.3-1
- New upstream release (#1134007)
- Add Qt5 backend
* Tue Jan 13 2015 Elliott Sales de Andrade <quantum.analyst@gmail.com> - 1.4.2-1
- Bump to new upstream release
- Add qhull-devel to BR
- Add six to Requires
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Wed May 21 2014 Jaroslav Škarvada <jskarvad@redhat.com> - 1.3.1-5
- Rebuilt for https://fedoraproject.org/wiki/Changes/f21tcl86
* Wed May 14 2014 Bohuslav Kabrda <bkabrda@redhat.com> - 1.3.1-4
- Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4
* Tue Feb 11 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.3.1-3
- Make TkAgg the default backend
- Remove python2 dependency from -data subpackage
* Mon Jan 27 2014 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.3.1-2
- Correct environment for and enable %%check
- Install system wide matplotlibrc under /etc
- Do not duplicate mpl-data for python2 and python3 packages
- Conditionally bundle data fonts (https://fedorahosted.org/fpc/ticket/381)
* Sat Jan 25 2014 Thomas Spura <tomspur@fedoraproject.org> - 1.3.1-1
- update to 1.3.1
- use GTKAgg as backend (#1030396, #982793, #1049624)
- use fontconfig
- add %%check for local testing (testing requires a display)
* Wed Aug 7 2013 Thomas Spura <tomspur@fedoraproject.org> - 1.3.0-1
- update to new version
- use xz to compress sources
- drop fontconfig patch (upstream)
- drop tk patch (upstream solved build issue differently)
- redo use system agg patch
- delete bundled python-pycxx headers
- fix requires of python3-matplotlib-qt (fixes #988412)
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.0-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Mon Jun 10 2013 Jon Ciesla <limburgher@gmail.com> - 1.2.0-14
- agg rebuild.
* Wed Apr 10 2013 Thomas Spura <tomspur@fedoraproject.org> - 1.2.0-13
- use python3 version in python3-matplotlib-qt4 (#915727)
- include __pycache__ files in correct subpackages on python3
* Wed Apr 3 2013 Thomas Spura <tomspur@fedoraproject.org> - 1.2.0-12
- Decode output of subprocess to utf-8 or regex will fail (#928326)
* Tue Apr 2 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.2.0-11
- Make stix-fonts a requires of matplotlib (#928326)
* Thu Mar 28 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.2.0-10
- Use stix fonts avoid problems with missing cm fonts (#908717)
- Correct type mismatch in python3 font_manager (#912843, #928326)
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Wed Jan 16 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.2.0-8
- Update fontconfig patch to apply issue found by upstream
- Update fontconfig patch to apply issue with missing afm fonts (#896182)
* Wed Jan 16 2013 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.2.0-7
- Use fontconfig by default (#885307)
* Thu Jan 3 2013 David Malcolm <dmalcolm@redhat.com> - 1.2.0-6
- remove wx support for rhel >= 7
* Tue Dec 04 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.2.0-5
- Reinstantiate wx backend for python2.x.
- Run setup.py under xvfb-run to detect and default to gtk backend (#883502)
- Split qt4 backend subpackage and add proper requires for it.
- Correct wrong regex in tcl libdir patch.
* Tue Nov 27 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.2.0-4
- Obsolete python-matplotlib-wx for clean updates.
* Tue Nov 27 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.2.0-3
- Enable python 3 in fc18 as build requires are now available (#879731)
* Thu Nov 22 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.2.0-2
- Build python3 only on f19 or newer (#837156)
- Build requires python3-six if building python3 support (#837156)
* Thu Nov 22 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.2.0-1
- Update to version 1.2.0
- Revert to regenerate tarball with generate-tarball.sh (#837156)
- Assume update to 1.2.0 is for recent releases
- Remove %%defattr
- Remove %%clean
- Use simpler approach to build html documentation
- Do not use custom/outdated setup.cfg
- Put one BuildRequires per line
- Enable python3 support
- Cleanup spec as wx backend is no longer supported
- Use default agg backend
- Fix bogus dates in changelog by assuming only week day was wrong
* Fri Aug 17 2012 Jerry James <loganjerry@gmail.com> - 1.1.1-1
- Update to version 1.1.1.
- Remove obsolete spec file elements
- Fix sourceforge URLs
- Allow sample data to have a different version number than the sources
- Don't bother removing problematic file since we remove entire agg24 directory
- Fix building with pygtk in the absence of an X server
- Don't install license text for bundled software that we don't bundle
* Sat Jul 21 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Tue Jul 3 2012 pcpa <paulo.cesar.pereira.de.andrade@gmail.com> - 1.1.0-1
- Update to version 1.1.0.
- Do not regenerate upstream tarball but remove problematic file in %%prep.
- Remove non longer applicable/required patch0.
- Rediff/rename -noagg patch.
- Remove propagate-timezone-info-in-plot_date-xaxis_da patch already applied.
- Remove tkinter patch now with critical code in a try block.
- Remove png 1.5 patch as upstream is now png 1.5 aware.
- Update file list.
* Wed Apr 18 2012 David Malcolm <dmalcolm@redhat.com> - 1.0.1-20
- remove wx support for rhel >= 7
* Tue Feb 28 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-19
- Rebuilt for c++ ABI breakage
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.1-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Tue Dec 6 2011 David Malcolm <dmalcolm@redhat.com> - 1.0.1-17
- fix the build against libpng 1.5
* Tue Dec 6 2011 David Malcolm <dmalcolm@redhat.com> - 1.0.1-16
- fix egg-info conditional for RHEL
* Tue Dec 06 2011 Adam Jackson <ajax@redhat.com> - 1.0.1-15
- Rebuild for new libpng
* Mon Oct 31 2011 Dan Horák <dan[at]danny.cz> - 1.0.1-14
- 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
- apply upstream bugfix for timezone formatting (Bug 735677)
* Fri May 20 2011 Orion Poplawski <orion@cora.nwra.com> - 1.0.1-12
- Add Requires dvipng (Bug 684836)
- Build against system agg (Bug 612807)
- Use system pyparsing (Bug 702160)
* Sat Feb 26 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-11
- Set PYTHONPATH during html doc building using find to prevent broken builds
* Sat Feb 26 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-10
- Spec file cleanups for readability
* Sat Feb 26 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-9
- Bump and rebuild
* Sat Feb 26 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-8
- Fix spec file typos so package builds
* Fri Feb 25 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-7
- Remove a debugging echo statement from the spec file
- Fix some line endings and permissions in -doc sub-package
* Fri Feb 25 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-6
- Spec file cleanups to silence some rpmlint warnings
* Mon Feb 21 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-5
- Add default attr to doc sub-package file list
- No longer designate -doc subpackage as noarch
- Add arch specific Requires for tk, wx and doc sub-packages
* Mon Feb 21 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-4
- Enable wxPython backend
- Make -doc sub-package noarch
* Mon Feb 21 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-3
- Add conditional for optionally building doc sub-package
- Add flag to build low res images for documentation
- Add matplotlib-1.0.1-plot_directive.patch to fix build of low res images
- Remove unused patches
* Sat Feb 19 2011 Jonathan G. Underwood <jonathan.underwood@gmail.com> - 1.0.1-2
- Build and package HTML documentation in -doc sub-package
- Move examples to -doc sub-package
- Make examples non-executable
* Fri Feb 18 2011 Thomas Spura <tomspur@fedoraproject.org> - 1.0.1-1
- update to new bugfix version (#678489)
- set file attributes in tk subpackage
- filter private *.so
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Thu Jul 22 2010 David Malcolm <dmalcolm@redhat.com> - 1.0.0-2
- 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
- New upstream release
- Remove undistributable file from bundled agg library
* Thu Jul 1 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.3-1
- New upstream release
* Thu May 27 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.1.2-4
- Upstream patch to fix deprecated gtk tooltip warning.
* Mon Apr 12 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.1.2-2
- Bump to rebuild against numpy 1.3
* Thu Apr 1 2010 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.99.1.2-1
- Bump to rebuild against numpy 1.4.0
* Fri Dec 11 2009 Jon Ciesla <limb@jcomserv.net> - 0.99.1.2
- Update to 0.99.1.2
* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.98.5.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Fri Mar 06 2009 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.98.5-4
- Fixed font dep after font guideline change
* Thu Feb 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.98.5.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Tue Dec 23 2008 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.98.5-2
- Add dep on DejaVu Sans font for default font support
* Mon Dec 22 2008 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.98.5-1
- Latest upstream release
- Strip out included fonts
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 0.98.3-2
- Rebuild for Python 2.6
* Wed Aug 6 2008 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.98.3-1
- Latest upstream release
* Tue Jul 1 2008 Jef Spaleta <jspaleta AT fedoraproject DOT org> - 0.98.1-1
- Latest upstream release
* Fri Mar 21 2008 Jef Spaleta <jspaleta[AT]fedoraproject org> - 0.91.2-2
- gcc43 cleanups
* Fri Mar 21 2008 Jef Spaleta <jspaleta[AT]fedoraproject org> - 0.91.2-1
- New upstream version
- Adding Fedora specific setup.cfg from included template
- removed numarry and numerics build requirements
* Tue Feb 19 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 0.90.1-6
- Autorebuild for GCC 4.3
* Fri Jan 4 2008 Alex Lancaster <alexlan[AT]fedoraproject org> - 0.90.1-5
- Fixed typo in spec.
* Fri Jan 4 2008 Alex Lancaster <alexlan[AT]fedoraproject org> - 0.90.1-4
- Support for Python Eggs for F9+
* Thu Jan 3 2008 Alex Lancaster <alexlan[AT]fedoraproject org> - 0.90.1-3
- Rebuild for new Tcl 8.5
* Thu Aug 23 2007 Orion Poplawski <orion@cora.nwra.com> 0.90.1-2
- Update license tag to Python
- Rebuild for BuildID
* Mon Jun 04 2007 Orion Poplawski <orion@cora.nwra.com> 0.90.1-1
- Update to 0.90.1
* Wed Feb 14 2007 Orion Poplawski <orion@cora.nwra.com> 0.90.0-2
- Rebuild for Tcl/Tk downgrade
* Sat Feb 10 2007 Jef Spaleta <jspaleta@gmail.com> 0.90.0-2
- Release bump for rebuild against new tk
* Fri Feb 09 2007 Orion Poplawski <orion@cora.nwra.com> 0.90.0-1
- Update to 0.90.0
* Fri Jan 5 2007 Orion Poplawski <orion@cora.nwra.com> 0.87.7-4
- Add examples to %%docs
* Mon Dec 11 2006 Jef Spaleta <jspaleta@gmail.com> 0.87.7-3
- Release bump for rebuild against python 2.5 in devel tree
* Tue Dec 5 2006 Orion Poplawski <orion@cora.nwra.com> 0.87.7-2
- Force build of gtk/gtkagg backends in mock (bug #218153)
- Change Requires from python-numeric to numpy (bug #218154)
* Tue Nov 21 2006 Orion Poplawski <orion@cora.nwra.com> 0.87.7-1
- Update to 0.87.7 and fix up the defaults to use numpy
- Force build of tkagg backend without X server
- Use src.rpm from Jef Spaleta, closes bug 216578
* Fri Oct 6 2006 Orion Poplawski <orion@cora.nwra.com> 0.87.6-1
- Update to 0.87.6
* Thu Sep 7 2006 Orion Poplawski <orion@cora.nwra.com> 0.87.5-1
- Update to 0.87.5
* Thu Jul 27 2006 Orion Poplawski <orion@cora.nwra.com> 0.87.4-1
- Update to 0.87.4
* Wed Jun 7 2006 Orion Poplawski <orion@cora.nwra.com> 0.87.3-1
- Update to 0.87.3
* Mon May 15 2006 Orion Poplawski <orion@cora.nwra.com> 0.87.2-2
- Rebuild for new numpy
* Tue Mar 7 2006 Orion Poplawski <orion@cora.nwra.com> 0.87.2-1
- Update to 0.87.2
* Tue Mar 7 2006 Orion Poplawski <orion@cora.nwra.com> 0.87.1-1
- Update to 0.87.1
- Add pycairo >= 1.0.2 requires (FC5+ only)
* Fri Feb 24 2006 Orion Poplawski <orion@cora.nwra.com> 0.87-1
- Update to 0.87
- Add BR numpy and python-numarray
- Add patch to keep Numeric as the default numerix package
- Add BR tkinter and tk-devel for TkInter backend
- Make separate package for Tk backend
* Tue Jan 10 2006 Orion Poplawski <orion@cora.nwra.com> 0.86-1
- Update to 0.86
* Thu Dec 22 2005 Orion Poplawski <orion@cora.nwra.com> 0.85-2
- Rebuild
* Sun Nov 20 2005 Orion Poplawski <orion@cora.nwra.com> 0.85-1
- New upstream version 0.85
* Mon Sep 19 2005 Orion Poplawski <orion@cora.nwra.com> 0.84-1
- New upstream version 0.84
* Tue Aug 02 2005 Orion Poplawski <orion@cora.nwra.com> 0.83.2-3
- bump release
* Tue Aug 02 2005 Orion Poplawski <orion@cora.nwra.com> 0.83.2-2
- Add Requires: python-numeric, pytz, python-dateutil
* Fri Jul 29 2005 Orion Poplawski <orion@cora.nwra.com> 0.83.2-1
- New upstream version matplotlib 0.83.2
* Thu Jul 28 2005 Orion Poplawski <orion@cora.nwra.com> 0.83.1-2
- Bump rel to fix botched tag
* Thu Jul 28 2005 Orion Poplawski <orion@cora.nwra.com> 0.83.1-1
- New upstream version matplotlib 0.83.1
* Tue Jul 05 2005 Orion Poplawski <orion@cora.nwra.com> 0.82-4
- BuildRequires: pytz, python-dateutil - use upstream
- Don't use INSTALLED_FILES, list dirs
- Fix execute permissions
* Fri Jul 01 2005 Orion Poplawski <orion@cora.nwra.com> 0.82-3
- Use %%{python_sitearch}
* Thu Jun 30 2005 Orion Poplawski <orion@cora.nwra.com> 0.82-2
- Rename to python-matplotlib
- Remove unneeded Requires: python
- Add private directories to %%files
* Tue Jun 28 2005 Orion Poplawski <orion@cora.nwra.com> 0.82-1
- Initial package for Fedora Extras

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,3 @@
[libs]
system_freetype = True
system_qhull = True
[packages] [packages]
tests = True tests = True
toolkits = True toolkits = True

View File

@@ -1,2 +1,2 @@
SHA512 (matplotlib-3.5.3.tar.gz) = 8d8bc28ef62a2373a0740ba5322f04ddbcc6485caf06883b54904f1ff7c979b9c4425516274d2b9e0cb63607d11bc3149044bee7ccac37de6ccd80480791cd4d SHA512 (matplotlib-3.1.3.tar.gz) = d233a18449eac4c42ecc485d0df0c15e1e306f3945e5476b11b715d6bc190ca6f1c22e7d4b16d6c93c8a569e1c43b68b583339f0921f237a9920c7369854a09e
SHA512 (matplotlib-3.5.3-with-freetype-2.12.1.tar.gz) = 52793236ed8bafb8f9bd18608a69e1893e95cde2a2af416d7688ce6919df2af199752f7bf05ac41525e231a316fd3fd0192f2c5d0e399708161dec0939e1101e SHA512 (matplotlib-3.1.1-with-freetype-2.10.0.tar.gz) = 257546b047ff79302b616f1d37caa028a7b9abc1682cf10861e1347a3db9f437967abe24e11aee898ae11c6f163939d48bc5aeaec2894d6472b4326f8edaed8b