emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debbugs-tracker] bug#25705: closed ([PATCH] gnu: python-matplotlib: Don


From: GNU bug Tracking System
Subject: [debbugs-tracker] bug#25705: closed ([PATCH] gnu: python-matplotlib: Don't propagate python-numpy-bootstrap.)
Date: Mon, 06 Mar 2017 22:54:02 +0000

Your message dated Mon, 06 Mar 2017 23:53:42 +0100
with message-id <address@hidden>
and subject line Re: bug#25834: [PATCH] Update scipy stack.
has caused the debbugs.gnu.org bug report #25834,
regarding [PATCH] gnu: python-matplotlib: Don't propagate 
python-numpy-bootstrap.
to be marked as done.

(If you believe you have received this mail in error, please contact
address@hidden)


-- 
25834: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=25834
GNU Bug Tracking System
Contact address@hidden with problems
--- 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!

Attachment: signature.asc
Description: PGP signature


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]