Compare commits

...

170 Commits
f17 ... f32

Author SHA1 Message Date
Elliott Sales de Andrade
ec400d341f Update patches for non-x86. 2020-06-20 03:52:08 -04:00
Elliott Sales de Andrade
bea895839b Update to latest version. 2020-06-20 03:06:07 -04:00
Elliott Sales de Andrade
3fa499ba45 Update to latest version. 2020-03-18 03:28:30 -04:00
Elliott Sales de Andrade
ea129e4586 Fix a flaky test. 2020-03-04 00:35:37 -05:00
Elliott Sales de Andrade
e6f3591340 Update to 3.2.0. 2020-03-03 23:05:44 -05:00
Fedora Release Engineering
304a359289 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-30 13:17:29 +00:00
Miro Hrončok
8d98548134 Use supported attribute to check pillow version
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1789664
2020-01-22 13:05:01 +01:00
Elliott Sales de Andrade
1f37c6ab3a Update to 3.1.2. 2019-11-22 20:10:32 -05:00
Elliott Sales de Andrade
c533793071 Backport bool deprecation warning fix. 2019-09-06 21:15:41 -04:00
Miro Hrončok
e8c7e2c6d2 Revert "Temporarily skip the tests"
This reverts commit cb1f3493dc.
2019-08-18 20:58:48 +02:00
Miro Hrončok
cb1f3493dc Temporarily skip the tests 2019-08-18 20:43:21 +02:00
Miro Hrončok
3009a9a10c Rebuilt for Python 3.8 2019-08-18 20:19:46 +02:00
Miro Hrončok
685e53f794 BuildRequire glibc-langpack-en
This avoids:

    WARNING  matplotlib.testing:__init__.py:39 Could not set locale to
    English/United States. Some date-related tests may fail.
