GNU bug report logs -
#25834
Update scientific Python packages
Previous Next
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#25834: [PATCH] gnu: python-matplotlib: Don't propagate python-numpy-bootstrap.
which was filed against the guix-patches package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 25705 <at> debbugs.gnu.org.
--
25834: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=25834
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
[Message part 3 (text/plain, inline)]
Thomas Danckaert <post <at> thomasdanckaert.be> writes:
> From: Marius Bakke <mbakke <at> fastmail.com>
> Subject: Re: bug#25834: [PATCH] Update scipy stack.
> Date: Mon, 06 Mar 2017 14:25:26 +0100
>
>> Please pay attention during the 'check' phase of Python packages --
>> both
>> colorspacious and the shutils backport prints 'Ran 0 tests in...'.
>> Usually this is a sign that they require some other command than
>> 'python
>> setup.py test', which is the default of python-build-system.
>>
>> I pushed a fix for python2-backports-shutil-get-terminal-size that
>> I had
>> in my queue, but it would be nice to enable tests on colorspacious
>> as
>> well. Any takers? :)
>
> I've attached an attempt (now runs 34 tests). Am I right that
> running “nosetests colorspacious/*.py” is the only way to make it run
> the tests in this case?
Thanks! By adding "--all-modules" to the "nosetests" invocation, it was
able to discover the tests without having to add them as arguments.
Pushed! Closing this bug now, wahoo!
[signature.asc (application/pgp-signature, inline)]
[Message part 5 (message/rfc822, inline)]
[Message part 6 (text/plain, inline)]
(continuing the discussion from
https://lists.gnu.org/archive/html/guix-devel/2017-01/msg02239.html)
From: Marius Bakke <mbakke <at> fastmail.com>
Subject: Re: [PATCH] gnu: python-matplotlib: Don't propagate
python-numpy-bootstrap.
Date: Fri, 27 Jan 2017 20:57:12 +0100
>> This patch works around it by creating an intermediate
>> python-matplotlib-bootstrap package as well, which is then used as
>> a
>> native input to generate the documentation of python-numpy.
>> python-numpy is then used as a propagated input of
>> python-matplotlib,
>> so python-numpy-bootstrap doesn't appear in user's profiles
>> anymore.
>>
>> What do you think?
>
> This sounds sensible. Does numpy not require any matplotlib
> functions at
> runtime?
No. It's just used for the documentation. With the attached patch,
the dependency chain is this:
matplotlib -> numpy -> matplotlib-bootstrap -> numpy-bootstrap
(=“numpy-without-docs”)
> If so, this patch LGTM. The new matplotlib-bootstrap variables
> should have an explaining comment though :)
I've added a comment and fixed some long lines.
Thomas
[0001-gnu-python-matplotlib-Don-t-propagate-python-numpy-b.patch (text/x-patch, inline)]
From 8a9584dd196dae3520fe2ac4b050a9e0c88503f8 Mon Sep 17 00:00:00 2001
From: Thomas Danckaert <thomas.danckaert <at> gmail.com>
Date: Fri, 27 Jan 2017 12:12:42 +0100
Subject: [PATCH] gnu: python-matplotlib: Don't propagate
python-numpy-bootstrap.
* gnu/packages/python.scm (python-matplotlib-bootstrap,python2-matplotlib-bootstrap):
New variables.
(python-matplotlib, python2-matplotlib) [propagated-inputs]: Use
python-numpy instead of python-numpy-bootstrap.
(python-numpy, python2-numpy) [propagated-inputs,native-inputs]: Replace
matplotlib by native inputs matplotlib-bootstrap.
---
gnu/packages/python.scm | 26 ++++++++++++++++++++------
1 file changed, 20 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 81f9200..14d2e23 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -33,7 +33,7 @@
;;; Copyright © 2016 Arun Isaac <arunisaac <at> systemreboot.net>
;;; Copyright © 2016 Julien Lepiller <julien <at> lepiller.eu>
;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me <at> tobias.gr>
-;;; Copyright © 2016 Thomas Danckaert <post <at> thomasdanckaert.be>
+;;; Copyright © 2016, 2017 Thomas Danckaert <post <at> thomasdanckaert.be>
;;; Copyright © 2017 Carlo Zancanaro <carlo <at> zancanaro.id.au>
;;;
;;; This file is part of GNU Guix.
@@ -3404,11 +3404,11 @@ association studies (GWAS) on extremely large data sets.")
`(("which" ,which)
,@(package-inputs python-numpy-bootstrap)))
(propagated-inputs
- `(("python-matplotlib" ,python-matplotlib)
- ("python-pyparsing" ,python-pyparsing)
+ `(("python-pyparsing" ,python-pyparsing)
,@(package-propagated-inputs python-numpy-bootstrap)))
(native-inputs
`(("pkg-config" ,pkg-config)
+ ("python-matplotlib" ,python-matplotlib-bootstrap) ; to build documentation
("python-sphinx" ,python-sphinx)
("python-numpydoc" ,python-numpydoc)
("texlive" ,texlive)
@@ -3458,7 +3458,11 @@ association studies (GWAS) on extremely large data sets.")
,phases)))))))
(define-public python2-numpy
- (package-with-python2 python-numpy))
+ (let ((numpy (package-with-python2 python-numpy)))
+ (package (inherit numpy)
+ (native-inputs
+ `(("python-matplotlib" ,python2-matplotlib-bootstrap)
+ ,@(alist-delete "python-matplotlib" (package-native-inputs numpy)))))))
(define-public python-pygit2
(package
@@ -3623,7 +3627,7 @@ transcendental functions).")
("gobject-introspection" ,gobject-introspection)
("python-tkinter" ,python "tk")
("python-dateutil" ,python-dateutil-2)
- ("python-numpy" ,python-numpy-bootstrap)
+ ("python-numpy" ,python-numpy)
("python-pillow" ,python-pillow)
("python-pytz" ,python-pytz)
("python-six" ,python-six)
@@ -3740,8 +3744,18 @@ toolkits.")
`(("python2-pycairo" ,python2-pycairo)
("python2-pygobject-2" ,python2-pygobject-2)
("python2-tkinter" ,python-2 "tk")
+ ("python2-numpy" ,python2-numpy)
,@(fold alist-delete (package-propagated-inputs matplotlib)
- '("python-pycairo" "python-pygobject" "python-tkinter")))))))
+ '("python-pycairo" "python-pygobject" "python-tkinter"
+ "python-numpy")))))))
+
+;; Use `bootstrap` versions of matplotlib to build numpy documentation.
+(define python-matplotlib-bootstrap
+ ((package-input-rewriting `((,python-numpy . ,python-numpy-bootstrap)))
+ python-matplotlib))
+(define python2-matplotlib-bootstrap
+ ((package-input-rewriting `((,python2-numpy . ,python2-numpy-bootstrap)))
+ python2-matplotlib))
(define-public python2-pysnptools
(package
--
2.7.4
This bug report was last modified 8 years and 80 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.