all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: jlicht@fsfe.org
To: 74187@debbugs.gnu.org
Cc: "Jelle Licht" <jlicht@fsfe.org>,
	jlicht@fsfe.org, "Ricardo Wurmus" <rekado@elephly.net>,
	"Ludovic Courtès" <ludo@gnu.org>
Subject: [bug#74187] [PATCH v2 07/24] gnu: node-lts: Update to 20.18.1 [security fixes].
Date: Wed,  4 Dec 2024 08:49:29 +0100	[thread overview]
Message-ID: <f5b08804b1957c50f1ab2e21d45d84bb170ed74e.1733298337.git.jlicht@fsfe.org> (raw)
In-Reply-To: <cover.1733298337.git.jlicht@fsfe.org>

From: Jelle Licht <jlicht@fsfe.org>

* gnu/packages/node.scm (node-lts): Update to 20.18.1.
[origin]: Delete bundled brotli, ngtcp2 and uv.
[:configure-flags]: Add shared-nghtcp2 flag. Add shared-nghttp3 flag.
[#:phases]<delete-problematic-tests>: Remove tests that fail due to linking to
unbundled libuv. Delete tests that depend on 64-bit time_t for 32-bit builds.
[native-inputs]: Replace libuv by libuv-for-node-lts.
[inputs]: Replace libuv by libuv-for-node-lts. Add ngtpc2, nghttp3.

Change-Id: I932e64f212283b34f0affad65c3d9f92fdea3d79
---
 gnu/packages/node.scm | 34 ++++++++++++++++++++++++++++------
 1 file changed, 28 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm
index 36ed22e052..13d2575333 100644
--- a/gnu/packages/node.scm
+++ b/gnu/packages/node.scm
@@ -750,14 +750,14 @@ (define-public llhttp-bootstrap
 (define-public node-lts
   (package
     (inherit node)
-    (version "18.19.0")
+    (version "20.18.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://nodejs.org/dist/v" version
                                   "/node-v" version ".tar.gz"))
               (sha256
                (base32
-                "05qc1dgmrms73073n4l36jrcxf6ygqj959d3cngy5qclrg0isk6x"))
+                "1f180vgr6lrg4gs48q5c414j5sdwaqqp1vnswwr3pvryhznqrbav"))
               (modules '((guix build utils)))
               (snippet
                '(begin
@@ -768,9 +768,12 @@ (define-public node-lts
                                           (not (string-contains file "nodejs-openssl.cnf")))))
                   ;; Remove bundled software, where possible
                   (for-each delete-file-recursively
-                            '("deps/cares"
+                            '("deps/brotli"
+                              "deps/cares"
                               "deps/icu-small"
                               "deps/nghttp2"
+                              "deps/ngtcp2"
+                              "deps/uv"
                               "deps/zlib"))
                   (substitute* "Makefile"
                     ;; Remove references to bundled software.
@@ -786,6 +789,8 @@ (define-public node-lts
            "--shared-zlib"
            "--shared-brotli"
            "--with-intl=system-icu"
+           "--shared-ngtcp2"
+           "--shared-nghttp3"
            ;;Needed for correct snapshot checksums
            "--v8-enable-snapshot-compression"))
        ((#:phases phases)
@@ -868,13 +873,27 @@ (define-public node-lts
                                    "test/parallel/test-zlib-write-after-flush.js")))
                      '())
 
+               ;; https://github.com/nodejs/node/issues/45906
+               ;; This test depends on 64-bit time_t so skipping on 32-bit systems.
+               ,@(if (not (target-64bit?))
+                     '((delete-file "test/parallel/test-fs-utimes-y2K38.js"))
+                     '())
+
                ;; These tests have an expiry date: they depend on the validity of
                ;; TLS certificates that are bundled with the source.  We want this
                ;; package to be reproducible forever, so remove those.
                ;; TODO: Regenerate certs instead.
                (for-each delete-file
                          '("test/parallel/test-tls-passphrase.js"
-                           "test/parallel/test-tls-server-verify.js"))))
+                           "test/parallel/test-tls-server-verify.js"))
+
+               ;; These tests fail when linking to upstream libuv.
+               ;; https://github.com/nodejs/node/commit/3f6addd590
+               (for-each delete-file
+                         '("test/parallel/test-process-euid-egid.js"
+                           "test/parallel/test-process-initgroups.js"
+                           "test/parallel/test-process-setgroups.js"
+                           "test/parallel/test-process-uid-gid.js"))))
            (add-after 'delete-problematic-tests 'replace-llhttp-sources
              (lambda* (#:key inputs #:allow-other-keys)
                ;; Replace pre-generated llhttp sources
@@ -940,10 +959,11 @@ (define-public node-lts
            c-ares
            brotli
            icu4c
-           libuv
+           libuv-for-node-lts
            `(,nghttp2 "lib")
            openssl
            zlib
+           ; ngtcp2? nghttp3?
            ;; Regular build-time dependencies.
            perl
            pkg-config
@@ -955,9 +975,11 @@ (define-public node-lts
            coreutils
            c-ares
            icu4c
-           libuv
+           libuv-for-node-lts
            llhttp-bootstrap
            brotli
+           ngtcp2
+           nghttp3
            `(,nghttp2 "lib")
            openssl
            zlib))))
