guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

18/19: gnu: node-lts: Update to 18.16.0.


From: guix-commits
Subject: 18/19: gnu: node-lts: Update to 18.16.0.
Date: Sat, 6 May 2023 07:56:27 -0400 (EDT)

jlicht pushed a commit to branch master
in repository guix.

commit 8cc0ed453694ab74346db7dc644092ab10556cdb
Author: Hilton Chain <hako@ultrarare.space>
AuthorDate: Wed Apr 26 22:29:24 2023 +0200

    gnu: node-lts: Update to 18.16.0.
    
    * gnu/packages/node.scm (node-lts): Update to 18.16.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.
    Replace libuv-for-node with libuv.
    Replace nghttp2-for-node with nghttp2.
    
    Signed-off-by: Jelle Licht <jlicht@fsfe.org>
    Co-authored-by: Jelle Licht <jlicht@fsfe.org>
---
 gnu/packages/node.scm | 48 ++++++++++++++++++++++++++++++++----------------
 1 file changed, 32 insertions(+), 16 deletions(-)

diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm
index 2ed60fbf38..3106f01779 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 @@ source files.")
 (define-public node-lts
   (package
     (inherit node)
-    (version "14.19.3")
+    (version "18.16.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"))
+                "0vcc132z7lkxnw5clmiz6sp6ccmw35pyb69hczphrig5frfmqkva"))
               (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 @@ source files.")
            "--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 @@ source files.")
                                    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.
@@ -866,9 +882,9 @@ source files.")
            c-ares-for-node
            brotli
            icu4c
-           libuv-for-node
-           `(,nghttp2-for-node "lib")
-           openssl-1.1
+           libuv
+           `(,nghttp2 "lib")
+           openssl
            zlib
            ;; Regular build-time dependencies.
            perl
@@ -881,11 +897,11 @@ source files.")
            coreutils
            c-ares-for-node
            icu4c
-           libuv-for-node
+           libuv
            llhttp-bootstrap
            brotli
-           `(,nghttp2-for-node "lib")
-           openssl-1.1
+           `(,nghttp2 "lib")
+           openssl
            zlib))))
 
 (define-public libnode



reply via email to

[Prev in Thread] Current Thread [Next in Thread]