Compare commits

19 Commits

Author SHA256 Message Date
eb5b095bf0 Add README.md 2025-11-10 10:56:25 +01:00
d22f3f056d - Update to 21.7.3:
* fixes bsc#1222665, CVE-2024-27980 - windows only bug

OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=29
2024-05-28 11:30:26 +00:00
ccf8edbf53 * Assertion failed in node::http2::Http2Session::~Http2Session()
leads to HTTP/2 server crash (High) (bsc#1222244, CVE-2024-27983)
  * HTTP Request Smuggling via Content Length Obfuscation
    (Medium) (bsc#1222384, CVE-2024-27982)
    + undici version 6.11.1 (bsc#1222530, bsc#1222603, 
      CVE-2024-30260, CVE-2024-30261)

OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=27
2024-04-10 09:02:14 +00:00
6f6eb797dd - Update to 21.7.2:
* CVE-2024-27983 - Assertion failed in node::http2::Http2Session::~Http2Session()
    leads to HTTP/2 server crash- (High) (bsc#1222244)
  * CVE-2024-27982 - HTTP Request Smuggling via Content Length
    Obfuscation- (Medium) (bsc#1222384)
  * updated dependencies:
    + llhttp version 9.2.1
    + undici version 6.11.1 (bsc#1222530, CVE-2024-30260)
- node-gyp-addon-gypi.patch: adapted for new unit test layouts

OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=26
2024-04-09 14:39:25 +00:00
85cad940b3 - node-gyp-addon-gypi.patch: refreshed
OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=25
2024-04-09 12:50:48 +00:00
a4403778e7 OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=24 2024-04-04 08:06:04 +00:00
0354ca0a03 OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=23 2024-04-03 14:50:56 +00:00
3a796f2ecd OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=22 2024-04-03 14:44:33 +00:00
2c4165a86f - Update to 21.7.1
* revert "test_runner: do not invoke after hook when test is empty"
  * lib: return directly if udp socket close before lookup
- Changes in 21.7.0
  * util.styleText(format, text): This function returns a
    formatted text considering the format passed.
  * support for multi-line values for .env file
  * sea: support embedding assets
  * vm: support using the default loader to handle dynamic import()
  * crypto: implement crypto.hash()
  * http2: add h2 compat support for appendHeader
- versioned.patch, nodejs-libpath.patch: refreshed
- c-ares-fixes.patch: upstreamed, removed

- Add libalternative config for corepack

OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=21
2024-04-02 14:32:44 +00:00
6d43d633ac - Update to 21.6.2: (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

OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=19
2024-02-16 16:23:48 +00:00
f510551be0 OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=17 2024-02-13 12:35:48 +00:00
a1d67ae055 - Update to 21.6.1:
* Revert "stream: fix cloned webstreams not being unref'd"
- Changes in 21.6.0:
  * New connection attempt events
  * --allow-addons to enable addon usage when using the Permission Model.
  * Support configurable snapshot through --build-snapshot-config flag
- fix_ci_tests.patch: refreshed

OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=16
2024-02-12 15:19:46 +00:00
e0a5a84c5a - Update to 21.5.0:
* module: merge config with package_json_reader
  * src: move package resolver to c++
  * doc:
    + deprecate hash constructor
    + deprecate dirent.path
- linker_lto_jobs.patch: refreshed

OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=14
2024-01-08 15:10:14 +00:00
94d465bf3f - c-ares-fixes.patch: fixes unit tests for new c-ares
OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=12
2024-01-02 14:28:38 +00:00
5d35c49e84 OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=10 2023-12-15 14:11:41 +00:00
590152f638 - Update to 21.4.0:
* fs: introduce dirent.parentPath
  * fs: use default w flag for writeFileSync with utf8 encoding
- Changes in 21.3.0:
  * New --disable-warning flag
  * Fast fs.writeFileSync with UTF-8 Strings
For details, see
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V21.md#21.4.0
- fix_ci_tests.patch: added workaround for missing deps

OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=9
2023-12-13 13:27:50 +00:00
1d344855d5 - node-gyp-addon-gypi.patch: fix misapplied patch (bsc#1217424)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=8
2023-11-23 10:50:30 +00:00
a4bbab6a94 OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=7 2023-11-20 10:20:05 +00:00
dd261bf252 - Update to 21.2.0
* esm: add import.meta.dirname and import.meta.filename
  * fs: add stacktrace to fs/promises
  * lib:
    +  add --no-experimental-global-navigator CLI flag
    +  add navigator.language & navigator.languages
    +  add navigator.platform
  * stream:
    + add support for deflate-raw format to webstreams compression
    + use Array for Readable buffer
    + 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
For details see
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V21.md#21.2.0
- nodejs20-zlib-1.3.patch: upstreamed, dropped
- node-gyp-addon-gypi.patch: rebased
- fix_ci_tests.patch: partially upstreamed

OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs21?expand=0&rev=5
2023-11-16 09:24:16 +00:00
13 changed files with 553 additions and 354 deletions

4
README.md Normal file
View File

@@ -0,0 +1,4 @@
Obsolete
--------
This repository is historical only. No future updates.

View File

@@ -1,41 +1,41 @@
691672195af440401e4957d9d5e148d361e686aa26c9e529505edf89bab4b089 node-v21.1.0-aix-ppc64.tar.gz
75f28378c09fba7c5ecd6add07ac64f4983f23a847987e0a2097d753b0dcb30c node-v21.1.0-arm64.msi
4872463830381785b91d13a7fbb9b6f4a9c7658e10d964f6c421951cec8833ad node-v21.1.0-darwin-arm64.tar.gz
ecd3f51874892a8a56abf4b96424236647f26f64da6139a930557c044c48f73b node-v21.1.0-darwin-arm64.tar.xz
6b526c08320fcf41ced0ceee7588828ea2cb07ba826af4ff82b0ec53958fd8a4 node-v21.1.0-darwin-x64.tar.gz
f33382175ab49d0c9bd176401e746a041db1c7c31c85b7b91344e188945c3ba1 node-v21.1.0-darwin-x64.tar.xz
ceb2ecd7ed6049778403c0baa49844ba9495c1218b55bb73dea42a87e6a57253 node-v21.1.0-headers.tar.gz
c1ab3d18209f1331b9f14cdea0aeb2f7fdce4583aceee001856a42e44cfe1b35 node-v21.1.0-headers.tar.xz
5480f438703049f55f19fc3247f6aa1e8059b2f47cf08e9adfdcb7ce7aedff70 node-v21.1.0-linux-arm64.tar.gz
ff487ad68d898a6eebbf02e15fe5c5a885991828732163501fdf21af7a7bef36 node-v21.1.0-linux-arm64.tar.xz
0d51fe055599c17b2e3389d15868d4fd5ca07b408f8c15c325874595310a9382 node-v21.1.0-linux-armv7l.tar.gz
a8de516f50e6f4a7325d115a7cf398ac15440d495672f5d0118296b5d593fee9 node-v21.1.0-linux-armv7l.tar.xz
ed90f74545cd44474bbb947544679d3dfb44403200f7d2faa49402bebf26e52f node-v21.1.0-linux-ppc64le.tar.gz
8c932a1259291e8db9874981886d17993ab82ecf1ecaeda2c102b5f44ef94593 node-v21.1.0-linux-ppc64le.tar.xz
b45b87d21dada54999ef8d80957a6e700d0d29dd1b7f23502223c4a67d9d0a10 node-v21.1.0-linux-s390x.tar.gz
a8d04ae7a2b401e469a2c7e1e579d985126d3ec1a024bcc5220a059fcf861c17 node-v21.1.0-linux-s390x.tar.xz
b919cad4e8a5abbd7e6a4433c4f8a7cdc1a78c1e526c6c1aa4a5fcf74011ad2b node-v21.1.0-linux-x64.tar.gz
6a1020b5605ba4b4a89b08147e5fd124bd9d1fd5bfe5301fe0567af67bf0e335 node-v21.1.0-linux-x64.tar.xz
5fcb23725fa760ebe059cc5d957e9214f22ba623b20ee20301089a89d33bc06f node-v21.1.0.pkg
86e2fbfa8a9977656a82bb1a15208e7d45bd7a05dec331d0abf6fcf938a97cc3 node-v21.1.0.tar.gz
91ac72e4444c5e5ab4b448030a61ffa95acd35d34a9d31d2d220ee2bed01b925 node-v21.1.0.tar.xz
8a0f2c3abea32eb1706772d741ed8ea05de8f0b170561b37088cb2412de5cb2b node-v21.1.0-win-arm64.7z
fe660ef5ff0a1cf09207a1d83dbac5cfa0495870717aa397b584ce0c3e5cfcfb node-v21.1.0-win-arm64.zip
20ad766d8576e0c651dcbd6cbafaf803a51110613304224820c38936858af774 node-v21.1.0-win-x64.7z
6ee3e74ecceb27f388d75a94d6782df670bad37a4d10ff2d28a7c7bcb75bdb49 node-v21.1.0-win-x64.zip
3247272d574287ea798a34bd5a393671d44d0f608434f06eb97696754ee0257f node-v21.1.0-win-x86.7z
d4c3834a00cf0d74ca80d5e9992acb98f7d703293a18eb1716d596148ff855a8 node-v21.1.0-win-x86.zip
9890aaf7b9387a6d15890735b8facfe9eb072aebfd30e38cbeaf3426a1eabdc0 node-v21.1.0-x64.msi
53f8248e82282552f9fe5709a771801c4adb174f6dc35e2610077edc758d2bcf node-v21.1.0-x86.msi
69d61ca95c2a81f2a8f535446a2bfdd8b905d1b1783d18ae82b92017a637ab61 win-arm64/node.exe
aa149ab68ccab472beea201d39283390547c8e0a12b099797a0cfb6d9ffefb7b win-arm64/node.lib
085701532872fa03f7c29148b6b880245a765ee5f2c51593fc97a848730f9a57 win-arm64/node_pdb.7z
97580ce603887840a19f314a7eeaede4e18b72de0dfda060ea5ac4e747fc6465 win-arm64/node_pdb.zip
1cbbd083f79c51c6ca4d3ccffc944895d4e04e182849fd49855d93b66c0bb411 win-x64/node.exe
2f88106acb54a105e7beda077ab9eda04d98c202db9c1477ea48d7dd9e58151a win-x64/node.lib
f100227a3a7351c7340ef440a6b7dc2a4c2ab9786d0d3f8f603fb5658c423946 win-x64/node_pdb.7z
7b29f3242e0eaffb8990d8cd375a6a9d48079708e3dbc676c7a30d67895e052f win-x64/node_pdb.zip
2374196fac3d6b3611a411a6c413f1a78f47e47f7d5a86e861e774bf8203bc10 win-x86/node.exe
6825637ae988424a72f049ba92264be2956881875ee264cb71441bfbff5bcd85 win-x86/node.lib
842afb550c8821b82a1136dc29a3d0a0c862a045bea2c9940148569305a867c3 win-x86/node_pdb.7z
3e5357d128e79924866b1ed039458f43af377676c2d3b0fbba751986be14a833 win-x86/node_pdb.zip
3ae059cab0a4f18ce79676bbc37112cd428b2f22ba66277bf12873ef9eb34143 node-v21.7.3-aix-ppc64.tar.gz
e0f70657ad7ee7dac2b2b6e137b319a9967da95676567451f92d7a9f39e4cd65 node-v21.7.3-arm64.msi
165d3ba3500cfc8708f85d3815aaaa21ce418164c933d5419c30825ccad3a99c node-v21.7.3-darwin-arm64.tar.gz
6725de89be5852b403456bba2892e3ef2f12cd533e129705d9f4ffcdfe763e05 node-v21.7.3-darwin-arm64.tar.xz
58d0212e169764c3424d2d5bec73e8a098d34b4e82fca6e1dd54083ea3049c5f node-v21.7.3-darwin-x64.tar.gz
ab6efddd4a83be1be705ae519740d837582acb743bab53a361e5ba804a97a97d node-v21.7.3-darwin-x64.tar.xz
3211b00464b626e3a5890461edbae75488d5f02665834455eb2c019e54488588 node-v21.7.3-headers.tar.gz
bb6a3602b2a2a7f6baaabb2c7a33be15a25cc3c85d1095f8d13c2e9795b894b6 node-v21.7.3-headers.tar.xz
15390ba8509b71c0051e61f75a6fdb0a2eb38318c03a01bf60c93d33d414d138 node-v21.7.3-linux-arm64.tar.gz
d48a76d02c5940a6dc0738bc0af22551d15cb58b30a5ddddb54fe6e00021f3c1 node-v21.7.3-linux-arm64.tar.xz
89e430a705d0855b044ba42d3b48f052cffbd4530cc12029ed2965d299167151 node-v21.7.3-linux-armv7l.tar.gz
5cceefa6803781a3f3fbb52e5e28e99b9bbaf3c7eac26950ea031a8f7c77c5fc node-v21.7.3-linux-armv7l.tar.xz
7421c811185c8b4e349af9eefb7c0d54b6451f82c0935e5207da334f8d00a133 node-v21.7.3-linux-ppc64le.tar.gz
abdca8b36e378cbd7500fa3e839259cfa103db42d2b747948d69e70c28853f91 node-v21.7.3-linux-ppc64le.tar.xz
837b88c7a1bf030ea210cafaa62d378ba464f5849ada47ad7afba9d95c225aec node-v21.7.3-linux-s390x.tar.gz
d4975ba2c87ece52d6d10aee8117b90a2d35412672997645be1b4e4594e9904b node-v21.7.3-linux-s390x.tar.xz
a64cbb12282cb60d35743ef4f51561f8d89946a5f0a484f99168f4de602d7c3d node-v21.7.3-linux-x64.tar.gz
19e17a77e59044de169cd19be3f3bccae686982fba022f9634421b44724ee90c node-v21.7.3-linux-x64.tar.xz
3de6fe25a494ed982adc81a585c88b62147a37d8ca74b26a184ff5959ebd771a node-v21.7.3-win-arm64.7z
686a1ed8ec076ec25e198b0e6e31fdd4198aaabbeb384ff137c1e3bf57664bc3 node-v21.7.3-win-arm64.zip
22e771e992119ef5e6e1553601a301c6fe796a1485dae605ce10a5388834fea2 node-v21.7.3-win-x64.7z
d2314f496782b53ad2fe5fa82fca6ff7f39f07fe59dd007116404ad92179c78e node-v21.7.3-win-x64.zip
17c50f9aaba6fe07f6468888614e36261a5b232333cd31478a6e33f243cddd49 node-v21.7.3-win-x86.7z
e96df935994addbbb51228f1724e8411ea685cb60fa26d84cc7c5d74806c38da node-v21.7.3-win-x86.zip
de33d68e92e8948b96515bafee206d0b5c1f5440eb2e07aa15d6ce2f6493f53b node-v21.7.3-x64.msi
b152d667112572c7293408a6968429f20db117aef2f01d6ca652c0dcae9423b0 node-v21.7.3-x86.msi
b8bccb2ec100c6db213d54deaa5aa064a254ec2f4730ca2810262caf425a9173 node-v21.7.3.pkg
ce1f61347671ef219d9c2925313d629d3fef98fc8d7f5ef38dd4656f7d0f58e7 node-v21.7.3.tar.gz
668b26fb1bfc1cff60622bbcf3d715843e16f50c8f30e9f64fb4141814d79a21 node-v21.7.3.tar.xz
509c04ca7909d2bb715cab80e72da1b19f033eea0e0a84ea5de9145b6d3e75b9 win-arm64/node.exe
0e271f1dff6290e15709869e78160b34277427f905f71afe621e6b22c06c0359 win-arm64/node.lib
cff87c002f27b5d72722539749bc584192bc0f8c01d0d24e11501ee0df1c9e18 win-arm64/node_pdb.7z
e826fdee0df83477d20aa73dbb930dfac03f43d9138b51940a1042cc43e833de win-arm64/node_pdb.zip
37901cb69f7de95891b5e5cead529393a18dc8886a7bb4c6c36e35ac955c70fa win-x64/node.exe
473d2b087bfa76b2746542c6c4bd019b0527545849e04cbc3d0872ebd9335f0a win-x64/node.lib
40f3e3f2bc1885ed318a70ffb4cae58358f09e4bc6da82227251d0133a015ce7 win-x64/node_pdb.7z
2e39aa4be528bdc6182c1629d6ad7ebc57e7188a77963050df988b9116a7a7bc win-x64/node_pdb.zip
823764a39291d2693867c9d3cb953c660995b22f3ae4e5c1d164aa68c67c6609 win-x86/node.exe
3b5733c6ef1ab0e6bc303eb01300c93d7671cb58e5991293bd9da732268b364b win-x86/node.lib
4f72d3d4448c66d71b5d016428ba385462d6e7ddac963c0b5ebb4e41ed0c2ca7 win-x86/node_pdb.7z
a6c2907f9b3d5e6be1c06d8e98cdf20cd87de4481e3c68c71a50c225ecb05692 win-x86/node_pdb.zip

Binary file not shown.

View File

@@ -2,10 +2,23 @@ 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-v21.7.1/test/parallel/test-node-output-v8-warning.mjs
===================================================================
--- node-v20.8.1.orig/test/parallel/test-module-loading-globalpaths.js
+++ node-v20.8.1/test/parallel/test-module-loading-globalpaths.js
--- node-v21.7.1.orig/test/parallel/test-node-output-v8-warning.mjs
+++ node-v21.7.1/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 --', '* --');
+ .replace(/node\d+ --/, '* --');
}
const common = snapshot
.transform(snapshot.replaceWindowsLineEndings, snapshot.replaceWindowsPaths, replaceNodeVersion);
Index: node-v21.7.1/test/parallel/test-module-loading-globalpaths.js
===================================================================
--- node-v21.7.1.orig/test/parallel/test-module-loading-globalpaths.js
+++ node-v21.7.1/test/parallel/test-module-loading-globalpaths.js
@@ -11,6 +11,9 @@ const { addLibraryPath } = require('../c
addLibraryPath(process.env);
@@ -16,10 +29,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-v21.7.1/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-v21.7.1.orig/test/parallel/test-tls-passphrase.js
+++ node-v21.7.1/test/parallel/test-tls-passphrase.js
@@ -223,7 +223,7 @@ server.listen(0, common.mustCall(functio
}, onSecureConnect());
})).unref();
@@ -29,10 +42,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-v21.7.1/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-v21.7.1.orig/test/parallel/test-repl-envvars.js
+++ node-v21.7.1/test/parallel/test-repl-envvars.js
@@ -2,7 +2,9 @@
// Flags: --expose-internals
@@ -44,11 +57,19 @@ 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-v21.7.1/Makefile
===================================================================
--- node-v20.8.1.orig/Makefile
+++ node-v20.8.1/Makefile
@@ -545,7 +545,8 @@ test-ci-js: | clear-stalled
--- node-v21.7.1.orig/Makefile
+++ node-v21.7.1/Makefile
@@ -389,7 +389,6 @@ ADDONS_HEADERS_PREREQS := tools/install.
$(wildcard deps/uv/include/*/*.h) \
$(wildcard deps/v8/include/*.h) \
$(wildcard deps/v8/include/*/*.h) \
- deps/zlib/zconf.h deps/zlib/zlib.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_version.h
@@ -560,7 +559,8 @@ test-ci-js: | clear-stalled
.PHONY: test-ci
# Related CI jobs: most CI tests, excluding node-test-commit-arm-fanned
test-ci: LOGLEVEL := info
@@ -58,7 +79,7 @@ Index: node-v20.8.1/Makefile
out/Release/cctest --gtest_output=xml:out/junit/cctest.xml
$(PYTHON) tools/test.py $(PARALLEL_ARGS) -p tap --logfile test.tap \
--mode=$(BUILDTYPE_LOWER) --flaky-tests=$(FLAKY_TESTS) \
@@ -726,7 +727,8 @@ apidocs_json = $(addprefix out/,$(apidoc
@@ -742,7 +742,8 @@ apidocs_json = $(addprefix out/,$(apidoc
apiassets = $(subst api_assets,api/assets,$(addprefix out/,$(wildcard doc/api_assets/*)))
tools/doc/node_modules: tools/doc/package.json
@@ -68,11 +89,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-v21.7.1/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-v21.7.1.orig/tools/test.py
+++ node-v21.7.1/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 +102,32 @@ 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-v21.7.1/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' });
+ }, /(error:02800080:Diffie-Hellman routines::invalid secret|error:05066066:Diffie-Hellman routines:compute_key:invalid public key|Supplied key is too small)/);
--- node-v21.7.1.orig/test/parallel/test-crypto-dh.js
+++ node-v21.7.1/test/parallel/test-crypto-dh.js
@@ -92,7 +92,7 @@ const crypto = require('crypto');
dh3.computeSecret('');
}, { message: common.hasOpenSSL3 && !hasOpenSSL3WithNewErrorMessage ?
'error:02800080:Diffie-Hellman routines::invalid secret' :
- 'Supplied key is too small' });
+ /(Supplied key is too small|invalid public key)/ });
}
}
// Through a fluke of history, g=0 defaults to DH_GENERATOR (2).
Index: node-v21.7.1/benchmark/misc/startup-cli-version.js
===================================================================
--- node-v21.7.1.orig/benchmark/misc/startup-cli-version.js
+++ node-v21.7.1/benchmark/misc/startup-cli-version.js
@@ -11,10 +11,10 @@ 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/npx-cli.js',
'deps/npm/bin/npm-cli.js',
'deps/corepack/dist/corepack.js',
+ 'tools/node_modules/eslint/bin/eslint.js',
],
count: [30],
});

View File

@@ -3,19 +3,19 @@ is run serially over these binaries instead of in parallel.
OBS workers run out of memory as each executable seems to require
upward of 5G RAM
Index: node-v19.7.0/node.gyp
Index: node-v21.5.0/node.gyp
===================================================================
--- node-v19.7.0.orig/node.gyp
+++ node-v19.7.0/node.gyp
@@ -951,6 +951,7 @@
'deps/uvwasi/uvwasi.gyp:uvwasi',
--- node-v21.5.0.orig/node.gyp
+++ node-v21.5.0/node.gyp
@@ -1053,6 +1053,7 @@
'deps/simdjson/simdjson.gyp:simdjson',
'deps/simdutf/simdutf.gyp:simdutf',
'deps/ada/ada.gyp:ada',
+ 'fuzz_env'
],
'includes': [
@@ -1047,6 +1048,7 @@
@@ -1129,6 +1130,7 @@
'deps/histogram/histogram.gyp:histogram',
'deps/uvwasi/uvwasi.gyp:uvwasi',
'deps/ada/ada.gyp:ada',

View File

@@ -1,7 +1,7 @@
Index: node-git.b4f0a18b5a/addon-rpm.gypi
Index: node-v21.7.1/addon-rpm.gypi
===================================================================
--- /dev/null
+++ node-git.b4f0a18b5a/addon-rpm.gypi
+++ node-v21.7.1/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-v21.7.1/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-v21.7.1.orig/deps/npm/node_modules/node-gyp/lib/configure.js
+++ node-v21.7.1/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,49 @@ 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,8 +203,16 @@ 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 commonGypi = path.resolve(nodeDir, 'include/node/common.gypi')
+ let addon_gypi_file = gyp.opts.target || gyp.opts.nodedir ? 'addon.gypi' : 'addon-rpm.gypi'
+ let addonGypi = path.resolve(__dirname, '..', addon_gypi_file)
+ let commonGypi = path.resolve(nodeDir, 'include/node21/common.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) {
+ try {
+ await fs.stat(commonGypi)
+ } catch (err) {
+ commonGypi = path.resolve(nodeDir, 'include/node/common.gypi')
+ }
+
try {
await fs.stat(commonGypi)
} catch (err) {
Index: node-v21.7.1/deps/npm/node_modules/node-gyp/addon.gypi
===================================================================
--- node-v21.7.1.orig/deps/npm/node_modules/node-gyp/addon.gypi
+++ node-v21.7.1/deps/npm/node_modules/node-gyp/addon.gypi
@@ -18,6 +18,7 @@
],
'include_dirs': [
+ '<(node_root_dir)/include/node21',
'<(node_root_dir)/include/node',
'<(node_root_dir)/src',
'<(node_root_dir)/deps/openssl/config',
Index: node-v21.7.1/tools/build_addons.py
===================================================================
--- node-v21.7.1.orig/tools/build_addons.py
+++ node-v21.7.1/tools/build_addons.py
@@ -27,7 +27,7 @@ def generate_headers(headers_dir, instal
def rebuild_addons(args):
headers_dir = os.path.abspath(args.headers_dir)
out_dir = os.path.abspath(args.out_dir)
- node_bin = os.path.join(out_dir, 'node')
+ node_bin = os.path.join(out_dir, 'node21')
if args.is_win:
node_bin += '.exe'

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:91ac72e4444c5e5ab4b448030a61ffa95acd35d34a9d31d2d220ee2bed01b925
size 42651096

3
node-v21.7.3.tar.xz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:668b26fb1bfc1cff60622bbcf3d715843e16f50c8f30e9f64fb4141814d79a21
size 42376664

View File

@@ -1,49 +1,49 @@
Index: node-v18.9.0/tools/install.py
Index: node-v20.12.0/tools/install.py
===================================================================
--- node-v18.9.0.orig/tools/install.py
+++ node-v18.9.0/tools/install.py
@@ -7,6 +7,7 @@ import errno
--- node-v20.12.0.orig/tools/install.py
+++ node-v20.12.0/tools/install.py
@@ -6,6 +6,7 @@ import errno
import os
import shutil
import sys
+from distutils import sysconfig
import re
# set at init time
@@ -66,6 +67,10 @@ def try_copy(path, dst):
def abspath(*args):
@@ -66,6 +67,10 @@ def try_copy(options, path, dest):
try_unlink(target_path) # prevent ETXTBSY errors
return shutil.copy2(source_path, target_path)
+def libdir():
+def libdir(options):
+ libdir_fq = sysconfig.get_config_var("LIBDIR")
+ return re.sub("^" + re.escape(node_prefix + "/"), "", libdir_fq)
+ return re.sub("^" + re.escape(options.prefix + "/"), "", libdir_fq)
+
def try_remove(path, dst):
source_path, target_path = mkpaths(path, dst)
print('removing %s' % target_path)
@@ -81,7 +86,7 @@ def uninstall(paths, dst):
try_remove(path, dst)
def try_remove(options, path, dest):
source_path, target_path = mkpaths(options, path, dest)
if not options.silent:
@@ -82,7 +87,7 @@ def uninstall(options, paths, dest):
try_remove(options, path, dest)
def package_files(action, name, bins):
- target_path = 'lib/node_modules/' + name + '/'
+ target_path = libdir() + '/node_modules/' + name + '/'
def package_files(options, action, name, bins):
- target_path = os.path.join('lib/node_modules', name)
+ target_path = os.path.join(libdir(options), 'node_modules', name)
# don't install npm if the target path is a symlink, it probably means
# that a dev version of npm is installed there
@@ -101,7 +106,7 @@ def package_files(action, name, bins):
@@ -103,7 +108,7 @@ def package_files(options, action, name,
if action == uninstall:
action([link_path], 'bin/' + bin_name)
action(options, [link_path], os.path.join('bin', bin_name))
elif action == install:
- try_symlink('../lib/node_modules/' + name + '/' + bin_target, link_path)
+ try_symlink('../' + libdir() + '/node_modules/' + name + '/' + bin_target, link_path)
- try_symlink(options, os.path.join('../lib/node_modules', name, bin_target), link_path)
+ try_symlink(options, os.path.join('..', libdir(options), 'node_modules', name, bin_target), link_path)
else:
assert 0 # unhandled action type
Index: node-v18.9.0/lib/internal/modules/cjs/loader.js
Index: node-v20.12.0/lib/internal/modules/cjs/loader.js
===================================================================
--- node-v18.9.0.orig/lib/internal/modules/cjs/loader.js
+++ node-v18.9.0/lib/internal/modules/cjs/loader.js
@@ -1254,7 +1254,7 @@ Module._initPaths = function() {
--- node-v20.12.0.orig/lib/internal/modules/cjs/loader.js
+++ node-v20.12.0/lib/internal/modules/cjs/loader.js
@@ -1529,7 +1529,7 @@ Module._initPaths = function() {
path.resolve(process.execPath, '..') :
path.resolve(process.execPath, '..', '..');

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,139 @@
-------------------------------------------------------------------
Tue May 28 11:25:35 UTC 2024 - Adam Majer <adam.majer@suse.de>
- Update to 21.7.3:
* fixes bsc#1222665, CVE-2024-27980 - windows only bug
-------------------------------------------------------------------
Tue Apr 9 14:13:21 UTC 2024 - Adam Majer <adam.majer@suse.de>
- Update to 21.7.2:
* Assertion failed in node::http2::Http2Session::~Http2Session()
leads to HTTP/2 server crash (High) (bsc#1222244, CVE-2024-27983)
* HTTP Request Smuggling via Content Length Obfuscation
(Medium) (bsc#1222384, CVE-2024-27982)
* updated dependencies:
+ llhttp version 9.2.1
+ undici version 6.11.1 (bsc#1222530, bsc#1222603,
CVE-2024-30260, CVE-2024-30261)
- node-gyp-addon-gypi.patch: adapted for new unit test layouts
-------------------------------------------------------------------
Tue Apr 2 13:54:32 UTC 2024 - Adam Majer <adam.majer@suse.de>
- Update to 21.7.1
* revert "test_runner: do not invoke after hook when test is empty"
* lib: return directly if udp socket close before lookup
- Changes in 21.7.0
* util.styleText(format, text): This function returns a
formatted text considering the format passed.
* support for multi-line values for .env file
* sea: support embedding assets
* vm: support using the default loader to handle dynamic import()
* crypto: implement crypto.hash()
* http2: add h2 compat support for appendHeader
- versioned.patch, nodejs-libpath.patch: refreshed
- c-ares-fixes.patch: upstreamed, removed
-------------------------------------------------------------------
Fri Feb 16 15:37:23 UTC 2024 - Adam Majer <adam.majer@suse.de>
- Update to 21.6.2: (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
-------------------------------------------------------------------
Mon Feb 12 14:51:32 UTC 2024 - Adam Majer <adam.majer@suse.de>
- Update to 21.6.1:
* Revert "stream: fix cloned webstreams not being unref'd"
- Changes in 21.6.0:
* New connection attempt events
* --allow-addons to enable addon usage when using the Permission Model.
* Support configurable snapshot through --build-snapshot-config flag
- fix_ci_tests.patch: refreshed
-------------------------------------------------------------------
Sat Jan 27 10:09:34 UTC 2024 - xtex <xtexchooser@duck.com>
- Add libalternative config for corepack
-------------------------------------------------------------------
Mon Jan 8 15:02:53 UTC 2024 - Adam Majer <adam.majer@suse.de>
- Update to 21.5.0:
* module: merge config with package_json_reader
* src: move package resolver to c++
* doc:
+ deprecate hash constructor
+ deprecate dirent.path
- linker_lto_jobs.patch: refreshed
-------------------------------------------------------------------
Tue Jan 2 14:25:03 UTC 2024 - Adam Majer <adam.majer@suse.de>
- c-ares-fixes.patch: fixes unit tests for new c-ares
-------------------------------------------------------------------
Mon Dec 11 07:31:07 UTC 2023 - Adam Majer <adam.majer@suse.de>
- Update to 21.4.0:
* fs: introduce dirent.parentPath
* fs: use default w flag for writeFileSync with utf8 encoding
- Changes in 21.3.0:
* New --disable-warning flag
* Fast fs.writeFileSync with UTF-8 Strings
For details, see
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V21.md#21.4.0
- fix_ci_tests.patch: added workaround for missing deps
-------------------------------------------------------------------
Thu Nov 23 10:44:16 UTC 2023 - Adam Majer <adam.majer@suse.de>
- node-gyp-addon-gypi.patch: fix misapplied patch (bsc#1217424)
-------------------------------------------------------------------
Wed Nov 15 15:18:00 UTC 2023 - Adam Majer <adam.majer@suse.de>
- Update to 21.2.0
* esm: add import.meta.dirname and import.meta.filename
* fs: add stacktrace to fs/promises
* lib:
+ add --no-experimental-global-navigator CLI flag
+ add navigator.language & navigator.languages
+ add navigator.platform
* stream:
+ add support for deflate-raw format to webstreams compression
+ use Array for Readable buffer
+ 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
For details see
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V21.md#21.2.0
- nodejs20-zlib-1.3.patch: upstreamed, dropped
- node-gyp-addon-gypi.patch: rebased
- fix_ci_tests.patch: partially upstreamed
-------------------------------------------------------------------
Tue Nov 7 09:18:37 UTC 2023 - Adam Majer <adam.majer@suse.de>

View File

@@ -1,7 +1,7 @@
#
# spec file for package nodejs21
#
# 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: nodejs21
Version: 21.1.0
Version: 21.7.3
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,6 @@ Patch200: versioned.patch
Patch305: qemu_timeouts_arches.patch
Patch308: node-gyp-config.patch
Patch309: gcc13.patch
Patch311: nodejs20-zlib-1.3.patch
BuildRequires: pkg-config
BuildRequires: fdupes
@@ -293,7 +297,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,19 +308,19 @@ BuildRequires: bundled_openssl_should_not_be_required
%if ! 0%{with intree_cares}
BuildRequires: pkgconfig(libcares) >= 1.17.0
%else
Provides: bundled(libcares2) = 1.20.1
Provides: bundled(libcares2) = 1.27.0
%endif
%if ! 0%{with intree_icu}
BuildRequires: pkgconfig(icu-i18n) >= 71
%else
Provides: bundled(icu) = 73.2
Provides: bundled(icu) = 74.2
%endif
%if ! 0%{with intree_nghttp2}
BuildRequires: libnghttp2-devel >= 1.41.0
%else
Provides: bundled(nghttp2) = 1.57.0
Provides: bundled(nghttp2) = 1.60.0
%endif
%if 0%{with valgrind_tests}
@@ -365,32 +369,30 @@ ExclusiveArch: not_buildable
%endif
%endif
Provides: bundled(uvwasi) = 0.0.19
Provides: bundled(libuv) = 1.46.0
Provides: bundled(v8) = 11.8.172.15
Provides: bundled(uvwasi) = 0.0.20
Provides: bundled(libuv) = 1.48.0
Provides: bundled(v8) = 11.8.172.17
%if %{with intree_brotli}
Provides: bundled(brotli) = 1.0.9
Provides: bundled(brotli) = 1.1.0
%else
BuildRequires: pkgconfig(libbrotlidec)
%endif
Provides: bundled(llhttp) = 9.1.2
Provides: bundled(ngtcp2) = 0.8.1
Provides: bundled(base64) = 0.5.0
Provides: bundled(simdutf) = 3.2.18
Provides: bundled(llhttp) = 9.2.1
Provides: bundled(ngtcp2) = 1.3.0
Provides: bundled(base64) = 0.5.2
Provides: bundled(simdutf) = 4.0.8
Provides: bundled(simdjson) = 3.7.0
# bundled url-ada parser, not ada
Provides: bundled(ada) = 2.7.2
Provides: bundled(ada) = 2.7.6
Provides: bundled(node-@fastify/busboy) = 2.0.0
Provides: bundled(node-acorn) = 8.10.0
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-acorn) = 8.11.3
Provides: bundled(node-acorn-walk) = 8.3.2
Provides: bundled(node-cjs-module-lexer) = 1.2.2
Provides: bundled(node-corepack) = 0.22.0
Provides: bundled(node-corepack) = 0.25.2
Provides: bundled(node-minimatch) = 9.0.3
Provides: bundled(node-undici) = 5.26.4
Provides: bundled(node-undici) = 6.11.1
%description
Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js
@@ -419,7 +421,7 @@ Requires: nodejs-common
Requires: nodejs21 = %{version}
Provides: nodejs-npm = %{version}
Obsoletes: nodejs-npm < 4.0.0
Provides: npm(npm) = 10.2.0
Provides: npm(npm) = 10.5.0
Provides: npm = %{version}
%if 0%{?suse_version} >= 1500
%if %{node_version_number} >= 10
@@ -427,12 +429,8 @@ 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
@@ -440,116 +438,94 @@ 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.2
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-cacache) = 18.0.2
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
Provides: bundled(node-debug) = 4.3.4
Provides: bundled(node-defaults) = 1.0.4
Provides: bundled(node-delegates) = 1.0.0
Provides: bundled(node-diff) = 5.1.0
Provides: bundled(node-diff) = 5.2.0
Provides: bundled(node-eastasianwidth) = 0.2.0
Provides: bundled(node-emoji-regex) = 8.0.0
Provides: bundled(node-emoji-regex) = 9.2.2
Provides: bundled(node-encoding) = 0.1.13
Provides: bundled(node-env-paths) = 2.2.1
Provides: bundled(node-err-code) = 2.0.3
Provides: bundled(node-event-target-shim) = 5.0.1
Provides: bundled(node-events) = 3.3.0
Provides: bundled(node-exponential-backoff) = 3.1.1
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.10
Provides: bundled(node-glob) = 10.3.3
Provides: bundled(node-glob) = 7.2.3
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-hasown) = 2.0.1
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-http-proxy-agent) = 7.0.2
Provides: bundled(node-https-proxy-agent) = 7.0.4
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-ignore-walk) = 6.0.4
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-address) = 9.0.5
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.3.6
Provides: bundled(node-json-parse-even-better-errors) = 3.0.0
Provides: bundled(node-jsbn) = 1.1.0
Provides: bundled(node-json-parse-even-better-errors) = 3.0.1
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.1
Provides: bundled(node-libnpmdiff) = 6.0.2
Provides: bundled(node-libnpmexec) = 7.0.2
Provides: bundled(node-libnpmfund) = 5.0.0
Provides: bundled(node-libnpmhook) = 10.0.0
Provides: bundled(node-libnpmorg) = 6.0.1
Provides: bundled(node-libnpmpack) = 6.0.2
Provides: bundled(node-libnpmpublish) = 9.0.1
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-libnpmaccess) = 8.0.2
Provides: bundled(node-libnpmdiff) = 6.0.7
Provides: bundled(node-libnpmexec) = 7.0.8
Provides: bundled(node-libnpmfund) = 5.0.5
Provides: bundled(node-libnpmhook) = 10.0.1
Provides: bundled(node-libnpmorg) = 6.0.2
Provides: bundled(node-libnpmpack) = 6.0.7
Provides: bundled(node-libnpmpublish) = 9.0.4
Provides: bundled(node-libnpmsearch) = 7.0.1
Provides: bundled(node-libnpmteam) = 6.0.1
Provides: bundled(node-libnpmversion) = 5.0.2
Provides: bundled(node-lru-cache) = 10.2.0
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-collect) = 2.0.1
Provides: bundled(node-minipass-fetch) = 3.0.4
Provides: bundled(node-minipass-flush) = 1.0.5
Provides: bundled(node-minipass-json-stream) = 1.0.1
@@ -561,34 +537,29 @@ 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.1
Provides: bundled(node-npm-packlist) = 8.0.0
Provides: bundled(node-npm-packlist) = 8.0.2
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-pacote) = 17.0.6
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
Provides: bundled(node-postcss-selector-parser) = 6.0.15
Provides: bundled(node-proc-log) = 3.0.0
Provides: bundled(node-process) = 0.11.10
Provides: bundled(node-promise-all-reject-late) = 1.0.1
Provides: bundled(node-promise-call-limit) = 1.0.2
Provides: bundled(node-promise-call-limit) = 3.0.1
Provides: bundled(node-promise-inflight) = 1.0.1
Provides: bundled(node-promise-retry) = 2.0.1
Provides: bundled(node-promzard) = 1.0.0
@@ -597,29 +568,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-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-semver) = 7.6.0
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-sigstore) = 2.1.0
Provides: bundled(node-signal-exit) = 4.1.0
Provides: bundled(node-sigstore) = 2.2.2
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) = 2.8.0
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-exceptions) = 2.5.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.17
Provides: bundled(node-sprintf-js) = 1.1.3
Provides: bundled(node-ssri) = 10.0.5
Provides: bundled(node-string_decoder) = 1.3.0
Provides: bundled(node-string-width) = 4.2.3
Provides: bundled(node-string-width) = 5.1.2
Provides: bundled(node-strip-ansi) = 6.0.1
@@ -629,7 +594,7 @@ 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
Provides: bundled(node-tuf-js) = 2.1.0
Provides: bundled(node-tuf-js) = 2.2.0
Provides: bundled(node-unique-filename) = 3.0.0
Provides: bundled(node-unique-slug) = 4.0.0
Provides: bundled(node-util-deprecate) = 1.0.2
@@ -642,7 +607,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
@@ -695,7 +659,7 @@ tar Jxf %{SOURCE11}
%endif
# downgrade node-gyp to last version that supports python 3.4 for SLE12
%if 0%{?suse_version} && 0%{?suse_version} < 1500 && %{node_version_number} >= 16
%if 0%{?suse_version} && 0%{?suse_version} < 1500 && %{node_version_number} >= 16 && %{node_version_number} < 22
rm -r deps/npm/node_modules/node-gyp
mkdir deps/npm/node_modules/node-gyp
pushd deps/npm/node_modules/node-gyp
@@ -703,37 +667,41 @@ tar Jxf %{SOURCE5}
popd
%if %{node_version_number} >= 19
%patch308 -p1
%patch -P 308 -p1
%else
%endif
%endif
%patch1 -p1
%patch3 -p1
%if %{node_version_number} <= 12 && 0%{?suse_version} < 1500
%patch5 -p1
%patch -P 1 -p1
%patch -P 3 -p1
%if 0%{?suse_version} < 1500
%endif
%patch7 -p1
%if %{node_version_number} <= 12 && 0%{?suse_version} < 1500
%patch -P 5 -p1
%endif
%patch -P 7 -p1
%if 0%{with valgrind_tests}
%endif
%patch13 -p1
%patch100 -p1
%patch101 -p1
%patch102 -p1
%patch -P 13 -p1
%patch -P 100 -p1
%patch -P 101 -p1
%if 0%{?suse_version} >= 1500 || 0%{?suse_version} == 0
%patch -P 102 -p1
%endif
# Add check_output to configure script (not part of Python 2.6 in SLE11).
%if 0%{?suse_version} == 1110
%endif
%patch104 -p1
%patch106 -p1
%patch110 -p1
%patch120 -p1
%patch132 -p1
%patch -P 104 -p1
%patch -P 106 -p1
%patch -P 110 -p1
%patch -P 120 -p1
%patch -P 132 -p1
%if ! 0%{with openssl_RSA_get0_pss_params}
%endif
%patch200 -p1
%patch -P 200 -p1
%patch305 -p1
%patch309 -p1
%patch311 -p1
%patch -P 305 -p1
%patch -P 309 -p1
%if %{node_version_number} == 12
# minimist security update - patch50
@@ -805,9 +773,6 @@ EOF
. ./spec.build.config
# Node.js 4.x does not include the ICU database in the source tarball.
%define has_small_icu %(test -d "deps/icu-small" && echo 1 || echo 0)
./configure \
--prefix=%{_prefix} \
%if 0%{?with nodejs_lto}
@@ -822,11 +787,6 @@ EOF
%endif
%if ! 0%{with intree_icu}
--with-intl=system-icu \
%else
%if %{has_small_icu}
--with-intl=small-icu \
--with-icu-source=deps/icu-small \
%endif
%endif
%if ! 0%{with intree_nghttp2}
--shared-nghttp2 \
@@ -920,6 +880,12 @@ ln -s -f npx-default %{buildroot}%{_sysconfdir}/alternatives/npx-default
ln -s -f npx.1%{ext_man} %{buildroot}%{_sysconfdir}/alternatives/npx.1%{ext_man}
ln -s %{_sysconfdir}/alternatives/npx-default %{buildroot}%{_bindir}/npx-default
ln -s %{_sysconfdir}/alternatives/npx.1%{ext_man} %{buildroot}%{_mandir}/man1/npx.1%{ext_man}
%if %{node_version_number} >= 14
ln -s -f corepack-default %{buildroot}%{_sysconfdir}/alternatives/corepack-default
ln -s -f corepack.1%{ext_man} %{buildroot}%{_sysconfdir}/alternatives/corepack.1%{ext_man}
ln -s %{_sysconfdir}/alternatives/corepack-default %{buildroot}%{_bindir}/corepack-default
ln -s %{_sysconfdir}/alternatives/corepack.1%{ext_man} %{buildroot}%{_mandir}/man1/corepack.1%{ext_man}
%endif
%endif
# libalternatives - can always ship
@@ -938,6 +904,13 @@ binary=%{_bindir}/npx%{node_version_number}
man=npx%{node_version_number}.1
group=npm,npx
EOF
%if %{node_version_number} >= 14
mkdir -p %{buildroot}%{_datadir}/libalternatives/corepack;
cat > %{buildroot}%{_datadir}/libalternatives/corepack/%{node_version_number}.conf <<EOF
binary=%{_bindir}/corepack%{node_version_number}
man=corepack%{node_version_number}.1
EOF
%endif
# We need to own license directory on old versions of SLE
%if 0%{?suse_version} < 1500
@@ -1083,6 +1056,14 @@ make test-ci
%defattr(-, root, root)
%{_bindir}/corepack%{node_version_number}
%{_libdir}/node_modules/corepack%{node_version_number}
%dir %{_datadir}/libalternatives/corepack
%{_datadir}/libalternatives/corepack/%{node_version_number}.conf
%if ! %{with libalternatives}
%ghost %{_bindir}/corepack-default
%ghost %{_mandir}/man1/corepack.1%{ext_man}
%ghost %{_sysconfdir}/alternatives/corepack-default
%ghost %{_sysconfdir}/alternatives/corepack.1%{ext_man}
%endif
%endif
%files devel
@@ -1107,6 +1088,11 @@ update-alternatives --remove node-default %{_bindir}/node%{node_version_number}
update-alternatives --remove npm-default %{_bindir}/npm%{node_version_number}
update-alternatives --remove npx-default %{_bindir}/npx%{node_version_number}
%if %{node_version_number} >= 14
%post -n corepack%{node_version_number}
update-alternatives --remove corepack-default %{_bindir}/corepack%{node_version_number}
%endif
%else
%pre
# remove files that are no longer owned but provided by update-alternatives
@@ -1146,6 +1132,24 @@ if [ ! -f %{_bindir}/npx%{node_version_number} ] ; then
update-alternatives --remove npx-default %{_bindir}/npx%{node_version_number}
fi
%if %{node_version_number} >= 14
%pre -n corepack%{node_version_number}
# remove files that are no longer owned but provided by update-alternatives
if ! [ -L %{_mandir}/man1/corepack.1%{ext_man} ]; then
rm -f %{_mandir}/man1/corepack.1%{ext_man}
fi
%post -n corepack%{node_version_number}
update-alternatives \
--install %{_bindir}/corepack-default corepack-default %{_bindir}/corepack%{node_version_number} %{node_version_number} \
--slave %{_mandir}/man1/corepack.1%{ext_man} corepack.1%{ext_man} %{_mandir}/man1/corepack%{node_version_number}.1%{ext_man}
%postun -n corepack%{node_version_number}
if [ ! -f %{_bindir}/corepack%{node_version_number} ] ; then
update-alternatives --remove corepack-default %{_bindir}/corepack%{node_version_number}
fi
%endif
%endif
%changelog

View File

@@ -8,75 +8,75 @@ management via update_alternatives.
This is also important for generation of binary
modules for multiple versions of NodeJS
Index: node-v21.1.0/Makefile
Index: node-v21.7.1/Makefile
===================================================================
--- node-v21.1.0.orig/Makefile
+++ node-v21.1.0/Makefile
--- node-v21.7.1.orig/Makefile
+++ node-v21.7.1/Makefile
@@ -76,7 +76,7 @@ BUILDTYPE_LOWER := $(shell echo $(BUILDT
EXEEXT := $(shell $(PYTHON) -c \
"import sys; print('.exe' if sys.platform == 'win32' else '')")
-NODE_EXE = node$(EXEEXT)
+NODE_EXE = node21$(EXEEXT)
NODE ?= ./$(NODE_EXE)
# Use $(PWD) so we can cd to anywhere before calling this
NODE ?= "$(PWD)/$(NODE_EXE)"
NODE_G_EXE = node_g$(EXEEXT)
NPM ?= ./deps/npm/bin/npm-cli.js
Index: node-v21.1.0/tools/install.py
Index: node-v21.7.1/tools/install.py
===================================================================
--- node-v21.1.0.orig/tools/install.py
+++ node-v21.1.0/tools/install.py
@@ -86,7 +86,7 @@ def uninstall(paths, dst):
try_remove(path, dst)
--- node-v21.7.1.orig/tools/install.py
+++ node-v21.7.1/tools/install.py
@@ -87,7 +87,7 @@ def uninstall(options, paths, dest):
try_remove(options, path, dest)
def package_files(action, name, bins):
- target_path = libdir() + '/node_modules/' + name + '/'
+ target_path = libdir() + '/node_modules/' + name + '21/'
def package_files(options, action, name, bins):
- target_path = os.path.join(libdir(options), 'node_modules', name)
+ target_path = os.path.join(libdir(options), 'node_modules', name + '21')
# don't install npm if the target path is a symlink, it probably means
# that a dev version of npm is installed there
@@ -106,19 +106,19 @@ def package_files(action, name, bins):
@@ -108,19 +108,19 @@ def package_files(options, action, name,
if action == uninstall:
action([link_path], 'bin/' + bin_name)
action(options, [link_path], os.path.join('bin', bin_name))
elif action == install:
- try_symlink('../' + libdir() + '/node_modules/' + name + '/' + bin_target, link_path)
+ try_symlink('../' + libdir() + '/node_modules/' + name + '21/' + bin_target, link_path)
- try_symlink(options, os.path.join('..', libdir(options), 'node_modules', name, bin_target), link_path)
+ try_symlink(options, os.path.join('..', libdir(options), 'node_modules', name + '21', bin_target), link_path)
else:
assert 0 # unhandled action type
def npm_files(action):
package_files(action, 'npm', {
def npm_files(options, action):
package_files(options, action, 'npm', {
- 'npm': 'bin/npm-cli.js',
- 'npx': 'bin/npx-cli.js',
+ 'npm21': 'bin/npm-cli.js',
+ 'npx21': 'bin/npx-cli.js',
})
def corepack_files(action):
package_files(action, 'corepack', {
def corepack_files(options, action):
package_files(options, action, 'corepack', {
- 'corepack': 'dist/corepack.js',
+ 'corepack21': 'dist/corepack.js',
# Not the default just yet:
# 'yarn': 'dist/yarn.js',
# 'yarnpkg': 'dist/yarn.js',
@@ -147,7 +147,7 @@ def subdir_files(path, dest, action):
@@ -149,7 +149,7 @@ def subdir_files(options, path, dest, ac
action(options, files_in_path, subdir + os.path.sep)
def files(action):
is_windows = sys.platform == 'win32'
- output_file = 'node'
+ output_file = 'node21'
output_prefix = 'out/Release/'
if is_windows:
@@ -189,7 +189,7 @@ def files(action):
def files(options, action):
- node_bin = 'node'
+ node_bin = 'node21'
if options.is_win:
node_bin += '.exe'
action(options, [os.path.join(options.build_dir, node_bin)], os.path.join('bin', node_bin))
@@ -190,7 +190,7 @@ def files(options, action):
if 'freebsd' in sys.platform or 'openbsd' in sys.platform:
action(['doc/node.1'], 'man/man1/')
action(options, ['doc/node.1'], 'man/man1/')
else:
- action(['doc/node.1'], 'share/man/man1/')
+ action(['doc/node.1'], 'share/man/man1/node21.1')
- action(options, ['doc/node.1'], 'share/man/man1/')
+ action(options, ['doc/node.1'], 'share/man/man1/node21.1')
if 'true' == variables.get('node_install_npm'):
npm_files(action)
@@ -325,28 +325,28 @@ def headers(action):
if 'true' == options.variables.get('node_install_npm'):
npm_files(options, action)
@@ -333,28 +333,28 @@ def headers(options, action):
'src/node_buffer.h',
'src/node_object_wrap.h',
'src/node_version.h',
@@ -85,27 +85,27 @@ Index: node-v21.1.0/tools/install.py
# Add the expfile that is created on AIX
if sys.platform.startswith('aix') or sys.platform == "os400":
- action(['out/Release/node.exp'], 'include/node/')
+ action(['out/Release/node.exp'], 'include/node21/')
- action(options, ['out/Release/node.exp'], 'include/node/')
+ action(options, ['out/Release/node.exp'], 'include/node21/')
- subdir_files('deps/v8/include', 'include/node/', wanted_v8_headers)
+ subdir_files('deps/v8/include', 'include/node21/', wanted_v8_headers)
- subdir_files(options, os.path.join(options.v8_dir, 'include'), 'include/node/', wanted_v8_headers)
+ subdir_files(options, os.path.join(options.v8_dir, 'include'), 'include/node21/', wanted_v8_headers)
if 'false' == variables.get('node_shared_libuv'):
- subdir_files('deps/uv/include', 'include/node/', action)
+ subdir_files('deps/uv/include', 'include/node21/', action)
if 'false' == options.variables.get('node_shared_libuv'):
- subdir_files(options, 'deps/uv/include', 'include/node/', action)
+ subdir_files(options, 'deps/uv/include', 'include/node21/', action)
if 'true' == variables.get('node_use_openssl') and \
'false' == variables.get('node_shared_openssl'):
- subdir_files('deps/openssl/openssl/include/openssl', 'include/node/openssl/', action)
- subdir_files('deps/openssl/config/archs', 'include/node/openssl/archs', action)
- subdir_files('deps/openssl/config', 'include/node/openssl', action)
+ subdir_files('deps/openssl/openssl/include/openssl', 'include/node21/openssl/', action)
+ subdir_files('deps/openssl/config/archs', 'include/node21/openssl/archs', action)
+ subdir_files('deps/openssl/config', 'include/node21/openssl', action)
if 'true' == options.variables.get('node_use_openssl') and \
'false' == options.variables.get('node_shared_openssl'):
- subdir_files(options, 'deps/openssl/openssl/include/openssl', 'include/node/openssl/', action)
- subdir_files(options, 'deps/openssl/config/archs', 'include/node/openssl/archs', action)
- subdir_files(options, 'deps/openssl/config', 'include/node/openssl', action)
+ subdir_files(options, 'deps/openssl/openssl/include/openssl', 'include/node21/openssl/', action)
+ subdir_files(options, 'deps/openssl/config/archs', 'include/node21/openssl/archs', action)
+ subdir_files(options, 'deps/openssl/config', 'include/node21/openssl', action)
if 'false' == variables.get('node_shared_zlib'):
action([
if 'false' == options.variables.get('node_shared_zlib'):
action(options, [
'deps/zlib/zconf.h',
'deps/zlib/zlib.h',
- ], 'include/node/')
@@ -113,10 +113,10 @@ Index: node-v21.1.0/tools/install.py
if sys.platform == 'zos':
zoslibinc = os.environ.get('ZOSLIB_INCLUDES')
Index: node-v21.1.0/doc/node.1
Index: node-v21.7.1/doc/node.1
===================================================================
--- node-v21.1.0.orig/doc/node.1
+++ node-v21.1.0/doc/node.1
--- node-v21.7.1.orig/doc/node.1
+++ node-v21.7.1/doc/node.1
@@ -31,24 +31,24 @@
.Dt NODE 1
.
@@ -146,10 +146,10 @@ Index: node-v21.1.0/doc/node.1
.Op Fl -v8-options
.
.\"======================================================================
Index: node-v21.1.0/src/node_main.cc
Index: node-v21.7.1/src/node_main.cc
===================================================================
--- node-v21.1.0.orig/src/node_main.cc
+++ node-v21.1.0/src/node_main.cc
--- node-v21.7.1.orig/src/node_main.cc
+++ node-v21.7.1/src/node_main.cc
@@ -94,6 +94,7 @@ int wmain(int argc, wchar_t* wargv[]) {
// UNIX
@@ -158,11 +158,11 @@ Index: node-v21.1.0/src/node_main.cc
return node::Start(argc, argv);
}
#endif
Index: node-v21.1.0/tools/test.py
Index: node-v21.7.1/tools/test.py
===================================================================
--- node-v21.1.0.orig/tools/test.py
+++ node-v21.1.0/tools/test.py
@@ -953,7 +953,7 @@ class Context(object):
--- node-v21.7.1.orig/tools/test.py
+++ node-v21.7.1/tools/test.py
@@ -954,7 +954,7 @@ class Context(object):
if self.vm is not None:
return self.vm
if arch == 'none':
@@ -171,10 +171,10 @@ Index: node-v21.1.0/tools/test.py
else:
name = 'out/%s.%s/node' % (arch, mode)
Index: node-v21.1.0/node.gyp
Index: node-v21.7.1/node.gyp
===================================================================
--- node-v21.1.0.orig/node.gyp
+++ node-v21.1.0/node.gyp
--- node-v21.7.1.orig/node.gyp
+++ node-v21.7.1/node.gyp
@@ -24,8 +24,8 @@
'node_shared_openssl%': 'false',
'node_v8_options%': '',
@@ -186,10 +186,10 @@ Index: node-v21.1.0/node.gyp
'node_intermediate_lib_type%': 'static_library',
'node_builtin_modules_path%': '',
'linked_module_files': [
Index: node-v21.1.0/test/fixtures/errors/promise_unhandled_warn_with_error.snapshot
Index: node-v21.7.1/test/fixtures/errors/promise_unhandled_warn_with_error.snapshot
===================================================================
--- node-v21.1.0.orig/test/fixtures/errors/promise_unhandled_warn_with_error.snapshot
+++ node-v21.1.0/test/fixtures/errors/promise_unhandled_warn_with_error.snapshot
--- node-v21.7.1.orig/test/fixtures/errors/promise_unhandled_warn_with_error.snapshot
+++ node-v21.7.1/test/fixtures/errors/promise_unhandled_warn_with_error.snapshot
@@ -6,5 +6,5 @@
at *
at *
@@ -197,10 +197,10 @@ Index: node-v21.1.0/test/fixtures/errors/promise_unhandled_warn_with_error.snaps
-(Use `node --trace-warnings ...` to show where the warning was created)
+(Use `node21 --trace-warnings ...` to show where the warning was created)
(node:*) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https:*nodejs.org*api*cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
Index: node-v21.1.0/test/parallel/test-snapshot-warning.js
Index: node-v21.7.1/test/parallel/test-snapshot-warning.js
===================================================================
--- node-v21.1.0.orig/test/parallel/test-snapshot-warning.js
+++ node-v21.1.0/test/parallel/test-snapshot-warning.js
--- node-v21.7.1.orig/test/parallel/test-snapshot-warning.js
+++ node-v21.7.1/test/parallel/test-snapshot-warning.js
@@ -60,7 +60,7 @@ tmpdir.refresh();
stderr(output) {
let match = output.match(/Warning: test warning/g);
@@ -236,10 +236,10 @@ Index: node-v21.1.0/test/parallel/test-snapshot-warning.js
+ match = warnings2.match(/Use `node21 --trace-warnings/g);
assert.strictEqual(match.length, 1);
}
Index: node-v21.1.0/test/fixtures/errors/throw_error_with_getter_throw.snapshot
Index: node-v21.7.1/test/fixtures/errors/throw_error_with_getter_throw.snapshot
===================================================================
--- node-v21.1.0.orig/test/fixtures/errors/throw_error_with_getter_throw.snapshot
+++ node-v21.1.0/test/fixtures/errors/throw_error_with_getter_throw.snapshot
--- node-v21.7.1.orig/test/fixtures/errors/throw_error_with_getter_throw.snapshot
+++ node-v21.7.1/test/fixtures/errors/throw_error_with_getter_throw.snapshot
@@ -3,6 +3,6 @@
throw { * eslint-disable-line no-throw-literal
^
@@ -248,10 +248,10 @@ Index: node-v21.1.0/test/fixtures/errors/throw_error_with_getter_throw.snapshot
+(Use `node21 --trace-uncaught ...` to show where the exception was thrown)
Node.js *
Index: node-v21.1.0/test/fixtures/errors/throw_undefined.snapshot
Index: node-v21.7.1/test/fixtures/errors/throw_undefined.snapshot
===================================================================
--- node-v21.1.0.orig/test/fixtures/errors/throw_undefined.snapshot
+++ node-v21.1.0/test/fixtures/errors/throw_undefined.snapshot
--- node-v21.7.1.orig/test/fixtures/errors/throw_undefined.snapshot
+++ node-v21.7.1/test/fixtures/errors/throw_undefined.snapshot
@@ -3,6 +3,6 @@
throw undefined;
^
@@ -260,10 +260,10 @@ Index: node-v21.1.0/test/fixtures/errors/throw_undefined.snapshot
+(Use `node21 --trace-uncaught ...` to show where the exception was thrown)
Node.js *
Index: node-v21.1.0/test/fixtures/errors/throw_null.snapshot
Index: node-v21.7.1/test/fixtures/errors/throw_null.snapshot
===================================================================
--- node-v21.1.0.orig/test/fixtures/errors/throw_null.snapshot
+++ node-v21.1.0/test/fixtures/errors/throw_null.snapshot
--- node-v21.7.1.orig/test/fixtures/errors/throw_null.snapshot
+++ node-v21.7.1/test/fixtures/errors/throw_null.snapshot
@@ -3,6 +3,6 @@
throw null;
^