aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Baines <mail@cbaines.net>2023-10-13 10:28:04 +0100
committerChristopher Baines <mail@cbaines.net>2023-10-13 10:28:04 +0100
commit5cef725159259dbd1ea377d46ba37d9012025951 (patch)
treef9295571bec27ac1ed60d483599720b0619cbc39
parent632b0545b290c7f8b5f5c8f91f8ad8c5947df6bd (diff)
downloadqa-frontpage-5cef725159259dbd1ea377d46ba37d9012025951.tar
qa-frontpage-5cef725159259dbd1ea377d46ba37d9012025951.tar.gz
Only display merged issues once
Using the merged_with data now available from Mumi.
-rw-r--r--guix-qa-frontpage/mumi.scm8
-rw-r--r--guix-qa-frontpage/patchwork.scm22
2 files changed, 22 insertions, 8 deletions
diff --git a/guix-qa-frontpage/mumi.scm b/guix-qa-frontpage/mumi.scm
index bf01397..82b64b5 100644
--- a/guix-qa-frontpage/mumi.scm
+++ b/guix-qa-frontpage/mumi.scm
@@ -109,7 +109,8 @@
`(document
,@(map (lambda (number)
`(query (#(issue #:number ,number)
- number title open severity tags)))
+ number title open severity tags
+ (merged_with number))))
(car chunks)))
#:keep-alive? #t
#:port port))
@@ -125,6 +126,11 @@
(open? . ,(assoc-ref data "open"))
(tags . ,(vector->list
(assoc-ref data "tags")))
+ (merged-with . ,(map
+ (lambda (data)
+ (assoc-ref data "number"))
+ (vector->list
+ (assoc-ref data "merged_with"))))
(severity . ,(assoc-ref data "severity"))))))
response)))
#:unwind? #t)
diff --git a/guix-qa-frontpage/patchwork.scm b/guix-qa-frontpage/patchwork.scm
index 335d4d1..7f2de19 100644
--- a/guix-qa-frontpage/patchwork.scm
+++ b/guix-qa-frontpage/patchwork.scm
@@ -186,13 +186,21 @@
hash-table)))
(sort!
(filter-map (lambda (data mumi)
- (if (assq-ref mumi 'open?)
- `(,@data
- (mumi . ,mumi)
- (usertags . ,(or (hash-ref usertag-lookup
- (car data))
- '())))
- #f))
+ (let ((issue-number (car data)))
+ (if (and (assq-ref mumi 'open?)
+ (every
+ (lambda (merged-issue-number)
+ (if (< merged-issue-number
+ issue-number)
+ (not (hash-ref result merged-issue-number))
+ #t))
+ (assq-ref mumi 'merged-with)))
+ `(,@data
+ (mumi . ,mumi)
+ (usertags . ,(or (hash-ref usertag-lookup
+ (car data))
+ '())))
+ #f)))
data
mumi-data)
(lambda (a b)