[PATCH 00/19] Sort packages in node-xyz.scm

  • Open
  • quality assurance status badge
Details
One participant
  • Nicolas Graves
Owner
unassigned
Submitted by
Nicolas Graves
Severity
normal
N
N
Nicolas Graves wrote on 24 Sep 14:47 +0200
(address . guix-patches@gnu.org)(address . ngraves@ngraves.fr)
cover.1695559497.git.ngraves@ngraves.fr
This patch series roughly sorts the whole node-xyz.scm file, and adds
a reminder header to add packages in the alphabetical order.

Nicolas Graves (19):
gnu: node-bindings: Move package in alphabetical order.
gnu: node-util-deprecate: Move package in alphabetical order.
gnu: node-once: Move package in alphabetical order.
gnu: node-ieee754: Move package in alphabetical order.
gnu: node-inherits: Move package in alphabetical order.
gnu: node-safe-buffer: Move package in alphabetical order.
gnu: node-string-decoder: Move package in alphabetical order.
gnu: node-readable-stream: Move package in alphabetical order.
gnu: node-irc and node-irc-colors: Move in alphabetical order.
gnu: node-nan: Move package in alphabetical order.
gnu: node-addon-api: Move package in alphabetical order.
gnu: node-sqlite3: Move package in alphabetical order.
gnu: node-file-uri-to-path: Move package in alphabetical order.
gnu: node-segfault-handler: Move package in alphabetical order.
gnu: node-ms: Move package in alphabetical order.
gnu: node-debug: Move package in alphabetical order.
gnu: node-serialport packages: Move packages in alphabetical order.
gnu: node-semver: Move package in alphabetical order.
gnu: packages: node-xyz: Add alphatical order header.

gnu/packages/node-xyz.scm | 1480 +++++++++++++++++++------------------
1 file changed, 742 insertions(+), 738 deletions(-)


base-commit: 792a20ab93cf88feae119296b0d2db58dccf3732
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 02/19] gnu: node-util-deprecate: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
adf4d15835d17a93775063238e49a2782430a88e.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-util-deprecate): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 44 +++++++++++++++++++--------------------
1 file changed, 22 insertions(+), 22 deletions(-)

