aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2025-02-27 09:41:50 +0000
committerChristopher Baines <mail@cbaines.net>2025-02-27 09:41:50 +0000
commit514ab0ccb6a4fa461b0a03f9ddd2b72b727106e6 (patch)
treea61b7c95211bd4222c4fab6c44995c8b8ebe8336
parent347a24bf69e30f7a7645f7d5298fe40dbfbd12cf (diff)
downloadqa-frontpage-514ab0ccb6a4fa461b0a03f9ddd2b72b727106e6.tar
qa-frontpage-514ab0ccb6a4fa461b0a03f9ddd2b72b727106e6.tar.gz
Add some crude exception handling to the package changes view
-rw-r--r--guix-qa-frontpage/view/shared.scm63
1 files changed, 34 insertions, 29 deletions
diff --git a/guix-qa-frontpage/view/shared.scm b/guix-qa-frontpage/view/shared.scm
index 804923b..4031265 100644
--- a/guix-qa-frontpage/view/shared.scm
+++ b/guix-qa-frontpage/view/shared.scm
@@ -338,35 +338,40 @@
%systems-to-submit-builds-for))))
(tbody
(@ (style "overflow: auto; max-height: 40em;"))
- ,@(vector-fold-right
- (lambda (_ result package-and-version)
- (let* ((builds
- (builds-by-system
- (assoc-ref package-and-version "base")
- (assoc-ref package-and-version "target")))
- (change-by-system
- (builds->change-by-system builds))
- (derivations
- (derivations-by-system
- (assoc-ref package-and-version "base")
- (assoc-ref package-and-version "target"))))
- (cons
- `(tr
- (@ ,@(if (display? package-and-version
- change-by-system)
- '()
- '((style "display: none;"))))
- (td ,(assoc-ref package-and-version "name"))
- (td ,(assoc-ref package-and-version "version"))
- ,@(map
- (lambda (system)
- (display-builds (assoc-ref builds system)
- (assoc-ref derivations system)
- (assoc-ref change-by-system system)))
- %systems-to-submit-builds-for))
- result)))
- '()
- (assoc-ref derivation-changes "derivation_changes"))))))))
+ ,@(if (assq-ref derivation-changes 'exception)
+ `((tr
+ (td
+ (@ (colspan ,(+ 2 (length %systems-to-submit-builds-for))))
+ (pre ,(simple-format #f "~A" derivation-changes)))))
+ (vector-fold-right
+ (lambda (_ result package-and-version)
+ (let* ((builds
+ (builds-by-system
+ (assoc-ref package-and-version "base")
+ (assoc-ref package-and-version "target")))
+ (change-by-system
+ (builds->change-by-system builds))
+ (derivations
+ (derivations-by-system
+ (assoc-ref package-and-version "base")
+ (assoc-ref package-and-version "target"))))
+ (cons
+ `(tr
+ (@ ,@(if (display? package-and-version
+ change-by-system)
+ '()
+ '((style "display: none;"))))
+ (td ,(assoc-ref package-and-version "name"))
+ (td ,(assoc-ref package-and-version "version"))
+ ,@(map
+ (lambda (system)
+ (display-builds (assoc-ref builds system)
+ (assoc-ref derivations system)
+ (assoc-ref change-by-system system)))
+ %systems-to-submit-builds-for))
+ result)))
+ '()
+ (assoc-ref derivation-changes "derivation_changes")))))))))
(define (package-cross-changes-view title
system