Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-matplotlib for openSUSE:Factory checked in at 2022-05-30 12:42:37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-matplotlib (Old) and /work/SRC/openSUSE:Factory/.python-matplotlib.new.2254 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-matplotlib" Mon May 30 12:42:37 2022 rev:94 rq:979442 version:3.5.2 Changes: -------- --- /work/SRC/openSUSE:Factory/python-matplotlib/python-matplotlib.changes 2022-04-16 00:12:40.769523339 +0200 +++ /work/SRC/openSUSE:Factory/.python-matplotlib.new.2254/python-matplotlib.changes 2022-05-30 12:43:15.556335342 +0200 @@ -1,0 +2,15 @@ +Thu May 26 16:23:46 UTC 2022 - Ben Greiner <c...@bnavigator.de> + +- Skip a flaky leak test, move sigint test skip to all archs +- Add matplotlib-pr22975-fixarray.patch, + gh#matplotlib/matplotlib#22975, required for astropy 5.1 + +------------------------------------------------------------------- +Wed May 4 19:15:13 UTC 2022 - Dirk M??ller <dmuel...@suse.com> + +- update to 3.5.2: + * Preliminary support for Windows on arm64 target has been added; this + requires FreeType 2.11 or above. +- drop matplotlib-pr22780-Pillow-deprecations.patch (upstream) + +------------------------------------------------------------------- Old: ---- matplotlib-3.5.1.tar.gz matplotlib-pr22780-Pillow-deprecations.patch New: ---- matplotlib-3.5.2.tar.gz matplotlib-pr22975-fixarray.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-matplotlib.spec ++++++ --- /var/tmp/diff_new_pack.9PBweR/_old 2022-05-30 12:43:16.656336806 +0200 +++ /var/tmp/diff_new_pack.9PBweR/_new 2022-05-30 12:43:16.660336812 +0200 @@ -31,7 +31,7 @@ %bcond_with test %endif Name: python-matplotlib%{psuffix} -Version: 3.5.1 +Version: 3.5.2 Release: 0 Summary: Plotting Library for Python License: SUSE-Matplotlib @@ -41,8 +41,8 @@ # Bundled version of freetype and qhull for testing purposes only Source98: http://www.qhull.org/download/qhull-2020-src-8.0.2.tgz Source99: https://downloads.sourceforge.net/project/freetype/freetype2/2.6.1/freetype-2.6.1.tar.gz -# PATCH-FIX-UPSTREAM matplotlib-pr22780-Pillow-deprecations.patch -- gh#matplotlib/matplotlib#22780 -Patch1: https://github.com/matplotlib/matplotlib/pull/22780.patch#/matplotlib-pr22780-Pillow-deprecations.patch +# PATCH-FIX-UPSTREAM matplotlib-pr22975-fixarray.patch -- gh#matplotlib/matplotlib#22975, required for astropy 5.1 +Patch1: https://github.com/matplotlib/matplotlib/pull/22975.patch#/matplotlib-pr22975-fixarray.patch BuildRequires: %{python_module Cycler >= 0.10} BuildRequires: %{python_module FontTools >= 4.22.0} BuildRequires: %{python_module devel} @@ -93,6 +93,7 @@ BuildRequires: %{python_module matplotlib-tk = %{version}} BuildRequires: %{python_module matplotlib-web = %{version}} BuildRequires: %{python_module matplotlib-wx = %{version}} +BuildRequires: %{python_module psutil} BuildRequires: %{python_module pytest-xdist} BuildRequires: %{python_module pytest-xvfb} BuildRequires: %{python_module pytest} @@ -290,11 +291,13 @@ skip_tests+=" or test_invisible_Line_rendering" # too much memory consumption on obs parallel workers skip_tests+=" or (test_agg and chunksize) or test_throw_rendering_complexity_exceeded" +# testing interactive backend leaks inside obs is flaky +skip_tests+=" or (test_backends_interactive and test_figure_leak_20490)" +# flaky signal termination tests inside obs +skip_tests+=" or _sigint" %ifnarch x86_64 # image comparison failures due to precisions dicrepancies to the x86 produced references skip_tests+=" or png or svg or pdf" -# flaky signal termination tests inside obs -skip_tests+=" or _sigint" %endif %{pytest_arch --pyargs matplotlib.tests \ --pyargs mpl_toolkits.tests \ ++++++ matplotlib-3.5.1.tar.gz -> matplotlib-3.5.2.tar.gz ++++++ /work/SRC/openSUSE:Factory/python-matplotlib/matplotlib-3.5.1.tar.gz /work/SRC/openSUSE:Factory/.python-matplotlib.new.2254/matplotlib-3.5.2.tar.gz differ: char 5, line 1 ++++++ matplotlib-pr22975-fixarray.patch ++++++ >From 29ce2c226aafc170cb9b874e81b158c832322cf7 Mon Sep 17 00:00:00 2001 From: Jody Klymak <jkly...@gmail.com> Date: Thu, 5 May 2022 04:38:49 +0000 Subject: [PATCH] FIX: fix check_1d to also check for ndim Arrays sometimes don't have all the methods arrays should have, so add another check here. Plot requires both ndim and shape and this will extract the numpy array if x does not have those attributes. Otherwise leave the object alone, because unit support (currently only in plot) requires the object to retain the unit info. --- lib/matplotlib/cbook/__init__.py | 7 ++++++- lib/matplotlib/tests/test_units.py | 19 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/lib/matplotlib/cbook/__init__.py b/lib/matplotlib/cbook/__init__.py index 774643fc9c99..5a955ed459c5 100644 --- a/lib/matplotlib/cbook/__init__.py +++ b/lib/matplotlib/cbook/__init__.py @@ -1333,7 +1333,12 @@ def _check_1d(x): """Convert scalars to 1D arrays; pass-through arrays as is.""" # Unpack in case of e.g. Pandas or xarray object x = _unpack_to_numpy(x) - if not hasattr(x, 'shape') or len(x.shape) < 1: + # plot requires `shape` and `ndim`. If passed an + # object that doesn't provide them, then force to numpy array. + # Note this will strip unit information. + if (not hasattr(x, 'shape') or + not hasattr(x, 'ndim') or + len(x.shape) < 1): return np.atleast_1d(x) else: return x diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py index 93a12cebb2c8..d3b8c5a71643 100644 --- a/lib/matplotlib/tests/test_units.py +++ b/lib/matplotlib/tests/test_units.py @@ -264,3 +264,22 @@ def test_empty_default_limits(quantity_converter): fig.draw_without_rendering() assert ax.get_ylim() == (0, 100) assert ax.get_xlim() == (28.5, 31.5) + + +# test array-like objects... +class Kernel: + def __init__(self, array): + self._array = np.asanyarray(array) + + def __array__(self): + return self._array + + @property + def shape(self): + return self._array.shape + + +def test_plot_kernel(): + # just a smoketest that fail + kernel = Kernel([1, 2, 3, 4, 5]) + plt.plot(kernel)