GNU bug report logs - #74979
[PATCH 0/4] scripts: style: Sort more kinds of package

Previous Next

Package: guix-patches;

Reported by: Herman Rimm <herman <at> rimm.ee>

Date: Thu, 19 Dec 2024 19:33:02 UTC

Severity: normal

Tags: moreinfo, patch

Full log


Message #32 received at 74979 <at> debbugs.gnu.org (full text, mbox):

From: Herman Rimm <herman <at> rimm.ee>
To: 74979 <at> debbugs.gnu.org
Subject: [PATCH v2 2/4] scripts: style: Sort more kinds of package definitions.
Date: Tue, 21 Jan 2025 22:43:01 +0100
* guix/scripts/style.scm (order-packages): Match comments before package
S-exp. and its fields.  Match in let.  Match package/inherit.
* tests/guix-style.sh: Add pkg-baz variable and package/inherit to test.

Change-Id: I48a5976930501c20415b5413966b5294958bc23b
---
 guix/scripts/style.scm | 13 +++++++------
 tests/guix-style.sh    | 10 ++++++++--
 2 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/guix/scripts/style.scm b/guix/scripts/style.scm
index 4b704ddfb7e..6f07f6c3b9e 100644
--- a/guix/scripts/style.scm
+++ b/guix/scripts/style.scm
@@ -503,13 +503,14 @@ (define (order-packages lst)
 share a name are placed with versions in descending order."
   (define (package-fields pkg)
     (match pkg
-      ((('define-public _ expr) _ ...)
+      ((('define-public pkg _ ... (or ('let _ expr) expr)) _ ...)
        (match expr
-         ((or ('package _ ('name name) ('version version) _ ...)
-              ('package ('name name) ('version version) _ ...))
-          (values name version))
-         (_ (values #f #f))))
-      (_ (values #f #f))))
+         (((or 'package 'package/inherit) fields ...)
+          (let ((name (and=> (assoc-ref fields 'name) first))
+                (version (and=> (assoc-ref fields 'version) first)))
+            (values name version)))
+         (_ (and (values #f #f)))))
+      (_ (and (values #f #f)))))
 
   (define (package>? lst1 lst2)
     (let-values (((name1 version1) (package-fields lst1))
diff --git a/tests/guix-style.sh b/tests/guix-style.sh
index 93331394353..703e148b699 100644
--- a/tests/guix-style.sh
+++ b/tests/guix-style.sh
@@ -65,10 +65,16 @@ cat > "$tmpfile" <<EOF
     (name "bar")
     (version "2")))
 
+(define-public pkg-baz
+  (let ()
+    (package
+      (name "baz")
+      (version "2"))))
+
 ;; The comment below belongs to the foo package.
 (define-public pkg
-  (package
-    (name "bar")
+  (package/inherit pkg-baz
+    (name "baz")
     (version "1")))
 ;; Incomplete package definitions in alphabetical order.
 
-- 
2.47.1





This bug report was last modified 116 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.