Subject: Re: [PATCH v2 0/6] build-system/node: Replace (guix build json) by (json).
From: Jelle Licht <[email-masked]>
To: Nicolas Graves <[email-masked]>, [email-masked]
Cc: [email-masked]
Date: Tue, 18 Feb 2025 11:50:14 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hey folks,

Nicolas Graves <[email-masked]> writes:

> This is a rework of Daniel's patch series.
>
> I have reworded commit messages to respect (info) Standards ; did some
> reindenting ; added the guile-json extension as suggested by Ludo ;
> added a patch to use the test-target argument ; and did the same for
> tree-sitter modules (which was necessary).
>
> Daniel Khodabakhsh (2):
>   build-system/node: Switch to (json).
>   build-system/node: New API for modifying json.
>
> Nicolas Graves (4):
>   build-system/node: Add guile-json extension.
>   build-system/node: Use test-target argument.
>   build-system/tree-sitter: Switch to (json).
>   build-system/tree-sitter: Add guile-json extension.

Applied + pushed to a new javascript-team branch with the following
small changes to get it to compile cleanly:

diff --git a/guix/build-system/node.scm b/guix/build-system/node.scm
index 240336ea35..cde0ccb60e 100644
--- a/guix/build-system/node.scm
+++ b/guix/build-system/node.scm
@@ -96,6 +96,7 @@ (define* (node-build name inputs
                      (outputs '("out"))
                      (search-paths '())
                      (system (%current-system))
+                     (guile #f)
                      (guile-json (default-guile-json))
                      (imported-modules %node-build-system-modules)
                      (modules '((guix build node-build-system)
diff --git a/guix/build/node-build-system.scm b/guix/build/node-build-system.scm
index 9967069458..05940bc997 100644
--- a/guix/build/node-build-system.scm
+++ b/guix/build/node-build-system.scm
@@ -221,7 +221,7 @@ (define* (replace-fields fields #:key (strict? #t))
     #:strict? strict?))
 
 (define (delete-dev-dependencies)
-  (delete-fields (list "devDependencies") #:strict #f))
+  (delete-fields (list "devDependencies") #:strict? #f))
 
 ;;;
 ;;; Phases.
diff --git a/guix/build-system/tree-sitter.scm b/guix/build-system/tree-sitter.scm
index f59a255307..90d9704cb8 100644
--- a/guix/build-system/tree-sitter.scm
+++ b/guix/build-system/tree-sitter.scm
@@ -104,6 +104,7 @@ (define* (tree-sitter-build name inputs
                             (outputs '("out" "js"))
                             (search-paths '())
                             (system (%current-system))
+                            (guile #f)
                             (guile-json (default-guile-json))
                             (imported-modules %tree-sitter-build-system-modules)
                             (modules '((guix build utils)