Sync from SUSE:ALP:Source:Standard:1.0 nodejs20 revision 5d1a80ee6af19d06fa0d5bdb9470c213

This commit is contained in:
Adrian Schröter 2024-03-01 23:03:33 +01:00
parent a5cdf6b60e
commit affdda8525
11 changed files with 321 additions and 180 deletions

View File

@ -1,41 +1,41 @@
eea26c68c1f4799fc3ac3f2da9bfd4038b987d51d19d9c4ba8b145b3eee53c7d node-v20.8.1-aix-ppc64.tar.gz
93a5796c02c4e97378d6d0e2fcd8ac7b39418d97c21cf9aa6d9aa605814a1bff node-v20.8.1-arm64.msi
5451f3651c89cd8f224e74961c84e68f4c8d63fe288431a3223b0465cc8b961e node-v20.8.1-darwin-arm64.tar.gz
147e700ec86f8dbb8428600675673de303eb8710273b531031e5e9f3cde64644 node-v20.8.1-darwin-arm64.tar.xz
92b00b357c311eb45dd86516b032d80c63894aa069821c3ae3c8b3bbd00fdb9a node-v20.8.1-darwin-x64.tar.gz
679843744b44ac897479fd53340fdc6d96e5b5c139e90b9cdcbad8a403eaf807 node-v20.8.1-darwin-x64.tar.xz
b2db83feb961721f17142e792643974b04456cf2da34c22da3ac29cd00123226 node-v20.8.1-headers.tar.gz
298e41b8d7fd17738049f9c5f6e315bb0f935ab90f9b542d1a55cf6488cc3d67 node-v20.8.1-headers.tar.xz
c0420fef5f6e637888be3f400e99297bb844932166fbad5ffa4f188ce59cfcdf node-v20.8.1-linux-arm64.tar.gz
fec6edefa7ff959b29c7887735582ff2a2211b36a65a539da0f37db6797b7cff node-v20.8.1-linux-arm64.tar.xz
679fb1cc74ecc460b4a8178b90be2847af28ee817fa2f39d986c832405c0ee1e node-v20.8.1-linux-armv7l.tar.gz
f8370aaecd2cc2f26f8571aed7ffcf8efb6dc884a9a5e8e7a5e225e5ccfe6b74 node-v20.8.1-linux-armv7l.tar.xz
162bbf69b2c1aefc8163c371324cfd70582b8527e7623436d6e53823987a23d2 node-v20.8.1-linux-ppc64le.tar.gz
648d80fcb4a160e3078a66b3fc8c8eac669d28de3cfa533abed0bf8cb5af5785 node-v20.8.1-linux-ppc64le.tar.xz
d6a384293f18ba49b7507b67ce2ca1958050930768cae817d4705c3d3e672af2 node-v20.8.1-linux-s390x.tar.gz
4aa14458f2bac422989cc4526c431b14743c2f07889559fd1f2163cc6f3071f4 node-v20.8.1-linux-s390x.tar.xz
a42ac1f81704b14c7d07ddde989a8e290087b0487ee3f47185eb0240ba518195 node-v20.8.1-linux-x64.tar.gz
44096f6276cf735f3b25f47ffaaa1629b0abad4d9932c3a77d9dcdc743a3ff92 node-v20.8.1-linux-x64.tar.xz
abd016ae0dd943b196510e67277542c9cd31d24fbfa6834116a485d2c1d2b882 node-v20.8.1-win-arm64.7z
fbf7709c815f37577995d04b2cc41764033f06545c2c142d253ed257fe497960 node-v20.8.1-win-arm64.zip
6b3cb0e8d347ac52f0c45ba27a8c6f099b8053f18dfe7f6802e21c0b312aaedf node-v20.8.1-win-x64.7z
90b27dab351a582edd3a8de2e8aaa80d95c41f19fe92ebbef83b9a45bac95d00 node-v20.8.1-win-x64.zip
ea692ad4bb1e80156aa6143c39afda2cfd0d46c36e14a1e03064a5bd084f05cc node-v20.8.1-win-x86.7z
ba90977d0bee226db2dc89f55a3964eee4d844caef96e4db6994e1800d9c7dce node-v20.8.1-win-x86.zip
c364cda2bab611b08404d5f8c93913b0007b3a19830a27dee5ff5d466807f5eb node-v20.8.1-x64.msi
4f3daffb3124c08a31ebeca0a6b9aa4e4effcd5650c1fe1274c61343fb46689c node-v20.8.1-x86.msi
097897aa8489962e955700d75238230e8295fbc02a27bcdd53d4462ead2c8c7e node-v20.8.1.pkg
18aed385341bc16c7802e9d03189d1d0ad17b87923b2cdf11714d36534783b6a node-v20.8.1.tar.gz
f799c66f6a6386bb8ac2c75a378f740c455e97f1fe964393dd39c9f9f6efbc70 node-v20.8.1.tar.xz
60a3d73fb1d376e6ed0a8b8e6734ab6c80aaa031fa023fd1be42276cc80dff93 win-arm64/node.exe
90cb9fbf80b276f2ed039533a8b67f1aeaf204f0aaf6396b290ae9c4dcd6d690 win-arm64/node.lib
6887174c70c5ca8941b9e2bad9b02bb5413158590ec5457f4497bb66d685a545 win-arm64/node_pdb.7z
3824fb4b85c8f8086f0c33c4e906c1ac448cd6259949a06d6956e2b1b300befe win-arm64/node_pdb.zip
ccc62758d85434502141611b18af5fdbbc5c9087facaf4a7900d454f3d2fdd48 win-x64/node.exe
45d2519b3be3655e7b52ffcee613a484c38e768a59e9b9d4f08a3580d76a768a win-x64/node.lib
e98706e1126309275692c0d318a0f1c54a50ae2447c11e3bcc1c6c261dced63a win-x64/node_pdb.7z
9840a61ea4dea5128c20632f367e1bed2d2ace5fa008fe29b3ae28a9f4c21805 win-x64/node_pdb.zip
1c6ddd284a55664f0b2514bed7fcfe1fafcfec06f6dd07e82fefad9bb10aac60 win-x86/node.exe
0809f4b2f415581f7d932d80be4ac3ff7c4344421f7cccb34ff2f30c18c2ba0c win-x86/node.lib
63f95d51077f2dd0360c57cc4286cc74a740391b04b63fd04914583007e8cf10 win-x86/node_pdb.7z
108b21fc46465197cb4c07df4b25143b2a5d348b30e0d64c2536472fd94cba3e win-x86/node_pdb.zip
43a881788549e1b3425eb5f2b92608f438f146e08213de09c5bd5ff841cae7ae node-v20.11.1-aix-ppc64.tar.gz
3f8e77b775372c0b27d2b85ce899d80339691f480e64dde43d4eb01504a58679 node-v20.11.1-arm64.msi
e0065c61f340e85106a99c4b54746c5cee09d59b08c5712f67f99e92aa44995d node-v20.11.1-darwin-arm64.tar.gz
fd771bf3881733bfc0622128918ae6baf2ed1178146538a53c30ac2f7006af5b node-v20.11.1-darwin-arm64.tar.xz
c52e7fb0709dbe63a4cbe08ac8af3479188692937a7bd8e776e0eedfa33bb848 node-v20.11.1-darwin-x64.tar.gz
ed69f1f300beb75fb4cad45d96aacd141c3ddca03b6d77c76b42cb258202363d node-v20.11.1-darwin-x64.tar.xz
0aa42c91b441e945ff43bd3a837759c58b436de57dcd033d02e5cbcd2fba1f87 node-v20.11.1-headers.tar.gz
edce238817acf5adce3123366b55304aff2a1f0849231d1b49f42370e454b6f8 node-v20.11.1-headers.tar.xz
e34ab2fc2726b4abd896bcbff0250e9b2da737cbd9d24267518a802ed0606f3b node-v20.11.1-linux-arm64.tar.gz
c957f29eb4e341903520caf362534f0acd1db7be79c502ae8e283994eed07fe1 node-v20.11.1-linux-arm64.tar.xz
e42791f76ece283c7a4b97fbf716da72c5128c54a9779f10f03ae74a4bcfb8f6 node-v20.11.1-linux-armv7l.tar.gz
28e0120d2d150a8f41717899d33167b8b32053778665583d49ff971bfd188d1b node-v20.11.1-linux-armv7l.tar.xz
9823305ac3a66925a9b61d8032f6bbb4c3e33c28e7f957ebb27e49732feffb23 node-v20.11.1-linux-ppc64le.tar.gz
51343cacf5cdf5c4b5e93e919d19dd373d6ef43d5f2c666eae299f26e31d08b5 node-v20.11.1-linux-ppc64le.tar.xz
4c66b2f247fdd8720853321526d7cda483018fcb32014b75c30f3a54ecacaea7 node-v20.11.1-linux-s390x.tar.gz
b32616b705cd0ddbb230b95c693e3d7a37becc2ced9bcadea8dc824cceed6be0 node-v20.11.1-linux-s390x.tar.xz
bf3a779bef19452da90fb88358ec2c57e0d2f882839b20dc6afc297b6aafc0d7 node-v20.11.1-linux-x64.tar.gz
d8dab549b09672b03356aa2257699f3de3b58c96e74eb26a8b495fbdc9cf6fbe node-v20.11.1-linux-x64.tar.xz
f1cd449fcbeb1b948e8498cb8edd9655fa319d109a7f4c5bd96a9b122b91538a node-v20.11.1-win-arm64.7z
e85461ec124956a2853c4ee6e13c4f4889d63c88beb3d530c1ee0c4b51dc10e7 node-v20.11.1-win-arm64.zip
fb9b5348259988a562a48eed7349e7e716c0bec78d98ad0a336b2993a8b3bf34 node-v20.11.1-win-x64.7z
bc032628d77d206ffa7f133518a6225a9c5d6d9210ead30d67e294ff37044bda node-v20.11.1-win-x64.zip
c2b1863d8979546804a39fc63d0a9bc9c6e49cb2f6c9d1e52844a24629b24765 node-v20.11.1-win-x86.7z
b98e95f78416d1359b647cfa09ba2a48b76d41b56a776df822bf36ffe8e76a2d node-v20.11.1-win-x86.zip
c54f5f7e2416e826fd84e878f28e3b53363ae9c3f60a140af4434b2453b5ae89 node-v20.11.1-x64.msi
63e2aed4dabb96eed6903a3974e006d3c29c218472aac60ae3c3c7de00df13b1 node-v20.11.1-x86.msi
c46019a095a1549d000e85da13f17972a448e0be5854a51786ecccde7278a012 node-v20.11.1.pkg
4af1ba6ea848cc05908b8a62b02fb27684dd52b2a7988ee82b0cfa72deb90b94 node-v20.11.1.tar.gz
77813edbf3f7f16d2d35d3353443dee4e61d5ee84d9e3138c7538a3c0ca5209e node-v20.11.1.tar.xz
a5a9d30a8f7d56e00ccb27c1a7d24c8d0bc96a2689ebba8eb7527698793496f1 win-arm64/node.exe
93529170cebe57c0f4830a4cc6a261b6cc9bcf0cd8b3e88ac4995a5015031d79 win-arm64/node.lib
c14c6e927406b8683cbfb8a67ca4c8fd5093ca7812b5b1627e3d6a53d3674565 win-arm64/node_pdb.7z
68034cd09d8dfaa755d1b280da13e20388cc486ac57b037b3e11dfe2d6b74284 win-arm64/node_pdb.zip
bc585910690318aaebe3c57669cb83ca9d1e5791efd63195e238f54686e6c2ec win-x64/node.exe
53a982d490cb9fcc4b231a8b95147de423b36186bc6f4ba5697b20117fdcbd5d win-x64/node.lib
ccac9f2f5219ed858aeddb306d6493478ba9675c7cbf009e83742437d6752c4f win-x64/node_pdb.7z
bec5da4035c84580843978a59ef9bcc1c0eaca881cf9e1c94e63a1862cf14421 win-x64/node_pdb.zip
3829137e062b1e2eb9947ef05e4b717ae578a8fce1c5c60fe4f6ae7ef2ec0240 win-x86/node.exe
c5321bb65dcecb3989f9b8f6ec56369c16627ca4bade0c78afb6b88f7dde50e4 win-x86/node.lib
20ca60ced1fc21f15ea952b4406aec6bde39d20eab11cf042040628841b2249e win-x86/node_pdb.7z
bef05cebedce5949ae35e87e7d4789c16fa73caf478483fcf92e5dbb9ba5d774 win-x86/node_pdb.zip

