Sync from SUSE:ALP:Source:Standard:1.0 nodejs20 revision 9e4449ebaaaf8aa1cad70ddaa08bf7e9

This commit is contained in:
Adrian Schröter 2025-03-11 11:44:33 +01:00
parent 89a3653980
commit 48aa79e6c2
10 changed files with 265 additions and 156 deletions

46
CVE-2024-21538.patch Normal file
View File

@ -0,0 +1,46 @@
Applied following patches,
From 5ff3a07d9add449021d806e45c4168203aa833ff Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Cruz?= <andremiguelcruz@msn.com>
Date: Wed, 6 Nov 2024 22:02:49 +0000
Subject: [PATCH] fix: disable regexp backtracking (#160)
---
lib/util/escape.js | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
From 640d391fde65388548601d95abedccc12943374f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andr=C3=A9=20Cruz?= <andre.cruz@uphold.com>
Date: Thu, 7 Nov 2024 12:50:38 +0000
Subject: [PATCH] fix: fix escaping bug introduced by backtracking
---
lib/util/escape.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Index: node-v18.20.5/deps/npm/node_modules/cross-spawn/lib/util/escape.js
===================================================================
--- node-v18.20.5.orig/deps/npm/node_modules/cross-spawn/lib/util/escape.js
+++ node-v18.20.5/deps/npm/node_modules/cross-spawn/lib/util/escape.js
@@ -15,15 +15,17 @@ function escapeArgument(arg, doubleEscap
arg = `${arg}`;
// Algorithm below is based on https://qntm.org/cmd
+ // It's slightly altered to disable JS backtracking to avoid hanging on specially crafted input
+ // Please see https://github.com/moxystudio/node-cross-spawn/pull/160 for more information
// Sequence of backslashes followed by a double quote:
// double up all the backslashes and escape the double quote
- arg = arg.replace(/(\\*)"/g, '$1$1\\"');
+ arg = arg.replace(/(?=(\\+?)?)\1"/g, '$1$1\\"');
// Sequence of backslashes followed by the end of the string
// (which will become a double quote later):
// double up all the backslashes
- arg = arg.replace(/(\\*)$/, '$1$1');
+ arg = arg.replace(/(?=(\\+?)?)\1$/, '$1$1');
// All other backslashes occur literally

View File

@ -1,41 +1,41 @@
dd24c8b6fdaf46361e130c894fd7282266f944b54196636e6df583fdec1e836f node-v20.15.1-aix-ppc64.tar.gz efcddeb91b189b02706d1a75a67b4a111253ec8f64cc30cc3dc4649744abd52b node-v20.18.2-aix-ppc64.tar.gz
9cbfc9d496427893505f8cb81aa4c1554fe449881cb4a6c5410e494c5fc36674 node-v20.15.1-arm64.msi 40c5a72564b8667342bec84aab50d2af1503af2b274f1a7a09d2d929461988b6 node-v20.18.2-arm64.msi
4743bc042f90ba5d9edf09403207290a9cdd2f6061bdccf7caaa0bbfd49f343e node-v20.15.1-darwin-arm64.tar.gz fa76d5b5340f14070ebaa88ef8faa28c1e9271502725e830cb52f0cf5b6493de node-v20.18.2-darwin-arm64.tar.gz
106ad5288f1da94bf25cf9fba4a070b442e3213e25ce8af3ad35bf6e266213f6 node-v20.15.1-darwin-arm64.tar.xz 32dc17147054df9cdf96d03103f4661b4cb0bb9b4ca4b70e34fe632f1bab189c node-v20.18.2-darwin-arm64.tar.xz
f5379772ffae1404cfd1fcc8cf0c6c5971306b8fb2090d348019047306de39dc node-v20.15.1-darwin-x64.tar.gz 00a16bb0a82a2ad5d00d66b466ae1afa678482283747c27e9bce96668f334744 node-v20.18.2-darwin-x64.tar.gz
34ad01b42025f72d486f9775a2f170913ad6b9fe2d4ceb67746a08de0e475b88 node-v20.15.1-darwin-x64.tar.xz 184c9b8e246a3fd139caf2456510dc99ec548ad2e5203fbc5fc56ba48104e8eb node-v20.18.2-darwin-x64.tar.xz
8c2305c6df5d14525e0711f0da38295600987df4c2710c738c01400862a176b4 node-v20.15.1-headers.tar.gz d74c718976adc308991fb8784f0b3f82845436bf8f04d2c982ab5cab5115289f node-v20.18.2-headers.tar.gz
d6e4f101f8734f96be558ad4b84a35a81f33decc050a7d2d8e5b39573b79bdf8 node-v20.15.1-headers.tar.xz 05819d72dcc0aa788baab1066e18ede5f1ab6730a1925cd6b15c131b55fd4272 node-v20.18.2-headers.tar.xz
8554c91ccd32782351035d3a9b168ad01c6922480800a21870fc5d6d86c2bb70 node-v20.15.1-linux-arm64.tar.gz 319789e8a055ff80793a05e633c8c5c9226050144a09da3747225b4ec56a2a99 node-v20.18.2-linux-arm64.tar.gz
10d47a46ef208b3e4b226e4d595a82659123b22397ed77b7975d989114ec317e node-v20.15.1-linux-arm64.tar.xz 5c1437aa16e7e6a2e0687a42c4d3f0a8f8a2039cda8880cb3be8cd983aeefb44 node-v20.18.2-linux-arm64.tar.xz
2c16717da7d2d7b00f6af146cdf436a0297cbcee52c85b754e4c9ed7cee34b51 node-v20.15.1-linux-armv7l.tar.gz 65397a4a63960bda94718099698d2961623e9ef400f60f4c3a71add2268bccfb node-v20.18.2-linux-armv7l.tar.gz
7bc120efdd8018f6915471b963d9b80adf4ed406d6dc9edb4ae944b85f505c4c node-v20.15.1-linux-armv7l.tar.xz 63d4df56fb2e34a5077345f78941094204d2223ce03b8ebc9c1500e6e2aae68d node-v20.18.2-linux-armv7l.tar.xz
b91df4971b428f9cb2fbe427c919ad382c4cd206a85e5c918c60c15f1e3d2e32 node-v20.15.1-linux-ppc64le.tar.gz 9b2f0fd3b02d8b59bde3e2a251e4df501e755c99cfc4886b0bdf85fa4d0bc538 node-v20.18.2-linux-ppc64le.tar.gz
b33e684802251397ad62ad3f8a1836267ee8b7723f87f669470018ad0035287b node-v20.15.1-linux-ppc64le.tar.xz 828a2635261ca225cd4a8a4b1a914003cdc7b30656c2e9092ac7aab02ac361db node-v20.18.2-linux-ppc64le.tar.xz
393f511b5623c8a872e58203914a54bc7e086b8ca870d34833766d4f9c4e2448 node-v20.15.1-linux-s390x.tar.gz 7e52e03823feaa2483a7cbcf85767790776f87a2c7112d87600c3d9d3b1ae6e9 node-v20.18.2-linux-s390x.tar.gz
e2c36cdccc8a7c1000a349dd6fea8b0ce39884eae7b3dd1950d0105120f20848 node-v20.15.1-linux-s390x.tar.xz bcf3680e111f1d24e403db3d5600315266ae1f8d9d1f69f39c61dbf8d8c9036e node-v20.18.2-linux-s390x.tar.xz
a9db028c0a1c63e3aa0d97de24b0966bc507d8239b3aedc4e752eea6b0580665 node-v20.15.1-linux-x64.tar.gz eb5b031bdd728871c3b9a82655dbfa533bc262c0b6da1d09a86842430cef07d4 node-v20.18.2-linux-x64.tar.gz
26700f8d3e78112ad4a2618a9c8e2816e38a49ecf0213ece80e54c38cb02563f node-v20.15.1-linux-x64.tar.xz 4e50f727ae09bdafecf2322c72faf7cd82bf3b8851a16b8bb63974e0d8d6eceb node-v20.18.2-linux-x64.tar.xz
4f437463e708c4c7faaa436bed46c3ea814ec3796cfe1e02515ab21d2038b4b1 node-v20.15.1-win-arm64.7z 87d10db681bca2a39fcadcc908d5e5b2c7effa16370c4ca555373b85e25275b1 node-v20.18.2.pkg
6cc4f9ca826f5b3e0c555d156bc6adcc371bd96c2874ee748d0f97e2938d3c2b node-v20.15.1-win-arm64.zip cf3ef49fafbfee3cdcd936a0d6031341b73bfa6b26a484ea0a4936c26d24b829 node-v20.18.2.tar.gz
5dbaf27053a0566395f81ebe9e4660141de1bc7b0fe80583447bb36804643f75 node-v20.15.1-win-x64.7z 69bf81b70f3a95ae0763459f02860c282d7e3a47567c8afaf126cc778176a882 node-v20.18.2.tar.xz
ba6c3711e2c3d0638c5f7cea3c234553808a73c52a5962a6cdb47b5210b70b04 node-v20.15.1-win-x64.zip d28d21e000ebed8b6131201b727d1998d4dbc4dbdb6e5ad07679552e4c75fa4d node-v20.18.2-win-arm64.7z
2281b04df475efa64ef483529fc9cad1715d42d5766e68541b64970297247692 node-v20.15.1-win-x86.7z b89d196a2d9dc3dac87c268aac9a983fa2fd1881c14884bc848312783ccf7d2f node-v20.18.2-win-arm64.zip
9a08021e4bcc4694bc72d00ce1ce0686e6de6a9a855678239625f96b09c70b07 node-v20.15.1-win-x86.zip 06e72c0f78cc1bf1819eb0a0a37001d2917f19ad46a149c2f923c901f599ba52 node-v20.18.2-win-x64.7z
b139ba1b82807918af40fbed49a5b529f67ba198e87bcabdac907b734ff83ab5 node-v20.15.1-x64.msi ed790b94570518a7dce67b62485e16bc4bffecee4ec3b6df35ed220ae91117a5 node-v20.18.2-win-x64.zip
6079df4ab0d457180b4b730fab76d0b60b14342d797cc10a4f2d7c8b61fba584 node-v20.15.1-x86.msi fa561ebff3f52667228f9fcd9e67ce22a86e5c28c8e3782e01a95c90b6ed114d node-v20.18.2-win-x86.7z
93b9549a65d459cc2e035c0d583101f827607f43376b5f23a3a2a900f5467321 node-v20.15.1.pkg 25f00a77843accc098561a35ce3ed923357f0127b8e5db594cb62188e3290b88 node-v20.18.2-win-x86.zip
da228a0c27922f02001d9a781793696432096ab2da658eb77d7fc21693f4c5cb node-v20.15.1.tar.gz f3ad2d799e1645281d22d71b447f3899e569da87fea78bef9571b0c2b53288d6 node-v20.18.2-x64.msi
fdd53a5729d936691a2a1151046fb4897721cb8b0fca2af957823a9b40fe0c34 node-v20.15.1.tar.xz 783c4041ceb69226184a1b26177b5d9dc85e502d0f124c64d2b2c6f8ab12e5d5 node-v20.18.2-x86.msi
8e3f84e8ec7e41f98a048eb0c1365cfe54426a556ead98c4803df45d29e0335d win-arm64/node.exe 83e7ad1b8c4d4d9c5e06849c3e8f3a5948a5eb6aa34c5bd973ba700e0386f42c win-arm64/node.exe
a4f01329c1c211082ac3ed387ff6651530040bbf7250ec419ce8f95b10d7804a win-arm64/node.lib 58795bcd44e8023ff443dedabf7f9af928732a51befc5324082aafe56e0f5eb0 win-arm64/node.lib
493292505fd7a156b1e7b46c7f05001a0684fba6f734f83abfcf7fed88625453 win-arm64/node_pdb.7z 83fdda5fb5869c18f5d5d3dc4d0479f6bdad16f0888c95b8008f03654593afdd win-arm64/node_pdb.7z
88d4af538deadf8fa2638df84a76bd7dd26f0aeac8dc584f213da736f322377c win-arm64/node_pdb.zip 4049c1e7c2fc82c4d43c9d8567e7d20f20c0d360c281fcb924ce9cd4b9ce8dc3 win-arm64/node_pdb.zip
229fb64aeb10d3cc18eaaa2f5a4c3f1c81792dd3647c5c4350e142db528d0f89 win-x64/node.exe 8487a277e92282904dfe0f860dbd5d229543e97a858a223fbe9c9b8670bbe170 win-x64/node.exe
87056190b7cd06f40058f8e059efd328cdcc7600b825afa102c0aa5039865af5 win-x64/node.lib 5a16801c62c34c8056744ac339950c970b2b76f39b2d02afef4112ff51b74f1a win-x64/node.lib
bb2198b381bb5d7bc08e2cdda3db911996e310b944b05cb8c7c271a5a7ab0901 win-x64/node_pdb.7z 6ff19d51a762405717f7dff33811ba6371334de95946efbccf6f8dd786ec93e8 win-x64/node_pdb.7z
316ee3fbbe976981e8ee0b81204aece9d3c2337c83f1644d90bb552c3068ca44 win-x64/node_pdb.zip 07ef9641b5a339de2f43f698dc3b1aeb321e851645b199cbeb0f378674263bf1 win-x64/node_pdb.zip
6e7f3cbb46569a58babe99de2df8a69e98ad613674d4fed71b1dca866e1a72e8 win-x86/node.exe ab4b6beaaa170cfed83a2c9c71d8d5032ac514a5ebd7a5aa0553731267964f5e win-x86/node.exe
fa02ae7feca7eb6c4a0f1b929126df400719f5d18a2ec4b7d12c52fbe0b13814 win-x86/node.lib fcc6ab34ebd4ad3a44de12376c3822c2ebc41febaa1ed4c4221ddc239f79f61c win-x86/node.lib
e8f6da56c9bc73add71a41c4d5ed92fc6cf9e7c5067d7a0d3f7b9fd6391f07c4 win-x86/node_pdb.7z ab74677f28b517eee9f745930541d02a870ae2d3f29a5ac91fe630813a1cd987 win-x86/node_pdb.7z
1b4e9dbc5a8b0a5121d32351f9654c1ab451e88680982d487a4a6c40d50bd730 win-x86/node_pdb.zip 6080ab7b513194510c8938c276b7fd4379eb0ed69cfa09dbb21da8a4eeddd75f win-x86/node_pdb.zip

Binary file not shown.

View File

@ -2,10 +2,10 @@ Author: Adam Majer <amajer@suse.de>
Date: Dec 20 09:18:49 UTC 2017 Date: Dec 20 09:18:49 UTC 2017
Summary: Fix CI unit tests framework for OBS building Summary: Fix CI unit tests framework for OBS building
Index: node-v20.15.1/test/parallel/test-module-loading-globalpaths.js Index: node-v20.18.1/test/parallel/test-module-loading-globalpaths.js
=================================================================== ===================================================================
--- node-v20.15.1.orig/test/parallel/test-module-loading-globalpaths.js --- node-v20.18.1.orig/test/parallel/test-module-loading-globalpaths.js
+++ node-v20.15.1/test/parallel/test-module-loading-globalpaths.js +++ node-v20.18.1/test/parallel/test-module-loading-globalpaths.js
@@ -11,6 +11,9 @@ const { addLibraryPath } = require('../c @@ -11,6 +11,9 @@ const { addLibraryPath } = require('../c
addLibraryPath(process.env); addLibraryPath(process.env);
@ -16,10 +16,10 @@ Index: node-v20.15.1/test/parallel/test-module-loading-globalpaths.js
if (process.argv[2] === 'child') { if (process.argv[2] === 'child') {
console.log(require(pkgName).string); console.log(require(pkgName).string);
} else { } else {
Index: node-v20.15.1/test/parallel/test-tls-passphrase.js Index: node-v20.18.1/test/parallel/test-tls-passphrase.js
=================================================================== ===================================================================
--- node-v20.15.1.orig/test/parallel/test-tls-passphrase.js --- node-v20.18.1.orig/test/parallel/test-tls-passphrase.js
+++ node-v20.15.1/test/parallel/test-tls-passphrase.js +++ node-v20.18.1/test/parallel/test-tls-passphrase.js
@@ -223,7 +223,7 @@ server.listen(0, common.mustCall(functio @@ -223,7 +223,7 @@ server.listen(0, common.mustCall(functio
}, onSecureConnect()); }, onSecureConnect());
})).unref(); })).unref();
@ -29,10 +29,10 @@ Index: node-v20.15.1/test/parallel/test-tls-passphrase.js
// Missing passphrase // Missing passphrase
assert.throws(function() { assert.throws(function() {
Index: node-v20.15.1/test/parallel/test-repl-envvars.js Index: node-v20.18.1/test/parallel/test-repl-envvars.js
=================================================================== ===================================================================
--- node-v20.15.1.orig/test/parallel/test-repl-envvars.js --- node-v20.18.1.orig/test/parallel/test-repl-envvars.js
+++ node-v20.15.1/test/parallel/test-repl-envvars.js +++ node-v20.18.1/test/parallel/test-repl-envvars.js
@@ -2,7 +2,9 @@ @@ -2,7 +2,9 @@
// Flags: --expose-internals // Flags: --expose-internals
@ -44,11 +44,11 @@ Index: node-v20.15.1/test/parallel/test-repl-envvars.js
const stream = require('stream'); const stream = require('stream');
const { describe, test } = require('node:test'); const { describe, test } = require('node:test');
const REPL = require('internal/repl'); const REPL = require('internal/repl');
Index: node-v20.15.1/Makefile Index: node-v20.18.1/Makefile
=================================================================== ===================================================================
--- node-v20.15.1.orig/Makefile --- node-v20.18.1.orig/Makefile
+++ node-v20.15.1/Makefile +++ node-v20.18.1/Makefile
@@ -392,7 +392,6 @@ ADDONS_HEADERS_PREREQS := tools/install. @@ -396,7 +396,6 @@ ADDONS_HEADERS_PREREQS := tools/install.
$(wildcard deps/uv/include/*/*.h) \ $(wildcard deps/uv/include/*/*.h) \
$(wildcard deps/v8/include/*.h) \ $(wildcard deps/v8/include/*.h) \
$(wildcard deps/v8/include/*/*.h) \ $(wildcard deps/v8/include/*/*.h) \
@ -56,7 +56,7 @@ Index: node-v20.15.1/Makefile
src/node.h src/node_api.h src/js_native_api.h src/js_native_api_types.h \ src/node.h src/node_api.h src/js_native_api.h src/js_native_api_types.h \
src/node_api_types.h src/node_buffer.h src/node_object_wrap.h \ src/node_api_types.h src/node_buffer.h src/node_object_wrap.h \
src/node_version.h src/node_version.h
@@ -563,7 +562,8 @@ test-ci-js: | clear-stalled @@ -568,7 +567,8 @@ test-ci-js: | clear-stalled
.PHONY: test-ci .PHONY: test-ci
# Related CI jobs: most CI tests, excluding node-test-commit-arm-fanned # Related CI jobs: most CI tests, excluding node-test-commit-arm-fanned
test-ci: LOGLEVEL := info test-ci: LOGLEVEL := info
@ -66,7 +66,7 @@ Index: node-v20.15.1/Makefile
out/Release/cctest --gtest_output=xml:out/junit/cctest.xml out/Release/cctest --gtest_output=xml:out/junit/cctest.xml
$(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \ $(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \
--mode=$(BUILDTYPE_LOWER) --flaky-tests=$(FLAKY_TESTS) \ --mode=$(BUILDTYPE_LOWER) --flaky-tests=$(FLAKY_TESTS) \
@@ -745,7 +745,8 @@ apidocs_json = $(addprefix out/,$(apidoc @@ -750,7 +750,8 @@ apidocs_json = $(addprefix out/,$(apidoc
apiassets = $(subst api_assets,api/assets,$(addprefix out/,$(wildcard doc/api_assets/*))) apiassets = $(subst api_assets,api/assets,$(addprefix out/,$(wildcard doc/api_assets/*)))
tools/doc/node_modules: tools/doc/package.json tools/doc/node_modules: tools/doc/package.json
@ -76,10 +76,10 @@ Index: node-v20.15.1/Makefile
echo "Skipping tools/doc/node_modules (no crypto)"; \ echo "Skipping tools/doc/node_modules (no crypto)"; \
else \ else \
cd tools/doc && $(call available-node,$(run-npm-ci)) \ cd tools/doc && $(call available-node,$(run-npm-ci)) \
Index: node-v20.15.1/tools/test.py Index: node-v20.18.1/tools/test.py
=================================================================== ===================================================================
--- node-v20.15.1.orig/tools/test.py --- node-v20.18.1.orig/tools/test.py
+++ node-v20.15.1/tools/test.py +++ node-v20.18.1/tools/test.py
@@ -1386,7 +1386,7 @@ def BuildOptions(): @@ -1386,7 +1386,7 @@ def BuildOptions():
result.add_option("-s", "--suite", help="A test suite", result.add_option("-s", "--suite", help="A test suite",
default=[], action="append") default=[], action="append")
@ -89,12 +89,12 @@ Index: node-v20.15.1/tools/test.py
result.add_option("--arch", help='The architecture to run tests for', result.add_option("--arch", help='The architecture to run tests for',
default='none') default='none')
result.add_option("--snapshot", help="Run the tests with snapshot turned on", result.add_option("--snapshot", help="Run the tests with snapshot turned on",
Index: node-v20.15.1/test/parallel/test-crypto-dh.js Index: node-v20.18.1/test/parallel/test-crypto-dh.js
=================================================================== ===================================================================
--- node-v20.15.1.orig/test/parallel/test-crypto-dh.js --- node-v20.18.1.orig/test/parallel/test-crypto-dh.js
+++ node-v20.15.1/test/parallel/test-crypto-dh.js +++ node-v20.18.1/test/parallel/test-crypto-dh.js
@@ -90,9 +90,7 @@ const crypto = require('crypto'); @@ -91,9 +91,7 @@ const crypto = require('crypto');
const hasOpenSSL3WithNewErrorMessage = (v >= 0x300000c0 && v <= 0x30100000) || (v >= 0x30100040 && v <= 0x30200000); (common.hasOpenSSL(3, 1, 4));
assert.throws(() => { assert.throws(() => {
dh3.computeSecret(''); dh3.computeSecret('');
- }, { message: common.hasOpenSSL3 && !hasOpenSSL3WithNewErrorMessage ? - }, { message: common.hasOpenSSL3 && !hasOpenSSL3WithNewErrorMessage ?
@ -104,11 +104,11 @@ Index: node-v20.15.1/test/parallel/test-crypto-dh.js
} }
} }
Index: node-v20.15.1/test/parallel/test-node-output-errors.mjs Index: node-v20.18.1/test/parallel/test-node-output-errors.mjs
=================================================================== ===================================================================
--- node-v20.15.1.orig/test/parallel/test-node-output-errors.mjs --- node-v20.18.1.orig/test/parallel/test-node-output-errors.mjs
+++ node-v20.15.1/test/parallel/test-node-output-errors.mjs +++ node-v20.18.1/test/parallel/test-node-output-errors.mjs
@@ -28,6 +28,7 @@ describe('errors output', { concurrency: @@ -26,6 +26,7 @@ describe('errors output', { concurrency:
.replaceAll(/\/(\w)/g, '*$1') .replaceAll(/\/(\w)/g, '*$1')
.replaceAll('*test*', '*') .replaceAll('*test*', '*')
.replaceAll('*fixtures*errors*', '*') .replaceAll('*fixtures*errors*', '*')
@ -116,10 +116,10 @@ Index: node-v20.15.1/test/parallel/test-node-output-errors.mjs
.replaceAll('file:**', 'file:*/'); .replaceAll('file:**', 'file:*/');
} }
Index: node-v20.15.1/test/parallel/test-crypto-fips.js Index: node-v20.18.1/test/parallel/test-crypto-fips.js
=================================================================== ===================================================================
--- node-v20.15.1.orig/test/parallel/test-crypto-fips.js --- node-v20.18.1.orig/test/parallel/test-crypto-fips.js
+++ node-v20.15.1/test/parallel/test-crypto-fips.js +++ node-v20.18.1/test/parallel/test-crypto-fips.js
@@ -3,6 +3,8 @@ @@ -3,6 +3,8 @@
const common = require('../common'); const common = require('../common');
if (!common.hasCrypto) if (!common.hasCrypto)
@ -129,10 +129,10 @@ Index: node-v20.15.1/test/parallel/test-crypto-fips.js
const assert = require('assert'); const assert = require('assert');
const spawnSync = require('child_process').spawnSync; const spawnSync = require('child_process').spawnSync;
Index: node-v20.15.1/test/parallel/test-node-output-v8-warning.mjs Index: node-v20.18.1/test/parallel/test-node-output-v8-warning.mjs
=================================================================== ===================================================================
--- node-v20.15.1.orig/test/parallel/test-node-output-v8-warning.mjs --- node-v20.18.1.orig/test/parallel/test-node-output-v8-warning.mjs
+++ node-v20.15.1/test/parallel/test-node-output-v8-warning.mjs +++ node-v20.18.1/test/parallel/test-node-output-v8-warning.mjs
@@ -15,7 +15,7 @@ describe('v8 output', { concurrency: tru @@ -15,7 +15,7 @@ describe('v8 output', { concurrency: tru
.replaceAll('*test*', '*') .replaceAll('*test*', '*')
.replaceAll(/.*?\*fixtures\*v8\*/g, '(node:*) V8: *') // Replace entire path before fixtures/v8 .replaceAll(/.*?\*fixtures\*v8\*/g, '(node:*) V8: *') // Replace entire path before fixtures/v8
@ -142,3 +142,16 @@ Index: node-v20.15.1/test/parallel/test-node-output-v8-warning.mjs
} }
const common = snapshot const common = snapshot
.transform(snapshot.replaceWindowsLineEndings, snapshot.replaceWindowsPaths, replaceNodeVersion); .transform(snapshot.replaceWindowsLineEndings, snapshot.replaceWindowsPaths, replaceNodeVersion);
Index: node-v22.12.0/test/parallel/test-dns.js
===================================================================
--- node-v22.12.0.orig/test/parallel/test-dns.js
+++ node-v22.12.0/test/parallel/test-dns.js
@@ -403,7 +403,7 @@ assert.throws(() => {
const server = dgram.createSocket('udp4');
- server.on('message', common.mustCall((msg, { address, port }) => {
+ server.on('message', common.mustCallAtLeast((msg, { address, port }) => {
const parsed = dnstools.parseDNSPacket(msg);
const domain = parsed.questions[0].domain;
assert.strictEqual(domain, 'example.org');

View File

@ -3,11 +3,11 @@ is run serially over these binaries instead of in parallel.
OBS workers run out of memory as each executable seems to require OBS workers run out of memory as each executable seems to require
upward of 5G RAM upward of 5G RAM
Index: node-v19.7.0/node.gyp Index: node-v20.18.1/node.gyp
=================================================================== ===================================================================
--- node-v19.7.0.orig/node.gyp --- node-v20.18.1.orig/node.gyp
+++ node-v19.7.0/node.gyp +++ node-v20.18.1/node.gyp
@@ -951,6 +951,7 @@ @@ -1155,6 +1155,7 @@
'deps/uvwasi/uvwasi.gyp:uvwasi', 'deps/uvwasi/uvwasi.gyp:uvwasi',
'deps/simdutf/simdutf.gyp:simdutf', 'deps/simdutf/simdutf.gyp:simdutf',
'deps/ada/ada.gyp:ada', 'deps/ada/ada.gyp:ada',
@ -15,9 +15,9 @@ Index: node-v19.7.0/node.gyp
], ],
'includes': [ 'includes': [
@@ -1047,6 +1048,7 @@ @@ -1229,6 +1230,7 @@
'<(node_lib_target_name)',
'deps/histogram/histogram.gyp:histogram', 'deps/histogram/histogram.gyp:histogram',
'deps/uvwasi/uvwasi.gyp:uvwasi',
'deps/ada/ada.gyp:ada', 'deps/ada/ada.gyp:ada',
+ 'cctest' + 'cctest'
], ],

BIN
node-v20.15.1.tar.xz (Stored with Git LFS)

Binary file not shown.

BIN
node-v20.18.2.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

Binary file not shown.

View File

@ -1,3 +1,38 @@
-------------------------------------------------------------------
Wed Jan 22 11:23:00 UTC 2025 - Adam Majer <adam.majer@suse.de>
- Update to 20.18.2:
* src,loader,permission: throw on InternalWorker use when
permission model is enabled (bsc#1236251, CVE-2025-23083)
* src: fix HTTP2 mem leak on premature close and ERR_PROTO
(bsc#1236250, CVE-2025-23085)
* deps: Use of Insufficiently Random Values in undici fetch()
(bsc#1236258, CVE-2025-22150)
-------------------------------------------------------------------
Wed Dec 4 16:32:55 UTC 2024 - Adam Majer <adam.majer@suse.de>
- Update to 20.18.1
* Experimental Network Inspection Support in Node.js
* Exposes X509_V_FLAG_PARTIAL_CHAIN to tls.createSecureContext
* New option for vm.createContext() to create a context with a
freezable globalThis
* buffer: optimize createFromString
- Changes in 20.17.0:
* module: support require()ing synchronous ESM graphs
* path: add matchesGlob method
* stream: expose DuplexPair API
- Changes in 20.16.0:
* process: add process.getBuiltinModule(id)
* inspector: fix disable async hooks on Debugger.setAsyncCallStackDepth
* buffer: add .bytes() method to Blob
- CVE-2024-21538.patch: fixes regular expression denial of service
(bsc#1233856, CVE-2024-21538)
- linker_lto_jobs.patch: refreshed
- fix_ci_tests.patch: fix dns test vs. older c-ares
- nodejs.keyring: sync keys with upstream
------------------------------------------------------------------- -------------------------------------------------------------------
Fri Jul 12 13:21:02 UTC 2024 - Adam Majer <adam.majer@suse.de> Fri Jul 12 13:21:02 UTC 2024 - Adam Majer <adam.majer@suse.de>

View File

@ -31,7 +31,7 @@
%endif %endif
Name: nodejs20 Name: nodejs20
Version: 20.15.1 Version: 20.18.2
Release: 0 Release: 0
# Double DWZ memory limits # Double DWZ memory limits
@ -152,6 +152,7 @@ Patch7: manual_configure.patch
Patch13: openssl_binary_detection.patch Patch13: openssl_binary_detection.patch
Patch82: CVE-2024-21538.patch
## Patches specific to SUSE and openSUSE ## Patches specific to SUSE and openSUSE
Patch100: linker_lto_jobs.patch Patch100: linker_lto_jobs.patch
@ -199,10 +200,10 @@ BuildRequires: config(netcfg)
%if 0%{?suse_version} == 1110 %if 0%{?suse_version} == 1110
# GCC 5 is only available in the SUSE:SLE-11:SP4:Update repository (SDK). # GCC 5 is only available in the SUSE:SLE-11:SP4:Update repository (SDK).
%if %node_version_number >= 8 %if %node_version_number >= 8
BuildRequires: gcc5-c++ BuildRequires: gcc5-c++
%define forced_gcc_version 5 %define forced_gcc_version 5
%else %else
BuildRequires: gcc48-c++ BuildRequires: gcc48-c++
%define forced_gcc_version 4.8 %define forced_gcc_version 4.8
%endif %endif
%endif %endif
@ -212,15 +213,15 @@ BuildRequires: gcc48-c++
# for SLE-12:Update targets # for SLE-12:Update targets
%if 0%{?suse_version} == 1315 %if 0%{?suse_version} == 1315
%if %node_version_number >= 17 %if %node_version_number >= 17
BuildRequires: gcc12-c++ BuildRequires: gcc12-c++
%define forced_gcc_version 12 %define forced_gcc_version 12
%else %else
%if %node_version_number >= 14 %if %node_version_number >= 14
BuildRequires: gcc9-c++ BuildRequires: gcc9-c++
%define forced_gcc_version 9 %define forced_gcc_version 9
%else %else
%if %node_version_number >= 8 %if %node_version_number >= 8
BuildRequires: gcc7-c++ BuildRequires: gcc7-c++
%define forced_gcc_version 7 %define forced_gcc_version 7
%endif %endif
%endif %endif
@ -229,7 +230,7 @@ BuildRequires: gcc7-c++
%if 0%{?suse_version} == 1500 %if 0%{?suse_version} == 1500
%if %node_version_number >= 17 %if %node_version_number >= 17
BuildRequires: gcc12-c++ BuildRequires: gcc12-c++
%define forced_gcc_version 12 %define forced_gcc_version 12
%endif %endif
%endif %endif
@ -244,11 +245,19 @@ BuildRequires: gcc-c++
# Python dependencies # Python dependencies
%if %node_version_number >= 14 %if %node_version_number >= 14
%if 0%{?suse_version} && 0%{?suse_version} < 1500 %if 0%{?suse_version}
%if 0%{?suse_version} < 1500
BuildRequires: python36 BuildRequires: python36
%define forced_python_version 3.6m %define forced_python_version 3.6m
%else %endif
%if %{?suse_version} == 1500
BuildRequires: python311
%define forced_python_version 3.11
%endif
%if %{?suse_version} > 1500
BuildRequires: python3 BuildRequires: python3
BuildRequires: python3-setuptools
%endif
%endif %endif
%else %else
@ -297,7 +306,7 @@ BuildRequires: openssl >= %{openssl_req_ver}
%else %else
# bundled openssl # bundled openssl
%if %node_version_number <= 12 && 0%{?suse_version} == 1315 && 0%{?sle_version} < 120400 %if %node_version_number <= 12 && 0%{?suse_version} == 1315 && 0%{?sle_version} < 120400
Provides: bundled(openssl) = 3.0.13 Provides: bundled(openssl) = 3.0.15
%else %else
BuildRequires: bundled_openssl_should_not_be_required BuildRequires: bundled_openssl_should_not_be_required
%endif %endif
@ -308,7 +317,11 @@ BuildRequires: bundled_openssl_should_not_be_required
%if ! 0%{with intree_cares} %if ! 0%{with intree_cares}
BuildRequires: pkgconfig(libcares) >= 1.17.0 BuildRequires: pkgconfig(libcares) >= 1.17.0
%else %else
Provides: bundled(libcares2) = 1.28.1 Provides: bundled(libcares2) = 1.33.1
%endif
%if %node_version_number >= 22 && 0%{?suse_version} > 1500
BuildRequires: sqlite3-devel
%endif %endif
%if ! 0%{with intree_icu} %if ! 0%{with intree_icu}
@ -382,17 +395,17 @@ BuildRequires: pkgconfig(libbrotlidec)
Provides: bundled(llhttp) = 8.1.2 Provides: bundled(llhttp) = 8.1.2
Provides: bundled(ngtcp2) = 1.1.0 Provides: bundled(ngtcp2) = 1.1.0
Provides: bundled(base64) = 0.5.2 Provides: bundled(base64) = 0.5.2
Provides: bundled(simdutf) = 5.2.8 Provides: bundled(simdutf) = 5.5.0
# bundled url-ada parser, not ada # bundled url-ada parser, not ada
Provides: bundled(ada) = 2.7.8 Provides: bundled(ada) = 2.9.0
Provides: bundled(node-acorn) = 8.11.3 Provides: bundled(node-acorn) = 8.12.1
Provides: bundled(node-acorn-walk) = 8.3.2 Provides: bundled(node-acorn-walk) = 8.3.4
Provides: bundled(node-cjs-module-lexer) = 1.2.2 Provides: bundled(node-cjs-module-lexer) = 1.4.1
Provides: bundled(node-corepack) = 0.28.1 Provides: bundled(node-corepack) = 0.29.4
Provides: bundled(node-minimatch) = 9.0.4 Provides: bundled(node-minimatch) = 10.0.1
Provides: bundled(node-undici) = 6.13.0 Provides: bundled(node-undici) = 6.21.1
%description %description
Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js
@ -421,7 +434,7 @@ Requires: nodejs-common
Requires: nodejs20 = %{version} Requires: nodejs20 = %{version}
Provides: nodejs-npm = %{version} Provides: nodejs-npm = %{version}
Obsoletes: nodejs-npm < 4.0.0 Obsoletes: nodejs-npm < 4.0.0
Provides: npm(npm) = 10.7.0 Provides: npm(npm) = 10.8.2
Provides: npm = %{version} Provides: npm = %{version}
%if 0%{?suse_version} >= 1500 %if 0%{?suse_version} >= 1500
%if %{node_version_number} >= 10 %if %{node_version_number} >= 10
@ -439,24 +452,23 @@ Provides: bundled(node-ansi-styles) = 6.2.1
Provides: bundled(node-aproba) = 2.0.0 Provides: bundled(node-aproba) = 2.0.0
Provides: bundled(node-archy) = 1.0.0 Provides: bundled(node-archy) = 1.0.0
Provides: bundled(node-balanced-match) = 1.0.2 Provides: bundled(node-balanced-match) = 1.0.2
Provides: bundled(node-bin-links) = 4.0.3 Provides: bundled(node-bin-links) = 4.0.4
Provides: bundled(node-binary-extensions) = 2.3.0 Provides: bundled(node-binary-extensions) = 2.3.0
Provides: bundled(node-brace-expansion) = 2.0.1 Provides: bundled(node-brace-expansion) = 2.0.1
Provides: bundled(node-builtins) = 5.1.0 Provides: bundled(node-cacache) = 18.0.3
Provides: bundled(node-cacache) = 18.0.2
Provides: bundled(node-chalk) = 5.3.0 Provides: bundled(node-chalk) = 5.3.0
Provides: bundled(node-chownr) = 2.0.0 Provides: bundled(node-chownr) = 2.0.0
Provides: bundled(node-ci-info) = 4.0.0 Provides: bundled(node-ci-info) = 4.0.0
Provides: bundled(node-cidr-regex) = 4.0.5 Provides: bundled(node-cidr-regex) = 4.1.1
Provides: bundled(node-clean-stack) = 2.2.0 Provides: bundled(node-clean-stack) = 2.2.0
Provides: bundled(node-cli-columns) = 4.0.0 Provides: bundled(node-cli-columns) = 4.0.0
Provides: bundled(node-cmd-shim) = 6.0.2 Provides: bundled(node-cmd-shim) = 6.0.3
Provides: bundled(node-color-convert) = 2.0.1 Provides: bundled(node-color-convert) = 2.0.1
Provides: bundled(node-color-name) = 1.1.4 Provides: bundled(node-color-name) = 1.1.4
Provides: bundled(node-common-ancestor-path) = 1.0.1 Provides: bundled(node-common-ancestor-path) = 1.0.1
Provides: bundled(node-cross-spawn) = 7.0.3 Provides: bundled(node-cross-spawn) = 7.0.3
Provides: bundled(node-cssesc) = 3.0.0 Provides: bundled(node-cssesc) = 3.0.0
Provides: bundled(node-debug) = 4.3.4 Provides: bundled(node-debug) = 4.3.5
Provides: bundled(node-diff) = 5.2.0 Provides: bundled(node-diff) = 5.2.0
Provides: bundled(node-eastasianwidth) = 0.2.0 Provides: bundled(node-eastasianwidth) = 0.2.0
Provides: bundled(node-emoji-regex) = 8.0.0 Provides: bundled(node-emoji-regex) = 8.0.0
@ -466,60 +478,55 @@ Provides: bundled(node-env-paths) = 2.2.1
Provides: bundled(node-err-code) = 2.0.3 Provides: bundled(node-err-code) = 2.0.3
Provides: bundled(node-exponential-backoff) = 3.1.1 Provides: bundled(node-exponential-backoff) = 3.1.1
Provides: bundled(node-fastest-levenshtein) = 1.0.16 Provides: bundled(node-fastest-levenshtein) = 1.0.16
Provides: bundled(node-foreground-child) = 3.1.1 Provides: bundled(node-foreground-child) = 3.2.1
Provides: bundled(node-fs-minipass) = 2.1.0 Provides: bundled(node-fs-minipass) = 2.1.0
Provides: bundled(node-fs-minipass) = 3.0.3 Provides: bundled(node-fs-minipass) = 3.0.3
Provides: bundled(node-function-bind) = 1.1.2 Provides: bundled(node-glob) = 10.4.2
Provides: bundled(node-glob) = 10.3.12
Provides: bundled(node-graceful-fs) = 4.2.11 Provides: bundled(node-graceful-fs) = 4.2.11
Provides: bundled(node-hasown) = 2.0.2 Provides: bundled(node-hosted-git-info) = 7.0.2
Provides: bundled(node-hosted-git-info) = 7.0.1
Provides: bundled(node-http-cache-semantics) = 4.1.1 Provides: bundled(node-http-cache-semantics) = 4.1.1
Provides: bundled(node-http-proxy-agent) = 7.0.2 Provides: bundled(node-http-proxy-agent) = 7.0.2
Provides: bundled(node-https-proxy-agent) = 7.0.4 Provides: bundled(node-https-proxy-agent) = 7.0.5
Provides: bundled(node-iconv-lite) = 0.6.3 Provides: bundled(node-iconv-lite) = 0.6.3
Provides: bundled(node-ignore-walk) = 6.0.4 Provides: bundled(node-ignore-walk) = 6.0.5
Provides: bundled(node-imurmurhash) = 0.1.4 Provides: bundled(node-imurmurhash) = 0.1.4
Provides: bundled(node-indent-string) = 4.0.0 Provides: bundled(node-indent-string) = 4.0.0
Provides: bundled(node-ini) = 4.1.2 Provides: bundled(node-ini) = 4.1.3
Provides: bundled(node-init-package-json) = 6.0.2 Provides: bundled(node-init-package-json) = 6.0.3
Provides: bundled(node-ip-address) = 9.0.5 Provides: bundled(node-ip-address) = 9.0.5
Provides: bundled(node-ip-regex) = 5.0.0 Provides: bundled(node-ip-regex) = 5.0.0
Provides: bundled(node-is-cidr) = 5.0.5 Provides: bundled(node-is-cidr) = 5.1.0
Provides: bundled(node-is-core-module) = 2.13.1
Provides: bundled(node-is-fullwidth-code-point) = 3.0.0 Provides: bundled(node-is-fullwidth-code-point) = 3.0.0
Provides: bundled(node-is-lambda) = 1.0.1 Provides: bundled(node-is-lambda) = 1.0.1
Provides: bundled(node-isexe) = 2.0.0 Provides: bundled(node-isexe) = 2.0.0
Provides: bundled(node-isexe) = 3.1.1 Provides: bundled(node-isexe) = 3.1.1
Provides: bundled(node-jackspeak) = 2.3.6 Provides: bundled(node-jackspeak) = 3.4.0
Provides: bundled(node-jsbn) = 1.1.0 Provides: bundled(node-jsbn) = 1.1.0
Provides: bundled(node-json-parse-even-better-errors) = 3.0.1 Provides: bundled(node-json-parse-even-better-errors) = 3.0.2
Provides: bundled(node-json-stringify-nice) = 1.1.4 Provides: bundled(node-json-stringify-nice) = 1.1.4
Provides: bundled(node-jsonparse) = 1.3.1 Provides: bundled(node-jsonparse) = 1.3.1
Provides: bundled(node-just-diff) = 6.0.2 Provides: bundled(node-just-diff) = 6.0.2
Provides: bundled(node-just-diff-apply) = 5.5.0 Provides: bundled(node-just-diff-apply) = 5.5.0
Provides: bundled(node-libnpmaccess) = 8.0.5 Provides: bundled(node-libnpmaccess) = 8.0.6
Provides: bundled(node-libnpmdiff) = 6.1.1 Provides: bundled(node-libnpmdiff) = 6.1.4
Provides: bundled(node-libnpmexec) = 8.1.0 Provides: bundled(node-libnpmexec) = 8.1.3
Provides: bundled(node-libnpmfund) = 5.0.9 Provides: bundled(node-libnpmfund) = 5.0.12
Provides: bundled(node-libnpmhook) = 10.0.4 Provides: bundled(node-libnpmhook) = 10.0.5
Provides: bundled(node-libnpmorg) = 6.0.5 Provides: bundled(node-libnpmorg) = 6.0.6
Provides: bundled(node-libnpmpack) = 7.0.1 Provides: bundled(node-libnpmpack) = 7.0.4
Provides: bundled(node-libnpmpublish) = 9.0.7 Provides: bundled(node-libnpmpublish) = 9.0.9
Provides: bundled(node-libnpmsearch) = 7.0.4 Provides: bundled(node-libnpmsearch) = 7.0.6
Provides: bundled(node-libnpmteam) = 6.0.4 Provides: bundled(node-libnpmteam) = 6.0.5
Provides: bundled(node-libnpmversion) = 6.0.1 Provides: bundled(node-libnpmversion) = 6.0.3
Provides: bundled(node-lru-cache) = 10.2.2 Provides: bundled(node-lru-cache) = 10.2.2
Provides: bundled(node-lru-cache) = 6.0.0
Provides: bundled(node-make-fetch-happen) = 13.0.1 Provides: bundled(node-make-fetch-happen) = 13.0.1
Provides: bundled(node-minimatch) = 9.0.4 Provides: bundled(node-minimatch) = 9.0.5
Provides: bundled(node-minipass) = 3.3.6 Provides: bundled(node-minipass) = 3.3.6
Provides: bundled(node-minipass) = 5.0.0 Provides: bundled(node-minipass) = 5.0.0
Provides: bundled(node-minipass) = 7.0.4 Provides: bundled(node-minipass) = 7.1.2
Provides: bundled(node-minipass-collect) = 2.0.1 Provides: bundled(node-minipass-collect) = 2.0.1
Provides: bundled(node-minipass-fetch) = 3.0.4 Provides: bundled(node-minipass-fetch) = 3.0.5
Provides: bundled(node-minipass-flush) = 1.0.5 Provides: bundled(node-minipass-flush) = 1.0.5
Provides: bundled(node-minipass-json-stream) = 1.0.1
Provides: bundled(node-minipass-pipeline) = 1.2.4 Provides: bundled(node-minipass-pipeline) = 1.2.4
Provides: bundled(node-minipass-sized) = 1.0.3 Provides: bundled(node-minipass-sized) = 1.0.3
Provides: bundled(node-minizlib) = 2.1.2 Provides: bundled(node-minizlib) = 2.1.2
@ -529,24 +536,25 @@ Provides: bundled(node-ms) = 2.1.3
Provides: bundled(node-mute-stream) = 1.0.0 Provides: bundled(node-mute-stream) = 1.0.0
Provides: bundled(node-negotiator) = 0.6.3 Provides: bundled(node-negotiator) = 0.6.3
Provides: bundled(node-node-gyp) = 10.1.0 Provides: bundled(node-node-gyp) = 10.1.0
Provides: bundled(node-nopt) = 7.2.0 Provides: bundled(node-nopt) = 7.2.1
Provides: bundled(node-normalize-package-data) = 6.0.0 Provides: bundled(node-normalize-package-data) = 6.0.2
Provides: bundled(node-npm-audit-report) = 5.0.0 Provides: bundled(node-npm-audit-report) = 5.0.0
Provides: bundled(node-npm-bundled) = 3.0.0 Provides: bundled(node-npm-bundled) = 3.0.1
Provides: bundled(node-npm-install-checks) = 6.3.0 Provides: bundled(node-npm-install-checks) = 6.3.0
Provides: bundled(node-npm-normalize-package-bin) = 3.0.1 Provides: bundled(node-npm-normalize-package-bin) = 3.0.1
Provides: bundled(node-npm-package-arg) = 11.0.2 Provides: bundled(node-npm-package-arg) = 11.0.2
Provides: bundled(node-npm-packlist) = 8.0.2 Provides: bundled(node-npm-packlist) = 8.0.2
Provides: bundled(node-npm-pick-manifest) = 9.0.0 Provides: bundled(node-npm-pick-manifest) = 9.1.0
Provides: bundled(node-npm-profile) = 9.0.2 Provides: bundled(node-npm-profile) = 10.0.0
Provides: bundled(node-npm-registry-fetch) = 17.0.0 Provides: bundled(node-npm-registry-fetch) = 17.1.0
Provides: bundled(node-npm-user-validate) = 2.0.0 Provides: bundled(node-npm-user-validate) = 2.0.1
Provides: bundled(node-p-map) = 4.0.0 Provides: bundled(node-p-map) = 4.0.0
Provides: bundled(node-pacote) = 18.0.3 Provides: bundled(node-package-json-from-dist) = 1.0.0
Provides: bundled(node-pacote) = 18.0.6
Provides: bundled(node-parse-conflict-json) = 3.0.1 Provides: bundled(node-parse-conflict-json) = 3.0.1
Provides: bundled(node-path-key) = 3.1.1 Provides: bundled(node-path-key) = 3.1.1
Provides: bundled(node-path-scurry) = 1.10.2 Provides: bundled(node-path-scurry) = 1.11.1
Provides: bundled(node-postcss-selector-parser) = 6.0.16 Provides: bundled(node-postcss-selector-parser) = 6.1.0
Provides: bundled(node-proc-log) = 3.0.0 Provides: bundled(node-proc-log) = 3.0.0
Provides: bundled(node-proc-log) = 4.2.0 Provides: bundled(node-proc-log) = 4.2.0
Provides: bundled(node-proggy) = 2.0.0 Provides: bundled(node-proggy) = 2.0.0
@ -554,28 +562,28 @@ Provides: bundled(node-promise-all-reject-late) = 1.0.1
Provides: bundled(node-promise-call-limit) = 3.0.1 Provides: bundled(node-promise-call-limit) = 3.0.1
Provides: bundled(node-promise-inflight) = 1.0.1 Provides: bundled(node-promise-inflight) = 1.0.1
Provides: bundled(node-promise-retry) = 2.0.1 Provides: bundled(node-promise-retry) = 2.0.1
Provides: bundled(node-promzard) = 1.0.1 Provides: bundled(node-promzard) = 1.0.2
Provides: bundled(node-qrcode-terminal) = 0.12.0 Provides: bundled(node-qrcode-terminal) = 0.12.0
Provides: bundled(node-read) = 3.0.1 Provides: bundled(node-read) = 3.0.1
Provides: bundled(node-read-cmd-shim) = 4.0.0 Provides: bundled(node-read-cmd-shim) = 4.0.0
Provides: bundled(node-read-package-json-fast) = 3.0.2 Provides: bundled(node-read-package-json-fast) = 3.0.2
Provides: bundled(node-retry) = 0.12.0 Provides: bundled(node-retry) = 0.12.0
Provides: bundled(node-safer-buffer) = 2.1.2 Provides: bundled(node-safer-buffer) = 2.1.2
Provides: bundled(node-semver) = 7.6.0 Provides: bundled(node-semver) = 7.6.2
Provides: bundled(node-shebang-command) = 2.0.0 Provides: bundled(node-shebang-command) = 2.0.0
Provides: bundled(node-shebang-regex) = 3.0.0 Provides: bundled(node-shebang-regex) = 3.0.0
Provides: bundled(node-signal-exit) = 4.1.0 Provides: bundled(node-signal-exit) = 4.1.0
Provides: bundled(node-sigstore) = 2.3.0 Provides: bundled(node-sigstore) = 2.3.1
Provides: bundled(node-smart-buffer) = 4.2.0 Provides: bundled(node-smart-buffer) = 4.2.0
Provides: bundled(node-socks) = 2.8.3 Provides: bundled(node-socks) = 2.8.3
Provides: bundled(node-socks-proxy-agent) = 8.0.3 Provides: bundled(node-socks-proxy-agent) = 8.0.4
Provides: bundled(node-spdx-correct) = 3.2.0 Provides: bundled(node-spdx-correct) = 3.2.0
Provides: bundled(node-spdx-exceptions) = 2.5.0 Provides: bundled(node-spdx-exceptions) = 2.5.0
Provides: bundled(node-spdx-expression-parse) = 3.0.1 Provides: bundled(node-spdx-expression-parse) = 3.0.1
Provides: bundled(node-spdx-expression-parse) = 4.0.0 Provides: bundled(node-spdx-expression-parse) = 4.0.0
Provides: bundled(node-spdx-license-ids) = 3.0.17 Provides: bundled(node-spdx-license-ids) = 3.0.18
Provides: bundled(node-sprintf-js) = 1.1.3 Provides: bundled(node-sprintf-js) = 1.1.3
Provides: bundled(node-ssri) = 10.0.5 Provides: bundled(node-ssri) = 10.0.6
Provides: bundled(node-string-width) = 4.2.3 Provides: bundled(node-string-width) = 4.2.3
Provides: bundled(node-string-width) = 5.1.2 Provides: bundled(node-string-width) = 5.1.2
Provides: bundled(node-strip-ansi) = 6.0.1 Provides: bundled(node-strip-ansi) = 6.0.1
@ -585,12 +593,12 @@ Provides: bundled(node-tar) = 6.2.1
Provides: bundled(node-text-table) = 0.2.0 Provides: bundled(node-text-table) = 0.2.0
Provides: bundled(node-tiny-relative-date) = 1.3.0 Provides: bundled(node-tiny-relative-date) = 1.3.0
Provides: bundled(node-treeverse) = 3.0.0 Provides: bundled(node-treeverse) = 3.0.0
Provides: bundled(node-tuf-js) = 2.2.0 Provides: bundled(node-tuf-js) = 2.2.1
Provides: bundled(node-unique-filename) = 3.0.0 Provides: bundled(node-unique-filename) = 3.0.0
Provides: bundled(node-unique-slug) = 4.0.0 Provides: bundled(node-unique-slug) = 4.0.0
Provides: bundled(node-util-deprecate) = 1.0.2 Provides: bundled(node-util-deprecate) = 1.0.2
Provides: bundled(node-validate-npm-package-license) = 3.0.4 Provides: bundled(node-validate-npm-package-license) = 3.0.4
Provides: bundled(node-validate-npm-package-name) = 5.0.0 Provides: bundled(node-validate-npm-package-name) = 5.0.1
Provides: bundled(node-walk-up-path) = 3.0.1 Provides: bundled(node-walk-up-path) = 3.0.1
Provides: bundled(node-which) = 2.0.2 Provides: bundled(node-which) = 2.0.2
Provides: bundled(node-which) = 4.0.0 Provides: bundled(node-which) = 4.0.0
@ -673,6 +681,7 @@ popd
%if 0%{with valgrind_tests} %if 0%{with valgrind_tests}
%endif %endif
%patch -P 13 -p1 %patch -P 13 -p1
%patch -P 82 -p1
%patch -P 100 -p1 %patch -P 100 -p1
%patch -P 101 -p1 %patch -P 101 -p1
%if 0%{?suse_version} >= 1500 || 0%{?suse_version} == 0 %if 0%{?suse_version} >= 1500 || 0%{?suse_version} == 0
@ -789,6 +798,9 @@ EOF
%if %{node_version_number} < 19 %if %{node_version_number} < 19
--without-dtrace \ --without-dtrace \
%endif %endif
%if %{node_version_number} >= 22 && 0%{?suse_version} > 1500
--shared-sqlite \
%endif
%if %{node_version_number} >= 16 && (0%{?suse_version} > 1550 || 0%{?sle_version} >= 150400) %if %{node_version_number} >= 16 && (0%{?suse_version} > 1550 || 0%{?sle_version} >= 150400)
--openssl-default-cipher-list=PROFILE=SYSTEM \ --openssl-default-cipher-list=PROFILE=SYSTEM \
%endif %endif
@ -929,6 +941,7 @@ rm test/parallel/test-strace-openat-openssl.js
%if 0%{?forced_python_version:1} %if 0%{?forced_python_version:1}
sed -i -e "s,'python3','python%{forced_python_version}'," test/parallel/test-child-process-set-blocking.js sed -i -e "s,'python3','python%{forced_python_version}'," test/parallel/test-child-process-set-blocking.js
test -e tools/pseudo-tty.py && sed -i -e "s,^#!/usr/bin/env python3$,#!/usr/bin/python%{forced_python_version}," tools/pseudo-tty.py ||: test -e tools/pseudo-tty.py && sed -i -e "s,^#!/usr/bin/env python3$,#!/usr/bin/python%{forced_python_version}," tools/pseudo-tty.py ||:
export PYTHON="/usr/bin/python%{forced_python_version}"
%endif %endif
ln addon-rpm.gypi deps/npm/node_modules/node-gyp/addon-rpm.gypi ln addon-rpm.gypi deps/npm/node_modules/node-gyp/addon-rpm.gypi
@ -943,6 +956,8 @@ rm test/parallel/test-dns-cancel-reverse-lookup.js \
test/parallel/test-dns-resolveany.js test/parallel/test-dns-resolveany.js
# multicast test fail since no socket? # multicast test fail since no socket?
rm test/parallel/test-dgram-membership.js rm test/parallel/test-dgram-membership.js
# ::1 not defined in OBS on TW - https://github.com/openSUSE/obs-build/issues/848
rm test/report/test-report-exclude-network.js
%if %{node_version_number} >= 18 %if %{node_version_number} >= 18
# OBS broken /etc/hosts -- https://github.com/openSUSE/open-build-service/issues/13104 # OBS broken /etc/hosts -- https://github.com/openSUSE/open-build-service/issues/13104