From b72eb00ae056d4a297de0f0d25c2a2ec6ed243b0 Mon Sep 17 00:00:00 2001 From: Kevin Mihelich Date: Thu, 17 Jan 2019 00:42:13 +0000 Subject: [PATCH] community/python2-matplotlib to 2.2.3-4 --- community/python2-matplotlib/PKGBUILD | 11 ++- .../python2-matplotlib-13181.diff | 93 +++++++++++++++++++ 2 files changed, 103 insertions(+), 1 deletion(-) create mode 100644 community/python2-matplotlib/python2-matplotlib-13181.diff diff --git a/community/python2-matplotlib/PKGBUILD b/community/python2-matplotlib/PKGBUILD index 9e9ef37df..fb2b0e051 100644 --- a/community/python2-matplotlib/PKGBUILD +++ b/community/python2-matplotlib/PKGBUILD @@ -10,7 +10,7 @@ pkgname=python2-matplotlib pkgver=2.2.3 -pkgrel=3 +pkgrel=4 pkgdesc="A python plotting library, making publication quality plots" arch=('x86_64') url="https://matplotlib.org" @@ -38,16 +38,25 @@ checkdepends=('python2-pytest-xdist' 'python2-pytest-runner' 'xorg-server-xvfb' 'ffmpeg' 'imagemagick' 'ttf-freefont' 'python2-pandas' 'python2-mock') install=$pkgname.install source=($pkgname-$pkgver.tar.gz::"https://github.com/matplotlib/matplotlib/archive/v$pkgver.tar.gz" + $pkgname-numpy-asscalar.patch::"https://github.com/matplotlib/matplotlib/commit/62297d167c2b7ac8305ba6a60ec0191c6e7a09af.patch" + $pkgname-13181.diff setup.cfg) sha512sums=('d118f5d56e2f578031aba22933c0b3a4423a31a04f50f08cc1aa660186546d09692a9cf401bb5f24cb296f94fbfd8707460728d501ac2bd4a624dfa89e92949b' + 'bb307885c17de71edf33dd09322aca99c2fade6dfbdf3482a7c11f2522fc40e2d41d8f51e77d2531de746906aabf3a68fa1bd8d76d48ea979c8010937713c0a9' + 'e63cd9b7a26de901815e3cdcc6a8e8f70e07bf9eed2befe4240747d245c96a4a44cc4b2fe876198b7bf055779c735d7571db2ca3904acdb1e4ddd288b3e24d2f' 'f08c0b2e94599fdf2b736b8a655d862209934441d90f20ed872cfc128b8d2a6525763ab7cf64f2b3630e22a90798f4c52aa93b18087e9b48708d9bae34aada0b') prepare() { cd matplotlib-$pkgver + + patch -p1 -i ../$pkgname-numpy-asscalar.patch + patch -p1 -i ../$pkgname-13181.diff + for file in $(find . -name '*.py' -print); do sed -i -e "s|^#!.*/usr/bin/python|#!/usr/bin/python2|" \ -e "s|^#!.*/usr/bin/env *python|#!/usr/bin/env python2|" $file done + cd .. cp -a matplotlib-$pkgver{,-test} diff --git a/community/python2-matplotlib/python2-matplotlib-13181.diff b/community/python2-matplotlib/python2-matplotlib-13181.diff new file mode 100644 index 000000000..97ad97e7e --- /dev/null +++ b/community/python2-matplotlib/python2-matplotlib-13181.diff @@ -0,0 +1,93 @@ +diff --git a/lib/matplotlib/testing/conftest.py b/lib/matplotlib/testing/conftest.py +index 9dc180c9600..fb306594780 100644 +--- a/lib/matplotlib/testing/conftest.py ++++ b/lib/matplotlib/testing/conftest.py +@@ -24,19 +24,19 @@ def mpl_test_settings(request): + original_settings = matplotlib.rcParams.copy() + + backend = None +- backend_marker = request.keywords.get('backend') ++ backend_marker = request.node.get_closest_marker('backend') + if backend_marker is not None: + assert len(backend_marker.args) == 1, \ + "Marker 'backend' must specify 1 backend." +- backend = backend_marker.args[0] ++ backend, = backend_marker.args + prev_backend = matplotlib.get_backend() + + style = '_classic_test' # Default of cleanup and image_comparison too. +- style_marker = request.keywords.get('style') ++ style_marker = request.node.get_closest_marker('style') + if style_marker is not None: + assert len(style_marker.args) == 1, \ + "Marker 'style' must specify 1 style." +- style = style_marker.args[0] ++ style, = style_marker.args + + matplotlib.testing.setup() + if backend is not None: +@@ -64,7 +64,7 @@ def mpl_image_comparison_parameters(request, extension): + # pytest won't get confused. + # We annotate the decorated function with any parameters captured by this + # fixture so that they can be used by the wrapper in image_comparison. +- baseline_images = request.keywords['baseline_images'].args[0] ++ baseline_images, = request.node.get_closest_marker('baseline_images').args + if baseline_images is None: + # Allow baseline image list to be produced on the fly based on current + # parametrization. +diff --git a/lib/matplotlib/tests/test_backend_ps.py b/lib/matplotlib/tests/test_backend_ps.py +index 8bf6e7dde38..10d8033d4ca 100644 +--- a/lib/matplotlib/tests/test_backend_ps.py ++++ b/lib/matplotlib/tests/test_backend_ps.py +@@ -31,13 +31,16 @@ + @pytest.mark.flaky(reruns=3) + @pytest.mark.parametrize('format, use_log, rcParams', [ + ('ps', False, {}), +- needs_ghostscript(('ps', False, {'ps.usedistiller': 'ghostscript'})), +- needs_usetex(needs_ghostscript(('ps', False, {'text.latex.unicode': True, +- 'text.usetex': True}))), ++ pytest.param('ps', False, {'ps.usedistiller': 'ghostscript'}, ++ marks=needs_ghostscript), ++ pytest.param('ps', False, {'text.latex.unicode': True, ++ 'text.usetex': True}, ++ marks=[needs_ghostscript, needs_usetex]), + ('eps', False, {}), + ('eps', True, {'ps.useafm': True}), +- needs_usetex(needs_ghostscript(('eps', False, {'text.latex.unicode': True, +- 'text.usetex': True}))), ++ pytest.param('eps', False, {'text.latex.unicode': True, ++ 'text.usetex': True}, ++ marks=[needs_ghostscript, needs_usetex]), + ], ids=[ + 'ps', + 'ps with distiller', +diff --git a/lib/matplotlib/tests/test_backend_svg.py b/lib/matplotlib/tests/test_backend_svg.py +index e0cbdfa8bce..1f6bf7cc3a6 100644 +--- a/lib/matplotlib/tests/test_backend_svg.py ++++ b/lib/matplotlib/tests/test_backend_svg.py +@@ -130,7 +130,7 @@ def _test_determinism_save(filename, usetex): + "filename, usetex", + # unique filenames to allow for parallel testing + [("determinism_notex.svg", False), +- needs_usetex(("determinism_tex.svg", True))]) ++ pytest.param("determinism_tex.svg", True, marks=needs_usetex)]) + def test_determinism(filename, usetex): + import sys + from subprocess import check_output, STDOUT, CalledProcessError +diff --git a/lib/matplotlib/tests/test_backends_interactive.py b/lib/matplotlib/tests/test_backends_interactive.py +index df7a5d08a10..8cd4585bffc 100644 +--- a/lib/matplotlib/tests/test_backends_interactive.py ++++ b/lib/matplotlib/tests/test_backends_interactive.py +@@ -31,8 +31,10 @@ def _get_testable_interactive_backends(): + reason = "No $DISPLAY" + elif any(importlib.util.find_spec(dep) is None for dep in deps): + reason = "Missing dependency" +- backends.append(pytest.mark.skip(reason=reason)(backend) if reason +- else backend) ++ if reason: ++ backend = pytest.param( ++ backend, marks=pytest.mark.skip(reason=reason)) ++ backends.append(backend) + return backends + +