-- 
2.46.0





  parent reply	other threads:[~2024-12-04  7:51 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-03 12:01 [bug#74187] [PATCH 00/20] Bumping node to 20.18.0 and beyond jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 01/20] gnu: node: Replace customized nghttp2-for-node by nghttp2 jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 02/20] gnu: Remove nghttp2-for-node jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 03/20] gnu: node-lts: Replace customized c-ares-for-node by c-ares jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 04/20] gnu: Remove c-ares-for-node jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 05/20] gnu: Add libuv-for-node-lts jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 06/20] gnu: llhttp-bootstrap: Update to 8.1.2 jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 07/20] gnu: node-lts: Update to 20.18.0 [security fixes] jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 08/20] gnu: r-v8: Fix build with node-lts@20 jlicht
2024-11-03 18:29   ` Ricardo Wurmus
2024-11-03 12:03 ` [bug#74187] [PATCH 09/20] gnu: cwltool: Use node-lts instead of node jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 10/20] gnu: python-cwl-utils: " jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 11/20] gnu: ocaml-ezjsonm: " jlicht
2024-11-03 12:03 ` [bug#74187] [PATCH 12/20] gnu: js-of-ocaml: " jlicht
2024-11-03 12:04 ` [bug#74187] [PATCH 13/20] gnu: fmp: " jlicht
2024-11-03 12:04 ` [bug#74187] [PATCH 14/20] gnu: python-cloudscraper: " jlicht
2024-11-03 12:04 ` [bug#74187] [PATCH 15/20] gnu: qtwebengine-5: " jlicht
2024-11-03 12:04 ` [bug#74187] [PATCH 16/20] gnu: ruby-autoprefixer-rails: " jlicht
2024-11-03 12:04 ` [bug#74187] [PATCH 17/20] gnu: ruby-execjs: " jlicht
2024-11-03 12:04 ` [bug#74187] [PATCH 18/20] gnu: vlang: " jlicht
2024-11-03 12:04 ` [bug#74187] [PATCH 19/20] gnu: esbuild-node: " jlicht
2024-11-03 12:04 ` [bug#74187] [PATCH 20/20] gnu: node: Rename variable node-bootstrap and hide package jlicht
2024-11-18 10:12 ` [bug#74187] [PATCH 00/20] Bumping node to 20.18.0 and beyond Ludovic Courtès
2024-12-04  7:49 ` [bug#74187] [PATCH v2 00/24] " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 01/24] gnu: node: Replace customized nghttp2-for-node by nghttp2 jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 02/24] gnu: Remove nghttp2-for-node jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 03/24] gnu: node-lts: Replace customized c-ares-for-node by c-ares jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 04/24] gnu: Remove c-ares-for-node jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 05/24] gnu: Add libuv-for-node-lts jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 06/24] gnu: llhttp-bootstrap: Update to 8.1.2 jlicht
2024-12-04  7:49   ` jlicht [this message]
2024-12-04  7:49   ` [bug#74187] [PATCH v2 08/24] gnu: node-uglify-js: Update to 3.19.3 jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 09/24] gnu: node-acorn: Update to 8.7.1 jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 10/24] gnu: node-nan: Update to 2.22.0 jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 11/24] gnu: node-addon-api: Update to 8.3.0 jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 12/24] gnu: r-v8: Fix build with node-lts@20 jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 13/24] gnu: cwltool: Use node-lts instead of node jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 14/24] gnu: python-cwl-utils: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 15/24] gnu: ocaml-ezjsonm: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 16/24] gnu: js-of-ocaml: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 17/24] gnu: fmp: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 18/24] gnu: python-cloudscraper: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 19/24] gnu: qtwebengine-5: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 20/24] gnu: ruby-autoprefixer-rails: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 21/24] gnu: ruby-execjs: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 22/24] gnu: vlang: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 23/24] gnu: esbuild-node: " jlicht
2024-12-04  7:49   ` [bug#74187] [PATCH v2 24/24] gnu: node: Rename variable node-bootstrap and hide package jlicht

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f5b08804b1957c50f1ab2e21d45d84bb170ed74e.1733298337.git.jlicht@fsfe.org \
    --to=jlicht@fsfe.org \
    --cc=74187@debbugs.gnu.org \
    --cc=ludo@gnu.org \
    --cc=rekado@elephly.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.