The package rpms/python-matplotlib.git has added or updated architecture specific content
in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/python-matplotlib.git/commit/?id=....
Change:
+%ifarch i686 armv7hl
Thanks.
Full change:
============
commit aff08b6e55484bede24ca2848ace51dba4ed76dc
Author: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
Date: Sat Mar 31 03:22:51 2018 -0400
Update to latest version.
diff --git a/.gitignore b/.gitignore
index f5347ce..fcd190a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,3 +20,5 @@ matplotlib-1.0.0-without-gpc.tar.gz
/matplotlib-2.1.1.tar.gz
/matplotlib-2.1.2.tar.gz
/matplotlib-2.1.2-with-freetype-2.8.tar.gz
+/matplotlib-2.2.2.tar.gz
+/matplotlib-2.2.2-with-freetype-2.8.tar.gz
diff --git a/0001-Add-libdl-on-Unix-like-systems.patch
b/0001-Add-libdl-on-Unix-like-systems.patch
deleted file mode 100644
index 5cbbeca..0000000
--- a/0001-Add-libdl-on-Unix-like-systems.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 77bae7e7ea5c02f5be0d59dabeae6c3c09571fbe Mon Sep 17 00:00:00 2001
-From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
-Date: Wed, 24 Jan 2018 02:51:55 -0500
-Subject: [PATCH] Add libdl on Unix-like systems.
-
-Not linking with libdl causes errors when -z defs is in the linker
-flags.
-
-Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
----
- setupext.py | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/setupext.py b/setupext.py
-index d0f3f2070..6d2c3e296 100644
---- a/setupext.py
-+++ b/setupext.py
-@@ -1493,6 +1493,8 @@ class BackendTkAgg(OptionalBackendPackage):
- if sys.platform == 'win32':
- # PSAPI library needed for finding Tcl / Tk at run time
- ext.libraries.extend(['psapi'])
-+ elif sys.platform != 'darwin':
-+ ext.libraries.extend(['dl'])
-
-
- class BackendGtk(OptionalBackendPackage):
---
-2.14.3
-
diff --git a/0001-Fix-rctemplate-tests-when-user-config-file-exists.patch
b/0001-Fix-rctemplate-tests-when-user-config-file-exists.patch
new file mode 100644
index 0000000..6916791
--- /dev/null
+++ b/0001-Fix-rctemplate-tests-when-user-config-file-exists.patch
@@ -0,0 +1,81 @@
+From 1c934f024f4c9a8bf545e99e04e5764cd58e0daa Mon Sep 17 00:00:00 2001
+From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
+Date: Sat, 31 Mar 2018 01:33:10 -0400
+Subject: [PATCH] Fix rctemplate tests when user config file exists.
+
+`matplotlib_fname` returns the first of user config, environment
+variable-specified config, or default system config. If the user has a
+matplotlibrc, then this test checks that instead of the system one.
+
+Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
+---
+ lib/matplotlib/tests/test_rcparams.py | 18 +++++++-----------
+ pytest.ini | 1 -
+ 2 files changed, 7 insertions(+), 12 deletions(-)
+
+diff --git a/lib/matplotlib/tests/test_rcparams.py
b/lib/matplotlib/tests/test_rcparams.py
+index 4d93a9914..c0378e1bf 100644
+--- a/lib/matplotlib/tests/test_rcparams.py
++++ b/lib/matplotlib/tests/test_rcparams.py
+@@ -430,12 +430,11 @@ def test_if_rctemplate_is_up_to_date():
+ dep1 = mpl._all_deprecated
+ dep2 = mpl._deprecated_set
+ deprecated = list(dep1.union(dep2))
+- #print(deprecated)
+- path_to_rc = mpl.matplotlib_fname()
++ path_to_rc = os.path.join(mpl.get_data_path(), 'matplotlibrc')
+ with open(path_to_rc, "r") as f:
+ rclines = f.readlines()
+ missing = {}
+- for k,v in mpl.defaultParams.items():
++ for k, v in mpl.defaultParams.items():
+ if k[0] == "_":
+ continue
+ if k in deprecated:
+@@ -447,7 +446,7 @@ def test_if_rctemplate_is_up_to_date():
+ if k in line:
+ found = True
+ if not found:
+- missing.update({k:v})
++ missing.update({k: v})
+ if missing:
+ raise ValueError("The following params are missing " +
+ "in the matplotlibrc.template file: {}"
+@@ -457,7 +456,7 @@ def test_if_rctemplate_is_up_to_date():
+ def test_if_rctemplate_would_be_valid(tmpdir):
+ # This tests if the matplotlibrc.template file would result in a valid
+ # rc file if all lines are uncommented.
+- path_to_rc = mpl.matplotlib_fname()
++ path_to_rc = os.path.join(mpl.get_data_path(), 'matplotlibrc')
+ with open(path_to_rc, "r") as f:
+ rclines = f.readlines()
+ newlines = []
+@@ -476,10 +475,7 @@ def test_if_rctemplate_would_be_valid(tmpdir):
+ with open(fname, "w") as f:
+ f.writelines(newlines)
+ with pytest.warns(None) as record:
+- dic = mpl.rc_params_from_file(fname,
+- fail_on_error=True,
+- use_default_template=False)
++ mpl.rc_params_from_file(fname,
++ fail_on_error=True,
++ use_default_template=False)
+ assert len(record) == 0
+- #d1 = set(dic.keys())
+- #d2 = set(matplotlib.defaultParams.keys())
+- #print(d2-d1)
+diff --git a/pytest.ini b/pytest.ini
+index c34956517..c192ab939 100644
+--- a/pytest.ini
++++ b/pytest.ini
+@@ -56,7 +56,6 @@ pep8ignore =
+ matplotlib/tests/test_image.py E225 E231 E251 E302 E303 E501
+ matplotlib/tests/test_lines.py E231 E261
+ matplotlib/tests/test_mathtext.py E261 E302 E501
+- matplotlib/tests/test_rcparams.py E231
+ matplotlib/tri/triinterpolate.py E201 E221
+ matplotlib/_cm.py E101 E202 E203 W191
+ matplotlib/_mathtext_data.py E203 E231 E261
+--
+2.14.3
+
diff --git a/0001-Force-using-system-qhull.patch b/0001-Force-using-system-qhull.patch
new file mode 100644
index 0000000..d8079bc
--- /dev/null
+++ b/0001-Force-using-system-qhull.patch
@@ -0,0 +1,43 @@
+From 46361ca058295e3f08d3c54196d990c497834306 Mon Sep 17 00:00:00 2001
+From: Elliott Sales de Andrade <quantum.analyst(a)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(a)gmail.com>
+---
+ setupext.py | 17 ++---------------
+ 1 file changed, 2 insertions(+), 15 deletions(-)
+
+diff --git a/setupext.py b/setupext.py
+index d2ff239ad..30e0c9085 100644
+--- a/setupext.py
++++ b/setupext.py
+@@ -1318,23 +1318,10 @@ class Qhull(SetupPackage):
+
+ def check(self):
+ self.__class__.found_external = True
+- try:
+- return self._check_for_pkg_config(
+- 'libqhull', 'libqhull/qhull_a.h',
min_version='2015.2')
+- except CheckFailed as e:
+- self.__class__.found_pkgconfig = False
+- self.__class__.found_external = False
+- return str(e) + ' Using local copy.'
++ return ' Using system copy.'
+
+ def add_flags(self, ext):
+- if self.found_external:
+- pkg_config.setup_extension(ext, 'qhull',
+- default_libraries=['qhull'])
+- else:
+- ext.include_dirs.insert(0, 'extern')
+- ext.sources.extend(sorted(glob.glob('extern/libqhull/*.c')))
+- if sysconfig.get_config_var('LIBM') == '-lm':
+- ext.libraries.extend('m')
++ ext.libraries.append('qhull')
+
+
+ class TTConv(SetupPackage):
+--
+2.14.3
+
diff --git a/0001-matplotlibrc-path-search-fix.patch
b/0001-matplotlibrc-path-search-fix.patch
index f069fde..a11c26c 100644
--- a/0001-matplotlibrc-path-search-fix.patch
+++ b/0001-matplotlibrc-path-search-fix.patch
@@ -1,7 +1,7 @@
-From 69b627b84fa8081748d93d180deb2218b99270a4 Mon Sep 17 00:00:00 2001
+From 69c596604b1dee1b8aeb066907a4543053e375a9 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
Date: Wed, 27 Sep 2017 19:35:59 -0400
-Subject: [PATCH 1/4] matplotlibrc path search fix
+Subject: [PATCH 1/3] matplotlibrc path search fix
Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
---
@@ -9,10 +9,10 @@ Signed-off-by: Elliott Sales de Andrade
<quantum.analyst(a)gmail.com>
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py
-index 3ba486af1..b8caf27dc 100644
+index 93397070f..c68b8ca9a 100644
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
-@@ -635,9 +635,12 @@ def _get_data_path():
+@@ -739,9 +739,12 @@ def _get_data_path():
_file = _decode_filesystem_path(__file__)
path = os.sep.join([os.path.dirname(_file), 'mpl-data'])
@@ -25,7 +25,7 @@ index 3ba486af1..b8caf27dc 100644
# setuptools' namespace_packages may highjack this init file
# so need to try something known to be in matplotlib, not basemap
import matplotlib.afm
-@@ -731,7 +734,7 @@ def matplotlib_fname():
+@@ -836,7 +839,7 @@ def matplotlib_fname():
yield matplotlibrc
yield os.path.join(matplotlibrc, 'matplotlibrc')
yield os.path.join(_get_configdir(), 'matplotlibrc')
@@ -33,7 +33,7 @@ index 3ba486af1..b8caf27dc 100644
+ yield '/etc/matplotlibrc'
for fname in gen_candidates():
- if os.path.isfile(fname):
+ if os.path.exists(fname):
--
2.14.3
diff --git a/0002-Increase-tolerances-for-FreeType-2.7.1.patch
b/0002-Increase-tolerances-for-FreeType-2.7.1.patch
deleted file mode 100644
index 4db5b16..0000000
--- a/0002-Increase-tolerances-for-FreeType-2.7.1.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-From f146998e2bf6db54dae926ceec57d2baa6003ea0 Mon Sep 17 00:00:00 2001
-From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
-Date: Tue, 23 Jan 2018 20:22:05 -0500
-Subject: [PATCH 2/4] Increase tolerances for FreeType 2.7.1.
-
-Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
----
- lib/matplotlib/testing/decorators.py | 2 +-
- lib/matplotlib/tests/test_axes.py | 5 ++---
- lib/matplotlib/tests/test_mathtext.py | 4 ++--
- lib/matplotlib/tests/test_patches.py | 3 +--
- lib/matplotlib/tests/test_streamplot.py | 3 +--
- lib/mpl_toolkits/tests/test_mplot3d.py | 2 +-
- 6 files changed, 8 insertions(+), 11 deletions(-)
-
-diff --git a/lib/matplotlib/testing/decorators.py b/lib/matplotlib/testing/decorators.py
-index c5e069b31..ebd68cfab 100644
---- a/lib/matplotlib/testing/decorators.py
-+++ b/lib/matplotlib/testing/decorators.py
-@@ -406,7 +406,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_axes.py b/lib/matplotlib/tests/test_axes.py
-index 7164d0cec..6492cc140 100644
---- a/lib/matplotlib/tests/test_axes.py
-+++ b/lib/matplotlib/tests/test_axes.py
-@@ -671,8 +671,7 @@ def test_polar_rlabel_position():
- ax.tick_params(rotation='auto')
-
-
--@image_comparison(baseline_images=['polar_theta_wedge'],
style='default',
-- tol=0.01 if six.PY2 else 0)
-+@image_comparison(baseline_images=['polar_theta_wedge'],
style='default')
- def test_polar_theta_limits():
- r = np.arange(0, 3.0, 0.01)
- theta = 2*np.pi*r
-@@ -4679,7 +4678,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 = {
-diff --git a/lib/matplotlib/tests/test_mathtext.py
b/lib/matplotlib/tests/test_mathtext.py
-index 7ef77ce6a..b8c9c9e8b 100644
---- a/lib/matplotlib/tests/test_mathtext.py
-+++ b/lib/matplotlib/tests/test_mathtext.py
-@@ -174,7 +174,7 @@ def baseline_images(request, fontset, index):
- ['cm', 'stix', 'stixsans',
'dejavusans',
- 'dejavuserif'])
- @pytest.mark.parametrize('baseline_images', ['mathtext'],
indirect=True)
--@image_comparison(baseline_images=None)
-+@image_comparison(baseline_images=None, tol=0.31)
- def test_mathtext_rendering(baseline_images, fontset, index, test):
- matplotlib.rcParams['mathtext.fontset'] = fontset
- fig = plt.figure(figsize=(5.25, 0.75))
-@@ -188,7 +188,7 @@ def test_mathtext_rendering(baseline_images, fontset, index, test):
- ['cm', 'stix', 'stixsans',
'dejavusans',
- 'dejavuserif'])
- @pytest.mark.parametrize('baseline_images', ['mathfont'],
indirect=True)
--@image_comparison(baseline_images=None, extensions=['png'])
-+@image_comparison(baseline_images=None, extensions=['png'], tol=0.3)
- def test_mathfont_rendering(baseline_images, fontset, index, test):
- matplotlib.rcParams['mathtext.fontset'] = fontset
- fig = plt.figure(figsize=(5.25, 0.75))
-diff --git a/lib/matplotlib/tests/test_patches.py b/lib/matplotlib/tests/test_patches.py
-index 20ffa6b08..81737c84d 100644
---- a/lib/matplotlib/tests/test_patches.py
-+++ b/lib/matplotlib/tests/test_patches.py
-@@ -267,9 +267,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_streamplot.py
b/lib/matplotlib/tests/test_streamplot.py
-index 1d7e09fef..48f1e0683 100644
---- a/lib/matplotlib/tests/test_streamplot.py
-+++ b/lib/matplotlib/tests/test_streamplot.py
-@@ -40,8 +40,7 @@ def test_startpoints():
- plt.plot(start_x, start_y, 'ok')
-
-
--@image_comparison(baseline_images=['streamplot_colormap'],
-- tol=.02)
-+@image_comparison(baseline_images=['streamplot_colormap'])
- 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/mpl_toolkits/tests/test_mplot3d.py
b/lib/mpl_toolkits/tests/test_mplot3d.py
-index c157433c7..c13f3be2f 100644
---- a/lib/mpl_toolkits/tests/test_mplot3d.py
-+++ b/lib/mpl_toolkits/tests/test_mplot3d.py
-@@ -658,7 +658,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.14.3
-
diff --git a/0002-Increase-tolerances-for-non-x86_64-arches.patch
b/0002-Increase-tolerances-for-non-x86_64-arches.patch
new file mode 100644
index 0000000..c7b6857
--- /dev/null
+++ b/0002-Increase-tolerances-for-non-x86_64-arches.patch
@@ -0,0 +1,27 @@
+From ee4772513109de1c2dadb4d4989eedd2a5f92e51 Mon Sep 17 00:00:00 2001
+From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
+Date: Tue, 23 Jan 2018 20:27:17 -0500
+Subject: [PATCH 2/3] Increase tolerances for non-x86_64 arches.
+
+Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
+---
+ lib/matplotlib/tests/test_streamplot.py | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/lib/matplotlib/tests/test_streamplot.py
b/lib/matplotlib/tests/test_streamplot.py
+index 81a51e711..4f70ce861 100644
+--- a/lib/matplotlib/tests/test_streamplot.py
++++ b/lib/matplotlib/tests/test_streamplot.py
+@@ -58,8 +58,7 @@ def test_linewidth():
+ linewidth=lw)
+
+
+-@image_comparison(baseline_images=['streamplot_masks_and_nans'],
+- tol=0.04 if on_win else 0)
++@image_comparison(baseline_images=['streamplot_masks_and_nans'], tol=0.01)
+ def test_masks_and_nans():
+ X, Y, U, V = velocity_field()
+ mask = np.zeros(U.shape, dtype=bool)
+--
+2.14.3
+
diff --git a/0003-Increase-some-tolerances-for-32-bit-systems.patch
b/0003-Increase-some-tolerances-for-32-bit-systems.patch
new file mode 100644
index 0000000..e81469d
--- /dev/null
+++ b/0003-Increase-some-tolerances-for-32-bit-systems.patch
@@ -0,0 +1,558 @@
+From 10e4a0fbcab2ad59b95e1391d3285aff07e1f473 Mon Sep 17 00:00:00 2001
+From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
+Date: Sat, 31 Mar 2018 00:15:14 -0400
+Subject: [PATCH 3/3] Increase some tolerances for 32-bit systems.
+
+Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
+---
+ lib/matplotlib/testing/decorators.py | 2 +-
+ lib/matplotlib/tests/test_artist.py | 3 +-
+ lib/matplotlib/tests/test_axes.py | 47 +++++++++++-----------
+ lib/matplotlib/tests/test_collections.py | 2 +-
+ lib/matplotlib/tests/test_colorbar.py | 11 ++---
+ lib/matplotlib/tests/test_constrainedlayout.py | 2 +-
+ lib/matplotlib/tests/test_contour.py | 6 +--
+ lib/matplotlib/tests/test_image.py | 2 +-
+ 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 | 3 +-
+ lib/matplotlib/tests/test_transforms.py | 2 +-
+ .../tests/test_axisartist_floating_axes.py | 4 +-
+ .../test_axisartist_grid_helper_curvelinear.py | 4 +-
+ lib/mpl_toolkits/tests/test_mplot3d.py | 4 +-
+ 18 files changed, 52 insertions(+), 53 deletions(-)
+
+diff --git a/lib/matplotlib/testing/decorators.py b/lib/matplotlib/testing/decorators.py
+index 0ce6e6252..9a80eec1a 100644
+--- a/lib/matplotlib/testing/decorators.py
++++ b/lib/matplotlib/testing/decorators.py
+@@ -408,7 +408,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 8d1a01294..02acbb206 100644
+--- a/lib/matplotlib/tests/test_artist.py
++++ b/lib/matplotlib/tests/test_artist.py
+@@ -96,7 +96,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 77ec92b01..f16e70cfd 100644
+--- a/lib/matplotlib/tests/test_axes.py
++++ b/lib/matplotlib/tests/test_axes.py
+@@ -523,7 +523,7 @@ def test_single_point():
+ plt.plot('b', 'b', 'o', data=data)
+
+
+-@image_comparison(baseline_images=['single_date'])
++@image_comparison(baseline_images=['single_date'], tol=1.97)
+ def test_single_date():
+ time1 = [721964.0]
+ data1 = [-65.54]
+@@ -707,8 +707,7 @@ def test_polar_rlabel_position():
+ ax.tick_params(rotation='auto')
+
+
+-@image_comparison(baseline_images=['polar_theta_wedge'],
style='default',
+- tol=0.01 if six.PY2 else 0)
++@image_comparison(baseline_images=['polar_theta_wedge'],
style='default')
+ def test_polar_theta_limits():
+ r = np.arange(0, 3.0, 0.01)
+ theta = 2*np.pi*r
+@@ -1008,7 +1007,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])
+@@ -1122,7 +1121,7 @@ def test_pcolormesh():
+
+
+ @image_comparison(baseline_images=['pcolormesh_datetime_axis'],
+- extensions=['png'], remove_text=False)
++ extensions=['png'], remove_text=False, tol=0.19)
+ def test_pcolormesh_datetime_axis():
+ fig = plt.figure()
+ fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
+@@ -1148,7 +1147,7 @@ def test_pcolormesh_datetime_axis():
+
+
+ @image_comparison(baseline_images=['pcolor_datetime_axis'],
+- extensions=['png'], remove_text=False)
++ extensions=['png'], remove_text=False, tol=0.19)
+ def test_pcolor_datetime_axis():
+ fig = plt.figure()
+ fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
+@@ -1205,7 +1204,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
+@@ -2467,7 +2466,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)
+@@ -2485,7 +2484,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))
+@@ -2496,7 +2495,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))
+@@ -2507,7 +2506,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))
+@@ -2518,7 +2517,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))
+@@ -2529,7 +2528,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))
+@@ -2540,7 +2539,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))
+@@ -2551,7 +2550,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))
+@@ -2562,7 +2561,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))
+@@ -2573,7 +2572,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))
+@@ -2584,7 +2583,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))
+@@ -2595,7 +2594,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))
+@@ -2606,7 +2605,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))
+@@ -2617,7 +2616,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))
+@@ -3964,7 +3963,7 @@ def test_psd_noise():
+
+
+ @image_comparison(baseline_images=['csd_freqs'], remove_text=True,
+- extensions=['png'])
++ extensions=['png'], tol=0.21)
+ def test_csd_freqs():
+ '''test axes.csd with sinusoidal stimuli'''
+ n = 10000
+@@ -4823,7 +4822,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 = {
+@@ -5318,7 +5317,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
+ time_index = [pytz.timezone('UTC').localize(datetime.datetime(
+diff --git a/lib/matplotlib/tests/test_collections.py
b/lib/matplotlib/tests/test_collections.py
+index 291647d17..265f23fed 100644
+--- a/lib/matplotlib/tests/test_collections.py
++++ b/lib/matplotlib/tests/test_collections.py
+@@ -467,7 +467,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 539ee8c83..ae21e723f 100644
+--- a/lib/matplotlib/tests/test_colorbar.py
++++ b/lib/matplotlib/tests/test_colorbar.py
+@@ -95,7 +95,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.
+@@ -105,7 +105,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.
+@@ -119,7 +119,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]
+@@ -173,7 +173,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 9c36fb247..929e38bd8 100644
+--- a/lib/matplotlib/tests/test_constrainedlayout.py
++++ b/lib/matplotlib/tests/test_constrainedlayout.py
+@@ -296,7 +296,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 35d33b972..f10483ce4 100644
+--- a/lib/matplotlib/tests/test_contour.py
++++ b/lib/matplotlib/tests/test_contour.py
+@@ -225,7 +225,7 @@ def test_given_colors_levels_and_extends():
+
+
+ @image_comparison(baseline_images=['contour_datetime_axis'],
+- extensions=['png'], remove_text=False)
++ extensions=['png'], remove_text=False, tol=0.18)
+ def test_contour_datetime_axis():
+ fig = plt.figure()
+ fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
+@@ -251,7 +251,7 @@ def test_contour_datetime_axis():
+
+
+ @image_comparison(baseline_images=['contour_test_label_transforms'],
+- extensions=['png'], remove_text=True)
++ extensions=['png'], remove_text=True, tol=1.38)
+ def test_labels():
+ # Adapted from pylab_examples example code: contour_demo.py
+ # see issues #2475, #2843, and #2818 for explanation
+@@ -282,7 +282,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_image.py b/lib/matplotlib/tests/test_image.py
+index 26e3b4a7e..269f814bb 100644
+--- a/lib/matplotlib/tests/test_image.py
++++ b/lib/matplotlib/tests/test_image.py
+@@ -784,7 +784,7 @@ def test_imshow_endianess():
+
+
+ @image_comparison(baseline_images=['imshow_masked_interpolation'],
+- remove_text=True, style='mpl20')
++ remove_text=True, style='mpl20', tol=0.25)
+ def test_imshow_masked_interpolation():
+
+ cm = copy(plt.get_cmap('viridis'))
+diff --git a/lib/matplotlib/tests/test_mathtext.py
b/lib/matplotlib/tests/test_mathtext.py
+index cdc1093e1..ac0d8bf05 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):
+ 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):
+ ['cm', 'stix', 'stixsans',
'dejavusans',
+ 'dejavuserif'])
+ @pytest.mark.parametrize('baseline_images', ['mathfont'],
indirect=True)
+-@image_comparison(baseline_images=None, extensions=['png'])
++@image_comparison(baseline_images=None, extensions=['png'], tol=0.3)
+ def test_mathfont_rendering(baseline_images, fontset, index, test):
+ matplotlib.rcParams['mathtext.fontset'] = fontset
+ fig = plt.figure(figsize=(5.25, 0.75))
+diff --git a/lib/matplotlib/tests/test_patches.py b/lib/matplotlib/tests/test_patches.py
+index ff1abb9c6..cc90e6bb0 100644
+--- a/lib/matplotlib/tests/test_patches.py
++++ b/lib/matplotlib/tests/test_patches.py
+@@ -266,9 +266,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 fe7265957..2addc35ed 100644
+--- a/lib/matplotlib/tests/test_patheffects.py
++++ b/lib/matplotlib/tests/test_patheffects.py
+@@ -121,7 +121,7 @@ def test_SimplePatchShadow_offset():
+ assert pe._offset == (4, 5)
+
+
+-@image_comparison(baseline_images=['collection'], tol=0.02)
++@image_comparison(baseline_images=['collection'], tol=0.084)
+ 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 89a5a512e..a25961284 100644
+--- a/lib/matplotlib/tests/test_pickle.py
++++ b/lib/matplotlib/tests/test_pickle.py
+@@ -42,7 +42,7 @@ def test_simple():
+
+ @image_comparison(baseline_images=['multi_pickle'],
+ extensions=['png'], remove_text=True,
+- style='mpl20')
++ style='mpl20', tol=0.11)
+ 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 a0e1e674f..ede6bfc64 100644
+--- a/lib/matplotlib/tests/test_quiver.py
++++ b/lib/matplotlib/tests/test_quiver.py
+@@ -131,7 +131,7 @@ def test_quiver_key_pivot():
+
+
+ @image_comparison(baseline_images=['barbs_test_image'],
+- extensions=['png'], remove_text=True)
++ extensions=['png'], remove_text=True, tol=0.11)
+ def test_barbs():
+ x = np.linspace(-5, 5, 5)
+ X, Y = np.meshgrid(x, x)
+diff --git a/lib/matplotlib/tests/test_streamplot.py
b/lib/matplotlib/tests/test_streamplot.py
+index 4f70ce861..5bc8184f7 100644
+--- a/lib/matplotlib/tests/test_streamplot.py
++++ b/lib/matplotlib/tests/test_streamplot.py
+@@ -39,8 +39,7 @@ def test_startpoints():
+ plt.plot(start_x, start_y, 'ok')
+
+
+-@image_comparison(baseline_images=['streamplot_colormap'],
+- tol=.02)
++@image_comparison(baseline_images=['streamplot_colormap'])
+ 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 06985db84..8efaef898 100644
+--- a/lib/matplotlib/tests/test_transforms.py
++++ b/lib/matplotlib/tests/test_transforms.py
+@@ -74,7 +74,7 @@ def test_external_transform_api():
+
+
+ @image_comparison(baseline_images=['pre_transform_data'],
+- tol=0.08)
++ tol=0.155)
+ 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/mpl_toolkits/tests/test_axisartist_floating_axes.py
b/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
+index de7226609..af2283541 100644
+--- a/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
++++ b/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
+@@ -24,7 +24,7 @@ def test_subplot():
+
+
+ @image_comparison(baseline_images=['curvelinear3'],
+- extensions=['png'], style='default', tol=0.01)
++ extensions=['png'], style='default', tol=0.02)
+ def test_curvelinear3():
+ fig = plt.figure(figsize=(5, 5))
+ fig.clf()
+@@ -80,7 +80,7 @@ def test_curvelinear3():
+
+
+ @image_comparison(baseline_images=['curvelinear4'],
+- extensions=['png'], style='default', tol=0.01)
++ extensions=['png'], style='default', tol=0.05)
+ def test_curvelinear4():
+ fig = plt.figure(figsize=(5, 5))
+ fig.clf()
+diff --git a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
+index a7c637428..61d41d354 100644
+--- a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
++++ b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
+@@ -91,7 +91,7 @@ def test_custom_transform():
+
+
+ @image_comparison(baseline_images=['polar_box'],
+- extensions=['png'], style='default', tol=0.03)
++ extensions=['png'], style='default', tol=0.08)
+ def test_polar_box():
+ fig = plt.figure(figsize=(5, 5))
+
+@@ -152,7 +152,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 0a506db92..44e1681fc 100644
+--- a/lib/mpl_toolkits/tests/test_mplot3d.py
++++ b/lib/mpl_toolkits/tests/test_mplot3d.py
+@@ -225,7 +225,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
+@@ -704,7 +704,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.14.3
+
diff --git a/0003-Increase-some-tolerances-for-non-x86-arches.patch
b/0003-Increase-some-tolerances-for-non-x86-arches.patch
new file mode 100644
index 0000000..f3584b0
--- /dev/null
+++ b/0003-Increase-some-tolerances-for-non-x86-arches.patch
@@ -0,0 +1,267 @@
+From 0e88d3f2ada26de2dc3362f30064551b9ea2322b Mon Sep 17 00:00:00 2001
+From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
+Date: Sat, 31 Mar 2018 00:33:37 -0400
+Subject: [PATCH 3/3] Increase some tolerances for non-x86 arches.
+
+Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
+---
+ lib/matplotlib/tests/test_arrow_patches.py | 4 ++--
+ lib/matplotlib/tests/test_axes.py | 7 ++++---
+ lib/matplotlib/tests/test_collections.py | 2 +-
+ lib/matplotlib/tests/test_constrainedlayout.py | 2 +-
+ lib/matplotlib/tests/test_cycles.py | 6 +++---
+ lib/matplotlib/tests/test_figure.py | 2 +-
+ lib/matplotlib/tests/test_image.py | 2 +-
+ lib/matplotlib/tests/test_legend.py | 6 +++---
+ lib/matplotlib/tests/test_pickle.py | 2 +-
+ lib/matplotlib/tests/test_scale.py | 2 +-
+ lib/matplotlib/tests/test_streamplot.py | 2 +-
+ lib/matplotlib/tests/test_units.py | 4 ++--
+ lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py | 2 +-
+ 13 files changed, 22 insertions(+), 21 deletions(-)
+
+diff --git a/lib/matplotlib/tests/test_arrow_patches.py
b/lib/matplotlib/tests/test_arrow_patches.py
+index 44f87c5fe..fb50ae710 100644
+--- a/lib/matplotlib/tests/test_arrow_patches.py
++++ b/lib/matplotlib/tests/test_arrow_patches.py
+@@ -68,7 +68,7 @@ def __prepare_fancyarrow_dpi_cor_test():
+
+
+ @image_comparison(baseline_images=['fancyarrow_dpi_cor_100dpi'],
+- remove_text=True, extensions=['png'],
++ remove_text=True, extensions=['png'], tol=0.016,
+ savefig_kwarg=dict(dpi=100))
+ def test_fancyarrow_dpi_cor_100dpi():
+ """
+@@ -83,7 +83,7 @@ def test_fancyarrow_dpi_cor_100dpi():
+
+
+ @image_comparison(baseline_images=['fancyarrow_dpi_cor_200dpi'],
+- remove_text=True, extensions=['png'],
++ remove_text=True, extensions=['png'], 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 77ec92b01..49a4d9290 100644
+--- a/lib/matplotlib/tests/test_axes.py
++++ b/lib/matplotlib/tests/test_axes.py
+@@ -389,7 +389,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
+@@ -3284,7 +3284,8 @@ def test_vertex_markers():
+
+
+ @image_comparison(baseline_images=['vline_hline_zorder',
+- 'errorbar_zorder'])
++ 'errorbar_zorder'],
++ tol=0.02)
+ def test_eb_line_zorder():
+ x = list(xrange(10))
+
+@@ -5017,7 +5018,7 @@ def test_title_location_roundtrip():
+
+
+ @image_comparison(baseline_images=["loglog"], remove_text=True,
+- extensions=['png'])
++ extensions=['png'], tol=0.009)
+ def test_loglog():
+ fig, ax = plt.subplots()
+ x = np.arange(1, 11)
+diff --git a/lib/matplotlib/tests/test_collections.py
b/lib/matplotlib/tests/test_collections.py
+index 291647d17..6b623ef52 100644
+--- a/lib/matplotlib/tests/test_collections.py
++++ b/lib/matplotlib/tests/test_collections.py
+@@ -443,7 +443,7 @@ def test_barb_limits():
+
+
+ @image_comparison(baseline_images=['EllipseCollection_test_image'],
+- extensions=['png'],
++ extensions=['png'], 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 9c36fb247..3834e4e26 100644
+--- a/lib/matplotlib/tests/test_constrainedlayout.py
++++ b/lib/matplotlib/tests/test_constrainedlayout.py
+@@ -223,7 +223,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 95611f36c..0a118b636 100644
+--- a/lib/matplotlib/tests/test_cycles.py
++++ b/lib/matplotlib/tests/test_cycles.py
+@@ -10,7 +10,7 @@ from cycler import cycler
+
+
+ @image_comparison(baseline_images=['color_cycle_basic'], remove_text=True,
+- extensions=['png'])
++ extensions=['png'], tol=0.008)
+ def test_colorcycle_basic():
+ fig = plt.figure()
+ ax = fig.add_subplot(111)
+@@ -28,7 +28,7 @@ def test_colorcycle_basic():
+
+
+ @image_comparison(baseline_images=['marker_cycle', 'marker_cycle'],
+- remove_text=True, extensions=['png'])
++ remove_text=True, extensions=['png'], tol=0.008)
+ def test_marker_cycle():
+ fig = plt.figure()
+ ax = fig.add_subplot(111)
+@@ -63,7 +63,7 @@ def test_marker_cycle():
+
+
+ @image_comparison(baseline_images=['lineprop_cycle_basic'], remove_text=True,
+- extensions=['png'])
++ extensions=['png'], tol=0.009)
+ def test_linestylecycle_basic():
+ fig = plt.figure()
+ ax = fig.add_subplot(111)
+diff --git a/lib/matplotlib/tests/test_figure.py b/lib/matplotlib/tests/test_figure.py
+index 229ce192c..0e7a10d46 100644
+--- a/lib/matplotlib/tests/test_figure.py
++++ b/lib/matplotlib/tests/test_figure.py
+@@ -14,7 +14,7 @@ import numpy as np
+ import pytest
+
+
+-@image_comparison(baseline_images=['figure_align_labels'])
++@image_comparison(baseline_images=['figure_align_labels'], 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 26e3b4a7e..2c7cedf74 100644
+--- a/lib/matplotlib/tests/test_image.py
++++ b/lib/matplotlib/tests/test_image.py
+@@ -784,7 +784,7 @@ def test_imshow_endianess():
+
+
+ @image_comparison(baseline_images=['imshow_masked_interpolation'],
+- remove_text=True, style='mpl20')
++ remove_text=True, style='mpl20', tol=0.006)
+ def test_imshow_masked_interpolation():
+
+ cm = copy(plt.get_cmap('viridis'))
+diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py
+index 55b8adc77..1784ff966 100644
+--- a/lib/matplotlib/tests/test_legend.py
++++ b/lib/matplotlib/tests/test_legend.py
+@@ -145,7 +145,7 @@ def test_multiple_keys():
+
+
+ @image_comparison(baseline_images=['rgba_alpha'],
+- extensions=['png'], remove_text=True)
++ extensions=['png'], remove_text=True, tol=0.007)
+ def test_alpha_rgba():
+ import matplotlib.pyplot as plt
+
+@@ -156,7 +156,7 @@ def test_alpha_rgba():
+
+
+ @image_comparison(baseline_images=['rcparam_alpha'],
+- extensions=['png'], remove_text=True)
++ extensions=['png'], remove_text=True, tol=0.007)
+ def test_alpha_rcparam():
+ import matplotlib.pyplot as plt
+
+@@ -183,7 +183,7 @@ def test_fancy():
+ ncol=2, shadow=True, title="My legend", numpoints=1)
+
+
+-@image_comparison(baseline_images=['framealpha'], remove_text=True)
++@image_comparison(baseline_images=['framealpha'], remove_text=True, 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 89a5a512e..99051dee7 100644
+--- a/lib/matplotlib/tests/test_pickle.py
++++ b/lib/matplotlib/tests/test_pickle.py
+@@ -42,7 +42,7 @@ def test_simple():
+
+ @image_comparison(baseline_images=['multi_pickle'],
+ extensions=['png'], remove_text=True,
+- style='mpl20')
++ style='mpl20', tol=0.004)
+ def test_complete():
+ fig = plt.figure('Figure with a label?', figsize=(10, 6))
+
+diff --git a/lib/matplotlib/tests/test_scale.py b/lib/matplotlib/tests/test_scale.py
+index c50a0a896..a33fcccf0 100644
+--- a/lib/matplotlib/tests/test_scale.py
++++ b/lib/matplotlib/tests/test_scale.py
+@@ -97,7 +97,7 @@ def test_logscale_transform_repr():
+
+
+ @image_comparison(baseline_images=['logscale_nonpos_values'], remove_text=True,
+- extensions=['png'], style='mpl20')
++ extensions=['png'], style='mpl20', tol=0.008)
+ def test_logscale_nonpos_values():
+ np.random.seed(19680801)
+ xs = np.random.normal(size=int(1e3))
+diff --git a/lib/matplotlib/tests/test_streamplot.py
b/lib/matplotlib/tests/test_streamplot.py
+index 4f70ce861..4e52ed0c4 100644
+--- a/lib/matplotlib/tests/test_streamplot.py
++++ b/lib/matplotlib/tests/test_streamplot.py
+@@ -48,7 +48,7 @@ def test_colormap():
+ plt.colorbar()
+
+
+-@image_comparison(baseline_images=['streamplot_linewidth'])
++@image_comparison(baseline_images=['streamplot_linewidth'], tol=0.002)
+ def test_linewidth():
+ X, Y, U, V = velocity_field()
+ speed = np.sqrt(U*U + V*V)
+diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py
+index 65c8da7ea..c69d1d531 100644
+--- a/lib/matplotlib/tests/test_units.py
++++ b/lib/matplotlib/tests/test_units.py
+@@ -43,7 +43,7 @@ class Quantity(object):
+
+ # 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'],
++@image_comparison(baseline_images=['plot_pint'], tol=0.003,
+ extensions=['png'], remove_text=False, style='mpl20')
+ def test_numpy_facade():
+ # Create an instance of the conversion interface and
+@@ -87,7 +87,7 @@ def test_numpy_facade():
+
+
+ # Tests gh-8908
+-@image_comparison(baseline_images=['plot_masked_units'],
++@image_comparison(baseline_images=['plot_masked_units'], 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 a7c637428..8fc5b25b1 100644
+--- a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
++++ b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
+@@ -91,7 +91,7 @@ def test_custom_transform():
+
+
+ @image_comparison(baseline_images=['polar_box'],
+- extensions=['png'], style='default', tol=0.03)
++ extensions=['png'], style='default', tol=0.04)
+ def test_polar_box():
+ fig = plt.figure(figsize=(5, 5))
+
+--
+2.14.3
+
diff --git a/0003-Increase-tolerances-for-FT-2.7.1-and-other-arches.patch
b/0003-Increase-tolerances-for-FT-2.7.1-and-other-arches.patch
deleted file mode 100644
index bc5d355..0000000
--- a/0003-Increase-tolerances-for-FT-2.7.1-and-other-arches.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 1e4e5f12b804561ab5b6bfa4ad76d44523d1568e Mon Sep 17 00:00:00 2001
-From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
-Date: Tue, 23 Jan 2018 20:27:17 -0500
-Subject: [PATCH 3/4] Increase tolerances for FT 2.7.1 and other arches.
-
-Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
----
- lib/matplotlib/tests/test_patheffects.py | 2 +-
- lib/matplotlib/tests/test_streamplot.py | 3 +--
- 2 files changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/lib/matplotlib/tests/test_patheffects.py
b/lib/matplotlib/tests/test_patheffects.py
-index 9b8a4379c..e36d6deb6 100644
---- a/lib/matplotlib/tests/test_patheffects.py
-+++ b/lib/matplotlib/tests/test_patheffects.py
-@@ -125,7 +125,7 @@ def test_SimplePatchShadow_offset():
- assert pe._offset == (4, 5)
-
-
--@image_comparison(baseline_images=['collection'], tol=0.015)
-+@image_comparison(baseline_images=['collection'], tol=0.019)
- 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_streamplot.py
b/lib/matplotlib/tests/test_streamplot.py
-index 48f1e0683..aadcf6bfd 100644
---- a/lib/matplotlib/tests/test_streamplot.py
-+++ b/lib/matplotlib/tests/test_streamplot.py
-@@ -58,8 +58,7 @@ def test_linewidth():
- linewidth=lw)
-
-
--@image_comparison(baseline_images=['streamplot_masks_and_nans'],
-- tol=0.04 if on_win else 0)
-+@image_comparison(baseline_images=['streamplot_masks_and_nans'], tol=0.01)
- def test_masks_and_nans():
- X, Y, U, V = velocity_field()
- mask = np.zeros(U.shape, dtype=bool)
---
-2.14.3
-
diff --git a/0004-Increase-some-tolerances-for-32-bit-systems.patch
b/0004-Increase-some-tolerances-for-32-bit-systems.patch
deleted file mode 100644
index a7012bc..0000000
--- a/0004-Increase-some-tolerances-for-32-bit-systems.patch
+++ /dev/null
@@ -1,402 +0,0 @@
-From 25c7d1af15f4478e795250360d2f778a76c2358d Mon Sep 17 00:00:00 2001
-From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
-Date: Wed, 24 Jan 2018 01:38:52 -0500
-Subject: [PATCH 4/4] Increase some tolerances for 32-bit systems.
-
-Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
----
- lib/matplotlib/tests/test_artist.py | 3 ++-
- lib/matplotlib/tests/test_axes.py | 42 ++++++++++++++++----------------
- lib/matplotlib/tests/test_collections.py | 2 +-
- lib/matplotlib/tests/test_colorbar.py | 11 +++++----
- lib/matplotlib/tests/test_contour.py | 6 ++---
- lib/matplotlib/tests/test_image.py | 2 +-
- 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_transforms.py | 2 +-
- lib/mpl_toolkits/tests/test_mplot3d.py | 2 +-
- 11 files changed, 39 insertions(+), 37 deletions(-)
-
-diff --git a/lib/matplotlib/tests/test_artist.py b/lib/matplotlib/tests/test_artist.py
-index 786d50903..105714ef4 100644
---- a/lib/matplotlib/tests/test_artist.py
-+++ b/lib/matplotlib/tests/test_artist.py
-@@ -95,7 +95,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 6492cc140..8609d8c31 100644
---- a/lib/matplotlib/tests/test_axes.py
-+++ b/lib/matplotlib/tests/test_axes.py
-@@ -483,7 +483,7 @@ def test_single_point():
- plt.plot('b', 'b', 'o', data=data)
-
-
--@image_comparison(baseline_images=['single_date'])
-+@image_comparison(baseline_images=['single_date'], tol=1.97)
- def test_single_date():
- time1 = [721964.0]
- data1 = [-65.54]
-@@ -971,7 +971,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])
-@@ -1085,7 +1085,7 @@ def test_pcolormesh():
-
-
- @image_comparison(baseline_images=['pcolormesh_datetime_axis'],
-- extensions=['png'], remove_text=False)
-+ extensions=['png'], remove_text=False, tol=0.19)
- def test_pcolormesh_datetime_axis():
- fig = plt.figure()
- fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
-@@ -1111,7 +1111,7 @@ def test_pcolormesh_datetime_axis():
-
-
- @image_comparison(baseline_images=['pcolor_datetime_axis'],
-- extensions=['png'], remove_text=False)
-+ extensions=['png'], remove_text=False, tol=0.19)
- def test_pcolor_datetime_axis():
- fig = plt.figure()
- fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
-@@ -1167,7 +1167,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
-@@ -2433,7 +2433,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)
-@@ -2451,7 +2451,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))
-@@ -2462,7 +2462,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))
-@@ -2473,7 +2473,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))
-@@ -2484,7 +2484,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))
-@@ -2495,7 +2495,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))
-@@ -2506,7 +2506,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))
-@@ -2517,7 +2517,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))
-@@ -2528,7 +2528,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))
-@@ -2539,7 +2539,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))
-@@ -2550,7 +2550,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))
-@@ -2561,7 +2561,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))
-@@ -2572,7 +2572,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))
-@@ -2583,7 +2583,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))
-@@ -3909,7 +3909,7 @@ def test_psd_noise():
-
-
- @image_comparison(baseline_images=['csd_freqs'], remove_text=True,
-- extensions=['png'])
-+ extensions=['png'], tol=0.21)
- def test_csd_freqs():
- '''test axes.csd with sinusoidal stimuli'''
- n = 10000
-@@ -5153,7 +5153,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
- time_index = [pytz.timezone('UTC').localize(datetime.datetime(
-diff --git a/lib/matplotlib/tests/test_collections.py
b/lib/matplotlib/tests/test_collections.py
-index c27aeb11a..9d39a3e91 100644
---- a/lib/matplotlib/tests/test_collections.py
-+++ b/lib/matplotlib/tests/test_collections.py
-@@ -468,7 +468,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 b75ba7e9f..cfbb16444 100644
---- a/lib/matplotlib/tests/test_colorbar.py
-+++ b/lib/matplotlib/tests/test_colorbar.py
-@@ -96,7 +96,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.
-@@ -106,7 +106,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.
-@@ -120,7 +120,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]
-@@ -174,7 +174,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)
-@@ -234,7 +234,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_contour.py b/lib/matplotlib/tests/test_contour.py
-index 16ac9e865..29c1b26f2 100644
---- a/lib/matplotlib/tests/test_contour.py
-+++ b/lib/matplotlib/tests/test_contour.py
-@@ -228,7 +228,7 @@ def test_given_colors_levels_and_extends():
-
-
- @image_comparison(baseline_images=['contour_datetime_axis'],
-- extensions=['png'], remove_text=False)
-+ extensions=['png'], remove_text=False, tol=0.18)
- def test_contour_datetime_axis():
- fig = plt.figure()
- fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
-@@ -254,7 +254,7 @@ def test_contour_datetime_axis():
-
-
- @image_comparison(baseline_images=['contour_test_label_transforms'],
-- extensions=['png'], remove_text=True)
-+ extensions=['png'], remove_text=True, tol=0.74)
- def test_labels():
- # Adapted from pylab_examples example code: contour_demo.py
- # see issues #2475, #2843, and #2818 for explanation
-@@ -283,7 +283,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_image.py b/lib/matplotlib/tests/test_image.py
-index fd6430d56..e9bf1b1db 100644
---- a/lib/matplotlib/tests/test_image.py
-+++ b/lib/matplotlib/tests/test_image.py
-@@ -754,7 +754,7 @@ def test_imshow_endianess():
-
-
- @image_comparison(baseline_images=['imshow_masked_interpolation'],
-- remove_text=True, style='mpl20')
-+ remove_text=True, style='mpl20', tol=0.25)
- def test_imshow_masked_interpolation():
-
- cm = copy(plt.get_cmap('viridis'))
-diff --git a/lib/matplotlib/tests/test_patheffects.py
b/lib/matplotlib/tests/test_patheffects.py
-index e36d6deb6..985d69cb2 100644
---- a/lib/matplotlib/tests/test_patheffects.py
-+++ b/lib/matplotlib/tests/test_patheffects.py
-@@ -125,7 +125,7 @@ def test_SimplePatchShadow_offset():
- assert pe._offset == (4, 5)
-
-
--@image_comparison(baseline_images=['collection'], tol=0.019)
-+@image_comparison(baseline_images=['collection'], tol=0.084)
- 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 bd6ac6862..512f07948 100644
---- a/lib/matplotlib/tests/test_pickle.py
-+++ b/lib/matplotlib/tests/test_pickle.py
-@@ -43,7 +43,7 @@ def test_simple():
-
- @image_comparison(baseline_images=['multi_pickle'],
- extensions=['png'], remove_text=True,
-- style='mpl20')
-+ style='mpl20', tol=0.11)
- 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 a0e1e674f..ede6bfc64 100644
---- a/lib/matplotlib/tests/test_quiver.py
-+++ b/lib/matplotlib/tests/test_quiver.py
-@@ -131,7 +131,7 @@ def test_quiver_key_pivot():
-
-
- @image_comparison(baseline_images=['barbs_test_image'],
-- extensions=['png'], remove_text=True)
-+ extensions=['png'], remove_text=True, tol=0.11)
- def test_barbs():
- x = np.linspace(-5, 5, 5)
- X, Y = np.meshgrid(x, x)
-diff --git a/lib/matplotlib/tests/test_transforms.py
b/lib/matplotlib/tests/test_transforms.py
-index 8f19a50f3..fa4a9aa18 100644
---- a/lib/matplotlib/tests/test_transforms.py
-+++ b/lib/matplotlib/tests/test_transforms.py
-@@ -75,7 +75,7 @@ def test_external_transform_api():
-
-
- @image_comparison(baseline_images=['pre_transform_data'],
-- tol=0.08)
-+ tol=0.155)
- 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/mpl_toolkits/tests/test_mplot3d.py
b/lib/mpl_toolkits/tests/test_mplot3d.py
-index c13f3be2f..81a28aadb 100644
---- a/lib/mpl_toolkits/tests/test_mplot3d.py
-+++ b/lib/mpl_toolkits/tests/test_mplot3d.py
-@@ -198,7 +198,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
---
-2.14.3
-
diff --git a/0004-Increase-some-tolerances-for-non-x86-arches.patch
b/0004-Increase-some-tolerances-for-non-x86-arches.patch
deleted file mode 100644
index 349ce92..0000000
--- a/0004-Increase-some-tolerances-for-non-x86-arches.patch
+++ /dev/null
@@ -1,216 +0,0 @@
-From cd26dbd863d0cf2cce4d249c4941cf68d6f838ba Mon Sep 17 00:00:00 2001
-From: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
-Date: Wed, 24 Jan 2018 03:02:19 -0500
-Subject: [PATCH 4/4] Increase some tolerances for non-x86 arches.
-
-Signed-off-by: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
----
- lib/matplotlib/tests/test_arrow_patches.py | 4 ++--
- lib/matplotlib/tests/test_axes.py | 5 +++--
- lib/matplotlib/tests/test_collections.py | 2 +-
- lib/matplotlib/tests/test_cycles.py | 6 +++---
- lib/matplotlib/tests/test_image.py | 2 +-
- lib/matplotlib/tests/test_legend.py | 6 +++---
- lib/matplotlib/tests/test_pickle.py | 2 +-
- lib/matplotlib/tests/test_scale.py | 2 +-
- lib/matplotlib/tests/test_streamplot.py | 2 +-
- lib/matplotlib/tests/test_units.py | 4 ++--
- 10 files changed, 18 insertions(+), 17 deletions(-)
-
-diff --git a/lib/matplotlib/tests/test_arrow_patches.py
b/lib/matplotlib/tests/test_arrow_patches.py
-index 0a5894a30..1f75169ca 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'],
-+ remove_text=True, extensions=['png'], tol=0.016,
- savefig_kwarg=dict(dpi=100))
- def test_fancyarrow_dpi_cor_100dpi():
- """
-@@ -84,7 +84,7 @@ def test_fancyarrow_dpi_cor_100dpi():
-
-
- @image_comparison(baseline_images=['fancyarrow_dpi_cor_200dpi'],
-- remove_text=True, extensions=['png'],
-+ remove_text=True, extensions=['png'], 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 6492cc140..3bd1c0fda 100644
---- a/lib/matplotlib/tests/test_axes.py
-+++ b/lib/matplotlib/tests/test_axes.py
-@@ -3229,7 +3229,8 @@ def test_vertex_markers():
-
-
- @image_comparison(baseline_images=['vline_hline_zorder',
-- 'errorbar_zorder'])
-+ 'errorbar_zorder'],
-+ tol=0.02)
- def test_eb_line_zorder():
- x = list(xrange(10))
-
-@@ -4866,7 +4867,7 @@ def test_title_location_roundtrip():
-
-
- @image_comparison(baseline_images=["loglog"], remove_text=True,
-- extensions=['png'])
-+ extensions=['png'], tol=0.009)
- def test_loglog():
- fig, ax = plt.subplots()
- x = np.arange(1, 11)
-diff --git a/lib/matplotlib/tests/test_collections.py
b/lib/matplotlib/tests/test_collections.py
-index c27aeb11a..969bf41cf 100644
---- a/lib/matplotlib/tests/test_collections.py
-+++ b/lib/matplotlib/tests/test_collections.py
-@@ -444,7 +444,7 @@ def test_barb_limits():
-
-
- @image_comparison(baseline_images=['EllipseCollection_test_image'],
-- extensions=['png'],
-+ extensions=['png'], tol=0.012,
- remove_text=True)
- def test_EllipseCollection():
- # Test basic functionality
-diff --git a/lib/matplotlib/tests/test_cycles.py b/lib/matplotlib/tests/test_cycles.py
-index eadaf2508..5d1144f5e 100644
---- a/lib/matplotlib/tests/test_cycles.py
-+++ b/lib/matplotlib/tests/test_cycles.py
-@@ -10,7 +10,7 @@ from cycler import cycler
-
-
- @image_comparison(baseline_images=['color_cycle_basic'], remove_text=True,
-- extensions=['png'])
-+ extensions=['png'], tol=0.008)
- def test_colorcycle_basic():
- fig = plt.figure()
- ax = fig.add_subplot(111)
-@@ -28,7 +28,7 @@ def test_colorcycle_basic():
-
-
- @image_comparison(baseline_images=['marker_cycle', 'marker_cycle'],
-- remove_text=True, extensions=['png'])
-+ remove_text=True, extensions=['png'], tol=0.008)
- def test_marker_cycle():
- fig = plt.figure()
- ax = fig.add_subplot(111)
-@@ -63,7 +63,7 @@ def test_marker_cycle():
-
-
- @image_comparison(baseline_images=['lineprop_cycle_basic'], remove_text=True,
-- extensions=['png'])
-+ extensions=['png'], tol=0.009)
- def test_linestylecycle_basic():
- fig = plt.figure()
- ax = fig.add_subplot(111)
-diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py
-index fd6430d56..b4190713f 100644
---- a/lib/matplotlib/tests/test_image.py
-+++ b/lib/matplotlib/tests/test_image.py
-@@ -754,7 +754,7 @@ def test_imshow_endianess():
-
-
- @image_comparison(baseline_images=['imshow_masked_interpolation'],
-- remove_text=True, style='mpl20')
-+ remove_text=True, style='mpl20', tol=0.006)
- def test_imshow_masked_interpolation():
-
- cm = copy(plt.get_cmap('viridis'))
-diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py
-index e63aa8ef9..d984bcac1 100644
---- a/lib/matplotlib/tests/test_legend.py
-+++ b/lib/matplotlib/tests/test_legend.py
-@@ -141,7 +141,7 @@ def test_multiple_keys():
-
-
- @image_comparison(baseline_images=['rgba_alpha'],
-- extensions=['png'], remove_text=True)
-+ extensions=['png'], remove_text=True, tol=0.007)
- def test_alpha_rgba():
- import matplotlib.pyplot as plt
-
-@@ -152,7 +152,7 @@ def test_alpha_rgba():
-
-
- @image_comparison(baseline_images=['rcparam_alpha'],
-- extensions=['png'], remove_text=True)
-+ extensions=['png'], remove_text=True, tol=0.007)
- def test_alpha_rcparam():
- import matplotlib.pyplot as plt
-
-@@ -179,7 +179,7 @@ def test_fancy():
- ncol=2, shadow=True, title="My legend", numpoints=1)
-
-
--@image_comparison(baseline_images=['framealpha'], remove_text=True)
-+@image_comparison(baseline_images=['framealpha'], remove_text=True, 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 bd6ac6862..ea8afd807 100644
---- a/lib/matplotlib/tests/test_pickle.py
-+++ b/lib/matplotlib/tests/test_pickle.py
-@@ -41,7 +41,7 @@ def test_simple():
- pickle.dump(fig, BytesIO(), pickle.HIGHEST_PROTOCOL)
-
-
--@image_comparison(baseline_images=['multi_pickle'],
-+@image_comparison(baseline_images=['multi_pickle'], tol=0.004,
- extensions=['png'], remove_text=True,
- style='mpl20')
- def test_complete():
-diff --git a/lib/matplotlib/tests/test_scale.py b/lib/matplotlib/tests/test_scale.py
-index 9b78377b2..4994ba91d 100644
---- a/lib/matplotlib/tests/test_scale.py
-+++ b/lib/matplotlib/tests/test_scale.py
-@@ -75,7 +75,7 @@ def test_extra_kwargs_raise():
-
-
- @image_comparison(baseline_images=['logscale_nonpos_values'], remove_text=True,
-- extensions=['png'], style='mpl20')
-+ extensions=['png'], style='mpl20', tol=0.008)
- def test_logscale_nonpos_values():
- np.random.seed(19680801)
- xs = np.random.normal(size=int(1e3))
-diff --git a/lib/matplotlib/tests/test_streamplot.py
b/lib/matplotlib/tests/test_streamplot.py
-index aadcf6bfd..473991268 100644
---- a/lib/matplotlib/tests/test_streamplot.py
-+++ b/lib/matplotlib/tests/test_streamplot.py
-@@ -48,7 +48,7 @@ def test_colormap():
- plt.colorbar()
-
-
--@image_comparison(baseline_images=['streamplot_linewidth'])
-+@image_comparison(baseline_images=['streamplot_linewidth'], tol=0.002)
- def test_linewidth():
- X, Y, U, V = velocity_field()
- speed = np.sqrt(U*U + V*V)
-diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py
-index f72ac2c60..781a3850e 100644
---- a/lib/matplotlib/tests/test_units.py
-+++ b/lib/matplotlib/tests/test_units.py
-@@ -39,7 +39,7 @@ class Quantity(object):
-
- # 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'],
-+@image_comparison(baseline_images=['plot_pint'], tol=0.003,
- extensions=['png'], remove_text=False, style='mpl20')
- def test_numpy_facade():
- # Create an instance of the conversion interface and
-@@ -83,7 +83,7 @@ def test_numpy_facade():
-
-
- # Tests gh-8908
--@image_comparison(baseline_images=['plot_masked_units'],
-+@image_comparison(baseline_images=['plot_masked_units'], tol=0.007,
- extensions=['png'], remove_text=True, style='mpl20')
- def test_plot_masked_units():
- data = np.linspace(-5, 5)
---
-2.14.3
-
diff --git a/python-matplotlib.spec b/python-matplotlib.spec
index 154df55..fb83ab4 100644
--- a/python-matplotlib.spec
+++ b/python-matplotlib.spec
@@ -32,9 +32,12 @@
#global rctag rc1
+# The version of FreeType in this Fedora branch.
+%global ftver 2.8
+
Name: python-matplotlib
-Version: 2.1.2
-Release: 4%{?rctag:.%{rctag}}%{?dist}
+Version: 2.2.2
+Release: 1%{?rctag:.%{rctag}}%{?dist}
Summary: Python 2D plotting library
# qt4_editor backend is MIT
License: Python and MIT
@@ -42,19 +45,26 @@ URL:
http://matplotlib.org
Source0:
https://github.com/matplotlib/matplotlib/archive/v%{version}%{?rctag}/mat...
Source1: setup.cfg
-#
https://github.com/matplotlib/matplotlib/pull/10310
-Patch0001: 0001-Add-libdl-on-Unix-like-systems.patch
+#
https://github.com/matplotlib/matplotlib/pull/10929
+Patch0001: 0001-Fix-rctemplate-tests-when-user-config-file-exists.patch
+
+# Because the qhull package stopped shipping pkgconfig files.
+#
https://src.fedoraproject.org/rpms/qhull/pull-request/1
+Patch0002: 0001-Force-using-system-qhull.patch
-# Fedora-specific patches.
-#
https://github.com/QuLogic/mpl-images
-Source1000: matplotlib-%{version}-with-freetype-2.8.tar.gz
+# Fedora-specific patches; see:
#
https://github.com/QuLogic/matplotlib/tree/fedora-patches
-Patch1001: 0001-matplotlibrc-path-search-fix.patch
-Patch1002: 0002-Increase-tolerances-for-FreeType-2.7.1.patch
-Patch1003: 0003-Increase-tolerances-for-FT-2.7.1-and-other-arches.patch
-Patch1004: 0004-Increase-some-tolerances-for-32-bit-systems.patch
#
https://github.com/QuLogic/matplotlib/tree/fedora-patches-non-x86
-Patch1005: 0004-Increase-some-tolerances-for-non-x86-arches.patch
+# Updated test images for new FreeType.
+Source1000:
https://github.com/QuLogic/mpl-images/archive/v%{version}-with-freetype-%...
+# Search in /etc/matplotlibrc:
+Patch1001: 0001-matplotlibrc-path-search-fix.patch
+# Image tolerances for anything but x86_64:
+Patch1002: 0002-Increase-tolerances-for-non-x86_64-arches.patch
+# Image tolerances for 32-bit systems: i686 armv7hl
+Patch1003: 0003-Increase-some-tolerances-for-32-bit-systems.patch
+# Image tolerances for 64-bit (but not x86_64) systems: aarch64 ppc64(le) s390x
+Patch1004: 0003-Increase-some-tolerances-for-non-x86-arches.patch
BuildRequires: freetype-devel
BuildRequires: libpng-devel
@@ -78,9 +88,11 @@ Summary: Python 2D plotting library
BuildRequires: python2-numpy
BuildRequires: python2-pyparsing
BuildRequires: python2-dateutil
+BuildRequires: python2-kiwisolver
BuildRequires: python2-pyside
BuildRequires: python2-setuptools
BuildRequires: python2-six
+BuildRequires: python2-sphinx
BuildRequires: python2-subprocess32
BuildRequires: python2-devel
BuildRequires: python2-backports-functools_lru_cache
@@ -108,6 +120,7 @@ Requires: python2-numpy
Requires: python2-pyparsing
Requires: python2-cycler >= 0.10.0
Requires: python2-dateutil
+Requires: python2-kiwisolver
Requires: python2-backports-functools_lru_cache
Requires: python-matplotlib-data = %{version}-%{release}
%{?backend_subpackage:Requires: python2-matplotlib-%{backend_subpackage}%{?_isa} =
%{version}-%{release}}
@@ -252,17 +265,20 @@ BuildRequires: python3-dateutil
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-gobject
+BuildRequires: python3-kiwisolver
BuildRequires: python3-numpy
BuildRequires: python3-pillow
BuildRequires: python3-pyparsing
BuildRequires: python3-pytz
BuildRequires: python3-six
+BuildRequires: python3-sphinx
Requires: dejavu-sans-fonts
Requires: dvipng
Requires: python-matplotlib-data = %{version}-%{release}
Requires: python3-cairo
Requires: python3-cycler >= 0.10.0
Requires: python3-dateutil
+Requires: python3-kiwisolver
Requires:
python3-matplotlib-%{?backend_subpackage}%{!?backend_subpackage:tk}%{?_isa} =
%{version}-%{release}
%if %{run_tests}
BuildRequires: python3-pytest
@@ -339,24 +355,21 @@ Requires: python3-tkinter
%prep
%autosetup -n matplotlib-%{version}%{?rctag} -N
%patch0001 -p1
+%patch0002 -p1
# Fedora-specific patches follow:
%patch1001 -p1
-# Updated test images for FreeType 2.8.
-gzip -dc %SOURCE1000 | tar xvf -
--transform='s~^\([^/]\+\)/~lib/\1/tests/baseline_images/~'
-%ifarch i686 armv7hl
-# Apply this because 32-bit output is a bit off.
-%patch1002 -p1
-%endif
+# Updated test images for new FreeType.
+gzip -dc %SOURCE1000 | tar xvf -
--transform='s~^mpl-images-%{version}-with-freetype-%{ftver}/\([^/]\+\)/~lib/\1/tests/baseline_images/~'
%ifnarch x86_64
-%patch1003 -p1
+%patch1002 -p1
%endif
%ifarch aarch64 ppc64 ppc64le s390x
-%patch1005 -p1
-%endif
-%ifarch i686
%patch1004 -p1
%endif
+%ifarch i686 armv7hl
+%patch1003 -p1
+%endif
rm -r extern/libqhull
# Copy setup.cfg to the builddir
@@ -436,13 +449,14 @@ MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python2_sitearch} \
xvfb-run -a -s "-screen 0 640x480x24" \
%{__python2} -m pytest --pyargs matplotlib -ra -n $(getconf _NPROCESSORS_ONLN)
\
- -m 'not network' -k 'not test_polycollection_close'
+ -m 'not network' -k 'not test_polycollection_close and not
test_if_rctemplate'
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python3_sitearch} \
xvfb-run -a -s "-screen 0 640x480x24" \
- %{__python3} tests.py -ra -n $(getconf _NPROCESSORS_ONLN) -m 'not
network'
+ %{__python3} tests.py -ra -n $(getconf _NPROCESSORS_ONLN) \
+ -m 'not network' -k 'not test_if_rctemplate'
%endif # run_tests
%files -n python-matplotlib-data
@@ -459,7 +473,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%files -n python2-matplotlib
%license LICENSE/
-%doc README.rst CONTRIBUTING.md
+%doc README.rst
%{python2_sitearch}/*egg-info
%{python2_sitearch}/matplotlib-*-nspkg.pth
%{python2_sitearch}/matplotlib/
@@ -513,7 +527,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%files -n python3-matplotlib
%license LICENSE/
-%doc README.rst CONTRIBUTING.md
+%doc README.rst
%{python3_sitearch}/*egg-info
%{python3_sitearch}/matplotlib-*-nspkg.pth
%{python3_sitearch}/matplotlib/
@@ -559,6 +573,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%{python3_sitearch}/matplotlib/backends/_tkagg.*
%changelog
+* Sat Mar 31 2018 Elliott Sales de Andrade <quantum.analyst(a)gmail.com> - 2.2.2-1
+- Update to latest release
+
* Tue Mar 13 2018 Elliott Sales de Andrade <quantum.analyst(a)gmail.com> - 2.1.2-4
- Run tests in parallel
diff --git a/sources b/sources
index 33a00ad..94d92e1 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,3 @@
SHA512 (matplotlib-2.1.2.tar.gz) =
fd93901b12a7f47cdc36d38d18de43b0cc8623dcd5597cfc1177e63cf90b0c87f718135176e2c077cd1316566a394e09e8e8e9db2ce128ee7f03021cac45543e
SHA512 (matplotlib-2.1.2-with-freetype-2.8.tar.gz) =
abe03cf24d653ecaefcda56b60631b7200d7e2d5078801f61270d5329da8e6767773a1347a1c9c7b457a0a12427c345d70e700c156dedab27275875f5bcbc439
+SHA512 (matplotlib-2.2.2-with-freetype-2.8.tar.gz) =
b31a56ee3594ec50ad6980112b435ae7cb37a0c5826f13997c5ec432c8158e584d3ef58204bff1cd2cb702dc6f050f4daea47576bd1982f40746b424da056d4d
commit ad961d502ce8376dfe1752dff04e0728d62f6e07
Author: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
Date: Tue Mar 13 16:43:27 2018 -0400
Run tests in parallel.
diff --git a/python-matplotlib.spec b/python-matplotlib.spec
index b6a5407..154df55 100644
--- a/python-matplotlib.spec
+++ b/python-matplotlib.spec
@@ -34,7 +34,7 @@
Name: python-matplotlib
Version: 2.1.2
-Release: 3%{?rctag:.%{rctag}}%{?dist}
+Release: 4%{?rctag:.%{rctag}}%{?dist}
Summary: Python 2D plotting library
# qt4_editor backend is MIT
License: Python and MIT
@@ -98,6 +98,7 @@ BuildRequires: python2-cycler >= 0.10.0
%endif
%if %{run_tests}
BuildRequires: python2-pytest
+BuildRequires: python2-pytest-xdist
BuildRequires: python2-cycler >= 0.10.0
BuildRequires: python2-mock
%endif
@@ -265,6 +266,7 @@ Requires: python3-dateutil
Requires:
python3-matplotlib-%{?backend_subpackage}%{!?backend_subpackage:tk}%{?_isa} =
%{version}-%{release}
%if %{run_tests}
BuildRequires: python3-pytest
+BuildRequires: python3-pytest-xdist
%endif
Requires: python3-numpy
Recommends: python3-pillow
@@ -433,13 +435,14 @@ MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python2_sitearch} \
xvfb-run -a -s "-screen 0 640x480x24" \
- %{__python2} -m pytest --pyargs matplotlib -m 'not network' -k 'not
test_polycollection_close' -ra
+ %{__python2} -m pytest --pyargs matplotlib -ra -n $(getconf _NPROCESSORS_ONLN)
\
+ -m 'not network' -k 'not test_polycollection_close'
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python3_sitearch} \
xvfb-run -a -s "-screen 0 640x480x24" \
- %{__python3} tests.py -m 'not network' -ra
+ %{__python3} tests.py -ra -n $(getconf _NPROCESSORS_ONLN) -m 'not
network'
%endif # run_tests
%files -n python-matplotlib-data
@@ -556,6 +559,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%{python3_sitearch}/matplotlib/backends/_tkagg.*
%changelog
+* Tue Mar 13 2018 Elliott Sales de Andrade <quantum.analyst(a)gmail.com> - 2.1.2-4
+- Run tests in parallel
+
* Tue Mar 13 2018 Elliott Sales de Andrade <quantum.analyst(a)gmail.com> - 2.1.2-3
- Cleanup spec file of old conditionals
- Use more python2- dependencies
commit bf010710f1be907655b98d1797537a2ef8bdc92d
Author: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
Date: Tue Mar 13 17:42:07 2018 -0400
Use more python2- dependencies where available.
diff --git a/python-matplotlib.spec b/python-matplotlib.spec
index d431ad8..b6a5407 100644
--- a/python-matplotlib.spec
+++ b/python-matplotlib.spec
@@ -75,24 +75,24 @@ errorcharts, scatterplots, etc, with just a few lines of code.
%package -n python2-matplotlib
Summary: Python 2D plotting library
-BuildRequires: numpy
-BuildRequires: pyparsing
-BuildRequires: python-dateutil
-BuildRequires: python-pyside
-BuildRequires: python-setuptools
-BuildRequires: python-six
-BuildRequires: python-subprocess32
+BuildRequires: python2-numpy
+BuildRequires: python2-pyparsing
+BuildRequires: python2-dateutil
+BuildRequires: python2-pyside
+BuildRequires: python2-setuptools
+BuildRequires: python2-six
+BuildRequires: python2-subprocess32
BuildRequires: python2-devel
BuildRequires: python2-backports-functools_lru_cache
BuildRequires: python2-pillow
-BuildRequires: pytz
+BuildRequires: python2-pytz
%if %{with_html}
BuildRequires: %{_bindir}/pdftops
-# circular dependency: python-basemap requires matplotlib
-BuildRequires: python-basemap
-BuildRequires: python-ipython-sphinx
-BuildRequires: python-numpydoc
-BuildRequires: python-scikit-image
+# circular dependency: python2-basemap requires matplotlib
+BuildRequires: python2-basemap
+BuildRequires: python2-ipython-sphinx
+BuildRequires: python2-numpydoc
+BuildRequires: python2-scikit-image
BuildRequires: python2-colorspacious
BuildRequires: python2-cycler >= 0.10.0
%endif
@@ -103,17 +103,17 @@ BuildRequires: python2-mock
%endif
Requires: dejavu-sans-fonts
Requires: dvipng
-Requires: numpy
-Requires: pyparsing
+Requires: python2-numpy
+Requires: python2-pyparsing
Requires: python2-cycler >= 0.10.0
-Requires: python-dateutil
+Requires: python2-dateutil
Requires: python2-backports-functools_lru_cache
Requires: python-matplotlib-data = %{version}-%{release}
%{?backend_subpackage:Requires: python2-matplotlib-%{backend_subpackage}%{?_isa} =
%{version}-%{release}}
Recommends: python2-pillow
-Requires: python-six
-Requires: python-subprocess32
-Requires: pytz
+Requires: python2-six
+Requires: python2-subprocess32
+Requires: python2-pytz
%if !%{with_bundled_fonts}
Requires: stix-math-fonts
%else
@@ -140,7 +140,7 @@ errorcharts, scatterplots, etc, with just a few lines of code.
%package -n python2-matplotlib-qt4
Summary: Qt4 backend for python-matplotlib
BuildRequires: PyQt4-devel
-Requires: PyQt4
+Requires: python2-PyQt4
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
Requires: python2-matplotlib-qt5
%{?python_provide:%python_provide python2-matplotlib-qt4}
@@ -150,8 +150,8 @@ Requires: python2-matplotlib-qt5
%package -n python2-matplotlib-qt5
Summary: Qt5 backend for python-matplotlib
-BuildRequires: python-qt5
-Requires: python-qt5
+BuildRequires: python2-qt5
+Requires: python2-qt5
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
%{?python_provide:%python_provide python2-matplotlib-qt5}
@@ -200,7 +200,7 @@ Requires: tkinter
Summary: wxPython backend for python-matplotlib
BuildRequires: wxPython-devel
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
-Requires: wxPython
+Requires: python2-wxpython
%{?python_provide:%python_provide python2-matplotlib-wx}
%description -n python2-matplotlib-wx
@@ -211,7 +211,7 @@ Summary: Documentation files for python-matplotlib
%if %{with_html}
BuildRequires: dvipng
BuildRequires: graphviz
-BuildRequires: python-sphinx
+BuildRequires: python2-sphinx
BuildRequires: tex(latex)
BuildRequires: tex-preview
%endif
@@ -558,6 +558,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%changelog
* Tue Mar 13 2018 Elliott Sales de Andrade <quantum.analyst(a)gmail.com> - 2.1.2-3
- Cleanup spec file of old conditionals
+- Use more python2- dependencies
* Mon Feb 05 2018 Karsten Hopp <karsten(a)redhat.com> - 2.1.2-2
- update and fix spec file conditionals
commit f46b703e9615aa7ebaf62b768dfb92c7b5e75373
Author: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
Date: Tue Mar 13 05:45:18 2018 -0400
Trim trailing whitespace.
diff --git a/python-matplotlib.spec b/python-matplotlib.spec
index d3099ec..d431ad8 100644
--- a/python-matplotlib.spec
+++ b/python-matplotlib.spec
@@ -859,7 +859,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
- fix build with new Tkinter which doesn't return an expected value in __version__
* Thu Sep 15 2011 Jef Spaleta <jspaleta(a)fedoraproject.org> - 1.0.1-13
-- apply upstream bugfix for timezone formatting (Bug 735677)
+- apply upstream bugfix for timezone formatting (Bug 735677)
* Fri May 20 2011 Orion Poplawski <orion(a)cora.nwra.com> - 1.0.1-12
- Add Requires dvipng (Bug 684836)
@@ -917,20 +917,20 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
- 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
+- 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
+- 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.
+- 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
+- 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
+- Bump to rebuild against numpy 1.4.0
* Fri Dec 11 2009 Jon Ciesla <limb(a)jcomserv.net> - 0.99.1.2
- Update to 0.99.1.2
@@ -991,7 +991,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
- Rebuild for Tcl/Tk downgrade
* Sat Feb 10 2007 Jef Spaleta <jspaleta(a)gmail.com> 0.90.0-2
-- Release bump for rebuild against new tk
+- Release bump for rebuild against new tk
* Fri Feb 09 2007 Orion Poplawski <orion(a)cora.nwra.com> 0.90.0-1
- Update to 0.90.0
@@ -1053,7 +1053,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
- New upstream version 0.84
* Tue Aug 02 2005 Orion Poplawski <orion(a)cora.nwra.com> 0.83.2-3
-- bump release
+- bump release
* Tue Aug 02 2005 Orion Poplawski <orion(a)cora.nwra.com> 0.83.2-2
- Add Requires: python-numeric, pytz, python-dateutil
commit da0bd4c413a9b6d09505ed7c521b48255420c744
Author: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
Date: Tue Mar 13 05:35:58 2018 -0400
Add changelog entry about cleanup.
diff --git a/python-matplotlib.spec b/python-matplotlib.spec
index 46c7640..d3099ec 100644
--- a/python-matplotlib.spec
+++ b/python-matplotlib.spec
@@ -34,7 +34,7 @@
Name: python-matplotlib
Version: 2.1.2
-Release: 2%{?rctag:.%{rctag}}%{?dist}
+Release: 3%{?rctag:.%{rctag}}%{?dist}
Summary: Python 2D plotting library
# qt4_editor backend is MIT
License: Python and MIT
@@ -556,7 +556,10 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%{python3_sitearch}/matplotlib/backends/_tkagg.*
%changelog
-* Mon Feb 05 2018 Karsten Hopp <karsten(a)redhat.com> - 2.1.2-2}
+* Tue Mar 13 2018 Elliott Sales de Andrade <quantum.analyst(a)gmail.com> - 2.1.2-3
+- Cleanup spec file of old conditionals
+
+* Mon Feb 05 2018 Karsten Hopp <karsten(a)redhat.com> - 2.1.2-2
- update and fix spec file conditionals
* Sun Jan 21 2018 Elliott Sales de Andrade <quantum.analyst(a)gmail.com> - 2.1.2-1
commit c409bffb3d8a545e67a2e7fa6ae70e62b8435b4d
Author: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
Date: Tue Mar 13 05:34:04 2018 -0400
Remove checks for non-Fedora systems.
diff --git a/python-matplotlib.spec b/python-matplotlib.spec
index a457a85..46c7640 100644
--- a/python-matplotlib.spec
+++ b/python-matplotlib.spec
@@ -1,9 +1,3 @@
-%if 0%{?fedora} || 0%{?rhel} > 7
-%global with_python3 1
-%else
-%global with_python3 0
-%endif
-%global __provides_exclude_from .*/site-packages/.*\\.so$
%global with_html 0
# It seems like there's some kind of weird occasional error where a
@@ -14,21 +8,6 @@
# happen.
%global run_tests 1
-
-# On RHEL 7 onwards, don't build with wx:
-%if 0%{?rhel} >= 7
-%global with_wx 0
-%else
-%global with_wx 1
-%endif
-
-# On Fedora 21 onwards, enable Qt5 backend:
-%if 0%{?fedora} || 0%{?rhel} > 7
-%global with_qt5 1
-%else
-%global with_qt5 0
-%endif
-
# the default backend; one of GTK GTKAgg GTKCairo GTK3Agg GTK3Cairo
# CocoaAgg MacOSX Qt4Agg Qt5Agg TkAgg WX WXAgg Agg Cairo GDK PS PDF SVG
%global backend TkAgg
@@ -57,7 +36,6 @@ Name: python-matplotlib
Version: 2.1.2
Release: 2%{?rctag:.%{rctag}}%{?dist}
Summary: Python 2D plotting library
-Group: Development/Libraries
# qt4_editor backend is MIT
License: Python and MIT
URL:
http://matplotlib.org
@@ -137,12 +115,8 @@ Requires: python-six
Requires: python-subprocess32
Requires: pytz
%if !%{with_bundled_fonts}
-%if 0%{?fedora} || 0%{?rhel} > 7
Requires: stix-math-fonts
%else
-Requires: stix-fonts
-%endif
-%else
Provides: bundled(stix-math-fonts)
%endif
%{?python_provide:%python_provide python2-matplotlib}
@@ -165,7 +139,6 @@ errorcharts, scatterplots, etc, with just a few lines of code.
%package -n python2-matplotlib-qt4
Summary: Qt4 backend for python-matplotlib
-Group: Development/Libraries
BuildRequires: PyQt4-devel
Requires: PyQt4
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
@@ -175,10 +148,8 @@ Requires: python2-matplotlib-qt5
%description -n python2-matplotlib-qt4
%{summary}
-%if %{with_qt5}
%package -n python2-matplotlib-qt5
Summary: Qt5 backend for python-matplotlib
-Group: Development/Libraries
BuildRequires: python-qt5
Requires: python-qt5
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
@@ -186,11 +157,9 @@ Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
%description -n python2-matplotlib-qt5
%{summary}
-%endif # with_qt5
%package -n python2-matplotlib-gtk
Summary: GTK backend for python-matplotlib
-Group: Development/Libraries
BuildRequires: gtk2-devel
BuildRequires: pycairo-devel
BuildRequires: pygtk2-devel
@@ -204,7 +173,6 @@ Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
%package -n python2-matplotlib-gtk3
Summary: GTK3 backend for python-matplotlib
-Group: Development/Libraries
# This should be converted to typelib(Gtk) when supported
BuildRequires: gtk3
BuildRequires: pygobject3-base
@@ -218,7 +186,6 @@ Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
%package -n python2-matplotlib-tk
Summary: Tk backend for python-matplotlib
-Group: Development/Libraries
BuildRequires: tcl-devel
BuildRequires: tkinter
BuildRequires: tk-devel
@@ -229,10 +196,8 @@ Requires: tkinter
%description -n python2-matplotlib-tk
%{summary}
-%if %{with_wx}
%package -n python2-matplotlib-wx
Summary: wxPython backend for python-matplotlib
-Group: Development/Libraries
BuildRequires: wxPython-devel
Requires: python2-matplotlib%{?_isa} = %{version}-%{release}
Requires: wxPython
@@ -240,11 +205,9 @@ Requires: wxPython
%description -n python2-matplotlib-wx
%{summary}
-%endif # with_wx
%package -n python2-matplotlib-doc
Summary: Documentation files for python-matplotlib
-Group: Documentation
%if %{with_html}
BuildRequires: dvipng
BuildRequires: graphviz
@@ -280,10 +243,8 @@ Requires: python-matplotlib-data = %{version}-%{release}
%{summary}
%endif
-%if %{with_python3}
%package -n python3-matplotlib
Summary: Python 2D plotting library
-Group: Development/Libraries
BuildRequires: python3-cairo
BuildRequires: python3-cycler >= 0.10.0
BuildRequires: python3-dateutil
@@ -311,12 +272,8 @@ Requires: python3-pyparsing
Requires: python3-pytz
Requires: python3-six
%if !%{with_bundled_fonts}
-%if 0%{?fedora} || 0%{?rhel} > 7
Requires: stix-math-fonts
%else
-Requires: stix-fonts
-%endif
-%else
Provides: bundled(stix-math-fonts)
%endif
%{?python_provide:%python_provide python3-matplotlib}
@@ -334,7 +291,6 @@ errorcharts, scatterplots, etc, with just a few lines of code.
%package -n python3-matplotlib-qt4
Summary: Qt4 backend for python3-matplotlib
-Group: Development/Libraries
BuildRequires: python3-PyQt4-devel
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
Requires: python3-matplotlib-qt5
@@ -344,10 +300,8 @@ Requires: python3-PyQt4
%description -n python3-matplotlib-qt4
%{summary}
-%if %{with_qt5}
%package -n python3-matplotlib-qt5
Summary: Qt5 backend for python3-matplotlib
-Group: Development/Libraries
BuildRequires: python3-qt5
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
Requires: python3-qt5
@@ -355,12 +309,10 @@ Requires: python3-qt5
%description -n python3-matplotlib-qt5
%{summary}
-%endif # with_qt5
# gtk2 never worked in Python 3 afaict, so no need for -gtk subpackage
%package -n python3-matplotlib-gtk3
Summary: GTK3 backend for python3-matplotlib
-Group: Development/Libraries
# This should be converted to typelib(Gtk) when supported
BuildRequires: gtk3
BuildRequires: python3-gobject
@@ -374,7 +326,6 @@ Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
%package -n python3-matplotlib-tk
Summary: Tk backend for python3-matplotlib
-Group: Development/Libraries
BuildRequires: python3-tkinter
Requires: python3-matplotlib%{?_isa} = %{version}-%{release}
Requires: python3-tkinter
@@ -382,7 +333,6 @@ Requires: python3-tkinter
%description -n python3-matplotlib-tk
%{summary}
-%endif
%prep
%autosetup -n matplotlib-%{version}%{?rctag} -N
@@ -442,13 +392,11 @@ popd
# package doesn't drag in dependencies
find examples -name '*.py' -exec chmod a-x '{}' \;
-%if %{with_python3}
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \
xvfb-run %{__python3} setup.py build
# documentation cannot be built with python3 due to syntax errors
#
https://github.com/matplotlib/matplotlib/issues/5805
-%endif
%install
export http_proxy=http://127.0.0.1/
@@ -465,13 +413,11 @@ mv %{buildroot}%{python2_sitearch}/matplotlib/mpl-data \
rm -rf %{buildroot}%{_datadir}/matplotlib/mpl-data/fonts
%endif
-%if %{with_python3}
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data/ \
%{__python3} setup.py install -O1 --skip-build --root=%{buildroot}
chmod +x %{buildroot}%{python3_sitearch}/matplotlib/dates.py
rm -fr %{buildroot}%{python3_sitearch}/matplotlib/mpl-data
-%endif
%if %{run_tests}
%check
@@ -489,13 +435,11 @@ PYTHONPATH=%{buildroot}%{python2_sitearch} \
xvfb-run -a -s "-screen 0 640x480x24" \
%{__python2} -m pytest --pyargs matplotlib -m 'not network' -k 'not
test_polycollection_close' -ra
-%if %{with_python3}
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python3_sitearch} \
xvfb-run -a -s "-screen 0 640x480x24" \
%{__python3} tests.py -m 'not network' -ra
-%endif
%endif # run_tests
%files -n python-matplotlib-data
@@ -536,11 +480,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%{python2_sitearch}/matplotlib/backends/backend_qt4.*
%{python2_sitearch}/matplotlib/backends/backend_qt4agg.*
-%if %{with_qt5}
%files -n python2-matplotlib-qt5
%{python2_sitearch}/matplotlib/backends/backend_qt5.*
%{python2_sitearch}/matplotlib/backends/backend_qt5agg.*
-%endif # with_qt5
%files -n python2-matplotlib-gtk
%{python2_sitearch}/matplotlib/backends/backend_gtk.py*
@@ -556,11 +498,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%{python2_sitearch}/matplotlib/backends/tkagg.py*
%{python2_sitearch}/matplotlib/backends/_tkagg.so
-%if %{with_wx}
%files -n python2-matplotlib-wx
%{python2_sitearch}/matplotlib/backends/backend_wx.*
%{python2_sitearch}/matplotlib/backends/backend_wxagg.*
-%endif # with_wx
%files -n python2-matplotlib-doc
%doc examples
@@ -568,7 +508,6 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%doc doc/build/html/*
%endif
-%if %{with_python3}
%files -n python3-matplotlib
%license LICENSE/
%doc README.rst CONTRIBUTING.md
@@ -599,13 +538,11 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%{python3_sitearch}/matplotlib/backends/backend_qt4agg.*
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt4agg.*
-%if %{with_qt5}
%files -n python3-matplotlib-qt5
%{python3_sitearch}/matplotlib/backends/backend_qt5.*
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5.*
%{python3_sitearch}/matplotlib/backends/backend_qt5agg.*
%{python3_sitearch}/matplotlib/backends/__pycache__/backend_qt5agg.*
-%endif # with_qt5
%files -n python3-matplotlib-gtk3
%{python3_sitearch}/matplotlib/backends/backend_gtk*
@@ -617,7 +554,6 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%{python3_sitearch}/matplotlib/backends/tkagg.*
%{python3_sitearch}/matplotlib/backends/__pycache__/tkagg.*
%{python3_sitearch}/matplotlib/backends/_tkagg.*
-%endif
%changelog
* Mon Feb 05 2018 Karsten Hopp <karsten(a)redhat.com> - 2.1.2-2}
commit 172edad3e8fde2400eacbd9a0a4fc0a89dffff2b
Author: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
Date: Tue Mar 13 05:14:01 2018 -0400
Remove support for Fedora 26.
It doesn't appear to be getting built there and adds extra conditionals.
diff --git a/python-matplotlib.spec b/python-matplotlib.spec
index 8d40e89..a457a85 100644
--- a/python-matplotlib.spec
+++ b/python-matplotlib.spec
@@ -390,7 +390,6 @@ Requires: python3-tkinter
# Fedora-specific patches follow:
%patch1001 -p1
-%if 0%{?fedora} > 26 || 0%{?rhel} > 7
# Updated test images for FreeType 2.8.
gzip -dc %SOURCE1000 | tar xvf -
--transform='s~^\([^/]\+\)/~lib/\1/tests/baseline_images/~'
%ifarch i686 armv7hl
@@ -403,11 +402,6 @@ gzip -dc %SOURCE1000 | tar xvf -
--transform='s~^\([^/]\+\)/~lib/\1/tests/baseli
%ifarch aarch64 ppc64 ppc64le s390x
%patch1005 -p1
%endif
-%else
-# Small tweaks to tolerances for FreeType 2.7.1.
-%patch1002 -p1
-%patch1003 -p1
-%endif
%ifarch i686
%patch1004 -p1
%endif
commit c3e31d8c7e5ee9d8bea0bb0e15d92d379962c223
Author: Elliott Sales de Andrade <quantum.analyst(a)gmail.com>
Date: Tue Mar 13 05:12:47 2018 -0400
Remove old workaround.
The F27+ packages include the correct Requires now.
diff --git a/python-matplotlib.spec b/python-matplotlib.spec
index f7aebe3..8d40e89 100644
--- a/python-matplotlib.spec
+++ b/python-matplotlib.spec
@@ -105,9 +105,6 @@ BuildRequires: python-setuptools
BuildRequires: python-six
BuildRequires: python-subprocess32
BuildRequires: python2-devel
-%if 0%{?fedora} > 26 || 0%{?rhel} > 7
-BuildRequires: python2-backports
-%endif
BuildRequires: python2-backports-functools_lru_cache
BuildRequires: python2-pillow
BuildRequires: pytz
commit bc53b538e3c67f668d725ed03027bee060d737b5
Author: Karsten Hopp <karsten(a)redhat.com>
Date: Mon Feb 5 17:47:47 2018 +0100
update and fix spec file conditionals
diff --git a/python-matplotlib.spec b/python-matplotlib.spec
index e2a5481..f7aebe3 100644
--- a/python-matplotlib.spec
+++ b/python-matplotlib.spec
@@ -1,4 +1,4 @@
-%if 0%{?fedora}
+%if 0%{?fedora} || 0%{?rhel} > 7
%global with_python3 1
%else
%global with_python3 0
@@ -23,7 +23,7 @@
%endif
# On Fedora 21 onwards, enable Qt5 backend:
-%if 0%{?fedora}
+%if 0%{?fedora} || 0%{?rhel} > 7
%global with_qt5 1
%else
%global with_qt5 0
@@ -55,7 +55,7 @@
Name: python-matplotlib
Version: 2.1.2
-Release: 1%{?rctag:.%{rctag}}%{?dist}
+Release: 2%{?rctag:.%{rctag}}%{?dist}
Summary: Python 2D plotting library
Group: Development/Libraries
# qt4_editor backend is MIT
@@ -105,7 +105,7 @@ BuildRequires: python-setuptools
BuildRequires: python-six
BuildRequires: python-subprocess32
BuildRequires: python2-devel
-%if %{fedora} > 26
+%if 0%{?fedora} > 26 || 0%{?rhel} > 7
BuildRequires: python2-backports
%endif
BuildRequires: python2-backports-functools_lru_cache
@@ -140,7 +140,7 @@ Requires: python-six
Requires: python-subprocess32
Requires: pytz
%if !%{with_bundled_fonts}
-%if 0%{?fedora}
+%if 0%{?fedora} || 0%{?rhel} > 7
Requires: stix-math-fonts
%else
Requires: stix-fonts
@@ -314,7 +314,7 @@ Requires: python3-pyparsing
Requires: python3-pytz
Requires: python3-six
%if !%{with_bundled_fonts}
-%if 0%{?fedora}
+%if 0%{?fedora} || 0%{?rhel} > 7
Requires: stix-math-fonts
%else
Requires: stix-fonts
@@ -393,7 +393,7 @@ Requires: python3-tkinter
# Fedora-specific patches follow:
%patch1001 -p1
-%if %{fedora} > 26
+%if 0%{?fedora} > 26 || 0%{?rhel} > 7
# Updated test images for FreeType 2.8.
gzip -dc %SOURCE1000 | tar xvf -
--transform='s~^\([^/]\+\)/~lib/\1/tests/baseline_images/~'
%ifarch i686 armv7hl
@@ -629,6 +629,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%endif
%changelog
+* Mon Feb 05 2018 Karsten Hopp <karsten(a)redhat.com> - 2.1.2-2}
+- update and fix spec file conditionals
+
* Sun Jan 21 2018 Elliott Sales de Andrade <quantum.analyst(a)gmail.com> - 2.1.2-1
- Update to latest release