summaryrefslogtreecommitdiff
path: root/build-aux
diff options
context:
space:
mode:
Diffstat (limited to 'build-aux')
-rw-r--r--build-aux/update-NEWS.scm18
1 files changed, 12 insertions, 6 deletions
diff --git a/build-aux/update-NEWS.scm b/build-aux/update-NEWS.scm
index a05ecad091..c029d2f0da 100644
--- a/build-aux/update-NEWS.scm
+++ b/build-aux/update-NEWS.scm
@@ -95,7 +95,7 @@ paragraph."
(with-atomic-file-replacement news-file
(lambda (input output)
(rewrite-org-section input output
- (make-regexp "^(\\*+) (.*) new packages")
+ (make-regexp "^(\\*+).*new packages")
(lambda (match port)
(let ((stars (match:substring match 1)))
(format port
@@ -141,7 +141,7 @@ paragraph."
(with-atomic-file-replacement news-file
(lambda (input output)
(rewrite-org-section input output
- (make-regexp "^(\\*+) (.*) package updates")
+ (make-regexp "^(\\*+).*package updates")
(lambda (match port)
(let ((stars (match:substring match 1))
(lst (map (match-lambda
@@ -166,16 +166,22 @@ paragraph."
(string-append data-directory "/packages-"
version ".txt"))
+ (define (package<? p1 p2)
+ (string<? (package-full-name p1) (package-full-name p2)))
+
(let-values (((previous-version new-version)
(call-with-input-file news-file NEWS->versions)))
(format (current-error-port) "Updating NEWS for ~a to ~a...~%"
previous-version new-version)
(let* ((old (call-with-input-file (package-file previous-version)
read))
- (new (fold-packages (lambda (p r)
- (alist-cons (package-name p) (package-version p)
- r))
- '())))
+ (all-packages/sorted (sort (fold-packages (lambda (p r)
+ (cons p r))
+ '())
+ package<?))
+ (new (map (lambda (p)
+ (cons (package-name p) (package-version p)))
+ all-packages/sorted)))
(call-with-output-file (package-file new-version)
(lambda (port)
(pretty-print new port)))