diff --git a/nodejs18.changes b/nodejs18.changes index 4f6ae59..a83df30 100644 --- a/nodejs18.changes +++ b/nodejs18.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Fri Oct 7 08:05:59 UTC 2022 - Dirk Müller + +- skip more tests for riscv64/qemu emulation + ------------------------------------------------------------------- Thu Sep 29 13:58:09 UTC 2022 - Adam Majer diff --git a/nodejs18.spec b/nodejs18.spec index ce87f20..f2bdafd 100644 --- a/nodejs18.spec +++ b/nodejs18.spec @@ -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 gyp/ | 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 gyp/ | 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 @@ -160,8 +172,8 @@ Patch200: versioned.patch Patch304: new_python3.patch -BuildRequires: fdupes BuildRequires: pkg-config +BuildRequires: fdupes BuildRequires: procps BuildRequires: xz BuildRequires: zlib-devel @@ -181,10 +193,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 @@ -194,15 +206,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 @@ -211,7 +223,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 @@ -222,6 +234,7 @@ BuildRequires: gcc12-c++ BuildRequires: gcc-c++ %endif + # Python dependencies %if %node_version_number >= 16 @@ -246,8 +259,8 @@ BuildRequires: python %endif %if 0%{?suse_version} >= 1500 && %{node_version_number} >= 10 -BuildRequires: group(nobody) BuildRequires: user(nobody) +BuildRequires: group(nobody) %endif %if ! 0%{with intree_openssl} @@ -310,7 +323,7 @@ BuildRequires: valgrind %if %{with libalternatives} Requires: 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 @@ -349,8 +362,8 @@ ExclusiveArch: not_buildable %endif %endif -Provides: bundled(libuv) = 1.43.0 Provides: bundled(uvwasi) = 0.0.13 +Provides: bundled(libuv) = 1.43.0 Provides: bundled(v8) = 10.2.154.15 %if %{with intree_brotli} Provides: bundled(brotli) = 1.0.9 @@ -358,6 +371,7 @@ Provides: bundled(brotli) = 1.0.9 BuildRequires: pkgconfig(libbrotlidec) %endif + Provides: bundled(llhttp) = 6.0.10 Provides: bundled(ngtcp2) = 0.8.1 @@ -376,8 +390,8 @@ provided by npm. Summary: Development headers for NodeJS 18.x Group: Development/Languages/NodeJS Provides: nodejs-devel = %{version} -Requires: %{name} = %{version} Requires: npm18 = %{version} +Requires: %{name} = %{version} %description devel This package provides development headers for Node.js needed for creation @@ -394,12 +408,12 @@ Requires: nodejs-common Requires: nodejs18 = %{version} Provides: nodejs-npm = %{version} Obsoletes: nodejs-npm < 4.0.0 -Provides: npm = %{version} Provides: npm(npm) = 8.19.2 +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) = 1.1.1 @@ -565,8 +579,8 @@ 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.11 Provides: bundled(node-ssri) = 9.0.1 -Provides: bundled(node-string-width) = 4.2.3 Provides: bundled(node-string_decoder) = 1.3.0 +Provides: bundled(node-string-width) = 4.2.3 Provides: bundled(node-strip-ansi) = 6.0.1 Provides: bundled(node-supports-color) = 7.2.0 Provides: bundled(node-tar) = 6.1.11 @@ -672,6 +686,7 @@ mkdir deps/npm/node_modules/node-gyp tar -C deps/npm/node_modules/node-gyp Jxf %{SOURCE5} %endif + %build # normalize shebang %if %{node_version_number} >= 12 @@ -915,6 +930,22 @@ rm test/parallel/test-crypto-fips.js %endif # fedora +# qemu test failures +%if %{node_version_number} >= 18 && 0%{?qemu_user_space_build} +# sequential/test-debugger-*: timeout hit? +rm -v test/*/test-debugger-*.js +# parallel tests are not parallel under qemu +rm -v test/parallel/test-*.js test/parallel/test-*.mjs +# RuntimeError: memory access out of bounds +rm -v test/wasi/test-*.js +# ESM import hits assertion, timeout error? +rm -v test/es-module/test-esm-*.js +# AssertionError [ERR_ASSERTION]: Missing expected exception +rm -v test/js-native-api/test_constructor/test*.js +# Too slow for performance tests +rm -v test/sequential/test-perf-*.js test/sequential/test-diagnostic-*.js +%endif + # Run CI tests %if 0%{with valgrind_tests} # valgrind may have false positives, so do not fail on these by default @@ -999,7 +1030,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