summaryrefslogtreecommitdiff
path: root/gnu/packages/node-xyz.scm
diff options
context:
space:
mode:
authorRikard Nordgren <hrn@posteo.net>2023-12-06 20:03:48 +0000
committerLudovic Courtès <ludo@gnu.org>2023-12-22 17:47:16 +0100
commit211c66d49e720eb32c866234ec450d51f322584c (patch)
tree39e36069f0c33e98376e52b327310498ed790ffa /gnu/packages/node-xyz.scm
parent76ed5ec9f72b0f6a9b677214ce4e89fced07b79c (diff)
gnu: Add node-safe-stable-stringify.
* gnu/packages/node-xyz.scm (node-safe-stable-stringify): New variable. Change-Id: Ia54a44403807479652fe5831b08acdb661dca9e1 Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/node-xyz.scm')
-rw-r--r--gnu/packages/node-xyz.scm42
1 files changed, 42 insertions, 0 deletions
diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm
index 9eb8595add..9097d611a6 100644
--- a/gnu/packages/node-xyz.scm
+++ b/gnu/packages/node-xyz.scm
@@ -496,6 +496,48 @@ written in Javascript.")
resolve all imports.")
(license license:expat)))
+(define-public node-safe-stable-stringify
+ (package
+ (name "node-safe-stable-stringify")
+ (version "2.4.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/BridgeAR/safe-stable-stringify")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "008adig8j13rn2a21ngnp770y4zz6yq176ix5rkskjbb8g2qwapg"))))
+ (build-system node-build-system)
+ (arguments
+ '(#:tests? #f
+ #:phases (modify-phases %standard-phases
+ (add-after 'patch-dependencies 'delete-dependencies
+ (lambda _
+ (delete-dependencies '("benchmark" "clone"
+ "fast-json-stable-stringify"
+ "fast-safe-stringify"
+ "fast-stable-stringify"
+ "faster-stable-stringify"
+ "fastest-stable-stringify"
+ "json-stable-stringify"
+ "json-stringify-deterministic"
+ "json-stringify-safe"
+ "standard"
+ "tap"
+ "typescript"
+ "@types/node"
+ "@types/json-stable-stringify")))))))
+ (home-page "https://github.com/BridgeAR/safe-stable-stringify")
+ (synopsis "Serialization of javascript objects")
+ (description
+ "Safe, deterministic and fast serialization alternative to JSON.stringify.
+Gracefully handles circular structures and bigint instead of throwing.
+Optional custom circular values, deterministic behavior or strict JSON
+compatibility check.")
+ (license license:expat)))
+
(define-public node-stack-trace
;; There have been improvements since the last release.
(let ((commit "4fd379ee78965ce7ce8820b436f1b1b590d5dbcf")