Binary file not shown.

46
c-ares-fixes.patch Normal file
View File

@ -0,0 +1,46 @@
Index: node-v20.11.0/test/parallel/test-dns-resolveany-bad-ancount.js
===================================================================
--- node-v20.11.0.orig/test/parallel/test-dns-resolveany-bad-ancount.js
+++ node-v20.11.0/test/parallel/test-dns-resolveany-bad-ancount.js
@@ -7,6 +7,8 @@ const dgram = require('dgram');
const dnsPromises = dns.promises;
const server = dgram.createSocket('udp4');
+const resolver = new dns.Resolver({ timeout: 100, tries: 1 });
+const resolverPromises = new dnsPromises.Resolver({ timeout: 100, tries: 1 });
server.on('message', common.mustCall((msg, { address, port }) => {
const parsed = dnstools.parseDNSPacket(msg);
@@ -18,16 +20,20 @@ server.on('message', common.mustCall((ms
questions: parsed.questions,
answers: { type: 'A', address: '1.2.3.4', ttl: 123, domain },
});
- // Overwrite the # of answers with 2, which is incorrect.
+ // Overwrite the # of answers with 2, which is incorrect. The response is
+ // discarded in c-ares >= 1.21.0. This is the reason why a small timeout is
+ // used in the `Resolver` constructor. See
+ // https://github.com/nodejs/node/pull/50743#issue-1994909204
buf.writeUInt16LE(2, 6);
server.send(buf, port, address);
}, 2));
server.bind(0, common.mustCall(async () => {
const address = server.address();
- dns.setServers([`127.0.0.1:${address.port}`]);
+ resolver.setServers([`127.0.0.1:${address.port}`]);
+ resolverPromises.setServers([`127.0.0.1:${address.port}`]);
- dnsPromises.resolveAny('example.org')
+ resolverPromises.resolveAny('example.org')
.then(common.mustNotCall())
.catch(common.expectsError({
// May return EBADRESP or ETIMEOUT
@@ -36,7 +42,7 @@ server.bind(0, common.mustCall(async ()
hostname: 'example.org'
}));
- dns.resolveAny('example.org', common.mustCall((err) => {
+ resolver.resolveAny('example.org', common.mustCall((err) => {
assert.notStrictEqual(err.code, 'SUCCESS');
assert.strictEqual(err.syscall, 'queryAny');
assert.strictEqual(err.hostname, 'example.org');

View File

@ -2,10 +2,10 @@ Author: Adam Majer <amajer@suse.de>
Date: Dec 20 09:18:49 UTC 2017
Summary: Fix CI unit tests framework for OBS building
Index: node-v20.8.1/test/parallel/test-module-loading-globalpaths.js
Index: node-v20.11.0/test/parallel/test-module-loading-globalpaths.js
===================================================================
--- node-v20.8.1.orig/test/parallel/test-module-loading-globalpaths.js
+++ node-v20.8.1/test/parallel/test-module-loading-globalpaths.js
--- node-v20.11.0.orig/test/parallel/test-module-loading-globalpaths.js
+++ node-v20.11.0/test/parallel/test-module-loading-globalpaths.js
@@ -11,6 +11,9 @@ const { addLibraryPath } = require('../c
addLibraryPath(process.env);
@ -16,10 +16,10 @@ Index: node-v20.8.1/test/parallel/test-module-loading-globalpaths.js
if (process.argv[2] === 'child') {
console.log(require(pkgName).string);
} else {
Index: node-v20.8.1/test/parallel/test-tls-passphrase.js
Index: node-v20.11.0/test/parallel/test-tls-passphrase.js
===================================================================
--- node-v20.8.1.orig/test/parallel/test-tls-passphrase.js
+++ node-v20.8.1/test/parallel/test-tls-passphrase.js
--- node-v20.11.0.orig/test/parallel/test-tls-passphrase.js
+++ node-v20.11.0/test/parallel/test-tls-passphrase.js
@@ -223,7 +223,7 @@ server.listen(0, common.mustCall(functio
}, onSecureConnect());
})).unref();
@ -29,10 +29,10 @@ Index: node-v20.8.1/test/parallel/test-tls-passphrase.js
// Missing passphrase
assert.throws(function() {
Index: node-v20.8.1/test/parallel/test-repl-envvars.js
Index: node-v20.11.0/test/parallel/test-repl-envvars.js
===================================================================
--- node-v20.8.1.orig/test/parallel/test-repl-envvars.js
+++ node-v20.8.1/test/parallel/test-repl-envvars.js
--- node-v20.11.0.orig/test/parallel/test-repl-envvars.js
+++ node-v20.11.0/test/parallel/test-repl-envvars.js
@@ -2,7 +2,9 @@
// Flags: --expose-internals
@ -44,10 +44,10 @@ Index: node-v20.8.1/test/parallel/test-repl-envvars.js
const stream = require('stream');
const { describe, test } = require('node:test');
const REPL = require('internal/repl');
Index: node-v20.8.1/Makefile
Index: node-v20.11.0/Makefile
===================================================================
--- node-v20.8.1.orig/Makefile
+++ node-v20.8.1/Makefile
--- node-v20.11.0.orig/Makefile
+++ node-v20.11.0/Makefile
@@ -545,7 +545,8 @@ test-ci-js: | clear-stalled
.PHONY: test-ci
# Related CI jobs: most CI tests, excluding node-test-commit-arm-fanned
@ -68,11 +68,11 @@ Index: node-v20.8.1/Makefile
echo "Skipping tools/doc/node_modules (no crypto)"; \
else \
cd tools/doc && $(call available-node,$(run-npm-ci)) \
Index: node-v20.8.1/tools/test.py
Index: node-v20.11.0/tools/test.py
===================================================================
--- node-v20.8.1.orig/tools/test.py
+++ node-v20.8.1/tools/test.py
@@ -1361,7 +1361,7 @@ def BuildOptions():
--- node-v20.11.0.orig/tools/test.py
+++ node-v20.11.0/tools/test.py
@@ -1362,7 +1362,7 @@ def BuildOptions():
result.add_option("-s", "--suite", help="A test suite",
default=[], action="append")
result.add_option("-t", "--timeout", help="Timeout in seconds",
@ -81,18 +81,71 @@ Index: node-v20.8.1/tools/test.py
result.add_option("--arch", help='The architecture to run tests for',
default='none')
result.add_option("--snapshot", help="Run the tests with snapshot turned on",
Index: node-v20.8.1/test/parallel/test-crypto-dh.js
Index: node-v20.11.0/test/parallel/test-crypto-dh.js
===================================================================
--- node-v20.8.1.orig/test/parallel/test-crypto-dh.js
+++ node-v20.8.1/test/parallel/test-crypto-dh.js
@@ -87,9 +87,7 @@ const crypto = require('crypto');
assert.throws(() => {
dh3.computeSecret('');
- }, { message: common.hasOpenSSL3 ?
- 'error:02800080:Diffie-Hellman routines::invalid secret' :
- 'Supplied key is too small' });
--- node-v20.11.0.orig/test/parallel/test-crypto-dh.js
+++ node-v20.11.0/test/parallel/test-crypto-dh.js
@@ -90,9 +90,7 @@ const crypto = require('crypto');
const hasOpenSSL3WithNewErrorMessage = (v >= 0x300000c0 && v <= 0x30100000) || (v >= 0x30100040 && v <= 0x30200000);
assert.throws(() => {
dh3.computeSecret('');
- }, { message: common.hasOpenSSL3 && !hasOpenSSL3WithNewErrorMessage ?
- 'error:02800080:Diffie-Hellman routines::invalid secret' :
- 'Supplied key is too small' });
+ }, /(error:02800080:Diffie-Hellman routines::invalid secret|error:05066066:Diffie-Hellman routines:compute_key:invalid public key|Supplied key is too small)/);
}
}
// Through a fluke of history, g=0 defaults to DH_GENERATOR (2).
Index: node-v20.11.0/test/parallel/test-node-output-errors.mjs
===================================================================
--- node-v20.11.0.orig/test/parallel/test-node-output-errors.mjs
+++ node-v20.11.0/test/parallel/test-node-output-errors.mjs
@@ -28,6 +28,7 @@ describe('errors output', { concurrency:
.replaceAll(/\/(\w)/g, '*$1')
.replaceAll('*test*', '*')
.replaceAll('*fixtures*errors*', '*')
+ .replace(/`node\d+ --/, '`node --')
.replaceAll('file:**', 'file:*/');
}
Index: node-v20.11.0/test/parallel/test-crypto-fips.js
===================================================================
--- node-v20.11.0.orig/test/parallel/test-crypto-fips.js
+++ node-v20.11.0/test/parallel/test-crypto-fips.js
@@ -3,6 +3,8 @@
const common = require('../common');
if (!common.hasCrypto)
common.skip('missing crypto');
+if (common.hasOpenSSL3)
+ common.skip('skipped fips test on openssl 3.x, to be fixed later');
const assert = require('assert');
const spawnSync = require('child_process').spawnSync;
Index: node-v20.11.0/benchmark/misc/startup-cli-version.js
===================================================================
--- node-v20.11.0.orig/benchmark/misc/startup-cli-version.js
+++ node-v20.11.0/benchmark/misc/startup-cli-version.js
@@ -10,9 +10,9 @@ const path = require('path');
// indispensible part of the CLI.
const bench = common.createBenchmark(main, {
cli: [
- 'tools/node_modules/eslint/bin/eslint.js',
'deps/npm/bin/npm-cli.js',
'deps/corepack/dist/corepack.js',
+ 'tools/node_modules/eslint/bin/eslint.js',
],
count: [30],
});
Index: node-v20.11.0/test/parallel/test-node-output-v8-warning.mjs
===================================================================
--- node-v20.11.0.orig/test/parallel/test-node-output-v8-warning.mjs
+++ node-v20.11.0/test/parallel/test-node-output-v8-warning.mjs
@@ -15,7 +15,7 @@ describe('v8 output', { concurrency: tru
.replaceAll('*test*', '*')
.replaceAll(/.*?\*fixtures\*v8\*/g, '(node:*) V8: *') // Replace entire path before fixtures/v8
.replaceAll('*fixtures*v8*', '*')
- .replaceAll('node --', '* --');
+ .replaceAll(/node\d+ --/g, '* --');
}
const common = snapshot
.transform(snapshot.replaceWindowsLineEndings, snapshot.replaceWindowsPaths, replaceNodeVersion);

View File

@ -1,7 +1,7 @@
Index: node-git.b4f0a18b5a/addon-rpm.gypi
Index: node-v20.10.0/addon-rpm.gypi
===================================================================
--- /dev/null
+++ node-git.b4f0a18b5a/addon-rpm.gypi
+++ node-v20.10.0/addon-rpm.gypi
@@ -0,0 +1,35 @@
+{
+ 'target_defaults': {
@ -38,11 +38,11 @@ Index: node-git.b4f0a18b5a/addon-rpm.gypi
+ ]
+ }
+}
Index: node-git.b4f0a18b5a/deps/npm/node_modules/node-gyp/lib/configure.js
Index: node-v20.10.0/deps/npm/node_modules/node-gyp/lib/configure.js
===================================================================
--- node-git.b4f0a18b5a.orig/deps/npm/node_modules/node-gyp/lib/configure.js
+++ node-git.b4f0a18b5a/deps/npm/node_modules/node-gyp/lib/configure.js
@@ -46,10 +46,6 @@ function configure (gyp, argv, callback)
--- node-v20.10.0.orig/deps/npm/node_modules/node-gyp/lib/configure.js
+++ node-v20.10.0/deps/npm/node_modules/node-gyp/lib/configure.js
@@ -36,10 +36,6 @@ async function configure (gyp, argv) {
if ('v' + release.version !== process.version) {
// if --target was given, then determine a target version to compile for
log.verbose('get node dir', 'compiling against --target node version: %s', release.version)
@ -53,10 +53,10 @@ Index: node-git.b4f0a18b5a/deps/npm/node_modules/node-gyp/lib/configure.js
if (!release.semver) {
// could not parse the version string with semver
@@ -68,6 +64,12 @@ function configure (gyp, argv, callback)
nodeDir = path.resolve(gyp.devDir, release.versionDir)
createBuildDir()
})
@@ -54,6 +50,12 @@ async function configure (gyp, argv) {
log.verbose('get node dir', 'target node version installed:', release.versionDir)
nodeDir = path.resolve(gyp.devDir, release.versionDir)
+ } else {
+ // if no --target was specified then use RPM-installed headers
+ log.verbose('get node dir', 'no --target version specified, falling back to RPM installed headers')
@ -64,16 +64,15 @@ Index: node-git.b4f0a18b5a/deps/npm/node_modules/node-gyp/lib/configure.js
+ createBuildDir()
+ }
}
}
@@ -282,7 +284,9 @@ function configure (gyp, argv, callback)
return createBuildDir()
@@ -201,7 +203,8 @@ async function configure (gyp, argv) {
// this logic ported from the old `gyp_addon` python file
var gypScript = path.resolve(__dirname, '..', 'gyp', 'gyp_main.py')
- var addonGypi = path.resolve(__dirname, '..', 'addon.gypi')
+ var addon_gypi_file = gyp.opts.target || gyp.opts.nodedir ? 'addon.gypi' : 'addon-rpm.gypi'
+
const gypScript = path.resolve(__dirname, '..', 'gyp', 'gyp_main.py')
- const addonGypi = path.resolve(__dirname, '..', 'addon.gypi')
+ let addon_gypi_file = gyp.opts.target || gyp.opts.nodedir ? 'addon.gypi' : 'addon-rpm.gypi'
+ var addonGypi = path.resolve(__dirname, '..', addon_gypi_file)
var commonGypi = path.resolve(nodeDir, 'include/node/common.gypi')
fs.stat(commonGypi, function (err) {
if (err) {
let commonGypi = path.resolve(nodeDir, 'include/node/common.gypi')
try {
await fs.stat(commonGypi)

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

Binary file not shown.

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

Binary file not shown.

View File

@ -1,13 +0,0 @@
Index: node-v20.8.1/test/parallel/test-process-versions.js
===================================================================
--- node-v20.8.1.orig/test/parallel/test-process-versions.js
+++ node-v20.8.1/test/parallel/test-process-versions.js
@@ -61,7 +61,7 @@ assert.match(process.versions.brotli, co
assert.match(process.versions.llhttp, commonTemplate);
assert.match(process.versions.node, commonTemplate);
assert.match(process.versions.uv, commonTemplate);
-assert.match(process.versions.zlib, /^\d+(?:\.\d+){2,3}(?:-.*)?$/);
+assert.match(process.versions.zlib, /^\d+(?:\.\d+){1,3}(?:-.*)?$/);
if (hasUndici) {
assert.match(process.versions.undici, commonTemplate);

View File

@ -1,3 +1,78 @@
-------------------------------------------------------------------
Fri Feb 16 16:04:46 UTC 2024 - Adam Majer <adam.majer@suse.de>
- Update to 20.11.1: (security updates)
* (CVE-2024-21892, bsc#1219992) - Code injection and privilege escalation through Linux capabilities- (High)
* (CVE-2024-22019, bsc#1219993) - http: Reading unprocessed HTTP request with unbounded chunk extension allows DoS attacks- (High)
* (CVE-2024-21896, bsc#1219994) - Path traversal by monkey-patching Buffer internals- (High)
* (CVE-2024-22017, bsc#1219995) - setuid() does not drop all privileges due to io_uring - (High)
* (CVE-2023-46809, bsc#1219997) - Node.js is vulnerable to the Marvin Attack (timing variant of the Bleichenbacher attack against PKCS#1 v1.5 padding) - (Medium)
* (CVE-2024-21891, bsc#1219998) - Multiple permission model bypasses due to improper path traversal sequence sanitization - (Medium)
* (CVE-2024-21890, bsc#1219999) - Improper handling of wildcards in --allow-fs-read and --allow-fs-write (Medium)
* (CVE-2024-22025, bsc#1220014) - Denial of Service by resource exhaustion in fetch() brotli decoding - (Medium)
* undici version 5.28.3 (CVE-2024-24758, bsc#1220017)
* libuv version 1.48.0 (CVE-2024-24806, bsc#1219724)
-------------------------------------------------------------------
Mon Feb 12 14:27:04 UTC 2024 - Adam Majer <adam.majer@suse.de>
- update to 20.11.0:
* esm: add import.meta.dirname and import.meta.filename
* fs: add c++ fast path for writeFileSync utf8
* module: remove useCustomLoadersIfPresent flag
* module: bootstrap module loaders in shadow realm
* src: add --disable-warning option
* src: create per isolate proxy env template
* src: make process binding data weak
* stream: use Array for Readable buffer
* stream: optimize creation
* test_runner: adds built in lcov reporter
* test_runner: add Date to the supported mock APIs
* test_runner, cli: add --test-timeout flag
- c-ares-fixes.patch, fix_ci_tests.patch: refreshed
-------------------------------------------------------------------
Mon Jan 29 10:04:22 UTC 2024 - Adam Majer <adam.majer@suse.de>
- fix_ci_tests.patch: disable test_crypto_fips for openssl 3.x,
to be fixed soon (bsc#1219152)
-------------------------------------------------------------------
Mon Jan 8 15:36:04 UTC 2024 - Adam Majer <adam.majer@suse.de>
- c-ares-fixes.patch: add additional backports for unit test fixes
-------------------------------------------------------------------
Tue Jan 2 16:14:58 UTC 2024 - Adam Majer <adam.majer@suse.de>
- c-ares-fixes.patch: fixes unit tests for new c-ares
-------------------------------------------------------------------
Thu Nov 23 08:02:58 UTC 2023 - Adam Majer <adam.majer@suse.de> - 20.10.0
- Update to 20.10.0:
* --experimental-default-type flag to flip module defaults
* The new flag --experimental-detect-module can be used to
automatically run ES modules when their syntax can be detected.
* Added flush option in file system functions for fs.writeFile functions
* Added experimental WebSocket client
* vm: fix V8 compilation cache support for vm.Script. This fixes
performance regression since v16.x when support for
importModuleDynamically was added to vm.Script
For details, see
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V20.md#20.10.0
- nodejs20-zlib-1.3.patch: upstreamed, removed
- fix_ci_tests.patch, node-gyp-addon-gypi.patch: refreshed
-------------------------------------------------------------------
Thu Nov 9 09:05:33 UTC 2023 - Adam Majer <adam.majer@suse.de>
- Update to 20.9.0:
* No changes, just LTS transition
-------------------------------------------------------------------
Fri Oct 27 09:10:38 UTC 2023 - Adam Majer <adam.majer@suse.de>

View File

@ -1,7 +1,7 @@
#
# spec file for package nodejs20
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -31,7 +31,7 @@
%endif
Name: nodejs20
Version: 20.8.1
Version: 20.11.1
Release: 0
# Double DWZ memory limits
@ -49,6 +49,11 @@ Release: 0
%bcond_with libalternatives
%endif
# nodejs20+ is not for SLE12
%if %{node_version_number} >= 20 && 0%{?suse_version} > 0 && 0%{?suse_version} < 1500
ExclusiveArch do_not_build
%endif
%if %node_version_number >= 12
%define openssl_req_ver 1.1.1
%else
@ -172,7 +177,7 @@ Patch200: versioned.patch
Patch305: qemu_timeouts_arches.patch
Patch308: node-gyp-config.patch
Patch309: gcc13.patch
Patch311: nodejs20-zlib-1.3.patch
Patch311: c-ares-fixes.patch
BuildRequires: pkg-config
BuildRequires: fdupes
@ -293,7 +298,7 @@ BuildRequires: openssl >= %{openssl_req_ver}
%else
# bundled openssl
%if %node_version_number <= 12 && 0%{?suse_version} == 1315 && 0%{?sle_version} < 120400
Provides: bundled(openssl) = 3.0.10
Provides: bundled(openssl) = 3.0.13
%else
BuildRequires: bundled_openssl_should_not_be_required
%endif
@ -304,7 +309,7 @@ BuildRequires: bundled_openssl_should_not_be_required
%if ! 0%{with intree_cares}
BuildRequires: pkgconfig(libcares) >= 1.17.0
%else
Provides: bundled(libcares2) = 1.19.1
Provides: bundled(libcares2) = 1.20.1
%endif
%if ! 0%{with intree_icu}
@ -316,7 +321,7 @@ Provides: bundled(icu) = 73.2
%if ! 0%{with intree_nghttp2}
BuildRequires: libnghttp2-devel >= 1.41.0
%else
Provides: bundled(nghttp2) = 1.57.0
Provides: bundled(nghttp2) = 1.58.0
%endif
%if 0%{with valgrind_tests}
@ -365,7 +370,7 @@ ExclusiveArch: not_buildable
%endif
%endif
Provides: bundled(uvwasi) = 0.0.18
Provides: bundled(uvwasi) = 0.0.19
Provides: bundled(libuv) = 1.46.0
Provides: bundled(v8) = 11.3.244.8
%if %{with intree_brotli}
@ -377,21 +382,21 @@ BuildRequires: pkgconfig(libbrotlidec)
Provides: bundled(llhttp) = 8.1.1
Provides: bundled(ngtcp2) = 0.8.1
Provides: bundled(base64) = 0.5.0
Provides: bundled(simdutf) = 3.2.17
Provides: bundled(base64) = 0.5.1
Provides: bundled(simdutf) = 4.0.4
Provides: bundled(simdjson) = {{nothing}}
# bundled url-ada parser, not ada
Provides: bundled(ada) = 2.6.0
Provides: bundled(ada) = 2.7.4
Provides: bundled(node-acorn) = 8.10.0
Provides: bundled(node-@fastify/busboy) = 2.1.0
Provides: bundled(node-acorn) = 8.11.2
Provides: bundled(node-acorn-walk) = 8.2.0
Provides: bundled(node-balanced-match) = 1.0.2
Provides: bundled(node-brace-expansion) = 2.0.1
Provides: bundled(node-busboy) = 1.6.0
Provides: bundled(node-cjs-module-lexer) = 1.2.2
Provides: bundled(node-corepack) = 0.20.0
Provides: bundled(node-corepack) = 0.23.0
Provides: bundled(node-minimatch) = 9.0.3
Provides: bundled(node-streamsearch) = 1.1.0
Provides: bundled(node-undici) = 5.26.3
Provides: bundled(node-undici) = 5.28.3
Provides: bundled(node-undici-types) = 5.25.1
%description
@ -421,7 +426,7 @@ Requires: nodejs-common
Requires: nodejs20 = %{version}
Provides: nodejs-npm = %{version}
Obsoletes: nodejs-npm < 4.0.0
Provides: npm(npm) = 10.1.0
Provides: npm(npm) = 10.2.4
Provides: npm = %{version}
%if 0%{?suse_version} >= 1500
%if %{node_version_number} >= 10
@ -429,12 +434,9 @@ Requires: user(nobody)
Requires: group(nobody)
%endif
%endif
Provides: bundled(node-abbrev) = 1.1.1
Provides: bundled(node-abbrev) = 2.0.0
Provides: bundled(node-abort-controller) = 3.0.0
Provides: bundled(node-agent-base) = 6.0.2
Provides: bundled(node-agent-base) = 7.1.0
Provides: bundled(node-agentkeepalive) = 4.5.0
Provides: bundled(node-aggregate-error) = 3.1.0
Provides: bundled(node-ansi-regex) = 5.0.1
Provides: bundled(node-ansi-regex) = 6.0.1
@ -442,33 +444,29 @@ Provides: bundled(node-ansi-styles) = 4.3.0
Provides: bundled(node-ansi-styles) = 6.2.1
Provides: bundled(node-aproba) = 2.0.0
Provides: bundled(node-archy) = 1.0.0
Provides: bundled(node-are-we-there-yet) = 3.0.1
Provides: bundled(node-are-we-there-yet) = 4.0.0
Provides: bundled(node-are-we-there-yet) = 4.0.1
Provides: bundled(node-balanced-match) = 1.0.2
Provides: bundled(node-base64-js) = 1.5.1
Provides: bundled(node-bin-links) = 4.0.2
Provides: bundled(node-bin-links) = 4.0.3
Provides: bundled(node-binary-extensions) = 2.2.0
Provides: bundled(node-brace-expansion) = 1.1.11
Provides: bundled(node-brace-expansion) = 2.0.1
Provides: bundled(node-buffer) = 6.0.3
Provides: bundled(node-builtins) = 5.0.1
Provides: bundled(node-cacache) = 17.1.4
Provides: bundled(node-cacache) = 18.0.0
Provides: bundled(node-chalk) = 5.3.0
Provides: bundled(node-chownr) = 2.0.0
Provides: bundled(node-ci-info) = 3.8.0
Provides: bundled(node-cidr-regex) = 3.1.1
Provides: bundled(node-ci-info) = 4.0.0
Provides: bundled(node-cidr-regex) = 4.0.3
Provides: bundled(node-clean-stack) = 2.2.0
Provides: bundled(node-cli-columns) = 4.0.0
Provides: bundled(node-cli-table3) = 0.6.3
Provides: bundled(node-clone) = 1.0.4
Provides: bundled(node-cmd-shim) = 6.0.1
Provides: bundled(node-cmd-shim) = 6.0.2
Provides: bundled(node-color-convert) = 2.0.1
Provides: bundled(node-color-name) = 1.1.4
Provides: bundled(node-color-support) = 1.1.3
Provides: bundled(node-columnify) = 1.6.0
Provides: bundled(node-common-ancestor-path) = 1.0.1
Provides: bundled(node-concat-map) = 0.0.1
Provides: bundled(node-console-control-strings) = 1.1.0
Provides: bundled(node-cross-spawn) = 7.0.3
Provides: bundled(node-cssesc) = 3.0.0
@ -489,66 +487,55 @@ Provides: bundled(node-fastest-levenshtein) = 1.0.16
Provides: bundled(node-foreground-child) = 3.1.1
Provides: bundled(node-fs-minipass) = 2.1.0
Provides: bundled(node-fs-minipass) = 3.0.3
Provides: bundled(node-fs.realpath) = 1.0.0
Provides: bundled(node-function-bind) = 1.1.1
Provides: bundled(node-gauge) = 4.0.4
Provides: bundled(node-function-bind) = 1.1.2
Provides: bundled(node-gauge) = 5.0.1
Provides: bundled(node-glob) = 10.3.3
Provides: bundled(node-glob) = 7.2.3
Provides: bundled(node-glob) = 10.3.10
Provides: bundled(node-graceful-fs) = 4.2.11
Provides: bundled(node-has) = 1.0.3
Provides: bundled(node-has-unicode) = 2.0.1
Provides: bundled(node-hosted-git-info) = 7.0.0
Provides: bundled(node-hasown) = 2.0.0
Provides: bundled(node-hosted-git-info) = 7.0.1
Provides: bundled(node-http-cache-semantics) = 4.1.1
Provides: bundled(node-http-proxy-agent) = 5.0.0
Provides: bundled(node-http-proxy-agent) = 7.0.0
Provides: bundled(node-https-proxy-agent) = 5.0.1
Provides: bundled(node-https-proxy-agent) = 7.0.1
Provides: bundled(node-humanize-ms) = 1.2.1
Provides: bundled(node-https-proxy-agent) = 7.0.2
Provides: bundled(node-iconv-lite) = 0.6.3
Provides: bundled(node-ieee754) = 1.2.1
Provides: bundled(node-ignore-walk) = 6.0.3
Provides: bundled(node-imurmurhash) = 0.1.4
Provides: bundled(node-indent-string) = 4.0.0
Provides: bundled(node-inflight) = 1.0.6
Provides: bundled(node-inherits) = 2.0.4
Provides: bundled(node-ini) = 4.1.1
Provides: bundled(node-init-package-json) = 6.0.0
Provides: bundled(node-ip) = 2.0.0
Provides: bundled(node-ip-regex) = 4.3.0
Provides: bundled(node-is-cidr) = 4.0.2
Provides: bundled(node-is-core-module) = 2.12.1
Provides: bundled(node-ip-regex) = 5.0.0
Provides: bundled(node-is-cidr) = 5.0.3
Provides: bundled(node-is-core-module) = 2.13.1
Provides: bundled(node-is-fullwidth-code-point) = 3.0.0
Provides: bundled(node-is-lambda) = 1.0.1
Provides: bundled(node-isexe) = 2.0.0
Provides: bundled(node-isexe) = 3.1.1
Provides: bundled(node-jackspeak) = 2.2.1
Provides: bundled(node-jackspeak) = 2.3.6
Provides: bundled(node-json-parse-even-better-errors) = 3.0.0
Provides: bundled(node-json-stringify-nice) = 1.1.4
Provides: bundled(node-jsonparse) = 1.3.1
Provides: bundled(node-just-diff) = 6.0.2
Provides: bundled(node-just-diff-apply) = 5.5.0
Provides: bundled(node-libnpmaccess) = 8.0.0
Provides: bundled(node-libnpmdiff) = 6.0.1
Provides: bundled(node-libnpmexec) = 7.0.1
Provides: bundled(node-libnpmfund) = 4.1.1
Provides: bundled(node-libnpmaccess) = 8.0.1
Provides: bundled(node-libnpmdiff) = 6.0.3
Provides: bundled(node-libnpmexec) = 7.0.4
Provides: bundled(node-libnpmfund) = 5.0.1
Provides: bundled(node-libnpmhook) = 10.0.0
Provides: bundled(node-libnpmorg) = 6.0.0
Provides: bundled(node-libnpmpack) = 6.0.1
Provides: bundled(node-libnpmpublish) = 9.0.0
Provides: bundled(node-libnpmorg) = 6.0.1
Provides: bundled(node-libnpmpack) = 6.0.3
Provides: bundled(node-libnpmpublish) = 9.0.2
Provides: bundled(node-libnpmsearch) = 7.0.0
Provides: bundled(node-libnpmteam) = 6.0.0
Provides: bundled(node-libnpmversion) = 5.0.0
Provides: bundled(node-lru-cache) = 10.0.1
Provides: bundled(node-libnpmversion) = 5.0.1
Provides: bundled(node-lru-cache) = 10.0.2
Provides: bundled(node-lru-cache) = 6.0.0
Provides: bundled(node-lru-cache) = 7.18.3
Provides: bundled(node-make-fetch-happen) = 11.1.1
Provides: bundled(node-make-fetch-happen) = 13.0.0
Provides: bundled(node-minimatch) = 3.1.2
Provides: bundled(node-minimatch) = 9.0.3
Provides: bundled(node-minipass) = 3.3.6
Provides: bundled(node-minipass) = 5.0.0
Provides: bundled(node-minipass) = 7.0.3
Provides: bundled(node-minipass) = 7.0.4
Provides: bundled(node-minipass-collect) = 1.0.2
Provides: bundled(node-minipass-fetch) = 3.0.4
Provides: bundled(node-minipass-flush) = 1.0.5
@ -561,27 +548,23 @@ Provides: bundled(node-ms) = 2.1.2
Provides: bundled(node-ms) = 2.1.3
Provides: bundled(node-mute-stream) = 1.0.0
Provides: bundled(node-negotiator) = 0.6.3
Provides: bundled(node-node-gyp) = 9.4.0
Provides: bundled(node-nopt) = 6.0.0
Provides: bundled(node-node-gyp) = 10.0.1
Provides: bundled(node-nopt) = 7.2.0
Provides: bundled(node-normalize-package-data) = 6.0.0
Provides: bundled(node-npm-audit-report) = 5.0.0
Provides: bundled(node-npm-bundled) = 3.0.0
Provides: bundled(node-npm-install-checks) = 6.2.0
Provides: bundled(node-npm-install-checks) = 6.3.0
Provides: bundled(node-npm-normalize-package-bin) = 3.0.1
Provides: bundled(node-npm-package-arg) = 11.0.0
Provides: bundled(node-npm-package-arg) = 11.0.1
Provides: bundled(node-npm-packlist) = 8.0.0
Provides: bundled(node-npm-pick-manifest) = 9.0.0
Provides: bundled(node-npm-profile) = 9.0.0
Provides: bundled(node-npm-registry-fetch) = 16.0.0
Provides: bundled(node-npm-registry-fetch) = 16.1.0
Provides: bundled(node-npm-user-validate) = 2.0.0
Provides: bundled(node-npmlog) = 6.0.2
Provides: bundled(node-npmlog) = 7.0.1
Provides: bundled(node-once) = 1.4.0
Provides: bundled(node-p-map) = 4.0.0
Provides: bundled(node-pacote) = 17.0.4
Provides: bundled(node-parse-conflict-json) = 3.0.1
Provides: bundled(node-path-is-absolute) = 1.0.1
Provides: bundled(node-path-key) = 3.1.1
Provides: bundled(node-path-scurry) = 1.10.1
Provides: bundled(node-postcss-selector-parser) = 6.0.13
@ -597,27 +580,23 @@ Provides: bundled(node-read) = 2.1.0
Provides: bundled(node-read-cmd-shim) = 4.0.0
Provides: bundled(node-read-package-json) = 7.0.0
Provides: bundled(node-read-package-json-fast) = 3.0.2
Provides: bundled(node-readable-stream) = 3.6.2
Provides: bundled(node-readable-stream) = 4.4.0
Provides: bundled(node-readable-stream) = 4.4.2
Provides: bundled(node-retry) = 0.12.0
Provides: bundled(node-rimraf) = 3.0.2
Provides: bundled(node-safe-buffer) = 5.2.1
Provides: bundled(node-safer-buffer) = 2.1.2
Provides: bundled(node-semver) = 7.5.4
Provides: bundled(node-set-blocking) = 2.0.0
Provides: bundled(node-shebang-command) = 2.0.0
Provides: bundled(node-shebang-regex) = 3.0.0
Provides: bundled(node-signal-exit) = 3.0.7
Provides: bundled(node-signal-exit) = 4.0.2
Provides: bundled(node-signal-exit) = 4.1.0
Provides: bundled(node-sigstore) = 2.1.0
Provides: bundled(node-smart-buffer) = 4.2.0
Provides: bundled(node-socks) = 2.7.1
Provides: bundled(node-socks-proxy-agent) = 7.0.0
Provides: bundled(node-socks-proxy-agent) = 8.0.1
Provides: bundled(node-socks-proxy-agent) = 8.0.2
Provides: bundled(node-spdx-correct) = 3.2.0
Provides: bundled(node-spdx-exceptions) = 2.3.0
Provides: bundled(node-spdx-expression-parse) = 3.0.1
Provides: bundled(node-spdx-license-ids) = 3.0.13
Provides: bundled(node-spdx-license-ids) = 3.0.16
Provides: bundled(node-ssri) = 10.0.5
Provides: bundled(node-string_decoder) = 1.3.0
Provides: bundled(node-string-width) = 4.2.3
@ -625,7 +604,7 @@ Provides: bundled(node-string-width) = 5.1.2
Provides: bundled(node-strip-ansi) = 6.0.1
Provides: bundled(node-strip-ansi) = 7.1.0
Provides: bundled(node-supports-color) = 9.4.0
Provides: bundled(node-tar) = 6.1.15
Provides: bundled(node-tar) = 6.2.0
Provides: bundled(node-text-table) = 0.2.0
Provides: bundled(node-tiny-relative-date) = 1.3.0
Provides: bundled(node-treeverse) = 3.0.0
@ -642,7 +621,6 @@ Provides: bundled(node-which) = 4.0.0
Provides: bundled(node-wide-align) = 1.1.5
Provides: bundled(node-wrap-ansi) = 7.0.0
Provides: bundled(node-wrap-ansi) = 8.1.0
Provides: bundled(node-wrappy) = 1.0.2
Provides: bundled(node-write-file-atomic) = 5.0.1
Provides: bundled(node-yallist) = 4.0.0
@ -704,6 +682,7 @@ popd
%if %{node_version_number} >= 19
%patch308 -p1
%else
%endif
%endif
@ -718,7 +697,9 @@ popd
%patch13 -p1
%patch100 -p1
%patch101 -p1
%if 0%{?suse_version} >= 1500 || 0%{?suse_version} == 0
%patch102 -p1
%endif
# Add check_output to configure script (not part of Python 2.6 in SLE11).
%if 0%{?suse_version} == 1110
%endif

View File

@ -7,7 +7,7 @@
set -e
tar Jxf node-v*.tar.xz
cd node-v.*/tools/doc
cd node-v*/tools/doc
npm ci
cd ../..
exec tar Jcf ../node_modules.tar.xz tools/doc/node_modules