--- Begin Message ---
Subject: |
Re: [PATCH] gnu: python-matplotlib: Don't propagate python-numpy-bootstrap. |
Date: |
Mon, 13 Feb 2017 10:57:06 +0100 (CET) |
(continuing the discussion from
https://lists.gnu.org/archive/html/guix-devel/2017-01/msg02239.html)
From: Marius Bakke <address@hidden>
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
From 8a9584dd196dae3520fe2ac4b050a9e0c88503f8 Mon Sep 17 00:00:00 2001
From: Thomas Danckaert <address@hidden>
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 <address@hidden>
;;; Copyright © 2016 Julien Lepiller <address@hidden>
;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <address@hidden>
-;;; Copyright © 2016 Thomas Danckaert <address@hidden>
+;;; Copyright © 2016, 2017 Thomas Danckaert <address@hidden>
;;; Copyright © 2017 Carlo Zancanaro <address@hidden>
;;;
;;; 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
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#25834: [PATCH] Update scipy stack. |
Date: |
Mon, 06 Mar 2017 23:53:42 +0100 |
User-agent: |
Notmuch/0.23.7 (https://notmuchmail.org) Emacs/25.1.1 (x86_64-unknown-linux-gnu) |
Thomas Danckaert <address@hidden> writes:
> From: Marius Bakke <address@hidden>
> 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
Description: PGP signature
--- End Message ---