Toggle diff (64 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index b685c7d597..e3c002a1a9 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -547,28 +547,6 @@ (define-public node-statsd-parser
protocol used in @code{node-lynx}.")
(license license:asl2.0)))
-(define-public node-util-deprecate
- (package
- (name "node-util-deprecate")
- (version "1.0.2")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/TooTallNate/util-deprecate")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1rk94nl3qc7znsk8400bnga30v0m7j2mmvz9ldwjinxv1d3n11xc"))))
- (build-system node-build-system)
- (arguments '(#:tests? #f)) ; No test suite.
- (home-page "https://github.com/TooTallNate/util-deprecate")
- (synopsis "Node.js `util.deprecate()` function with browser support")
- (description "This package provides the Node.js @code{util.deprecate()}
-function with browser support.")
- (license license:expat)))
-
(define-public node-semver
(package
(name "node-semver")
@@ -598,6 +576,28 @@ (define-public node-semver
@uref{https://semver.org/, SemVer.org} specification.")
(license license:isc)))
+(define-public node-util-deprecate
+ (package
+ (name "node-util-deprecate")
+ (version "1.0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/TooTallNate/util-deprecate")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1rk94nl3qc7znsk8400bnga30v0m7j2mmvz9ldwjinxv1d3n11xc"))))
+ (build-system node-build-system)
+ (arguments '(#:tests? #f)) ; No test suite.
+ (home-page "https://github.com/TooTallNate/util-deprecate")
+ (synopsis "Node.js `util.deprecate()` function with browser support")
+ (description "This package provides the Node.js @code{util.deprecate()}
+function with browser support.")
+ (license license:expat)))
+
(define-public node-wrappy
(package
(name "node-wrappy")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 01/19] gnu: node-bindings: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
28369246c2163cab7579f033071c85fbc6d0768b.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-bindings): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 50 +++++++++++++++++++--------------------
1 file changed, 25 insertions(+), 25 deletions(-)

Toggle diff (72 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 6c16417309..b685c7d597 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -107,6 +107,31 @@ (define-public node-acorn
architecture supporting plugins.")
(license license:expat)))
+(define-public node-bindings
+ (package
+ (name "node-bindings")
+ (version "1.5.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/TooTallNate/node-bindings")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "100gp6kpjvd4j1dqnp0sbjr1hqx5mz7r61q9qy527jyhk9mj47wk"))))
+ (inputs
+ (list node-file-uri-to-path))
+ (build-system node-build-system)
+ (arguments
+ ;; there are no tests
+ `(#:tests? #f))
+ (home-page "https://github.com/TooTallNate/node-bindings")
+ (synopsis "Locate native addons")
+ (description "This package provides a helper module to locate native
+addons in a wide array of potential locations.")
+ (license license:expat)))
+
(define-public node-buffer-crc32
(package
(name "node-buffer-crc32")
@@ -1161,31 +1186,6 @@ (define-public node-file-uri-to-path
suitable for use with the @code{fs} module functions.")
(license license:expat)))
-(define-public node-bindings
- (package
- (name "node-bindings")
- (version "1.5.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/TooTallNate/node-bindings")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "100gp6kpjvd4j1dqnp0sbjr1hqx5mz7r61q9qy527jyhk9mj47wk"))))
- (inputs
- (list node-file-uri-to-path))
- (build-system node-build-system)
- (arguments
- ;; there are no tests
- `(#:tests? #f))
- (home-page "https://github.com/TooTallNate/node-bindings")
- (synopsis "Locate native addons")
- (description "This package provides a helper module to locate native
-addons in a wide array of potential locations.")
- (license license:expat)))
-
(define-public node-segfault-handler
(package
(name "node-segfault-handler")

base-commit: 792a20ab93cf88feae119296b0d2db58dccf3732
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 04/19] gnu: node-ieee754: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
741aa2c07b6160b8f2c9c396014f9b9f14aeb3e9.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-ieee754): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 52 +++++++++++++++++++--------------------
1 file changed, 26 insertions(+), 26 deletions(-)

Toggle diff (72 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 22bf16437a..61bae983f8 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -301,6 +301,32 @@ (define-public node-global-gradle-clean
clean task of each project.")
(license license:expat)))
+(define-public node-ieee754
+ (package
+ (name "node-ieee754")
+ (version "1.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/feross/ieee754")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "19rlg59lavnwsvbblhvrqwinz2wzqlxhddqpwrc3cyqkscjgza7i"))))
+ (build-system node-build-system)
+ (arguments
+ '(#:tests? #f
+ #:phases (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda _
+ (delete-dependencies '("airtap" "standard" "tape")))))))
+ (home-page "https://github.com/feross/ieee754")
+ (synopsis "Read/write IEEE754 floating point numbers in Javascript")
+ (description "This package can read and write IEEE754 floating point
+numbers from/to a Buffer or array-like object in Javascript.")
+ (license license:bsd-3)))
+
(define-public node-long-stack-traces
(package
(name "node-long-stack-traces")
@@ -656,32 +682,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-ieee754
- (package
- (name "node-ieee754")
- (version "1.2.1")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/feross/ieee754")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "19rlg59lavnwsvbblhvrqwinz2wzqlxhddqpwrc3cyqkscjgza7i"))))
- (build-system node-build-system)
- (arguments
- '(#:tests? #f
- #:phases (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda _
- (delete-dependencies '("airtap" "standard" "tape")))))))
- (home-page "https://github.com/feross/ieee754")
- (synopsis "Read/write IEEE754 floating point numbers in Javascript")
- (description "This package can read and write IEEE754 floating point
-numbers from/to a Buffer or array-like object in Javascript.")
- (license license:bsd-3)))
-
(define-public node-inherits
(package
(name "node-inherits")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 05/19] gnu: node-inherits: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
10eb8382afd423d2929fce414e176d7052de8bc1.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-inherits): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 60 +++++++++++++++++++--------------------
1 file changed, 30 insertions(+), 30 deletions(-)

Toggle diff (80 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 61bae983f8..4ec1174f57 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -327,6 +327,36 @@ (define-public node-ieee754
numbers from/to a Buffer or array-like object in Javascript.")
(license license:bsd-3)))
+(define-public node-inherits
+ (package
+ (name "node-inherits")
+ (version "2.0.4")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/isaacs/inherits")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0cpsr5yqwkxpbbbbl0rwk4mcby6zbx841k2zb4c3gb1579i5wq9p"))))
+ (build-system node-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies '("tap")))))
+ ;; FIXME: Tests depend on node-tap
+ #:tests? #f))
+ (home-page "https://github.com/isaacs/inherits")
+ (synopsis "Browser-friendly object inheritance")
+ (description "This package provides an alternative implementation of
+Node's @code{inherits} constructor that can be used in browsers, while
+defaulting to Node's implementation otherwise.")
+ (license license:isc)))
+
(define-public node-long-stack-traces
(package
(name "node-long-stack-traces")
@@ -682,36 +712,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-inherits
- (package
- (name "node-inherits")
- (version "2.0.4")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/isaacs/inherits")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0cpsr5yqwkxpbbbbl0rwk4mcby6zbx841k2zb4c3gb1579i5wq9p"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies '("tap")))))
- ;; FIXME: Tests depend on node-tap
- #:tests? #f))
- (home-page "https://github.com/isaacs/inherits")
- (synopsis "Browser-friendly object inheritance")
- (description "This package provides an alternative implementation of
-Node's @code{inherits} constructor that can be used in browsers, while
-defaulting to Node's implementation otherwise.")
- (license license:isc)))
-
(define-public node-safe-buffer
(package
(name "node-safe-buffer")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 03/19] gnu: node-once: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
dfd16ecf5c8f4be2dbd1b4869f3c7738cc83fb09.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-once): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 64 +++++++++++++++++++--------------------
1 file changed, 32 insertions(+), 32 deletions(-)

Toggle diff (84 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index e3c002a1a9..22bf16437a 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -372,6 +372,38 @@ (define-public node-minimist
Javascript.")
(license license:expat)))
+(define-public node-once
+ (package
+ (name "node-once")
+ (version "1.4.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/isaacs/once")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1z8dcbf28dqdcp4wb0c53wrs90a07nkrax2c9kk26dsk1dhrnxav"))))
+ (build-system node-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies '("tap")))))
+ ;; FIXME: Tests depend on node-tap
+ #:tests? #f))
+ (inputs
+ (list node-wrappy))
+ (home-page "https://github.com/isaacs/once")
+ (synopsis "Node.js module to call a function only once")
+ (description
+ "@code{once} is a Node.js module to call a function exactly one time.
+Subsequent calls will either return the cached previous value or throw an error
+if desired.")
+ (license license:isc)))
+
(define-public node-oop
;; No releases, last commit was February 2013.
(let ((commit "f9d87cda0958886955c14a0a716e57021ed295dc")
@@ -624,38 +656,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-once
- (package
- (name "node-once")
- (version "1.4.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/isaacs/once")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1z8dcbf28dqdcp4wb0c53wrs90a07nkrax2c9kk26dsk1dhrnxav"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies '("tap")))))
- ;; FIXME: Tests depend on node-tap
- #:tests? #f))
- (inputs
- (list node-wrappy))
- (home-page "https://github.com/isaacs/once")
- (synopsis "Node.js module to call a function only once")
- (description
- "@code{once} is a Node.js module to call a function exactly one time.
-Subsequent calls will either return the cached previous value or throw an error
-if desired.")
- (license license:isc)))
-
(define-public node-ieee754
(package
(name "node-ieee754")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 06/19] gnu: node-safe-buffer: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
39fd44131b2c53b204f5d042c542caccf2de9e32.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-safe-buffer): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 58 +++++++++++++++++++--------------------
1 file changed, 29 insertions(+), 29 deletions(-)

Toggle diff (78 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 4ec1174f57..cd4794aed6 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -580,6 +580,35 @@ (define-public node-resolve-protobuf-schema
resolve all imports.")
(license license:expat)))
+(define-public node-safe-buffer
+ (package
+ (name "node-safe-buffer")
+ (version "5.2.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/feross/safe-buffer")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0r26m0nl41h90ihnl2xf0cqs6z9z7jb87dl5j8yqb7887r9jlbpi"))))
+ (build-system node-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies '("tape" "standard")))))
+ #:tests? #f))
+ (home-page "https://github.com/feross/safe-buffer")
+ (synopsis "Buffer creation with explicit semantics")
+ (description "This package provides a drop-in replacement for Node.js
+@code{Buffer} API, which provides newer, explicit constructors (such as
+@code{Buffer.alloc(SIZE)}) in older versions.")
+ (license license:expat)))
+
(define-public node-stack-trace
;; There have been improvements since the last release.
(let ((commit "4fd379ee78965ce7ce8820b436f1b1b590d5dbcf")
@@ -712,35 +741,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-safe-buffer
- (package
- (name "node-safe-buffer")
- (version "5.2.1")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/feross/safe-buffer")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0r26m0nl41h90ihnl2xf0cqs6z9z7jb87dl5j8yqb7887r9jlbpi"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies '("tape" "standard")))))
- #:tests? #f))
- (home-page "https://github.com/feross/safe-buffer")
- (synopsis "Buffer creation with explicit semantics")
- (description "This package provides a drop-in replacement for Node.js
-@code{Buffer} API, which provides newer, explicit constructors (such as
-@code{Buffer.alloc(SIZE)}) in older versions.")
- (license license:expat)))
-
(define-public node-string-decoder
(package
(name "node-string-decoder")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 07/19] gnu: node-string-decoder: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
de89e6af8e98d55d1f463a30a789dcef48f24a51.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-string-decoder): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 66 +++++++++++++++++++--------------------
1 file changed, 33 insertions(+), 33 deletions(-)

Toggle diff (86 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index cd4794aed6..67aeb71f15 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -664,6 +664,39 @@ (define-public node-statsd-parser
protocol used in @code{node-lynx}.")
(license license:asl2.0)))
+(define-public node-string-decoder
+ (package
+ (name "node-string-decoder")
+ (version "1.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nodejs/string_decoder")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0xxvyya9fl9rlkqwmxzqzbz4rdr3jgw4vf37hff7cgscxkhg266k"))))
+ (build-system node-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies
+ '("tap" "core-util-is" "babel-polyfill")))))
+ ;; FIXME: Tests depend on node-tap
+ #:tests? #f))
+ (inputs (list node-safe-buffer node-inherits))
+ (home-page "https://github.com/nodejs/string_decoder")
+ (synopsis "Decode buffers while preserving multi-byte sequences")
+ (description "This package provides a user-land implementation of
+Node-core's @code{string_decoder}, which serves to decode buffers to
+strings so that the decoded string does not contain incomplete multibyte
+sequences.")
+ (license license:expat)))
+
(define-public node-semver
(package
(name "node-semver")
@@ -741,39 +774,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-string-decoder
- (package
- (name "node-string-decoder")
- (version "1.3.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/nodejs/string_decoder")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0xxvyya9fl9rlkqwmxzqzbz4rdr3jgw4vf37hff7cgscxkhg266k"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies
- '("tap" "core-util-is" "babel-polyfill")))))
- ;; FIXME: Tests depend on node-tap
- #:tests? #f))
- (inputs (list node-safe-buffer node-inherits))
- (home-page "https://github.com/nodejs/string_decoder")
- (synopsis "Decode buffers while preserving multi-byte sequences")
- (description "This package provides a user-land implementation of
-Node-core's @code{string_decoder}, which serves to decode buffers to
-strings so that the decoded string does not contain incomplete multibyte
-sequences.")
- (license license:expat)))
-
(define-public node-readable-stream
(package
(name "node-readable-stream")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 08/19] gnu: node-readable-stream: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
0bc25c4dc6dc0b786675791ae104978d2c49efe2.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-readable-stream): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 98 +++++++++++++++++++--------------------
1 file changed, 49 insertions(+), 49 deletions(-)

Toggle diff (118 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 67aeb71f15..28f9f1f6a7 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -552,6 +552,55 @@ (define-public node-protocol-buffers-schema
written in Javascript.")
(license license:expat)))
+(define-public node-readable-stream
+ (package
+ (name "node-readable-stream")
+ (version "3.6.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nodejs/readable-stream")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ybl4cdgsm9c5jq3xq8s01201jk8w0yakh63hlclsfbcdfqhd9ri"))))
+ (build-system node-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies `("@babel/cli"
+ "@babel/core"
+ "@babel/polyfill"
+ "@babel/preset-env"
+ "airtap"
+ "assert"
+ "bl"
+ "deep-strict-equal"
+ "events.once"
+ "glob"
+ "gunzip-maybe"
+ "hyperquest"
+ "lolex"
+ "nyc"
+ "pump"
+ "rimraf"
+ "tap"
+ "tape"
+ "tar-fs"
+ "util-promisify")))))
+ #:tests? #f))
+ (inputs (list node-util-deprecate node-string-decoder node-inherits))
+ (home-page "https://github.com/nodejs/readable-stream")
+ (synopsis "Node.js core streams for userland")
+ (description
+ "@code{readable-stream} provides an implementation of Node.js core streams
+that behaves the same across different versions.")
+ (license license:expat)))
+
(define-public node-resolve-protobuf-schema
(package
(name "node-resolve-protobuf-schema")
@@ -774,55 +823,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-readable-stream
- (package
- (name "node-readable-stream")
- (version "3.6.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/nodejs/readable-stream")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0ybl4cdgsm9c5jq3xq8s01201jk8w0yakh63hlclsfbcdfqhd9ri"))))
- (build-system node-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies `("@babel/cli"
- "@babel/core"
- "@babel/polyfill"
- "@babel/preset-env"
- "airtap"
- "assert"
- "bl"
- "deep-strict-equal"
- "events.once"
- "glob"
- "gunzip-maybe"
- "hyperquest"
- "lolex"
- "nyc"
- "pump"
- "rimraf"
- "tap"
- "tape"
- "tar-fs"
- "util-promisify")))))
- #:tests? #f))
- (inputs (list node-util-deprecate node-string-decoder node-inherits))
- (home-page "https://github.com/nodejs/readable-stream")
- (synopsis "Node.js core streams for userland")
- (description
- "@code{readable-stream} provides an implementation of Node.js core streams
-that behaves the same across different versions.")
- (license license:expat)))
-
(define-public node-irc-colors
(package
(name "node-irc-colors")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 10/19] gnu: node-nan: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
ac363e1a25789ac33142ef1ea07fb257b0d91daa.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-nan): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 78 +++++++++++++++++++--------------------
1 file changed, 39 insertions(+), 39 deletions(-)

Toggle diff (98 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index d9cfd110a4..dc7502d76a 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -487,6 +487,45 @@ (define-public node-minimist
Javascript.")
(license license:expat)))
+(define-public node-nan
+ (package
+ (name "node-nan")
+ (version "2.15.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nodejs/nan")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "18xslh9va5ld872scrp5y4251ax9s3c6qh0lnl1200lpzbsxy7yd"))))
+ (build-system node-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies
+ '("bindings"
+ "commander"
+ "glob"
+ "request"
+ "node-gyp" ;; would be needed for tests
+ "tap"
+ "xtend")))))
+ ;; tests need tap and other dependencies
+ #:tests? #f))
+ (inputs
+ (list node-readable-stream))
+ (home-page "https://github.com/nodejs/nan")
+ (synopsis "Native Abstractions for Node.js")
+ (description "Native Abstractions for Node.js (``NaN'') provides a header
+file filled with macros and utilities for making add-on development for Node.js
+easier across versions. The goal is to provide all logic necessary to develop
+native Node.js addons without having to inspect @code{NODE_MODULE_VERSION}.")
+ (license license:expat)))
+
(define-public node-once
(package
(name "node-once")
@@ -882,45 +921,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-nan
- (package
- (name "node-nan")
- (version "2.15.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/nodejs/nan")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "18xslh9va5ld872scrp5y4251ax9s3c6qh0lnl1200lpzbsxy7yd"))))
- (build-system node-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies
- '("bindings"
- "commander"
- "glob"
- "request"
- "node-gyp" ;; would be needed for tests
- "tap"
- "xtend")))))
- ;; tests need tap and other dependencies
- #:tests? #f))
- (inputs
- (list node-readable-stream))
- (home-page "https://github.com/nodejs/nan")
- (synopsis "Native Abstractions for Node.js")
- (description "Native Abstractions for Node.js (``NaN'') provides a header
-file filled with macros and utilities for making add-on development for Node.js
-easier across versions. The goal is to provide all logic necessary to develop
-native Node.js addons without having to inspect @code{NODE_MODULE_VERSION}.")
- (license license:expat)))
-
(define-public node-addon-api
(package
(name "node-addon-api")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 11/19] gnu: node-addon-api: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
abfc4223a068ccd162cb28d78bfdb427e673a02b.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-addon-api): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 164 +++++++++++++++++++-------------------
1 file changed, 82 insertions(+), 82 deletions(-)

Toggle diff (184 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index dc7502d76a..0ef691e0e6 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -107,6 +107,88 @@ (define-public node-acorn
architecture supporting plugins.")
(license license:expat)))
+(define-public node-addon-api
+ (package
+ (name "node-addon-api")
+ (version "4.2.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nodejs/node-addon-api")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1bhvfi2m9nxfz418s619914vmidcnrzbjv6l9nid476c3zlpazch"))))
+ (inputs
+ (list python node-safe-buffer))
+ (build-system node-build-system)
+ (arguments
+ `(#:modules
+ ((guix build node-build-system)
+ (srfi srfi-1)
+ (ice-9 match)
+ (guix build utils))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies
+ `("benchmark"
+ "bindings"
+ "clang-format"
+ "eslint"
+ "eslint-config-semistandard"
+ "eslint-config-standard"
+ "eslint-plugin-import"
+ "eslint-plugin-node"
+ "eslint-plugin-promise"
+ "fs-extra"
+ "path"
+ "pre-commit"))))
+ (add-after 'unpack 'skip-js-tests
+ ;; We can't run the js-based tests,
+ ;; but we can still do the C++ parts
+ (lambda args
+ (define new-test-script
+ "echo stopping after pretest on Guix")
+ (with-atomic-json-file-replacement "package.json"
+ (match-lambda
+ (('@ . pkg-meta-alist)
+ (cons
+ '@
+ (map (match-lambda
+ (("scripts" '@ . scripts-alist)
+ `("scripts" @ ,@(map (match-lambda
+ (("test" . _)
+ (cons "test"
+ new-test-script))
+ (other
+ other))
+ scripts-alist)))
+ (other
+ other))
+ pkg-meta-alist))))))))))
+ (home-page "https://github.com/nodejs/node-addon-api")
+ (synopsis "Node.js API (Node-API) header-only C++ wrappers")
+ (description "This module contains header-only C++ wrapper classes which
+simplify the use of the C based Node-API provided by Node.js when using C++.
+It provides a C++ object model and exception handling semantics with low
+overhead.
+
+Node-API is an ABI stable C interface provided by Node.js for building native
+addons. It is intended to insulate native addons from changes in the
+underlying JavaScript engine and allow modules compiled for one version to run
+on later versions of Node.js without recompilation. The @code{node-addon-api}
+module, which is not part of Node.js, preserves the benefits of the Node-API
+as it consists only of inline code that depends only on the stable API
+provided by Node-API.
+
+It is important to remember that @emph{other} Node.js interfaces such as
+@code{libuv} (included in a project via @code{#include <uv.h>}) are not
+ABI-stable across Node.js major versions.")
+ (license license:expat)))
+
(define-public node-bindings
(package
(name "node-bindings")
@@ -921,88 +1003,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-addon-api
- (package
- (name "node-addon-api")
- (version "4.2.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/nodejs/node-addon-api")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1bhvfi2m9nxfz418s619914vmidcnrzbjv6l9nid476c3zlpazch"))))
- (inputs
- (list python node-safe-buffer))
- (build-system node-build-system)
- (arguments
- `(#:modules
- ((guix build node-build-system)
- (srfi srfi-1)
- (ice-9 match)
- (guix build utils))
- #:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies
- `("benchmark"
- "bindings"
- "clang-format"
- "eslint"
- "eslint-config-semistandard"
- "eslint-config-standard"
- "eslint-plugin-import"
- "eslint-plugin-node"
- "eslint-plugin-promise"
- "fs-extra"
- "path"
- "pre-commit"))))
- (add-after 'unpack 'skip-js-tests
- ;; We can't run the js-based tests,
- ;; but we can still do the C++ parts
- (lambda args
- (define new-test-script
- "echo stopping after pretest on Guix")
- (with-atomic-json-file-replacement "package.json"
- (match-lambda
- (('@ . pkg-meta-alist)
- (cons
- '@
- (map (match-lambda
- (("scripts" '@ . scripts-alist)
- `("scripts" @ ,@(map (match-lambda
- (("test" . _)
- (cons "test"
- new-test-script))
- (other
- other))
- scripts-alist)))
- (other
- other))
- pkg-meta-alist))))))))))
- (home-page "https://github.com/nodejs/node-addon-api")
- (synopsis "Node.js API (Node-API) header-only C++ wrappers")
- (description "This module contains header-only C++ wrapper classes which
-simplify the use of the C based Node-API provided by Node.js when using C++.
-It provides a C++ object model and exception handling semantics with low
-overhead.
-
-Node-API is an ABI stable C interface provided by Node.js for building native
-addons. It is intended to insulate native addons from changes in the
-underlying JavaScript engine and allow modules compiled for one version to run
-on later versions of Node.js without recompilation. The @code{node-addon-api}
-module, which is not part of Node.js, preserves the benefits of the Node-API
-as it consists only of inline code that depends only on the stable API
-provided by Node-API.
-
-It is important to remember that @emph{other} Node.js interfaces such as
-@code{libuv} (included in a project via @code{#include <uv.h>}) are not
-ABI-stable across Node.js major versions.")
- (license license:expat)))
-
(define-public node-sqlite3
(package
(name "node-sqlite3")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 12/19] gnu: node-sqlite3: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
b360aa150043ff8490f2bb43ff44a43a37caef60.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-sqlite3): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 258 +++++++++++++++++++-------------------
1 file changed, 129 insertions(+), 129 deletions(-)

Toggle diff (278 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 0ef691e0e6..cefc826c8d 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -838,6 +838,135 @@ (define-public node-safe-buffer
@code{Buffer.alloc(SIZE)}) in older versions.")
(license license:expat)))
+(define-public node-sqlite3
+ (package
+ (name "node-sqlite3")
+ (version "5.0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mapbox/node-sqlite3")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0sbbzzli282nxyfha10zx0k5m8hdp0sf3ipl59khjb7wm449j86h"))
+ (snippet
+ (with-imported-modules '((guix build utils))
+ #~(begin
+ (use-modules (guix build utils))
+ ;; unbundle sqlite
+ (for-each delete-file-recursively
+ (find-files "deps"
+ (lambda (pth stat)
+ (gzip-file? pth)))))))))
+ (inputs
+ (list node-addon-api python sqlite))
+ (build-system node-build-system)
+ (arguments
+ `(#:modules
+ ((guix build node-build-system)
+ (srfi srfi-1)
+ (ice-9 match)
+ (guix build utils))
+ #:tests? #f ; FIXME: tests depend on node-mocha
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies
+ `(;; Normally, this is "built" using @mapbox/node-pre-gyp,
+ ;; which publishes or downloads pre-built binaries or
+ ;; falls back to building from source. Here, we patch out
+ ;; all of that and just build directly. It might be
+ ;; better to patch a version of @mapbox/node-pre-gyp that
+ ;; always builds from source, as Debian does, but there
+ ;; are a number of dependencies that need to be packaged
+ ;; or removed.
+ "@mapbox/node-pre-gyp"
+ "node-pre-gyp" ;; deprecated name still used in some places
+ "aws-sdk"
+ "@mapbox/cloudfriend"
+ ;; Confusingly, this is only a dependency because of
+ ;; @mapbox/node-pre-gyp: with that removed,
+ ;; npm will use its own copy:
+ "node-gyp"
+ ;; These we'd like, we just don't have them yet:
+ "eslint"
+ "mocha"))))
+ (add-before 'configure 'npm-config-sqlite
+ ;; We need this step even if we do replace @mapbox/node-pre-gyp
+ ;; because the package expects to build its bundled sqlite
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "npm_config_sqlite" (assoc-ref inputs "sqlite"))))
+ (add-after 'install 'patch-binding-path
+ ;; We replace a file that dynamic searches for the addon using
+ ;; node-pre-gyp (which we don't have) with a version that
+ ;; simply uses the path to the addon we built directly.
+ ;; The exact path is supposed to depend on things like the
+ ;; architecture and napi_build_version, so, to avoid having
+ ;; hard-code the details accurately, we do this after the addon
+ ;; has been built so we can just find where it ended up.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion
+ (search-input-directory outputs
+ "lib/node_modules/sqlite3/lib")
+ (match (find-files "binding" "\\.node$")
+ ((rel-path)
+ (with-atomic-file-replacement "sqlite3-binding.js"
+ (lambda (in out)
+ (format out "var binding = require('./~a');\n" rel-path)
+ (display "module.exports = exports = binding;\n"
+ out))))))))
+ (add-after 'patch-dependencies 'avoid-node-pre-gyp
+ (lambda args
+ ;; We need to patch .npmignore before the 'repack phase
+ ;; so that the built addon is installed with in the package.
+ ;; (Upstream assumes node-pre-gyp will download a pre-built
+ ;; version when this package is installed.)
+ (substitute* ".npmignore"
+ (("lib/binding")
+ "#lib/binding # <- patched for Guix"))
+ (with-atomic-json-file-replacement "package.json"
+ (match-lambda
+ (('@ . pkg-meta-alist)
+ (match (assoc-ref pkg-meta-alist "binary")
+ (('@ . binary-alist)
+ ;; When it builds from source, node-pre-gyp supplies
+ ;; module_name and module_path based on the entries under
+ ;; "binary" from "package.json", so this package's
+ ;; "binding.gyp" doesn't define them. Thus, we also need
+ ;; to supply them. The GYP_DEFINES environment variable
+ ;; turns out to be the easiest way to make sure they are
+ ;; propagated from npm to node-gyp to gyp.
+ (setenv "GYP_DEFINES"
+ (string-append
+ "module_name="
+ (assoc-ref binary-alist "module_name")
+ " "
+ "module_path="
+ (assoc-ref binary-alist "module_path")))))
+ ;; We need to remove the install script from "package.json",
+ ;; as it would try to use node-pre-gyp and would block the
+ ;; automatic building performed by `npm install`.
+ (cons '@ (map (match-lambda
+ (("scripts" @ . scripts-alist)
+ `("scripts" @ ,@(filter (match-lambda
+ (("install" . _)
+ #f)
+ (_
+ #t))
+ scripts-alist)))
+ (other
+ other))
+ pkg-meta-alist))))))))))
+ (home-page "https://github.com/mapbox/node-sqlite3")
+ (synopsis "Node.js bindings for SQLite3")
+ (description
+ "@code{node-sqlite3} provides a set of a Node.js bindings for interacting
+with SQLite3 databases.")
+ (license license:bsd-3)))
+
(define-public node-stack-trace
;; There have been improvements since the last release.
(let ((commit "4fd379ee78965ce7ce8820b436f1b1b590d5dbcf")
@@ -1003,135 +1132,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-sqlite3
- (package
- (name "node-sqlite3")
- (version "5.0.2")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/mapbox/node-sqlite3")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "0sbbzzli282nxyfha10zx0k5m8hdp0sf3ipl59khjb7wm449j86h"))
- (snippet
- (with-imported-modules '((guix build utils))
- #~(begin
- (use-modules (guix build utils))
- ;; unbundle sqlite
- (for-each delete-file-recursively
- (find-files "deps"
- (lambda (pth stat)
- (gzip-file? pth)))))))))
- (inputs
- (list node-addon-api python sqlite))
- (build-system node-build-system)
- (arguments
- `(#:modules
- ((guix build node-build-system)
- (srfi srfi-1)
- (ice-9 match)
- (guix build utils))
- #:tests? #f ; FIXME: tests depend on node-mocha
- #:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies
- `(;; Normally, this is "built" using @mapbox/node-pre-gyp,
- ;; which publishes or downloads pre-built binaries or
- ;; falls back to building from source. Here, we patch out
- ;; all of that and just build directly. It might be
- ;; better to patch a version of @mapbox/node-pre-gyp that
- ;; always builds from source, as Debian does, but there
- ;; are a number of dependencies that need to be packaged
- ;; or removed.
- "@mapbox/node-pre-gyp"
- "node-pre-gyp" ;; deprecated name still used in some places
- "aws-sdk"
- "@mapbox/cloudfriend"
- ;; Confusingly, this is only a dependency because of
- ;; @mapbox/node-pre-gyp: with that removed,
- ;; npm will use its own copy:
- "node-gyp"
- ;; These we'd like, we just don't have them yet:
- "eslint"
- "mocha"))))
- (add-before 'configure 'npm-config-sqlite
- ;; We need this step even if we do replace @mapbox/node-pre-gyp
- ;; because the package expects to build its bundled sqlite
- (lambda* (#:key inputs #:allow-other-keys)
- (setenv "npm_config_sqlite" (assoc-ref inputs "sqlite"))))
- (add-after 'install 'patch-binding-path
- ;; We replace a file that dynamic searches for the addon using
- ;; node-pre-gyp (which we don't have) with a version that
- ;; simply uses the path to the addon we built directly.
- ;; The exact path is supposed to depend on things like the
- ;; architecture and napi_build_version, so, to avoid having
- ;; hard-code the details accurately, we do this after the addon
- ;; has been built so we can just find where it ended up.
- (lambda* (#:key outputs #:allow-other-keys)
- (with-directory-excursion
- (search-input-directory outputs
- "lib/node_modules/sqlite3/lib")
- (match (find-files "binding" "\\.node$")
- ((rel-path)
- (with-atomic-file-replacement "sqlite3-binding.js"
- (lambda (in out)
- (format out "var binding = require('./~a');\n" rel-path)
- (display "module.exports = exports = binding;\n"
- out))))))))
- (add-after 'patch-dependencies 'avoid-node-pre-gyp
- (lambda args
- ;; We need to patch .npmignore before the 'repack phase
- ;; so that the built addon is installed with in the package.
- ;; (Upstream assumes node-pre-gyp will download a pre-built
- ;; version when this package is installed.)
- (substitute* ".npmignore"
- (("lib/binding")
- "#lib/binding # <- patched for Guix"))
- (with-atomic-json-file-replacement "package.json"
- (match-lambda
- (('@ . pkg-meta-alist)
- (match (assoc-ref pkg-meta-alist "binary")
- (('@ . binary-alist)
- ;; When it builds from source, node-pre-gyp supplies
- ;; module_name and module_path based on the entries under
- ;; "binary" from "package.json", so this package's
- ;; "binding.gyp" doesn't define them. Thus, we also need
- ;; to supply them. The GYP_DEFINES environment variable
- ;; turns out to be the easiest way to make sure they are
- ;; propagated from npm to node-gyp to gyp.
- (setenv "GYP_DEFINES"
- (string-append
- "module_name="
- (assoc-ref binary-alist "module_name")
- " "
- "module_path="
- (assoc-ref binary-alist "module_path")))))
- ;; We need to remove the install script from "package.json",
- ;; as it would try to use node-pre-gyp and would block the
- ;; automatic building performed by `npm install`.
- (cons '@ (map (match-lambda
- (("scripts" @ . scripts-alist)
- `("scripts" @ ,@(filter (match-lambda
- (("install" . _)
- #f)
- (_
- #t))
- scripts-alist)))
- (other
- other))
- pkg-meta-alist))))))))))
- (home-page "https://github.com/mapbox/node-sqlite3")
- (synopsis "Node.js bindings for SQLite3")
- (description
- "@code{node-sqlite3} provides a set of a Node.js bindings for interacting
-with SQLite3 databases.")
- (license license:bsd-3)))
-
(define-public node-file-uri-to-path
(package
(name "node-file-uri-to-path")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 13/19] gnu: node-file-uri-to-path: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
a00f194f5e5d72d07538262c77995eee962b42e7.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-file-uri-to-path): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 108 +++++++++++++++++++-------------------
1 file changed, 54 insertions(+), 54 deletions(-)

