GNU bug report logs - #75325
[PATCH rust-team 0/2] Add add-dependencies procedure.

Previous Next

Package: guix-patches;

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

Date: Fri, 3 Jan 2025 19:41:02 UTC

Severity: normal

Tags: patch

To reply to this bug, email your comments to 75325 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to efraim <at> flashner.co.il, guix-patches <at> gnu.org:
bug#75325; Package guix-patches. (Fri, 03 Jan 2025 19:41:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Herman Rimm <herman <at> rimm.ee>:
New bug report received and forwarded. Copy sent to efraim <at> flashner.co.il, guix-patches <at> gnu.org. (Fri, 03 Jan 2025 19:41:02 GMT) Full text and rfc822 format available.

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

From: Herman Rimm <herman <at> rimm.ee>
To: guix-patches <at> gnu.org
Subject: [PATCH rust-team 0/2] Add add-dependencies procedure.
Date: Fri,  3 Jan 2025 20:38:41 +0100
Hello,

(parameterize ((current-warning-port (%make-void-port "w"))) ...) does
not silence the warning emitted by the format.

Cheers,
Herman

Herman Rimm (2):
  build-system: cargo: Add add-dependencies procedure.
  build-system: cargo: add-dependencies: Silence warning.

 guix/build-system/cargo.scm | 25 +++++++++++++++++++++++--
 1 file changed, 23 insertions(+), 2 deletions(-)


base-commit: 5f92f009a19c1a5a8b7df5a7bcb1e1f283a953f8
-- 
2.45.2





Information forwarded to efraim <at> flashner.co.il, guix-patches <at> gnu.org:
bug#75325; Package guix-patches. (Fri, 03 Jan 2025 19:43:02 GMT) Full text and rfc822 format available.

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

From: Herman Rimm <herman <at> rimm.ee>
To: 75325 <at> debbugs.gnu.org
Subject: [PATCH rust-team 1/2] build-system: cargo: Add add-dependencies
 procedure.
Date: Fri,  3 Jan 2025 20:40:58 +0100
* guix/build-system/cargo.scm (add-dependencies): Add procedure.

Change-Id: I5385d136697bb6d41a5bd4f6120150f841369a04
---
 guix/build-system/cargo.scm | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/guix/build-system/cargo.scm b/guix/build-system/cargo.scm
index 452f7f78d01..b22b9247a1c 100644
--- a/guix/build-system/cargo.scm
+++ b/guix/build-system/cargo.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2019 Ivan Petkov <ivanppetkov <at> gmail.com>
 ;;; Copyright © 2020 Jakub Kądziołka <kuba <at> kadziolka.net>
 ;;; Copyright © 2021, 2024 Efraim Flashner <efraim <at> flashner.co.il>
-;;; Copyright © 2024 Herman Rimm <herman <at> rimm.ee>
+;;; Copyright © 2024-2025 Herman Rimm <herman <at> rimm.ee>
 ;;; Copyright © 2024 Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -38,7 +38,8 @@ (define-module (guix build-system cargo)
   #:use-module (ice-9 vlist)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26)
-  #:export (%cargo-build-system-modules
+  #:export (add-dependencies
+            %cargo-build-system-modules
             %cargo-utils-modules
             cargo-build-system
             %crate-base-url
@@ -46,6 +47,18 @@ (define-module (guix build-system cargo)
             crate-url?
             crate-uri))
 
+;; TODO: Move to (guix build cargo-utils).
+(define* (add-dependencies dependencies)
+  "DEPENDENCIES is a list of (crate version features).  It is formatted
+and appendended to Cargo.toml."
+  #~(let ((port (open-file "Cargo.toml" "a")))
+      (format port "
+~:{[dev-dependencies.~a]
+version = ~s
+~@[features = [~{~s~^,~}]~]~%~}"
+              '#$dependencies)
+      (close port)))
+
 (define %crate-base-url
   (make-parameter "https://crates.io"))
 (define crate-url
-- 
2.45.2





Information forwarded to efraim <at> flashner.co.il, guix-patches <at> gnu.org:
bug#75325; Package guix-patches. (Fri, 03 Jan 2025 19:43:02 GMT) Full text and rfc822 format available.

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

From: Herman Rimm <herman <at> rimm.ee>
To: 75325 <at> debbugs.gnu.org
Subject: [PATCH rust-team 2/2] build-system: cargo: add-dependencies: Silence
 warning.
Date: Fri,  3 Jan 2025 20:40:59 +0100
* guix/build-system/cargo.scm (add-dependencies): Silence warning.

Change-Id: I8691766fc19073719e75c05eb5bfbce45ffc9b80
---
 guix/build-system/cargo.scm | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

diff --git a/guix/build-system/cargo.scm b/guix/build-system/cargo.scm
index b22b9247a1c..877ebaec135 100644
--- a/guix/build-system/cargo.scm
+++ b/guix/build-system/cargo.scm
@@ -34,6 +34,7 @@ (define-module (guix build-system cargo)
   #:use-module (guix platform)
   #:use-module (guix build-system)
   #:use-module (guix build-system gnu)
+  #:use-module (ice-9 format)
   #:use-module (ice-9 match)
   #:use-module (ice-9 vlist)
   #:use-module (srfi srfi-1)
@@ -51,13 +52,20 @@ (define-module (guix build-system cargo)
 (define* (add-dependencies dependencies)
   "DEPENDENCIES is a list of (crate version features).  It is formatted
 and appendended to Cargo.toml."
-  #~(let ((port (open-file "Cargo.toml" "a")))
-      (format port "
+  (let ((dependencies
+         (map (match-lambda
+                ((crate version ()) (list crate version #f))
+                ((crate version (? pair? features))
+                 (list crate version (format #f "~{~s~^,~}" features)))
+                (dep dep))
+              dependencies)))
+    #~(let ((port (open-file "Cargo.toml" "a")))
+        (format port "
 ~:{[dev-dependencies.~a]
 version = ~s
-~@[features = [~{~s~^,~}]~]~%~}"
-              '#$dependencies)
-      (close port)))
+~@[features = [~a]~]~%~}"
+                '#$dependencies)
+        (close port))))
 
 (define %crate-base-url
   (make-parameter "https://crates.io"))
-- 
2.45.2





This bug report was last modified 162 days ago.

Previous Next


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