[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#39753] [PATCH] guix: swh: Handle absolute URLs being returned by th
From: |
Jakub Kądziołka |
Subject: |
[bug#39753] [PATCH] guix: swh: Handle absolute URLs being returned by the API. |
Date: |
Sun, 23 Feb 2020 12:20:33 +0100 |
* guix/swh.scm (swh-url): Don't prepend (%swh-base-url) if a domain is
already present.
This fixes the "guix lint: warning: while connecting to Software Heritage:
host lookup failure: Name or service not known" error message.
---
guix/swh.scm | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/guix/swh.scm b/guix/swh.scm
index 8bdf9965f6..a948a8f28f 100644
--- a/guix/swh.scm
+++ b/guix/swh.scm
@@ -126,9 +126,16 @@
(make-parameter "https://archive.softwareheritage.org"))
(define (swh-url path . rest)
+ ;; URLs returned by the API may be relative or absolute. This has changed
+ ;; without notice before. Handle both cases by detecting whether the path
+ ;; starts with a domain.
+ (define root
+ (if (string-prefix? "/" path)
+ (string-append (%swh-base-url) path)
+ path))
+
(define url
- (string-append (%swh-base-url) path
- (string-join rest "/" 'prefix)))
+ (string-append root (string-join rest "/" 'prefix)))
;; Ensure there's a trailing slash or we get a redirect.
(if (string-suffix? "/" url)
--
2.25.0
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [bug#39753] [PATCH] guix: swh: Handle absolute URLs being returned by the API.,
Jakub Kądziołka <=