From: Thomas Danckaert <post@thomasdanckaert.be>
To: guix-devel@gnu.org
Subject: [PATCH] gnu: python-matplotlib: Don't propagate python-numpy-bootstrap.
Date: Fri, 27 Jan 2017 16:05:09 +0100 (CET) [thread overview]
Message-ID: <20170127.160509.2073167591783697985.post@thomasdanckaert.be> (raw)
[-- Attachment #1: Type: Text/Plain, Size: 658 bytes --]
Hi,
when a profile contains both python-numpy and python-matplotlib
(either installed directly or by propagation, e.g. when from
python-ipython), a lot of warnings about conflicts between
python-numpy and python-nympy-bootstrap appear, because matplotlib
propagates its python-numpy-bootstrap dependency.
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?
Thomas
[-- Attachment #2: 0001-gnu-python-matplotlib-Don-t-propagate-python-numpy-b.patch --]
[-- Type: Text/X-Patch, Size: 3197 bytes --]
From 56a9c4d0f86308fe7bdec1345998c0142c444a4b Mon Sep 17 00:00:00 2001
From: Thomas Danckaert <thomas.danckaert@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 | 21 ++++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 1a56008a6..73a940548 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -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,15 @@ 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")))))))
+
+(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.11.0
next reply other threads:[~2017-01-27 15:05 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-01-27 15:05 Thomas Danckaert [this message]
2017-01-27 19:57 ` [PATCH] gnu: python-matplotlib: Don't propagate python-numpy-bootstrap Marius Bakke
2017-01-30 10:26 ` Thomas Danckaert
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://guix.gnu.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170127.160509.2073167591783697985.post@thomasdanckaert.be \
--to=post@thomasdanckaert.be \
--cc=guix-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/guix.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).