aboutsummaryrefslogtreecommitdiff
path: root/guix-qa-frontpage/view/issue.scm
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2022-09-17 14:01:38 +0200
committerChristopher Baines <mail@cbaines.net>2022-09-17 14:01:38 +0200
commit6f55230074dab020fa43b8fa1604733cef1018f2 (patch)
tree9f8ed5de34bf5fb39b21c5847c0b34607c48ea75 /guix-qa-frontpage/view/issue.scm
parentcc862011fc517075a6b0927c48bc71c7e65768a7 (diff)
downloadqa-frontpage-6f55230074dab020fa43b8fa1604733cef1018f2.tar
qa-frontpage-6f55230074dab020fa43b8fa1604733cef1018f2.tar.gz
Conditionally show the Guix Data Service link on the issue page
So that a broken link isn't shown.
Diffstat (limited to 'guix-qa-frontpage/view/issue.scm')
-rw-r--r--guix-qa-frontpage/view/issue.scm23
1 files changed, 13 insertions, 10 deletions
diff --git a/guix-qa-frontpage/view/issue.scm b/guix-qa-frontpage/view/issue.scm
index 3a57598..f1ac40d 100644
--- a/guix-qa-frontpage/view/issue.scm
+++ b/guix-qa-frontpage/view/issue.scm
@@ -35,13 +35,14 @@
derivation-changes))
(define comparison-link
- (let ((revisions
- (assoc-ref change-details "revisions")))
- (simple-format #f "https://data.qa.guix.gnu.org/compare?base_commit=~A&target_commit=~A"
- (assoc-ref (assoc-ref revisions "base")
- "commit")
- (assoc-ref (assoc-ref revisions "target")
- "commit"))))
+ (and=>
+ (assoc-ref change-details "revisions")
+ (lambda (revisions)
+ (simple-format #f "https://data.qa.guix.gnu.org/compare?base_commit=~A&target_commit=~A"
+ (assoc-ref (assoc-ref revisions "base")
+ "commit")
+ (assoc-ref (assoc-ref revisions "target")
+ "commit")))))
(define* (package-derivations-comparison-link system
#:key build-change)
@@ -163,9 +164,11 @@ td.bad {
(li
(a (@ (href ,(assoc-ref series "web_url")))
"View series on Patchwork"))
- (li
- (a (@ (href ,comparison-link))
- "View Guix Data Service comparison"))))
+ ,@(if comparison-link
+ `((li
+ (a (@ (href ,comparison-link))
+ "View Guix Data Service comparison")))
+ '())))
(h2 ,(assoc-ref series "name"))