Toggle diff (128 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index cefc826c8d..0924788bee 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -359,6 +359,60 @@ (define-public node-far
codes.")
(license license:expat)))
+(define-public node-file-uri-to-path
+ (package
+ (name "node-file-uri-to-path")
+ (version "2.0.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/TooTallNate/file-uri-to-path")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "08l779az44czm12xdhgcrnzpqw34s59hbrlfphs7g9y2k26drqav"))))
+ (native-inputs
+ (list esbuild))
+ (build-system node-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies `("@types/mocha"
+ "@types/node"
+ "@typescript-eslint/eslint-plugin"
+ "@typescript-eslint/parser"
+ "cpy-cli"
+ "eslint"
+ "eslint-config-airbnb"
+ "eslint-config-prettier"
+ "eslint-import-resolver-typescript"
+ "eslint-plugin-import"
+ "eslint-plugin-jsx-a11y"
+ "eslint-plugin-react"
+ "mocha"
+ "rimraf"
+ "typescript"))))
+ (replace 'build
+ (lambda* (#:key inputs native-inputs #:allow-other-keys)
+ (copy-recursively "src" "dist")
+ (invoke (search-input-file (or native-inputs inputs)
+ "/bin/esbuild")
+ "dist/index.ts"
+ "--outfile=dist/src/index.js"
+ "--format=cjs"
+ "--sourcemap"
+ "--platform=node"))))
+ #:tests? #f))
+ (home-page "https://github.com/TooTallNate/file-uri-to-path")
+ (synopsis "Convert a @code{file:} URI to a file path")
+ (description "This package provides a function to convert a @code{file:}
+URI to a file path. It accepts a @code{file:} URI and returns a file path
+suitable for use with the @code{fs} module functions.")
+ (license license:expat)))
+
(define-public node-global-gradle-clean
(package
(name "node-global-gradle-clean")
@@ -1132,60 +1186,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-file-uri-to-path
- (package
- (name "node-file-uri-to-path")
- (version "2.0.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/TooTallNate/file-uri-to-path")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "08l779az44czm12xdhgcrnzpqw34s59hbrlfphs7g9y2k26drqav"))))
- (native-inputs
- (list esbuild))
- (build-system node-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies `("@types/mocha"
- "@types/node"
- "@typescript-eslint/eslint-plugin"
- "@typescript-eslint/parser"
- "cpy-cli"
- "eslint"
- "eslint-config-airbnb"
- "eslint-config-prettier"
- "eslint-import-resolver-typescript"
- "eslint-plugin-import"
- "eslint-plugin-jsx-a11y"
- "eslint-plugin-react"
- "mocha"
- "rimraf"
- "typescript"))))
- (replace 'build
- (lambda* (#:key inputs native-inputs #:allow-other-keys)
- (copy-recursively "src" "dist")
- (invoke (search-input-file (or native-inputs inputs)
- "/bin/esbuild")
- "dist/index.ts"
- "--outfile=dist/src/index.js"
- "--format=cjs"
- "--sourcemap"
- "--platform=node"))))
- #:tests? #f))
- (home-page "https://github.com/TooTallNate/file-uri-to-path")
- (synopsis "Convert a @code{file:} URI to a file path")
- (description "This package provides a function to convert a @code{file:}
-URI to a file path. It accepts a @code{file:} URI and returns a file path
-suitable for use with the @code{fs} module functions.")
- (license license:expat)))
-
(define-public node-segfault-handler
(package
(name "node-segfault-handler")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 15/19] gnu: node-ms: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
c8f608f8cdf764e6e36e72d663e62aa178f5d3c7.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-ms): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 66 +++++++++++++++++++--------------------
1 file changed, 33 insertions(+), 33 deletions(-)

