[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#59188] [PATCH v3 15/16] gnu: node-lts: Update to 18.14.0.
From: |
jlicht |
Subject: |
[bug#59188] [PATCH v3 15/16] gnu: node-lts: Update to 18.14.0. |
Date: |
Wed, 8 Feb 2023 22:05:30 +0100 |
From: Hilton Chain <hako@ultrarare.space>
* gnu/packages/node.scm (node-lts): Update to 18.14.0.
[snippet]: Keep file deps/openssl/nodejs-openssl.cnf.
[arguments]<#:configure-flags>: Enable v8 snapshot compression.
<#:phases>: Adjust problematic tests to delete accordingly.
Patch additional file with hardcoded references to /bin/sh.
[native-inputs,inputs]: Replace openssl-1.1 with openssl.
---
gnu/packages/node.scm | 40 ++++++++++++++++++++++++++++------------
1 file changed, 28 insertions(+), 12 deletions(-)
diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm
index de847490a3..03dfa8875f 100644
--- a/gnu/packages/node.scm
+++ b/gnu/packages/node.scm
@@ -11,6 +11,7 @@
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021, 2022 Philip McGrath <philip@philipmcgrath.com>
+;;; Copyright © 2022 Hilton Chain <hako@ultrarare.space>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -737,23 +738,28 @@ (define-public llhttp-bootstrap
(define-public node-lts
(package
(inherit node)
- (version "14.19.3")
+ (version "18.14.0")
(source (origin
(method url-fetch)
(uri (string-append "https://nodejs.org/dist/v" version
- "/node-v" version ".tar.xz"))
+ "/node-v" version ".tar.gz"))
(sha256
(base32
- "15691j5zhiikyamiwwd7f282g6d9acfhq91nrwx54xya38gmpx2w"))
+ "0sscc084lbh1008zzmibaxbl7y4n6cbsnlprisckr3fc3rbdj4sa"))
(modules '((guix build utils)))
(snippet
`(begin
+ ;; openssl.cnf is required for build.
+ (for-each delete-file-recursively
+ (find-files "deps/openssl"
+ (lambda (file stat)
+ (if (string-contains file
"nodejs-openssl.cnf")
+ #f #t))))
;; Remove bundled software, where possible
(for-each delete-file-recursively
'("deps/cares"
"deps/icu-small"
"deps/nghttp2"
- "deps/openssl"
"deps/zlib"))
(substitute* "Makefile"
;; Remove references to bundled software.
@@ -769,7 +775,9 @@ (define-public node-lts
"--shared-openssl"
"--shared-zlib"
"--shared-brotli"
- "--with-intl=system-icu"))
+ "--with-intl=system-icu"
+ ;;Needed for correct snapshot checksums
+ "--v8-enable-snapshot-compression"))
((#:phases phases)
`(modify-phases ,phases
(replace 'set-bootstrap-host-rpath
@@ -802,23 +810,31 @@ (define-public node-lts
libuv "/lib:"
zlib "/lib"
"'],"))))))
+ (add-after 'patch-hardcoded-program-references
+ 'patch-additional-hardcoded-program-references
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "test/parallel/test-stdin-from-file-spawn.js"
+ (("'/bin/sh'") (string-append
+ "'" (search-input-file inputs "/bin/sh")
+ "'")))))
(replace 'delete-problematic-tests
(lambda* (#:key inputs #:allow-other-keys)
;; FIXME: These tests fail in the build container, but they
don't
;; seem to be indicative of real problems in practice.
(for-each delete-file
- '("test/parallel/test-cluster-master-error.js"
- "test/parallel/test-cluster-master-kill.js"))
+ '("test/parallel/test-cluster-primary-error.js"
+ "test/parallel/test-cluster-primary-kill.js"))
;; These require a DNS resolver.
(for-each delete-file
'("test/parallel/test-dns.js"
- "test/parallel/test-dns-lookupService-promises.js"))
+ "test/parallel/test-dns-lookupService-promises.js"
+
"test/parallel/test-net-socket-connect-without-cb.js"
+ "test/parallel/test-tcp-wrap-listen.js"))
;; These tests require networking.
(for-each delete-file
- '("test/parallel/test-https-agent-unref-socket.js"
- "test/parallel/test-corepack-yarn-install.js"))
+ '("test/parallel/test-https-agent-unref-socket.js"))
;; This test is timing-sensitive, and fails sporadically on
;; slow, busy, or even very fast machines.
@@ -868,7 +884,7 @@ (define-public node-lts
icu4c-71
libuv-for-node
`(,nghttp2 "lib")
- openssl-1.1
+ openssl
zlib
;; Regular build-time dependencies.
perl
@@ -885,7 +901,7 @@ (define-public node-lts
llhttp-bootstrap
brotli
`(,nghttp2 "lib")
- openssl-1.1
+ openssl
python-wrapper ;; for node-gyp (supports python3)
zlib))))
--
2.39.1
- [bug#59188] [PATCH v3 02/16] gnu: node-acorn: Remove lifecycle script., (continued)
- [bug#59188] [PATCH v3 02/16] gnu: node-acorn: Remove lifecycle script., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 01/16] gnu: node-acorn: Disable tests., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 05/16] gnu: node-crx3: Ignore development dependencies., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 03/16] gnu: node-acorn: Fix broken transpilation., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 07/16] gnu: node-pbf: Ignore development dependencies., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 09/16] gnu: node-resolve-protobuf-schema: Ignore development dependencies., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 10/16] gnu: node-ieee754: Ignore development dependencies., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 11/16] gnu: node-yazl: Ignore development dependencies., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 06/16] gnu: node-minimist: Ignore development dependencies., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 08/16] gnu: node-protocol-buffers-schema: Ignore development dependencies., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 15/16] gnu: node-lts: Update to 18.14.0.,
jlicht <=
- [bug#59188] [PATCH v3 04/16] gnu: node-buffer-crc32: Ignore development dependencies., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 12/16] gnu: node-uglify-js: Update to 3.14.2., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 13/16] gnu: libuv-for-node: Update to 1.44.2., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 16/16] gnu: libnode: Use node-lts as base., jlicht, 2023/02/08
- [bug#59188] [PATCH v3 14/16] gnu: llhttp-bootstrap: Update to 6.0.10., jlicht, 2023/02/08