Hello,
I'm having a look at the reported profile-collisions
linter warnings.
See for example:
http://data.guix.gnu.org/revision/f521104e344ed9bf259a6b821fd0f3080f8ebf6b/package/python-requests/2.20.1?locale=en_US.UTF-8
I'm trying to remove the duplicated propagated-inputs
entries (from the inherited package) and then
concatenating the overrides.
I've come with the attached diff, but it's giving me
headaches.
Anyone can give it a look and tell me what is wrong
with my coding ?
PS: I don't know if this would be better posted in guix-help or elsewhere...
Thanks
--
Vincent Legoll
diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm
index c1de8197e0..94a7210bbf 100644
--- a/gnu/packages/python-web.scm
+++ b/gnu/packages/python-web.scm
@@ -2454,6 +2454,11 @@ APIs.")
than Python’s urllib2 library.")
(license license:asl2.0)))
+(define (propagated-inputs-filtered overrides old_inputs)
+ (let* ((overrides_names (map caar overrides))
+ (old_inputs_filtered (remove (lambda i (member (caar i) overrides_names) old_inputs))))
+ (concatenate '(old_inputs_filtered overrides))))
+
;; Some software requires an older version of Requests, notably Docker/Docker
;; Compose.
(define-public python-requests-2.20
@@ -2466,9 +2471,10 @@ than Python’s urllib2 library.")
(base32
"0qzj6cgv3k9wyj7wlxgz7xq0cfg4jbbkfm24pp8dnhczwl31527a"))))
(propagated-inputs
- `(("python-urllib3" ,python-urllib3-1.24)
- ("python-idna" ,python-idna-2.7)
- ,@(package-propagated-inputs python-requests)))))
+ `,@(propagated-inputs-filtered
+ `(("python-urllib3" ,python-urllib3-1.24)
+ ("python-idna" ,python-idna-2.7))
+ (package-propagated-inputs python-requests)))))
(define-public python2-requests
(package-with-python2 python-requests))