Toggle diff (86 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index f4dc03ea6b..a82ecd581a 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -623,6 +623,39 @@ (define-public node-minimist
Javascript.")
(license license:expat)))
+(define-public node-ms
+ (package
+ (name "node-ms")
+ (version "2.1.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/vercel/ms")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1l74kmmwffmzdz38lli0v5mdb9p9jmsjxpb48ncknqw2n74cgf08"))))
+ (build-system node-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies `("eslint"
+ "expect.js"
+ "husky"
+ "lint-staged"
+ "mocha"
+ "prettier")))))
+ #:tests? #f))
+ (home-page "https://github.com/vercel/ms")
+ (synopsis "Convert time to milliseconds")
+ (description "Use this package to easily convert various time formats to
+milliseconds. A number supplied as integer or string is returned as-is, while
+a string consisting of a number and a time unit is converted to milliseconds.")
+ (license license:expat)))
+
(define-public node-nan
(package
(name "node-nan")
@@ -1215,39 +1248,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-ms
- (package
- (name "node-ms")
- (version "2.1.3")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/vercel/ms")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1l74kmmwffmzdz38lli0v5mdb9p9jmsjxpb48ncknqw2n74cgf08"))))
- (build-system node-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies `("eslint"
- "expect.js"
- "husky"
- "lint-staged"
- "mocha"
- "prettier")))))
- #:tests? #f))
- (home-page "https://github.com/vercel/ms")
- (synopsis "Convert time to milliseconds")
- (description "Use this package to easily convert various time formats to
-milliseconds. A number supplied as integer or string is returned as-is, while
-a string consisting of a number and a time unit is converted to milliseconds.")
- (license license:expat)))
-
(define-public node-debug
(package
(name "node-debug")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 09/19] gnu: node-irc and node-irc-colors: Move in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
cdcf72b8a6e2d3d460b235b586e792311cecd3ee.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-irc and node-irc-colors): Move packages in alphabetical order.
---
gnu/packages/node-xyz.scm | 118 +++++++++++++++++++-------------------
1 file changed, 59 insertions(+), 59 deletions(-)

