Compare commits

...

16 Commits
f22 ... f25

Author SHA1 Message Date
Dan Horák
6afee76984 - disable tests and html docs on some alt-arches to unblock depending builds 2016-10-24 16:05:27 +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
13 changed files with 378 additions and 178 deletions

3
.gitignore vendored
View File

@@ -6,3 +6,6 @@ matplotlib-1.0.0-without-gpc.tar.gz
/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

View File

@@ -1,14 +1,9 @@
Description: Fixes the path to search for matplotlibrc file
Forwarded: not-needed
Author: Sandro Tosi <morph@debian.org>
--- a/lib/matplotlib/__init__.py
+++ b/lib/matplotlib/__init__.py
@@ -658,10 +658,12 @@ def _get_data_path():
raise RuntimeError('Path in environment MATPLOTLIBDATA not a directory')
return path
--- a/lib/matplotlib/__init__.py 2016-04-04 12:54:26.427194940 +0200
+++ b/lib/matplotlib/__init__.py 2016-04-04 12:56:12.662590255 +0200
@@ -682,9 +682,12 @@
- path = os.sep.join([os.path.dirname(__file__), 'mpl-data'])
_file = _decode_filesystem_path(__file__)
path = os.sep.join([os.path.dirname(_file), 'mpl-data'])
+ path = '/usr/share/matplotlib/mpl-data'
if os.path.isdir(path):
return path
@@ -18,7 +13,7 @@ Author: Sandro Tosi <morph@debian.org>
# setuptools' namespace_packages may highjack this init file
# so need to try something known to be in matplotlib, not basemap
import matplotlib.afm
@@ -786,7 +788,7 @@ def matplotlib_fname():
@@ -812,7 +815,7 @@
home, '.matplotlib', 'matplotlibrc')
return fname
@@ -27,3 +22,15 @@ Author: Sandro Tosi <morph@debian.org>
fname = os.path.join(path, 'matplotlibrc')
if not os.path.exists(fname):
warnings.warn('Could not find matplotlibrc; using defaults')
--- a/lib/matplotlib/cbook.py 2016-05-20 14:14:52.000000000 +0200
+++ b/lib/matplotlib/cbook.py 2016-05-20 19:28:57.373601582 +0200
@@ -823,8 +823,7 @@ def get_sample_data(fname, asfileobj=Tru
if matplotlib.rcParams['examples.directory']:
root = matplotlib.rcParams['examples.directory']
else:
- root = os.path.join(os.path.dirname(__file__),
- "mpl-data", "sample_data")
+ root = os.path.join(matplotlib._get_data_path(), 'sample_data')
path = os.path.join(root, fname)
if asfileobj:

View File

@@ -1,14 +0,0 @@
Description: minor glitch in draw_markers() description
Author: Jakub Wilk <jwilk@debian.org>
--- a/doc/api/api_changes.rst
+++ b/doc/api/api_changes.rst
@@ -1143,7 +1143,7 @@ New methods:
* :meth:`draw_markers(self, gc, marker_path, marker_trans, path,
trans, rgbFace)
- <matplotlib.backend_bases.RendererBase.draw_markers`
+ <matplotlib.backend_bases.RendererBase.draw_markers>`
* :meth:`draw_path_collection(self, master_transform, cliprect,
clippath, clippath_trans, paths, all_transforms, offsets,

View File

@@ -1,50 +0,0 @@
Description: don't separate param and its argument with a space
--- a/lib/mpl_toolkits/axes_grid1/axes_divider.py
+++ b/lib/mpl_toolkits/axes_grid1/axes_divider.py
@@ -201,12 +201,12 @@ class Divider(object):
def locate(self, nx, ny, nx1=None, ny1=None, axes=None, renderer=None):
"""
- :param nx, nx1: Integers specifying the column-position of the
+ :param nx,nx1: Integers specifying the column-position of the
cell. When nx1 is None, a single nx-th column is
specified. Otherwise location of columns spanning between nx
to nx1 (but excluding nx1-th column) is specified.
- :param ny, ny1: same as nx and nx1, but for row positions.
+ :param ny,ny1: same as nx and nx1, but for row positions.
"""
figW, figH = self._fig.get_size_inches()
@@ -250,12 +250,12 @@ class Divider(object):
(:class:`mpl_toolkits.axes_grid.axes_divider.AxesLocator`) for
specified cell.
- :param nx, nx1: Integers specifying the column-position of the
+ :param nx,nx1: Integers specifying the column-position of the
cell. When nx1 is None, a single nx-th column is
specified. Otherwise location of columns spanning between nx
to nx1 (but excluding nx1-th column) is specified.
- :param ny, ny1: same as nx and nx1, but for row positions.
+ :param ny,ny1: same as nx and nx1, but for row positions.
"""
return AxesLocator(self, nx, ny, nx1, ny1)
@@ -298,12 +298,12 @@ class AxesLocator(object):
"""
:param axes_divider: An instance of AxesDivider class.
- :param nx, nx1: Integers specifying the column-position of the
+ :param nx,nx1: Integers specifying the column-position of the
cell. When nx1 is None, a single nx-th column is
specified. Otherwise location of columns spanning between nx
to nx1 (but excluding nx1-th column) is is specified.
- :param ny, ny1: same as nx and nx1, but for row positions.
+ :param ny,ny1: same as nx and nx1, but for row positions.
"""
self._axes_divider = axes_divider

View File

@@ -1,21 +0,0 @@
#! /bin/sh
version=$1
[ -z $version ] && exit 1
dir=matplotlib-${version}
file=matplotlib-${version}.tar.gz
file=v${version}.tar.gz
result=matplotlib-${version}-without-extern.tar.xz
test -f $file || wget -v https://github.com/matplotlib/matplotlib/archive/$file
rm -rf matplotlib-${version}
tar xzf $file
rm -vr matplotlib-${version}/extern/qhull
rm -vr matplotlib-${version}/lib/matplotlib/mpl-data/sample_data/lena.*
rm -f $result
tar cJf $result $dir

View File

@@ -1,32 +0,0 @@
From 2e445c2c4f66f1e0de9779a3fd966aaf8d8ed2c5 Mon Sep 17 00:00:00 2001
From: Thomas A Caswell <tcaswell@gmail.com>
Date: Sun, 17 May 2015 23:45:44 -0400
Subject: [PATCH] Merge pull request #4439 from tswsl1989/restrict_dict_gdk
FIX : Import cbook.restrict_dict into backend_gdk
---
lib/matplotlib/backends/backend_gdk.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/lib/matplotlib/backends/backend_gdk.py b/lib/matplotlib/backends/backend_gdk.py
index fc705fe..024c27e 100644
--- a/lib/matplotlib/backends/backend_gdk.py
+++ b/lib/matplotlib/backends/backend_gdk.py
@@ -26,7 +26,7 @@ def fn_name(): return sys._getframe(1).f_code.co_name
from matplotlib._pylab_helpers import Gcf
from matplotlib.backend_bases import RendererBase, GraphicsContextBase, \
FigureManagerBase, FigureCanvasBase
-from matplotlib.cbook import is_string_like
+from matplotlib.cbook import is_string_like, restrict_dict
from matplotlib.figure import Figure
from matplotlib.mathtext import MathTextParser
from matplotlib.transforms import Affine2D
@@ -477,7 +477,7 @@ def _print_image(self, filename, format, *args, **kwargs):
# set the default quality, if we are writing a JPEG.
# http://www.pygtk.org/docs/pygtk/class-gdkpixbuf.html#method-gdkpixbuf--save
- options = cbook.restrict_dict(kwargs, ['quality'])
+ options = restrict_dict(kwargs, ['quality'])
if format in ['jpg','jpeg']:
if 'quality' not in options:
options['quality'] = rcParams['savefig.jpeg_quality']

View File

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

View File

@@ -0,0 +1,167 @@
diff -up matplotlib-1.5.2rc2/lib/matplotlib/sphinxext/tests/test_tinypages.py.tests matplotlib-1.5.2rc2/lib/matplotlib/sphinxext/tests/test_tinypages.py
--- matplotlib-1.5.2rc2/lib/matplotlib/sphinxext/tests/test_tinypages.py.tests 2016-05-27 04:19:34.000000000 +0200
+++ matplotlib-1.5.2rc2/lib/matplotlib/sphinxext/tests/test_tinypages.py 2016-06-18 00:51:20.449769054 +0200
@@ -1,6 +1,7 @@
""" Tests for tinypages build using sphinx extensions """
import shutil
+import sys
import tempfile
from os.path import (join as pjoin, dirname, isdir)
@@ -16,6 +17,8 @@ TINY_PAGES = pjoin(HERE, 'tinypages')
def setup():
# Check we have the sphinx-build command
+ if sys.version_info[0] >= 3:
+ raise SkipTest('sphinx-build works only with python 2.x')
try:
ret = call(['sphinx-build', '--help'], stdout=PIPE, stderr=PIPE)
except OSError:
diff -up matplotlib-1.5.2rc2/lib/matplotlib/tests/test_axes.py.tests matplotlib-1.5.2rc2/lib/matplotlib/tests/test_axes.py
--- matplotlib-1.5.2rc2/lib/matplotlib/tests/test_axes.py.tests 2016-05-27 04:19:34.000000000 +0200
+++ matplotlib-1.5.2rc2/lib/matplotlib/tests/test_axes.py 2016-06-18 01:07:54.058379133 +0200
@@ -5,6 +5,7 @@ import six
from six.moves import xrange
from itertools import chain
import io
+from distutils.version import LooseVersion
from nose.tools import assert_equal, assert_raises, assert_false, assert_true
from nose.plugins.skip import SkipTest
@@ -84,7 +85,7 @@ def test_formatter_ticker():
@image_comparison(baseline_images=["formatter_large_small"])
def test_formatter_large_small():
- if tuple(map(int, np.__version__.split('.'))) >= (1, 11, 0):
+ if LooseVersion(np.__version__) >= LooseVersion('1.11.0'):
raise KnownFailureTest("Fall out from a fixed numpy bug")
# github issue #617, pull #619
fig, ax = plt.subplots(1)
diff -up matplotlib-1.5.2rc2/lib/matplotlib/tests/test_bbox_tight.py.tests matplotlib-1.5.2rc2/lib/matplotlib/tests/test_bbox_tight.py
--- matplotlib-1.5.2rc2/lib/matplotlib/tests/test_bbox_tight.py.tests 2016-06-18 00:51:19.000000000 +0200
+++ matplotlib-1.5.2rc2/lib/matplotlib/tests/test_bbox_tight.py 2016-06-18 01:09:11.314805850 +0200
@@ -3,6 +3,7 @@ from __future__ import (absolute_import,
import six
from six.moves import xrange
+from distutils.version import LooseVersion
import numpy as np
@@ -91,7 +92,7 @@ def test_bbox_inches_tight_clipping():
remove_text=True, savefig_kwarg={'bbox_inches': 'tight'})
def test_bbox_inches_tight_raster():
"""Test rasterization with tight_layout"""
- if tuple(map(int, np.__version__.split('.'))) >= (1, 11, 0):
+ if LooseVersion(np.__version__) >= LooseVersion('1.11.0'):
raise KnownFailureTest("Fall out from a fixed numpy bug")
fig = plt.figure()
ax = fig.add_subplot(111)
diff -up matplotlib-1.5.2rc2/lib/matplotlib/tests/test_text.py.tests matplotlib-1.5.2rc2/lib/matplotlib/tests/test_text.py
--- matplotlib-1.5.2rc2/lib/matplotlib/tests/test_text.py.tests 2016-06-18 00:51:19.803773859 +0200
+++ matplotlib-1.5.2rc2/lib/matplotlib/tests/test_text.py 2016-06-18 00:51:20.450769046 +0200
@@ -18,91 +18,6 @@ from matplotlib.text import Annotation,
from matplotlib.backends.backend_agg import RendererAgg
-@image_comparison(baseline_images=['font_styles'])
-def test_font_styles():
- from matplotlib import _get_data_path
- data_path = _get_data_path()
-
- def find_matplotlib_font(**kw):
- prop = FontProperties(**kw)
- path = findfont(prop, directory=data_path)
- return FontProperties(fname=path)
-
- from matplotlib.font_manager import FontProperties, findfont
- warnings.filterwarnings(
- 'ignore',
- ('findfont: Font family \[u?\'Foo\'\] not found. Falling back to .'),
- UserWarning,
- module='matplotlib.font_manager')
-
- plt.figure()
- ax = plt.subplot(1, 1, 1)
-
- normalFont = find_matplotlib_font(
- family="sans-serif",
- style="normal",
- variant="normal",
- size=14)
- ax.annotate(
- "Normal Font",
- (0.1, 0.1),
- xycoords='axes fraction',
- fontproperties=normalFont)
-
- boldFont = find_matplotlib_font(
- family="Foo",
- style="normal",
- variant="normal",
- weight="bold",
- stretch=500,
- size=14)
- ax.annotate(
- "Bold Font",
- (0.1, 0.2),
- xycoords='axes fraction',
- fontproperties=boldFont)
-
- boldItemFont = find_matplotlib_font(
- family="sans serif",
- style="italic",
- variant="normal",
- weight=750,
- stretch=500,
- size=14)
- ax.annotate(
- "Bold Italic Font",
- (0.1, 0.3),
- xycoords='axes fraction',
- fontproperties=boldItemFont)
-
- lightFont = find_matplotlib_font(
- family="sans-serif",
- style="normal",
- variant="normal",
- weight=200,
- stretch=500,
- size=14)
- ax.annotate(
- "Light Font",
- (0.1, 0.4),
- xycoords='axes fraction',
- fontproperties=lightFont)
-
- condensedFont = find_matplotlib_font(
- family="sans-serif",
- style="normal",
- variant="normal",
- weight=500,
- stretch=100,
- size=14)
- ax.annotate(
- "Condensed Font",
- (0.1, 0.5),
- xycoords='axes fraction',
- fontproperties=condensedFont)
-
- ax.set_xticks([])
- ax.set_yticks([])
@image_comparison(baseline_images=['multiline'])
diff -up matplotlib-1.5.2rc2/tests.py.tests matplotlib-1.5.2rc2/tests.py
--- matplotlib-1.5.2rc2/tests.py.tests 2016-05-27 04:19:34.000000000 +0200
+++ matplotlib-1.5.2rc2/tests.py 2016-06-18 00:51:20.450769046 +0200
@@ -66,7 +66,7 @@ if __name__ == '__main__':
if '--no-network' in sys.argv:
from matplotlib.testing import disable_internet
disable_internet.turn_off_internet()
- extra_args.extend(['--eval-attr="not network"'])
+ extra_args.extend(['-a','!network'])
sys.argv.remove('--no-network')
run(extra_args)

View File

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

View File

@@ -1,18 +0,0 @@
--- setupext.py.orig 2014-01-25 15:06:39.460916454 +0100
+++ setupext.py 2014-01-25 15:06:53.080946205 +0100
@@ -841,15 +841,6 @@
name = 'pycxx'
def check(self):
- if PY3:
- # There is no version of PyCXX in the wild that will work
- # with Python 3.x and matplotlib, since they lack support
- # for the buffer object.
- self.__class__.found_external = False
- return ("Official versions of PyCXX are not compatible "
- "with matplotlib on Python 3.x, since they lack "
- "support for the buffer object. Using local "
- "copy")
self.__class__.found_external = True
old_stdout = sys.stdout

View File

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

View File

@@ -1,12 +1,17 @@
%if 0%{?fedora} >= 18
%if 0%{?fedora}
%global with_python3 1
%global basepy3dir %(echo ../`basename %{py3dir}`)
%else
%global with_python3 0
%endif
%global __provides_exclude_from .*/site-packages/.*\\.so$
%global with_html 1
%ifarch %{power64} s390x
# disable tests on alt arches until resolved by upstream
%global with_html 0
%global run_tests 0
%else
%global with_html 1
%global run_tests 1
%endif
# On RHEL 7 onwards, don't build with wx:
%if 0%{?rhel} >= 7
@@ -16,7 +21,7 @@
%endif
# On Fedora 21 onwards, enable Qt5 backend:
%if 0%{?fedora} >= 21
%if 0%{?fedora}
%global with_qt5 1
%else
%global with_qt5 0
@@ -44,27 +49,32 @@
# Use the same directory of the main package for subpackage licence and docs
%global _docdir_fmt %{name}
%global rctag rc2
Name: python-matplotlib
Version: 1.4.3
Release: 13%{?dist}
Version: 1.5.2
Release: 0.3%{?rctag:.%{rctag}}%{?dist}
Summary: Python 2D plotting library
Group: Development/Libraries
# qt4_editor backend is MIT
License: Python and MIT
URL: http://matplotlib.org
#Modified Sources to remove the bundled libraries
Source0: matplotlib-%{version}-without-extern.tar.xz
Source0: https://github.com/matplotlib/matplotlib/archive/v%{version}%{?rctag}.tar.gz#/matplotlib-%{version}%{?rctag}.tar.gz
Source1: setup.cfg
Patch0: %{name}-noagg.patch
Patch1: %{name}-system-cxx.patch
#Patch0: %{name}-noagg.patch
# https://github.com/matplotlib/matplotlib/issues/6536
Patch2: 20_matplotlibrc_path_search_fix.patch
Patch3: 40_bts608939_draw_markers_description.patch
Patch4: 50_bts608942_spaces_in_param_args.patch
Patch5: 70_bts720549_try_StayPuft_for_xkcd.patch
Patch6: matplotlib-1.4.3-cbook.restrict_dict.patch
# https://github.com/matplotlib/matplotlib/issues/6537
Patch6: python-matplotlib-use-system-six.patch
# https://github.com/matplotlib/matplotlib/pull/6558
# https://github.com/matplotlib/matplotlib/issues/6539
Patch7: python-matplotlib-disable-failing-tests.patch
# https://github.com/matplotlib/matplotlib/issues/6538
Patch8: python-matplotlib-disable-failing-tests-armv7hl.patch
Patch9: python-matplotlib-qhull.patch
BuildRequires: agg-devel
BuildRequires: freetype-devel
BuildRequires: libpng-devel
BuildRequires: qhull-devel
@@ -75,12 +85,17 @@ BuildRequires: python-pycxx-devel
BuildRequires: python-dateutil
BuildRequires: python-setuptools
%if %{with_html}
BuildRequires: python-ipython-sphinx
BuildRequires: python-numpydoc
BuildRequires: python-scikit-image
BuildRequires: python2-cycler
%endif
%if %{run_tests}
BuildRequires: python-nose
BuildRequires: python2-cycler
BuildRequires: python2-mock
%if %{with_python3}
BuildRequires: python3-mock
BuildRequires: python3-nose
%endif
%endif
@@ -90,6 +105,7 @@ BuildRequires: xorg-x11-server-Xvfb
BuildRequires: zlib-devel
Provides: bundled(agg) = 2.4
Provides: bundled(ttconv)
%description
Matplotlib is a python 2D plotting library which produces publication
@@ -110,6 +126,7 @@ Requires: dvipng
Requires: python-six
Requires: numpy
Requires: pyparsing
Requires: python2-cycler
Requires: python-dateutil
Requires: pytz
%if 0%{?fedora} >= 18
@@ -263,12 +280,16 @@ BuildRequires: python3-pycxx-devel
BuildRequires: python3-pyparsing
BuildRequires: python3-pytz
BuildRequires: python3-six
BuildRequires: python3-cycler
Requires: python3-six
Requires: python3-numpy
Requires: python3-cairo
Requires: python3-pyparsing
Requires: python3-cycler
Requires: python3-dateutil
Requires: python3-pytz
Requires: dejavu-sans-fonts
Requires: dvipng
%if 0%{?fedora} >= 18
Requires: stix-math-fonts
%else
@@ -342,7 +363,8 @@ Requires: python3-tkinter
%endif
%prep
%setup -q -n matplotlib-%{version}
%setup -q -n matplotlib-%{version}%{?rctag}
rm -r {extern/qhull,lib/matplotlib/externals}
# Copy setup.cfg to the builddir
sed 's/\(backend = \).*/\1%{backend}/' >setup.cfg <%{SOURCE1}
@@ -360,14 +382,23 @@ fi
sed -i 's/\(USE_FONTCONFIG = \)False/\1True/' lib/matplotlib/font_manager.py
%endif
# Remove references to bundled libraries
%patch0 -b .noagg
%patch1 -b .cxx
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
for f in $(find . -type f -name '*.py' -print) ; do
if grep -q "matplotlib.externals" $f ; then
sed -i -e 's/from matplotlib.externals import six/import six/g' -e 's/from matplotlib.externals.six/from six/g' $f
fi
done
%patch6 -p1 -b .six
%patch7 -p1 -b .tests
%ifarch armv7hl
%patch8 -p1 -b .tests-armv7hl
%endif
%if 0%{?fedora} > 24
# Installation paths changed
%patch9 -p1 -b .qh
%endif
chmod -x lib/matplotlib/mpl-data/images/*.svg
@@ -393,7 +424,7 @@ MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data \
xvfb-run %{__python3} setup.py build
# documentation cannot be built with python3 due to syntax errors
# and building with python 2 exits with cryptic error messages
# https://github.com/matplotlib/matplotlib/issues/5805
%endif
%install
@@ -411,12 +442,11 @@ rm -rf %{buildroot}%{_datadir}/matplotlib/mpl-data/fonts
%endif
%if %{with_python3}
MPLCONFIGDIR=$PWD/.. \
MATPLOTLIBDATA=$PWD/../lib/matplotlib/mpl-data/ \
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=$PWD/lib/matplotlib/mpl-data/ \
%{__python3} setup.py install -O1 --skip-build --root=%{buildroot}
chmod +x %{buildroot}%{python3_sitearch}/matplotlib/dates.py
rm -fr %{buildroot}%{python3_sitearch}/matplotlib/mpl-data
rm -f %{buildroot}%{python3_sitearch}/six.py
%endif
%if %{run_tests}
@@ -426,21 +456,21 @@ echo "backend : %{backend}" > matplotlibrc
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python2_sitearch} \
xvfb-run %{__python} -c "import matplotlib; matplotlib.test()"
xvfb-run -a %{__python2} tests.py --no-network --processes=$(getconf _NPROCESSORS_ONLN) --process-timeout=300
%if %{with_python3}
MPLCONFIGDIR=$PWD \
MATPLOTLIBDATA=%{buildroot}%{_datadir}/matplotlib/mpl-data \
PYTHONPATH=%{buildroot}%{python3_sitearch} \
xvfb-run %{__python3} -c "import matplotlib; matplotlib.test()"
xvfb-run -a %{__python3} tests.py --no-network --processes=$(getconf _NPROCESSORS_ONLN) --process-timeout=300
%endif
%endif # run_tests
%files -n python2-matplotlib
%license LICENSE/
%doc README.rst
%doc CONTRIBUTING.md
%doc CHANGELOG
%doc PKG-INFO
%doc README.rst
%{python2_sitearch}/*egg-info
%{python2_sitearch}/matplotlib-*-nspkg.pth
%{python2_sitearch}/matplotlib/
@@ -508,9 +538,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%if %{with_python3}
%files -n python3-matplotlib
%license LICENSE/
%doc README.rst
%doc CONTRIBUTING.md
%doc CHANGELOG
%doc PKG-INFO
%doc README.rst
%{python3_sitearch}/*egg-info
%{python3_sitearch}/matplotlib-*-nspkg.pth
%{python3_sitearch}/matplotlib/
@@ -557,6 +587,44 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} \
%endif
%changelog
* Mon Oct 24 2016 Dan Horák <dan[at]danny.cz> - 1.5.2-0.3.rc2
- disable tests and html docs on some alt-arches to unblock depending builds
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.5.2-0.2.rc2
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Fri Jun 03 2016 Dominik Mierzejewski <rpm@greysector.net> - 1.5.1-7
- Update to 1.5.2rc2.
- Drop wrong hunk from use-system-six patch.
- Patch new qhull paths on F25+ instead of using sed.
- Rebase failing tests patch.
* Mon May 23 2016 Dominik Mierzejewski <rpm@greysector.net> - 1.5.1-6
- Upstream no longer ships non-free images, use pristine source.
* Wed May 18 2016 Dominik Mierzejewski <rpm@greysector.net> - 1.5.1-5
- Unbundle python-six (#1336740).
- Run tests (and temporarily disable failing ones).
- Use upstream-recommended way of running tests in parallel.
- python2-cycler and -mock are required for running tests.
* Sat Apr 30 2016 Ralf Corsépius <corsepiu@fedoraproject.org> - 1.5.1-4
- Rebuild for qhull-2015.2-1.
- Reflect qhull_a.h's location having changed.
* Wed Apr 6 2016 Orion Poplawski <orion@cora.nwra.com> - 1.5.1-3
- Add requires python-cycler
* Tue Apr 05 2016 Jon Ciesla <limburgher@gmail.com> - 1.5.1-2
- Drop agg-devel BR, fix sphinx build with python*cycler BR
* Mon Apr 04 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.5.1-1
- update to 1.5.1 (#1276806)
- Add missing requires of dvipng to python3-matplotlib (#1270202)
- use bundled agg (#1276806)
- Drop cxx patch (was dropped upstream)
- Regenerate search path patch2
* Mon Apr 04 2016 Thomas Spura <tomspur@fedoraproject.org> - 1.4.3-13
- Require the qt5 subpackage from the qt4 subpackage (#1219556)

View File

@@ -1 +1 @@
c16111ce7d6c799a2b557699f40eb709 matplotlib-1.4.3-without-extern.tar.xz
495f6bdf126b40f63c316c9404349e40 matplotlib-1.5.2rc2.tar.gz