2019-08-13 11:28:10 +02:00
Elliott Sales de Andrade
c4446bc9c0 Skip wx test on ppc64le.
See https://bugzilla.redhat.com/show_bug.cgi?id=1738752.
2019-08-08 01:22:32 -04:00
Elliott Sales de Andrade
2441db0faa Backport patch for NumPy 1.17. 2019-08-07 21:51:04 -04:00
Elliott Sales de Andrade
9046bbb237 Update to 3.1.1 and FreeType 2.10.0. 2019-08-07 21:26:57 -04:00
Fedora Release Engineering
3652785c8e - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-26 14:28:02 +00:00
Zbigniew Jędrzejewski-Szmek
6ae3a9e1d1 Remove comment after %endif
RPM 4.15 complains.
2019-07-03 11:55:57 +02:00
Zbigniew Jędrzejewski-Szmek
831ec4cba0 Update Obsoletes to be later than the last python2 builds 2019-07-03 11:55:18 +02:00
Miro Hrončok
49e6227f01 Skip test_tinypages
tmpdir = local('/tmp/pytest-of-mockbuild/pytest-0/popen-gw2/test_tinypages0')
    def test_tinypages(tmpdir):
        html_dir = pjoin(str(tmpdir), 'html')
        doctree_dir = pjoin(str(tmpdir), 'doctrees')
        # Build the pages with warnings turned into errors
        cmd = [sys.executable, '-msphinx', '-W', '-b', 'html', '-d', doctree_dir,
               pjoin(dirname(__file__), 'tinypages'), html_dir]
        proc = Popen(cmd, stdout=PIPE, stderr=PIPE, universal_newlines=True)
        out, err = proc.communicate()
        assert proc.returncode == 0, \
            "sphinx build failed with stdout:\n{}\nstderr:\n{}\n".format(out, err)
        if err:
            pytest.fail("sphinx build emitted the following warnings:\n{}"
>                       .format(err))
E           Failed: sphinx build emitted the following warnings:
E           /usr/lib/python3.7/site-packages/sphinx/util/docutils.py:311: RemovedInSphinx30Warning: function based directive support is now deprecated. Use class based directive instead.
E             RemovedInSphinx30Warning)
../../BUILDROOT/python-matplotlib-3.0.3-1.fc31.x86_64/usr/lib64/python3.7/site-packages/matplotlib/sphinxext/tests/test_tinypages.py:28: Failed
2019-04-23 13:33:26 +02:00
Miro Hrončok
120f1b74da Support pytest 4 2019-04-23 13:33:26 +02:00
Elliott Sales de Andrade
b5e6655ad8 Update to latest version. 2019-03-04 04:05:00 -05:00
Miro Hrončok
6e771d1530 https://fedoraproject.org/wiki/Changes/Python_Extension_Flags 2019-02-13 00:54:28 +01:00
Fedora Release Engineering
b1b97b1ed1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-02 07:42:18 +00:00
Elliott Sales de Andrade
17130085de Fix missing changelog. 2018-11-13 19:36:37 -05:00
Elliott Sales de Andrade
f171297f40 Update to latest version. 2018-11-10 04:33:30 -05:00
Elliott Sales de Andrade
af995aa143 Upload sources for 3.0.1. 2018-10-31 05:07:20 -04:00
Elliott Sales de Andrade
308245a86e Remove unused patch. 2018-10-31 04:51:30 -04:00
Elliott Sales de Andrade
7424178997 Update to 3.0.1. 2018-10-31 04:07:46 -04:00
Miro Hrončok
cc106d1c4a Obsolete old python-matplotlib-data* to prevent conflicts and provide an upgrade path 2018-09-21 12:29:49 +02:00
Elliott Sales de Andrade
7901631a85 Add correct license for bundled fonts. 2018-09-21 04:25:34 -04:00
Elliott Sales de Andrade
b4eba4ae21 Rename *data packages to avoid conflict with python2. 2018-09-19 14:47:47 -04:00
Elliott Sales de Andrade
b8683378dd Update changelog. 2018-09-19 14:46:05 -04:00
Elliott Sales de Andrade
9fde50abab Stop setting a default backend.
It will be picked automatically by Matplotlib.
2018-09-19 14:42:58 -04:00
Elliott Sales de Andrade
ed3fa9581d Remove unnecessary dependencies. 2018-09-19 04:39:50 -04:00
Elliott Sales de Andrade
c08eccf6ad Run Qt5 tests separately to not conflict with Qt4. 2018-09-19 03:23:05 -04:00
Elliott Sales de Andrade
a0fbf93967 Add patch to fix Qt4 backends. 2018-09-18 23:52:36 -04:00
Elliott Sales de Andrade
6f3ec368b4 Stop setting explicit backend during testing. 2018-09-18 22:01:33 -04:00
Elliott Sales de Andrade
d2fa0263b8 Update to final 3.0.0. 2018-09-18 04:51:42 -04:00
Elliott Sales de Andrade
c385e2c1a9 Update to 3.0.0rc2. 2018-08-29 00:38:38 -04:00
Elliott Sales de Andrade
6995ee3297 Update backend package splits.
There is a WX backend that was never split, and without its proper
dependencies. Also, there are new *Cairo backends in this version.
2018-08-28 03:17:29 -04:00
Elliott Sales de Andrade
19b5ff96fa Remove old Fedora FreeType support.
This will not be built on Fedora < 29.
2018-08-28 03:17:29 -04:00
Elliott Sales de Andrade
1dcb7afa2a Update to 3.0.0rc1. 2018-08-28 03:17:28 -04:00
Elliott Sales de Andrade
ee42f59462 Add explicit gcc/gcc-c++ BR. 2018-08-18 02:15:48 -04:00
Elliott Sales de Andrade
8293bc2589 Remove Python 2 subpackages. 2018-08-18 02:15:45 -04:00
Elliott Sales de Andrade
20e40c3953 Don't run test_nose_image_comparison in parallel.
These tests overwrite certain names that causes issues when testing in
parallel. These tests will be gone with Matplotlib 3.0, so I don't want
to spend much time fixing them. Just ignore them and run in serial
afterwards.
2018-08-17 23:59:22 -04:00
Elliott Sales de Andrade
a6c4a06cef Update to latest version. 2018-08-13 21:27:10 -04:00
Elliott Sales de Andrade
862f207d27 Add missing texlive-cm BR. 2018-07-20 18:19:21 -04:00
Elliott Sales de Andrade
6f741c4a02 Don't use unversioned Python in build. 2018-07-20 16:23:12 -04:00
Fedora Release Engineering
b89d120a97 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-14 00:55:43 +00:00
Miro Hrončok
1b8cd73b7e Fix the release tag 2018-06-22 16:52:47 +02:00
Lumir Balhar
69d38c5f1e Fix tolerances and a timeout to fix build with Python 3.7 2018-06-22 09:50:26 +02:00
Miro Hrončok
725edd957b Rebuilt for Python 3.7 2018-06-19 11:08:46 +02:00
Elliott Sales de Andrade
c48ca2e7fd Add python?-matplotlib-test-data subpackages. 2018-04-27 03:51:51 -04:00
Elliott Sales de Andrade
5c2bf08c46 Remove bytecode produced by pytest. 2018-04-17 02:36:20 -04:00
Elliott Sales de Andrade
7930b4df8d Remove old sources. 2018-04-17 02:21:12 -04:00
Dominik 'Rathann' Mierzejewski
ffa18cbcd2 add missed 2.2.2 source 2018-04-12 14:36:42 +02:00
Elliott Sales de Andrade
c0a5a7d07f Add support for Rawhide / FreeType 2.9. 2018-04-01 15:14:21 -04:00
Elliott Sales de Andrade
c1840d0738 Skip another test that uses mpl_toolkits on Py2. 2018-04-01 03:44:29 -04:00
Elliott Sales de Andrade
c89bd06dd9 Skip flaky slowness test. 2018-03-31 20:08:43 -04:00
Elliott Sales de Andrade
b11ac2671c Patch out the rctemplate tests properly. 2018-03-31 20:07:46 -04:00
Elliott Sales de Andrade
15844872fc Update to latest version. 2018-03-31 03:28:44 -04:00
Elliott Sales de Andrade
ad961d502c Run tests in parallel. 2018-03-13 17:47:17 -04:00
Elliott Sales de Andrade
bf010710f1 Use more python2- dependencies where available. 2018-03-13 17:42:07 -04:00
Elliott Sales de Andrade
f46b703e96 Trim trailing whitespace. 2018-03-13 17:40:02 -04:00
Elliott Sales de Andrade
da0bd4c413 Add changelog entry about cleanup. 2018-03-13 17:40:02 -04:00
Elliott Sales de Andrade
c409bffb3d Remove checks for non-Fedora systems. 2018-03-13 17:40:01 -04:00
Elliott Sales de Andrade
172edad3e8 Remove support for Fedora 26.
It doesn't appear to be getting built there and adds extra conditionals.
2018-03-13 05:25:32 -04:00
Elliott Sales de Andrade
c3e31d8c7e Remove old workaround.
The F27+ packages include the correct Requires now.
2018-03-13 05:23:20 -04:00
Karsten Hopp
bc53b538e3 update and fix spec file conditionals 2018-02-05 17:47:47 +01:00
Elliott Sales de Andrade
14e86457fd Add patch to link with libdl. 2018-01-24 15:09:42 -05:00
Elliott Sales de Andrade
8d6885671d Increase tolerances on non-x86 systems. 2018-01-24 03:07:15 -05:00
Elliott Sales de Andrade
b470c189c1 Also apply tolerance patch for 32-bit systems. 2018-01-24 03:07:15 -05:00
Elliott Sales de Andrade
75d0d8966b Add test images re-generated with FreeType 2.8. 2018-01-24 03:07:14 -05:00
Elliott Sales de Andrade
0326098544 Update to latest release. 2018-01-21 04:05:53 -05:00
Elliott Sales de Andrade
2d712efe1e Update to latest version. 2017-12-10 05:16:41 -05:00
Elliott Sales de Andrade
09769170a4 Add changelog for update. 2017-10-16 02:44:45 -04:00
Elliott Sales de Andrade
3f6380df61 Increase some tolerances for 32-bit systems. 2017-10-15 22:31:31 -04:00
Elliott Sales de Andrade
c9345fa6ce Simplify and update patches. 2017-10-15 18:16:56 -04:00
Elliott Sales de Andrade
4cf6018279 Use 24-bit screen for Xvfb.
Without this mode, the Qt5 test crashes.
2017-10-07 04:44:54 -04:00
Elliott Sales de Andrade
f28833ef2d Disable broken tests. 2017-10-07 03:15:09 -04:00
Elliott Sales de Andrade
58a05487aa Update to final 2.1.0 release. 2017-10-06 19:29:27 -04:00
Elliott Sales de Andrade
5ff9cbe460 Update to 2.1.0 rc1. 2017-10-02 23:20:12 -04:00
Elliott Sales de Andrade
730689d98e Update to Matplotlib 2.0.2. 2017-09-28 02:40:53 -04:00
Elliott Sales de Andrade
14e87c4546 Update to 2.0.1. 2017-09-28 02:36:10 -04:00
Elliott Sales de Andrade
e9a5a6f0c0 Remove outdated patches. 2017-09-27 19:58:07 -04:00
Fedora Release Engineering
68a10c0be2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild 2017-08-03 06:50:30 +00:00
Fedora Release Engineering
cf584d71bb - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild 2017-07-27 10:52:41 +00:00
Peter Robinson
c20c3de8d0 Fix NVR 2017-03-12 13:40:50 +00:00
Thomas Spura
33684553c0 Remove copyrighted file from tarball (gh-8034) 2017-03-08 22:51:19 +01:00
Fedora Release Engineering
0505957232 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild 2017-02-11 09:33:59 +00:00
Dan Horák
886c137f30 - Apply the 'aarch64' test tolerance patch on s390(x) also 2017-01-25 16:54:58 +01:00
Orion Poplawski
61b48deb75 Install tests via setup.cfg 2017-01-20 11:33:15 -07:00
Orion Poplawski
af22a586b1 Update to 2.0.0 final 2017-01-20 10:07:45 -07:00
Adam Williamson
2e2f0e7aa2 Bump to rc2, fix more big-endian issues, re-enable tests 2017-01-10 20:59:39 -08:00
Adam Williamson
cab430591a Fix another integer type issue which caused more issues on ppc64 2017-01-09 23:33:01 -08:00
Adam Williamson
cf0338c697 Fix int type conversion error that broke text rendering on ppc64 2017-01-08 18:22:45 -08:00
Charalampos Stratakis
08fc8aa374 Rebuild for Python 3.6 2016-12-14 00:52:43 +01:00
Dan Horák
82ec7425cf - disable tests on some alt-arches to unblock depending builds 2016-10-24 14:53:51 +02:00
Dominik 'Rathann' Mierzejewski
8c2171471b add missing runtime dependencies for python2 package 2016-09-26 15:50:02 +02:00
Dominik 'Rathann' Mierzejewski
b295321e02 Update to 2.0.0b4
- Drop upstreamed or obsolete patches
- python-cycler >= 0.10.0 is required
- move around Requires and BRs and sort more or less alphabetically
- don't ship baseline images for tests (like Debian)
- Require stix fonts only when they're not bundled
- disable HTML doc building for bootstrapping 2.0.x series
- relax image rendering tests tolerance due to freetype version differences
- disable some failing tests on aarch64 for now
2016-09-22 15:12:52 +02:00
Fedora Release Engineering
00a8b9c8fd - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages 2016-07-19 10:25:39 +00:00
Dominik Mierzejewski
844271bb32 Update to 1.5.2rc2.
- Drop wrong hunk from use-system-six patch.
- Patch new qhull paths on F25+ instead of using sed.
- Rebase failing tests patch.
2016-06-18 03:08:09 +02:00
Dominik Mierzejewski
da083597a2 patch new qhull paths on F24+ instead of using sed 2016-06-18 00:05:02 +02:00
Dominik Mierzejewski
1c7f1a4e48 drop wrong hunk from use-system-six patch 2016-06-18 00:00:23 +02:00
Dominik 'Rathann' Mierzejewski
959576b111 add URLs for issues related to patches 2016-06-15 15:06:00 +02:00
Dominik 'Rathann' Mierzejewski
a402cee11b drop obsolete stuff
- drop conditions on EOL Fedora versions
- drop unused basepy3dir macro
2016-06-15 15:00:52 +02:00
Dominik Mierzejewski
ee7e32500b Upstream no longer ships non-free images, use pristine source. 2016-06-03 15:06:15 +02:00
Dominik Mierzejewski
0316efe86f Unbundle python-six (#1336740).
- Run tests (and temporarily disable failing ones).
- Use upstream-recommended way of running tests in parallel.
- python2-cycler and -mock are required for running tests.
2016-06-02 16:05:01 +02:00
Ralf Corsépius
a6629ee97c Fix typo. 2016-04-30 19:19:30 +02:00
Ralf Corsépius
267dd5c6f4 Rebuild for qhull-2015.2-1.
- Reflect qhull_a.h's location having changed.
2016-04-30 19:18:22 +02:00
Orion Poplawski
ecfdac6c70 Add requires python-cycler 2016-04-06 20:49:35 -06:00
Jon Ciesla
632ebab3f1 BR fixes. 2016-04-05 12:21:34 -04:00
Thomas Spura
ae3945e801 Add BR: python-ipython-sphinx for building docs 2016-04-04 14:11:36 +02:00
Thomas Spura
8314ea342f Upload sources for 1.5.1 2016-04-04 13:30:10 +02:00
Thomas Spura
760f924558 update to 1.5.1 (#1276806)
Further fixes/changes:
- Add missing requires of dvipng to python3-matplotlib (#1270202)
- use bundled agg (#1276806)
- Drop cxx patch (was dropped upstream)
- Regenerate search path patch2
2016-04-04 13:26:01 +02:00
Thomas Spura
8e6fb6a047 Require the qt5 subpackage from the qt4 subpackage (#1219556) 2016-04-04 12:40:34 +02:00
Thomas Spura
95c4d0eaf5 Use bundled version of agg
This was discussed in bug #1276806 and the agg package (which is incompatible
to matplotlib's version anyway) will be retired.
2016-04-04 12:33:40 +02:00
Thomas Spura
cfae272b51 Use github sources in generate-tarball 2016-04-04 12:29:44 +02:00
Fedora Release Engineering
c901c6602b - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild 2016-02-04 20:08:25 +00:00
Thomas Spura
96f1b73a85 Fix another requires of the main package 2016-01-13 10:37:45 +01:00
Thomas Spura
e065ba8c72 Bump release 2016-01-07 19:16:00 +01:00
Thomas Spura
108153e46c Fix requiring the correct backend from the main package 2016-01-07 19:14:44 +01:00
Thomas Spura
69fbdf849b regenerate tarball to exclude lena image (#1295174) 2016-01-07 10:50:10 +01:00
Thomas Spura
a0ff1b7b0d Add python2 subpackages and use python_provide 2015-11-15 14:45:49 +01:00
Thomas Spura
a9a2c96250 Replace tabs with spaces 2015-11-15 14:16:29 +01:00
Thomas Spura
5ddd160fd3 Pick upstream patch for fixing the gdk backend #1231748 2015-11-15 14:15:25 +01:00
Peter Robinson
13c730c10e - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 2015-11-10 16:21:49 +00:00
Dennis Gilmore
13ef95ae8f - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild 2015-06-18 19:53:45 +00:00
Kalev Lember
b7fd65cd9f Rebuilt for GCC 5 C++11 ABI change 2015-05-02 16:58:37 +02:00
Zbigniew Jędrzejewski-Szmek
b9a2f5516d Modernize macro usage 2015-02-26 00:19:20 -05:00
Zbigniew Jędrzejewski-Szmek
9411cfc02e Use one dir for Python 2 and 3 builds
Because of __pycache__ and .so suffix in Python 3, nothing should conflict.
2015-02-26 00:19:20 -05:00
Zbigniew Jędrzejewski-Szmek
9c2074e497 Split out more backend subpackages 2015-02-25 23:42:38 -05:00
Zbigniew Jędrzejewski-Szmek
732ad8bbfe Simplify ifdeffery a bit 2015-02-25 21:38:17 -05:00
Zbigniew Jędrzejewski-Szmek
8c9cc20e2a Use %license 2015-02-25 00:16:39 -05:00
Zbigniew Jędrzejewski-Szmek
76883b8317 Add dependency on python-scikit-image, dot, tex-preview
It seems to be used in documentation generation.
2015-02-25 00:16:19 -05:00
Zbigniew Jędrzejewski-Szmek
98dd5e3da2 New sources 2015-02-24 23:07:02 -05:00
Zbigniew Jędrzejewski-Szmek
dd3b8abfa9 Pull in changes from https://github.com/QuLogic/rpmbuild-specs 2015-02-24 22:17:01 -05:00
Peter Robinson
3d4898c537 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild 2014-08-17 21:24:49 +00:00
Dennis Gilmore
3b5c19b1c1 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild 2014-06-07 16:20:47 -05:00
Jaroslav Škarvada
d42870f60f - Rebuilt for https://fedoraproject.org/wiki/Changes/f21tcl86 2014-05-21 12:33:05 +02:00
Slavek Kabrda
68e041327a Rebuilt for https://fedoraproject.org/wiki/Changes/Python_3.4 2014-05-16 13:40:58 +02:00
pcpa
7731b0f8b4 Make TkAgg the default backend 2014-02-11 12:17:25 -02:00
pcpa
8736c81a32 Disable check because it randomly fails in koji build 2014-01-28 16:05:45 -02:00
pcpa
12e8a6231d Cconditionally to bundle fonts (#1047559) 2014-01-28 14:50:22 -02:00
Thomas Spura
b69e56e8d0 Also actually add setup.cfg 2014-01-25 17:22:54 +01:00
Thomas Spura
be26c9bf21 Update to 1.3.1 and use GTKAgg backend
bugs closed: #1030396, #982793, #1049624
2014-01-25 17:06:52 +01:00
Thomas Spura
f7ffbd877f BR: python-numpydoc when building html docs 2013-08-08 11:29:07 +02:00
Thomas Spura
14b1524911 Also fix day of last changelog entry 2013-08-07 15:59:17 +02:00
Thomas Spura
674876c696 Fix Changelog date entry 2013-08-07 15:58:02 +02:00
Thomas Spura
81fc2e8024 update to new version
- use xz to compress sources
- drop fontconfig patch (upstream)
- drop tk patch (upstream solved build issue differently)
- redo use system agg patch
- delete bundled python-pycxx headers
- fix requires of python3-matplotlib-qt (fixes #988412)
2013-08-07 15:53:33 +02:00
Dennis Gilmore
0a7be6ae46 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild 2013-08-04 03:23:38 -05:00
Jon Ciesla
e5fc5ec392 agg rebuild. 2013-06-10 08:13:13 -05:00
Thomas Spura
90bbb1ede9 include __pycache__ files in correct subpackages on python3 2013-04-11 09:48:33 +02:00
Thomas Spura
c4143b65b0 use python3 version in python3-matplotlib-qt4 (#915727) 2013-04-10 15:58:01 +02:00
Thomas Spura
83a27676aa Decode output of subprocess to utf-8 or regex will fail (#928326) 2013-04-03 02:24:20 +02:00
pcpa
adaf51ea57 Stix-fonts are a requires, not build requires 2013-04-02 13:26:23 -03:00
pcpa
ab00be2ba0 Make stix-fonts a requires of matplotlib (#928326) 2013-04-02 13:20:33 -03:00
pcpa
b2c1943ea5 Correct rhbz #908717, #912843 and #928326 2013-03-28 16:13:18 -03:00
Dennis Gilmore
c89b645d96 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild 2013-02-14 13:50:08 -06:00
pcpa
b58a0f66d3 Address side effects of using fontconfig by default 2013-01-16 18:49:17 -02:00
pcpa
eb9a122389 Use fontconfig by default (#885307) 2013-01-16 13:59:10 -02:00
David Malcolm
11c0529c89 remove wx support for rhel >= 7 2013-01-03 15:16:14 -05:00
pcpa
bce7fc7101 Do not run install under xvfb-run, it causes koji build to fail. 2012-12-05 00:16:10 -02:00
pcpa
f2d3f53a8d Correct wrong dependency of main package on the tk backend.
- Reinstantiate wx backend for python2.x.
- Run setup.py under xvfb-run to detect and default to gtk backend (#883502)
- Split qt4 backend subpackage and add proper requires for it.
- Correct wrong regex in tcl libdir patch.
2012-12-04 23:31:08 -02:00
pcpa
03883d02e8 Obsolete python-matplotlib-wx for clean updates.
The python-matplotlib-wx package was only two python files (sans pyc & pyo),
that actually now are merged in the main package. This is a packaging issue
that should be corrected by also adding extra backend subpackages, but those
need extra packages in fedora. There are actually several other backends
that were in the main package, but the ones with .so files are split (main
package and tk backend).
2012-11-27 20:04:23 -02:00
pcpa
5e8c5cddc3 Update metadata after fedpkg new-sources 2012-11-27 18:24:48 -02:00
pcpa
cfeed65034 Update to matplotlib 1.2.0 (#837156) 2012-11-27 18:01:54 -02:00
Dennis Gilmore
8a5f96fc9d - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild 2012-07-21 02:08:31 -05:00
David Malcolm
2114656575 1.0.1-20: remove wx support for rhel >= 7
* Wed Apr 18 2012 David Malcolm <dmalcolm@redhat.com> - 1.0.1-20
- remove wx support for rhel >= 7
2012-04-18 16:25:06 -04:00
17 changed files with 2159 additions and 649 deletions

48
.gitignore vendored
View File

@@ -1,3 +1,51 @@
matplotlib-1.0.0-without-gpc.tar.gz
/matplotlib-1.0.1-without-gpc.tar.gz
/mpl_sampledata-1.0.1.tar.gz
/matplotlib-1.2.0-without-gpc.tar.gz
/matplotlib-1.3.0-without-gpc.tar.xz
/matplotlib-1.3.1-without-gpc.tar.xz
/matplotlib-1.4.3-without-gpc.tar.xz
/matplotlib-1.4.3-without-extern.tar.xz
/matplotlib-1.5.1-without-extern.tar.xz
/matplotlib-1.5.1.tar.gz
/matplotlib-1.5.2rc2.tar.gz
/matplotlib-2.0.0b4.tar.gz
/matplotlib-2.0.0rc2.tar.gz
/matplotlib-2.0.0.tar.gz
/matplotlib-2.0.0-without-copyrighted.tar.xz
/matplotlib-2.0.1.tar.gz
/matplotlib-2.0.2.tar.gz
/matplotlib-2.1.0rc1.tar.gz
/matplotlib-2.1.0.tar.gz
/matplotlib-2.1.1.tar.gz
/matplotlib-2.1.2.tar.gz
/matplotlib-2.1.2-with-freetype-2.8.tar.gz
/matplotlib-2.2.2.tar.gz
/matplotlib-2.2.2-with-freetype-2.8.tar.gz
/matplotlib-2.2.2-with-freetype-2.9.tar.gz
/matplotlib-2.2.3.tar.gz
/matplotlib-2.2.3-with-freetype-2.8.tar.gz
/matplotlib-2.2.3-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.0rc1.tar.gz
/matplotlib-3.0.0rc1-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.0rc2.tar.gz
/matplotlib-3.0.0rc2-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.0.tar.gz
/matplotlib-3.0.0-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.1.tar.gz
/matplotlib-3.0.1-with-freetype-2.9.1.tar.gz
/matplotlib-3.0.2.tar.gz
/matplotlib-3.0.3.tar.gz
/matplotlib-3.1.0rc1.tar.gz
/matplotlib-3.1.0.tar.gz
/matplotlib-3.1.0-with-freetype-2.10.0.tar.gz
/matplotlib-3.1.1.tar.gz
/matplotlib-3.1.1-with-freetype-2.10.0.tar.gz
/matplotlib-3.1.2.tar.gz
/matplotlib-3.2.0rc3.tar.gz
/matplotlib-3.2.0rc3-with-freetype-2.10.1.tar.gz
/matplotlib-3.2.0.tar.gz
/matplotlib-3.2.0-with-freetype-2.10.1.tar.gz
/matplotlib-3.2.1.tar.gz
/matplotlib-3.2.2.tar.gz
/matplotlib-3.2.2-with-freetype-2.10.1.tar.gz

View File

@@ -1,188 +0,0 @@
--- a/lib/matplotlib/axes.py
+++ b/lib/matplotlib/axes.py
@@ -2679,18 +2679,20 @@ class Axes(martist.Artist):
def xaxis_date(self, tz=None):
"""Sets up x-axis ticks and labels that treat the x data as dates.
- *tz* is the time zone to use in labeling dates. Defaults to rc value.
+ *tz* is a timezone string or :class:`tzinfo` instance.
+ Defaults to rc value.
"""
# should be enough to inform the unit conversion interface
- # dates are comng in
- self.xaxis.axis_date()
+ # dates are coming in
+ self.xaxis.axis_date(tz)
def yaxis_date(self, tz=None):
"""Sets up y-axis ticks and labels that treat the y data as dates.
- *tz* is the time zone to use in labeling dates. Defaults to rc value.
+ *tz* is a timezone string or :class:`tzinfo` instance.
+ Defaults to rc value.
"""
- self.yaxis.axis_date()
+ self.yaxis.axis_date(tz)
def format_xdata(self, x):
"""
@@ -3808,7 +3810,7 @@ class Axes(martist.Artist):
*fmt*: string
The plot format string.
- *tz*: [ None | timezone string ]
+ *tz*: [ None | timezone string | :class:`tzinfo` instance]
The time zone to use in labeling dates. If *None*, defaults to rc
value.
diff --git a/lib/matplotlib/axis.py b/lib/matplotlib/axis.py
index 85e078c..a825d8e 100644
--- a/lib/matplotlib/axis.py
+++ b/lib/matplotlib/axis.py
@@ -1249,21 +1249,21 @@ class Axis(artist.Artist):
def update_units(self, data):
"""
introspect *data* for units converter and update the
- axis.converter instance if necessary. Return *True* is *data* is
- registered for unit conversion
+ axis.converter instance if necessary. Return *True*
+ if *data* is registered for unit conversion.
"""
converter = munits.registry.get_converter(data)
- if converter is None: return False
+ if converter is None:
+ return False
neednew = self.converter!=converter
self.converter = converter
default = self.converter.default_units(data, self)
- #print 'update units: default="%s", units=%s"'%(default, self.units)
+ #print 'update units: default=%s, units=%s'%(default, self.units)
if default is not None and self.units is None:
self.set_units(default)
-
if neednew:
self._update_axisinfo()
return True
@@ -1484,14 +1484,21 @@ class Axis(artist.Artist):
self.major.locator.zoom(direction)
- def axis_date(self):
+ def axis_date(self, tz=None):
"""
Sets up x-axis ticks and labels that treat the x data as dates.
+ *tz* is a :class:`tzinfo` instance or a timezone string.
+ This timezone is used to create date labels.
"""
+ # By providing a sample datetime instance with the desired
+ # timezone, the registered converter can be selected,
+ # and the "units" attribute, which is the timezone, can
+ # be set.
import datetime
- # should be enough to inform the unit conversion interface
- # dates are comng in
- self.update_units(datetime.date(2009,1,1))
+ if isinstance(tz, (str, unicode)):
+ import pytz
+ tz = pytz.timezone(tz)
+ self.update_units(datetime.datetime(2009,1,1,0,0,0,0,tz))
class XAxis(Axis):
diff --git a/lib/matplotlib/dates.py b/lib/matplotlib/dates.py
index 7a2f9f3..9018315 100644
--- a/lib/matplotlib/dates.py
+++ b/lib/matplotlib/dates.py
@@ -1104,15 +1104,26 @@ def weeks(w):
class DateConverter(units.ConversionInterface):
- """The units are equivalent to the timezone."""
+ """
+ Converter for datetime.date and datetime.datetime data,
+ or for date/time data represented as it would be converted
+ by :func:`date2num`.
+
+ The 'unit' tag for such data is None or a tzinfo instance.
+ """
@staticmethod
def axisinfo(unit, axis):
- 'return the unit AxisInfo'
- # make sure that the axis does not start at 0
+ """
+ Return the :class:`~matplotlib.units.AxisInfo` for *unit*.
+
+ *unit* is a tzinfo instance or None.
+ The *axis* argument is required but not used.
+ """
+ tz = unit
- majloc = AutoDateLocator(tz=unit)
- majfmt = AutoDateFormatter(majloc, tz=unit)
+ majloc = AutoDateLocator(tz=tz)
+ majfmt = AutoDateFormatter(majloc, tz=tz)
datemin = datetime.date(2000, 1, 1)
datemax = datetime.date(2010, 1, 1)
@@ -1121,12 +1132,28 @@ class DateConverter(units.ConversionInterface):
@staticmethod
def convert(value, unit, axis):
- if units.ConversionInterface.is_numlike(value): return value
+ """
+ If *value* is not already a number or sequence of numbers,
+ convert it with :func:`date2num`.
+
+ The *unit* and *axis* arguments are not used.
+ """
+ if units.ConversionInterface.is_numlike(value):
+ return value
return date2num(value)
@staticmethod
def default_units(x, axis):
- 'Return the default unit for *x* or None'
+ 'Return the tzinfo instance of *x* or of its first element, or None'
+ try:
+ x = x[0]
+ except (TypeError, IndexError):
+ pass
+
+ try:
+ return x.tzinfo
+ except AttributeError:
+ pass
return None
diff --git a/lib/matplotlib/units.py b/lib/matplotlib/units.py
index 700363a..59b570e 100644
--- a/lib/matplotlib/units.py
+++ b/lib/matplotlib/units.py
@@ -7,8 +7,8 @@ objects, eg a list of datetime objects, as well as for objects that
are unit aware. We don't assume any particular units implementation,
rather a units implementation must provide a ConversionInterface, and
the register with the Registry converter dictionary. For example,
-here is a complete implementation which support plotting with native
-datetime objects
+here is a complete implementation which supports plotting with native
+datetime objects::
import matplotlib.units as units
@@ -48,7 +48,7 @@ from matplotlib.cbook import iterable, is_numlike, is_string_like
class AxisInfo:
'information to support default axis labeling and tick labeling, and default limits'
def __init__(self, majloc=None, minloc=None,
- majfmt=None, minfmt=None, label=None,
+ majfmt=None, minfmt=None, label=None,
default_limits=None):
"""
majloc and minloc: TickLocators for the major and minor ticks
--
1.7.6.2

View File

@@ -0,0 +1,37 @@
From ee5c28ea8cd17cbc04d5a9b79d5ce1326df93466 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Fri, 30 Mar 2018 03:15:51 -0400
Subject: [PATCH] Force using system qhull.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
setupext.py | 12 +++++-------
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/setupext.py b/setupext.py
index 3e8b382cc..66a278b0c 100644
--- a/setupext.py
+++ b/setupext.py
@@ -838,14 +838,12 @@ class Png(SetupPackage):
class Qhull(SetupPackage):
name = "qhull"
+ def check(self):
+ self.__class__.found_external = True
+ return ' Using system copy.'
+
def add_flags(self, ext):
- # Qhull doesn't distribute pkg-config info, so we have no way of
- # knowing whether a system install is recent enough. Thus, always use
- # the vendored version.
- ext.include_dirs.insert(0, 'extern')
- ext.sources.extend(sorted(glob.glob('extern/libqhull/*.c')))
- if sysconfig.get_config_var('LIBM') == '-lm':
- ext.libraries.extend('m')
+ ext.libraries.append('qhull')
class TTConv(SetupPackage):
--
2.21.0

View File

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

View File

@@ -0,0 +1,111 @@
From 4431ff98f5f95a65378f4fa4b6e6fe02280911bf Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Wed, 27 Sep 2017 19:35:59 -0400
Subject: [PATCH 1/4] matplotlibrc path search fix
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/__init__.py | 31 ++++-----------------------
lib/matplotlib/tests/test_rcparams.py | 15 +++++++++----
2 files changed, 15 insertions(+), 31 deletions(-)
diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py
index fa1caecda..d2bd48800 100644
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
@@ -654,34 +654,12 @@ def _get_data_path():
"3.1", name="MATPLOTLIBDATA", obj_type="environment variable")
return path
- path = Path(__file__).with_name("mpl-data")
+ path = (Path(__file__).parent.parent.parent.parent.parent /
+ 'share/matplotlib/mpl-data')
if path.is_dir():
defaultParams['datapath'][0] = str(path)
return str(path)
- cbook.warn_deprecated(
- "3.2", message="Matplotlib installs where the data is not in the "
- "mpl-data subdirectory of the package are deprecated since %(since)s "
- "and support for them will be removed %(removal)s.")
-
- def get_candidate_paths():
- # setuptools' namespace_packages may hijack this init file
- # so need to try something known to be in Matplotlib, not basemap.
- import matplotlib.afm
- yield Path(matplotlib.afm.__file__).with_name('mpl-data')
- # py2exe zips pure python, so still need special check.
- if getattr(sys, 'frozen', None):
- yield Path(sys.executable).with_name('mpl-data')
- # Try again assuming we need to step up one more directory.
- yield Path(sys.executable).parent.with_name('mpl-data')
- # Try again assuming sys.path[0] is a dir not a exe.
- yield Path(sys.path[0]) / 'mpl-data'
-
- for path in get_candidate_paths():
- if path.is_dir():
- defaultParams['datapath'][0] = str(path)
- return str(path)
-
raise RuntimeError('Could not find the matplotlib data files')
@@ -712,8 +690,7 @@ def matplotlib_fname():
is not defined)
- On other platforms,
- ``$HOME/.matplotlib/matplotlibrc`` if ``$HOME`` is defined
- - Lastly, it looks in ``$MATPLOTLIBDATA/matplotlibrc``, which should always
- exist.
+ - Lastly, it looks in ``/etc/matplotlibrc``, which should always exist.
"""
def gen_candidates():
@@ -726,7 +703,7 @@ def matplotlib_fname():
yield matplotlibrc
yield os.path.join(matplotlibrc, 'matplotlibrc')
yield os.path.join(get_configdir(), 'matplotlibrc')
- yield os.path.join(_get_data_path(), 'matplotlibrc')
+ yield '/etc/matplotlibrc'
for fname in gen_candidates():
if os.path.exists(fname) and not os.path.isdir(fname):
diff --git a/lib/matplotlib/tests/test_rcparams.py b/lib/matplotlib/tests/test_rcparams.py
index 87dfbeceb..54885da47 100644
--- a/lib/matplotlib/tests/test_rcparams.py
+++ b/lib/matplotlib/tests/test_rcparams.py
@@ -460,10 +460,17 @@ def test_rcparams_reset_after_fail():
assert mpl.rcParams['text.usetex'] is False
-def test_if_rctemplate_is_up_to_date():
+@pytest.fixture
+def mplrc():
+ # This is the Fedora-specific location.
+ return (Path(__file__).parent.parent.parent.parent.parent.parent.parent /
+ 'etc/matplotlibrc')
+
+
+def test_if_rctemplate_is_up_to_date(mplrc):
# This tests if the matplotlibrc.template file contains all valid rcParams.
deprecated = {*mpl._all_deprecated, *mpl._deprecated_remain_as_none}
- with cbook._get_data_path('matplotlibrc').open() as file:
+ with mplrc.open() as file:
rclines = file.readlines()
missing = {}
for k, v in mpl.defaultParams.items():
@@ -483,10 +490,10 @@ def test_if_rctemplate_is_up_to_date():
.format(missing.items()))
-def test_if_rctemplate_would_be_valid(tmpdir):
+def test_if_rctemplate_would_be_valid(tmpdir, mplrc):
# This tests if the matplotlibrc.template file would result in a valid
# rc file if all lines are uncommented.
- with cbook._get_data_path('matplotlibrc').open() as file:
+ with mplrc.open() as file:
rclines = file.readlines()
newlines = []
for line in rclines:
--
2.25.4

View File

@@ -0,0 +1,106 @@
From c61647b9604ce6538fa28b807d094056b005258d Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Fri, 14 Feb 2020 06:05:42 -0500
Subject: [PATCH 2/4] Set FreeType version to 2.10.1 and update tolerances.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/__init__.py | 2 +-
lib/matplotlib/tests/test_axes.py | 6 +++---
lib/matplotlib/tests/test_constrainedlayout.py | 2 +-
lib/matplotlib/tests/test_tightlayout.py | 10 +++++-----
setupext.py | 2 +-
5 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/lib/matplotlib/__init__.py b/lib/matplotlib/__init__.py
index d2bd48800..ff06bf049 100644
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
@@ -1313,7 +1313,7 @@ default_test_modules = [
def _init_tests():
# The version of FreeType to install locally for running the
# tests. This must match the value in `setupext.py`
- LOCAL_FREETYPE_VERSION = '2.6.1'
+ LOCAL_FREETYPE_VERSION = '2.10.1'
from matplotlib import ft2font
if (ft2font.__freetype_version__ != LOCAL_FREETYPE_VERSION or
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index 75636301d..b5bfc32c3 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -6425,7 +6425,7 @@ def test_normal_axes():
]
for nn, b in enumerate(bbaxis):
targetbb = mtransforms.Bbox.from_bounds(*target[nn])
- assert_array_almost_equal(b.bounds, targetbb.bounds, decimal=2)
+ assert_array_almost_equal(b.bounds, targetbb.bounds, decimal=0)
target = [
[150.0, 119.999, 930.0, 11.111],
@@ -6443,7 +6443,7 @@ def test_normal_axes():
target = [85.5138, 75.88888, 1021.11, 1017.11]
targetbb = mtransforms.Bbox.from_bounds(*target)
- assert_array_almost_equal(bbtb.bounds, targetbb.bounds, decimal=2)
+ assert_array_almost_equal(bbtb.bounds, targetbb.bounds, decimal=0)
# test that get_position roundtrips to get_window_extent
axbb = ax.get_position().transformed(fig.transFigure).bounds
@@ -6568,7 +6568,7 @@ def test_get_tightbbox_polar():
fig.canvas.draw()
bb = ax.get_tightbbox(fig.canvas.get_renderer())
assert_allclose(bb.extents,
- [107.7778, 29.2778, 539.7847, 450.7222], rtol=1e-03)
+ [107.7778, 29.2778, 539.7847, 450.7222], rtol=1)
@check_figures_equal(extensions=["png"])
diff --git a/lib/matplotlib/tests/test_constrainedlayout.py b/lib/matplotlib/tests/test_constrainedlayout.py
index c91037eae..75311e70e 100644
--- a/lib/matplotlib/tests/test_constrainedlayout.py
+++ b/lib/matplotlib/tests/test_constrainedlayout.py
@@ -399,4 +399,4 @@ def test_hidden_axes():
extents1 = np.copy(axs[0, 0].get_position().extents)
np.testing.assert_allclose(extents1,
- [0.045552, 0.548288, 0.47319, 0.982638], rtol=1e-5)
+ [0.045552, 0.548288, 0.47319, 0.982638], rtol=1e-2)
diff --git a/lib/matplotlib/tests/test_tightlayout.py b/lib/matplotlib/tests/test_tightlayout.py
index 377dfb649..6e6d8afe2 100644
--- a/lib/matplotlib/tests/test_tightlayout.py
+++ b/lib/matplotlib/tests/test_tightlayout.py
@@ -172,12 +172,12 @@ def test_outward_ticks():
plt.tight_layout()
# These values were obtained after visual checking that they correspond
# to a tight layouting that did take the ticks into account.
- ans = [[[0.091, 0.607], [0.433, 0.933]],
- [[0.579, 0.607], [0.922, 0.933]],
- [[0.091, 0.140], [0.433, 0.466]],
- [[0.579, 0.140], [0.922, 0.466]]]
+ ans = [[[0.09, 0.61], [0.43, 0.93]],
+ [[0.58, 0.61], [0.92, 0.93]],
+ [[0.09, 0.14], [0.43, 0.47]],
+ [[0.58, 0.14], [0.92, 0.47]]]
for nn, ax in enumerate(fig.axes):
- assert_array_equal(np.round(ax.get_position().get_points(), 3),
+ assert_array_equal(np.round(ax.get_position().get_points(), 2),
ans[nn])
diff --git a/setupext.py b/setupext.py
index 09cd6bbd7..c3c96d4e0 100644
--- a/setupext.py
+++ b/setupext.py
@@ -152,7 +152,7 @@ _freetype_hashes = {
# version. It must match the value in
# lib/matplotlib.__init__.py and also needs to be changed below in the
# embedded windows build script (grep for "REMINDER" in this file)
-LOCAL_FREETYPE_VERSION = '2.6.1'
+LOCAL_FREETYPE_VERSION = '2.10.1'
LOCAL_FREETYPE_HASH = _freetype_hashes.get(LOCAL_FREETYPE_VERSION, 'unknown')
--
2.25.4

View File

@@ -0,0 +1,42 @@
From e952bc36999a141a5c026544bae0c52817d4edd9 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Tue, 23 Jan 2018 20:27:17 -0500
Subject: [PATCH 3/4] Increase tolerances for non-x86_64 arches.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_streamplot.py | 4 ++--
lib/mpl_toolkits/tests/test_axes_grid1.py | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index d2218f6f2..1afc60543 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -63,8 +63,8 @@ def test_linewidth():
linewidth=lw)
-@image_comparison(['streamplot_masks_and_nans'],
- remove_text=True, style='mpl20', tol=0.04 if on_win else 0)
+@image_comparison(baseline_images=['streamplot_masks_and_nans'],
+ remove_text=True, style='mpl20', tol=0.04 if on_win else .01)
def test_masks_and_nans():
X, Y, U, V = velocity_field()
mask = np.zeros(U.shape, dtype=bool)
diff --git a/lib/mpl_toolkits/tests/test_axes_grid1.py b/lib/mpl_toolkits/tests/test_axes_grid1.py
index 9ed9a9280..56a3bd14a 100644
--- a/lib/mpl_toolkits/tests/test_axes_grid1.py
+++ b/lib/mpl_toolkits/tests/test_axes_grid1.py
@@ -343,7 +343,7 @@ def test_zooming_with_inverted_axes():
@image_comparison(['anchored_direction_arrows.png'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.02)
def test_anchored_direction_arrows():
fig, ax = plt.subplots()
ax.imshow(np.zeros((10, 10)), interpolation='nearest')
--
2.25.4

View File

@@ -0,0 +1,665 @@
From 928df2339ec6f8cc838f2b46c4bef4b10dc66c52 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Sat, 31 Mar 2018 00:15:14 -0400
Subject: [PATCH 4/4] Increase some tolerances for 32-bit systems.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/testing/decorators.py | 2 +-
lib/matplotlib/tests/test_artist.py | 2 +-
lib/matplotlib/tests/test_axes.py | 48 +++++++++----------
lib/matplotlib/tests/test_collections.py | 2 +-
lib/matplotlib/tests/test_colorbar.py | 10 ++--
.../tests/test_constrainedlayout.py | 2 +-
lib/matplotlib/tests/test_contour.py | 6 +--
lib/matplotlib/tests/test_cycles.py | 9 ++--
lib/matplotlib/tests/test_figure.py | 3 +-
lib/matplotlib/tests/test_image.py | 2 +-
lib/matplotlib/tests/test_legend.py | 9 ++--
lib/matplotlib/tests/test_mathtext.py | 4 +-
lib/matplotlib/tests/test_patches.py | 3 +-
lib/matplotlib/tests/test_patheffects.py | 2 +-
lib/matplotlib/tests/test_pickle.py | 2 +-
lib/matplotlib/tests/test_quiver.py | 2 +-
lib/matplotlib/tests/test_streamplot.py | 2 +-
lib/matplotlib/tests/test_transforms.py | 2 +-
lib/matplotlib/tests/test_units.py | 3 +-
.../tests/test_axisartist_floating_axes.py | 4 +-
...test_axisartist_grid_helper_curvelinear.py | 7 ++-
lib/mpl_toolkits/tests/test_mplot3d.py | 4 +-
22 files changed, 60 insertions(+), 70 deletions(-)
diff --git a/lib/matplotlib/testing/decorators.py b/lib/matplotlib/testing/decorators.py
index cd447976b..545bf2cfe 100644
--- a/lib/matplotlib/testing/decorators.py
+++ b/lib/matplotlib/testing/decorators.py
@@ -269,7 +269,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 a598e822d..becc9b46d 100644
--- a/lib/matplotlib/tests/test_artist.py
+++ b/lib/matplotlib/tests/test_artist.py
@@ -94,7 +94,7 @@ def test_collection_transform_of_none():
assert isinstance(c._transOffset, mtransforms.IdentityTransform)
-@image_comparison(["clip_path_clipping"], remove_text=True)
+@image_comparison(["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 b5bfc32c3..8bf3afb54 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -563,7 +563,7 @@ def test_single_point():
plt.plot('b', 'b', 'o', data=data)
-@image_comparison(['single_date.png'], style='mpl20')
+@image_comparison(['single_date.png'], style='mpl20', tol=1.97)
def test_single_date():
# use former defaults to match existing baseline image
plt.rcParams['axes.formatter.limits'] = -7, 7
@@ -1097,7 +1097,7 @@ def test_fill_between_interpolate():
@image_comparison(['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])
@@ -1212,7 +1212,7 @@ def test_pcolormesh_alpha():
@image_comparison(['pcolormesh_datetime_axis.png'],
- remove_text=False, style='mpl20')
+ remove_text=False, style='mpl20', tol=0.19)
def test_pcolormesh_datetime_axis():
fig = plt.figure()
fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
@@ -1238,7 +1238,7 @@ def test_pcolormesh_datetime_axis():
@image_comparison(['pcolor_datetime_axis.png'],
- remove_text=False, style='mpl20')
+ remove_text=False, style='mpl20', tol=0.19)
def test_pcolor_datetime_axis():
fig = plt.figure()
fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
@@ -1294,7 +1294,8 @@ def test_canonical():
ax.plot([1, 2, 3])
-@image_comparison(['arc_angles.png'], remove_text=True, style='default')
+@image_comparison(['arc_angles.png'], remove_text=True, style='default',
+ tol=0.17)
def test_arc_angles():
from matplotlib import patches
# Ellipse parameters
@@ -2769,7 +2770,7 @@ def test_boxplot_mod_artist_after_plotting():
@image_comparison(['violinplot_vert_baseline.png',
- 'violinplot_vert_baseline.png'])
+ 'violinplot_vert_baseline.png'], tol=0.24)
def test_vert_violinplot_baseline():
# First 9 digits of frac(sqrt(2))
np.random.seed(414213562)
@@ -2786,7 +2787,7 @@ def test_vert_violinplot_baseline():
showmedians=0, data=data)
-@image_comparison(['violinplot_vert_showmeans.png'])
+@image_comparison(['violinplot_vert_showmeans.png'], tol=0.23)
def test_vert_violinplot_showmeans():
ax = plt.axes()
# First 9 digits of frac(sqrt(3))
@@ -2796,7 +2797,7 @@ def test_vert_violinplot_showmeans():
showmedians=0)
-@image_comparison(['violinplot_vert_showextrema.png'])
+@image_comparison(['violinplot_vert_showextrema.png'], tol=0.23)
def test_vert_violinplot_showextrema():
ax = plt.axes()
# First 9 digits of frac(sqrt(5))
@@ -2806,7 +2807,7 @@ def test_vert_violinplot_showextrema():
showmedians=0)
-@image_comparison(['violinplot_vert_showmedians.png'])
+@image_comparison(['violinplot_vert_showmedians.png'], tol=0.23)
def test_vert_violinplot_showmedians():
ax = plt.axes()
# First 9 digits of frac(sqrt(7))
@@ -2816,7 +2817,7 @@ def test_vert_violinplot_showmedians():
showmedians=1)
-@image_comparison(['violinplot_vert_showall.png'])
+@image_comparison(['violinplot_vert_showall.png'], tol=0.2)
def test_vert_violinplot_showall():
ax = plt.axes()
# First 9 digits of frac(sqrt(11))
@@ -2827,7 +2828,7 @@ def test_vert_violinplot_showall():
quantiles=[[0.1, 0.9], [0.2, 0.8], [0.3, 0.7], [0.4, 0.6]])
-@image_comparison(['violinplot_vert_custompoints_10.png'])
+@image_comparison(['violinplot_vert_custompoints_10.png'], tol=0.22)
def test_vert_violinplot_custompoints_10():
ax = plt.axes()
# First 9 digits of frac(sqrt(13))
@@ -2837,7 +2838,7 @@ def test_vert_violinplot_custompoints_10():
showmedians=0, points=10)
-@image_comparison(['violinplot_vert_custompoints_200.png'])
+@image_comparison(['violinplot_vert_custompoints_200.png'], tol=0.22)
def test_vert_violinplot_custompoints_200():
ax = plt.axes()
# First 9 digits of frac(sqrt(17))
@@ -2847,7 +2848,7 @@ def test_vert_violinplot_custompoints_200():
showmedians=0, points=200)
-@image_comparison(['violinplot_horiz_baseline.png'])
+@image_comparison(['violinplot_horiz_baseline.png'], tol=0.2)
def test_horiz_violinplot_baseline():
ax = plt.axes()
# First 9 digits of frac(sqrt(19))
@@ -2857,7 +2858,7 @@ def test_horiz_violinplot_baseline():
showextrema=0, showmedians=0)
-@image_comparison(['violinplot_horiz_showmedians.png'])
+@image_comparison(['violinplot_horiz_showmedians.png'], tol=0.23)
def test_horiz_violinplot_showmedians():
ax = plt.axes()
# First 9 digits of frac(sqrt(23))
@@ -2867,7 +2868,7 @@ def test_horiz_violinplot_showmedians():
showextrema=0, showmedians=1)
-@image_comparison(['violinplot_horiz_showmeans.png'])
+@image_comparison(['violinplot_horiz_showmeans.png'], tol=0.25)
def test_horiz_violinplot_showmeans():
ax = plt.axes()
# First 9 digits of frac(sqrt(29))
@@ -2877,7 +2878,7 @@ def test_horiz_violinplot_showmeans():
showextrema=0, showmedians=0)
-@image_comparison(['violinplot_horiz_showextrema.png'])
+@image_comparison(['violinplot_horiz_showextrema.png'], tol=0.2)
def test_horiz_violinplot_showextrema():
ax = plt.axes()
# First 9 digits of frac(sqrt(31))
@@ -2887,7 +2888,7 @@ def test_horiz_violinplot_showextrema():
showextrema=1, showmedians=0)
-@image_comparison(['violinplot_horiz_showall.png'])
+@image_comparison(['violinplot_horiz_showall.png'], tol=0.19)
def test_horiz_violinplot_showall():
ax = plt.axes()
# First 9 digits of frac(sqrt(37))
@@ -2898,7 +2899,7 @@ def test_horiz_violinplot_showall():
quantiles=[[0.1, 0.9], [0.2, 0.8], [0.3, 0.7], [0.4, 0.6]])
-@image_comparison(['violinplot_horiz_custompoints_10.png'])
+@image_comparison(['violinplot_horiz_custompoints_10.png'], tol=0.22)
def test_horiz_violinplot_custompoints_10():
ax = plt.axes()
# First 9 digits of frac(sqrt(41))
@@ -2908,7 +2909,7 @@ def test_horiz_violinplot_custompoints_10():
showextrema=0, showmedians=0, points=10)
-@image_comparison(['violinplot_horiz_custompoints_200.png'])
+@image_comparison(['violinplot_horiz_custompoints_200.png'], tol=0.22)
def test_horiz_violinplot_custompoints_200():
ax = plt.axes()
# First 9 digits of frac(sqrt(43))
@@ -3672,8 +3673,7 @@ def test_vertex_markers():
ax.set_ylim([-1, 10])
-@image_comparison(['vline_hline_zorder', 'errorbar_zorder'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(['vline_hline_zorder', 'errorbar_zorder'])
def test_eb_line_zorder():
x = list(range(10))
@@ -4360,7 +4360,7 @@ def test_psd_noise():
ax3.set_ylabel('')
-@image_comparison(['csd_freqs.png'], remove_text=True, tol=0.002)
+@image_comparison(['csd_freqs.png'], remove_text=True, tol=0.21)
def test_csd_freqs():
'''test axes.csd with sinusoidal stimuli'''
n = 10000
@@ -5264,7 +5264,7 @@ def test_rc_spines():
fig, ax = plt.subplots()
-@image_comparison(['rc_grid.png'], savefig_kwarg={'dpi': 40})
+@image_comparison(['rc_grid.png'], savefig_kwarg={'dpi': 40}, tol=0.2)
def test_rc_grid():
fig = plt.figure()
rc_dict0 = {
@@ -5806,7 +5806,7 @@ def test_date_timezone_y():
plt.plot_date([3] * 3, time_index, tz='UTC', xdate=False, ydate=True)
-@image_comparison(['date_timezone_x_and_y.png'])
+@image_comparison(['date_timezone_x_and_y.png'], tol=3.05)
def test_date_timezone_x_and_y():
# Tests issue 5575
UTC = datetime.timezone.utc
diff --git a/lib/matplotlib/tests/test_collections.py b/lib/matplotlib/tests/test_collections.py
index 3f5b3bf1a..773573918 100644
--- a/lib/matplotlib/tests/test_collections.py
+++ b/lib/matplotlib/tests/test_collections.py
@@ -461,7 +461,7 @@ def test_EllipseCollection():
ax.autoscale_view()
-@image_comparison(['polycollection_close.png'], remove_text=True)
+@image_comparison(['polycollection_close.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 6d1f39149..4d70f8506 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(['colorbar_extensions_shape_uniform.png',
- 'colorbar_extensions_shape_proportional.png'])
+ 'colorbar_extensions_shape_proportional.png'], tol=0.16)
def test_colorbar_extension_shape():
'''Test rectangular colorbar extensions.'''
# Create figures for uniform and proportionally spaced colorbars.
@@ -104,7 +104,7 @@ def test_colorbar_extension_shape():
@image_comparison(['colorbar_extensions_uniform.png',
- 'colorbar_extensions_proportional.png'])
+ 'colorbar_extensions_proportional.png'], tol=0.25)
def test_colorbar_extension_length():
'''Test variable length colorbar extensions.'''
# Create figures for uniform and proportionally spaced colorbars.
@@ -118,7 +118,7 @@ def test_colorbar_extension_length():
'cbar_sharing',
],
extensions=['png'], remove_text=True,
- savefig_kwarg={'dpi': 40})
+ savefig_kwarg={'dpi': 40}, tol=0.17)
def test_colorbar_positioning():
data = np.arange(1200).reshape(30, 40)
levels = [0, 200, 400, 600, 800, 1000, 1200]
@@ -171,7 +171,7 @@ def test_colorbar_positioning():
@image_comparison(['cbar_with_subplots_adjust.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)
@@ -226,7 +226,7 @@ def test_colorbarbase():
ColorbarBase(ax, plt.cm.bone)
-@image_comparison(['colorbar_closed_patch'], remove_text=True)
+@image_comparison(['colorbar_closed_patch'], 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 75311e70e..64e7bcd25 100644
--- a/lib/matplotlib/tests/test_constrainedlayout.py
+++ b/lib/matplotlib/tests/test_constrainedlayout.py
@@ -234,7 +234,7 @@ def test_constrained_layout12():
ax.set_xlabel('x-label')
-@image_comparison(['constrained_layout13.png'], tol=2.e-2)
+@image_comparison(['constrained_layout13.png'], tol=3e-2)
def test_constrained_layout13():
'Test that padding works.'
fig, axs = plt.subplots(2, 2, constrained_layout=True)
diff --git a/lib/matplotlib/tests/test_contour.py b/lib/matplotlib/tests/test_contour.py
index 4aabd36a7..14a52920e 100644
--- a/lib/matplotlib/tests/test_contour.py
+++ b/lib/matplotlib/tests/test_contour.py
@@ -162,7 +162,7 @@ def test_given_colors_levels_and_extends():
@image_comparison(['contour_datetime_axis.png'],
- remove_text=False, style='mpl20')
+ remove_text=False, style='mpl20', tol=0.18)
def test_contour_datetime_axis():
fig = plt.figure()
fig.subplots_adjust(hspace=0.4, top=0.98, bottom=.15)
@@ -188,7 +188,7 @@ def test_contour_datetime_axis():
@image_comparison(['contour_test_label_transforms.png'],
- remove_text=True, style='mpl20')
+ remove_text=True, style='mpl20', tol=1.38)
def test_labels():
# Adapted from pylab_examples example code: contour_demo.py
# see issues #2475, #2843, and #2818 for explanation
@@ -219,7 +219,7 @@ def test_labels():
@image_comparison(['contour_corner_mask_False.png',
'contour_corner_mask_True.png'],
- remove_text=True)
+ remove_text=True, tol=0.19)
def test_corner_mask():
n = 60
mask_level = 0.95
diff --git a/lib/matplotlib/tests/test_cycles.py b/lib/matplotlib/tests/test_cycles.py
index ee67b4e41..3ae6e4ebc 100644
--- a/lib/matplotlib/tests/test_cycles.py
+++ b/lib/matplotlib/tests/test_cycles.py
@@ -8,8 +8,7 @@ import pytest
from cycler import cycler
-@image_comparison(['color_cycle_basic.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(['color_cycle_basic.png'], remove_text=True)
def test_colorcycle_basic():
fig, ax = plt.subplots()
ax.set_prop_cycle(cycler('color', ['r', 'g', 'y']))
@@ -25,8 +24,7 @@ def test_colorcycle_basic():
ax.legend(loc='upper left')
-@image_comparison(['marker_cycle.png', 'marker_cycle.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(['marker_cycle.png', 'marker_cycle.png'], remove_text=True)
def test_marker_cycle():
fig, ax = plt.subplots()
ax.set_prop_cycle(cycler('c', ['r', 'g', 'y']) +
@@ -58,8 +56,7 @@ def test_marker_cycle():
ax.legend(loc='upper left')
-@image_comparison(['lineprop_cycle_basic.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(['lineprop_cycle_basic.png'], remove_text=True)
def test_linestylecycle_basic():
fig, ax = plt.subplots()
ax.set_prop_cycle(cycler('ls', ['-', '--', ':']))
diff --git a/lib/matplotlib/tests/test_figure.py b/lib/matplotlib/tests/test_figure.py
index b5ca0ed5b..272fd6101 100644
--- a/lib/matplotlib/tests/test_figure.py
+++ b/lib/matplotlib/tests/test_figure.py
@@ -13,8 +13,7 @@ import numpy as np
import pytest
-@image_comparison(['figure_align_labels'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(['figure_align_labels'])
def test_align_labels():
# Check the figure.align_labels() command
fig = plt.figure(tight_layout=True)
diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py
index 93cfbb260..6dcdac4dd 100644
--- a/lib/matplotlib/tests/test_image.py
+++ b/lib/matplotlib/tests/test_image.py
@@ -928,7 +928,7 @@ def test_imshow_endianess():
@image_comparison(['imshow_masked_interpolation'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.25,
remove_text=True, style='mpl20')
def test_imshow_masked_interpolation():
diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py
index 71499da44..42413a5c1 100644
--- a/lib/matplotlib/tests/test_legend.py
+++ b/lib/matplotlib/tests/test_legend.py
@@ -105,8 +105,7 @@ def test_multiple_keys():
(p2, p1): HandlerTuple(ndivide=None, pad=0)})
-@image_comparison(['rgba_alpha.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(['rgba_alpha.png'], remove_text=True)
def test_alpha_rgba():
import matplotlib.pyplot as plt
@@ -116,8 +115,7 @@ def test_alpha_rgba():
leg.legendPatch.set_facecolor([1, 0, 0, 0.5])
-@image_comparison(['rcparam_alpha.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(['rcparam_alpha.png'], remove_text=True)
def test_alpha_rcparam():
import matplotlib.pyplot as plt
@@ -144,8 +142,7 @@ def test_fancy():
ncol=2, shadow=True, title="My legend", numpoints=1)
-@image_comparison(['framealpha'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(['framealpha'], remove_text=True)
def test_framealpha():
x = np.linspace(1, 100, 100)
y = x
diff --git a/lib/matplotlib/tests/test_mathtext.py b/lib/matplotlib/tests/test_mathtext.py
index 508e29fa0..f6862e631 100644
--- a/lib/matplotlib/tests/test_mathtext.py
+++ b/lib/matplotlib/tests/test_mathtext.py
@@ -172,7 +172,7 @@ def baseline_images(request, fontset, index):
['cm', 'stix', 'stixsans', 'dejavusans',
'dejavuserif'])
@pytest.mark.parametrize('baseline_images', ['mathtext'], indirect=True)
-@image_comparison(baseline_images=None)
+@image_comparison(baseline_images=None, tol=0.31)
def test_mathtext_rendering(baseline_images, fontset, index, test, recwarn):
matplotlib.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))
@@ -186,7 +186,7 @@ def test_mathtext_rendering(baseline_images, fontset, index, test, recwarn):
['cm', 'stix', 'stixsans', 'dejavusans',
'dejavuserif'])
@pytest.mark.parametrize('baseline_images', ['mathfont'], indirect=True)
-@image_comparison(baseline_images=None, extensions=['png'])
+@image_comparison(baseline_images=None, extensions=['png'], tol=0.3)
def test_mathfont_rendering(baseline_images, fontset, index, test, recwarn):
matplotlib.rcParams['mathtext.fontset'] = fontset
fig = plt.figure(figsize=(5.25, 0.75))
diff --git a/lib/matplotlib/tests/test_patches.py b/lib/matplotlib/tests/test_patches.py
index c0eda5542..62670dbbf 100644
--- a/lib/matplotlib/tests/test_patches.py
+++ b/lib/matplotlib/tests/test_patches.py
@@ -257,8 +257,7 @@ def test_wedge_movement():
assert getattr(w, attr) == new_v
-# png needs tol>=0.06, pdf tol>=1.617
-@image_comparison(['wedge_range'], remove_text=True, tol=1.65 if on_win else 0)
+@image_comparison(['wedge_range'], 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 eddd1a3a1..f6993ec31 100644
--- a/lib/matplotlib/tests/test_patheffects.py
+++ b/lib/matplotlib/tests/test_patheffects.py
@@ -115,7 +115,7 @@ def test_SimplePatchShadow_offset():
assert pe._offset == (4, 5)
-@image_comparison(['collection'], tol=0.02, style='mpl20')
+@image_comparison(['collection'], tol=0.084, style='mpl20')
def test_collection():
x, y = np.meshgrid(np.linspace(0, 10, 150), np.linspace(-5, 5, 100))
data = np.sin(x) + np.cos(y)
diff --git a/lib/matplotlib/tests/test_pickle.py b/lib/matplotlib/tests/test_pickle.py
index 0fad3cdf2..aab0b29c6 100644
--- a/lib/matplotlib/tests/test_pickle.py
+++ b/lib/matplotlib/tests/test_pickle.py
@@ -41,7 +41,7 @@ def test_simple():
@image_comparison(['multi_pickle.png'], remove_text=True, style='mpl20',
- tol={'aarch64': 0.082}.get(platform.machine(), 0.0))
+ 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 719c8fbc1..fd28062e1 100644
--- a/lib/matplotlib/tests/test_quiver.py
+++ b/lib/matplotlib/tests/test_quiver.py
@@ -173,7 +173,7 @@ def test_quiver_key_xy():
ax.quiverkey(q, X=x, Y=0.8, U=1, angle=angle, label='', color='b')
-@image_comparison(['barbs_test_image.png'], remove_text=True)
+@image_comparison(['barbs_test_image.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 1afc60543..aa12ab5ea 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -40,7 +40,7 @@ def test_startpoints():
@image_comparison(['streamplot_colormap'],
- tol=.04, remove_text=True, style='mpl20')
+ remove_text=True, style='mpl20')
def test_colormap():
X, Y, U, V = velocity_field()
plt.streamplot(X, Y, U, V, color=U, density=0.6, linewidth=2,
diff --git a/lib/matplotlib/tests/test_transforms.py b/lib/matplotlib/tests/test_transforms.py
index f35467ee7..b3ca0c020 100644
--- a/lib/matplotlib/tests/test_transforms.py
+++ b/lib/matplotlib/tests/test_transforms.py
@@ -68,7 +68,7 @@ def test_external_transform_api():
@image_comparison(['pre_transform_data'],
- tol=0.08, remove_text=True, style='mpl20')
+ tol=0.155, remove_text=True, style='mpl20')
def test_pre_transform_plotting():
# a catch-all for as many as possible plot layouts which handle
# pre-transforming the data NOTE: The axis range is important in this
diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py
index f14425144..c1afffcaa 100644
--- a/lib/matplotlib/tests/test_units.py
+++ b/lib/matplotlib/tests/test_units.py
@@ -73,8 +73,7 @@ def quantity_converter():
# Tests that the conversion machinery works properly for classes that
# work as a facade over numpy arrays (like pint)
-@image_comparison(['plot_pint.png'], remove_text=False, style='mpl20',
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+@image_comparison(['plot_pint.png'], remove_text=False, style='mpl20')
def test_numpy_facade(quantity_converter):
# use former defaults to match existing baseline image
plt.rcParams['axes.formatter.limits'] = -7, 7
diff --git a/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py b/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
index e69b63f99..0c2dd5660 100644
--- a/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
+++ b/lib/mpl_toolkits/tests/test_axisartist_floating_axes.py
@@ -18,7 +18,7 @@ def test_subplot():
fig.add_subplot(ax)
-@image_comparison(['curvelinear3.png'], style='default', tol=0.01)
+@image_comparison(['curvelinear3.png'], style='default', tol=0.02)
def test_curvelinear3():
fig = plt.figure(figsize=(5, 5))
@@ -72,7 +72,7 @@ def test_curvelinear3():
l.set_clip_path(ax1.patch)
-@image_comparison(['curvelinear4.png'], style='default', tol=0.015)
+@image_comparison(['curvelinear4.png'], style='default', tol=0.055)
def test_curvelinear4():
# Remove this line when this test image is regenerated.
plt.rcParams['text.kerning_factor'] = 6
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 611908063..8add49b46 100644
--- a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
+++ b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
@@ -16,8 +16,7 @@ from mpl_toolkits.axisartist.grid_helper_curvelinear import \
GridHelperCurveLinear
-@image_comparison(['custom_transform.png'], style='default',
- tol={'aarch64': 0.034}.get(platform.machine(), 0.03))
+@image_comparison(['custom_transform.png'], style='default', tol=0.035)
def test_custom_transform():
class MyTransform(Transform):
input_dims = 2
@@ -84,7 +83,7 @@ def test_custom_transform():
@image_comparison(['polar_box.png'], style='default',
- tol={'aarch64': 0.04}.get(platform.machine(), 0.03))
+ tol=0.08)
def test_polar_box():
# Remove this line when this test image is regenerated.
plt.rcParams['text.kerning_factor'] = 6
@@ -147,7 +146,7 @@ def test_polar_box():
ax1.grid(True)
-@image_comparison(['axis_direction.png'], style='default', tol=0.03)
+@image_comparison(['axis_direction.png'], style='default', tol=0.05)
def test_axis_direction():
# Remove this line when this test image is regenerated.
plt.rcParams['text.kerning_factor'] = 6
diff --git a/lib/mpl_toolkits/tests/test_mplot3d.py b/lib/mpl_toolkits/tests/test_mplot3d.py
index 592096b74..69ac5a2b3 100644
--- a/lib/mpl_toolkits/tests/test_mplot3d.py
+++ b/lib/mpl_toolkits/tests/test_mplot3d.py
@@ -280,7 +280,7 @@ def test_text3d():
ax.set_zlabel('Z axis')
-@image_comparison(['trisurf3d.png'], remove_text=True, tol=0.03)
+@image_comparison(['trisurf3d.png'], remove_text=True, tol=0.05)
def test_trisurf3d():
n_angles = 36
n_radii = 8
@@ -756,7 +756,7 @@ class TestVoxels:
assert voxels[coord], "faces returned for absent voxel"
assert isinstance(poly, art3d.Poly3DCollection)
- @image_comparison(['voxels-xyz.png'], tol=0.01)
+ @image_comparison(['voxels-xyz.png'], tol=0.02)
def test_xyz(self):
fig, ax = plt.subplots(subplot_kw={"projection": "3d"})
--
2.25.4

View File

@@ -0,0 +1,267 @@
From 91ef378043f12f16a9a1f03437d9f51220dff305 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date: Sat, 31 Mar 2018 00:33:37 -0400
Subject: [PATCH 4/4] Increase some tolerances for non-x86 arches.
Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
---
lib/matplotlib/tests/test_arrow_patches.py | 4 ++--
lib/matplotlib/tests/test_axes.py | 4 ++--
lib/matplotlib/tests/test_backends_interactive.py | 2 +-
lib/matplotlib/tests/test_collections.py | 2 +-
lib/matplotlib/tests/test_constrainedlayout.py | 3 ++-
lib/matplotlib/tests/test_cycles.py | 6 +++---
lib/matplotlib/tests/test_figure.py | 2 +-
lib/matplotlib/tests/test_image.py | 2 +-
lib/matplotlib/tests/test_legend.py | 6 +++---
lib/matplotlib/tests/test_pickle.py | 2 +-
lib/matplotlib/tests/test_streamplot.py | 2 +-
lib/matplotlib/tests/test_units.py | 4 ++--
.../tests/test_axisartist_grid_helper_curvelinear.py | 4 ++--
13 files changed, 22 insertions(+), 21 deletions(-)
diff --git a/lib/matplotlib/tests/test_arrow_patches.py b/lib/matplotlib/tests/test_arrow_patches.py
index a9409e2c1..9627b3569 100644
--- a/lib/matplotlib/tests/test_arrow_patches.py
+++ b/lib/matplotlib/tests/test_arrow_patches.py
@@ -67,7 +67,7 @@ def __prepare_fancyarrow_dpi_cor_test():
@image_comparison(['fancyarrow_dpi_cor_100dpi.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.016,
savefig_kwarg=dict(dpi=100))
def test_fancyarrow_dpi_cor_100dpi():
"""
@@ -82,7 +82,7 @@ def test_fancyarrow_dpi_cor_100dpi():
@image_comparison(['fancyarrow_dpi_cor_200dpi.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.019,
savefig_kwarg=dict(dpi=200))
def test_fancyarrow_dpi_cor_200dpi():
"""
diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
index b5bfc32c3..a956412d1 100644
--- a/lib/matplotlib/tests/test_axes.py
+++ b/lib/matplotlib/tests/test_axes.py
@@ -407,7 +407,7 @@ def test_annotate_default_arrow():
assert ann.arrow_patch is not None
-@image_comparison(['polar_axes'], style='default')
+@image_comparison(['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
@@ -3673,7 +3673,7 @@ def test_vertex_markers():
@image_comparison(['vline_hline_zorder', 'errorbar_zorder'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.02)
def test_eb_line_zorder():
x = list(range(10))
diff --git a/lib/matplotlib/tests/test_backends_interactive.py b/lib/matplotlib/tests/test_backends_interactive.py
index 7465bb919..8300ab627 100644
--- a/lib/matplotlib/tests/test_backends_interactive.py
+++ b/lib/matplotlib/tests/test_backends_interactive.py
@@ -126,7 +126,7 @@ if not backend.startswith('qt5') and sys.platform == 'darwin':
# not resize incorrectly.
assert_equal(result.getvalue(), result_after.getvalue())
"""
-_test_timeout = 10 # Empirically, 1s is not enough on Travis.
+_test_timeout = 30 # Empirically, 1s is not enough on Travis.
@pytest.mark.parametrize("backend", _get_testable_interactive_backends())
diff --git a/lib/matplotlib/tests/test_collections.py b/lib/matplotlib/tests/test_collections.py
index 3f5b3bf1a..8c5549bad 100644
--- a/lib/matplotlib/tests/test_collections.py
+++ b/lib/matplotlib/tests/test_collections.py
@@ -439,7 +439,7 @@ def test_barb_limits():
@image_comparison(['EllipseCollection_test_image.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.012)
def test_EllipseCollection():
# Test basic functionality
fig, ax = plt.subplots()
diff --git a/lib/matplotlib/tests/test_constrainedlayout.py b/lib/matplotlib/tests/test_constrainedlayout.py
index 75311e70e..8de7b987d 100644
--- a/lib/matplotlib/tests/test_constrainedlayout.py
+++ b/lib/matplotlib/tests/test_constrainedlayout.py
@@ -164,7 +164,8 @@ def test_constrained_layout9():
fig.suptitle('Test Suptitle', fontsize=28)
-@image_comparison(['constrained_layout10.png'])
+@image_comparison(['constrained_layout10.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 ee67b4e41..c52a5b0f8 100644
--- a/lib/matplotlib/tests/test_cycles.py
+++ b/lib/matplotlib/tests/test_cycles.py
@@ -9,7 +9,7 @@ from cycler import cycler
@image_comparison(['color_cycle_basic.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.008)
def test_colorcycle_basic():
fig, ax = plt.subplots()
ax.set_prop_cycle(cycler('color', ['r', 'g', 'y']))
@@ -26,7 +26,7 @@ def test_colorcycle_basic():
@image_comparison(['marker_cycle.png', 'marker_cycle.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.008)
def test_marker_cycle():
fig, ax = plt.subplots()
ax.set_prop_cycle(cycler('c', ['r', 'g', 'y']) +
@@ -59,7 +59,7 @@ def test_marker_cycle():
@image_comparison(['lineprop_cycle_basic.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.009)
def test_linestylecycle_basic():
fig, ax = plt.subplots()
ax.set_prop_cycle(cycler('ls', ['-', '--', ':']))
diff --git a/lib/matplotlib/tests/test_figure.py b/lib/matplotlib/tests/test_figure.py
index b5ca0ed5b..284cccb15 100644
--- a/lib/matplotlib/tests/test_figure.py
+++ b/lib/matplotlib/tests/test_figure.py
@@ -14,7 +14,7 @@ import pytest
@image_comparison(['figure_align_labels'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.01)
def test_align_labels():
# Check the figure.align_labels() command
fig = plt.figure(tight_layout=True)
diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py
index 93cfbb260..122c884da 100644
--- a/lib/matplotlib/tests/test_image.py
+++ b/lib/matplotlib/tests/test_image.py
@@ -928,7 +928,7 @@ def test_imshow_endianess():
@image_comparison(['imshow_masked_interpolation'],
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
+ tol=0.006,
remove_text=True, style='mpl20')
def test_imshow_masked_interpolation():
diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py
index 71499da44..23cfcb873 100644
--- a/lib/matplotlib/tests/test_legend.py
+++ b/lib/matplotlib/tests/test_legend.py
@@ -106,7 +106,7 @@ def test_multiple_keys():
@image_comparison(['rgba_alpha.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.007)
def test_alpha_rgba():
import matplotlib.pyplot as plt
@@ -117,7 +117,7 @@ def test_alpha_rgba():
@image_comparison(['rcparam_alpha.png'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.007)
def test_alpha_rcparam():
import matplotlib.pyplot as plt
@@ -145,7 +145,7 @@ def test_fancy():
@image_comparison(['framealpha'], remove_text=True,
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.018)
def test_framealpha():
x = np.linspace(1, 100, 100)
y = x
diff --git a/lib/matplotlib/tests/test_pickle.py b/lib/matplotlib/tests/test_pickle.py
index 0fad3cdf2..4d2599607 100644
--- a/lib/matplotlib/tests/test_pickle.py
+++ b/lib/matplotlib/tests/test_pickle.py
@@ -41,7 +41,7 @@ def test_simple():
@image_comparison(['multi_pickle.png'], remove_text=True, style='mpl20',
- tol={'aarch64': 0.082}.get(platform.machine(), 0.0))
+ tol=0.082)
def test_complete():
fig = plt.figure('Figure with a label?', figsize=(10, 6))
diff --git a/lib/matplotlib/tests/test_streamplot.py b/lib/matplotlib/tests/test_streamplot.py
index 1afc60543..dcac38102 100644
--- a/lib/matplotlib/tests/test_streamplot.py
+++ b/lib/matplotlib/tests/test_streamplot.py
@@ -49,7 +49,7 @@ def test_colormap():
@image_comparison(['streamplot_linewidth'], remove_text=True, style='mpl20',
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.002)
def test_linewidth():
X, Y, U, V = velocity_field()
speed = np.hypot(U, V)
diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py
index f14425144..fd8f26502 100644
--- a/lib/matplotlib/tests/test_units.py
+++ b/lib/matplotlib/tests/test_units.py
@@ -74,7 +74,7 @@ def quantity_converter():
# Tests that the conversion machinery works properly for classes that
# work as a facade over numpy arrays (like pint)
@image_comparison(['plot_pint.png'], remove_text=False, style='mpl20',
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.003)
def test_numpy_facade(quantity_converter):
# use former defaults to match existing baseline image
plt.rcParams['axes.formatter.limits'] = -7, 7
@@ -101,7 +101,7 @@ def test_numpy_facade(quantity_converter):
# Tests gh-8908
@image_comparison(['plot_masked_units.png'], remove_text=True, style='mpl20',
- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
+ tol=0.007)
def test_plot_masked_units():
data = np.linspace(-5, 5)
data_masked = np.ma.array(data, mask=(data > -2) & (data < 2))
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 611908063..be11d7c6b 100644
--- a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
+++ b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
@@ -17,7 +17,7 @@ from mpl_toolkits.axisartist.grid_helper_curvelinear import \
@image_comparison(['custom_transform.png'], style='default',
- tol={'aarch64': 0.034}.get(platform.machine(), 0.03))
+ tol=0.04)
def test_custom_transform():
class MyTransform(Transform):
input_dims = 2
@@ -84,7 +84,7 @@ def test_custom_transform():
@image_comparison(['polar_box.png'], style='default',
- tol={'aarch64': 0.04}.get(platform.machine(), 0.03))
+ tol=0.04)
def test_polar_box():
# Remove this line when this test image is regenerated.
plt.rcParams['text.kerning_factor'] = 6
--
2.25.4

View File

@@ -1,19 +0,0 @@
#! /bin/sh
version=$1
[ -z $version ] && exit 1
dir=matplotlib-${version}
file=matplotlib-${version}.tar.gz
result=matplotlib-${version}-without-gpc.tar.gz
wget -vc http://downloads.sourceforge.net/matplotlib/$file
rm -rf matplotlib-${version}
tar xzf $file
rm matplotlib-${version}/agg24/include/agg_conv_gpc.h
rm -f $result
tar czf $result $dir

View File

@@ -1,82 +0,0 @@
diff -up matplotlib-1.0.1/MANIFEST.in.noagg matplotlib-1.0.1/MANIFEST.in
--- matplotlib-1.0.1/MANIFEST.in.noagg 2010-07-06 19:41:55.000000000 -0600
+++ matplotlib-1.0.1/MANIFEST.in 2011-05-20 15:45:38.337580769 -0600
@@ -18,6 +18,5 @@ recursive-include examples *
recursive-include doc *
recursive-include src *.cpp *.c *.h *.m
recursive-include CXX *.cxx *.hxx *.c *.h
-recursive-include agg24 *
recursive-include lib *
recursive-include ttconv *.cpp *.h
diff -up matplotlib-1.0.1/setupext.py.noagg matplotlib-1.0.1/setupext.py
--- matplotlib-1.0.1/setupext.py.noagg 2010-07-06 19:41:55.000000000 -0600
+++ matplotlib-1.0.1/setupext.py 2011-05-20 16:11:56.977764688 -0600
@@ -104,7 +104,6 @@ BUILT_GDK = False
BUILT_PATH = False
BUILT_TRI = False
-AGG_VERSION = 'agg24'
TCL_TK_CACHE = None
# for nonstandard installation/build with --prefix variable
@@ -551,7 +550,8 @@ def add_agg_flags(module):
# before adding the freetype flags since -z comes later
add_base_flags(module)
add_numpy_flags(module)
- module.include_dirs.extend(['src', '%s/include'%AGG_VERSION, '.'])
+ module.include_dirs.extend(['src', '/usr/include/agg2', '.'])
+ module.libraries.append('agg')
# put these later for correct link order
module.libraries.extend(std_libs)
@@ -1251,17 +1251,7 @@ def build_agg(ext_modules, packages):
global BUILT_AGG
if BUILT_AGG: return # only build it if you you haven't already
- agg = (
- 'agg_trans_affine.cpp',
- 'agg_bezier_arc.cpp',
- 'agg_curves.cpp',
- 'agg_vcgen_dash.cpp',
- 'agg_vcgen_stroke.cpp',
- 'agg_image_filters.cpp',
- )
-
- deps = ['%s/src/%s'%(AGG_VERSION, name) for name in agg]
- deps.extend(['src/mplutils.cpp', 'src/agg_py_transforms.cpp'])
+ deps = ['src/mplutils.cpp', 'src/agg_py_transforms.cpp']
deps.extend(glob.glob('CXX/*.cxx'))
deps.extend(glob.glob('CXX/*.c'))
temp_copy('src/_backend_agg.cpp', 'src/backend_agg.cpp')
@@ -1284,15 +1274,7 @@ def build_path(ext_modules, packages):
global BUILT_PATH
if BUILT_PATH: return # only build it if you you haven't already
- agg = (
- 'agg_curves.cpp',
- 'agg_bezier_arc.cpp',
- 'agg_trans_affine.cpp',
- 'agg_vcgen_stroke.cpp',
- )
-
- deps = ['%s/src/%s'%(AGG_VERSION, name) for name in agg]
- deps.extend(glob.glob('CXX/*.cxx'))
+ deps = glob.glob('CXX/*.cxx')
deps.extend(glob.glob('CXX/*.c'))
temp_copy('src/_path.cpp', 'src/path.cpp')
@@ -1317,14 +1299,8 @@ def build_image(ext_modules, packages):
global BUILT_IMAGE
if BUILT_IMAGE: return # only build it if you you haven't already
- agg = ('agg_trans_affine.cpp',
- 'agg_image_filters.cpp',
- 'agg_bezier_arc.cpp',
- )
-
temp_copy('src/_image.cpp', 'src/image.cpp')
deps = ['src/image.cpp', 'src/mplutils.cpp']
- deps.extend(['%s/src/%s'%(AGG_VERSION,name) for name in agg])
deps.extend(glob.glob('CXX/*.cxx'))
deps.extend(glob.glob('CXX/*.c'))

View File

@@ -1,12 +0,0 @@
diff -uNr matplotlib-1.0.1.orig/lib/matplotlib/sphinxext/plot_directive.py matplotlib-1.0.1/lib/matplotlib/sphinxext/plot_directive.py
--- matplotlib-1.0.1.orig/lib/matplotlib/sphinxext/plot_directive.py 2011-01-23 05:42:08.000000000 +0900
+++ matplotlib-1.0.1/lib/matplotlib/sphinxext/plot_directive.py 2011-01-23 05:44:48.000000000 +0900
@@ -346,7 +346,7 @@
del options['nofigs']
formats = setup.config.plot_formats
- if type(formats) == str:
+ if type(formats) == str or type(formats) == unicode:
formats = eval(formats)
fname = os.path.basename(plot_path)

View File

@@ -1,12 +0,0 @@
diff -up matplotlib-1.0.1/setupext.py.tkinter matplotlib-1.0.1/setupext.py
--- matplotlib-1.0.1/setupext.py.tkinter 2011-10-31 14:58:44.000000000 +0100
+++ matplotlib-1.0.1/setupext.py 2011-10-31 14:59:14.000000000 +0100
@@ -829,7 +829,7 @@ def check_for_tk():
if gotit:
print_status("Tkinter", "Tkinter: %s, Tk: %s, Tcl: %s" %
- (Tkinter.__version__.split()[-2], Tkinter.TkVersion, Tkinter.TclVersion))
+ (Tkinter.__version__, Tkinter.TkVersion, Tkinter.TclVersion))
else:
print_status("Tkinter", "no")
if explanation is not None:

File diff suppressed because it is too large Load Diff

View File

@@ -1,81 +1,4 @@
# Rename this file to setup.cfg to modify matplotlib's
# build options.
[egg_info]
tag_svn_revision = 1
[status]
# To suppress display of the dependencies and their versions
# at the top of the build log, uncomment the following line:
#suppress = True
#
# Uncomment to insert lots of diagnostic prints in extension code
#verbose = True
[provide_packages]
# By default, matplotlib checks for a few dependencies and
# installs them if missing. This feature can be turned off
# by uncommenting the following lines. Acceptible values are:
# True: install, overwrite an existing installation
# False: do not install
# auto: install only if the package is unavailable. This
# is the default behavior
#
## Date/timezone support:
#pytz = False
#dateutil = False
#
## Experimental config package support:
enthought.traits = False
configobj = False
[gui_support]
# Matplotlib supports multiple GUI toolkits, including Cocoa,
# GTK, Fltk, Qt, Qt4, Tk, and WX. Support for many of these
# toolkits requires AGG, the Anti-Grain Geometry library, which
# is provided by matplotlib and built by default.
#
# Some backends are written in pure Python, and others require
# extension code to be compiled. By default, matplotlib checks
# for these GUI toolkits during installation and, if present,
# compiles the required extensions to support the toolkit. GTK
# support requires the GTK runtime environment and PyGTK. Wx
# support requires wxWidgets and wxPython. Tk support requires
# Tk and Tkinter. The other GUI toolkits do not require any
# extension code, and can be used as long as the libraries are
# installed on your system.
#
# You can uncomment any the following lines if you know you do
# not want to use the GUI toolkit. Acceptible values are:
# True: build the extension. Exits with a warning if the
# required dependencies are not available
# False: do not build the extension
# auto: build if the required dependencies are available,
# otherwise skip silently. This is the default
# behavior
#
gtk = True
gtkagg = True
tkagg = True
wxagg = True
[rc_options]
# User-configurable options
#
# Default backend, one of: Agg, Cairo, CocoaAgg, GTK, GTKAgg,
# GTKCairo, FltkAgg, Pdf, Ps, QtAgg, Qt4Agg, SVG, TkAgg, WX, WXAgg.
#
# The Agg, Ps, Pdf and SVG backends do not require external
# dependencies. Do not choose GTK, GTKAgg, GTKCairo, TkAgg or WXAgg if
# you have disabled the relevent extension modules. Agg will be used
# by default.
#
backend = GTKAgg
#
# The numerix module was historically used to provide
# compatibility between the Numeric, numarray, and NumPy array
# packages. Now that NumPy has emerge as the universal array
# package for python, numerix is not really necessary and is
# maintained to provide backward compatibility. Do not change
# this unless you have a compelling reason to do so.
numerix = numpy
[packages]
tests = True
toolkits = True
toolkits_tests = True

View File

@@ -1,2 +1,2 @@
b4d61df73ffa715f5009063a4ba78745 matplotlib-1.0.1-without-gpc.tar.gz
24ee8b490f707a60ed5aaf7259f6bc40 mpl_sampledata-1.0.1.tar.gz
SHA512 (matplotlib-3.2.2.tar.gz) = 4c9312e929357a7c73ead51fa1a679c04b2b9735edfe0f1a2d08a07ec4d94d67df4ff6e8c6d594665a3b270cd3033c48ea8f2aa50fb1e2746812f24c27181f59
SHA512 (matplotlib-3.2.2-with-freetype-2.10.1.tar.gz) = 498fb1224f74c5254e3a2620d4d36571ed712a7ac261bcb4b2a548ea57d6b7431634dfad547b529d6fa1a3fab90e6b489150afe815485a3030d1e899edfd9be8

View File

@@ -1,79 +0,0 @@
diff -up matplotlib-1.0.1/CHANGELOG.png15 matplotlib-1.0.1/CHANGELOG
diff -up matplotlib-1.0.1/doc/users/installing.rst.png15 matplotlib-1.0.1/doc/users/installing.rst
--- matplotlib-1.0.1/doc/users/installing.rst.png15 2010-07-06 21:41:46.000000000 -0400
+++ matplotlib-1.0.1/doc/users/installing.rst 2011-12-06 16:29:05.824621532 -0500
@@ -138,7 +138,7 @@ libraries themselves.
array support for python (`download
<http://sourceforge.net/project/showfiles.php?group_id=1369&package_id=175103>`__)
-libpng 1.1 (or later)
+libpng 1.2 (or later)
library for loading and saving :term:`PNG` files (`download
<http://www.libpng.org/pub/png/libpng.html>`__). libpng requires
zlib. If you are a windows user, you can ignore this since we
diff -up matplotlib-1.0.1/src/_png.cpp.png15 matplotlib-1.0.1/src/_png.cpp
--- matplotlib-1.0.1/src/_png.cpp.png15 2010-10-12 12:14:42.000000000 -0400
+++ matplotlib-1.0.1/src/_png.cpp 2011-12-06 16:29:05.825621532 -0500
@@ -350,10 +350,10 @@ _png_module::read_png(const Py::Tuple& a
png_set_sig_bytes(png_ptr, 8);
png_read_info(png_ptr, info_ptr);
- png_uint_32 width = info_ptr->width;
- png_uint_32 height = info_ptr->height;
+ png_uint_32 width = png_get_image_width(png_ptr, info_ptr);
+ png_uint_32 height = png_get_image_height(png_ptr, info_ptr);
- int bit_depth = info_ptr->bit_depth;
+ int bit_depth = png_get_bit_depth(png_ptr, info_ptr);
// Unpack 1, 2, and 4-bit images
if (bit_depth < 8)
@@ -361,7 +361,7 @@ _png_module::read_png(const Py::Tuple& a
// If sig bits are set, shift data
png_color_8p sig_bit;
- if ((info_ptr->color_type != PNG_COLOR_TYPE_PALETTE) &&
+ if ((png_get_color_type(png_ptr, info_ptr) != PNG_COLOR_TYPE_PALETTE) &&
png_get_sBIT(png_ptr, info_ptr, &sig_bit))
{
png_set_shift(png_ptr, sig_bit);
@@ -374,13 +374,13 @@ _png_module::read_png(const Py::Tuple& a
}
// Convert palletes to full RGB
- if (info_ptr->color_type == PNG_COLOR_TYPE_PALETTE)
+ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_PALETTE)
{
png_set_palette_to_rgb(png_ptr);
}
// If there's an alpha channel convert gray to RGB
- if (info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
+ if (png_get_color_type(png_ptr, info_ptr) == PNG_COLOR_TYPE_GRAY_ALPHA)
{
png_set_gray_to_rgb(png_ptr);
}
@@ -408,11 +408,11 @@ _png_module::read_png(const Py::Tuple& a
npy_intp dimensions[3];
dimensions[0] = height; //numrows
dimensions[1] = width; //numcols
- if (info_ptr->color_type & PNG_COLOR_MASK_ALPHA)
+ if (png_get_color_type(png_ptr, info_ptr) & PNG_COLOR_MASK_ALPHA)
{
dimensions[2] = 4; //RGBA images
}
- else if (info_ptr->color_type & PNG_COLOR_MASK_COLOR)
+ else if (png_get_color_type(png_ptr, info_ptr) & PNG_COLOR_MASK_COLOR)
{
dimensions[2] = 3; //RGB images
}
@@ -421,7 +421,8 @@ _png_module::read_png(const Py::Tuple& a
dimensions[2] = 1; //Greyscale images
}
//For gray, return an x by y array, not an x by y by 1
- int num_dims = (info_ptr->color_type & PNG_COLOR_MASK_COLOR) ? 3 : 2;
+ int num_dims = (png_get_color_type(png_ptr, info_ptr)
+ & PNG_COLOR_MASK_COLOR) ? 3 : 2;
double max_value = (1 << ((bit_depth < 8) ? 8 : bit_depth)) - 1;
PyArrayObject *A = (PyArrayObject *) PyArray_SimpleNew(