From 5b4702fb97c84ccc848d4f383464bd264456545fe8be4ba45dd85fdb32f73373 Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Thu, 23 Nov 2023 10:43:36 +0000 Subject: [PATCH 1/6] - 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 - Update to 20.9.0: * No changes, just LTS transition OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs20?expand=0&rev=50 --- SHASUMS256.txt | 82 ++++++++++---------- SHASUMS256.txt.sig | Bin 438 -> 566 bytes fix_ci_tests.patch | 52 ++++++------- node-gyp-addon-gypi.patch | 37 +++++---- node-v20.10.0.tar.xz | 3 + node-v20.8.1.tar.xz | 3 - nodejs20.changes | 25 ++++++ nodejs20.spec | 159 ++++++++++++++------------------------ update_npm_tarball.sh | 2 +- 9 files changed, 171 insertions(+), 192 deletions(-) create mode 100644 node-v20.10.0.tar.xz delete mode 100644 node-v20.8.1.tar.xz diff --git a/SHASUMS256.txt b/SHASUMS256.txt index 5945602..9f9f70a 100644 --- a/SHASUMS256.txt +++ b/SHASUMS256.txt @@ -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 +97642ac79c8ec4778c20412256fdc9cd1c3ba782d67134fa43e17abdfe2dd3eb node-v20.10.0-aix-ppc64.tar.gz +b7ac2932c6982e5c433d00485fd1914d5f87a474dd575f29e81bed03155585a2 node-v20.10.0-arm64.msi +68b93099451d77aac116cf8fce179cabcf53fec079508dc6b39d3a086fb461a8 node-v20.10.0-darwin-arm64.tar.gz +39b3780ade080ea0b294f7b0df97e31d8fc19dce3452cd6f98f0576f64747df9 node-v20.10.0-darwin-arm64.tar.xz +5ff5e8abd3eea6e5f507eb6677554f5b2188eedef654096aa4168a9941e91a32 node-v20.10.0-darwin-x64.tar.gz +2f3ed01243e4311476e2c0d8a361fd8b3909278935b09af83cc875e03df95e07 node-v20.10.0-darwin-x64.tar.xz +536b07207e38d7ed316480b036ccc19ebbe60ac0cb4974f9b4fdd8eea41e7653 node-v20.10.0-headers.tar.gz +a6bfda44c5a082a6a2af3f78ee9d7a516704ff489d6f47f2733f70238511031f node-v20.10.0-headers.tar.xz +8354cdb7cb2ad585ee6bb24819f5229bb48c118c5dabb282dfed153d766a68a4 node-v20.10.0-linux-arm64.tar.gz +21f19d1f9d2345c5a4ed416c21d89cec20fe4b0715255d49463a4d37e283b4c6 node-v20.10.0-linux-arm64.tar.xz +cf0c2838a6bb4aa9422084c89fd9447dfc61915754859ac9b1178ea57c953baf node-v20.10.0-linux-armv7l.tar.gz +2e84bc3051554c123216122daa23e3933472992a6552963dbda3a18866c4b34a node-v20.10.0-linux-armv7l.tar.xz +4ebedbc3a02e620aa4f1460cb336bcc93c958a2720c14e339f13cd9bc0be606b node-v20.10.0-linux-ppc64le.tar.gz +d2c5ecc45e8b47308e22b9f92cf11188f9d218d0d974d0f4b419f57c1fbc6e16 node-v20.10.0-linux-ppc64le.tar.xz +70c6279156bc28f410d5c1d89d777c8a447621c5f9e1c4a3a270a3c3245e9a38 node-v20.10.0-linux-s390x.tar.gz +97a689117873cb46c7416185b3d8207d44846f69a33d4e143c1c3c74b15fa57a node-v20.10.0-linux-s390x.tar.xz +d3f0908a9d9190a8525c5b9a716ed91bb57e908555841b0c47f75b2a001ff91b node-v20.10.0-linux-x64.tar.gz +3fe4ec5d70c8b4ffc1461dec83ab23fc70124e137c4cbbe1ccc9d6ae6ec04a7d node-v20.10.0-linux-x64.tar.xz +31e94e30b14a74f16f5d2a2d6e353e7007b2357397dff6ef285d498ec6ee1093 node-v20.10.0.pkg +89680f4ebbf36e0a199be4ed416701fa167aad8f86111c87a3db9207b5d56baa node-v20.10.0.tar.gz +32eb256eebd8cacd5574e6631e54b42be7ec8ebe25ad47a8ca685403bad15535 node-v20.10.0.tar.xz +500597317615df3eac27022ccf5d0cc719c60a18373a47a4d0786fd8d746200d node-v20.10.0-win-arm64.7z +cc4fd729b4646db06535248d349bcc2883ed1fa3804c31d447e72c9ec4e53566 node-v20.10.0-win-arm64.zip +4d0f27ec72103f67eb904e7c17d2b7fb99816957b1cff9df1bd82a6507f1f265 node-v20.10.0-win-x64.7z +e5b861814a97e28ae7ac06a34e88fd5e0565b447d270c26e20b5ef60bf0aaaf9 node-v20.10.0-win-x64.zip +567da0e16ac2f06757c735f14689b1a38ff38bb24df53561ada9ab71c9ba1f79 node-v20.10.0-win-x86.7z +4f46161a6252043eba426bb75be5dc7140a99add024011d101bda8e00756dcfa node-v20.10.0-win-x86.zip +90ae1666c56988a6cc38424e8b9bffd05defe0e892a46aa606b94f7552cfb581 node-v20.10.0-x64.msi +39c3f584ebca40f61fb610739722b7ec163e214f7f9d3e73bd980ce658cffa56 node-v20.10.0-x86.msi +48861a50d47e387f77ee8387ad0b8c1fe6ed9a33234977c3f0715a5fc43775bb win-arm64/node.exe +5fd8de535c4106002a21e7dbce76c46158783436eac6856060f5c1a24c354a6e win-arm64/node.lib +87ce28e3f2bef1009070842be55450e202991eccc3d068e59541b089678414b7 win-arm64/node_pdb.7z +7b68d43cefd91787ac5669cab12c6996be8210e9b755d48a4ee215a92872b31f win-arm64/node_pdb.zip +890e6b6ace6efcbd50b2678322cbaef1ba03f316f8515e113fa00d474f8ee25f win-x64/node.exe +15870bcb4463d5e8bd5f8f15e0d771fe516f98945a2aa8143f608e75e4a338e0 win-x64/node.lib +3f7f5ec16ff731dcb1d9617d32559cb201e0323e5bddbadecee061a97a47e3e1 win-x64/node_pdb.7z +41844b66e3383b508fc5d18486b23abb3ee9018ecdbd68deea36677921129f5d win-x64/node_pdb.zip +692a1d030b69e793c4e1da85e23e882670aa499020ab1fbb4a323c27a055a15e win-x86/node.exe +decf15298bb570f86253747a42f1c414b36e9b49a59c5fbef06545ad9cf17970 win-x86/node.lib +bcc03224319ad8ea5427d24b9a93cb3a9f1c572100f496c15c3d509498cbdfd0 win-x86/node_pdb.7z +c753e562d5f46024938d2399f1328e3c81905ea4f07ed08663fc303d7ef0058b win-x86/node_pdb.zip diff --git a/SHASUMS256.txt.sig b/SHASUMS256.txt.sig index ad1b2988436f65e09f25584378b4a5c306d97a325f50db7ada3383cd99ebca57..7e82d13f363f0983b2748df94ab6d307de0eea41bb218cdcd550b1dead86064b 100644 GIT binary patch literal 566 zcmV-60?GY}0y6{v0SEvc79j+W%%MN;9Skm!0FDWF4|WZm*1YpPxRP3- z7Ks{>Kec|3%4B4!IiB!t{f+q1+6XbQRlSW--vdJ;3!C`SWbBP+CJGWbK_0AX90g-M zBU3qn6S2%L&xVw4wYJ2TRTN#21i(0FL8>dE9;9dK4ob12N%<5LiTWR0n<+ZC{UJ9F zOZ6H^4}=JYqc9}uV2n6bBS!~L^LwJ=HH~x~Ws~zVc#iLB@f*`T@7@G{z)%Xz_d_Jl zKhqmU70uX@6t%KL_P^GEkwZf)FEkMe6p~zK&npdWl7@Fj2!au9`((#vpyACQ<-`UO z3pjYk7}M$#bRkQuwpP|YG}0wofeChV8@j5Af)rf84FXHx0YC;0M^O@us&=)6a$9q; zK6C{Z;su4Z@pw&wdBq-@qsSVjP_2H+?;gLB4Ht6(8~Y?tes>?0`|dJ?iPTZEdfsbN zGE({q!0!q+^CKp=!yG}1NK4F24r4&yKMy)1ps^|ID* ztA~b~&05X1rmjA{0J}44&Lt3+`V_E$u}Zkyf+1Unz{wZ@Gx_AD*-iOCl>H%=Fv-R3 z{s={1vDMa^d_RbKQ30%a+xJpc*`5R2-x z-_KQE^!myR|4S3QN_0@TE(I>K$jEuv0LAD=(YoHh0Apm1EelP&!Mz~7t&HvlCQ=gI zERmp<53`C~i_uKQdhzUY5#VvmNOjt))7(cGi8QaKJU?8@udK#rW+SaS3uJa^#-#V6^Ml7bfqxJhf|3?@bs@jEi8M07@k9*0|3cuk|vh_p$!GDb3Y!Dhr+g zgKuj8pEnG-opc?*0|>?xmBniQ;S4ZWBV8Bdnyrh8P+<%g1yR`PyDQ3YZohe`JQSje z>Q$U__KK5j_wh0+^d)HuZFHMZ!Hg?uMZDf%uh3@gu+i1Lcl|0W_ g 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.10.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.10.0.orig/test/parallel/test-module-loading-globalpaths.js ++++ node-v20.10.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.10.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.10.0.orig/test/parallel/test-tls-passphrase.js ++++ node-v20.10.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.10.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.10.0.orig/test/parallel/test-repl-envvars.js ++++ node-v20.10.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.10.0/Makefile =================================================================== ---- node-v20.8.1.orig/Makefile -+++ node-v20.8.1/Makefile +--- node-v20.10.0.orig/Makefile ++++ node-v20.10.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,10 +68,10 @@ 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.10.0/tools/test.py =================================================================== ---- node-v20.8.1.orig/tools/test.py -+++ node-v20.8.1/tools/test.py +--- node-v20.10.0.orig/tools/test.py ++++ node-v20.10.0/tools/test.py @@ -1361,7 +1361,7 @@ def BuildOptions(): result.add_option("-s", "--suite", help="A test suite", default=[], action="append") @@ -81,18 +81,18 @@ 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.10.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.10.0.orig/test/parallel/test-crypto-dh.js ++++ node-v20.10.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). diff --git a/node-gyp-addon-gypi.patch b/node-gyp-addon-gypi.patch index 8e3e54e..f37e108 100644 --- a/node-gyp-addon-gypi.patch +++ b/node-gyp-addon-gypi.patch @@ -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) diff --git a/node-v20.10.0.tar.xz b/node-v20.10.0.tar.xz new file mode 100644 index 0000000..2d5d276 --- /dev/null +++ b/node-v20.10.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32eb256eebd8cacd5574e6631e54b42be7ec8ebe25ad47a8ca685403bad15535 +size 42201036 diff --git a/node-v20.8.1.tar.xz b/node-v20.8.1.tar.xz deleted file mode 100644 index 0daa0a0..0000000 --- a/node-v20.8.1.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f799c66f6a6386bb8ac2c75a378f740c455e97f1fe964393dd39c9f9f6efbc70 -size 41863408 diff --git a/nodejs20.changes b/nodejs20.changes index 757ad8a..1344dc0 100644 --- a/nodejs20.changes +++ b/nodejs20.changes @@ -1,3 +1,28 @@ +------------------------------------------------------------------- +Thu Nov 23 08:02:58 UTC 2023 - Adam Majer - 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 + +- Update to 20.9.0: + * No changes, just LTS transition + ------------------------------------------------------------------- Fri Oct 27 09:10:38 UTC 2023 - Adam Majer diff --git a/nodejs20.spec b/nodejs20.spec index ce227ab..0322e45 100644 --- a/nodejs20.spec +++ b/nodejs20.spec @@ -1,7 +1,7 @@ # # spec file for package nodejs20 # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,23 +15,13 @@ # Please submit bugfixes or comments via https://bugs.opensuse.org/ # -########################################################### -# -# WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! -# -# This spec file is generated from a template hosted at -# https://github.com/AdamMajer/nodejs-packaging -# -########################################################### -# Fedora doesn't have rpm-config-SUSE which provides -# ext_man in /usr/lib/rpm/macros.d/macros.obs %if 0%{?fedora_version} %define ext_man .gz %endif Name: nodejs20 -Version: 20.8.1 +Version: 20.10.0 Release: 0 # Double DWZ memory limits @@ -129,12 +119,12 @@ Source1: https://nodejs.org/dist/v%{version}/SHASUMS256.txt Source2: https://nodejs.org/dist/v%{version}/SHASUMS256.txt.sig Source3: nodejs.keyring -# Python 3.4 compatible node-gyp -### https://github.com/nodejs/node-gyp.git -### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz -Source5: node-gyp_7.1.2.tar.xz -# Only required to run unit tests in NodeJS 10+ -Source10: update_npm_tarball.sh +# Python 3.4 compatible node-gyp +### https://github.com/nodejs/node-gyp.git +### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz +Source5: node-gyp_7.1.2.tar.xz +# Only required to run unit tests in NodeJS 10+ +Source10: update_npm_tarball.sh Source11: node_modules.tar.xz Source20: bash_output_helper.bash @@ -145,8 +135,6 @@ Patch5: sle12_python3_compat.patch Patch7: manual_configure.patch Patch13: openssl_binary_detection.patch - - ## Patches specific to SUSE and openSUSE Patch100: linker_lto_jobs.patch # PATCH-FIX-OPENSUSE -- set correct path for dtrace if it is built @@ -172,10 +160,9 @@ 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 +BuildRequires: pkg-config BuildRequires: procps BuildRequires: xz BuildRequires: zlib-devel @@ -195,10 +182,10 @@ BuildRequires: config(netcfg) %if 0%{?suse_version} == 1110 # GCC 5 is only available in the SUSE:SLE-11:SP4:Update repository (SDK). %if %node_version_number >= 8 -BuildRequires: gcc5-c++ +BuildRequires: gcc5-c++ %define forced_gcc_version 5 %else -BuildRequires: gcc48-c++ +BuildRequires: gcc48-c++ %define forced_gcc_version 4.8 %endif %endif @@ -208,15 +195,15 @@ BuildRequires: gcc48-c++ # for SLE-12:Update targets %if 0%{?suse_version} == 1315 %if %node_version_number >= 17 -BuildRequires: gcc12-c++ +BuildRequires: gcc12-c++ %define forced_gcc_version 12 %else %if %node_version_number >= 14 -BuildRequires: gcc9-c++ +BuildRequires: gcc9-c++ %define forced_gcc_version 9 %else %if %node_version_number >= 8 -BuildRequires: gcc7-c++ +BuildRequires: gcc7-c++ %define forced_gcc_version 7 %endif %endif @@ -225,7 +212,7 @@ BuildRequires: gcc7-c++ %if 0%{?suse_version} == 1500 %if %node_version_number >= 17 -BuildRequires: gcc12-c++ +BuildRequires: gcc12-c++ %define forced_gcc_version 12 %endif %endif @@ -236,7 +223,6 @@ BuildRequires: gcc12-c++ BuildRequires: gcc-c++ %endif - # Python dependencies %if %node_version_number >= 14 @@ -262,8 +248,8 @@ BuildRequires: python %endif %if 0%{?suse_version} >= 1500 && %{node_version_number} >= 10 -BuildRequires: user(nobody) BuildRequires: group(nobody) +BuildRequires: user(nobody) %endif # shared openssl @@ -278,11 +264,10 @@ BuildRequires: openssl >= %{openssl_req_ver} BuildRequires: (libopenssl1_1-hmac if libopenssl-1_1-devel) BuildRequires: (libopenssl3-hmac if libopenssl-3-devel) %else -BuildRequires: openssl-1_1 >= %{openssl_req_ver} BuildRequires: libopenssl1_1-hmac +BuildRequires: openssl-1_1 >= %{openssl_req_ver} %endif - # /suse_version %endif @@ -293,7 +278,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.12 %else BuildRequires: bundled_openssl_should_not_be_required %endif @@ -304,7 +289,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} @@ -326,7 +311,7 @@ BuildRequires: valgrind %if %{with libalternatives} Suggests: alts %else -Requires(postun): %{_sbindir}/update-alternatives +Requires(postun):%{_sbindir}/update-alternatives %endif # either for update-alternatives, or their removal Requires(post): %{_sbindir}/update-alternatives @@ -365,8 +350,8 @@ ExclusiveArch: not_buildable %endif %endif -Provides: bundled(uvwasi) = 0.0.18 Provides: bundled(libuv) = 1.46.0 +Provides: bundled(uvwasi) = 0.0.19 Provides: bundled(v8) = 11.3.244.8 %if %{with intree_brotli} Provides: bundled(brotli) = 1.0.9 @@ -374,13 +359,12 @@ Provides: bundled(brotli) = 1.0.9 BuildRequires: pkgconfig(libbrotlidec) %endif - +Provides: bundled(base64) = 0.5.0 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(simdutf) = 3.2.18 # bundled url-ada parser, not ada -Provides: bundled(ada) = 2.6.0 +Provides: bundled(ada) = 2.7.2 Provides: bundled(node-acorn) = 8.10.0 Provides: bundled(node-acorn-walk) = 8.2.0 @@ -388,10 +372,10 @@ 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.22.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.26.4 Provides: bundled(node-undici-types) = 5.25.1 %description @@ -403,8 +387,8 @@ provided by npm. Summary: Development headers for NodeJS 20.x Group: Development/Languages/NodeJS Provides: nodejs-devel = %{version} -Requires: npm20 = %{version} Requires: %{name} = %{version} +Requires: npm20 = %{version} %description devel This package provides development headers for Node.js needed for creation @@ -421,20 +405,17 @@ Requires: nodejs-common Requires: nodejs20 = %{version} Provides: nodejs-npm = %{version} Obsoletes: nodejs-npm < 4.0.0 -Provides: npm(npm) = 10.1.0 Provides: npm = %{version} +Provides: npm(npm) = 10.2.3 %if 0%{?suse_version} >= 1500 %if %{node_version_number} >= 10 -Requires: user(nobody) Requires: group(nobody) +Requires: user(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 +423,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-ci-info) = 3.9.0 Provides: bundled(node-cidr-regex) = 3.1.1 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 +466,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-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-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-is-core-module) = 2.13.0 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.3 +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.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-libnpmversion) = 5.0.1 Provides: bundled(node-lru-cache) = 10.0.1 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 +527,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,35 +559,31 @@ 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-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 Provides: bundled(node-string-width) = 5.1.2 +Provides: bundled(node-string_decoder) = 1.3.0 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 +600,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 @@ -733,7 +690,6 @@ popd %patch305 -p1 %patch309 -p1 -%patch311 -p1 %if %{node_version_number} == 12 # minimist security update - patch50 @@ -747,8 +703,6 @@ find -name \*~ -print0 -delete # abnormalities from patching find \( -name \*.js.orig -or -name \*.md.orig -or -name \*.1.orig \) -delete - - %build # normalize shebang %if %{node_version_number} >= 12 @@ -1108,6 +1062,7 @@ update-alternatives --remove npm-default %{_bindir}/npm%{node_version_number} update-alternatives --remove npx-default %{_bindir}/npx%{node_version_number} %else + %pre # remove files that are no longer owned but provided by update-alternatives if ! [ -L %{_mandir}/man1/node.1%{ext_man} ]; then diff --git a/update_npm_tarball.sh b/update_npm_tarball.sh index 6011b0d..be64379 100644 --- a/update_npm_tarball.sh +++ b/update_npm_tarball.sh @@ -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 From ef6ee8ed0c2179b6d502b847b5fdf2c313201edd87b29790eefea0f3fd619948 Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Thu, 23 Nov 2023 10:52:12 +0000 Subject: [PATCH 2/6] OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs20?expand=0&rev=51 --- nodejs20.spec | 64 ++++++++++++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 24 deletions(-) diff --git a/nodejs20.spec b/nodejs20.spec index 0322e45..1c53045 100644 --- a/nodejs20.spec +++ b/nodejs20.spec @@ -1,7 +1,7 @@ # # spec file for package nodejs20 # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,7 +15,17 @@ # Please submit bugfixes or comments via https://bugs.opensuse.org/ # +########################################################### +# +# WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! +# +# This spec file is generated from a template hosted at +# https://github.com/AdamMajer/nodejs-packaging +# +########################################################### +# Fedora doesn't have rpm-config-SUSE which provides +# ext_man in /usr/lib/rpm/macros.d/macros.obs %if 0%{?fedora_version} %define ext_man .gz %endif @@ -119,12 +129,12 @@ Source1: https://nodejs.org/dist/v%{version}/SHASUMS256.txt Source2: https://nodejs.org/dist/v%{version}/SHASUMS256.txt.sig Source3: nodejs.keyring -# Python 3.4 compatible node-gyp -### https://github.com/nodejs/node-gyp.git -### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz -Source5: node-gyp_7.1.2.tar.xz -# Only required to run unit tests in NodeJS 10+ -Source10: update_npm_tarball.sh +# Python 3.4 compatible node-gyp +### https://github.com/nodejs/node-gyp.git +### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz +Source5: node-gyp_7.1.2.tar.xz +# Only required to run unit tests in NodeJS 10+ +Source10: update_npm_tarball.sh Source11: node_modules.tar.xz Source20: bash_output_helper.bash @@ -135,6 +145,8 @@ Patch5: sle12_python3_compat.patch Patch7: manual_configure.patch Patch13: openssl_binary_detection.patch + + ## Patches specific to SUSE and openSUSE Patch100: linker_lto_jobs.patch # PATCH-FIX-OPENSUSE -- set correct path for dtrace if it is built @@ -161,8 +173,8 @@ Patch305: qemu_timeouts_arches.patch Patch308: node-gyp-config.patch Patch309: gcc13.patch -BuildRequires: fdupes BuildRequires: pkg-config +BuildRequires: fdupes BuildRequires: procps BuildRequires: xz BuildRequires: zlib-devel @@ -182,10 +194,10 @@ BuildRequires: config(netcfg) %if 0%{?suse_version} == 1110 # GCC 5 is only available in the SUSE:SLE-11:SP4:Update repository (SDK). %if %node_version_number >= 8 -BuildRequires: gcc5-c++ +BuildRequires: gcc5-c++ %define forced_gcc_version 5 %else -BuildRequires: gcc48-c++ +BuildRequires: gcc48-c++ %define forced_gcc_version 4.8 %endif %endif @@ -195,15 +207,15 @@ BuildRequires: gcc48-c++ # for SLE-12:Update targets %if 0%{?suse_version} == 1315 %if %node_version_number >= 17 -BuildRequires: gcc12-c++ +BuildRequires: gcc12-c++ %define forced_gcc_version 12 %else %if %node_version_number >= 14 -BuildRequires: gcc9-c++ +BuildRequires: gcc9-c++ %define forced_gcc_version 9 %else %if %node_version_number >= 8 -BuildRequires: gcc7-c++ +BuildRequires: gcc7-c++ %define forced_gcc_version 7 %endif %endif @@ -212,7 +224,7 @@ BuildRequires: gcc7-c++ %if 0%{?suse_version} == 1500 %if %node_version_number >= 17 -BuildRequires: gcc12-c++ +BuildRequires: gcc12-c++ %define forced_gcc_version 12 %endif %endif @@ -223,6 +235,7 @@ BuildRequires: gcc12-c++ BuildRequires: gcc-c++ %endif + # Python dependencies %if %node_version_number >= 14 @@ -248,8 +261,8 @@ BuildRequires: python %endif %if 0%{?suse_version} >= 1500 && %{node_version_number} >= 10 -BuildRequires: group(nobody) BuildRequires: user(nobody) +BuildRequires: group(nobody) %endif # shared openssl @@ -264,10 +277,11 @@ BuildRequires: openssl >= %{openssl_req_ver} BuildRequires: (libopenssl1_1-hmac if libopenssl-1_1-devel) BuildRequires: (libopenssl3-hmac if libopenssl-3-devel) %else -BuildRequires: libopenssl1_1-hmac BuildRequires: openssl-1_1 >= %{openssl_req_ver} +BuildRequires: libopenssl1_1-hmac %endif + # /suse_version %endif @@ -311,7 +325,7 @@ BuildRequires: valgrind %if %{with libalternatives} Suggests: alts %else -Requires(postun):%{_sbindir}/update-alternatives +Requires(postun): %{_sbindir}/update-alternatives %endif # either for update-alternatives, or their removal Requires(post): %{_sbindir}/update-alternatives @@ -350,8 +364,8 @@ ExclusiveArch: not_buildable %endif %endif -Provides: bundled(libuv) = 1.46.0 Provides: bundled(uvwasi) = 0.0.19 +Provides: bundled(libuv) = 1.46.0 Provides: bundled(v8) = 11.3.244.8 %if %{with intree_brotli} Provides: bundled(brotli) = 1.0.9 @@ -359,9 +373,10 @@ Provides: bundled(brotli) = 1.0.9 BuildRequires: pkgconfig(libbrotlidec) %endif -Provides: bundled(base64) = 0.5.0 + Provides: bundled(llhttp) = 8.1.1 Provides: bundled(ngtcp2) = 0.8.1 +Provides: bundled(base64) = 0.5.0 Provides: bundled(simdutf) = 3.2.18 # bundled url-ada parser, not ada Provides: bundled(ada) = 2.7.2 @@ -387,8 +402,8 @@ provided by npm. Summary: Development headers for NodeJS 20.x Group: Development/Languages/NodeJS Provides: nodejs-devel = %{version} -Requires: %{name} = %{version} Requires: npm20 = %{version} +Requires: %{name} = %{version} %description devel This package provides development headers for Node.js needed for creation @@ -405,12 +420,12 @@ Requires: nodejs-common Requires: nodejs20 = %{version} Provides: nodejs-npm = %{version} Obsoletes: nodejs-npm < 4.0.0 -Provides: npm = %{version} Provides: npm(npm) = 10.2.3 +Provides: npm = %{version} %if 0%{?suse_version} >= 1500 %if %{node_version_number} >= 10 -Requires: group(nobody) Requires: user(nobody) +Requires: group(nobody) %endif %endif Provides: bundled(node-abbrev) = 2.0.0 @@ -577,9 +592,9 @@ 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.16 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-string_decoder) = 1.3.0 Provides: bundled(node-strip-ansi) = 6.0.1 Provides: bundled(node-strip-ansi) = 7.1.0 Provides: bundled(node-supports-color) = 9.4.0 @@ -703,6 +718,8 @@ find -name \*~ -print0 -delete # abnormalities from patching find \( -name \*.js.orig -or -name \*.md.orig -or -name \*.1.orig \) -delete + + %build # normalize shebang %if %{node_version_number} >= 12 @@ -1062,7 +1079,6 @@ update-alternatives --remove npm-default %{_bindir}/npm%{node_version_number} update-alternatives --remove npx-default %{_bindir}/npx%{node_version_number} %else - %pre # remove files that are no longer owned but provided by update-alternatives if ! [ -L %{_mandir}/man1/node.1%{ext_man} ]; then From 274e5bfd5609d97e8a7136a1b8b6e271704f39f08d748cfe5674e95acec9616f Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Mon, 18 Dec 2023 12:54:20 +0000 Subject: [PATCH 3/6] OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs20?expand=0&rev=52 --- fix_ci_tests.patch | 12 ++++++++++++ nodejs20.spec | 5 +++++ 2 files changed, 17 insertions(+) diff --git a/fix_ci_tests.patch b/fix_ci_tests.patch index 636a29e..3ac76e6 100644 --- a/fix_ci_tests.patch +++ b/fix_ci_tests.patch @@ -96,3 +96,15 @@ Index: node-v20.10.0/test/parallel/test-crypto-dh.js } } +Index: node-v20.10.0/test/parallel/test-node-output-errors.mjs +=================================================================== +--- node-v20.10.0.orig/test/parallel/test-node-output-errors.mjs ++++ node-v20.10.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:*/'); + } + diff --git a/nodejs20.spec b/nodejs20.spec index 1c53045..b9b15dd 100644 --- a/nodejs20.spec +++ b/nodejs20.spec @@ -49,6 +49,11 @@ Release: 0 %bcond_with libalternatives %endif +# nodejs20+ is not for SLE12 +%if %{node_version_number} >= 20 && %{suse_version} < 1500 +ExclusiveArch do_not_build +%endif + %if %node_version_number >= 12 %define openssl_req_ver 1.1.1 %else From 7b774df4e91e548e41a83ffde7595791d66d0cb08147b135511da8e1dec1522e Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Mon, 18 Dec 2023 12:58:03 +0000 Subject: [PATCH 4/6] OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs20?expand=0&rev=53 --- nodejs20.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nodejs20.spec b/nodejs20.spec index b9b15dd..c3d272e 100644 --- a/nodejs20.spec +++ b/nodejs20.spec @@ -50,7 +50,7 @@ Release: 0 %endif # nodejs20+ is not for SLE12 -%if %{node_version_number} >= 20 && %{suse_version} < 1500 +%if %{node_version_number} >= 20 && 0%{?suse_version} > 0 && 0%{?suse_version} < 1500 ExclusiveArch do_not_build %endif From 070a3cf32c5fa75e223f0b46d34fe517af85de53f6f8af4e367b7ef343523027 Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Mon, 18 Dec 2023 14:22:17 +0000 Subject: [PATCH 5/6] OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs20?expand=0&rev=54 --- nodejs20-zlib-1.3.patch | 13 --------- nodejs20.spec | 64 ++++++++++++++++------------------------- 2 files changed, 24 insertions(+), 53 deletions(-) delete mode 100644 nodejs20-zlib-1.3.patch diff --git a/nodejs20-zlib-1.3.patch b/nodejs20-zlib-1.3.patch deleted file mode 100644 index c1cf2d2..0000000 --- a/nodejs20-zlib-1.3.patch +++ /dev/null @@ -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); diff --git a/nodejs20.spec b/nodejs20.spec index c3d272e..199c547 100644 --- a/nodejs20.spec +++ b/nodejs20.spec @@ -1,7 +1,7 @@ # # spec file for package nodejs20 # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,17 +15,7 @@ # Please submit bugfixes or comments via https://bugs.opensuse.org/ # -########################################################### -# -# WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! -# -# This spec file is generated from a template hosted at -# https://github.com/AdamMajer/nodejs-packaging -# -########################################################### -# Fedora doesn't have rpm-config-SUSE which provides -# ext_man in /usr/lib/rpm/macros.d/macros.obs %if 0%{?fedora_version} %define ext_man .gz %endif @@ -134,12 +124,12 @@ Source1: https://nodejs.org/dist/v%{version}/SHASUMS256.txt Source2: https://nodejs.org/dist/v%{version}/SHASUMS256.txt.sig Source3: nodejs.keyring -# Python 3.4 compatible node-gyp -### https://github.com/nodejs/node-gyp.git -### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz -Source5: node-gyp_7.1.2.tar.xz -# Only required to run unit tests in NodeJS 10+ -Source10: update_npm_tarball.sh +# Python 3.4 compatible node-gyp +### https://github.com/nodejs/node-gyp.git +### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz +Source5: node-gyp_7.1.2.tar.xz +# Only required to run unit tests in NodeJS 10+ +Source10: update_npm_tarball.sh Source11: node_modules.tar.xz Source20: bash_output_helper.bash @@ -150,8 +140,6 @@ Patch5: sle12_python3_compat.patch Patch7: manual_configure.patch Patch13: openssl_binary_detection.patch - - ## Patches specific to SUSE and openSUSE Patch100: linker_lto_jobs.patch # PATCH-FIX-OPENSUSE -- set correct path for dtrace if it is built @@ -178,8 +166,8 @@ Patch305: qemu_timeouts_arches.patch Patch308: node-gyp-config.patch Patch309: gcc13.patch -BuildRequires: pkg-config BuildRequires: fdupes +BuildRequires: pkg-config BuildRequires: procps BuildRequires: xz BuildRequires: zlib-devel @@ -199,10 +187,10 @@ BuildRequires: config(netcfg) %if 0%{?suse_version} == 1110 # GCC 5 is only available in the SUSE:SLE-11:SP4:Update repository (SDK). %if %node_version_number >= 8 -BuildRequires: gcc5-c++ +BuildRequires: gcc5-c++ %define forced_gcc_version 5 %else -BuildRequires: gcc48-c++ +BuildRequires: gcc48-c++ %define forced_gcc_version 4.8 %endif %endif @@ -212,15 +200,15 @@ BuildRequires: gcc48-c++ # for SLE-12:Update targets %if 0%{?suse_version} == 1315 %if %node_version_number >= 17 -BuildRequires: gcc12-c++ +BuildRequires: gcc12-c++ %define forced_gcc_version 12 %else %if %node_version_number >= 14 -BuildRequires: gcc9-c++ +BuildRequires: gcc9-c++ %define forced_gcc_version 9 %else %if %node_version_number >= 8 -BuildRequires: gcc7-c++ +BuildRequires: gcc7-c++ %define forced_gcc_version 7 %endif %endif @@ -229,7 +217,7 @@ BuildRequires: gcc7-c++ %if 0%{?suse_version} == 1500 %if %node_version_number >= 17 -BuildRequires: gcc12-c++ +BuildRequires: gcc12-c++ %define forced_gcc_version 12 %endif %endif @@ -240,7 +228,6 @@ BuildRequires: gcc12-c++ BuildRequires: gcc-c++ %endif - # Python dependencies %if %node_version_number >= 14 @@ -266,8 +253,8 @@ BuildRequires: python %endif %if 0%{?suse_version} >= 1500 && %{node_version_number} >= 10 -BuildRequires: user(nobody) BuildRequires: group(nobody) +BuildRequires: user(nobody) %endif # shared openssl @@ -282,11 +269,10 @@ BuildRequires: openssl >= %{openssl_req_ver} BuildRequires: (libopenssl1_1-hmac if libopenssl-1_1-devel) BuildRequires: (libopenssl3-hmac if libopenssl-3-devel) %else -BuildRequires: openssl-1_1 >= %{openssl_req_ver} BuildRequires: libopenssl1_1-hmac +BuildRequires: openssl-1_1 >= %{openssl_req_ver} %endif - # /suse_version %endif @@ -330,7 +316,7 @@ BuildRequires: valgrind %if %{with libalternatives} Suggests: alts %else -Requires(postun): %{_sbindir}/update-alternatives +Requires(postun):%{_sbindir}/update-alternatives %endif # either for update-alternatives, or their removal Requires(post): %{_sbindir}/update-alternatives @@ -369,8 +355,8 @@ ExclusiveArch: not_buildable %endif %endif -Provides: bundled(uvwasi) = 0.0.19 Provides: bundled(libuv) = 1.46.0 +Provides: bundled(uvwasi) = 0.0.19 Provides: bundled(v8) = 11.3.244.8 %if %{with intree_brotli} Provides: bundled(brotli) = 1.0.9 @@ -378,10 +364,9 @@ Provides: bundled(brotli) = 1.0.9 BuildRequires: pkgconfig(libbrotlidec) %endif - +Provides: bundled(base64) = 0.5.0 Provides: bundled(llhttp) = 8.1.1 Provides: bundled(ngtcp2) = 0.8.1 -Provides: bundled(base64) = 0.5.0 Provides: bundled(simdutf) = 3.2.18 # bundled url-ada parser, not ada Provides: bundled(ada) = 2.7.2 @@ -407,8 +392,8 @@ provided by npm. Summary: Development headers for NodeJS 20.x Group: Development/Languages/NodeJS Provides: nodejs-devel = %{version} -Requires: npm20 = %{version} Requires: %{name} = %{version} +Requires: npm20 = %{version} %description devel This package provides development headers for Node.js needed for creation @@ -425,12 +410,12 @@ Requires: nodejs-common Requires: nodejs20 = %{version} Provides: nodejs-npm = %{version} Obsoletes: nodejs-npm < 4.0.0 -Provides: npm(npm) = 10.2.3 Provides: npm = %{version} +Provides: npm(npm) = 10.2.3 %if 0%{?suse_version} >= 1500 %if %{node_version_number} >= 10 -Requires: user(nobody) Requires: group(nobody) +Requires: user(nobody) %endif %endif Provides: bundled(node-abbrev) = 2.0.0 @@ -597,9 +582,9 @@ 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.16 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-string_decoder) = 1.3.0 Provides: bundled(node-strip-ansi) = 6.0.1 Provides: bundled(node-strip-ansi) = 7.1.0 Provides: bundled(node-supports-color) = 9.4.0 @@ -723,8 +708,6 @@ find -name \*~ -print0 -delete # abnormalities from patching find \( -name \*.js.orig -or -name \*.md.orig -or -name \*.1.orig \) -delete - - %build # normalize shebang %if %{node_version_number} >= 12 @@ -1084,6 +1067,7 @@ update-alternatives --remove npm-default %{_bindir}/npm%{node_version_number} update-alternatives --remove npx-default %{_bindir}/npx%{node_version_number} %else + %pre # remove files that are no longer owned but provided by update-alternatives if ! [ -L %{_mandir}/man1/node.1%{ext_man} ]; then From ef7c1780f3627f4077f82d8a30795e400d93776b187bc8fd389cdb282fe93581 Mon Sep 17 00:00:00 2001 From: Adam Majer Date: Mon, 18 Dec 2023 14:24:34 +0000 Subject: [PATCH 6/6] OBS-URL: https://build.opensuse.org/package/show/devel:languages:nodejs/nodejs20?expand=0&rev=55 --- nodejs20.spec | 64 ++++++++++++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 24 deletions(-) diff --git a/nodejs20.spec b/nodejs20.spec index 199c547..c3d272e 100644 --- a/nodejs20.spec +++ b/nodejs20.spec @@ -1,7 +1,7 @@ # # spec file for package nodejs20 # -# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,7 +15,17 @@ # Please submit bugfixes or comments via https://bugs.opensuse.org/ # +########################################################### +# +# WARNING! WARNING! WARNING! WARNING! WARNING! WARNING! +# +# This spec file is generated from a template hosted at +# https://github.com/AdamMajer/nodejs-packaging +# +########################################################### +# Fedora doesn't have rpm-config-SUSE which provides +# ext_man in /usr/lib/rpm/macros.d/macros.obs %if 0%{?fedora_version} %define ext_man .gz %endif @@ -124,12 +134,12 @@ Source1: https://nodejs.org/dist/v%{version}/SHASUMS256.txt Source2: https://nodejs.org/dist/v%{version}/SHASUMS256.txt.sig Source3: nodejs.keyring -# Python 3.4 compatible node-gyp -### https://github.com/nodejs/node-gyp.git -### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz -Source5: node-gyp_7.1.2.tar.xz -# Only required to run unit tests in NodeJS 10+ -Source10: update_npm_tarball.sh +# Python 3.4 compatible node-gyp +### https://github.com/nodejs/node-gyp.git +### git archive v7.1.2 | xz > node-gyp_7.1.2.tar.xz +Source5: node-gyp_7.1.2.tar.xz +# Only required to run unit tests in NodeJS 10+ +Source10: update_npm_tarball.sh Source11: node_modules.tar.xz Source20: bash_output_helper.bash @@ -140,6 +150,8 @@ Patch5: sle12_python3_compat.patch Patch7: manual_configure.patch Patch13: openssl_binary_detection.patch + + ## Patches specific to SUSE and openSUSE Patch100: linker_lto_jobs.patch # PATCH-FIX-OPENSUSE -- set correct path for dtrace if it is built @@ -166,8 +178,8 @@ Patch305: qemu_timeouts_arches.patch Patch308: node-gyp-config.patch Patch309: gcc13.patch -BuildRequires: fdupes BuildRequires: pkg-config +BuildRequires: fdupes BuildRequires: procps BuildRequires: xz BuildRequires: zlib-devel @@ -187,10 +199,10 @@ BuildRequires: config(netcfg) %if 0%{?suse_version} == 1110 # GCC 5 is only available in the SUSE:SLE-11:SP4:Update repository (SDK). %if %node_version_number >= 8 -BuildRequires: gcc5-c++ +BuildRequires: gcc5-c++ %define forced_gcc_version 5 %else -BuildRequires: gcc48-c++ +BuildRequires: gcc48-c++ %define forced_gcc_version 4.8 %endif %endif @@ -200,15 +212,15 @@ BuildRequires: gcc48-c++ # for SLE-12:Update targets %if 0%{?suse_version} == 1315 %if %node_version_number >= 17 -BuildRequires: gcc12-c++ +BuildRequires: gcc12-c++ %define forced_gcc_version 12 %else %if %node_version_number >= 14 -BuildRequires: gcc9-c++ +BuildRequires: gcc9-c++ %define forced_gcc_version 9 %else %if %node_version_number >= 8 -BuildRequires: gcc7-c++ +BuildRequires: gcc7-c++ %define forced_gcc_version 7 %endif %endif @@ -217,7 +229,7 @@ BuildRequires: gcc7-c++ %if 0%{?suse_version} == 1500 %if %node_version_number >= 17 -BuildRequires: gcc12-c++ +BuildRequires: gcc12-c++ %define forced_gcc_version 12 %endif %endif @@ -228,6 +240,7 @@ BuildRequires: gcc12-c++ BuildRequires: gcc-c++ %endif + # Python dependencies %if %node_version_number >= 14 @@ -253,8 +266,8 @@ BuildRequires: python %endif %if 0%{?suse_version} >= 1500 && %{node_version_number} >= 10 -BuildRequires: group(nobody) BuildRequires: user(nobody) +BuildRequires: group(nobody) %endif # shared openssl @@ -269,10 +282,11 @@ BuildRequires: openssl >= %{openssl_req_ver} BuildRequires: (libopenssl1_1-hmac if libopenssl-1_1-devel) BuildRequires: (libopenssl3-hmac if libopenssl-3-devel) %else -BuildRequires: libopenssl1_1-hmac BuildRequires: openssl-1_1 >= %{openssl_req_ver} +BuildRequires: libopenssl1_1-hmac %endif + # /suse_version %endif @@ -316,7 +330,7 @@ BuildRequires: valgrind %if %{with libalternatives} Suggests: alts %else -Requires(postun):%{_sbindir}/update-alternatives +Requires(postun): %{_sbindir}/update-alternatives %endif # either for update-alternatives, or their removal Requires(post): %{_sbindir}/update-alternatives @@ -355,8 +369,8 @@ ExclusiveArch: not_buildable %endif %endif -Provides: bundled(libuv) = 1.46.0 Provides: bundled(uvwasi) = 0.0.19 +Provides: bundled(libuv) = 1.46.0 Provides: bundled(v8) = 11.3.244.8 %if %{with intree_brotli} Provides: bundled(brotli) = 1.0.9 @@ -364,9 +378,10 @@ Provides: bundled(brotli) = 1.0.9 BuildRequires: pkgconfig(libbrotlidec) %endif -Provides: bundled(base64) = 0.5.0 + Provides: bundled(llhttp) = 8.1.1 Provides: bundled(ngtcp2) = 0.8.1 +Provides: bundled(base64) = 0.5.0 Provides: bundled(simdutf) = 3.2.18 # bundled url-ada parser, not ada Provides: bundled(ada) = 2.7.2 @@ -392,8 +407,8 @@ provided by npm. Summary: Development headers for NodeJS 20.x Group: Development/Languages/NodeJS Provides: nodejs-devel = %{version} -Requires: %{name} = %{version} Requires: npm20 = %{version} +Requires: %{name} = %{version} %description devel This package provides development headers for Node.js needed for creation @@ -410,12 +425,12 @@ Requires: nodejs-common Requires: nodejs20 = %{version} Provides: nodejs-npm = %{version} Obsoletes: nodejs-npm < 4.0.0 -Provides: npm = %{version} Provides: npm(npm) = 10.2.3 +Provides: npm = %{version} %if 0%{?suse_version} >= 1500 %if %{node_version_number} >= 10 -Requires: group(nobody) Requires: user(nobody) +Requires: group(nobody) %endif %endif Provides: bundled(node-abbrev) = 2.0.0 @@ -582,9 +597,9 @@ 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.16 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-string_decoder) = 1.3.0 Provides: bundled(node-strip-ansi) = 6.0.1 Provides: bundled(node-strip-ansi) = 7.1.0 Provides: bundled(node-supports-color) = 9.4.0 @@ -708,6 +723,8 @@ find -name \*~ -print0 -delete # abnormalities from patching find \( -name \*.js.orig -or -name \*.md.orig -or -name \*.1.orig \) -delete + + %build # normalize shebang %if %{node_version_number} >= 12 @@ -1067,7 +1084,6 @@ update-alternatives --remove npm-default %{_bindir}/npm%{node_version_number} update-alternatives --remove npx-default %{_bindir}/npx%{node_version_number} %else - %pre # remove files that are no longer owned but provided by update-alternatives if ! [ -L %{_mandir}/man1/node.1%{ext_man} ]; then