Toggle diff (138 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 28f9f1f6a7..d9cfd110a4 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -357,6 +357,65 @@ (define-public node-inherits
defaulting to Node's implementation otherwise.")
(license license:isc)))
+(define-public node-irc-colors
+ (package
+ (name "node-irc-colors")
+ (version "1.5.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/fent/irc-colors.js")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0q3y34rbnlc55jcakmdxkicwazyvyph9r6gaf6hi8k7wj2nfwfli"))))
+ (build-system node-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies `("istanbul" "vows")))))
+ #:tests? #f))
+ (home-page "https://github.com/fent/irc-colors.js")
+ (synopsis "Node.js module providing color and formatting for IRC")
+ (description "@code{node-irc-colors} is a Node.js module that
+allows you to easily use colored output and formatting in IRC bots.
+It contains functions for colours as well as more complex formatting
+such as rainbows.")
+ (license license:expat)))
+
+(define-public node-irc
+ (package
+ (name "node-irc")
+ (version "0.5.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/martynsmith/node-irc")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1ln4qfx20jbwg4cp8lp0vf27m5281z2sz16d15xd6150n26cbi4x"))))
+ (build-system node-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies
+ `("ansi-color" "faucet" "jscs" "tape")))))
+ #:tests? #f))
+ (inputs
+ (list node-irc-colors))
+ (home-page "https://github.com/martynsmith/node-irc")
+ (synopsis "IRC client library for Node.js")
+ (description "@code{node-irc} is an IRC client library for Node.js.
+It has functions for joining, parting, talking, and many other IRC commands.")
+ (license license:gpl3+)))
+
(define-public node-long-stack-traces
(package
(name "node-long-stack-traces")
@@ -823,65 +882,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-irc-colors
- (package
- (name "node-irc-colors")
- (version "1.5.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/fent/irc-colors.js")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0q3y34rbnlc55jcakmdxkicwazyvyph9r6gaf6hi8k7wj2nfwfli"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies `("istanbul" "vows")))))
- #:tests? #f))
- (home-page "https://github.com/fent/irc-colors.js")
- (synopsis "Node.js module providing color and formatting for IRC")
- (description "@code{node-irc-colors} is a Node.js module that
-allows you to easily use colored output and formatting in IRC bots.
-It contains functions for colours as well as more complex formatting
-such as rainbows.")
- (license license:expat)))
-
-(define-public node-irc
- (package
- (name "node-irc")
- (version "0.5.2")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/martynsmith/node-irc")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1ln4qfx20jbwg4cp8lp0vf27m5281z2sz16d15xd6150n26cbi4x"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies
- `("ansi-color" "faucet" "jscs" "tape")))))
- #:tests? #f))
- (inputs
- (list node-irc-colors))
- (home-page "https://github.com/martynsmith/node-irc")
- (synopsis "IRC client library for Node.js")
- (description "@code{node-irc} is an IRC client library for Node.js.
-It has functions for joining, parting, talking, and many other IRC commands.")
- (license license:gpl3+)))
-
(define-public node-nan
(package
(name "node-nan")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 14/19] gnu: node-segfault-handler: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
6adad3f337d467324705143f41bcab58acbdc99c.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-segfault-handler): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 58 +++++++++++++++++++--------------------
1 file changed, 29 insertions(+), 29 deletions(-)

Toggle diff (78 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 0924788bee..f4dc03ea6b 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -892,6 +892,35 @@ (define-public node-safe-buffer
@code{Buffer.alloc(SIZE)}) in older versions.")
(license license:expat)))
+(define-public node-segfault-handler
+ (package
+ (name "node-segfault-handler")
+ (version "1.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ddopson/node-segfault-handler")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "07nbw35wvrr18kmh8f388v4k5mpjgyy0260bx0xzjdv795i3xvfv"))))
+ (native-inputs
+ (list python))
+ (inputs
+ (list node-bindings node-nan))
+ (build-system node-build-system)
+ (arguments
+ ;; there are no tests
+ `(#:tests? #f))
+ (home-page "https://github.com/ddopson/node-segfault-handler")
+ (synopsis "Catches @code{SIGSEGV} and prints diagnostic information")
+ (description "This package is a tool for debugging Node.js C/C++ native
+code modules and getting stack traces when things go wrong. If a
+@code{SIGSEGV} signal is raised, the module will print a native stack trace to
+both @file{stderr} and to a timestamped file.")
+ (license license:bsd-3)))
+
(define-public node-sqlite3
(package
(name "node-sqlite3")
@@ -1186,35 +1215,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-segfault-handler
- (package
- (name "node-segfault-handler")
- (version "1.3.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/ddopson/node-segfault-handler")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "07nbw35wvrr18kmh8f388v4k5mpjgyy0260bx0xzjdv795i3xvfv"))))
- (native-inputs
- (list python))
- (inputs
- (list node-bindings node-nan))
- (build-system node-build-system)
- (arguments
- ;; there are no tests
- `(#:tests? #f))
- (home-page "https://github.com/ddopson/node-segfault-handler")
- (synopsis "Catches @code{SIGSEGV} and prints diagnostic information")
- (description "This package is a tool for debugging Node.js C/C++ native
-code modules and getting stack traces when things go wrong. If a
-@code{SIGSEGV} signal is raised, the module will print a native stack trace to
-both @file{stderr} and to a timestamped file.")
- (license license:bsd-3)))
-
(define-public node-ms
(package
(name "node-ms")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 16/19] gnu: node-debug: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
17c486b4fac2c340f43532dc602424022ddd5669.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-debug): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 84 +++++++++++++++++++--------------------
1 file changed, 42 insertions(+), 42 deletions(-)

Toggle diff (104 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index a82ecd581a..e3542adf77 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -305,6 +305,48 @@ (define-public node-crx3
64.0.3242 and above and all other browsers supporting the file format and API.")
(license license:bsd-3)))
+(define-public node-debug
+ (package
+ (name "node-debug")
+ (version "4.3.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/debug-js/debug")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ji0dmdl2xkgxqxvd6xjy7k3mmknmhvqjgc40vyly9ka1mpf20vb"))))
+ (inputs
+ (list node-ms))
+ (build-system node-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies `("brfs"
+ "browserify"
+ "coveralls"
+ "istanbul"
+ "karma"
+ "karma-browserify"
+ "karma-chrome-launcher"
+ "karma-mocha"
+ "mocha"
+ "mocha-lcov-reporter"
+ "xo"
+ "supports-color")))))
+ #:tests? #f))
+ (home-page "https://github.com/debug-js/debug")
+ (synopsis "Debugging utility for Node.js")
+ (description "The @code{debug} module exposes a function, which if called
+with a module name as argument provides a function that writes debug output to
+@code{console.error} under that module name. This output can be controlled in
+a more fine-grained manner by binding the @env{DEBUG} variable.")
+ (license license:expat)))
+
(define-public node-env-variable
(package
(name "node-env-variable")
@@ -1248,48 +1290,6 @@ (define-public node-wrappy
(description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
(license license:isc)))
-(define-public node-debug
- (package
- (name "node-debug")
- (version "4.3.3")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/debug-js/debug")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "0ji0dmdl2xkgxqxvd6xjy7k3mmknmhvqjgc40vyly9ka1mpf20vb"))))
- (inputs
- (list node-ms))
- (build-system node-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies `("brfs"
- "browserify"
- "coveralls"
- "istanbul"
- "karma"
- "karma-browserify"
- "karma-chrome-launcher"
- "karma-mocha"
- "mocha"
- "mocha-lcov-reporter"
- "xo"
- "supports-color")))))
- #:tests? #f))
- (home-page "https://github.com/debug-js/debug")
- (synopsis "Debugging utility for Node.js")
- (description "The @code{debug} module exposes a function, which if called
-with a module name as argument provides a function that writes debug output to
-@code{console.error} under that module name. This output can be controlled in
-a more fine-grained manner by binding the @env{DEBUG} variable.")
- (license license:expat)))
-
(define-public node-serialport-binding-abstract
(package
(name "node-serialport-binding-abstract")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 17/19] gnu: node-serialport packages: Move packages in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
532437f62e548076aae3cb2e4795f62a3ddb55f0.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-serialport packages): Move packages in alphabetical order.
---
gnu/packages/node-xyz.scm | 588 +++++++++++++++++++-------------------
1 file changed, 294 insertions(+), 294 deletions(-)

Toggle diff (431 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index e3542adf77..21956ef5da 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -996,300 +996,6 @@ (define-public node-segfault-handler
both @file{stderr} and to a timestamped file.")
(license license:bsd-3)))
-(define-public node-sqlite3
- (package
- (name "node-sqlite3")
- (version "5.0.2")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/mapbox/node-sqlite3")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "0sbbzzli282nxyfha10zx0k5m8hdp0sf3ipl59khjb7wm449j86h"))
- (snippet
- (with-imported-modules '((guix build utils))
- #~(begin
- (use-modules (guix build utils))
- ;; unbundle sqlite
- (for-each delete-file-recursively
- (find-files "deps"
- (lambda (pth stat)
- (gzip-file? pth)))))))))
- (inputs
- (list node-addon-api python sqlite))
- (build-system node-build-system)
- (arguments
- `(#:modules
- ((guix build node-build-system)
- (srfi srfi-1)
- (ice-9 match)
- (guix build utils))
- #:tests? #f ; FIXME: tests depend on node-mocha
- #:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies
- `(;; Normally, this is "built" using @mapbox/node-pre-gyp,
- ;; which publishes or downloads pre-built binaries or
- ;; falls back to building from source. Here, we patch out
- ;; all of that and just build directly. It might be
- ;; better to patch a version of @mapbox/node-pre-gyp that
- ;; always builds from source, as Debian does, but there
- ;; are a number of dependencies that need to be packaged
- ;; or removed.
- "@mapbox/node-pre-gyp"
- "node-pre-gyp" ;; deprecated name still used in some places
- "aws-sdk"
- "@mapbox/cloudfriend"
- ;; Confusingly, this is only a dependency because of
- ;; @mapbox/node-pre-gyp: with that removed,
- ;; npm will use its own copy:
- "node-gyp"
- ;; These we'd like, we just don't have them yet:
- "eslint"
- "mocha"))))
- (add-before 'configure 'npm-config-sqlite
- ;; We need this step even if we do replace @mapbox/node-pre-gyp
- ;; because the package expects to build its bundled sqlite
- (lambda* (#:key inputs #:allow-other-keys)
- (setenv "npm_config_sqlite" (assoc-ref inputs "sqlite"))))
- (add-after 'install 'patch-binding-path
- ;; We replace a file that dynamic searches for the addon using
- ;; node-pre-gyp (which we don't have) with a version that
- ;; simply uses the path to the addon we built directly.
- ;; The exact path is supposed to depend on things like the
- ;; architecture and napi_build_version, so, to avoid having
- ;; hard-code the details accurately, we do this after the addon
- ;; has been built so we can just find where it ended up.
- (lambda* (#:key outputs #:allow-other-keys)
- (with-directory-excursion
- (search-input-directory outputs
- "lib/node_modules/sqlite3/lib")
- (match (find-files "binding" "\\.node$")
- ((rel-path)
- (with-atomic-file-replacement "sqlite3-binding.js"
- (lambda (in out)
- (format out "var binding = require('./~a');\n" rel-path)
- (display "module.exports = exports = binding;\n"
- out))))))))
- (add-after 'patch-dependencies 'avoid-node-pre-gyp
- (lambda args
- ;; We need to patch .npmignore before the 'repack phase
- ;; so that the built addon is installed with in the package.
- ;; (Upstream assumes node-pre-gyp will download a pre-built
- ;; version when this package is installed.)
- (substitute* ".npmignore"
- (("lib/binding")
- "#lib/binding # <- patched for Guix"))
- (with-atomic-json-file-replacement "package.json"
- (match-lambda
- (('@ . pkg-meta-alist)
- (match (assoc-ref pkg-meta-alist "binary")
- (('@ . binary-alist)
- ;; When it builds from source, node-pre-gyp supplies
- ;; module_name and module_path based on the entries under
- ;; "binary" from "package.json", so this package's
- ;; "binding.gyp" doesn't define them. Thus, we also need
- ;; to supply them. The GYP_DEFINES environment variable
- ;; turns out to be the easiest way to make sure they are
- ;; propagated from npm to node-gyp to gyp.
- (setenv "GYP_DEFINES"
- (string-append
- "module_name="
- (assoc-ref binary-alist "module_name")
- " "
- "module_path="
- (assoc-ref binary-alist "module_path")))))
- ;; We need to remove the install script from "package.json",
- ;; as it would try to use node-pre-gyp and would block the
- ;; automatic building performed by `npm install`.
- (cons '@ (map (match-lambda
- (("scripts" @ . scripts-alist)
- `("scripts" @ ,@(filter (match-lambda
- (("install" . _)
- #f)
- (_
- #t))
- scripts-alist)))
- (other
- other))
- pkg-meta-alist))))))))))
- (home-page "https://github.com/mapbox/node-sqlite3")
- (synopsis "Node.js bindings for SQLite3")
- (description
- "@code{node-sqlite3} provides a set of a Node.js bindings for interacting
-with SQLite3 databases.")
- (license license:bsd-3)))
-
-(define-public node-stack-trace
- ;; There have been improvements since the last release.
- (let ((commit "4fd379ee78965ce7ce8820b436f1b1b590d5dbcf")
- (revision "1"))
- (package
- (name "node-stack-trace")
- (version (git-version "0.0.10" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/felixge/node-stack-trace")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1pk19wcpy8i95z5jr77fybd57qj7xmzmniap4dy47vjlmpkqia4i"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-before 'check 'skip-intentionally-failing-test
- (lambda _
- (substitute* "test/run.js"
- (("far.include") "far.exclude(/test-parse.js/)\nfar.include"))
- #t)))))
- (native-inputs
- (list node-far node-long-stack-traces))
- (home-page "https://github.com/felixge/node-stack-trace")
- (synopsis "Get v8 stack traces as an array of CallSite objects")
- (description "Get v8 stack traces as an array of CallSite objects.")
- (license license:expat))))
-
-(define-public node-statsd-parser
- (package
- (name "node-statsd-parser")
- (version "0.0.4")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/dscape/statsd-parser")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "049rnczsd6pv6bk282q4w72bhqc5cs562djgr7yncy7lk0wzq5j3"))))
- (build-system node-build-system)
- (arguments '(#:tests? #f)) ; No tests.
- (home-page "https://github.com/dscape/statsd-parser")
- (synopsis "Streaming parser for the statsd protocol")
- (description "This package provides a streaming parser for the statsd
-protocol used in @code{node-lynx}.")
- (license license:asl2.0)))
-
-(define-public node-string-decoder
- (package
- (name "node-string-decoder")
- (version "1.3.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/nodejs/string_decoder")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0xxvyya9fl9rlkqwmxzqzbz4rdr3jgw4vf37hff7cgscxkhg266k"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies
- '("tap" "core-util-is" "babel-polyfill")))))
- ;; FIXME: Tests depend on node-tap
- #:tests? #f))
- (inputs (list node-safe-buffer node-inherits))
- (home-page "https://github.com/nodejs/string_decoder")
- (synopsis "Decode buffers while preserving multi-byte sequences")
- (description "This package provides a user-land implementation of
-Node-core's @code{string_decoder}, which serves to decode buffers to
-strings so that the decoded string does not contain incomplete multibyte
-sequences.")
- (license license:expat)))
-
-(define-public node-semver
- (package
- (name "node-semver")
- (version "7.2.1")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/npm/node-semver")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "06biknqb05r9xsmcflm3ygh50pjvdk84x6r79w43kmck4fn3qn5p"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies '("tap")))))
- ;; FIXME: Tests depend on node-tap
- #:tests? #f))
- (home-page "https://github.com/npm/node-semver")
- (synopsis "Parses semantic versions strings")
- (description
- "@code{node-semver} is a JavaScript implementation of the
-@uref{https://semver.org/, SemVer.org} specification.")
- (license license:isc)))
-
-(define-public node-util-deprecate
- (package
- (name "node-util-deprecate")
- (version "1.0.2")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/TooTallNate/util-deprecate")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1rk94nl3qc7znsk8400bnga30v0m7j2mmvz9ldwjinxv1d3n11xc"))))
- (build-system node-build-system)
- (arguments '(#:tests? #f)) ; No test suite.
- (home-page "https://github.com/TooTallNate/util-deprecate")
- (synopsis "Node.js `util.deprecate()` function with browser support")
- (description "This package provides the Node.js @code{util.deprecate()}
-function with browser support.")
- (license license:expat)))
-
-(define-public node-wrappy
- (package
- (name "node-wrappy")
- (version "1.0.2")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/npm/wrappy")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1ymlc61cja6v5438vwb04gq8wg2b784lj39zf0g4i36fvgcw9783"))))
- (build-system node-build-system)
- (arguments
- '(#:tests? #f ; FIXME: Tests depend on node-tap
- #:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies '("tap")))))))
- (home-page "https://github.com/npm/wrappy")
- (synopsis "Callback wrapping utility")
- (description "@code{wrappy} is a utility for Node.js to wrap callbacks.")
- (license license:isc)))
-
(define-public node-serialport-binding-abstract
(package
(name "node-serialport-binding-abstract")
@@ -1598,6 +1304,300 @@ (define-public node-serialport
projects. It combines a high-level Node.js stream interface with a useful
default set of parsers and bindings.")))
+(define-public node-sqlite3
+ (package
+ (name "node-sqlite3")
+ (version "5.0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/mapbox/node-sqlite3")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0sbbzzli282nxyfha10zx0k5m8hdp0sf3ipl59khjb7wm449j86h"))
+ (snippet
+ (with-imported-modules '((guix build utils))
+ #~(begin
+ (use-modules (guix build utils))
+ ;; unbundle sqlite
+ (for-each delete-file-recursively
+ (find-files "deps"
+ (lambda (pth stat)
+ (gzip-file? pth)))))))))
+ (inputs
+ (list node-addon-api python sqlite))
+ (build-system node-build-system)
+ (arguments
+ `(#:modules
+ ((guix build node-build-system)
+ (srfi srfi-1)
+ (ice-9 match)
+ (guix build utils))
+ #:tests? #f ; FIXME: tests depend on node-mocha
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies
+ `(;; Normally, this is "built" using @mapbox/node-pre-gyp,
+ ;; which publishes or downloads pre-built binaries or
+ ;; falls back to building from source. Here, we patch out
+ ;; all of that and just build directly. It might be
+ ;; better to patch a version of @mapbox/node-pre-gyp that
+ ;; always builds from source, as Debian does, but there
+ ;; are a number of dependencies that need to be packaged
+ ;; or removed.
+ "@mapbox/node-pre-gyp"
+ "node-pre-gyp" ;; deprecated name still used in some places
+ "aws-sdk"
+ "@mapbox/cloudfriend"
+ ;; Confusingly, this is only a dependency because of
+ ;; @mapbox/node-pre-gyp: with that removed,
+ ;; npm will use its own copy:
+ "node-gyp"
+ ;; These we'd like, we just don't have them yet:
+ "eslint"
+ "mocha"))))
+ (add-before 'configure 'npm-config-sqlite
+ ;; We need this step even if we do replace @mapbox/node-pre-gyp
+ ;; because the package expects to build its bundled sqlite
+ (lambda* (#:key inputs #:allow-other-keys)
+ (setenv "npm_config_sqlite" (assoc-ref inputs "sqlite"))))
+ (add-after 'install 'patch-binding-path
+ ;; We replace a file that dynamic searches for the addon using
+ ;; node-pre-gyp (which we don't have) with a version that
+ ;; simply uses the path to the addon we built directly.
+ ;; The exact path is supposed to depend on things like the
+ ;; architecture and napi_build_version, so, to avoid having
+ ;; hard-code the details accurately, we do this after the addon
+ ;; has been built so we can just find where it ended up.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion
+ (search-input-directory outputs
+ "lib/node_modules/sqlite3/lib")
+ (match (find-files "binding" "\\.node$")
+ ((rel-path)
+ (with-atomic-file-replacement "sqlite3-binding.js"
+ (lambda (in out)
+ (format out "var binding = require('./~a');\n" rel-path)
+ (display "module.exports = exports = binding;\n"
+ out))))))))
+ (add-after 'patch-dependencies 'avoid-node-pre-gyp
+ (lambda args
+ ;; We need to patch .npmignore before the 'repack phase
+ ;; so that the built addon is installed with in the package.
+ ;; (Upstream assumes node-pre-gyp will download a pre-built
+ ;; version when this package is installed.)
+ (substitute* ".npmignore"
+ (("lib/binding")
+ "#lib/binding # <- patched for Guix"))
+ (with-atomic-json-file-replacement "package.json"
+ (match-lambda
+ (('@ . pkg-meta-alist)
+ (match (assoc-ref pkg-meta-alist "binary")
+ (('@ . binary-alist)
+ ;; When it builds from source, node-pre-gyp supplies
+ ;; module_name and module_path based on the entries under
+ ;; "binary" from "package.json", so this package's
+ ;; "binding.gyp" doesn't define them. Thus, we also need
+ ;; to supply them. The GYP_DEFINES environment variable
+ ;; turns out to be the easiest way to make sure they are
+ ;; propagated from npm to node-gyp to gyp.
+ (setenv "GYP_DEFINES"
+ (string-append
+ "module_name="
+ (assoc-ref binary-alist "module_name")
+ " "
+ "module_path="
+ (assoc-ref binary-alist "module_path")))))
+ ;; We need to remove the install script from "package.json",
+ ;; as it would try to use node-pre-gyp and would block the
+ ;; automatic building performed by `npm install`.
+ (cons '@ (map (match-lambda
+ (("scripts" @ . scripts-alist)
+ `("scripts" @ ,@(filter (match-lambda
+ (("install" . _)
+ #f)
+ (_
+ #t))
+ scripts-alist)))
+ (other
+ other))
+
This message was truncated. Download the full message here.
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 18/19] gnu: node-semver: Move package in alphabetical order.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
f019edb44f23fb9bb4d199b6ebe561f95a846b55.1695559845.git.ngraves@ngraves.fr
* gnu/packages/node-xyz.scm (node-semver): Move package in alphabetical order.
---
gnu/packages/node-xyz.scm | 58 +++++++++++++++++++--------------------
1 file changed, 29 insertions(+), 29 deletions(-)

Toggle diff (78 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 21956ef5da..d81d6b8eff 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -996,6 +996,35 @@ (define-public node-segfault-handler
both @file{stderr} and to a timestamped file.")
(license license:bsd-3)))
+(define-public node-semver
+ (package
+ (name "node-semver")
+ (version "7.2.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/npm/node-semver")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "06biknqb05r9xsmcflm3ygh50pjvdk84x6r79w43kmck4fn3qn5p"))))
+ (build-system node-build-system)
+ (arguments
+ '(#:phases
+ (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda args
+ (delete-dependencies '("tap")))))
+ ;; FIXME: Tests depend on node-tap
+ #:tests? #f))
+ (home-page "https://github.com/npm/node-semver")
+ (synopsis "Parses semantic versions strings")
+ (description
+ "@code{node-semver} is a JavaScript implementation of the
+@uref{https://semver.org/, SemVer.org} specification.")
+ (license license:isc)))
+
(define-public node-serialport-binding-abstract
(package
(name "node-serialport-binding-abstract")
@@ -1521,35 +1550,6 @@ (define-public node-string-decoder
sequences.")
(license license:expat)))
-(define-public node-semver
- (package
- (name "node-semver")
- (version "7.2.1")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/npm/node-semver")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "06biknqb05r9xsmcflm3ygh50pjvdk84x6r79w43kmck4fn3qn5p"))))
- (build-system node-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'patch-dependencies 'delete-dependencies
- (lambda args
- (delete-dependencies '("tap")))))
- ;; FIXME: Tests depend on node-tap
- #:tests? #f))
- (home-page "https://github.com/npm/node-semver")
- (synopsis "Parses semantic versions strings")
- (description
- "@code{node-semver} is a JavaScript implementation of the
-@uref{https://semver.org/, SemVer.org} specification.")
- (license license:isc)))
-
(define-public node-util-deprecate
(package
(name "node-util-deprecate")
--
2.41.0
N
N
Nicolas Graves wrote on 24 Sep 14:50 +0200
[PATCH 19/19] gnu: packages: node-xyz: Add alphatical order header.
(address . 66180@debbugs.gnu.org)(address . ngraves@ngraves.fr)
6d2adc735be3a11764c037bf0fd6b1beb869807e.1695559845.git.ngraves@ngraves.fr
* (gnu/packages/node-xyz): Add alphabetical order header.
---
gnu/packages/node-xyz.scm | 4 ++++
1 file changed, 4 insertions(+)

Toggle diff (17 lines)
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index d81d6b8eff..bfa092a5c1 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -33,6 +33,10 @@ (define-module (gnu packages node-xyz)
#:use-module (guix git-download)
#:use-module (guix build-system node))
+;;;
+;;; Please: Try to add new module packages in alphabetic order.
+;;;
+
(define-public node-acorn
(package
(name "node-acorn")
--
2.41.0
?