Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/matplotlib/files/, dev-python/matplotlib/, profiles/base/
Date: Fri, 07 Aug 2020 19:56:28
Message-Id: 1596830180.0f01e141fb04e453ca1631230dfe9515d6925b89.mgorny@gentoo
1 commit: 0f01e141fb04e453ca1631230dfe9515d6925b89
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Fri Aug 7 19:52:16 2020 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Fri Aug 7 19:56:20 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f01e141
7
8 dev-python/matplotlib: Remove old
9
10 Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
11
12 dev-python/matplotlib/Manifest | 2 -
13 .../files/matplotlib-2.2.2-doc-make.patch | 10 -
14 .../files/matplotlib-2.2.4-doc-fix.patch | 18 -
15 .../matplotlib-2.2.4-no-jqueryui-download.patch | 18 -
16 .../matplotlib-3.1.2-no-jqueryui-download.patch | 15 -
17 .../matplotlib/files/matplotlib-3.2.1-test.patch | 432 ---------------------
18 dev-python/matplotlib/matplotlib-2.2.2-r1.ebuild | 250 ------------
19 dev-python/matplotlib/matplotlib-2.2.4.ebuild | 253 ------------
20 profiles/base/package.use.mask | 1 -
21 9 files changed, 999 deletions(-)
22
23 diff --git a/dev-python/matplotlib/Manifest b/dev-python/matplotlib/Manifest
24 index b162274d1bf..f5960478570 100644
25 --- a/dev-python/matplotlib/Manifest
26 +++ b/dev-python/matplotlib/Manifest
27 @@ -1,5 +1,3 @@
28 DIST freetype-2.6.1.tar.gz 2302080 BLAKE2B 6a5fb98e5fa6cf4b7d7533ad44e364227d8c2f7dded4c552d6e22e204c32b7858f20d41d1e809ecdad6e5353d6cec81bea0e0b06a4533363a41ecab83ce3f7ca SHA512 ff2daed64d712737085924c50e75862fafbcbb24eef6d72dac9eaae63bb656d7245397fd828f5d3e47ac847f7ff83d73dedfdd61fde1f7d6e0f0cdeb49bcf83b
29 -DIST matplotlib-2.2.2.tar.gz 37317332 BLAKE2B 4120265263c5b1e4ab57f7c0eb7a477b4071a5f219d1d6328d6ed51d44460217c7c4da82a4b7d13c6ba9f80308406a217f2dbcfa310f3137cbe8bc56a9ef0eef SHA512 1d21ef821190f22354098f8f0db6449f237acbf3c1419ab3815ecd4e9c6922fd3f00c4a8f60858e319b55b6fb2e8fe2922c0bf8e72b204e7edff0b409cf76320
30 -DIST matplotlib-2.2.4.tar.gz 36974286 BLAKE2B 9c4c69163a23ff02107ee155f72e142dcf31ba965f6a20f468b96f3f4b70b95ff6caade6b14bcbacd5b231848d2000ce6af9f113feefb41d6e186725349490d3 SHA512 968f5731b8a9a2c5575403c60d5b0a98a452b33094e520be44f4d901f892d082babc8fc1d73c519e1ff2baf756f3cb7652f4b796e166d66dfda31f7e50c58139
31 DIST matplotlib-3.2.2.tar.gz 40295831 BLAKE2B 32fb34b95d1df928f949fd7b04909da2494b56efbe543f75bffedf1d9d85a0089a50cd27b82a28ac75361b56fe3f2a6c95b7d9e777778ce46f1d2805e5dae9df SHA512 4b8080fddc717f311a87b6ef1a279304da2931ef2d6de85688c153f14da5009351f42d9533c44695ca43ce1496bb642927aca822a7946a2d50d40a7d25224b31
32 DIST matplotlib-3.3.0.tar.gz 38782487 BLAKE2B 97330d93b8d8a64a1296ccb173e44ebcc54c61e22aacdd73cc38a46fb2d22fbfe7334fb3c6993be001c475724c47f530243affddd71ec647232ac093db6e3135 SHA512 2ffd9e79e300a37092ab4b5a7156c2f57e408975818abd413c74477ad622030c7636695467aab821c9996564cddec57e26ba6a8004f6639070964fcb7a510a75
33
34 diff --git a/dev-python/matplotlib/files/matplotlib-2.2.2-doc-make.patch b/dev-python/matplotlib/files/matplotlib-2.2.2-doc-make.patch
35 deleted file mode 100644
36 index 7ca0c697423..00000000000
37 --- a/dev-python/matplotlib/files/matplotlib-2.2.2-doc-make.patch
38 +++ /dev/null
39 @@ -1,10 +0,0 @@
40 -diff -r -U2 matplotlib-2.1.2.orig/doc/conf.py matplotlib-2.1.2/doc/conf.py
41 ---- matplotlib-2.1.2.orig/doc/conf.py 2018-01-19 11:07:49.000000000 +0700
42 -+++ matplotlib-2.1.2/doc/conf.py 2018-01-21 20:06:44.120901546 +0700
43 -@@ -136,5 +136,5 @@
44 - }
45 -
46 --plot_gallery = 'True'
47 -+plot_gallery = True
48 -
49 - # Add any paths that contain templates here, relative to this directory.
50
51 diff --git a/dev-python/matplotlib/files/matplotlib-2.2.4-doc-fix.patch b/dev-python/matplotlib/files/matplotlib-2.2.4-doc-fix.patch
52 deleted file mode 100644
53 index b6a01b097a6..00000000000
54 --- a/dev-python/matplotlib/files/matplotlib-2.2.4-doc-fix.patch
55 +++ /dev/null
56 @@ -1,18 +0,0 @@
57 -diff --git a/doc/conf.py b/doc/conf.py
58 -index 017ce210e..5a397082b 100644
59 ---- a/doc/conf.py
60 -+++ b/doc/conf.py
61 -@@ -170,10 +170,10 @@ source_encoding = "utf-8"
62 - master_doc = 'contents'
63 -
64 - # General substitutions.
65 --from matplotlib.compat.subprocess import check_output
66 --SHA = check_output(['git', 'describe', '--dirty']).decode('utf-8').strip()
67 -+#from matplotlib.compat.subprocess import check_output
68 -+#SHA = check_output(['git', 'describe', '--dirty']).decode('utf-8').strip()
69 -
70 --html_context = {'sha': SHA}
71 -+#html_context = {'sha': SHA}
72 -
73 - project = 'Matplotlib'
74 - copyright = ('2002 - 2012 John Hunter, Darren Dale, Eric Firing, '
75
76 diff --git a/dev-python/matplotlib/files/matplotlib-2.2.4-no-jqueryui-download.patch b/dev-python/matplotlib/files/matplotlib-2.2.4-no-jqueryui-download.patch
77 deleted file mode 100644
78 index 9d13adb8ab5..00000000000
79 --- a/dev-python/matplotlib/files/matplotlib-2.2.4-no-jqueryui-download.patch
80 +++ /dev/null
81 @@ -1,18 +0,0 @@
82 -diff --git a/setup.py b/setup.py
83 -index 41037e95d..6a438fa99 100644
84 ---- a/setup.py
85 -+++ b/setup.py
86 -@@ -178,9 +178,10 @@ class sdist_with_jquery(_orgin_sdist):
87 - class install_lib_with_jquery(InstallLibCommand):
88 - def run(self):
89 - InstallLibCommand.run(self)
90 -- _download_jquery_to(
91 -- os.path.join(self.install_dir, "matplotlib/backends/web_backend/"))
92 --
93 -+ # Avoid downloading jquery ui during emerge: we already have it in
94 -+ # pypi's tarball. use this!
95 -+ name = "matplotlib/backends/web_backend/jquery-ui-1.12.1"
96 -+ os.rename(os.path.join('lib', name), os.path.join(self.install_dir, name))
97 -
98 - class develop_with_jquery(DevelopCommand):
99 - def run(self):
100
101 diff --git a/dev-python/matplotlib/files/matplotlib-3.1.2-no-jqueryui-download.patch b/dev-python/matplotlib/files/matplotlib-3.1.2-no-jqueryui-download.patch
102 deleted file mode 100644
103 index 145f321039b..00000000000
104 --- a/dev-python/matplotlib/files/matplotlib-3.1.2-no-jqueryui-download.patch
105 +++ /dev/null
106 @@ -1,15 +0,0 @@
107 -Index: matplotlib-3.1.2/setup.py
108 -===================================================================
109 ---- matplotlib-3.1.2.orig/setup.py
110 -+++ matplotlib-3.1.2/setup.py
111 -@@ -125,7 +125,9 @@ cmdclass['build_ext'] = BuildExtraLibrar
112 -
113 -
114 - def _download_jquery_to(dest):
115 -- if os.path.exists(os.path.join(dest, "jquery-ui-1.12.1")):
116 -+ # Avoid downloading jquery ui during emerge: we already have it in
117 -+ # pypi's tarball. use this!
118 -+ if True:
119 - return
120 -
121 - # If we are installing from an sdist, use the already downloaded jquery-ui
122
123 diff --git a/dev-python/matplotlib/files/matplotlib-3.2.1-test.patch b/dev-python/matplotlib/files/matplotlib-3.2.1-test.patch
124 deleted file mode 100644
125 index 281f15405c9..00000000000
126 --- a/dev-python/matplotlib/files/matplotlib-3.2.1-test.patch
127 +++ /dev/null
128 @@ -1,432 +0,0 @@
129 -From 36e8d90d8065aa5fd1cd83554e6d2e7d031e5b3d Mon Sep 17 00:00:00 2001
130 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@g.o>
131 -Date: Sun, 7 Jun 2020 20:02:48 +0200
132 -Subject: [PATCH 1/2] Increase image comparison limits
133 -
134 -Most of the tests require exact match which apparently doesn't always
135 -happen in non-pristine environments. Some of them have very big
136 -differences due to texlive font rendering changes.
137 ----
138 - lib/matplotlib/tests/test_arrow_patches.py | 4 ++--
139 - lib/matplotlib/tests/test_axes.py | 2 +-
140 - lib/matplotlib/tests/test_backend_pgf.py | 7 ++++---
141 - lib/matplotlib/tests/test_figure.py | 2 +-
142 - lib/matplotlib/tests/test_legend.py | 6 +++---
143 - lib/matplotlib/tests/test_pickle.py | 2 +-
144 - lib/matplotlib/tests/test_units.py | 4 ++--
145 - lib/matplotlib/tests/test_usetex.py | 2 +-
146 - lib/mpl_toolkits/tests/test_axes_grid1.py | 2 +-
147 - .../tests/test_axisartist_grid_helper_curvelinear.py | 2 +-
148 - 10 files changed, 17 insertions(+), 16 deletions(-)
149 -
150 -diff --git a/lib/matplotlib/tests/test_arrow_patches.py b/lib/matplotlib/tests/test_arrow_patches.py
151 -index a9409e2c1..0e356e921 100644
152 ---- a/lib/matplotlib/tests/test_arrow_patches.py
153 -+++ b/lib/matplotlib/tests/test_arrow_patches.py
154 -@@ -67,7 +67,7 @@ def __prepare_fancyarrow_dpi_cor_test():
155 -
156 -
157 - @image_comparison(['fancyarrow_dpi_cor_100dpi.png'], remove_text=True,
158 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
159 -+ tol={'aarch64': 0.02}.get(platform.machine(), 0.015),
160 - savefig_kwarg=dict(dpi=100))
161 - def test_fancyarrow_dpi_cor_100dpi():
162 - """
163 -@@ -82,7 +82,7 @@ def test_fancyarrow_dpi_cor_100dpi():
164 -
165 -
166 - @image_comparison(['fancyarrow_dpi_cor_200dpi.png'], remove_text=True,
167 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0),
168 -+ tol={'aarch64': 0.02}.get(platform.machine(), 0.018),
169 - savefig_kwarg=dict(dpi=200))
170 - def test_fancyarrow_dpi_cor_200dpi():
171 - """
172 -diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py
173 -index 93548b279..9910e63c3 100644
174 ---- a/lib/matplotlib/tests/test_axes.py
175 -+++ b/lib/matplotlib/tests/test_axes.py
176 -@@ -3653,7 +3653,7 @@ def test_vertex_markers():
177 -
178 -
179 - @image_comparison(['vline_hline_zorder', 'errorbar_zorder'],
180 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
181 -+ tol={'aarch64': 0.02}.get(platform.machine(), 0.015))
182 - def test_eb_line_zorder():
183 - x = list(range(10))
184 -
185 -diff --git a/lib/matplotlib/tests/test_backend_pgf.py b/lib/matplotlib/tests/test_backend_pgf.py
186 -index 7843b4101..ddb2991c1 100644
187 ---- a/lib/matplotlib/tests/test_backend_pgf.py
188 -+++ b/lib/matplotlib/tests/test_backend_pgf.py
189 -@@ -97,7 +97,8 @@ def test_xelatex():
190 - # test compiling a figure to pdf with pdflatex
191 - @needs_pdflatex
192 - @pytest.mark.backend('pgf')
193 --@image_comparison(['pgf_pdflatex.pdf'], style='default')
194 -+@image_comparison(['pgf_pdflatex.pdf'], style='default',
195 -+ tol=11.669)
196 - def test_pdflatex():
197 - if os.environ.get('APPVEYOR', False):
198 - pytest.xfail("pdflatex test does not work on appveyor due to missing "
199 -@@ -133,7 +134,7 @@ def test_rcupdate():
200 - 'pgf.preamble': ['\\usepackage[utf8x]{inputenc}',
201 - '\\usepackage[T1]{fontenc}',
202 - '\\usepackage{sfmath}']}]
203 -- tol = [6, 0]
204 -+ tol = [6, 14]
205 - for i, rc_set in enumerate(rc_sets):
206 - with mpl.rc_context(rc_set):
207 - create_figure()
208 -@@ -161,7 +162,7 @@ def test_pathclip():
209 - @needs_xelatex
210 - @pytest.mark.backend('pgf')
211 - @image_comparison(['pgf_mixedmode.pdf'], style='default',
212 -- tol={'aarch64': 1.086}.get(platform.machine(), 0.0))
213 -+ tol=1.086)
214 - def test_mixedmode():
215 - rc_xelatex = {'font.family': 'serif',
216 - 'pgf.rcfonts': False}
217 -diff --git a/lib/matplotlib/tests/test_figure.py b/lib/matplotlib/tests/test_figure.py
218 -index a9e8dfade..7e33bcb3b 100644
219 ---- a/lib/matplotlib/tests/test_figure.py
220 -+++ b/lib/matplotlib/tests/test_figure.py
221 -@@ -14,7 +14,7 @@ import pytest
222 -
223 -
224 - @image_comparison(['figure_align_labels'],
225 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
226 -+ tol=0.02)
227 - def test_align_labels():
228 - # Check the figure.align_labels() command
229 - fig = plt.figure(tight_layout=True)
230 -diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py
231 -index 71499da44..a8bda6e84 100644
232 ---- a/lib/matplotlib/tests/test_legend.py
233 -+++ b/lib/matplotlib/tests/test_legend.py
234 -@@ -106,7 +106,7 @@ def test_multiple_keys():
235 -
236 -
237 - @image_comparison(['rgba_alpha.png'], remove_text=True,
238 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
239 -+ tol=0.02)
240 - def test_alpha_rgba():
241 - import matplotlib.pyplot as plt
242 -
243 -@@ -117,7 +117,7 @@ def test_alpha_rgba():
244 -
245 -
246 - @image_comparison(['rcparam_alpha.png'], remove_text=True,
247 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
248 -+ tol=0.02)
249 - def test_alpha_rcparam():
250 - import matplotlib.pyplot as plt
251 -
252 -@@ -145,7 +145,7 @@ def test_fancy():
253 -
254 -
255 - @image_comparison(['framealpha'], remove_text=True,
256 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
257 -+ tol=0.02)
258 - def test_framealpha():
259 - x = np.linspace(1, 100, 100)
260 - y = x
261 -diff --git a/lib/matplotlib/tests/test_pickle.py b/lib/matplotlib/tests/test_pickle.py
262 -index 0fad3cdf2..4d2599607 100644
263 ---- a/lib/matplotlib/tests/test_pickle.py
264 -+++ b/lib/matplotlib/tests/test_pickle.py
265 -@@ -41,7 +41,7 @@ def test_simple():
266 -
267 -
268 - @image_comparison(['multi_pickle.png'], remove_text=True, style='mpl20',
269 -- tol={'aarch64': 0.082}.get(platform.machine(), 0.0))
270 -+ tol=0.082)
271 - def test_complete():
272 - fig = plt.figure('Figure with a label?', figsize=(10, 6))
273 -
274 -diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py
275 -index f14425144..7f744da47 100644
276 ---- a/lib/matplotlib/tests/test_units.py
277 -+++ b/lib/matplotlib/tests/test_units.py
278 -@@ -74,7 +74,7 @@ def quantity_converter():
279 - # Tests that the conversion machinery works properly for classes that
280 - # work as a facade over numpy arrays (like pint)
281 - @image_comparison(['plot_pint.png'], remove_text=False, style='mpl20',
282 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
283 -+ tol={'aarch64': 0.02}.get(platform.machine(), 0.002))
284 - def test_numpy_facade(quantity_converter):
285 - # use former defaults to match existing baseline image
286 - plt.rcParams['axes.formatter.limits'] = -7, 7
287 -@@ -101,7 +101,7 @@ def test_numpy_facade(quantity_converter):
288 -
289 - # Tests gh-8908
290 - @image_comparison(['plot_masked_units.png'], remove_text=True, style='mpl20',
291 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
292 -+ tol=0.02)
293 - def test_plot_masked_units():
294 - data = np.linspace(-5, 5)
295 - data_masked = np.ma.array(data, mask=(data > -2) & (data < 2))
296 -diff --git a/lib/matplotlib/tests/test_usetex.py b/lib/matplotlib/tests/test_usetex.py
297 -index 8d8cf29d0..4cdfe1aaf 100644
298 ---- a/lib/matplotlib/tests/test_usetex.py
299 -+++ b/lib/matplotlib/tests/test_usetex.py
300 -@@ -16,7 +16,7 @@ def usetex():
301 -
302 - @image_comparison(baseline_images=['test_usetex'],
303 - extensions=['pdf', 'png'],
304 -- tol={'aarch64': 2.868}.get(platform.machine(), 0.3))
305 -+ tol=3)
306 - def test_usetex():
307 - fig = plt.figure()
308 - ax = fig.add_subplot(111)
309 -diff --git a/lib/mpl_toolkits/tests/test_axes_grid1.py b/lib/mpl_toolkits/tests/test_axes_grid1.py
310 -index 9ed9a9280..56a3bd14a 100644
311 ---- a/lib/mpl_toolkits/tests/test_axes_grid1.py
312 -+++ b/lib/mpl_toolkits/tests/test_axes_grid1.py
313 -@@ -343,7 +343,7 @@ def test_zooming_with_inverted_axes():
314 -
315 -
316 - @image_comparison(['anchored_direction_arrows.png'],
317 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
318 -+ tol=0.02)
319 - def test_anchored_direction_arrows():
320 - fig, ax = plt.subplots()
321 - ax.imshow(np.zeros((10, 10)), interpolation='nearest')
322 -diff --git a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
323 -index 611908063..dc294aef5 100644
324 ---- a/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
325 -+++ b/lib/mpl_toolkits/tests/test_axisartist_grid_helper_curvelinear.py
326 -@@ -17,7 +17,7 @@ from mpl_toolkits.axisartist.grid_helper_curvelinear import \
327 -
328 -
329 - @image_comparison(['custom_transform.png'], style='default',
330 -- tol={'aarch64': 0.034}.get(platform.machine(), 0.03))
331 -+ tol=0.034)
332 - def test_custom_transform():
333 - class MyTransform(Transform):
334 - input_dims = 2
335 ---
336 -2.27.0
337 -
338 -From c1d6cce894de12bd32095c73d15d4f4f6ff5f2bb Mon Sep 17 00:00:00 2001
339 -From: Antony Lee <anntzer.lee@×××××.com>
340 -Date: Tue, 10 Dec 2019 11:18:24 +0100
341 -Subject: [PATCH 2/2] Rewrite test_cycles to avoid image comparison tests.
342 -
343 -They can all be reasonably written by checking the artist properties.
344 ----
345 - .../test_cycles/color_cycle_basic.png | Bin 33044 -> 0 bytes
346 - .../test_cycles/fill_cycle_basic.png | Bin 70692 -> 0 bytes
347 - .../test_cycles/fill_cycle_ignore.png | Bin 65439 -> 0 bytes
348 - .../test_cycles/lineprop_cycle_basic.png | Bin 41852 -> 0 bytes
349 - .../test_cycles/marker_cycle.png | Bin 44979 -> 0 bytes
350 - .../test_cycles/property_collision_fill.png | Bin 24923 -> 0 bytes
351 - .../test_cycles/property_collision_plot.png | Bin 37723 -> 0 bytes
352 - lib/matplotlib/tests/test_cycles.py | 141 +++++++-----------
353 - 8 files changed, 51 insertions(+), 90 deletions(-)
354 - delete mode 100644 lib/matplotlib/tests/baseline_images/test_cycles/color_cycle_basic.png
355 - delete mode 100644 lib/matplotlib/tests/baseline_images/test_cycles/fill_cycle_basic.png
356 - delete mode 100644 lib/matplotlib/tests/baseline_images/test_cycles/fill_cycle_ignore.png
357 - delete mode 100644 lib/matplotlib/tests/baseline_images/test_cycles/lineprop_cycle_basic.png
358 - delete mode 100644 lib/matplotlib/tests/baseline_images/test_cycles/marker_cycle.png
359 - delete mode 100644 lib/matplotlib/tests/baseline_images/test_cycles/property_collision_fill.png
360 - delete mode 100644 lib/matplotlib/tests/baseline_images/test_cycles/property_collision_plot.png
361 -
362 -diff --git a/lib/matplotlib/tests/test_cycles.py b/lib/matplotlib/tests/test_cycles.py
363 -index ee67b4e41..a340b6166 100644
364 ---- a/lib/matplotlib/tests/test_cycles.py
365 -+++ b/lib/matplotlib/tests/test_cycles.py
366 -@@ -1,6 +1,4 @@
367 --import platform
368 --
369 --from matplotlib.testing.decorators import image_comparison
370 -+import matplotlib as mpl
371 - import matplotlib.pyplot as plt
372 - import numpy as np
373 - import pytest
374 -@@ -8,133 +6,96 @@ import pytest
375 - from cycler import cycler
376 -
377 -
378 --@image_comparison(['color_cycle_basic.png'], remove_text=True,
379 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
380 - def test_colorcycle_basic():
381 - fig, ax = plt.subplots()
382 - ax.set_prop_cycle(cycler('color', ['r', 'g', 'y']))
383 -- xs = np.arange(10)
384 -- ys = 0.25 * xs + 2
385 -- ax.plot(xs, ys, label='red', lw=4)
386 -- ys = 0.45 * xs + 3
387 -- ax.plot(xs, ys, label='green', lw=4)
388 -- ys = 0.65 * xs + 4
389 -- ax.plot(xs, ys, label='yellow', lw=4)
390 -- ys = 0.85 * xs + 5
391 -- ax.plot(xs, ys, label='red2', lw=4)
392 -- ax.legend(loc='upper left')
393 --
394 --
395 --@image_comparison(['marker_cycle.png', 'marker_cycle.png'], remove_text=True,
396 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
397 -+ for _ in range(4):
398 -+ ax.plot(range(10), range(10))
399 -+ assert [l.get_color() for l in ax.lines] == ['r', 'g', 'y', 'r']
400 -+
401 -+
402 - def test_marker_cycle():
403 - fig, ax = plt.subplots()
404 - ax.set_prop_cycle(cycler('c', ['r', 'g', 'y']) +
405 - cycler('marker', ['.', '*', 'x']))
406 -- xs = np.arange(10)
407 -- ys = 0.25 * xs + 2
408 -- ax.plot(xs, ys, label='red dot', lw=4, ms=16)
409 -- ys = 0.45 * xs + 3
410 -- ax.plot(xs, ys, label='green star', lw=4, ms=16)
411 -- ys = 0.65 * xs + 4
412 -- ax.plot(xs, ys, label='yellow x', lw=4, ms=16)
413 -- ys = 0.85 * xs + 5
414 -- ax.plot(xs, ys, label='red2 dot', lw=4, ms=16)
415 -- ax.legend(loc='upper left')
416 -+ for _ in range(4):
417 -+ ax.plot(range(10), range(10))
418 -+ assert [l.get_color() for l in ax.lines] == ['r', 'g', 'y', 'r']
419 -+ assert [l.get_marker() for l in ax.lines] == ['.', '*', 'x', '.']
420 -
421 -+
422 -+def test_marker_cycle_kwargs_arrays_iterators():
423 - fig, ax = plt.subplots()
424 -- # Test keyword arguments, numpy arrays, and generic iterators
425 - ax.set_prop_cycle(c=np.array(['r', 'g', 'y']),
426 - marker=iter(['.', '*', 'x']))
427 -- xs = np.arange(10)
428 -- ys = 0.25 * xs + 2
429 -- ax.plot(xs, ys, label='red dot', lw=4, ms=16)
430 -- ys = 0.45 * xs + 3
431 -- ax.plot(xs, ys, label='green star', lw=4, ms=16)
432 -- ys = 0.65 * xs + 4
433 -- ax.plot(xs, ys, label='yellow x', lw=4, ms=16)
434 -- ys = 0.85 * xs + 5
435 -- ax.plot(xs, ys, label='red2 dot', lw=4, ms=16)
436 -- ax.legend(loc='upper left')
437 --
438 --
439 --@image_comparison(['lineprop_cycle_basic.png'], remove_text=True,
440 -- tol={'aarch64': 0.02}.get(platform.machine(), 0.0))
441 -+ for _ in range(4):
442 -+ ax.plot(range(10), range(10))
443 -+ assert [l.get_color() for l in ax.lines] == ['r', 'g', 'y', 'r']
444 -+ assert [l.get_marker() for l in ax.lines] == ['.', '*', 'x', '.']
445 -+
446 -+
447 - def test_linestylecycle_basic():
448 - fig, ax = plt.subplots()
449 - ax.set_prop_cycle(cycler('ls', ['-', '--', ':']))
450 -- xs = np.arange(10)
451 -- ys = 0.25 * xs + 2
452 -- ax.plot(xs, ys, label='solid', lw=4, color='k')
453 -- ys = 0.45 * xs + 3
454 -- ax.plot(xs, ys, label='dashed', lw=4, color='k')
455 -- ys = 0.65 * xs + 4
456 -- ax.plot(xs, ys, label='dotted', lw=4, color='k')
457 -- ys = 0.85 * xs + 5
458 -- ax.plot(xs, ys, label='solid2', lw=4, color='k')
459 -- ax.legend(loc='upper left')
460 --
461 --
462 --@image_comparison(['fill_cycle_basic.png'], remove_text=True)
463 -+ for _ in range(4):
464 -+ ax.plot(range(10), range(10))
465 -+ assert [l.get_linestyle() for l in ax.lines] == ['-', '--', ':', '-']
466 -+
467 -+
468 - def test_fillcycle_basic():
469 - fig, ax = plt.subplots()
470 - ax.set_prop_cycle(cycler('c', ['r', 'g', 'y']) +
471 - cycler('hatch', ['xx', 'O', '|-']) +
472 - cycler('linestyle', ['-', '--', ':']))
473 -- xs = np.arange(10)
474 -- ys = 0.25 * xs**.5 + 2
475 -- ax.fill(xs, ys, label='red, xx', linewidth=3)
476 -- ys = 0.45 * xs**.5 + 3
477 -- ax.fill(xs, ys, label='green, circle', linewidth=3)
478 -- ys = 0.65 * xs**.5 + 4
479 -- ax.fill(xs, ys, label='yellow, cross', linewidth=3)
480 -- ys = 0.85 * xs**.5 + 5
481 -- ax.fill(xs, ys, label='red2, xx', linewidth=3)
482 -- ax.legend(loc='upper left')
483 --
484 --
485 --@image_comparison(['fill_cycle_ignore.png'], remove_text=True)
486 -+ for _ in range(4):
487 -+ ax.fill(range(10), range(10))
488 -+ assert ([p.get_facecolor() for p in ax.patches]
489 -+ == [mpl.colors.to_rgba(c) for c in ['r', 'g', 'y', 'r']])
490 -+ assert [p.get_hatch() for p in ax.patches] == ['xx', 'O', '|-', 'xx']
491 -+ assert [p.get_linestyle() for p in ax.patches] == ['-', '--', ':', '-']
492 -+
493 -+
494 - def test_fillcycle_ignore():
495 - fig, ax = plt.subplots()
496 - ax.set_prop_cycle(cycler('color', ['r', 'g', 'y']) +
497 - cycler('hatch', ['xx', 'O', '|-']) +
498 - cycler('marker', ['.', '*', 'D']))
499 -- xs = np.arange(10)
500 -- ys = 0.25 * xs**.5 + 2
501 -+ t = range(10)
502 - # Should not advance the cycler, even though there is an
503 - # unspecified property in the cycler "marker".
504 - # "marker" is not a Polygon property, and should be ignored.
505 -- ax.fill(xs, ys, 'r', hatch='xx', label='red, xx')
506 -- ys = 0.45 * xs**.5 + 3
507 -+ ax.fill(t, t, 'r', hatch='xx')
508 - # Allow the cycler to advance, but specify some properties
509 -- ax.fill(xs, ys, hatch='O', label='red, circle')
510 -- ys = 0.65 * xs**.5 + 4
511 -- ax.fill(xs, ys, label='green, circle')
512 -- ys = 0.85 * xs**.5 + 5
513 -- ax.fill(xs, ys, label='yellow, cross')
514 -- ax.legend(loc='upper left')
515 -+ ax.fill(t, t, hatch='O')
516 -+ ax.fill(t, t)
517 -+ ax.fill(t, t)
518 -+ assert ([p.get_facecolor() for p in ax.patches]
519 -+ == [mpl.colors.to_rgba(c) for c in ['r', 'r', 'g', 'y']])
520 -+ assert [p.get_hatch() for p in ax.patches] == ['xx', 'O', 'O', '|-']
521 -
522 -
523 --@image_comparison(['property_collision_plot.png'], remove_text=True)
524 - def test_property_collision_plot():
525 - fig, ax = plt.subplots()
526 - ax.set_prop_cycle('linewidth', [2, 4])
527 -+ t = range(10)
528 - for c in range(1, 4):
529 -- ax.plot(np.arange(10), c * np.arange(10), lw=0.1, color='k')
530 -- ax.plot(np.arange(10), 4 * np.arange(10), color='k')
531 -- ax.plot(np.arange(10), 5 * np.arange(10), color='k')
532 -+ ax.plot(t, t, lw=0.1)
533 -+ ax.plot(t, t)
534 -+ ax.plot(t, t)
535 -+ assert [l.get_linewidth() for l in ax.lines] == [0.1, 0.1, 0.1, 2, 4]
536 -
537 -
538 --@image_comparison(['property_collision_fill.png'], remove_text=True)
539 - def test_property_collision_fill():
540 - fig, ax = plt.subplots()
541 -- xs = np.arange(10)
542 -- ys = 0.25 * xs**.5 + 2
543 - ax.set_prop_cycle(linewidth=[2, 3, 4, 5, 6], facecolor='bgcmy')
544 -+ t = range(10)
545 - for c in range(1, 4):
546 -- ax.fill(xs, c * ys, lw=0.1)
547 -- ax.fill(xs, 4 * ys)
548 -- ax.fill(xs, 5 * ys)
549 -+ ax.fill(t, t, lw=0.1)
550 -+ ax.fill(t, t)
551 -+ ax.fill(t, t)
552 -+ assert ([p.get_facecolor() for p in ax.patches]
553 -+ == [mpl.colors.to_rgba(c) for c in 'bgcmy'])
554 -+ assert [p.get_linewidth() for p in ax.patches] == [0.1, 0.1, 0.1, 5, 6]
555 -
556 -
557 - def test_valid_input_forms():
558 ---
559 -2.27.0
560 -
561
562 diff --git a/dev-python/matplotlib/matplotlib-2.2.2-r1.ebuild b/dev-python/matplotlib/matplotlib-2.2.2-r1.ebuild
563 deleted file mode 100644
564 index 6732f35082a..00000000000
565 --- a/dev-python/matplotlib/matplotlib-2.2.2-r1.ebuild
566 +++ /dev/null
567 @@ -1,250 +0,0 @@
568 -# Copyright 1999-2020 Gentoo Authors
569 -# Distributed under the terms of the GNU General Public License v2
570 -
571 -EAPI=6
572 -
573 -PYTHON_COMPAT=( python2_7 python3_{6,7} )
574 -PYTHON_REQ_USE='tk?,threads(+)'
575 -
576 -inherit distutils-r1 flag-o-matic virtualx toolchain-funcs prefix
577 -
578 -DESCRIPTION="Pure python plotting library with matlab like syntax"
579 -HOMEPAGE="https://matplotlib.org/"
580 -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
581 -
582 -SLOT="0"
583 -# Main license: matplotlib
584 -# Some modules: BSD
585 -# matplotlib/backends/qt4_editor: MIT
586 -# Fonts: BitstreamVera, OFL-1.1
587 -LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
588 -KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 x86"
589 -IUSE="cairo doc excel examples gtk3 latex test tk wxwidgets"
590 -RESTRICT="!test? ( test )"
591 -
592 -PY2_FLAGS="|| ( $(python_gen_useflags python2_7) )"
593 -REQUIRED_USE="
594 - doc? ( ${PY2_FLAGS} )
595 - excel? ( ${PY2_FLAGS} )
596 - wxwidgets? ( ${PY2_FLAGS} )
597 - test? ( cairo gtk3 latex tk wxwidgets )"
598 -
599 -# #456704 -- a lot of py2-only deps
600 -PY2_USEDEP=$(python_gen_usedep python2_7)
601 -PY2_DEPEND="
602 - $(python_gen_cond_dep 'dev-python/functools32[${PYTHON_USEDEP}]' python2_7)
603 - $(python_gen_cond_dep 'dev-python/subprocess32[${PYTHON_USEDEP}]' python2_7)
604 - $(python_gen_cond_dep 'dev-python/backports-functools-lru-cache[${PYTHON_USEDEP}]' python2_7)"
605 -COMMON_DEPEND="
606 - dev-python/cycler[${PYTHON_USEDEP}]
607 - >=dev-python/numpy-1.7.1[${PYTHON_USEDEP}]
608 - dev-python/python-dateutil:0[${PYTHON_USEDEP}]
609 - dev-python/pytz[${PYTHON_USEDEP}]
610 - >=dev-python/six-1.10[${PYTHON_USEDEP}]
611 - media-fonts/stix-fonts
612 - media-libs/freetype:2
613 - media-libs/libpng:0
614 - >=media-libs/qhull-2013
615 - >=dev-python/kiwisolver-1.0.0[${PYTHON_USEDEP}]
616 - cairo? ( dev-python/cairocffi[${PYTHON_USEDEP}] )
617 - wxwidgets? ( >=dev-python/wxpython-2.8:*[${PY2_USEDEP}] )"
618 -
619 -# internal copy of pycxx highly patched
620 -# dev-python/pycxx
621 -
622 -DEPEND="${COMMON_DEPEND}
623 - ${PY2_DEPEND}
624 - dev-python/versioneer[${PYTHON_USEDEP}]
625 - dev-python/setuptools[${PYTHON_USEDEP}]
626 - virtual/pkgconfig
627 - doc? (
628 - app-text/dvipng
629 - dev-python/colorspacious[${PYTHON_USEDEP}]
630 - dev-python/pillow[${PYTHON_USEDEP}]
631 - dev-python/ipython[${PYTHON_USEDEP}]
632 - dev-python/mock[${PY2_USEDEP}]
633 - dev-python/numpydoc[${PYTHON_USEDEP}]
634 - sci-libs/scipy[${PYTHON_USEDEP}]
635 - >=dev-python/sphinx-1.3.0[${PYTHON_USEDEP}]
636 - >=dev-python/sphinx-gallery-0.1.12[${PYTHON_USEDEP}]
637 - dev-python/xlwt[${PYTHON_USEDEP}]
638 - dev-texlive/texlive-latexextra
639 - dev-texlive/texlive-fontsrecommended
640 - dev-texlive/texlive-latexrecommended
641 - media-gfx/graphviz[cairo]
642 - )
643 - test? (
644 - dev-python/mock[${PYTHON_USEDEP}]
645 - >=dev-python/nose-0.11.1[${PYTHON_USEDEP}]
646 - )"
647 -
648 -RDEPEND="${COMMON_DEPEND}
649 - ${PY2_DEPEND}
650 - >=dev-python/pyparsing-1.5.6[${PYTHON_USEDEP}]
651 - excel? ( dev-python/xlwt[${PYTHON_USEDEP}] )
652 - gtk3? (
653 - dev-python/pygobject:3[${PYTHON_USEDEP}]
654 - x11-libs/gtk+:3[introspection]
655 - )
656 - latex? (
657 - virtual/latex-base
658 - app-text/ghostscript-gpl
659 - app-text/dvipng
660 - app-text/poppler[utils]
661 - dev-texlive/texlive-fontsrecommended
662 - dev-texlive/texlive-latexextra
663 - dev-texlive/texlive-xetex
664 - )"
665 -
666 -# A few C++ source files are written to srcdir.
667 -# Other than that, the ebuild shall be fit for out-of-source build.
668 -DISTUTILS_IN_SOURCE_BUILD=1
669 -
670 -pkg_setup() {
671 - unset DISPLAY # bug #278524
672 -}
673 -
674 -use_setup() {
675 - local uword="${2:-${1}}"
676 - if use ${1}; then
677 - echo "${uword} = True"
678 - echo "${uword}agg = True"
679 - else
680 - echo "${uword} = False"
681 - echo "${uword}agg = False"
682 - fi
683 -}
684 -
685 -python_prepare_all() {
686 -# Generates test failures, but fedora does it
687 -# local PATCHES=(
688 -# "${FILESDIR}"/${P}-unbundle-pycxx.patch
689 -# "${FILESDIR}"/${P}-unbundle-agg.patch
690 -# )
691 -# rm -r agg24 CXX || die
692 -# rm -r agg24 || die
693 -
694 -# cat > lib/${PN}/externals/six.py <<-EOF
695 -# from __future__ import absolute_import
696 -# from six import *
697 -# EOF
698 -
699 - local PATCHES=( "${FILESDIR}"/${P}-doc-make.patch )
700 -
701 - sed \
702 - -e 's/matplotlib.pyparsing_py[23]/pyparsing/g' \
703 - -i lib/matplotlib/{mathtext,fontconfig_pattern}.py \
704 - || die "sed pyparsing failed"
705 -
706 - hprefixify setupext.py
707 -
708 - export XDG_RUNTIME_DIR="${T}/runtime-dir"
709 - mkdir "${XDG_RUNTIME_DIR}" || die
710 - chmod 0700 "${XDG_RUNTIME_DIR}" || die
711 -
712 - distutils-r1_python_prepare_all
713 -}
714 -
715 -python_configure_all() {
716 - append-flags -fno-strict-aliasing
717 - append-cppflags -DNDEBUG # or get old trying to do triangulation
718 - tc-export PKG_CONFIG
719 -}
720 -
721 -python_configure() {
722 - mkdir -p "${BUILD_DIR}" || die
723 -
724 - # create setup.cfg (see setup.cfg.template for any changes).
725 -
726 - # common switches.
727 - cat > "${BUILD_DIR}"/setup.cfg <<- EOF || die
728 - [directories]
729 - basedirlist = ${EPREFIX}/usr
730 - [provide_packages]
731 - pytz = False
732 - dateutil = False
733 - [packages]
734 - tests = $(usex test True False)
735 - [gui_support]
736 - agg = True
737 - pyside = False
738 - pysideagg = False
739 - qt4 = False
740 - qt4agg = False
741 - qt5 = False
742 - qt5agg = False
743 - $(use_setup cairo)
744 - $(use_setup gtk3)
745 - $(use_setup tk)
746 - EOF
747 -
748 - if use gtk3 && use cairo; then
749 - echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die
750 - else
751 - echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die
752 - fi
753 -
754 - if python_is_python3; then
755 - cat >> "${BUILD_DIR}"/setup.cfg <<- EOF || die
756 - gtk = False
757 - gtkagg = False
758 - wx = False
759 - wxagg = False
760 - EOF
761 - else
762 - cat >> "${BUILD_DIR}"/setup.cfg <<-EOF || die
763 - gtk = False
764 - gtkagg = False
765 - $(use_setup wxwidgets wx)
766 - EOF
767 - fi
768 -}
769 -
770 -wrap_setup() {
771 - local -x MPLSETUPCFG=${BUILD_DIR}/setup.cfg
772 - unset DISPLAY
773 - "$@"
774 -}
775 -
776 -python_compile() {
777 - wrap_setup distutils-r1_python_compile --build-lib="${BUILD_DIR}"/lib
778 -}
779 -
780 -python_compile_all() {
781 - if use doc; then
782 - cd doc || die
783 -
784 - # necessary for in-source build
785 - local -x PYTHONPATH="${BUILD_DIR}"/build/lib:${PYTHONPATH}
786 -
787 - VARTEXFONTS="${T}"/fonts \
788 - emake SPHINXOPTS= O=-Dplot_formats=png:100 html
789 - fi
790 -}
791 -
792 -python_test() {
793 - wrap_setup distutils_install_for_testing
794 -
795 - virtx "${EPYTHON}" -c "import sys, matplotlib as m; sys.exit(0 if m.test(verbosity=2) else 1)"
796 -}
797 -
798 -python_install() {
799 - wrap_setup distutils-r1_python_install
800 -
801 - # mpl_toolkits namespace
802 - python_moduleinto mpl_toolkits
803 - python_domodule lib/mpl_toolkits/__init__.py
804 -}
805 -
806 -python_install_all() {
807 - use doc && local HTML_DOCS=( doc/build/html/. )
808 -
809 - distutils-r1_python_install_all
810 -
811 - if use examples; then
812 - dodoc -r examples
813 - docompress -x /usr/share/doc/${PF}/examples
814 - fi
815 -
816 - find "${D}" -name '*.pth' -delete || die
817 -}
818
819 diff --git a/dev-python/matplotlib/matplotlib-2.2.4.ebuild b/dev-python/matplotlib/matplotlib-2.2.4.ebuild
820 deleted file mode 100644
821 index d7c77f8d78f..00000000000
822 --- a/dev-python/matplotlib/matplotlib-2.2.4.ebuild
823 +++ /dev/null
824 @@ -1,253 +0,0 @@
825 -# Copyright 1999-2020 Gentoo Authors
826 -# Distributed under the terms of the GNU General Public License v2
827 -
828 -EAPI=6
829 -
830 -PYTHON_COMPAT=( python2_7 python3_{6,7} )
831 -PYTHON_REQ_USE='tk?,threads(+)'
832 -
833 -inherit distutils-r1 flag-o-matic virtualx toolchain-funcs prefix
834 -
835 -DESCRIPTION="Pure python plotting library with matlab like syntax"
836 -HOMEPAGE="https://matplotlib.org/"
837 -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
838 -
839 -SLOT="0"
840 -# Main license: matplotlib
841 -# Some modules: BSD
842 -# matplotlib/backends/qt4_editor: MIT
843 -# Fonts: BitstreamVera, OFL-1.1
844 -LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1"
845 -KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86"
846 -IUSE="cairo doc excel examples gtk3 latex test tk wxwidgets"
847 -RESTRICT="!test? ( test )"
848 -
849 -PY2_FLAGS="|| ( $(python_gen_useflags python2_7) )"
850 -REQUIRED_USE="
851 - wxwidgets? ( ${PY2_FLAGS} )
852 - test? ( cairo gtk3 latex tk wxwidgets )"
853 -
854 -# #456704 -- a lot of py2-only deps
855 -PY2_USEDEP=$(python_gen_usedep python2_7)
856 -PY2_DEPEND="
857 - $(python_gen_cond_dep 'dev-python/functools32[${PYTHON_USEDEP}]' python2_7)
858 - $(python_gen_cond_dep 'dev-python/subprocess32[${PYTHON_USEDEP}]' python2_7)
859 - $(python_gen_cond_dep 'dev-python/backports-functools-lru-cache[${PYTHON_USEDEP}]' python2_7)"
860 -COMMON_DEPEND="
861 - dev-python/cycler[${PYTHON_USEDEP}]
862 - >=dev-python/numpy-1.7.1[${PYTHON_USEDEP}]
863 - dev-python/python-dateutil:0[${PYTHON_USEDEP}]
864 - dev-python/pytz[${PYTHON_USEDEP}]
865 - >=dev-python/six-1.10[${PYTHON_USEDEP}]
866 - media-fonts/stix-fonts
867 - media-libs/freetype:2
868 - media-libs/libpng:0
869 - >=media-libs/qhull-2013
870 - >=dev-python/kiwisolver-1.0.0[${PYTHON_USEDEP}]
871 - cairo? ( dev-python/cairocffi[${PYTHON_USEDEP}] )
872 - wxwidgets? ( >=dev-python/wxpython-2.8:*[${PY2_USEDEP}] )"
873 -
874 -# internal copy of pycxx highly patched
875 -# dev-python/pycxx
876 -
877 -DEPEND="${COMMON_DEPEND}
878 - ${PY2_DEPEND}
879 - dev-python/versioneer[${PYTHON_USEDEP}]
880 - dev-python/setuptools[${PYTHON_USEDEP}]
881 - virtual/pkgconfig
882 - doc? (
883 - app-text/dvipng
884 - dev-python/colorspacious[${PYTHON_USEDEP}]
885 - dev-python/pillow[${PYTHON_USEDEP}]
886 - dev-python/ipython[${PYTHON_USEDEP}]
887 - dev-python/mock[${PY2_USEDEP}]
888 - >=dev-python/numpydoc-0.8[${PYTHON_USEDEP}]
889 - <dev-python/numpydoc-0.9
890 - sci-libs/scipy[${PYTHON_USEDEP}]
891 - >=dev-python/sphinx-1.3.0[${PYTHON_USEDEP}]
892 - >=dev-python/sphinx-gallery-0.3.1[${PYTHON_USEDEP}]
893 - dev-python/xlwt[${PYTHON_USEDEP}]
894 - dev-texlive/texlive-latexextra
895 - dev-texlive/texlive-fontsrecommended
896 - dev-texlive/texlive-latexrecommended
897 - media-gfx/graphviz[cairo]
898 - )
899 - test? (
900 - dev-python/mock[${PYTHON_USEDEP}]
901 - >=dev-python/nose-0.11.1[${PYTHON_USEDEP}]
902 - )"
903 -
904 -RDEPEND="${COMMON_DEPEND}
905 - ${PY2_DEPEND}
906 - >=dev-python/pyparsing-1.5.6[${PYTHON_USEDEP}]
907 - excel? ( dev-python/xlwt[${PYTHON_USEDEP}] )
908 - gtk3? (
909 - dev-python/pygobject:3[${PYTHON_USEDEP}]
910 - x11-libs/gtk+:3[introspection]
911 - )
912 - latex? (
913 - virtual/latex-base
914 - app-text/ghostscript-gpl
915 - app-text/dvipng
916 - app-text/poppler[utils]
917 - dev-texlive/texlive-fontsrecommended
918 - dev-texlive/texlive-latexextra
919 - dev-texlive/texlive-xetex
920 - )"
921 -
922 -# A few C++ source files are written to srcdir.
923 -# Other than that, the ebuild shall be fit for out-of-source build.
924 -DISTUTILS_IN_SOURCE_BUILD=1
925 -
926 -pkg_setup() {
927 - unset DISPLAY # bug #278524
928 -}
929 -
930 -use_setup() {
931 - local uword="${2:-${1}}"
932 - if use ${1}; then
933 - echo "${uword} = True"
934 - echo "${uword}agg = True"
935 - else
936 - echo "${uword} = False"
937 - echo "${uword}agg = False"
938 - fi
939 -}
940 -
941 -python_prepare_all() {
942 -# Generates test failures, but fedora does it
943 -# local PATCHES=(
944 -# "${FILESDIR}"/${P}-unbundle-pycxx.patch
945 -# "${FILESDIR}"/${P}-unbundle-agg.patch
946 -# )
947 -# rm -r agg24 CXX || die
948 -# rm -r agg24 || die
949 -
950 -# cat > lib/${PN}/externals/six.py <<-EOF
951 -# from __future__ import absolute_import
952 -# from six import *
953 -# EOF
954 -
955 - local PATCHES=(
956 - "${FILESDIR}"/${PN}-2.2.4-doc-fix.patch
957 - "${FILESDIR}"/${PN}-2.2.4-no-jqueryui-download.patch
958 - )
959 -
960 - sed \
961 - -e 's/matplotlib.pyparsing_py[23]/pyparsing/g' \
962 - -i lib/matplotlib/{mathtext,fontconfig_pattern}.py \
963 - || die "sed pyparsing failed"
964 -
965 - hprefixify setupext.py
966 -
967 - export XDG_RUNTIME_DIR="${T}/runtime-dir"
968 - mkdir "${XDG_RUNTIME_DIR}" || die
969 - chmod 0700 "${XDG_RUNTIME_DIR}" || die
970 -
971 - distutils-r1_python_prepare_all
972 -}
973 -
974 -python_configure_all() {
975 - append-flags -fno-strict-aliasing
976 - append-cppflags -DNDEBUG # or get old trying to do triangulation
977 - tc-export PKG_CONFIG
978 -}
979 -
980 -python_configure() {
981 - mkdir -p "${BUILD_DIR}" || die
982 -
983 - # create setup.cfg (see setup.cfg.template for any changes).
984 -
985 - # common switches.
986 - cat > "${BUILD_DIR}"/setup.cfg <<- EOF || die
987 - [directories]
988 - basedirlist = ${EPREFIX}/usr
989 - [provide_packages]
990 - pytz = False
991 - dateutil = False
992 - [packages]
993 - tests = $(usex test True False)
994 - [gui_support]
995 - agg = True
996 - pyside = False
997 - pysideagg = False
998 - qt4 = False
999 - qt4agg = False
1000 - qt5 = False
1001 - qt5agg = False
1002 - $(use_setup cairo)
1003 - $(use_setup gtk3)
1004 - $(use_setup tk)
1005 - EOF
1006 -
1007 - if use gtk3 && use cairo; then
1008 - echo "gtk3cairo = True" >> "${BUILD_DIR}"/setup.cfg || die
1009 - else
1010 - echo "gtk3cairo = False" >> "${BUILD_DIR}"/setup.cfg || die
1011 - fi
1012 -
1013 - if python_is_python3; then
1014 - cat >> "${BUILD_DIR}"/setup.cfg <<- EOF || die
1015 - gtk = False
1016 - gtkagg = False
1017 - wx = False
1018 - wxagg = False
1019 - EOF
1020 - else
1021 - cat >> "${BUILD_DIR}"/setup.cfg <<-EOF || die
1022 - gtk = False
1023 - gtkagg = False
1024 - $(use_setup wxwidgets wx)
1025 - EOF
1026 - fi
1027 -}
1028 -
1029 -wrap_setup() {
1030 - local MAKEOPTS=-j1
1031 - local -x MPLSETUPCFG="${BUILD_DIR}"/setup.cfg
1032 - unset DISPLAY
1033 - "$@"
1034 -}
1035 -
1036 -python_compile() {
1037 - wrap_setup distutils-r1_python_compile --build-lib="${BUILD_DIR}"/lib
1038 -}
1039 -
1040 -python_compile_all() {
1041 - if use doc; then
1042 - cd doc || die
1043 -
1044 - # necessary for in-source build
1045 - local -x PYTHONPATH="${BUILD_DIR}"/build/lib:${PYTHONPATH}
1046 -
1047 - VARTEXFONTS="${T}"/fonts \
1048 - emake SPHINXOPTS= O=-Dplot_formats=png:100 html
1049 - fi
1050 -}
1051 -
1052 -python_test() {
1053 - wrap_setup distutils_install_for_testing
1054 -
1055 - virtx "${EPYTHON}" -c "import sys, matplotlib as m; sys.exit(0 if m.test(verbosity=2) else 1)"
1056 -}
1057 -
1058 -python_install() {
1059 - wrap_setup distutils-r1_python_install
1060 -
1061 - # mpl_toolkits namespace
1062 - python_moduleinto mpl_toolkits
1063 - python_domodule lib/mpl_toolkits/__init__.py
1064 -}
1065 -
1066 -python_install_all() {
1067 - use doc && local HTML_DOCS=( doc/build/html/. )
1068 -
1069 - distutils-r1_python_install_all
1070 -
1071 - if use examples; then
1072 - dodoc -r examples
1073 - docompress -x /usr/share/doc/${PF}/examples
1074 - fi
1075 -
1076 - find "${D}" -name '*.pth' -delete || die
1077 -}
1078
1079 diff --git a/profiles/base/package.use.mask b/profiles/base/package.use.mask
1080 index 5200d63551c..b0a45fd2cbb 100644
1081 --- a/profiles/base/package.use.mask
1082 +++ b/profiles/base/package.use.mask
1083 @@ -165,7 +165,6 @@ dev-python/zeep tornado
1084
1085 # Michał Górny <mgorny@g.o> (2020-01-29)
1086 # Require Python 2 support in numpydoc.
1087 -<dev-python/matplotlib-3 doc
1088 <=dev-python/pywavelets-0.5.2-r1 doc
1089
1090 # Michał Górny <mgorny@g.o> (2020-01-29)