The package rpms/nodejs18.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=bd35f75e9f19...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=6ad3fc8fdad6...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=1dc586df1632...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=9fe52744a293...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=9f1a56347d44...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=a042b7955221...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=0ea33eec6036...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=0217ef193192...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=a9185c104866...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=c29f89eb9a89...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=d3df05b0b222...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=6c9d2762c919...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=89005563c3dd...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=10895e3e40a2...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=cd261bf1e21c...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=fb6fa8bce83d...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=6c33c7f5304c...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=200f9491aa76...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=b9473f5871ad...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=6b6a25e47e02...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=aab8ed173f88...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=34eeb4127445...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=74d1356567b2...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=64bb83cc8dae...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=7a602f802db6...
https://src.fedoraproject.org/cgit/rpms/nodejs18.git/commit/?id=dade4889bb4e....
Change:
+%ifarch armv7hl
-%ifarch s390 s390x %{arm} %ix86
+ExclusiveArch: %{nodejs_arches}
-ExclusiveArch: %{nodejs_arches}
-%ifarch aarch64
+%ifarch aarch64
+%ifarch armv7hl
+%ifarch s390 s390x %{arm} %ix86
-%ifarch %{arm} aarch64 %{power64}
-%ifarch %{ix86} x86_64 %{arm}
+%ifarch %{ix86} x86_64 %{arm}
-%ifarch %{power64} s390x
-%ifarch %{power64} s390x
+%ifarch %{power64} s390x
-%ifarch %{power64} s390x
-%ifarch aarch64
+%ifarch %{power64} s390x
+%ifarch %{ppc} s390x
-%ifarch aarch64
+%ifarch aarch64
+ExclusiveArch: %{nodejs_arches}
-%ifnarch %{arm}
+ExclusiveArch: %{nodejs_arches}
+%ifnarch %{arm}
-ExclusiveArch: %{ix86} x86_64 %{arm}
+ExclusiveArch: %{ix86} x86_64 %{arm}
Thanks.
Full change:
============
commit b77028c1094a6d43bd2a4af427e6016ff9b3e0c8
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Mar 1 13:12:07 2023 -0500
template: Re-sync from nodejs20
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Remove-unused-OpenSSL-config.patch b/0001-Remove-unused-OpenSSL-config.patch
new file mode 100644
index 0000000..3ce5dd2
--- /dev/null
+++ b/0001-Remove-unused-OpenSSL-config.patch
@@ -0,0 +1,68 @@
+From 07410a91b031a99636830c5bf825d243f1fa9bfd Mon Sep 17 00:00:00 2001
+From: Zuzana Svetlikova zsvetlik@redhat.com
+Date: Fri, 17 Apr 2020 12:59:44 +0200
+Subject: [PATCH] Remove unused OpenSSL config
+
+The build process will try to create these config files, even when
+using the system OpenSSL and will thus fail since we strip this path
+from the tarball.
+
+Signed-off-by: Stephen Gallagher sgallagh@redhat.com
+---
+ Makefile | 4 ++--
+ node.gyp | 17 -----------------
+ 2 files changed, 2 insertions(+), 19 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 94013466239e9c43ddce5cebc7a8d0a4dc56db4f..8577570c95d20dcf8d3dfe5d9fe82c1f67b2d70a 100644
+--- a/Makefile
++++ b/Makefile
+@@ -169,7 +169,7 @@ with-code-cache test-code-cache:
+ $(warning '$@' target is a noop)
+
+ out/Makefile: config.gypi common.gypi node.gyp \
+- deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \
++ deps/llhttp/llhttp.gyp \
+ deps/simdutf/simdutf.gyp \
+ tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
+ tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
+@@ -1550,7 +1550,7 @@ CONFLICT_RE=^>>>>>>> [[:xdigit:]]+|^<<<<<<< [[:alpha:]]+
+
+ # Related CI job: node-test-linter
+ lint-ci: lint-js-ci lint-cpp lint-py lint-md lint-addon-docs lint-yaml-build lint-yaml
+- @if ! ( grep -IEqrs "$(CONFLICT_RE)" --exclude="error-message.js" --exclude="merge-conflict.json" benchmark deps doc lib src test tools ) \
++ @if ! ( grep -IEqrs "$(CONFLICT_RE)" --exclude="error-message.js" benchmark deps doc lib src test tools ) \
+ && ! ( $(FIND) . -maxdepth 1 -type f | xargs grep -IEqs "$(CONFLICT_RE)" ); then \
+ exit 0 ; \
+ else \
+diff --git a/node.gyp b/node.gyp
+index cec24aed034362530cfbe833f4f52098f3fbaf2e..13af00f40d006fa75bfc5f656b505d29abf5038e 100644
+--- a/node.gyp
++++ b/node.gyp
+@@ -429,23 +429,6 @@
+ ],
+ },
+ ],
+- }, {
+- 'variables': {
+- 'opensslconfig_internal': '<(obj_dir)/deps/openssl/openssl.cnf',
+- 'opensslconfig': './deps/openssl/nodejs-openssl.cnf',
+- },
+- 'actions': [
+- {
+- 'action_name': 'reset_openssl_cnf',
+- 'inputs': [ '<(opensslconfig)', ],
+- 'outputs': [ '<(opensslconfig_internal)', ],
+- 'action': [
+- '<(python)', 'tools/copyfile.py',
+- '<(opensslconfig)',
+- '<(opensslconfig_internal)',
+- ],
+- },
+- ],
+ }],
+ ],
+ }, # node_core_target_name
+--
+2.39.2
+
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index e83ef8f..41eb299 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -137,6 +137,10 @@ fi
FEDORA_DEFAULT_RELEASE_LOW=$((NODE_PKG_MAJOR + 19))
FEDORA_DEFAULT_RELEASE_HIGH=$((NODE_PKG_MAJOR + 20))
+if [[ $((NODE_PKG_MAJOR)) -eq 20 ]]
+ then RHEL_DEFAULT_RELEASE=" || 0%{?rhel} == 10"
+fi
+
rm -rf node-v${version}.tar.gz \
node-v${version}-stripped.tar.gz \
node-v${version}/ \
@@ -190,22 +194,8 @@ ICU_MINOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --
# Download the ICU binary data files
rm -Rf icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
-wget $(grep Source3 packaging/nodejs.spec.in | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
-wget $(grep Source4 packaging/nodejs.spec.in | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
-
-if [ $_arg_push = 'on' ]; then
- push_flag=''
-else
- push_flag='--offline'
-fi
-
-fedpkg new-sources ${push_flag} \
- node-v${version}-stripped.tar.gz \
- icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip \
- cjs-module-lexer-${LEXER_VERSION}-stripped.tar.gz \
- wasi-sdk-${LEXER_WASI_MAJOR}.${LEXER_WASI_MINOR}-linux.tar.gz \
- undici-${UNDICI_VERSION}-stripped.tar.gz \
- wasi-sdk-${UNDICI_WASI_MAJOR}.${UNDICI_WASI_MINOR}-linux.tar.gz
+wget $(grep Source3 packaging/nodejs.spec.j2 | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
+wget $(grep Source4 packaging/nodejs.spec.j2 | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
rm -f node-v${version}.tar.gz
@@ -242,14 +232,16 @@ echo "========================="
LLHTTP_MAJOR=$(grep -oP '(?<=#define LLHTTP_VERSION_MAJOR )\d+' node-v${version}/deps/llhttp/include/llhttp.h)
LLHTTP_MINOR=$(grep -oP '(?<=#define LLHTTP_VERSION_MINOR )\d+' node-v${version}/deps/llhttp/include/llhttp.h)
LLHTTP_PATCH=$(grep -oP '(?<=#define LLHTTP_VERSION_PATCH )\d+' node-v${version}/deps/llhttp/include/llhttp.h)
-echo "${LLHTTP_MAJOR}.${LLHTTP_MINOR}.${LLHTTP_PATCH}"
+LLHTTP_VERSION="${LLHTTP_MAJOR}.${LLHTTP_MINOR}.${LLHTTP_PATCH}"
+echo $LLHTTP_VERSION
echo
echo "libuv"
echo "========================="
UV_MAJOR=$(grep -oP '(?<=#define UV_VERSION_MAJOR )\d+' node-v${version}/deps/uv/include/uv/version.h)
UV_MINOR=$(grep -oP '(?<=#define UV_VERSION_MINOR )\d+' node-v${version}/deps/uv/include/uv/version.h)
UV_PATCH=$(grep -oP '(?<=#define UV_VERSION_PATCH )\d+' node-v${version}/deps/uv/include/uv/version.h)
-echo ${UV_MAJOR}.${UV_MINOR}.${UV_PATCH}
+LIBUV_VERSION="${UV_MAJOR}.${UV_MINOR}.${UV_PATCH}"
+echo $UV_VERSION
echo
echo "nghttp2"
echo "========================="
@@ -295,41 +287,62 @@ echo "WASI-SDK: ${UNDICI_WASI_MAJOR}.${UNDICI_WASI_MINOR}"
echo
echo "ada"
echo "========================="
-ADA_VERSION=$(grep -oP '(?<=#define ADA_VERSION ).*"' node-v${version}/deps/ada/ada.h |sed -e 's/^"//' -e 's/"$//')
+ADA_VERSION=$(grep -osP '(?<=#define ADA_VERSION ).*"' node-v${version}/deps/ada/ada.h |sed -e 's/^"//' -e 's/"$//')
+ADA_VERSION=${ADA_VERSION:-0}
echo "${ADA_VERSION}"
echo
echo "Applying versions to spec template"
-sed -e "s/@NODE_PKG_MAJOR@/${NODE_PKG_MAJOR}/g" \
- -e "s/@NODE_MAJOR@/${NODE_MAJOR}/g" \
- -e "s/@NODE_MINOR@/${NODE_MINOR}/g" \
- -e "s/@NODE_PATCH@/${NODE_PATCH}/g" \
- -e "s/@FEDORA_DEFAULT_RELEASE_LOW@/${FEDORA_DEFAULT_RELEASE_LOW}/g" \
- -e "s/@FEDORA_DEFAULT_RELEASE_HIGH@/${FEDORA_DEFAULT_RELEASE_HIGH}/g" \
- -e "s/@NODE_SOVERSION@/${NODE_SOVERSION}/g" \
- -e "s/@V8_MAJOR@/${V8_MAJOR}/g" \
- -e "s/@V8_MINOR@/${V8_MINOR}/g" \
- -e "s/@V8_BUILD@/${V8_BUILD}/g" \
- -e "s/@V8_PATCH@/${V8_PATCH}/g" \
- -e "s/@C_ARES_VERSION@/${C_ARES_VERSION}/g" \
- -e "s/@LLHTTP_VERSION@/${LLHTTP_MAJOR}.${LLHTTP_MINOR}.${LLHTTP_PATCH}/g" \
- -e "s/@LIBUV_VERSION@/${UV_MAJOR}.${UV_MINOR}.${UV_PATCH}/g" \
- -e "s/@NGHTTP2_VERSION@/${NGHTTP2_VERSION}/g" \
- -e "s/@ICU_MAJOR@/${ICU_MAJOR}/g" \
- -e "s/@ICU_MINOR@/${ICU_MINOR}/g" \
- -e "s/@PUNYCODE_VERSION@/${PUNYCODE_VERSION}/g" \
- -e "s/@UVWASI_VERSION@/${UVWASI_VERSION}/g" \
- -e "s/@NPM_VERSION@/${NPM_VERSION}/g" \
- -e "s/@ZLIB_VERSION@/${ZLIB_VERSION}/g" \
- -e "s/@LEXER_VERSION@/${LEXER_VERSION}/g" \
- -e "s/@LEXER_WASI_MAJOR@/${LEXER_WASI_MAJOR}/g" \
- -e "s/@LEXER_WASI_MINOR@/${LEXER_WASI_MINOR}/g" \
- -e "s/@UNDICI_VERSION@/${UNDICI_VERSION}/g" \
- -e "s/@UNDICI_WASI_MAJOR@/${UNDICI_WASI_MAJOR}/g" \
- -e "s/@UNDICI_WASI_MINOR@/${UNDICI_WASI_MINOR}/g" \
- -e "s/@ADA_VERSION@/${ADA_VERSION}/g" \
- ${SCRIPT_DIR}/packaging/nodejs.spec.in \
+# Get the list of patches we need to add to the specfile
+readarray -t patchlist < <(git ls-files |grep '^[0-9]{4}-.*.patch')
+json_patchlist=$(jq --compact-output --null-input '$ARGS.positional' --args -- "${patchlist[@]}")
+
+IFS='' read -r -d '' template_json <<EOF
+{
+ "NODE_PKG_MAJOR": $NODE_PKG_MAJOR,
+ "NODE_MAJOR": $NODE_MAJOR,
+ "NODE_MINOR": $NODE_MINOR,
+ "NODE_PATCH": $NODE_PATCH,
+ "FEDORA_DEFAULT_RELEASE_LOW": $FEDORA_DEFAULT_RELEASE_LOW,
+ "FEDORA_DEFAULT_RELEASE_HIGH": $FEDORA_DEFAULT_RELEASE_HIGH,
+ "RHEL_DEFAULT_RELEASE": "$RHEL_DEFAULT_RELEASE",
+ "NODE_SOVERSION": $NODE_SOVERSION,
+ "V8_MAJOR": $V8_MAJOR,
+ "V8_MINOR": $V8_MINOR,
+ "V8_BUILD": $V8_BUILD,
+ "V8_PATCH": $V8_PATCH,
+ "C_ARES_VERSION": $C_ARES_VERSION,
+ "LLHTTP_VERSION": $LLHTTP_VERSION,
+ "LIBUV_VERSION": $LIBUV_VERSION,
+ "NGHTTP2_VERSION": $NGHTTP2_VERSION,
+ "ICU_MAJOR": $ICU_MAJOR,
+ "ICU_MINOR": $ICU_MINOR,
+ "PUNYCODE_VERSION": $PUNYCODE_VERSION,
+ "UVWASI_VERSION": $UVWASI_VERSION,
+ "NPM_VERSION": $NPM_VERSION,
+ "ZLIB_VERSION": $ZLIB_VERSION,
+ "LEXER_VERSION": $LEXER_VERSION,
+ "LEXER_WASI_MAJOR": $LEXER_WASI_MAJOR,
+ "LEXER_WASI_MINOR": $LEXER_WASI_MINOR,
+ "UNDICI_VERSION": $UNDICI_VERSION,
+ "UNDICI_WASI_MAJOR": $UNDICI_WASI_MAJOR,
+ "UNDICI_WASI_MINOR": $UNDICI_WASI_MINOR,
+ "ADA_VERSION": $ADA_VERSION,
+ "PATCHES": $json_patchlist
+}
+EOF
+
+echo ${template_json} | jinja2 ${SCRIPT_DIR}/packaging/nodejs.spec.j2 \
> ${SCRIPT_DIR}/nodejs${NODE_PKG_MAJOR}.spec
+if [ $_arg_push = 'on' ]; then
+ fedpkg new-sources node-v${version}-stripped.tar.gz \
+ icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip \
+ cjs-module-lexer-${LEXER_VERSION}-stripped.tar.gz \
+ wasi-sdk-${LEXER_WASI_MAJOR}.${LEXER_WASI_MINOR}-linux.tar.gz \
+ undici-${UNDICI_VERSION}-stripped.tar.gz \
+ wasi-sdk-${UNDICI_WASI_MAJOR}.${UNDICI_WASI_MINOR}-linux.tar.gz
+fi
+
rm -rf node-v${version}
# ] <-- needed because of Argbash
diff --git a/nodejs18.spec b/nodejs18.spec
index f39ddd6..b3d92dd 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -1,21 +1,3 @@
-# The following macros control the usage of dependencies bundled from upstream.
-#
-# When to use what:
-# - Regular (presumably non-modular) build: use neither (the default in Fedora)
-# - Early bootstrapping build that is not intended to be shipped:
-# use --with=bootstrap; this will bundle deps and add `~bootstrap` release suffix
-# - Build with some dependencies not avalaible in necessary versions (i.e. module build):
-# use --with=bundled; will bundle deps, but do not add the suffix
-#
-# create bootstrapping build with bundled deps and extra release suffix
-%bcond_with bootstrap
-# bundle dependencies that are not available in Fedora modules
-%if %{with bootstrap}
-%bcond_without bundled
-%else
-%bcond_with bundled
-%endif
-
%if 0%{?rhel} && 0%{?rhel} < 8
%bcond_without bundled_zlib
%else
@@ -46,9 +28,9 @@
%global nodejs_major 18
%global nodejs_minor 14
%global nodejs_patch 2
-%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 108
+%global nodejs_abi %{nodejs_soversion}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release %{baserelease}
%global nodejs_envr %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
@@ -57,9 +39,10 @@
# Determine if this should be the default version for this Fedora release
# The default version will own /usr/bin/node and friends
-%if 0%{?fedora} == 37 || 0%{?fedora} == 38 || 0%{?rhel} == 10
+%if 0%{?fedora} == 37 || 0%{?fedora} == 38
%global nodejs_default %{nodejs_major}
%endif
+
%global nodejs_private_sitelib %{nodejs_sitelib}_%{nodejs_major}
@@ -121,8 +104,6 @@
%global npm_envr %{npm_epoch}:%{npm_version}-%{npm_release}
-%global npm_obsoletes 1:8.19.2-1.18.12.1.3
-
# uvwasi - from deps/uvwasi/include/uvwasi.h
%global uvwasi_version 0.0.14
@@ -130,7 +111,7 @@
%global histogram_version 0.9.7
-Name: nodejs%{nodejs_major}
+Name: nodejs18
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
Release: %{nodejs_release}
@@ -161,12 +142,14 @@ Source102: wasi-sdk-11.0-linux.tar.gz
Source111: undici-5.20.0-stripped.tar.gz
Source112: wasi-sdk-14.0-linux.tar.gz
+Patch: 0001-Remove-unused-OpenSSL-config.patch
+
%if 0%{?nodejs_default}
%global pkgname nodejs
%package -n %{pkgname}
Summary: JavaScript runtime
%else
-%global pkgname nodejs%{nodejs_major}
+%global pkgname nodejs18
%endif
BuildRequires: make
@@ -200,9 +183,11 @@ BuildRequires: nodejs-packaging
BuildRequires: chrpath
BuildRequires: libatomic
BuildRequires: ninja-build
-BuildRequires: systemtap-sdt-devel
BuildRequires: unzip
+BuildRequires: systemtap-sdt-devel
+
+
Provides: nodejs = %{nodejs_envr}
%if %{with bundled}
@@ -240,6 +225,14 @@ BuildRequires: openssl-devel >= %{openssl11_minimum}
%global ssl_configure --shared-openssl %{openssl_fips_configure}
%endif
+%if 0%{?nodejs_default}
+%global dtrace_configure --with-dtrace
+%else
+# dtrace is only installed for the default version
+%global dtrace_configure %{nil}
+%endif
+
+
# we need the system certificate store
Requires: ca-certificates
@@ -300,6 +293,7 @@ Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
+
%description
Node.js is a platform built on Chrome's JavaScript runtime \
for easily building fast, scalable network applications. \
@@ -414,8 +408,10 @@ Provides: npm(npm) = %{npm_version}
# Satisfy dependency requests for "npm"
Provides: npm = %{npm_envr}
+%if 0%{?nodejs_default}
# Obsolete the old 'npm' package
-Obsoletes: npm < %{npm_obsoletes}
+Obsoletes: npm < 1:9
+%endif
%description -n %{pkgname}-npm
@@ -521,10 +517,10 @@ export PATH="${cwd}/.bin:$PATH"
--shared \
--libdir=%{_lib} \
%{ssl_configure} \
+ %{dtrace_configure} \
%{!?with_bundled_zlib:--shared-zlib} \
--shared-brotli \
- %{!?with_bundled:--shared-libuv} \
- %{?with_bundled:--without-dtrace}%{!?with_bundled:--with-dtrace} \
+ --shared-libuv \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
--without-corepack \
@@ -548,6 +544,8 @@ mv %{buildroot}%{nodejs_sitelib} \
%if 0%{?nodejs_default}
ln -srf %{buildroot}%{nodejs_private_sitelib} \
%{buildroot}%{nodejs_sitelib}
+%else
+rm -f %{buildroot}%{_datadir}/systemtap/tapset/node.stp
%endif
@@ -597,12 +595,6 @@ for soname in libv8 libv8_libbase libv8_libplatform; do
ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
done
-# Remove tracing for non-default versions
-%if ! 0%{?nodejs_default}
-rm -rf %{buildroot}%{_usr}/lib/dtrace \
- %{buildroot}%{_datadir}/systemtap/tapset/node.stp
-%endif
-
# install documentation
mkdir -p %{buildroot}%{_pkgdocdir}/html
cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
@@ -752,14 +744,14 @@ end
%if 0%{?nodejs_default}
%{_bindir}/node
%doc %{_mandir}/man1/node.1*
+%{nodejs_sitelib}
+
%dir %{_datadir}/systemtap
%dir %{_datadir}/systemtap/tapset
-%{nodejs_sitelib}
%{_datadir}/systemtap/tapset/node.stp
-%if %{without bundled}
%dir %{_usr}/lib/dtrace
%{_usr}/lib/dtrace/node.d
-%endif
+
%endif
%{_bindir}/node-%{nodejs_major}
diff --git a/packaging/nodejs.spec.in b/packaging/nodejs.spec.j2
similarity index 92%
rename from packaging/nodejs.spec.in
rename to packaging/nodejs.spec.j2
index d84c0e4..0ca55d8 100644
--- a/packaging/nodejs.spec.in
+++ b/packaging/nodejs.spec.j2
@@ -1,21 +1,3 @@
-# The following macros control the usage of dependencies bundled from upstream.
-#
-# When to use what:
-# - Regular (presumably non-modular) build: use neither (the default in Fedora)
-# - Early bootstrapping build that is not intended to be shipped:
-# use --with=bootstrap; this will bundle deps and add `~bootstrap` release suffix
-# - Build with some dependencies not avalaible in necessary versions (i.e. module build):
-# use --with=bundled; will bundle deps, but do not add the suffix
-#
-# create bootstrapping build with bundled deps and extra release suffix
-%bcond_with bootstrap
-# bundle dependencies that are not available in Fedora modules
-%if %{with bootstrap}
-%bcond_without bundled
-%else
-%bcond_with bundled
-%endif
-
%if 0%{?rhel} && 0%{?rhel} < 8
%bcond_without bundled_zlib
%else
@@ -43,12 +25,12 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major @NODE_MAJOR@
-%global nodejs_minor @NODE_MINOR@
-%global nodejs_patch @NODE_PATCH@
-%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+%global nodejs_major {{ NODE_MAJOR }}
+%global nodejs_minor {{ NODE_MINOR }}
+%global nodejs_patch {{ NODE_PATCH }}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
-%global nodejs_soversion @NODE_SOVERSION@
+%global nodejs_soversion {{ NODE_SOVERSION }}
+%global nodejs_abi %{nodejs_soversion}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release %{baserelease}
%global nodejs_envr %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
@@ -57,9 +39,10 @@
# Determine if this should be the default version for this Fedora release
# The default version will own /usr/bin/node and friends
-%if 0%{?fedora} == 37 || 0%{?fedora} == 38 || 0%{?rhel} == 10
+%if 0%{?fedora} == {{ FEDORA_DEFAULT_RELEASE_LOW }} || 0%{?fedora} == {{ FEDORA_DEFAULT_RELEASE_HIGH }}{{ RHEL_DEFAULT_RELEASE }}
%global nodejs_default %{nodejs_major}
%endif
+
%global nodejs_private_sitelib %{nodejs_sitelib}_%{nodejs_major}
@@ -67,32 +50,32 @@
# v8 - from deps/v8/include/v8-version.h
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 3
-%global v8_major @V8_MAJOR@
-%global v8_minor @V8_MINOR@
-%global v8_build @V8_BUILD@
-%global v8_patch @V8_PATCH@
+%global v8_major {{ V8_MAJOR }}
+%global v8_minor {{ V8_MINOR }}
+%global v8_build {{ V8_BUILD }}
+%global v8_patch {{ V8_PATCH }}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
# zlib - from deps/zlib/zlib.h
-%global zlib_version @ZLIB_VERSION@
+%global zlib_version {{ ZLIB_VERSION }}
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
-%global c_ares_version @C_ARES_VERSION@
+%global c_ares_version {{ C_ARES_VERSION }}
# llhttp - from deps/llhttp/include/llhttp.h
-%global llhttp_version @LLHTTP_VERSION@
+%global llhttp_version {{ LLHTTP_VERSION }}
# libuv - from deps/uv/include/uv/version.h
-%global libuv_version @LIBUV_VERSION@
+%global libuv_version {{ LIBUV_VERSION }}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
-%global nghttp2_version @NGHTTP2_VERSION@
+%global nghttp2_version {{ NGHTTP2_VERSION }}
# ICU - from tools/icu/current_ver.dep
-%global icu_major @ICU_MAJOR@
-%global icu_minor @ICU_MINOR@
+%global icu_major {{ ICU_MAJOR }}
+%global icu_minor {{ ICU_MINOR }}
%global icu_version %{icu_major}.%{icu_minor}
%global icudatadir %{nodejs_datadir}/icudata
@@ -107,11 +90,11 @@
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
# Note: this will be unmerged in an upcoming major release
-%global punycode_version @PUNYCODE_VERSION@
+%global punycode_version {{ PUNYCODE_VERSION }}
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version @NPM_VERSION@
+%global npm_version {{ NPM_VERSION }}
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -121,16 +104,14 @@
%global npm_envr %{npm_epoch}:%{npm_version}-%{npm_release}
-%global npm_obsoletes 1:8.19.2-1.18.12.1.3
-
# uvwasi - from deps/uvwasi/include/uvwasi.h
-%global uvwasi_version @UVWASI_VERSION@
+%global uvwasi_version {{ UVWASI_VERSION }}
# histogram_c - assumed from timestamps
%global histogram_version 0.9.7
-Name: nodejs%{nodejs_major}
+Name: nodejs{{ NODE_PKG_MAJOR }}
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
Release: %{nodejs_release}
@@ -156,17 +137,21 @@ Source100: nodejs-sources.sh
# Note: These sources would also include pre-compiled WASM blobs… so they are adjusted not to.
# Recipes for creating these blobs are included in the sources.
# These are generated by nodejs-sources.sh
-Source101: cjs-module-lexer-@LEXER_VERSION@-stripped.tar.gz
-Source102: wasi-sdk-@LEXER_WASI_MAJOR@.@LEXER_WASI_MINOR@-linux.tar.gz
-Source111: undici-@UNDICI_VERSION@-stripped.tar.gz
-Source112: wasi-sdk-@UNDICI_WASI_MAJOR@.@UNDICI_WASI_MINOR@-linux.tar.gz
-
+Source101: cjs-module-lexer-{{ LEXER_VERSION }}-stripped.tar.gz
+Source102: wasi-sdk-{{ LEXER_WASI_MAJOR }}.{{ LEXER_WASI_MINOR }}-linux.tar.gz
+Source111: undici-{{ UNDICI_VERSION }}-stripped.tar.gz
+Source112: wasi-sdk-{{ UNDICI_WASI_MAJOR }}.{{ UNDICI_WASI_MINOR }}-linux.tar.gz
+
+{% for patch in PATCHES -%}
+Patch: {{ patch }}
+{% endfor -%}
+{# #}
%if 0%{?nodejs_default}
%global pkgname nodejs
%package -n %{pkgname}
Summary: JavaScript runtime
%else
-%global pkgname nodejs%{nodejs_major}
+%global pkgname nodejs{{ NODE_PKG_MAJOR }}
%endif
BuildRequires: make
@@ -200,9 +185,12 @@ BuildRequires: nodejs-packaging
BuildRequires: chrpath
BuildRequires: libatomic
BuildRequires: ninja-build
-BuildRequires: systemtap-sdt-devel
BuildRequires: unzip
+{% if NODE_MAJOR < 19 -%}
+BuildRequires: systemtap-sdt-devel
+{% endif %}
+
Provides: nodejs = %{nodejs_envr}
%if %{with bundled}
@@ -240,6 +228,18 @@ BuildRequires: openssl-devel >= %{openssl11_minimum}
%global ssl_configure --shared-openssl %{openssl_fips_configure}
%endif
+{% if NODE_MAJOR < 19 -%}
+%if 0%{?nodejs_default}
+%global dtrace_configure --with-dtrace
+%else
+# dtrace is only installed for the default version
+%global dtrace_configure %{nil}
+%endif
+{% else %}
+# dtrace is not supported on Node.js 19+
+%global dtrace_configure %{nil}
+{% endif %}
+
# we need the system certificate store
Requires: ca-certificates
@@ -299,6 +299,11 @@ Provides: bundled(icu) = %{icu_version}
Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
+{% if ADA_VERSION -%}
+# Upstream has added a new URL parser that has no option to build as a shared
+# library (19.7.0+)
+Provides: bundled(ada) = {{ ADA_VERSION }}
+{% endif %}
%description
Node.js is a platform built on Chrome's JavaScript runtime \
@@ -414,8 +419,10 @@ Provides: npm(npm) = %{npm_version}
# Satisfy dependency requests for "npm"
Provides: npm = %{npm_envr}
+%if 0%{?nodejs_default}
# Obsolete the old 'npm' package
-Obsoletes: npm < %{npm_obsoletes}
+Obsoletes: npm < 1:9
+%endif
%description -n %{pkgname}-npm
@@ -521,10 +528,10 @@ export PATH="${cwd}/.bin:$PATH"
--shared \
--libdir=%{_lib} \
%{ssl_configure} \
+ %{dtrace_configure} \
%{!?with_bundled_zlib:--shared-zlib} \
--shared-brotli \
- %{!?with_bundled:--shared-libuv} \
- %{?with_bundled:--without-dtrace}%{!?with_bundled:--with-dtrace} \
+ --shared-libuv \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
--without-corepack \
@@ -548,6 +555,8 @@ mv %{buildroot}%{nodejs_sitelib} \
%if 0%{?nodejs_default}
ln -srf %{buildroot}%{nodejs_private_sitelib} \
%{buildroot}%{nodejs_sitelib}
+%else
+rm -f %{buildroot}%{_datadir}/systemtap/tapset/node.stp
%endif
@@ -597,12 +606,6 @@ for soname in libv8 libv8_libbase libv8_libplatform; do
ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
done
-# Remove tracing for non-default versions
-%if ! 0%{?nodejs_default}
-rm -rf %{buildroot}%{_usr}/lib/dtrace \
- %{buildroot}%{_datadir}/systemtap/tapset/node.stp
-%endif
-
# install documentation
mkdir -p %{buildroot}%{_pkgdocdir}/html
cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
@@ -752,14 +755,15 @@ end
%if 0%{?nodejs_default}
%{_bindir}/node
%doc %{_mandir}/man1/node.1*
+%{nodejs_sitelib}
+
+{% if NODE_MAJOR < 19 -%}
%dir %{_datadir}/systemtap
%dir %{_datadir}/systemtap/tapset
-%{nodejs_sitelib}
%{_datadir}/systemtap/tapset/node.stp
-%if %{without bundled}
%dir %{_usr}/lib/dtrace
%{_usr}/lib/dtrace/node.d
-%endif
+{% endif %}
%endif
%{_bindir}/node-%{nodejs_major}
commit dc374d2c116f9ea49a727348cdaeaeb94932a761
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Feb 23 15:17:55 2023 -0500
Also drop patch from specfile
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs18.spec b/nodejs18.spec
index 06efcc8..f39ddd6 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -161,9 +161,6 @@ Source102: wasi-sdk-11.0-linux.tar.gz
Source111: undici-5.20.0-stripped.tar.gz
Source112: wasi-sdk-14.0-linux.tar.gz
-# Disable running gyp on bundled deps we don't use
-Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
-
%if 0%{?nodejs_default}
%global pkgname nodejs
%package -n %{pkgname}
commit 18c023f26ea2a175f58de227659820f99ed39088
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Feb 23 15:16:26 2023 -0500
Drop unneeded patch
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
deleted file mode 100644
index 611a745..0000000
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-From 0164079f84aae90d0f61d84b90dd6e05bca8890c Mon Sep 17 00:00:00 2001
-From: Zuzana Svetlikova zsvetlik@redhat.com
-Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH] Disable running gyp on shared deps
-
-Signed-off-by: rpm-build <rpm-build>
----
- Makefile | 4 ++--
- node.gyp | 17 -----------------
- 2 files changed, 2 insertions(+), 19 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 94013466239e9c43ddce5cebc7a8d0a4dc56db4f..8577570c95d20dcf8d3dfe5d9fe82c1f67b2d70a 100644
---- a/Makefile
-+++ b/Makefile
-@@ -169,7 +169,7 @@ with-code-cache test-code-cache:
- $(warning '$@' target is a noop)
-
- out/Makefile: config.gypi common.gypi node.gyp \
-- deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \
-+ deps/llhttp/llhttp.gyp \
- deps/simdutf/simdutf.gyp \
- tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
- tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
-@@ -1550,7 +1550,7 @@ CONFLICT_RE=^>>>>>>> [[:xdigit:]]+|^<<<<<<< [[:alpha:]]+
-
- # Related CI job: node-test-linter
- lint-ci: lint-js-ci lint-cpp lint-py lint-md lint-addon-docs lint-yaml-build lint-yaml
-- @if ! ( grep -IEqrs "$(CONFLICT_RE)" --exclude="error-message.js" --exclude="merge-conflict.json" benchmark deps doc lib src test tools ) \
-+ @if ! ( grep -IEqrs "$(CONFLICT_RE)" --exclude="error-message.js" benchmark deps doc lib src test tools ) \
- && ! ( $(FIND) . -maxdepth 1 -type f | xargs grep -IEqs "$(CONFLICT_RE)" ); then \
- exit 0 ; \
- else \
-diff --git a/node.gyp b/node.gyp
-index cec24aed034362530cfbe833f4f52098f3fbaf2e..13af00f40d006fa75bfc5f656b505d29abf5038e 100644
---- a/node.gyp
-+++ b/node.gyp
-@@ -429,23 +429,6 @@
- ],
- },
- ],
-- }, {
-- 'variables': {
-- 'opensslconfig_internal': '<(obj_dir)/deps/openssl/openssl.cnf',
-- 'opensslconfig': './deps/openssl/nodejs-openssl.cnf',
-- },
-- 'actions': [
-- {
-- 'action_name': 'reset_openssl_cnf',
-- 'inputs': [ '<(opensslconfig)', ],
-- 'outputs': [ '<(opensslconfig_internal)', ],
-- 'action': [
-- '<(python)', 'tools/copyfile.py',
-- '<(opensslconfig)',
-- '<(opensslconfig_internal)',
-- ],
-- },
-- ],
- }],
- ],
- }, # node_core_target_name
---
-2.39.1
-
diff --git a/packaging/nodejs.spec.in b/packaging/nodejs.spec.in
index c9a4a71..d84c0e4 100644
--- a/packaging/nodejs.spec.in
+++ b/packaging/nodejs.spec.in
@@ -161,9 +161,6 @@ Source102: wasi-sdk-@LEXER_WASI_MAJOR@.@LEXER_WASI_MINOR@-linux.tar.gz
Source111: undici-@UNDICI_VERSION@-stripped.tar.gz
Source112: wasi-sdk-@UNDICI_WASI_MAJOR@.@UNDICI_WASI_MINOR@-linux.tar.gz
-# Disable running gyp on bundled deps we don't use
-Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
-
%if 0%{?nodejs_default}
%global pkgname nodejs
%package -n %{pkgname}
commit b1efdc3f55de12c03795dd6a88bb9b4a7db0e11c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Feb 21 14:59:23 2023 -0500
Update to latest version of nodejs-sources.sh
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index a7add5e..e83ef8f 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -127,6 +127,16 @@ NODE_MAJOR=$(echo $version | cut -d. -f1)
NODE_MINOR=$(echo $version | cut -d. -f2)
NODE_PATCH=$(echo $version | cut -d. -f3)
+# Treat odd-numbered major releases as pre-releases for the
+# next LTS release.
+if [[ $((NODE_MAJOR % 2)) -eq 0 ]];
+ then NODE_PKG_MAJOR=${NODE_MAJOR};
+ else NODE_PKG_MAJOR=$((NODE_MAJOR + 1));
+fi
+
+FEDORA_DEFAULT_RELEASE_LOW=$((NODE_PKG_MAJOR + 19))
+FEDORA_DEFAULT_RELEASE_HIGH=$((NODE_PKG_MAJOR + 20))
+
rm -rf node-v${version}.tar.gz \
node-v${version}-stripped.tar.gz \
node-v${version}/ \
@@ -283,34 +293,43 @@ echo "========================="
echo "${UNDICI_VERSION}"
echo "WASI-SDK: ${UNDICI_WASI_MAJOR}.${UNDICI_WASI_MINOR}"
echo
+echo "ada"
+echo "========================="
+ADA_VERSION=$(grep -oP '(?<=#define ADA_VERSION ).*"' node-v${version}/deps/ada/ada.h |sed -e 's/^"//' -e 's/"$//')
+echo "${ADA_VERSION}"
+echo
echo "Applying versions to spec template"
-sed -e "s/@NODE_MAJOR@/${NODE_MAJOR}/g" \
+sed -e "s/@NODE_PKG_MAJOR@/${NODE_PKG_MAJOR}/g" \
+ -e "s/@NODE_MAJOR@/${NODE_MAJOR}/g" \
-e "s/@NODE_MINOR@/${NODE_MINOR}/g" \
-e "s/@NODE_PATCH@/${NODE_PATCH}/g" \
+ -e "s/@FEDORA_DEFAULT_RELEASE_LOW@/${FEDORA_DEFAULT_RELEASE_LOW}/g" \
+ -e "s/@FEDORA_DEFAULT_RELEASE_HIGH@/${FEDORA_DEFAULT_RELEASE_HIGH}/g" \
-e "s/@NODE_SOVERSION@/${NODE_SOVERSION}/g" \
-e "s/@V8_MAJOR@/${V8_MAJOR}/g" \
-e "s/@V8_MINOR@/${V8_MINOR}/g" \
-e "s/@V8_BUILD@/${V8_BUILD}/g" \
-e "s/@V8_PATCH@/${V8_PATCH}/g" \
- -e "s/@C_ARES_VERSION@/${C_ARES_VERSION}/g" \
- -e "s/@LLHTTP_VERSION@/${LLHTTP_MAJOR}.${LLHTTP_MINOR}.${LLHTTP_PATCH}/g" \
- -e "s/@LIBUV_VERSION@/${UV_MAJOR}.${UV_MINOR}.${UV_PATCH}/g" \
- -e "s/@NGHTTP2_VERSION@/${NGHTTP2_VERSION}/g" \
- -e "s/@ICU_MAJOR@/${ICU_MAJOR}/g" \
- -e "s/@ICU_MINOR@/${ICU_MINOR}/g" \
- -e "s/@PUNYCODE_VERSION@/${PUNYCODE_VERSION}/g" \
- -e "s/@UVWASI_VERSION@/${UVWASI_VERSION}/g" \
- -e "s/@NPM_VERSION@/${NPM_VERSION}/g" \
- -e "s/@ZLIB_VERSION@/${ZLIB_VERSION}/g" \
- -e "s/@LEXER_VERSION@/${LEXER_VERSION}/g" \
- -e "s/@LEXER_WASI_MAJOR@/${LEXER_WASI_MAJOR}/g" \
- -e "s/@LEXER_WASI_MINOR@/${LEXER_WASI_MINOR}/g" \
- -e "s/@UNDICI_VERSION@/${UNDICI_VERSION}/g" \
- -e "s/@UNDICI_WASI_MAJOR@/${UNDICI_WASI_MAJOR}/g" \
- -e "s/@UNDICI_WASI_MINOR@/${UNDICI_WASI_MINOR}/g" \
+ -e "s/@C_ARES_VERSION@/${C_ARES_VERSION}/g" \
+ -e "s/@LLHTTP_VERSION@/${LLHTTP_MAJOR}.${LLHTTP_MINOR}.${LLHTTP_PATCH}/g" \
+ -e "s/@LIBUV_VERSION@/${UV_MAJOR}.${UV_MINOR}.${UV_PATCH}/g" \
+ -e "s/@NGHTTP2_VERSION@/${NGHTTP2_VERSION}/g" \
+ -e "s/@ICU_MAJOR@/${ICU_MAJOR}/g" \
+ -e "s/@ICU_MINOR@/${ICU_MINOR}/g" \
+ -e "s/@PUNYCODE_VERSION@/${PUNYCODE_VERSION}/g" \
+ -e "s/@UVWASI_VERSION@/${UVWASI_VERSION}/g" \
+ -e "s/@NPM_VERSION@/${NPM_VERSION}/g" \
+ -e "s/@ZLIB_VERSION@/${ZLIB_VERSION}/g" \
+ -e "s/@LEXER_VERSION@/${LEXER_VERSION}/g" \
+ -e "s/@LEXER_WASI_MAJOR@/${LEXER_WASI_MAJOR}/g" \
+ -e "s/@LEXER_WASI_MINOR@/${LEXER_WASI_MINOR}/g" \
+ -e "s/@UNDICI_VERSION@/${UNDICI_VERSION}/g" \
+ -e "s/@UNDICI_WASI_MAJOR@/${UNDICI_WASI_MAJOR}/g" \
+ -e "s/@UNDICI_WASI_MINOR@/${UNDICI_WASI_MINOR}/g" \
+ -e "s/@ADA_VERSION@/${ADA_VERSION}/g" \
${SCRIPT_DIR}/packaging/nodejs.spec.in \
- > ${SCRIPT_DIR}/nodejs${NODE_MAJOR}.spec
+ > ${SCRIPT_DIR}/nodejs${NODE_PKG_MAJOR}.spec
rm -rf node-v${version}
# ] <-- needed because of Argbash
commit 2193e314cf4f8cf8e7ef1dfb76f3174da940fb10
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Feb 21 14:47:39 2023 -0500
Update to 18.14.2
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs18.spec b/nodejs18.spec
index 81fd5e3..06efcc8 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -45,7 +45,7 @@
%global nodejs_epoch 1
%global nodejs_major 18
%global nodejs_minor 14
-%global nodejs_patch 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 108
@@ -70,7 +70,7 @@
%global v8_major 10
%global v8_minor 2
%global v8_build 154
-%global v8_patch 23
+%global v8_patch 26
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
@@ -111,7 +111,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 9.3.1
+%global npm_version 9.5.0
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -158,7 +158,7 @@ Source100: nodejs-sources.sh
# These are generated by nodejs-sources.sh
Source101: cjs-module-lexer-1.2.2-stripped.tar.gz
Source102: wasi-sdk-11.0-linux.tar.gz
-Source111: undici-5.19.1-stripped.tar.gz
+Source111: undici-5.20.0-stripped.tar.gz
Source112: wasi-sdk-14.0-linux.tar.gz
# Disable running gyp on bundled deps we don't use
diff --git a/sources b/sources
index 207b3a3..2666d82 100644
--- a/sources
+++ b/sources
@@ -1,7 +1,7 @@
-SHA512 (node-v18.14.1-stripped.tar.gz) = 89f5a5a582918e4fdfac99b985ce280b9f18618046c89969a3f2466730877c6c96db24bf7ea7415f9dc6a7f695c211a7c64573cbf2871f72bcd0c7ea09ba3e11
+SHA512 (node-v18.14.2-stripped.tar.gz) = 1d035ffc746c39a6921c65aafcf2add5123a6c08bb03bbdeb762135b6bbe608bafb37314cd65e13360e811379e006d6646f9cdc349ea88c6addd9d1853ab2f61
SHA512 (icu4c-72_1-data-bin-b.zip) = ed0ce3ebd02f81cca7b3808abc72dc99962eb36bd123ebdf45c578b307b674566491191b6f7d261c679b2b5662b7084c61452b98968b35df3f749d413d5d7663
SHA512 (icu4c-72_1-data-bin-l.zip) = cc9a8cf2a89dacde4fab4a68ca7a7ba1fd106b71ebc23318fb9293ab96001be825bf89b1daf3da02958ba201ca4f714a67a26db3a51dc03653b9970ebdd5ff56
-SHA512 (cjs-module-lexer-1.2.2-stripped.tar.gz) = ba37ac0e46a89efa4a61d10f0e1273d30798931864168b9dd77fbd0aa1d87c468c328c90240e92fffe05b9a4c6920152f39e13d491f685dca32ab7272362cec0
+SHA512 (cjs-module-lexer-1.2.2-stripped.tar.gz) = 01454aeee69c41393213fde1fefc2d3045cb20192b7b35995fb132dff7892069403f5a11515edf5c2c7f252766c5731256fb74173d0d96967bd45affabaac873
SHA512 (wasi-sdk-11.0-linux.tar.gz) = e3ed4597f7f2290967eef6238e9046f60abbcb8633a4a2a51525d00e7393df8df637a98a5b668217d332dd44fcbf2442ec7efd5e65724e888d90611164451e20
-SHA512 (undici-5.19.1-stripped.tar.gz) = f1409474559fd8a5fa46c203fe6ea3b892220b0bcc144e6707703e088a911c83abe6cb89081d2f8539f9641d8c9cd463a718a0fa4530e347086d1d321028b227
+SHA512 (undici-5.20.0-stripped.tar.gz) = 783b9b7a168d1297fda8482a464650c0426a36fe8dff01116ed7cd2110542ac2d9741081720b7e0a424d79302b5e04a07003ab9004c5e95cb5b07f2db8a619cd
SHA512 (wasi-sdk-14.0-linux.tar.gz) = 288a367e051f5b3f5853de97fabaedd3acf2255819d50c24f48f573897518500ea808342fd9aea832b2a5717089807bf1cbcf6d46b156b4eb60cc6b3c02ee997
commit 2ec1a0503b06cda6f7dfe1ca0fe13d1e479c2a79
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Feb 17 10:50:42 2023 -0500
Update to v18.14.1
- https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18....
- packaging: Drop vestigial package.cfg file.
- packaging: Fix spec template
- packaging: Make nodejs-sources.sh clean up after itself
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 842a5b8..611a745 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,16 +1,16 @@
-From f850686d1442e6c4f409f8e24ef461e29710277b Mon Sep 17 00:00:00 2001
+From 0164079f84aae90d0f61d84b90dd6e05bca8890c Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH] Disable running gyp on shared deps
Signed-off-by: rpm-build <rpm-build>
---
- Makefile | 2 +-
+ Makefile | 4 ++--
node.gyp | 17 -----------------
- 2 files changed, 1 insertion(+), 18 deletions(-)
+ 2 files changed, 2 insertions(+), 19 deletions(-)
diff --git a/Makefile b/Makefile
-index 05fdc1509844ad616e1ae1490bb0f244627fcda9..46816fe1bc7108bd4f0abd6277b2a4f9b4283f95 100644
+index 94013466239e9c43ddce5cebc7a8d0a4dc56db4f..8577570c95d20dcf8d3dfe5d9fe82c1f67b2d70a 100644
--- a/Makefile
+++ b/Makefile
@@ -169,7 +169,7 @@ with-code-cache test-code-cache:
@@ -19,14 +19,23 @@ index 05fdc1509844ad616e1ae1490bb0f244627fcda9..46816fe1bc7108bd4f0abd6277b2a4f9
out/Makefile: config.gypi common.gypi node.gyp \
- deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \
+ deps/llhttp/llhttp.gyp \
+ deps/simdutf/simdutf.gyp \
tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
- $(PYTHON) tools/gyp_node.py -f make
+@@ -1550,7 +1550,7 @@ CONFLICT_RE=^>>>>>>> [[:xdigit:]]+|^<<<<<<< [[:alpha:]]+
+
+ # Related CI job: node-test-linter
+ lint-ci: lint-js-ci lint-cpp lint-py lint-md lint-addon-docs lint-yaml-build lint-yaml
+- @if ! ( grep -IEqrs "$(CONFLICT_RE)" --exclude="error-message.js" --exclude="merge-conflict.json" benchmark deps doc lib src test tools ) \
++ @if ! ( grep -IEqrs "$(CONFLICT_RE)" --exclude="error-message.js" benchmark deps doc lib src test tools ) \
+ && ! ( $(FIND) . -maxdepth 1 -type f | xargs grep -IEqs "$(CONFLICT_RE)" ); then \
+ exit 0 ; \
+ else \
diff --git a/node.gyp b/node.gyp
-index 1885a8d1ecb983fe8fd1ce3cc8cd53ee48e241d2..917eeb73d20791625e71b3e921b2fa9a68fd6133 100644
+index cec24aed034362530cfbe833f4f52098f3fbaf2e..13af00f40d006fa75bfc5f656b505d29abf5038e 100644
--- a/node.gyp
+++ b/node.gyp
-@@ -428,23 +428,6 @@
+@@ -429,23 +429,6 @@
],
},
],
@@ -51,5 +60,5 @@ index 1885a8d1ecb983fe8fd1ce3cc8cd53ee48e241d2..917eeb73d20791625e71b3e921b2fa9a
],
}, # node_core_target_name
--
-2.39.0
+2.39.1
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index a6da118..a7add5e 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -159,6 +159,7 @@ rm -f ${LEXER_VERSION}.tar.gz
LEXER_WASI_MAJOR=$(grep -oP '(?<=^\W../wasi-sdk-)\d+.\d+' cjs-module-lexer-${LEXER_VERSION}/Makefile | cut -d'.' -f1)
LEXER_WASI_MINOR=$(grep -oP '(?<=^\W../wasi-sdk-)\d+.\d+' cjs-module-lexer-${LEXER_VERSION}/Makefile | cut -d'.' -f2)
wget https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-$%7BLEXER...
+rm -rf cjs-module-lexer-${LEXER_VERSION}/
# Download the undici sources
UNDICI_VERSION=$(jq -r '.version' node-v${version}/deps/undici/src/package.json)
@@ -172,6 +173,7 @@ rm -f v${UNDICI_VERSION}.tar.gz
UNDICI_WASI_MAJOR=$(grep -oP '(?<=WASI_SDK_VERSION_MAJOR=).*' undici-${UNDICI_VERSION}/build/Dockerfile)
UNDICI_WASI_MINOR=$(grep -oP '(?<=WASI_SDK_VERSION_MINOR=).*' undici-${UNDICI_VERSION}/build/Dockerfile)
wget https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-$%7BUNDIC...
+rm -rf undici-${UNDICI_VERSION}/
ICU_MAJOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
ICU_MINOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\2/g')
diff --git a/nodejs18.spec b/nodejs18.spec
index 35baad3..81fd5e3 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -44,8 +44,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 13
-%global nodejs_patch 0
+%global nodejs_minor 14
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 108
@@ -111,7 +111,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.19.3
+%global npm_version 9.3.1
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -124,7 +124,7 @@
%global npm_obsoletes 1:8.19.2-1.18.12.1.3
# uvwasi - from deps/uvwasi/include/uvwasi.h
-%global uvwasi_version 0.0.13
+%global uvwasi_version 0.0.14
# histogram_c - assumed from timestamps
%global histogram_version 0.9.7
@@ -158,7 +158,7 @@ Source100: nodejs-sources.sh
# These are generated by nodejs-sources.sh
Source101: cjs-module-lexer-1.2.2-stripped.tar.gz
Source102: wasi-sdk-11.0-linux.tar.gz
-Source111: undici-5.13.0-stripped.tar.gz
+Source111: undici-5.19.1-stripped.tar.gz
Source112: wasi-sdk-14.0-linux.tar.gz
# Disable running gyp on bundled deps we don't use
diff --git a/package.cfg b/package.cfg
deleted file mode 100644
index d8d71e6..0000000
--- a/package.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-[koji]
-targets = rawhide f37
diff --git a/packaging/nodejs.spec.in b/packaging/nodejs.spec.in
index 844609b..c9a4a71 100644
--- a/packaging/nodejs.spec.in
+++ b/packaging/nodejs.spec.in
@@ -57,7 +57,7 @@
# Determine if this should be the default version for this Fedora release
# The default version will own /usr/bin/node and friends
-%if 0%{?fedora} == 37 || 0%{?fedora} == 38
+%if 0%{?fedora} == 37 || 0%{?fedora} == 38 || 0%{?rhel} == 10
%global nodejs_default %{nodejs_major}
%endif
%global nodejs_private_sitelib %{nodejs_sitelib}_%{nodejs_major}
diff --git a/sources b/sources
index 7b29603..207b3a3 100644
--- a/sources
+++ b/sources
@@ -1,7 +1,7 @@
-SHA512 (node-v18.13.0-stripped.tar.gz) = 1f634aaf11902cd9462d8192bf538e2269d1935e0a5fc933a6aeef2eec04c8db1577cb2ee7f8bac9592585912164664b9731bfb4f9687cb5d929f92ba3565c0a
+SHA512 (node-v18.14.1-stripped.tar.gz) = 89f5a5a582918e4fdfac99b985ce280b9f18618046c89969a3f2466730877c6c96db24bf7ea7415f9dc6a7f695c211a7c64573cbf2871f72bcd0c7ea09ba3e11
SHA512 (icu4c-72_1-data-bin-b.zip) = ed0ce3ebd02f81cca7b3808abc72dc99962eb36bd123ebdf45c578b307b674566491191b6f7d261c679b2b5662b7084c61452b98968b35df3f749d413d5d7663
SHA512 (icu4c-72_1-data-bin-l.zip) = cc9a8cf2a89dacde4fab4a68ca7a7ba1fd106b71ebc23318fb9293ab96001be825bf89b1daf3da02958ba201ca4f714a67a26db3a51dc03653b9970ebdd5ff56
-SHA512 (cjs-module-lexer-1.2.2-stripped.tar.gz) = e49c8f1a206dcf7c7b740e9ca4998e5d9b74d0016a701ddb0ea02e4f21eec763c58bf0c91dea4167401f604721027100d39d7c5c2b85025bb687c83c33c9728f
+SHA512 (cjs-module-lexer-1.2.2-stripped.tar.gz) = ba37ac0e46a89efa4a61d10f0e1273d30798931864168b9dd77fbd0aa1d87c468c328c90240e92fffe05b9a4c6920152f39e13d491f685dca32ab7272362cec0
SHA512 (wasi-sdk-11.0-linux.tar.gz) = e3ed4597f7f2290967eef6238e9046f60abbcb8633a4a2a51525d00e7393df8df637a98a5b668217d332dd44fcbf2442ec7efd5e65724e888d90611164451e20
-SHA512 (undici-5.13.0-stripped.tar.gz) = ee10bec72ac61bed8de8fff49fc13a8d4c7796594ef4409c06b28d9331fa9656f282c79e143e43a4534df0409d7354ce09b2c7314664837dacb0a8b1cba80e64
+SHA512 (undici-5.19.1-stripped.tar.gz) = f1409474559fd8a5fa46c203fe6ea3b892220b0bcc144e6707703e088a911c83abe6cb89081d2f8539f9641d8c9cd463a718a0fa4530e347086d1d321028b227
SHA512 (wasi-sdk-14.0-linux.tar.gz) = 288a367e051f5b3f5853de97fabaedd3acf2255819d50c24f48f573897518500ea808342fd9aea832b2a5717089807bf1cbcf6d46b156b4eb60cc6b3c02ee997
commit c541b7e2566ed9a2f0d581f5775ae2fceaf3fc81
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Jan 27 13:36:00 2023 -0500
Set Node.js 18.x as the default for RHEL 10
This will likely change to 20.x closer to release, but we need a
default in place for the time being.
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs18.spec b/nodejs18.spec
index bd1c393..35baad3 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -57,7 +57,7 @@
# Determine if this should be the default version for this Fedora release
# The default version will own /usr/bin/node and friends
-%if 0%{?fedora} == 37 || 0%{?fedora} == 38
+%if 0%{?fedora} == 37 || 0%{?fedora} == 38 || 0%{?rhel} == 10
%global nodejs_default %{nodejs_major}
%endif
%global nodejs_private_sitelib %{nodejs_sitelib}_%{nodejs_major}
commit 8cfad4cd12d0de5f6a3dd5e5f0d3e9fede396ccb
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 23 17:18:47 2023 -0500
sources: Fix typo preventing upload
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index 7cd649b..a6da118 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -181,7 +181,7 @@ rm -Rf icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
wget $(grep Source3 packaging/nodejs.spec.in | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
wget $(grep Source4 packaging/nodejs.spec.in | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
-if [ _arg_push = 'on' ]; then
+if [ $_arg_push = 'on' ]; then
push_flag=''
else
push_flag='--offline'
commit 148cb7de34ed90dcb2ba31352a1cd880114c415d
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 23 16:53:27 2023 -0500
sources: Use spec template for ICU URL
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index c3901bf..7cd649b 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -178,8 +178,8 @@ ICU_MINOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --
# Download the ICU binary data files
rm -Rf icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
-wget $(grep Source3 nodejs${NODE_MAJOR}.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
-wget $(grep Source4 nodejs${NODE_MAJOR}.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
+wget $(grep Source3 packaging/nodejs.spec.in | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
+wget $(grep Source4 packaging/nodejs.spec.in | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
if [ _arg_push = 'on' ]; then
push_flag=''
commit 99e9cbbbe56b99513dec8314b37cf620b1902ebf
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 23 15:41:05 2023 -0500
Fix important typo
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index 74e0398..c3901bf 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -307,7 +307,7 @@ sed -e "s/@NODE_MAJOR@/${NODE_MAJOR}/g" \
-e "s/@UNDICI_VERSION@/${UNDICI_VERSION}/g" \
-e "s/@UNDICI_WASI_MAJOR@/${UNDICI_WASI_MAJOR}/g" \
-e "s/@UNDICI_WASI_MINOR@/${UNDICI_WASI_MINOR}/g" \
- ${SCRIPT_DIR}/.packaging/nodejs.spec.in \
+ ${SCRIPT_DIR}/packaging/nodejs.spec.in \
> ${SCRIPT_DIR}/nodejs${NODE_MAJOR}.spec
rm -rf node-v${version}
commit 443d608e138b8a376fbbf42b6785b27263ebf348
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 23 15:24:28 2023 -0500
Fix v8 symlinks
Resolves: rhbz#2163346
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs18.spec b/nodejs18.spec
index 8b4c1d9..bd1c393 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -592,7 +592,7 @@ ln -srf %{buildroot}%{_libdir}/libnode.so.%{nodejs_soversion} \
# Install v8 compatibility symlinks
for header in %{buildroot}%{_includedir}/node/libplatform %{buildroot}%{_includedir}/node/v8*.h; do
header=$(basename ${header})
- ln -srf ./node/${header} %{buildroot}%{_includedir}/${header}
+ ln -sf ./node/${header} %{buildroot}%{_includedir}/${header}
done
ln -s ./node/cppgc %{buildroot}%{_includedir}/cppgc
for soname in libv8 libv8_libbase libv8_libplatform; do
diff --git a/packaging/nodejs.spec.in b/packaging/nodejs.spec.in
index 4f79d86..844609b 100644
--- a/packaging/nodejs.spec.in
+++ b/packaging/nodejs.spec.in
@@ -592,7 +592,7 @@ ln -srf %{buildroot}%{_libdir}/libnode.so.%{nodejs_soversion} \
# Install v8 compatibility symlinks
for header in %{buildroot}%{_includedir}/node/libplatform %{buildroot}%{_includedir}/node/v8*.h; do
header=$(basename ${header})
- ln -srf ./node/${header} %{buildroot}%{_includedir}/${header}
+ ln -sf ./node/${header} %{buildroot}%{_includedir}/${header}
done
ln -s ./node/cppgc %{buildroot}%{_includedir}/cppgc
for soname in libv8 libv8_libbase libv8_libplatform; do
commit bd35f75e9f198f2c71e64fe517e3a309ce8af2f7
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 16 16:50:17 2023 -0500
Rework nodejs-sources.sh
This will now automatically update the specfile from the
.packaging/nodejs.spec.in template.
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index d7d766a..74e0398 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -3,23 +3,23 @@
# arguments, make sure to call
# `argbash nodejs-tarball.sh -o nodejs-tarball.sh`
-# ARG_POSITIONAL_SINGLE([version],[Node.js release version],[""])
+# ARG_POSITIONAL_SINGLE([version],[Node.js release version])
+# ARG_OPTIONAL_BOOLEAN([push],[],[Whether to upload to the lookaside cache],[on])
# ARG_DEFAULTS_POS([])
# ARG_HELP([Tool to aid in Node.js packaging of new releases])
# ARGBASH_GO()
# needed because of Argbash --> m4_ignore([
-### START OF CODE GENERATED BY Argbash v2.8.1 one line above ###
+### START OF CODE GENERATED BY Argbash v2.10.0 one line above ###
# Argbash is a bash code generator used to get arguments parsing right.
# Argbash is FREE SOFTWARE, see https://argbash.io for more info
die()
{
- local _ret=$2
- test -n "$_ret" || _ret=1
- test "$_PRINT_HELP" = yes && print_help >&2
+ local _ret="${2:-1}"
+ test "${_PRINT_HELP:-no}" = yes && print_help >&2
echo "$1" >&2
- exit ${_ret}
+ exit "${_ret}"
}
@@ -32,15 +32,17 @@ begins_with_short_option()
# THE DEFAULTS INITIALIZATION - POSITIONALS
_positionals=()
-_arg_version=""
+_arg_version=
# THE DEFAULTS INITIALIZATION - OPTIONALS
+_arg_push="on"
print_help()
{
printf '%s\n' "Tool to aid in Node.js packaging of new releases"
- printf 'Usage: %s [-h|--help] [<version>]\n' "$0"
- printf '\t%s\n' "<version>: Node.js release version (default: '""')"
+ printf 'Usage: %s [--(no-)push] [-h|--help] <version>\n' "$0"
+ printf '\t%s\n' "<version>: Node.js release version"
+ printf '\t%s\n' "--push, --no-push: Whether to upload to the lookaside cache (on by default)"
printf '\t%s\n' "-h, --help: Prints help"
}
@@ -52,6 +54,10 @@ parse_commandline()
do
_key="$1"
case "$_key" in
+ --no-push|--push)
+ _arg_push="on"
+ test "${1:0:5}" = "--no-" && _arg_push="off"
+ ;;
-h|--help)
print_help
exit 0
@@ -73,7 +79,9 @@ parse_commandline()
handle_passed_args_count()
{
- test "${_positionals_count}" -le 1 || _PRINT_HELP=yes die "FATAL ERROR: There were spurious positional arguments --- we expect between 0 and 1, but got ${_positionals_count} (the last one was: '${_last_positional}')." 1
+ local _required_args_string="'version'"
+ test "${_positionals_count}" -ge 1 || _PRINT_HELP=yes die "FATAL ERROR: Not enough positional arguments - we require exactly 1 (namely: $_required_args_string), but got only ${_positionals_count}." 1
+ test "${_positionals_count}" -le 1 || _PRINT_HELP=yes die "FATAL ERROR: There were spurious positional arguments --- we expect exactly 1 (namely: $_required_args_string), but got ${_positionals_count} (the last one was: '${_last_positional}')." 1
}
@@ -100,6 +108,10 @@ assign_positional_args 1 "${_positionals[@]}"
### END OF CODE GENERATED BY Argbash (sortof) ### ])
# [ <-- needed because of Argbash
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
+
+alias wget='wget --quiet'
+
packages=("jq" "wget" "tar" "fedpkg" "grep" "sed")
rpm -q ${packages[@]} >/dev/null
@@ -109,15 +121,11 @@ fi
set -e
-echo $_arg_version
-
-if [ x$_arg_version != x ]; then
- version=$_arg_version
-else
- version=$(rpm -q --specfile --qf='%{version}\n' nodejs*.spec | head -n1)
-fi
+version=$_arg_version
NODE_MAJOR=$(echo $version | cut -d. -f1)
+NODE_MINOR=$(echo $version | cut -d. -f2)
+NODE_PATCH=$(echo $version | cut -d. -f3)
rm -rf node-v${version}.tar.gz \
node-v${version}-stripped.tar.gz \
@@ -126,8 +134,10 @@ rm -rf node-v${version}.tar.gz \
cjs-module-lexer* \
undici* \
SHASUMS256.txt
+echo Downloading node-v${version}.tar.gz
wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz \
http://nodejs.org/dist/v$%7Bversion%7D/SHASUMS256.txt
+echo Validating sha256sum
sha256sum -c SHASUMS256.txt --ignore-missing
rm -f SHASUMS256.txt
tar -zxf node-v${version}.tar.gz
@@ -137,7 +147,6 @@ tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
-set -x
# Download the cjs-module-lexer sources
LEXER_VERSION=$(jq -r '.version' node-v${version}/deps/cjs-module-lexer/package.json)
wget https://github.com/nodejs/cjs-module-lexer/archive/refs/tags/$%7BLEXER_VERSI...
@@ -167,14 +176,19 @@ wget https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-$%7BUNDIC...
ICU_MAJOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
ICU_MINOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\2/g')
-set +x
-
# Download the ICU binary data files
rm -Rf icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
wget $(grep Source3 nodejs${NODE_MAJOR}.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
wget $(grep Source4 nodejs${NODE_MAJOR}.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
-fedpkg new-sources node-v${version}-stripped.tar.gz \
+if [ _arg_push = 'on' ]; then
+ push_flag=''
+else
+ push_flag='--offline'
+fi
+
+fedpkg new-sources ${push_flag} \
+ node-v${version}-stripped.tar.gz \
icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip \
cjs-module-lexer-${LEXER_VERSION}-stripped.tar.gz \
wasi-sdk-${LEXER_WASI_MAJOR}.${LEXER_WASI_MINOR}-linux.tar.gz \
@@ -186,41 +200,49 @@ rm -f node-v${version}.tar.gz
set +e
# Determine the bundled versions of the various packages
-echo "Bundled software versions"
+echo "Included software versions"
echo "-------------------------"
echo
+echo "Node.js version"
+echo "========================="
+echo "${version}"
+echo
echo "libnode shared object version"
echo "========================="
-grep "define NODE_MODULE_VERSION" node-v${version}/src/node_version.h
+NODE_SOVERSION=$(grep -oP '(?<=#define NODE_MODULE_VERSION )\d+' node-v${version}/src/node_version.h)
+echo "${NODE_SOVERSION}"
echo
echo "V8"
echo "========================="
-grep "define V8_MAJOR_VERSION" node-v${version}/deps/v8/include/v8-version.h
-grep "define V8_MINOR_VERSION" node-v${version}/deps/v8/include/v8-version.h
-grep "define V8_BUILD_NUMBER" node-v${version}/deps/v8/include/v8-version.h
-grep "define V8_PATCH_LEVEL" node-v${version}/deps/v8/include/v8-version.h
+V8_MAJOR=$(grep -oP '(?<=#define V8_MAJOR_VERSION )\d+' node-v${version}/deps/v8/include/v8-version.h)
+V8_MINOR=$(grep -oP '(?<=#define V8_MINOR_VERSION )\d+' node-v${version}/deps/v8/include/v8-version.h)
+V8_BUILD=$(grep -oP '(?<=#define V8_BUILD_NUMBER )\d+' node-v${version}/deps/v8/include/v8-version.h)
+V8_PATCH=$(grep -oP '(?<=#define V8_PATCH_LEVEL )\d+' node-v${version}/deps/v8/include/v8-version.h)
+echo "${V8_MAJOR}.${V8_MINOR}.${V8_BUILD}.${V8_PATCH}"
echo
echo "c-ares"
echo "========================="
-grep "define ARES_VERSION_MAJOR" node-v${version}/deps/cares/include/ares_version.h
-grep "define ARES_VERSION_MINOR" node-v${version}/deps/cares/include/ares_version.h
-grep "define ARES_VERSION_PATCH" node-v${version}/deps/cares/include/ares_version.h
+C_ARES_VERSION=$(grep -oP '(?<=#define ARES_VERSION_STR ).*"' node-v${version}/deps/cares/include/ares_version.h |sed -e 's/^"//' -e 's/"$//')
+echo $C_ARES_VERSION
echo
echo "llhttp"
echo "========================="
-grep "define LLHTTP_VERSION_MAJOR" node-v${version}/deps/llhttp/include/llhttp.h
-grep "define LLHTTP_VERSION_MINOR" node-v${version}/deps/llhttp/include/llhttp.h
-grep "define LLHTTP_VERSION_PATCH" node-v${version}/deps/llhttp/include/llhttp.h
+LLHTTP_MAJOR=$(grep -oP '(?<=#define LLHTTP_VERSION_MAJOR )\d+' node-v${version}/deps/llhttp/include/llhttp.h)
+LLHTTP_MINOR=$(grep -oP '(?<=#define LLHTTP_VERSION_MINOR )\d+' node-v${version}/deps/llhttp/include/llhttp.h)
+LLHTTP_PATCH=$(grep -oP '(?<=#define LLHTTP_VERSION_PATCH )\d+' node-v${version}/deps/llhttp/include/llhttp.h)
+echo "${LLHTTP_MAJOR}.${LLHTTP_MINOR}.${LLHTTP_PATCH}"
echo
echo "libuv"
echo "========================="
-grep "define UV_VERSION_MAJOR" node-v${version}/deps/uv/include/uv/version.h
-grep "define UV_VERSION_MINOR" node-v${version}/deps/uv/include/uv/version.h
-grep "define UV_VERSION_PATCH" node-v${version}/deps/uv/include/uv/version.h
+UV_MAJOR=$(grep -oP '(?<=#define UV_VERSION_MAJOR )\d+' node-v${version}/deps/uv/include/uv/version.h)
+UV_MINOR=$(grep -oP '(?<=#define UV_VERSION_MINOR )\d+' node-v${version}/deps/uv/include/uv/version.h)
+UV_PATCH=$(grep -oP '(?<=#define UV_VERSION_PATCH )\d+' node-v${version}/deps/uv/include/uv/version.h)
+echo ${UV_MAJOR}.${UV_MINOR}.${UV_PATCH}
echo
echo "nghttp2"
echo "========================="
-grep "define NGHTTP2_VERSION " node-v${version}/deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
+NGHTTP2_VERSION=$(grep -oP '(?<=#define NGHTTP2_VERSION ).*"' node-v${version}/deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h |sed -e 's/^"//' -e 's/"$//')
+echo $NGHTTP2_VERSION
echo
echo "ICU"
echo "========================="
@@ -228,21 +250,26 @@ echo "${ICU_MAJOR}.${ICU_MINOR}"
echo
echo "punycode"
echo "========================="
-grep "'version'" node-v${version}/lib/punycode.js
+PUNYCODE_VERSION=$(/usr/bin/node -e "console.log(require('punycode').version)")
+echo $PUNYCODE_VERSION
echo
echo "uvwasi"
echo "========================="
-grep "define UVWASI_VERSION_MAJOR" node-v${version}/deps/uvwasi/include/uvwasi.h
-grep "define UVWASI_VERSION_MINOR" node-v${version}/deps/uvwasi/include/uvwasi.h
-grep "define UVWASI_VERSION_PATCH" node-v${version}/deps/uvwasi/include/uvwasi.h
+UVWASI_MAJOR=$(grep -oP '(?<=#define UVWASI_VERSION_MAJOR )\d+' node-v${version}/deps/uvwasi/include/uvwasi.h)
+UVWASI_MINOR=$(grep -oP '(?<=#define UVWASI_VERSION_MINOR )\d+' node-v${version}/deps/uvwasi/include/uvwasi.h)
+UVWASI_PATCH=$(grep -oP '(?<=#define UVWASI_VERSION_PATCH )\d+' node-v${version}/deps/uvwasi/include/uvwasi.h)
+UVWASI_VERSION="${UVWASI_MAJOR}.${UVWASI_MINOR}.${UVWASI_PATCH}"
+echo $UVWASI_VERSION
echo
echo "npm"
echo "========================="
-grep ""version":" node-v${version}/deps/npm/package.json
+NPM_VERSION=$(jq -r .version ./node-v${version}/deps/npm/package.json)
+echo $NPM_VERSION
echo
echo "zlib"
echo "========================="
-grep "define ZLIB_VERSION" node-v${version}/deps/zlib/zlib.h
+ZLIB_VERSION=$(grep -oP '(?<=#define ZLIB_VERSION ).*"' node-v${version}/deps/zlib/zlib.h |sed -e 's/^"//' -e 's/"$//')
+echo $ZLIB_VERSION
echo
echo "cjs-module-lexer"
echo "========================="
@@ -254,7 +281,34 @@ echo "========================="
echo "${UNDICI_VERSION}"
echo "WASI-SDK: ${UNDICI_WASI_MAJOR}.${UNDICI_WASI_MINOR}"
echo
-echo "Make sure these versions match what is in the RPM spec file"
+echo "Applying versions to spec template"
+
+sed -e "s/@NODE_MAJOR@/${NODE_MAJOR}/g" \
+ -e "s/@NODE_MINOR@/${NODE_MINOR}/g" \
+ -e "s/@NODE_PATCH@/${NODE_PATCH}/g" \
+ -e "s/@NODE_SOVERSION@/${NODE_SOVERSION}/g" \
+ -e "s/@V8_MAJOR@/${V8_MAJOR}/g" \
+ -e "s/@V8_MINOR@/${V8_MINOR}/g" \
+ -e "s/@V8_BUILD@/${V8_BUILD}/g" \
+ -e "s/@V8_PATCH@/${V8_PATCH}/g" \
+ -e "s/@C_ARES_VERSION@/${C_ARES_VERSION}/g" \
+ -e "s/@LLHTTP_VERSION@/${LLHTTP_MAJOR}.${LLHTTP_MINOR}.${LLHTTP_PATCH}/g" \
+ -e "s/@LIBUV_VERSION@/${UV_MAJOR}.${UV_MINOR}.${UV_PATCH}/g" \
+ -e "s/@NGHTTP2_VERSION@/${NGHTTP2_VERSION}/g" \
+ -e "s/@ICU_MAJOR@/${ICU_MAJOR}/g" \
+ -e "s/@ICU_MINOR@/${ICU_MINOR}/g" \
+ -e "s/@PUNYCODE_VERSION@/${PUNYCODE_VERSION}/g" \
+ -e "s/@UVWASI_VERSION@/${UVWASI_VERSION}/g" \
+ -e "s/@NPM_VERSION@/${NPM_VERSION}/g" \
+ -e "s/@ZLIB_VERSION@/${ZLIB_VERSION}/g" \
+ -e "s/@LEXER_VERSION@/${LEXER_VERSION}/g" \
+ -e "s/@LEXER_WASI_MAJOR@/${LEXER_WASI_MAJOR}/g" \
+ -e "s/@LEXER_WASI_MINOR@/${LEXER_WASI_MINOR}/g" \
+ -e "s/@UNDICI_VERSION@/${UNDICI_VERSION}/g" \
+ -e "s/@UNDICI_WASI_MAJOR@/${UNDICI_WASI_MAJOR}/g" \
+ -e "s/@UNDICI_WASI_MINOR@/${UNDICI_WASI_MINOR}/g" \
+ ${SCRIPT_DIR}/.packaging/nodejs.spec.in \
+ > ${SCRIPT_DIR}/nodejs${NODE_MAJOR}.spec
rm -rf node-v${version}
# ] <-- needed because of Argbash
diff --git a/nodejs18.spec b/nodejs18.spec
index 599de03..8b4c1d9 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -155,25 +155,10 @@ Source100: nodejs-sources.sh
# These are full sources for dependencies included as WASM blobs in the source of Node itself.
# Note: These sources would also include pre-compiled WASM blobs… so they are adjusted not to.
# Recipes for creating these blobs are included in the sources.
-
-# Version: jq '.version' deps/cjs-module-lexer/package.json
-# Original: https://github.com/nodejs/cjs-module-lexer/archive/refs/tags/1.2.2.tar.gz
-# Adjustments: rm -f cjs-module-lexer-1.2.2/lib/lexer.wasm
-# This is generated by nodejs-sources.sh
+# These are generated by nodejs-sources.sh
Source101: cjs-module-lexer-1.2.2-stripped.tar.gz
-# The WASM blob was made using wasi-sdk v11; compiler libraries are linked in.
-# Version source: Makefile
-# This is generated by nodejs-sources.sh
Source102: wasi-sdk-11.0-linux.tar.gz
-
-# Version: jq '.version' deps/undici/src/package.json
-# Original: https://github.com/nodejs/undici/archive/refs/tags/v5.11.0.tar.gz
-# Adjustments: rm -f undici-5.11.0/lib/llhttp/llhttp*.wasm*
-# This is generated by nodejs-sources.sh
Source111: undici-5.13.0-stripped.tar.gz
-# The WASM blob was made using wasi-sdk v14; compiler libraries are linked in.
-# Version source: build/Dockerfile
-# This is generated by nodejs-sources.sh
Source112: wasi-sdk-14.0-linux.tar.gz
# Disable running gyp on bundled deps we don't use
diff --git a/packaging/nodejs.spec.in b/packaging/nodejs.spec.in
new file mode 100644
index 0000000..4f79d86
--- /dev/null
+++ b/packaging/nodejs.spec.in
@@ -0,0 +1,832 @@
+# The following macros control the usage of dependencies bundled from upstream.
+#
+# When to use what:
+# - Regular (presumably non-modular) build: use neither (the default in Fedora)
+# - Early bootstrapping build that is not intended to be shipped:
+# use --with=bootstrap; this will bundle deps and add `~bootstrap` release suffix
+# - Build with some dependencies not avalaible in necessary versions (i.e. module build):
+# use --with=bundled; will bundle deps, but do not add the suffix
+#
+# create bootstrapping build with bundled deps and extra release suffix
+%bcond_with bootstrap
+# bundle dependencies that are not available in Fedora modules
+%if %{with bootstrap}
+%bcond_without bundled
+%else
+%bcond_with bundled
+%endif
+
+%if 0%{?rhel} && 0%{?rhel} < 8
+%bcond_without bundled_zlib
+%else
+%bcond_with bundled_zlib
+%endif
+
+# LTO is currently broken on Node.js builds
+%define _lto_cflags %{nil}
+
+# Heavy-handed approach to avoiding issues with python
+# bytecompiling files in the node_modules/ directory
+%global __python %{python3}
+
+# == Master Relase ==
+# This is used by both the nodejs package and the npm subpackage that
+# has a separate version - the name is special so that rpmdev-bumpspec
+# will bump this rather than adding .1 to the end.
+%global baserelease %autorelease
+
+%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
+
+# == Node.js Version ==
+# Note: Fedora should only ship LTS versions of Node.js (currently expected
+# to be major versions with even numbers). The odd-numbered versions are new
+# feature releases that are only supported for nine months, which is shorter
+# than a Fedora release lifecycle.
+%global nodejs_epoch 1
+%global nodejs_major @NODE_MAJOR@
+%global nodejs_minor @NODE_MINOR@
+%global nodejs_patch @NODE_PATCH@
+%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
+%global nodejs_soversion @NODE_SOVERSION@
+%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
+%global nodejs_release %{baserelease}
+%global nodejs_envr %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
+
+%global nodejs_datadir %{_datarootdir}/node-%{nodejs_major}
+
+# Determine if this should be the default version for this Fedora release
+# The default version will own /usr/bin/node and friends
+%if 0%{?fedora} == 37 || 0%{?fedora} == 38
+%global nodejs_default %{nodejs_major}
+%endif
+%global nodejs_private_sitelib %{nodejs_sitelib}_%{nodejs_major}
+
+
+# == Bundled Dependency Versions ==
+# v8 - from deps/v8/include/v8-version.h
+# Epoch is set to ensure clean upgrades from the old v8 package
+%global v8_epoch 3
+%global v8_major @V8_MAJOR@
+%global v8_minor @V8_MINOR@
+%global v8_build @V8_BUILD@
+%global v8_patch @V8_PATCH@
+%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
+%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
+
+# zlib - from deps/zlib/zlib.h
+%global zlib_version @ZLIB_VERSION@
+
+# c-ares - from deps/cares/include/ares_version.h
+# https://github.com/nodejs/node/pull/9332
+%global c_ares_version @C_ARES_VERSION@
+
+# llhttp - from deps/llhttp/include/llhttp.h
+%global llhttp_version @LLHTTP_VERSION@
+
+# libuv - from deps/uv/include/uv/version.h
+%global libuv_version @LIBUV_VERSION@
+
+# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
+%global nghttp2_version @NGHTTP2_VERSION@
+
+# ICU - from tools/icu/current_ver.dep
+%global icu_major @ICU_MAJOR@
+%global icu_minor @ICU_MINOR@
+%global icu_version %{icu_major}.%{icu_minor}
+
+%global icudatadir %{nodejs_datadir}/icudata
+%{!?little_endian: %global little_endian %(%{python3} -c "import sys;print (0 if sys.byteorder=='big' else 1)")}
+# " this line just fixes syntax highlighting for vim that is confused by the above and continues literal
+
+
+# OpenSSL minimum version
+%global openssl11_minimum 1:1.1.1
+%global openssl30_minimum 1:3.0.2
+
+# punycode - from lib/punycode.js
+# Note: this was merged into the mainline since 0.6.x
+# Note: this will be unmerged in an upcoming major release
+%global punycode_version @PUNYCODE_VERSION@
+
+# npm - from deps/npm/package.json
+%global npm_epoch 1
+%global npm_version @NPM_VERSION@
+
+# In order to avoid needing to keep incrementing the release version for the
+# main package forever, we will just construct one for npm that is guaranteed
+# to increment safely. Changing this can only be done during an update when the
+# base npm version number is increasing.
+%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
+
+%global npm_envr %{npm_epoch}:%{npm_version}-%{npm_release}
+
+%global npm_obsoletes 1:8.19.2-1.18.12.1.3
+
+# uvwasi - from deps/uvwasi/include/uvwasi.h
+%global uvwasi_version @UVWASI_VERSION@
+
+# histogram_c - assumed from timestamps
+%global histogram_version 0.9.7
+
+
+Name: nodejs%{nodejs_major}
+Epoch: %{nodejs_epoch}
+Version: %{nodejs_version}
+Release: %{nodejs_release}
+Summary: JavaScript runtime
+License: MIT and ASL 2.0 and ISC and BSD
+Group: Development/Languages
+URL: http://nodejs.org/
+
+ExclusiveArch: %{nodejs_arches}
+
+# nodejs bundles openssl, but we use the system version in Fedora
+# because openssl contains prohibited code, we remove openssl completely from
+# the tarball, using the script in Source100
+Source0: node-v%{nodejs_version}-stripped.tar.gz
+Source1: npmrc
+Source2: btest402.js
+# The binary data that icu-small can use to get icu-full capability
+Source3: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_major%7...
+Source4: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_major%7...
+Source100: nodejs-sources.sh
+
+# These are full sources for dependencies included as WASM blobs in the source of Node itself.
+# Note: These sources would also include pre-compiled WASM blobs… so they are adjusted not to.
+# Recipes for creating these blobs are included in the sources.
+# These are generated by nodejs-sources.sh
+Source101: cjs-module-lexer-@LEXER_VERSION@-stripped.tar.gz
+Source102: wasi-sdk-@LEXER_WASI_MAJOR@.@LEXER_WASI_MINOR@-linux.tar.gz
+Source111: undici-@UNDICI_VERSION@-stripped.tar.gz
+Source112: wasi-sdk-@UNDICI_WASI_MAJOR@.@UNDICI_WASI_MINOR@-linux.tar.gz
+
+# Disable running gyp on bundled deps we don't use
+Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
+
+%if 0%{?nodejs_default}
+%global pkgname nodejs
+%package -n %{pkgname}
+Summary: JavaScript runtime
+%else
+%global pkgname nodejs%{nodejs_major}
+%endif
+
+BuildRequires: make
+BuildRequires: python%{python3_pkgversion}-devel
+BuildRequires: python%{python3_pkgversion}-setuptools
+BuildRequires: python%{python3_pkgversion}-jinja2
+%if 0%{?rhel} && 0%{?rhel} < 9
+BuildRequires: python-unversioned-command
+%endif
+%if %{with bundled_zlib}
+Provides: bundled(zlib) = %{zlib_version}
+%else
+BuildRequires: zlib-devel
+%endif
+BuildRequires: brotli-devel
+%if 0%{?rhel} && 0%{?rhel} < 8
+BuildRequires: devtoolset-11-gcc
+BuildRequires: devtoolset-11-gcc-c++
+%else
+BuildRequires: gcc >= 8.3.0
+BuildRequires: gcc-c++ >= 8.3.0
+%endif
+
+BuildRequires: jq
+
+# needed to generate bundled provides for npm dependencies
+# https://src.fedoraproject.org/rpms/nodejs/pull-request/2
+# https://pagure.io/nodejs-packaging/pull-request/10
+BuildRequires: nodejs-packaging
+
+BuildRequires: chrpath
+BuildRequires: libatomic
+BuildRequires: ninja-build
+BuildRequires: systemtap-sdt-devel
+BuildRequires: unzip
+
+Provides: nodejs = %{nodejs_envr}
+
+%if %{with bundled}
+Provides: bundled(libuv) = %{libuv_version}
+%else
+BuildRequires: libuv-devel >= 1:%{libuv_version}
+Requires: libuv >= 1:%{libuv_version}
+%endif
+
+# Node.js frequently bumps this faster than Fedora can follow,
+# so we will bundle it.
+Provides: bundled(nghttp2) = %{nghttp2_version}
+
+# Temporarily bundle llhttp because the upstream doesn't
+# provide releases for it.
+Provides: bundled(llhttp) = %{llhttp_version}
+
+
+%if 0%{?rhel} && 0%{?rhel} < 8
+BuildRequires: openssl11-devel >= %{openssl11_minimum}
+Requires: openssl11 >= %{openssl11_minimum}
+%global ssl_configure --shared-openssl --shared-openssl-includes=%{_includedir}/openssl11 --shared-openssl-libpath=%{_libdir}/openssl11
+%else
+
+%if 0%{?fedora} >= 36
+BuildRequires: openssl >= %{openssl30_minimum}
+BuildRequires: openssl-devel >= %{openssl30_minimum}
+%global openssl_fips_configure --openssl-is-fips
+%else
+Requires: openssl >= %{openssl11_minimum}
+BuildRequires: openssl-devel >= %{openssl11_minimum}
+%global openssl_fips_configure %{nil}
+%endif
+
+%global ssl_configure --shared-openssl %{openssl_fips_configure}
+%endif
+
+# we need the system certificate store
+Requires: ca-certificates
+
+Requires: %{pkgname}-libs%{?_isa} = %{nodejs_envr}
+
+%if 0%{?fedora} || 0%{?rhel} >= 8
+# Pull in the docs and full-icu data by default
+Recommends: %{pkgname}-docs = %{nodejs_envr}
+Recommends: %{pkgname}-full-i18n%{?_isa} = %{nodejs_envr}
+Recommends: %{pkgname}-npm >= %{npm_envr}
+%endif
+
+# we need ABI virtual provides where SONAMEs aren't enough/not present so deps
+# break when binary compatibility is broken
+Provides: nodejs(abi) = %{nodejs_abi}
+Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
+
+# this corresponds to the "engine" requirement in package.json
+Provides: nodejs(engine) = %{nodejs_version}
+
+# Node.js currently has a conflict with the 'node' package in Fedora
+# The ham-radio group has agreed to rename their binary for us, but
+# in the meantime, we're setting an explicit Conflicts: here
+Conflicts: node <= 0.3.2-12
+
+# The punycode module was absorbed into the standard library in v0.6.
+# It still exists as a seperate package for the benefit of users of older
+# versions. Since we've never shipped anything older than v0.10 in Fedora,
+# we don't need the seperate nodejs-punycode package, so we Provide it here so
+# dependent packages don't need to override the dependency generator.
+# See also: RHBZ#11511811
+# UPDATE: punycode will be deprecated and so we should unbundle it in Node v8
+# and use upstream module instead
+# https://github.com/nodejs/node/commit/29e49fc286080215031a81effbd59eac092fff...
+Provides: nodejs-punycode = %{punycode_version}
+Provides: npm(punycode) = %{punycode_version}
+
+# Node.js has forked c-ares from upstream in an incompatible way, so we need
+# to carry the bundled version internally.
+# See https://github.com/nodejs/node/commit/766d063e0578c0f7758c3a965c971763f43fec...
+Provides: bundled(c-ares) = %{c_ares_version}
+
+# Node.js is closely tied to the version of v8 that is used with it. It makes
+# sense to use the bundled version because upstream consistently breaks ABI
+# even in point releases. Node.js upstream has now removed the ability to build
+# against a shared system version entirely.
+# See https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
+Provides: bundled(v8) = %{v8_version}
+
+# Node.js is bound to a specific version of ICU which may not match the OS
+# We cannot pin the OS to this version of ICU because every update includes
+# an ABI-break, so we'll use the bundled copy.
+Provides: bundled(icu) = %{icu_version}
+
+# Upstream added new dependencies, but so far they are not available in Fedora
+# or there's no option to built it as a shared dependency, so we bundle them
+Provides: bundled(uvwasi) = %{uvwasi_version}
+Provides: bundled(histogram) = %{histogram_version}
+
+
+%description
+Node.js is a platform built on Chrome's JavaScript runtime \
+for easily building fast, scalable network applications. \
+Node.js uses an event-driven, non-blocking I/O model that \
+makes it lightweight and efficient, perfect for data-intensive \
+real-time applications that run across distributed devices.}
+
+
+%if 0%{?nodejs_default}
+%description -n %{pkgname}
+Node.js is a platform built on Chrome's JavaScript runtime \
+for easily building fast, scalable network applications. \
+Node.js uses an event-driven, non-blocking I/O model that \
+makes it lightweight and efficient, perfect for data-intensive \
+real-time applications that run across distributed devices.}
+%endif
+
+
+%package -n %{pkgname}-devel
+Summary: JavaScript runtime - development headers
+Group: Development/Languages
+Requires: %{pkgname}%{?_isa} = %{nodejs_envr}
+Requires: %{pkgname}-libs%{?_isa} = %{nodejs_envr}
+Requires: openssl-devel%{?_isa}
+%if !%{with bundled_zlib}
+Requires: zlib-devel%{?_isa}
+%endif
+Requires: brotli-devel%{?_isa}
+Requires: nodejs-packaging
+
+%if %{without bundled}
+Requires: libuv-devel%{?_isa}
+%endif
+
+Provides: nodejs-devel = %{nodejs_envr}
+Conflicts: nodejs-devel
+
+
+%description -n %{pkgname}-devel
+Development headers for the Node.js JavaScript runtime.
+
+
+%package -n %{pkgname}-libs
+Summary: Node.js and v8 libraries
+
+# Compatibility for obsolete v8 package
+%if 0%{?__isa_bits} == 64
+Provides: libv8.so.%{v8_major}()(64bit) = %{v8_epoch}:%{v8_version}
+Provides: libv8_libbase.so.%{v8_major}()(64bit) = %{v8_epoch}:%{v8_version}
+Provides: libv8_libplatform.so.%{v8_major}()(64bit) = %{v8_epoch}:%{v8_version}
+%else
+# 32-bits
+Provides: libv8.so.%{v8_major} = %{v8_epoch}:%{v8_version}
+Provides: libv8_libbase.so.%{v8_major} = %{v8_epoch}:%{v8_version}
+Provides: libv8_libplatform.so.%{v8_major} = %{v8_epoch}:%{v8_version}
+%endif
+
+Provides: v8 = %{v8_epoch}:%{v8_version}-%{nodejs_release}
+Provides: v8%{?_isa} = %{v8_epoch}:%{v8_version}-%{nodejs_release}
+Obsoletes: v8 < 1:6.7.17-10
+
+Provides: nodejs-libs = %{nodejs_envr}
+
+%description -n %{pkgname}-libs
+Libraries to support Node.js and provide stable v8 interfaces.
+
+
+%package -n %{pkgname}-full-i18n
+Summary: Non-English locale data for Node.js
+Requires: %{pkgname}%{?_isa} = %{nodejs_envr}
+
+
+%description -n %{pkgname}-full-i18n
+Optional data files to provide full-icu support for Node.js. Remove this
+package to save space if non-English locales are not needed.
+
+
+%package -n v8-%{v8_major}.%{v8_minor}-devel
+Summary: v8 - development headers
+Epoch: %{v8_epoch}
+Version: %{v8_version}
+Release: %{v8_release}
+Requires: %{pkgname}-devel%{?_isa} = %{nodejs_envr}
+Requires: %{pkgname}-libs%{?_isa} = %{nodejs_envr}
+Provides: v8-devel = %{v8_epoch}:%{v8_version}-%{v8_release}
+
+Conflicts: v8-devel
+Conflicts: v8-314-devel
+
+
+%description -n v8-%{v8_major}.%{v8_minor}-devel
+Development headers for the v8 runtime.
+
+
+%package -n %{pkgname}-npm
+Summary: Node.js Package Manager
+Epoch: %{npm_epoch}
+Version: %{npm_version}
+Release: %{npm_release}
+
+# If we're using the companion NPM build, make sure to keep it in lock-step
+# with the Node version.
+Requires: %{pkgname} = %{nodejs_envr}
+%if 0%{?fedora} || 0%{?rhel} >= 8
+Recommends: %{pkgname}-docs = %{nodejs_envr}
+%endif
+
+# Do not add epoch to the virtual NPM provides or it will break
+# the automatic dependency-generation script.
+Provides: npm(npm) = %{npm_version}
+
+# Satisfy dependency requests for "npm"
+Provides: npm = %{npm_envr}
+
+# Obsolete the old 'npm' package
+Obsoletes: npm < %{npm_obsoletes}
+
+
+%description -n %{pkgname}-npm
+npm is a package manager for node.js. You can use it to install and publish
+your node programs. It manages dependencies and does other cool stuff.
+
+
+%package -n %{pkgname}-docs
+Summary: Node.js API documentation
+Group: Documentation
+BuildArch: noarch
+Requires(meta): %{pkgname} = %{nodejs_envr}
+
+Provides: nodejs-docs = %{nodejs_envr}
+
+
+%description -n %{pkgname}-docs
+The API documentation for the Node.js JavaScript runtime.
+
+
+%prep
+%autosetup -p1 -n node-v%{nodejs_version}
+
+# remove bundled dependencies that we aren't building
+%if !%{with bundled_zlib}
+rm -rf deps/zlib
+%endif
+
+rm -rf deps/brotli
+rm -rf deps/v8/third_party/jinja2
+rm -rf tools/inspector_protocol/jinja2
+
+# check for correct versions of dependencies we are bundling
+check_wasm_dep() {
+ local -r name="$1" source="$2" packagejson="$3"
+ local -r expected_version="$(jq -r '.version' "${packagejson}")"
+
+ if ls "${source}"|grep -q --fixed-strings "${expected_version}"; then
+ printf '%s version matches\n' "${name}" >&2
+ else
+ printf '%s version MISMATCH: %s !~ %s\n' "${name}" "${expected_version}" "${source}" >&2
+ return 1
+ fi
+}
+
+check_wasm_dep cjs-module-lexer '%{SOURCE101}' deps/cjs-module-lexer/package.json
+check_wasm_dep undici '%{SOURCE111}' deps/undici/src/package.json
+
+# Replace any instances of unversioned python with python3
+pfiles=( $(grep -rl python) )
+%py3_shebang_fix ${pfiles[@]}
+
+
+%build
+
+# Activate DevToolset 11 on EPEL 7
+%if 0%{?rhel} && 0%{?rhel} < 8
+. /opt/rh/devtoolset-11/enable
+%endif
+
+# When compiled on armv7hl this package generates an out of range
+# reference to the literal pool. This is most likely a GCC issue.
+%ifarch armv7hl
+%define _lto_cflags %{nil}
+%endif
+
+# Decrease debuginfo verbosity to reduce memory consumption during final
+# library linking
+%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
+
+export CC='%{__cc}'
+export CXX='%{__cxx}'
+export NODE_GYP_FORCE_PYTHON=%{python3}
+
+# build with debugging symbols and add defines from libuv (#892601)
+# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
+# NULL objects. We need to pass -fno-delete-null-pointer-checks
+# 2022-07-14: There's a bug in either torque or gcc that causes a
+# segmentation fault on ppc64le and s390x if compiled with -O2. Things
+# run fine on -O1 and -O3, so we'll just go with -O3 (like upstream)
+# while this gets sorted out.
+extra_cflags=(
+ -D_LARGEFILE_SOURCE
+ -D_FILE_OFFSET_BITS=64
+ -DZLIB_CONST
+ -fno-delete-null-pointer-checks
+ -O3
+)
+export CFLAGS="%{optflags} ${extra_cflags[*]}" CXXFLAGS="%{optflags} ${extra_cflags[*]}"
+export LDFLAGS="%{build_ldflags}"
+
+# Fake up the unversioned python executable because gyp calls it from the PATH
+mkdir .bin
+cwd=$(pwd)
+ln -srf /usr/bin/python3 ./.bin/python
+export PATH="${cwd}/.bin:$PATH"
+
+%{python3} configure.py \
+ --verbose \
+ --ninja \
+ --enable-lto \
+ --prefix=%{_prefix} \
+ --shared \
+ --libdir=%{_lib} \
+ %{ssl_configure} \
+ %{!?with_bundled_zlib:--shared-zlib} \
+ --shared-brotli \
+ %{!?with_bundled:--shared-libuv} \
+ %{?with_bundled:--without-dtrace}%{!?with_bundled:--with-dtrace} \
+ --with-intl=small-icu \
+ --with-icu-default-data-dir=%{icudatadir} \
+ --without-corepack \
+ --openssl-use-def-ca-store
+
+%ninja_build -C out/Release
+
+
+%install
+
+# The ninja build does not put the shared library in the expected location, so
+# we will move it.
+mv out/Release/lib/libnode.so.%{nodejs_soversion} out/Release/
+./tools/install.py install %{buildroot} %{_prefix}
+
+
+# own the sitelib directory
+mv %{buildroot}%{nodejs_sitelib} \
+ %{buildroot}%{nodejs_private_sitelib}
+
+%if 0%{?nodejs_default}
+ln -srf %{buildroot}%{nodejs_private_sitelib} \
+ %{buildroot}%{nodejs_sitelib}
+%endif
+
+
+# Set the binary permissions properly
+chmod 0755 %{buildroot}/%{_bindir}/node
+chrpath --delete %{buildroot}%{_bindir}/node
+
+# Rename the node binary
+mv %{buildroot}%{_bindir}/node %{buildroot}%{_bindir}/node-%{nodejs_major}
+
+# Move the npm binary to npm-NODEJS_MAJOR
+rm -f %{buildroot}%{_bindir}/npm
+
+ln -srf %{buildroot}%{nodejs_private_sitelib}/npm/bin/npm-cli.js \
+ %{buildroot}%{_bindir}/npm-%{nodejs_major}
+
+# Move the npx binary to npm-NODEJS_MAJOR
+rm -f %{buildroot}%{_bindir}/npx
+
+ln -srf %{buildroot}%{nodejs_private_sitelib}/npm/bin/npx-cli.js \
+ %{buildroot}%{_bindir}/npx-%{nodejs_major}
+
+# Add the symlinks back for the default version
+%if 0%{?nodejs_default}
+ln -srf %{buildroot}%{_bindir}/node-%{nodejs_major} \
+ %{buildroot}%{_bindir}/node
+
+ln -srf %{buildroot}%{_bindir}/npm-%{nodejs_major} \
+ %{buildroot}%{_bindir}/npm
+
+ln -srf %{buildroot}%{_bindir}/npx-%{nodejs_major} \
+ %{buildroot}%{_bindir}/npx
+%endif
+
+# Install library symlink
+ln -srf %{buildroot}%{_libdir}/libnode.so.%{nodejs_soversion} \
+ %{buildroot}%{_libdir}/libnode.so
+
+# Install v8 compatibility symlinks
+for header in %{buildroot}%{_includedir}/node/libplatform %{buildroot}%{_includedir}/node/v8*.h; do
+ header=$(basename ${header})
+ ln -srf ./node/${header} %{buildroot}%{_includedir}/${header}
+done
+ln -s ./node/cppgc %{buildroot}%{_includedir}/cppgc
+for soname in libv8 libv8_libbase libv8_libplatform; do
+ ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so
+ ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
+done
+
+# Remove tracing for non-default versions
+%if ! 0%{?nodejs_default}
+rm -rf %{buildroot}%{_usr}/lib/dtrace \
+ %{buildroot}%{_datadir}/systemtap/tapset/node.stp
+%endif
+
+# install documentation
+mkdir -p %{buildroot}%{_pkgdocdir}/html
+cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
+rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
+
+# node-gyp needs common.gypi too
+mkdir -p %{buildroot}%{nodejs_datadir}
+cp -p common.gypi %{buildroot}%{nodejs_datadir}
+
+# The config.gypi file is platform-dependent, so rename it to not conflict
+mv %{buildroot}%{_includedir}/node/config.gypi \
+ %{buildroot}%{_includedir}/node/config-%{_arch}.gypi
+
+# Install the GDB init tool into the documentation directory
+mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
+
+mkdir -p %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man1 \
+ %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man5 \
+ %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man7 \
+ %{buildroot}%{nodejs_sitelib}/npm/man \
+ %{buildroot}%{nodejs_private_sitelib}/npm/man \
+ %{buildroot}%{_pkgdocdir}/npm
+
+# install manpage docs to mandir
+cp -pr deps/npm/man/* \
+ %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/
+rm -rf %{buildroot}%{nodejs_private_sitelib}/npm/man
+ln -srf %{buildroot}%{_mandir}/nodejs-%{nodejs_major} \
+ %{buildroot}%{nodejs_private_sitelib}/npm/man
+
+%if 0%{?nodejs_default}
+for i in 1 5 7; do
+ mkdir -p %{buildroot}%{_mandir}/man${i}
+ for manpage in %{buildroot}%{nodejs_private_sitelib}/npm/man/man$i/*; do
+ basename=$(basename ${manpage})
+ ln -srf %{buildroot}%{nodejs_private_sitelib}/npm/man/man${i}/${manpage} \
+ %{buildroot}%{_mandir}/man${i}/${basename}
+ done
+done
+%endif
+
+# Install the node interpreter manpage
+mv %{buildroot}%{_mandir}/man1/node.1 \
+ %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man1/
+
+%if 0%{?nodejs_default}
+ln -srf %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man1/node.1 \
+ %{buildroot}%{_mandir}/man1/
+%endif
+
+# Install Gatsby HTML documentation to %%{_pkgdocdir}
+cp -pr deps/npm/docs %{buildroot}%{_pkgdocdir}/npm/
+rm -rf %{buildroot}%{nodejs_private_sitelib}/npm/docs
+ln -srf %{buildroot}%{_pkgdocdir}/npm %{buildroot}%{nodejs_private_sitelib}/npm/docs
+
+# Node tries to install some python files into a documentation directory
+# (and not the proper one). Remove them for now until we figure out what to
+# do with them.
+rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
+ %{buildroot}/%{_defaultdocdir}/node/lldbinit
+
+# Some NPM bundled deps are executable but should not be. This causes
+# unnecessary automatic dependencies to be added. Make them not executable.
+# Skip the npm bin directory or the npm binary will not work.
+find %{buildroot}%{nodejs_private_sitelib}/npm \
+ -not -path "%{buildroot}%{nodejs_private_sitelib}/npm/bin/*" \
+ -executable -type f \
+ -exec chmod -x {} ;
+
+# The above command is a little overzealous. Add a few permissions back.
+chmod 0755 %{buildroot}%{nodejs_private_sitelib}/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp
+chmod 0755 %{buildroot}%{nodejs_private_sitelib}/npm/node_modules/node-gyp/bin/node-gyp.js
+
+# Drop the NPM default configuration in place
+%if 0%{?nodejs_default}
+mkdir -p %{buildroot}%{_sysconfdir}
+cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
+
+# NPM upstream expects it to be in /usr/etc/npmrc, so we'll put a symlink here
+# This is done in the interests of keeping /usr read-only.
+mkdir -p %{buildroot}%{_prefix}/etc
+ln -rsf %{buildroot}%{_sysconfdir}/npmrc \
+ %{buildroot}%{_prefix}/etc/npmrc
+%endif
+
+# Install the full-icu data files
+mkdir -p %{buildroot}%{icudatadir}
+%if 0%{?little_endian}
+unzip -d %{buildroot}%{icudatadir} %{SOURCE4} icudt%{icu_major}l.dat
+%else
+unzip -d %{buildroot}%{icudatadir} %{SOURCE3} icudt%{icu_major}b.dat
+%endif
+
+
+%check
+# Fail the build if the versions don't match
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} -e "require('assert').equal(process.versions.v8.replace(/-node.\d+$/, ''), '%{v8_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
+
+# Ensure we have punycode and that the version matches
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
+
+# Ensure we have npm and that the version matches
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}%{_bindir}/node-%{nodejs_major} %{buildroot}%{_bindir}/npm-%{nodejs_major} version --json |jq -e '.npm == "%{npm_version}"'
+
+# Make sure i18n support is working
+NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{nodejs_private_sitelib}/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
+
+
+%if 0%{?rhel} && 0%{?rhel} < 8
+%pretrans %{pkgname}-npm -p <lua>
+-- Remove all of the symlinks from the bundled npm node_modules directory
+base_path = "%{_prefix}/lib/node_modules/npm/node_modules/"
+d_st = posix.stat(base_path)
+if d_st then
+ for f in posix.files(base_path) do
+ path = base_path..f
+ st = posix.stat(path)
+ if st and st.type == "link" then
+ os.remove(path)
+ end
+ end
+end
+%endif
+
+# This can be removed once F37 is EOL
+%pretrans -n %{pkgname} -p <lua>
+path = "/usr/lib/node_modules"
+st = posix.stat(path)
+if st and st.type == "directory" then
+ status = os.rename(path, path .. ".rpmmoved")
+ if not status then
+ suffix = 0
+ while not status do
+ suffix = suffix + 1
+ status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
+ end
+ os.rename(path, path .. ".rpmmoved")
+ end
+end
+
+
+%files -n %{pkgname}
+%doc AUTHORS CHANGELOG.md onboarding.md GOVERNANCE.md README.md
+
+%if 0%{?nodejs_default}
+%{_bindir}/node
+%doc %{_mandir}/man1/node.1*
+%dir %{_datadir}/systemtap
+%dir %{_datadir}/systemtap/tapset
+%{nodejs_sitelib}
+%{_datadir}/systemtap/tapset/node.stp
+%if %{without bundled}
+%dir %{_usr}/lib/dtrace
+%{_usr}/lib/dtrace/node.d
+%endif
+%endif
+
+%{_bindir}/node-%{nodejs_major}
+%{nodejs_private_sitelib}
+
+%doc %{_mandir}/nodejs-%{nodejs_major}/man1/node.1*
+
+
+%files -n %{pkgname}-devel
+%{_includedir}/node
+%{_libdir}/libnode.so
+%{nodejs_datadir}/common.gypi
+%{_pkgdocdir}/gdbinit
+
+
+%files -n %{pkgname}-full-i18n
+%dir %{icudatadir}
+%{icudatadir}/icudt%{icu_major}*.dat
+
+
+%files -n %{pkgname}-libs
+%license LICENSE
+%{_libdir}/libnode.so.%{nodejs_soversion}
+%{_libdir}/libv8.so.%{v8_major}
+%{_libdir}/libv8_libbase.so.%{v8_major}
+%{_libdir}/libv8_libplatform.so.%{v8_major}
+%dir %{nodejs_datadir}/
+
+
+%files -n v8-%{v8_major}.%{v8_minor}-devel
+%{_includedir}/libplatform
+%{_includedir}/v8*.h
+%{_includedir}/cppgc
+%{_libdir}/libv8.so
+%{_libdir}/libv8_libbase.so
+%{_libdir}/libv8_libplatform.so
+
+
+%files -n %{pkgname}-npm
+%if 0%{?nodejs_default}
+%{_bindir}/npm
+%{_bindir}/npx
+%{_prefix}/etc/npmrc
+%config(noreplace) %{_sysconfdir}/npmrc
+%ghost %{_sysconfdir}/npmignore
+
+%doc %{_mandir}/man*/
+%exclude %doc %{_mandir}/man1/node.1*
+%endif
+
+%{_bindir}/npm-%{nodejs_major}
+%{_bindir}/npx-%{nodejs_major}
+%{nodejs_private_sitelib}/npm
+
+%doc %{_mandir}/nodejs-%{nodejs_major}/
+%exclude %doc %{_mandir}/nodejs-%{nodejs_major}/man1/node.1*
+
+
+%files -n %{pkgname}-docs
+%doc doc
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
+%{_pkgdocdir}/npm/docs
+
+
+%changelog
+%autochangelog
commit c2526cc51113283d923dbc7e757f6b9296b8ff41
Author: Fedora Release Engineering releng@fedoraproject.org
Date: Thu Jan 19 21:42:59 2023 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering releng@fedoraproject.org
commit 679308e6170f321ab8f5ddbd7014cb896356e0a1
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 16 11:29:46 2023 -0500
Update to 18.13.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index ce6d590..842a5b8 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,7 +1,7 @@
-From c30f7d6e470a9ef8eafb10b2997889231180754e Mon Sep 17 00:00:00 2001
+From f850686d1442e6c4f409f8e24ef461e29710277b Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH 1/2] Disable running gyp on shared deps
+Subject: [PATCH] Disable running gyp on shared deps
Signed-off-by: rpm-build <rpm-build>
---
@@ -10,10 +10,10 @@ Signed-off-by: rpm-build <rpm-build>
2 files changed, 1 insertion(+), 18 deletions(-)
diff --git a/Makefile b/Makefile
-index 9c01f8f244ee1904f223d01e31ecfeffc03ea191..133a3d0fcbd22c2dde85a092f84708ddabf8b5f3 100644
+index 05fdc1509844ad616e1ae1490bb0f244627fcda9..46816fe1bc7108bd4f0abd6277b2a4f9b4283f95 100644
--- a/Makefile
+++ b/Makefile
-@@ -148,7 +148,7 @@ with-code-cache test-code-cache:
+@@ -169,7 +169,7 @@ with-code-cache test-code-cache:
$(warning '$@' target is a noop)
out/Makefile: config.gypi common.gypi node.gyp \
@@ -23,10 +23,10 @@ index 9c01f8f244ee1904f223d01e31ecfeffc03ea191..133a3d0fcbd22c2dde85a092f84708dd
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
diff --git a/node.gyp b/node.gyp
-index 347d82d2e1e100227e750934532dce29775f1fdf..2419dc739ea0b1d7efaf5096f86383def4162e3c 100644
+index 1885a8d1ecb983fe8fd1ce3cc8cd53ee48e241d2..917eeb73d20791625e71b3e921b2fa9a68fd6133 100644
--- a/node.gyp
+++ b/node.gyp
-@@ -429,23 +429,6 @@
+@@ -428,23 +428,6 @@
],
},
],
@@ -41,7 +41,7 @@ index 347d82d2e1e100227e750934532dce29775f1fdf..2419dc739ea0b1d7efaf5096f86383de
- 'inputs': [ '<(opensslconfig)', ],
- 'outputs': [ '<(opensslconfig_internal)', ],
- 'action': [
-- 'python', 'tools/copyfile.py',
+- '<(python)', 'tools/copyfile.py',
- '<(opensslconfig)',
- '<(opensslconfig_internal)',
- ],
@@ -51,5 +51,5 @@ index 347d82d2e1e100227e750934532dce29775f1fdf..2419dc739ea0b1d7efaf5096f86383de
],
}, # node_core_target_name
--
-2.37.3
+2.39.0
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index 019e611..d7d766a 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -122,6 +122,9 @@ NODE_MAJOR=$(echo $version | cut -d. -f1)
rm -rf node-v${version}.tar.gz \
node-v${version}-stripped.tar.gz \
node-v${version}/ \
+ wasi-sdk-* \
+ cjs-module-lexer* \
+ undici* \
SHASUMS256.txt
wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz \
http://nodejs.org/dist/v$%7Bversion%7D/SHASUMS256.txt
@@ -134,15 +137,49 @@ tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
+set -x
+# Download the cjs-module-lexer sources
+LEXER_VERSION=$(jq -r '.version' node-v${version}/deps/cjs-module-lexer/package.json)
+wget https://github.com/nodejs/cjs-module-lexer/archive/refs/tags/$%7BLEXER_VERSI...
+tar -zxf ${LEXER_VERSION}.tar.gz
+rm -f cjs-module-lexer-${LEXER_VERSION}/lib/lexer.wasm
+tar -zcf cjs-module-lexer-${LEXER_VERSION}-stripped.tar.gz cjs-module-lexer-${LEXER_VERSION}/
+rm -f ${LEXER_VERSION}.tar.gz
+
+# Download the WASI compiler used to build cjs-module-lexer
+LEXER_WASI_MAJOR=$(grep -oP '(?<=^\W../wasi-sdk-)\d+.\d+' cjs-module-lexer-${LEXER_VERSION}/Makefile | cut -d'.' -f1)
+LEXER_WASI_MINOR=$(grep -oP '(?<=^\W../wasi-sdk-)\d+.\d+' cjs-module-lexer-${LEXER_VERSION}/Makefile | cut -d'.' -f2)
+wget https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-$%7BLEXER...
+
+# Download the undici sources
+UNDICI_VERSION=$(jq -r '.version' node-v${version}/deps/undici/src/package.json)
+wget https://github.com/nodejs/undici/archive/refs/tags/v$%7BUNDICI_VERSION%7D.ta...
+tar -zxf v${UNDICI_VERSION}.tar.gz
+rm -f undici-${UNDICI_VERSION}/lib/llhttp/llhttp*.wasm*
+tar -zcf undici-${UNDICI_VERSION}-stripped.tar.gz undici-${UNDICI_VERSION}/
+rm -f v${UNDICI_VERSION}.tar.gz
+
+# Download the WASI compiler used to build undici
+UNDICI_WASI_MAJOR=$(grep -oP '(?<=WASI_SDK_VERSION_MAJOR=).*' undici-${UNDICI_VERSION}/build/Dockerfile)
+UNDICI_WASI_MINOR=$(grep -oP '(?<=WASI_SDK_VERSION_MINOR=).*' undici-${UNDICI_VERSION}/build/Dockerfile)
+wget https://github.com/WebAssembly/wasi-sdk/releases/download/wasi-sdk-$%7BUNDIC...
+
ICU_MAJOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
ICU_MINOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\2/g')
+set +x
+
# Download the ICU binary data files
rm -Rf icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
wget $(grep Source3 nodejs${NODE_MAJOR}.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
wget $(grep Source4 nodejs${NODE_MAJOR}.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
-fedpkg new-sources node-v${version}-stripped.tar.gz icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
+fedpkg new-sources node-v${version}-stripped.tar.gz \
+ icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip \
+ cjs-module-lexer-${LEXER_VERSION}-stripped.tar.gz \
+ wasi-sdk-${LEXER_WASI_MAJOR}.${LEXER_WASI_MINOR}-linux.tar.gz \
+ undici-${UNDICI_VERSION}-stripped.tar.gz \
+ wasi-sdk-${UNDICI_WASI_MAJOR}.${UNDICI_WASI_MINOR}-linux.tar.gz
rm -f node-v${version}.tar.gz
@@ -207,6 +244,16 @@ echo "zlib"
echo "========================="
grep "define ZLIB_VERSION" node-v${version}/deps/zlib/zlib.h
echo
+echo "cjs-module-lexer"
+echo "========================="
+echo "${LEXER_VERSION}"
+echo "WASI-SDK: ${LEXER_WASI_MAJOR}.${LEXER_WASI_MINOR}"
+echo
+echo "undici"
+echo "========================="
+echo "${UNDICI_VERSION}"
+echo "WASI-SDK: ${UNDICI_WASI_MAJOR}.${UNDICI_WASI_MINOR}"
+echo
echo "Make sure these versions match what is in the RPM spec file"
rm -rf node-v${version}
diff --git a/nodejs18.spec b/nodejs18.spec
index f06ea27..599de03 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -44,8 +44,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 12
-%global nodejs_patch 1
+%global nodejs_minor 13
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 108
@@ -70,12 +70,12 @@
%global v8_major 10
%global v8_minor 2
%global v8_build 154
-%global v8_patch 15
+%global v8_patch 23
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
# zlib - from deps/zlib/zlib.h
-%global zlib_version 1.2.11
+%global zlib_version 1.2.13
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
@@ -85,13 +85,13 @@
%global llhttp_version 6.0.10
# libuv - from deps/uv/include/uv/version.h
-%global libuv_version 1.43.0
+%global libuv_version 1.44.2
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
-%global nghttp2_version 1.47.0
+%global nghttp2_version 1.51.0
# ICU - from tools/icu/current_ver.dep
-%global icu_major 71
+%global icu_major 72
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
@@ -111,7 +111,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.19.2
+%global npm_version 8.19.3
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -159,18 +159,22 @@ Source100: nodejs-sources.sh
# Version: jq '.version' deps/cjs-module-lexer/package.json
# Original: https://github.com/nodejs/cjs-module-lexer/archive/refs/tags/1.2.2.tar.gz
# Adjustments: rm -f cjs-module-lexer-1.2.2/lib/lexer.wasm
-Source101: cjs-module-lexer-1.2.2.tar.gz
+# This is generated by nodejs-sources.sh
+Source101: cjs-module-lexer-1.2.2-stripped.tar.gz
# The WASM blob was made using wasi-sdk v11; compiler libraries are linked in.
# Version source: Makefile
-Source102: https://github.com/WebAssembly/wasi-sdk/archive/wasi-sdk-11/wasi-sdk-wasi-sd...
+# This is generated by nodejs-sources.sh
+Source102: wasi-sdk-11.0-linux.tar.gz
# Version: jq '.version' deps/undici/src/package.json
# Original: https://github.com/nodejs/undici/archive/refs/tags/v5.11.0.tar.gz
# Adjustments: rm -f undici-5.11.0/lib/llhttp/llhttp*.wasm*
-Source111: undici-5.11.0.tar.gz
+# This is generated by nodejs-sources.sh
+Source111: undici-5.13.0-stripped.tar.gz
# The WASM blob was made using wasi-sdk v14; compiler libraries are linked in.
# Version source: build/Dockerfile
-Source112: https://github.com/WebAssembly/wasi-sdk/archive/wasi-sdk-14/wasi-sdk-wasi-sd...
+# This is generated by nodejs-sources.sh
+Source112: wasi-sdk-14.0-linux.tar.gz
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
diff --git a/sources b/sources
index 6c210b8..7b29603 100644
--- a/sources
+++ b/sources
@@ -1,7 +1,7 @@
-SHA512 (node-v18.12.1-stripped.tar.gz) = f9712452fa9eda5a8dcd6fa62b2e94b6c65f89e3b005bb52455d33d30d881584829813e134af9a48faf55e73bd33ec2362f2ada96de378b70ffff2104d8de9da
-SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
-SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
-SHA512 (undici-5.11.0.tar.gz) = 28d13caae0d6fe31136e8ae74e8feb82aadeada01603b1c99d39d97183d5ed2d4594b985150d8e986259081d3dd2a467e47a6d2eb0da185df93376fee114e26a
-SHA512 (cjs-module-lexer-1.2.2.tar.gz) = 2c8e9caf2231ca7d61e71936305389774859aca9b5c86c63489c9a62a81f4736f99477c3f0cbb41077bb7924fdd23e0f24b7bce858e42fb0f87e7c0ffc87afeb
-SHA512 (wasi-sdk-wasi-sdk-11.tar.gz) = cb37f357b09431a3efad26141d83dce63232a35b536d9a7bd341d4d9627a0a3d4bd4d57504b6e3dab421942d2c168a96da2a6be889aab3f9a2852fc5a3200d3c
-SHA512 (wasi-sdk-wasi-sdk-14.tar.gz) = 4fecb3d9c04b91eb2388a9e51d49fbff6f22b81f9945a07ecdbfe479c96dad1e3b673b8bee24842b0dae5294129a9cb35dcf8e5ecf45437a6d01fb6e0fd13645
+SHA512 (node-v18.13.0-stripped.tar.gz) = 1f634aaf11902cd9462d8192bf538e2269d1935e0a5fc933a6aeef2eec04c8db1577cb2ee7f8bac9592585912164664b9731bfb4f9687cb5d929f92ba3565c0a
+SHA512 (icu4c-72_1-data-bin-b.zip) = ed0ce3ebd02f81cca7b3808abc72dc99962eb36bd123ebdf45c578b307b674566491191b6f7d261c679b2b5662b7084c61452b98968b35df3f749d413d5d7663
+SHA512 (icu4c-72_1-data-bin-l.zip) = cc9a8cf2a89dacde4fab4a68ca7a7ba1fd106b71ebc23318fb9293ab96001be825bf89b1daf3da02958ba201ca4f714a67a26db3a51dc03653b9970ebdd5ff56
+SHA512 (cjs-module-lexer-1.2.2-stripped.tar.gz) = e49c8f1a206dcf7c7b740e9ca4998e5d9b74d0016a701ddb0ea02e4f21eec763c58bf0c91dea4167401f604721027100d39d7c5c2b85025bb687c83c33c9728f
+SHA512 (wasi-sdk-11.0-linux.tar.gz) = e3ed4597f7f2290967eef6238e9046f60abbcb8633a4a2a51525d00e7393df8df637a98a5b668217d332dd44fcbf2442ec7efd5e65724e888d90611164451e20
+SHA512 (undici-5.13.0-stripped.tar.gz) = ee10bec72ac61bed8de8fff49fc13a8d4c7796594ef4409c06b28d9331fa9656f282c79e143e43a4534df0409d7354ce09b2c7314664837dacb0a8b1cba80e64
+SHA512 (wasi-sdk-14.0-linux.tar.gz) = 288a367e051f5b3f5853de97fabaedd3acf2255819d50c24f48f573897518500ea808342fd9aea832b2a5717089807bf1cbcf6d46b156b4eb60cc6b3c02ee997
commit 35ce6bd08e991992856ac3e4ba8560d1edc7bd7d
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Dec 13 14:26:58 2022 -0500
Disable gating for now
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/gating.yaml b/gating.yaml
deleted file mode 100644
index 9011d43..0000000
--- a/gating.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
---- !Policy
-product_versions:
- - fedora-*
-decision_context: bodhi_update_push_testing
-subject_type: koji_build
-rules:
- - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional}
- - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional}
-
---- !Policy
-product_versions:
- - fedora-*
-decision_context: bodhi_update_push_stable
-subject_type: koji_build
-rules:
- - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional}
- - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional}
-
commit 2851ac84ca5c8461f22ce11e14fcc24dc325d88f
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Dec 1 13:12:07 2022 -0500
Use requires instead of conflicts for -docs
Conflicts causes issues with parallel-installation of non-default
Node.js versions.
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs18.spec b/nodejs18.spec
index af795dc..f06ea27 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -441,12 +441,7 @@ your node programs. It manages dependencies and does other cool stuff.
Summary: Node.js API documentation
Group: Documentation
BuildArch: noarch
-
-# We don't require that the main package be installed to
-# use the docs, but if it is installed, make sure the
-# version always matches
-Conflicts: %{pkgname} > %{nodejs_envr}
-Conflicts: %{pkgname} < %{nodejs_envr}
+Requires(meta): %{pkgname} = %{nodejs_envr}
Provides: nodejs-docs = %{nodejs_envr}
commit e518e262b3bf55300852cfde646bc5c644f35d46
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Nov 30 15:46:12 2022 -0500
Add pretrans scriptlet for node_modules
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs18.spec b/nodejs18.spec
index f2c0bb4..af795dc 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -733,7 +733,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{nodejs_private_s
%if 0%{?rhel} && 0%{?rhel} < 8
-%pretrans npm -p <lua>
+%pretrans %{pkgname}-npm -p <lua>
-- Remove all of the symlinks from the bundled npm node_modules directory
base_path = "%{_prefix}/lib/node_modules/npm/node_modules/"
d_st = posix.stat(base_path)
@@ -748,6 +748,22 @@ if d_st then
end
%endif
+# This can be removed once F37 is EOL
+%pretrans -n %{pkgname} -p <lua>
+path = "/usr/lib/node_modules"
+st = posix.stat(path)
+if st and st.type == "directory" then
+ status = os.rename(path, path .. ".rpmmoved")
+ if not status then
+ suffix = 0
+ while not status do
+ suffix = suffix + 1
+ status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
+ end
+ os.rename(path, path .. ".rpmmoved")
+ end
+end
+
%files -n %{pkgname}
%doc AUTHORS CHANGELOG.md onboarding.md GOVERNANCE.md README.md
commit cc73e226d4498fb8a28f2121b9a4a2c6d2b7b1eb
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Nov 30 13:27:47 2022 -0500
Add proper npm obsoletes
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs18.spec b/nodejs18.spec
index 1a48752..f2c0bb4 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -121,6 +121,8 @@
%global npm_envr %{npm_epoch}:%{npm_version}-%{npm_release}
+%global npm_obsoletes 1:8.19.2-1.18.12.1.3
+
# uvwasi - from deps/uvwasi/include/uvwasi.h
%global uvwasi_version 0.0.13
@@ -426,6 +428,9 @@ Provides: npm(npm) = %{npm_version}
# Satisfy dependency requests for "npm"
Provides: npm = %{npm_envr}
+# Obsolete the old 'npm' package
+Obsoletes: npm < %{npm_obsoletes}
+
%description -n %{pkgname}-npm
npm is a package manager for node.js. You can use it to install and publish
commit 592c8cae2579afcc2bdc6c46296d2c1082bc0450
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Nov 30 11:24:49 2022 -0500
Drop redundant default definition
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs18.spec b/nodejs18.spec
index 7801b20..1a48752 100644
--- a/nodejs18.spec
+++ b/nodejs18.spec
@@ -128,13 +128,6 @@
%global histogram_version 0.9.7
-%if 0%{?nodejs_default}
-%global pkgname nodejs
-%else
-%global pkgname nodejs%{nodejs_major}
-%endif
-
-
Name: nodejs%{nodejs_major}
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
commit ee9d5d135cb0cb2ed88dfe8d84b8af3272cc0c31
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Aug 5 14:45:55 2022 -0400
Enable parallel-installation
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index 211a880..019e611 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -114,9 +114,11 @@ echo $_arg_version
if [ x$_arg_version != x ]; then
version=$_arg_version
else
- version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
+ version=$(rpm -q --specfile --qf='%{version}\n' nodejs*.spec | head -n1)
fi
+NODE_MAJOR=$(echo $version | cut -d. -f1)
+
rm -rf node-v${version}.tar.gz \
node-v${version}-stripped.tar.gz \
node-v${version}/ \
@@ -137,8 +139,8 @@ ICU_MINOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --
# Download the ICU binary data files
rm -Rf icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
-wget $(grep Source3 nodejs.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
-wget $(grep Source4 nodejs.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
+wget $(grep Source3 nodejs${NODE_MAJOR}.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
+wget $(grep Source4 nodejs${NODE_MAJOR}.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
fedpkg new-sources node-v${version}-stripped.tar.gz icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
diff --git a/nodejs.spec b/nodejs18.spec
similarity index 72%
rename from nodejs.spec
rename to nodejs18.spec
index 3972bc4..7801b20 100644
--- a/nodejs.spec
+++ b/nodejs18.spec
@@ -22,8 +22,6 @@
%bcond_with bundled_zlib
%endif
-%bcond npm 1
-
# LTO is currently broken on Node.js builds
%define _lto_cflags %{nil}
@@ -53,13 +51,22 @@
%global nodejs_soversion 108
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release %{baserelease}
+%global nodejs_envr %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
+
+%global nodejs_datadir %{_datarootdir}/node-%{nodejs_major}
+
+# Determine if this should be the default version for this Fedora release
+# The default version will own /usr/bin/node and friends
+%if 0%{?fedora} == 37 || 0%{?fedora} == 38
+%global nodejs_default %{nodejs_major}
+%endif
+%global nodejs_private_sitelib %{nodejs_sitelib}_%{nodejs_major}
-%global nodejs_datadir %{_datarootdir}/nodejs
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
# Epoch is set to ensure clean upgrades from the old v8 package
-%global v8_epoch 2
+%global v8_epoch 3
%global v8_major 10
%global v8_minor 2
%global v8_build 154
@@ -112,13 +119,23 @@
# base npm version number is increasing.
%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
+%global npm_envr %{npm_epoch}:%{npm_version}-%{npm_release}
+
# uvwasi - from deps/uvwasi/include/uvwasi.h
%global uvwasi_version 0.0.13
# histogram_c - assumed from timestamps
%global histogram_version 0.9.7
-Name: nodejs
+
+%if 0%{?nodejs_default}
+%global pkgname nodejs
+%else
+%global pkgname nodejs%{nodejs_major}
+%endif
+
+
+Name: nodejs%{nodejs_major}
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
Release: %{nodejs_release}
@@ -163,11 +180,19 @@ Source112: https://github.com/WebAssembly/wasi-sdk/archive/wasi-sdk-14/wasi-sdk-
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
+%if 0%{?nodejs_default}
+%global pkgname nodejs
+%package -n %{pkgname}
+Summary: JavaScript runtime
+%else
+%global pkgname nodejs%{nodejs_major}
+%endif
+
BuildRequires: make
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-setuptools
BuildRequires: python%{python3_pkgversion}-jinja2
-%if 0%{?fedora} || 0%{?rhel} >= 9
+%if 0%{?rhel} && 0%{?rhel} < 9
BuildRequires: python-unversioned-command
%endif
%if %{with bundled_zlib}
@@ -186,12 +211,10 @@ BuildRequires: gcc-c++ >= 8.3.0
BuildRequires: jq
-%if %{with npm}
# needed to generate bundled provides for npm dependencies
# https://src.fedoraproject.org/rpms/nodejs/pull-request/2
# https://pagure.io/nodejs-packaging/pull-request/10
BuildRequires: nodejs-packaging
-%endif
BuildRequires: chrpath
BuildRequires: libatomic
@@ -199,6 +222,8 @@ BuildRequires: ninja-build
BuildRequires: systemtap-sdt-devel
BuildRequires: unzip
+Provides: nodejs = %{nodejs_envr}
+
%if %{with bundled}
Provides: bundled(libuv) = %{libuv_version}
%else
@@ -237,11 +262,13 @@ BuildRequires: openssl-devel >= %{openssl11_minimum}
# we need the system certificate store
Requires: ca-certificates
-Requires: nodejs-libs%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
+Requires: %{pkgname}-libs%{?_isa} = %{nodejs_envr}
-# Pull in the full-icu data by default
%if 0%{?fedora} || 0%{?rhel} >= 8
-Recommends: nodejs-full-i18n%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
+# Pull in the docs and full-icu data by default
+Recommends: %{pkgname}-docs = %{nodejs_envr}
+Recommends: %{pkgname}-full-i18n%{?_isa} = %{nodejs_envr}
+Recommends: %{pkgname}-npm >= %{npm_envr}
%endif
# we need ABI virtual provides where SONAMEs aren't enough/not present so deps
@@ -291,25 +318,30 @@ Provides: bundled(icu) = %{icu_version}
Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
-%if 0%{?fedora} || 0%{?rhel} >= 8
-Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}
-%endif
-Conflicts: npm < %{npm_epoch}:%{npm_version}-%{npm_release}
-
%description
-Node.js is a platform built on Chrome's JavaScript runtime
-for easily building fast, scalable network applications.
-Node.js uses an event-driven, non-blocking I/O model that
-makes it lightweight and efficient, perfect for data-intensive
-real-time applications that run across distributed devices.
+Node.js is a platform built on Chrome's JavaScript runtime \
+for easily building fast, scalable network applications. \
+Node.js uses an event-driven, non-blocking I/O model that \
+makes it lightweight and efficient, perfect for data-intensive \
+real-time applications that run across distributed devices.}
+
+
+%if 0%{?nodejs_default}
+%description -n %{pkgname}
+Node.js is a platform built on Chrome's JavaScript runtime \
+for easily building fast, scalable network applications. \
+Node.js uses an event-driven, non-blocking I/O model that \
+makes it lightweight and efficient, perfect for data-intensive \
+real-time applications that run across distributed devices.}
+%endif
-%package devel
+%package -n %{pkgname}-devel
Summary: JavaScript runtime - development headers
Group: Development/Languages
-Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}
-Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}
+Requires: %{pkgname}%{?_isa} = %{nodejs_envr}
+Requires: %{pkgname}-libs%{?_isa} = %{nodejs_envr}
Requires: openssl-devel%{?_isa}
%if !%{with bundled_zlib}
Requires: zlib-devel%{?_isa}
@@ -321,11 +353,15 @@ Requires: nodejs-packaging
Requires: libuv-devel%{?_isa}
%endif
-%description devel
+Provides: nodejs-devel = %{nodejs_envr}
+Conflicts: nodejs-devel
+
+
+%description -n %{pkgname}-devel
Development headers for the Node.js JavaScript runtime.
-%package libs
+%package -n %{pkgname}-libs
Summary: Node.js and v8 libraries
# Compatibility for obsolete v8 package
@@ -344,58 +380,66 @@ Provides: v8 = %{v8_epoch}:%{v8_version}-%{nodejs_release}
Provides: v8%{?_isa} = %{v8_epoch}:%{v8_version}-%{nodejs_release}
Obsoletes: v8 < 1:6.7.17-10
-%description libs
+Provides: nodejs-libs = %{nodejs_envr}
+
+%description -n %{pkgname}-libs
Libraries to support Node.js and provide stable v8 interfaces.
-%package full-i18n
+%package -n %{pkgname}-full-i18n
Summary: Non-English locale data for Node.js
-Requires: %{name}%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
+Requires: %{pkgname}%{?_isa} = %{nodejs_envr}
+
-%description full-i18n
+%description -n %{pkgname}-full-i18n
Optional data files to provide full-icu support for Node.js. Remove this
package to save space if non-English locales are not needed.
-%package -n v8-devel
+%package -n v8-%{v8_major}.%{v8_minor}-devel
Summary: v8 - development headers
Epoch: %{v8_epoch}
Version: %{v8_version}
Release: %{v8_release}
-Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
-Requires: %{name}-libs%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
+Requires: %{pkgname}-devel%{?_isa} = %{nodejs_envr}
+Requires: %{pkgname}-libs%{?_isa} = %{nodejs_envr}
+Provides: v8-devel = %{v8_epoch}:%{v8_version}-%{v8_release}
+
+Conflicts: v8-devel
Conflicts: v8-314-devel
-%description -n v8-devel
+
+%description -n v8-%{v8_major}.%{v8_minor}-devel
Development headers for the v8 runtime.
-%if %{with npm}
-%package -n npm
+
+%package -n %{pkgname}-npm
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
Release: %{npm_release}
-# We used to ship npm separately, but it is so tightly integrated with Node.js
-# (and expected to be present on all Node.js systems) that we ship it bundled
-# now.
-Obsoletes: npm < 0:3.5.4-6
-Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
+# If we're using the companion NPM build, make sure to keep it in lock-step
+# with the Node version.
+Requires: %{pkgname} = %{nodejs_envr}
%if 0%{?fedora} || 0%{?rhel} >= 8
-Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
+Recommends: %{pkgname}-docs = %{nodejs_envr}
%endif
# Do not add epoch to the virtual NPM provides or it will break
# the automatic dependency-generation script.
Provides: npm(npm) = %{npm_version}
-%description -n npm
+# Satisfy dependency requests for "npm"
+Provides: npm = %{npm_envr}
+
+
+%description -n %{pkgname}-npm
npm is a package manager for node.js. You can use it to install and publish
your node programs. It manages dependencies and does other cool stuff.
-%endif
-%package docs
+%package -n %{pkgname}-docs
Summary: Node.js API documentation
Group: Documentation
BuildArch: noarch
@@ -403,10 +447,13 @@ BuildArch: noarch
# We don't require that the main package be installed to
# use the docs, but if it is installed, make sure the
# version always matches
-Conflicts: %{name} > %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
-Conflicts: %{name} < %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
+Conflicts: %{pkgname} > %{nodejs_envr}
+Conflicts: %{pkgname} < %{nodejs_envr}
+
+Provides: nodejs-docs = %{nodejs_envr}
+
-%description docs
+%description -n %{pkgname}-docs
The API documentation for the Node.js JavaScript runtime.
@@ -481,7 +528,14 @@ extra_cflags=(
export CFLAGS="%{optflags} ${extra_cflags[*]}" CXXFLAGS="%{optflags} ${extra_cflags[*]}"
export LDFLAGS="%{build_ldflags}"
+# Fake up the unversioned python executable because gyp calls it from the PATH
+mkdir .bin
+cwd=$(pwd)
+ln -srf /usr/bin/python3 ./.bin/python
+export PATH="${cwd}/.bin:$PATH"
+
%{python3} configure.py \
+ --verbose \
--ninja \
--enable-lto \
--prefix=%{_prefix} \
@@ -495,31 +549,68 @@ export LDFLAGS="%{build_ldflags}"
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
--without-corepack \
- %{!?with_npm:--without-npm} \
--openssl-use-def-ca-store
%ninja_build -C out/Release
%install
-rm -rf %{buildroot}
# The ninja build does not put the shared library in the expected location, so
# we will move it.
mv out/Release/lib/libnode.so.%{nodejs_soversion} out/Release/
./tools/install.py install %{buildroot} %{_prefix}
+
+# own the sitelib directory
+mv %{buildroot}%{nodejs_sitelib} \
+ %{buildroot}%{nodejs_private_sitelib}
+
+%if 0%{?nodejs_default}
+ln -srf %{buildroot}%{nodejs_private_sitelib} \
+ %{buildroot}%{nodejs_sitelib}
+%endif
+
+
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
chrpath --delete %{buildroot}%{_bindir}/node
+# Rename the node binary
+mv %{buildroot}%{_bindir}/node %{buildroot}%{_bindir}/node-%{nodejs_major}
+
+# Move the npm binary to npm-NODEJS_MAJOR
+rm -f %{buildroot}%{_bindir}/npm
+
+ln -srf %{buildroot}%{nodejs_private_sitelib}/npm/bin/npm-cli.js \
+ %{buildroot}%{_bindir}/npm-%{nodejs_major}
+
+# Move the npx binary to npm-NODEJS_MAJOR
+rm -f %{buildroot}%{_bindir}/npx
+
+ln -srf %{buildroot}%{nodejs_private_sitelib}/npm/bin/npx-cli.js \
+ %{buildroot}%{_bindir}/npx-%{nodejs_major}
+
+# Add the symlinks back for the default version
+%if 0%{?nodejs_default}
+ln -srf %{buildroot}%{_bindir}/node-%{nodejs_major} \
+ %{buildroot}%{_bindir}/node
+
+ln -srf %{buildroot}%{_bindir}/npm-%{nodejs_major} \
+ %{buildroot}%{_bindir}/npm
+
+ln -srf %{buildroot}%{_bindir}/npx-%{nodejs_major} \
+ %{buildroot}%{_bindir}/npx
+%endif
+
# Install library symlink
-ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/libnode.so
+ln -srf %{buildroot}%{_libdir}/libnode.so.%{nodejs_soversion} \
+ %{buildroot}%{_libdir}/libnode.so
# Install v8 compatibility symlinks
for header in %{buildroot}%{_includedir}/node/libplatform %{buildroot}%{_includedir}/node/v8*.h; do
header=$(basename ${header})
- ln -s ./node/${header} %{buildroot}%{_includedir}/${header}
+ ln -srf ./node/${header} %{buildroot}%{_includedir}/${header}
done
ln -s ./node/cppgc %{buildroot}%{_includedir}/cppgc
for soname in libv8 libv8_libbase libv8_libplatform; do
@@ -527,8 +618,11 @@ for soname in libv8 libv8_libbase libv8_libplatform; do
ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
done
-# own the sitelib directory
-mkdir -p %{buildroot}%{_prefix}/lib/node_modules
+# Remove tracing for non-default versions
+%if ! 0%{?nodejs_default}
+rm -rf %{buildroot}%{_usr}/lib/dtrace \
+ %{buildroot}%{_datadir}/systemtap/tapset/node.stp
+%endif
# install documentation
mkdir -p %{buildroot}%{_pkgdocdir}/html
@@ -536,8 +630,8 @@ cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
# node-gyp needs common.gypi too
-mkdir -p %{buildroot}%{_datadir}/node
-cp -p common.gypi %{buildroot}%{_datadir}/node
+mkdir -p %{buildroot}%{nodejs_datadir}
+cp -p common.gypi %{buildroot}%{nodejs_datadir}
# The config.gypi file is platform-dependent, so rename it to not conflict
mv %{buildroot}%{_includedir}/node/config.gypi \
@@ -546,23 +640,44 @@ mv %{buildroot}%{_includedir}/node/config.gypi \
# Install the GDB init tool into the documentation directory
mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
-
-%if %{with npm}
-# install NPM docs to mandir
-mkdir -p %{buildroot}%{_mandir} \
+mkdir -p %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man1 \
+ %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man5 \
+ %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man7 \
+ %{buildroot}%{nodejs_sitelib}/npm/man \
+ %{buildroot}%{nodejs_private_sitelib}/npm/man \
%{buildroot}%{_pkgdocdir}/npm
-cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
-rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
-ln -srf %{buildroot}%{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
+# install manpage docs to mandir
+cp -pr deps/npm/man/* \
+ %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/
+rm -rf %{buildroot}%{nodejs_private_sitelib}/npm/man
+ln -srf %{buildroot}%{_mandir}/nodejs-%{nodejs_major} \
+ %{buildroot}%{nodejs_private_sitelib}/npm/man
+
+%if 0%{?nodejs_default}
+for i in 1 5 7; do
+ mkdir -p %{buildroot}%{_mandir}/man${i}
+ for manpage in %{buildroot}%{nodejs_private_sitelib}/npm/man/man$i/*; do
+ basename=$(basename ${manpage})
+ ln -srf %{buildroot}%{nodejs_private_sitelib}/npm/man/man${i}/${manpage} \
+ %{buildroot}%{_mandir}/man${i}/${basename}
+ done
+done
+%endif
+# Install the node interpreter manpage
+mv %{buildroot}%{_mandir}/man1/node.1 \
+ %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man1/
+
+%if 0%{?nodejs_default}
+ln -srf %{buildroot}%{_mandir}/nodejs-%{nodejs_major}/man1/node.1 \
+ %{buildroot}%{_mandir}/man1/
+%endif
# Install Gatsby HTML documentation to %%{_pkgdocdir}
cp -pr deps/npm/docs %{buildroot}%{_pkgdocdir}/npm/
-rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/docs
-
-ln -srf %{buildroot}%{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
-%endif
+rm -rf %{buildroot}%{nodejs_private_sitelib}/npm/docs
+ln -srf %{buildroot}%{_pkgdocdir}/npm %{buildroot}%{nodejs_private_sitelib}/npm/docs
# Node tries to install some python files into a documentation directory
# (and not the proper one). Remove them for now until we figure out what to
@@ -570,28 +685,28 @@ ln -srf %{buildroot}%{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/np
rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
%{buildroot}/%{_defaultdocdir}/node/lldbinit
-
-%if %{with npm}
# Some NPM bundled deps are executable but should not be. This causes
# unnecessary automatic dependencies to be added. Make them not executable.
# Skip the npm bin directory or the npm binary will not work.
-find %{buildroot}%{_prefix}/lib/node_modules/npm \
- -not -path "%{buildroot}%{_prefix}/lib/node_modules/npm/bin/*" \
+find %{buildroot}%{nodejs_private_sitelib}/npm \
+ -not -path "%{buildroot}%{nodejs_private_sitelib}/npm/bin/*" \
-executable -type f \
-exec chmod -x {} ;
# The above command is a little overzealous. Add a few permissions back.
-chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp
-chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
+chmod 0755 %{buildroot}%{nodejs_private_sitelib}/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp
+chmod 0755 %{buildroot}%{nodejs_private_sitelib}/npm/node_modules/node-gyp/bin/node-gyp.js
# Drop the NPM default configuration in place
+%if 0%{?nodejs_default}
mkdir -p %{buildroot}%{_sysconfdir}
cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
# NPM upstream expects it to be in /usr/etc/npmrc, so we'll put a symlink here
# This is done in the interests of keeping /usr read-only.
mkdir -p %{buildroot}%{_prefix}/etc
-ln -rsf %{buildroot}%{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
+ln -rsf %{buildroot}%{_sysconfdir}/npmrc \
+ %{buildroot}%{_prefix}/etc/npmrc
%endif
# Install the full-icu data files
@@ -605,24 +720,22 @@ unzip -d %{buildroot}%{icudatadir} %{SOURCE3} icudt%{icu_major}b.dat
%check
# Fail the build if the versions don't match
-LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
-LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8.replace(/-node.\d+$/, ''), '%{v8_version}')"
-LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} -e "require('assert').equal(process.versions.v8.replace(/-node.\d+$/, ''), '%{v8_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
# Ensure we have punycode and that the version matches
-LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
-%if %{with npm}
# Ensure we have npm and that the version matches
-LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}%{_bindir}/node %{buildroot}%{_bindir}/npm version --json |jq -e '.npm == "%{npm_version}"'
-%endif
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}%{_bindir}/node-%{nodejs_major} %{buildroot}%{_bindir}/npm-%{nodejs_major} version --json |jq -e '.npm == "%{npm_version}"'
# Make sure i18n support is working
-NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
+NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{nodejs_private_sitelib}/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node-%{nodejs_major} --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
%if 0%{?rhel} && 0%{?rhel} < 8
-%pretrans -n npm -p <lua>
+%pretrans npm -p <lua>
-- Remove all of the symlinks from the bundled npm node_modules directory
base_path = "%{_prefix}/lib/node_modules/npm/node_modules/"
d_st = posix.stat(base_path)
@@ -637,36 +750,42 @@ if d_st then
end
%endif
-%files
+
+%files -n %{pkgname}
+%doc AUTHORS CHANGELOG.md onboarding.md GOVERNANCE.md README.md
+
+%if 0%{?nodejs_default}
%{_bindir}/node
-%dir %{_prefix}/lib/node_modules
-%dir %{_datadir}/node
+%doc %{_mandir}/man1/node.1*
%dir %{_datadir}/systemtap
%dir %{_datadir}/systemtap/tapset
+%{nodejs_sitelib}
%{_datadir}/systemtap/tapset/node.stp
-
%if %{without bundled}
%dir %{_usr}/lib/dtrace
%{_usr}/lib/dtrace/node.d
%endif
+%endif
-%doc AUTHORS CHANGELOG.md onboarding.md GOVERNANCE.md README.md
-%doc %{_mandir}/man1/node.1*
+%{_bindir}/node-%{nodejs_major}
+%{nodejs_private_sitelib}
+%doc %{_mandir}/nodejs-%{nodejs_major}/man1/node.1*
-%files devel
+
+%files -n %{pkgname}-devel
%{_includedir}/node
%{_libdir}/libnode.so
-%{_datadir}/node/common.gypi
+%{nodejs_datadir}/common.gypi
%{_pkgdocdir}/gdbinit
-%files full-i18n
+%files -n %{pkgname}-full-i18n
%dir %{icudatadir}
%{icudatadir}/icudt%{icu_major}*.dat
-%files libs
+%files -n %{pkgname}-libs
%license LICENSE
%{_libdir}/libnode.so.%{nodejs_soversion}
%{_libdir}/libv8.so.%{v8_major}
@@ -675,7 +794,7 @@ end
%dir %{nodejs_datadir}/
-%files -n v8-devel
+%files -n v8-%{v8_major}.%{v8_minor}-devel
%{_includedir}/libplatform
%{_includedir}/v8*.h
%{_includedir}/cppgc
@@ -684,26 +803,31 @@ end
%{_libdir}/libv8_libplatform.so
-%if %{with npm}
-%files -n npm
+%files -n %{pkgname}-npm
+%if 0%{?nodejs_default}
%{_bindir}/npm
%{_bindir}/npx
-%{_prefix}/lib/node_modules/npm
-%config(noreplace) %{_sysconfdir}/npmrc
%{_prefix}/etc/npmrc
+%config(noreplace) %{_sysconfdir}/npmrc
%ghost %{_sysconfdir}/npmignore
+
%doc %{_mandir}/man*/
%exclude %doc %{_mandir}/man1/node.1*
%endif
-%files docs
+%{_bindir}/npm-%{nodejs_major}
+%{_bindir}/npx-%{nodejs_major}
+%{nodejs_private_sitelib}/npm
+
+%doc %{_mandir}/nodejs-%{nodejs_major}/
+%exclude %doc %{_mandir}/nodejs-%{nodejs_major}/man1/node.1*
+
+
+%files -n %{pkgname}-docs
%doc doc
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
-
-%if %{with npm}
%{_pkgdocdir}/npm/docs
-%endif
%changelog
commit a3c7fd02a8979cd7c7d117f6a239bf13c4c2773f
Author: Jan Staněk jstanek@redhat.com
Date: Wed Dec 7 15:46:49 2022 +0100
Check bundled WASM sources for version mismatch
diff --git a/nodejs.spec b/nodejs.spec
index 601271d..3972bc4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -422,6 +422,22 @@ rm -rf deps/brotli
rm -rf deps/v8/third_party/jinja2
rm -rf tools/inspector_protocol/jinja2
+# check for correct versions of dependencies we are bundling
+check_wasm_dep() {
+ local -r name="$1" source="$2" packagejson="$3"
+ local -r expected_version="$(jq -r '.version' "${packagejson}")"
+
+ if ls "${source}"|grep -q --fixed-strings "${expected_version}"; then
+ printf '%s version matches\n' "${name}" >&2
+ else
+ printf '%s version MISMATCH: %s !~ %s\n' "${name}" "${expected_version}" "${source}" >&2
+ return 1
+ fi
+}
+
+check_wasm_dep cjs-module-lexer '%{SOURCE101}' deps/cjs-module-lexer/package.json
+check_wasm_dep undici '%{SOURCE111}' deps/undici/src/package.json
+
# Replace any instances of unversioned python with python3
pfiles=( $(grep -rl python) )
%py3_shebang_fix ${pfiles[@]}
commit 267026f1113407e240ac5ccb4f5294dde3741d98
Author: Jan Staněk jstanek@redhat.com
Date: Wed Aug 24 15:19:35 2022 +0200
Include sources for WASM blobs
diff --git a/nodejs.spec b/nodejs.spec
index a7c4566..601271d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -140,6 +140,26 @@ Source3: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_majo
Source4: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_major%7...
Source100: nodejs-sources.sh
+# These are full sources for dependencies included as WASM blobs in the source of Node itself.
+# Note: These sources would also include pre-compiled WASM blobs… so they are adjusted not to.
+# Recipes for creating these blobs are included in the sources.
+
+# Version: jq '.version' deps/cjs-module-lexer/package.json
+# Original: https://github.com/nodejs/cjs-module-lexer/archive/refs/tags/1.2.2.tar.gz
+# Adjustments: rm -f cjs-module-lexer-1.2.2/lib/lexer.wasm
+Source101: cjs-module-lexer-1.2.2.tar.gz
+# The WASM blob was made using wasi-sdk v11; compiler libraries are linked in.
+# Version source: Makefile
+Source102: https://github.com/WebAssembly/wasi-sdk/archive/wasi-sdk-11/wasi-sdk-wasi-sd...
+
+# Version: jq '.version' deps/undici/src/package.json
+# Original: https://github.com/nodejs/undici/archive/refs/tags/v5.11.0.tar.gz
+# Adjustments: rm -f undici-5.11.0/lib/llhttp/llhttp*.wasm*
+Source111: undici-5.11.0.tar.gz
+# The WASM blob was made using wasi-sdk v14; compiler libraries are linked in.
+# Version source: build/Dockerfile
+Source112: https://github.com/WebAssembly/wasi-sdk/archive/wasi-sdk-14/wasi-sdk-wasi-sd...
+
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
diff --git a/sources b/sources
index b081720..6c210b8 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,7 @@
SHA512 (node-v18.12.1-stripped.tar.gz) = f9712452fa9eda5a8dcd6fa62b2e94b6c65f89e3b005bb52455d33d30d881584829813e134af9a48faf55e73bd33ec2362f2ada96de378b70ffff2104d8de9da
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
+SHA512 (undici-5.11.0.tar.gz) = 28d13caae0d6fe31136e8ae74e8feb82aadeada01603b1c99d39d97183d5ed2d4594b985150d8e986259081d3dd2a467e47a6d2eb0da185df93376fee114e26a
+SHA512 (cjs-module-lexer-1.2.2.tar.gz) = 2c8e9caf2231ca7d61e71936305389774859aca9b5c86c63489c9a62a81f4736f99477c3f0cbb41077bb7924fdd23e0f24b7bce858e42fb0f87e7c0ffc87afeb
+SHA512 (wasi-sdk-wasi-sdk-11.tar.gz) = cb37f357b09431a3efad26141d83dce63232a35b536d9a7bd341d4d9627a0a3d4bd4d57504b6e3dab421942d2c168a96da2a6be889aab3f9a2852fc5a3200d3c
+SHA512 (wasi-sdk-wasi-sdk-14.tar.gz) = 4fecb3d9c04b91eb2388a9e51d49fbff6f22b81f9945a07ecdbfe479c96dad1e3b673b8bee24842b0dae5294129a9cb35dcf8e5ecf45437a6d01fb6e0fd13645
commit ea87d2c1bc608b1be0bfc8a0319fc31e6284cb9a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Nov 7 08:19:35 2022 -0500
Update to security release 18.12.1
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18....
https://nodejs.org/en/blog/vulnerability/november-2022-security-releases/
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 7d47208..a7c4566 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -46,8 +46,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 11
-%global nodejs_patch 0
+%global nodejs_minor 12
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 108
diff --git a/sources b/sources
index 260b24c..b081720 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.11.0-stripped.tar.gz) = b81a2fe60dd77a6ba215d8ea87522ed69f5d56dd1060fe9931a6b3134fcd9d14ab3333534678cb3ba10d0dfbda3c8a087c22cb6b4a6aaa05badcc3fc0407f803
+SHA512 (node-v18.12.1-stripped.tar.gz) = f9712452fa9eda5a8dcd6fa62b2e94b6c65f89e3b005bb52455d33d30d881584829813e134af9a48faf55e73bd33ec2362f2ada96de378b70ffff2104d8de9da
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit 64be0117c5785746700a459213e9eead7ef7f364
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Nov 1 10:15:50 2022 -0400
Update python3_fixup
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index c993da8..7d47208 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,12 +16,6 @@
%bcond_with bundled
%endif
-%if 0%{?rhel} && 0%{?rhel} < 9
-%bcond_without python3_fixup
-%else
-%bcond_with python3_fixup
-%endif
-
%if 0%{?rhel} && 0%{?rhel} < 8
%bcond_without bundled_zlib
%else
@@ -35,7 +29,7 @@
# Heavy-handed approach to avoiding issues with python
# bytecompiling files in the node_modules/ directory
-%global __python %{__python3}
+%global __python %{python3}
# == Master Relase ==
# This is used by both the nodejs package and the npm subpackage that
@@ -95,7 +89,7 @@
%global icu_version %{icu_major}.%{icu_minor}
%global icudatadir %{nodejs_datadir}/icudata
-%{!?little_endian: %global little_endian %(%{__python3} -c "import sys;print (0 if sys.byteorder=='big' else 1)")}
+%{!?little_endian: %global little_endian %(%{python3} -c "import sys;print (0 if sys.byteorder=='big' else 1)")}
# " this line just fixes syntax highlighting for vim that is confused by the above and continues literal
@@ -153,7 +147,7 @@ BuildRequires: make
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-setuptools
BuildRequires: python%{python3_pkgversion}-jinja2
-%if !%{with python3_fixup}
+%if 0%{?fedora} || 0%{?rhel} >= 9
BuildRequires: python-unversioned-command
%endif
%if %{with bundled_zlib}
@@ -408,15 +402,9 @@ rm -rf deps/brotli
rm -rf deps/v8/third_party/jinja2
rm -rf tools/inspector_protocol/jinja2
-# Replace any instances of unversioned python' with python3
-%if %{with python3_fixup}
-pathfix.py -i %{__python3} -pn $(find -type f ! -name "*.js")
-find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
-find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
-sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
-sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
-find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
-%endif
+# Replace any instances of unversioned python with python3
+pfiles=( $(grep -rl python) )
+%py3_shebang_fix ${pfiles[@]}
%build
@@ -438,9 +426,7 @@ find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
export CC='%{__cc}'
export CXX='%{__cxx}'
-%if %{with python3_fixup}
-export NODE_GYP_FORCE_PYTHON=%{__python3}
-%endif
+export NODE_GYP_FORCE_PYTHON=%{python3}
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
@@ -459,7 +445,7 @@ extra_cflags=(
export CFLAGS="%{optflags} ${extra_cflags[*]}" CXXFLAGS="%{optflags} ${extra_cflags[*]}"
export LDFLAGS="%{build_ldflags}"
-%{__python3} configure.py \
+%{python3} configure.py \
--ninja \
--enable-lto \
--prefix=%{_prefix} \
commit 7c7a75f64bad5e061756cf910dbdef8a16b337de
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Aug 24 13:44:31 2022 -0400
Move native module autorequires to nodejs-packaging
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 501ea8d..c993da8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -146,11 +146,6 @@ Source3: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_majo
Source4: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_major%7...
Source100: nodejs-sources.sh
-# The native module Requires generator remains in the nodejs SRPM, so it knows
-# the nodejs and v8 versions. The remainder has migrated to the
-# nodejs-packaging SRPM.
-Source7: nodejs_native.attr
-
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
@@ -176,10 +171,14 @@ BuildRequires: gcc-c++ >= 8.3.0
%endif
BuildRequires: jq
+
+%if %{with npm}
# needed to generate bundled provides for npm dependencies
# https://src.fedoraproject.org/rpms/nodejs/pull-request/2
# https://pagure.io/nodejs-packaging/pull-request/10
BuildRequires: nodejs-packaging
+%endif
+
BuildRequires: chrpath
BuildRequires: libatomic
BuildRequires: ninja-build
@@ -278,12 +277,6 @@ Provides: bundled(icu) = %{icu_version}
Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
-%if 0%{?fedora}
-# Make sure to pull in the appropriate packaging macros when building RPMs
-Requires: (nodejs-packaging if rpm-build)
-%endif
-
-# Make sure we keep NPM up to date when we update Node.js
%if 0%{?fedora} || 0%{?rhel} >= 8
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}
%endif
@@ -515,15 +508,6 @@ done
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
-# ensure Requires are added to every native module that match the Provides from
-# the nodejs build in the buildroot
-install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native.attr
-cat << EOF > %{buildroot}%{_rpmconfigdir}/nodejs_native.req
-#!/bin/sh
-echo 'nodejs(abi%{nodejs_major}) >= %nodejs_abi'
-EOF
-chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
-
# install documentation
mkdir -p %{buildroot}%{_pkgdocdir}/html
cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
@@ -644,8 +628,6 @@ end
%{_usr}/lib/dtrace/node.d
%endif
-%{_rpmconfigdir}/fileattrs/nodejs_native.attr
-%{_rpmconfigdir}/nodejs_native.req
%doc AUTHORS CHANGELOG.md onboarding.md GOVERNANCE.md README.md
%doc %{_mandir}/man1/node.1*
diff --git a/nodejs_native.attr b/nodejs_native.attr
deleted file mode 100644
index 0527af6..0000000
--- a/nodejs_native.attr
+++ /dev/null
@@ -1,2 +0,0 @@
-%__nodejs_native_requires %{_rpmconfigdir}/nodejs_native.req
-%__nodejs_native_path ^/usr/lib.*/node_modules/.*\.node$
commit 08c7ea5ebedb1f9bfddf43a62047233fb34d399e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Oct 19 20:28:01 2022 -0400
Fix symlinks
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 323223c..501ea8d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -548,14 +548,14 @@ mkdir -p %{buildroot}%{_mandir} \
cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
-ln -srf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
+ln -srf %{buildroot}%{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
# Install Gatsby HTML documentation to %%{_pkgdocdir}
cp -pr deps/npm/docs %{buildroot}%{_pkgdocdir}/npm/
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/docs
-ln -srf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
+ln -srf %{buildroot}%{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
%endif
# Node tries to install some python files into a documentation directory
@@ -585,7 +585,7 @@ cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
# NPM upstream expects it to be in /usr/etc/npmrc, so we'll put a symlink here
# This is done in the interests of keeping /usr read-only.
mkdir -p %{buildroot}%{_prefix}/etc
-ln -rs %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
+ln -rsf %{buildroot}%{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
%endif
# Install the full-icu data files
commit 33ebc0634d08ed63d10a22f9590e3c839b035178
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Oct 19 16:33:20 2022 -0400
Update to 18.11.0
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18....
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 65ce95d..323223c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -52,7 +52,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 10
+%global nodejs_minor 11
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
diff --git a/sources b/sources
index cfa44a6..260b24c 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.10.0-stripped.tar.gz) = c62f19be6c2db35e657af6700b818624860bc802a814f850bde8027046c8046ef7446f5523fa9b7f9c053326cfedc713473088fd423721a515c1750aa3455138
+SHA512 (node-v18.11.0-stripped.tar.gz) = b81a2fe60dd77a6ba215d8ea87522ed69f5d56dd1060fe9931a6b3134fcd9d14ab3333534678cb3ba10d0dfbda3c8a087c22cb6b4a6aaa05badcc3fc0407f803
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit 8d3e75401d73d11b5414394e14c44838e12df98f
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Oct 4 16:29:31 2022 -0400
Update to 18.10.0
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18....
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0002-build-fix-bad-upstream-merge.patch b/0002-build-fix-bad-upstream-merge.patch
deleted file mode 100644
index 9d7e91d..0000000
--- a/0002-build-fix-bad-upstream-merge.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-From 5193cddcee28a721beb589dba2e2165a71c43745 Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher sgallagh@redhat.com
-Date: Wed, 14 Sep 2022 16:23:13 -0400
-Subject: [PATCH 2/2] build: fix bad upstream merge
-
-The upstream merge of https://github.com/nodejs/node/commit/e27e709d3c
-accidentally removed code related to systemtap and dtrace.
-
-Signed-off-by: Stephen Gallagher sgallagh@redhat.com
----
- tools/install.py | 5 +++++
- 1 file changed, 5 insertions(+)
-
-diff --git a/tools/install.py b/tools/install.py
-index 4b01d67da54e1f3dd604e7523a846f6a89f69651..9d5f4a48bca2c926b3ffb3c51c070222d4f7ce7b 100755
---- a/tools/install.py
-+++ b/tools/install.py
-@@ -177,6 +177,11 @@ def files(action):
- else:
- output_lib = 'libnode.' + variables.get('shlib_suffix')
- action([output_prefix + output_lib], variables.get('libdir') + '/' + output_lib)
-+ if 'true' == variables.get('node_use_dtrace'):
-+ action(['out/Release/node.d'], 'lib/dtrace/node.d')
-+
-+ # behave similarly for systemtap
-+ action(['src/node.stp'], 'share/systemtap/tapset/')
-
- action(['deps/v8/tools/gdbinit'], 'share/doc/node/')
- action(['deps/v8/tools/lldb_commands.py'], 'share/doc/node/')
---
-2.37.3
-
diff --git a/nodejs.spec b/nodejs.spec
index 4c41e35..65ce95d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -52,8 +52,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 9
-%global nodejs_patch 1
+%global nodejs_minor 10
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 108
@@ -110,7 +110,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.19.1
+%global npm_version 8.19.2
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -119,7 +119,7 @@
%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
# uvwasi - from deps/uvwasi/include/uvwasi.h
-%global uvwasi_version 0.0.12
+%global uvwasi_version 0.0.13
# histogram_c - assumed from timestamps
%global histogram_version 0.9.7
@@ -154,9 +154,6 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
-# Fix upstream merge error
-Patch2: 0002-build-fix-bad-upstream-merge.patch
-
BuildRequires: make
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-setuptools
diff --git a/sources b/sources
index 5f6aa1e..cfa44a6 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.9.1-stripped.tar.gz) = 59df68a01566994ffb8369339d3cf9484d37adc93eab6fea57cf8df90e19a343a3c98df13d35de889532c22792cdb0dabe4bd120849d3d6dc699c73fdf02b22b
+SHA512 (node-v18.10.0-stripped.tar.gz) = c62f19be6c2db35e657af6700b818624860bc802a814f850bde8027046c8046ef7446f5523fa9b7f9c053326cfedc713473088fd423721a515c1750aa3455138
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit 4c37e579db0777354a0383e149b04368e88f8bbd
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Sep 23 16:03:16 2022 -0400
Fix incorrect version number
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index be82f2e..4c41e35 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -53,7 +53,7 @@
%global nodejs_epoch 1
%global nodejs_major 18
%global nodejs_minor 9
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 108
commit f924bef5fc1465263535be0e88ad52f587300085
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Sep 23 15:31:03 2022 -0400
Update to 18.9.1
https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18....
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index 645b8c1..211a880 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -124,6 +124,7 @@ rm -rf node-v${version}.tar.gz \
wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz \
http://nodejs.org/dist/v$%7Bversion%7D/SHASUMS256.txt
sha256sum -c SHASUMS256.txt --ignore-missing
+rm -f SHASUMS256.txt
tar -zxf node-v${version}.tar.gz
# Remove bundled OpenSSL
diff --git a/nodejs.spec b/nodejs.spec
index 052a3bf..be82f2e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -81,7 +81,7 @@
%global c_ares_version 1.18.1
# llhttp - from deps/llhttp/include/llhttp.h
-%global llhttp_version 6.0.9
+%global llhttp_version 6.0.10
# libuv - from deps/uv/include/uv/version.h
%global libuv_version 1.43.0
diff --git a/sources b/sources
index 69a3fcc..5f6aa1e 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.9.0-stripped.tar.gz) = 855e11d9c118744f19f4aa75b6374b277c60d7eb99f9821807f51849da88fe833ee6cc240722a51fa689e54ae361d536f8283d6c0160f1ad059c41db681e4e21
+SHA512 (node-v18.9.1-stripped.tar.gz) = 59df68a01566994ffb8369339d3cf9484d37adc93eab6fea57cf8df90e19a343a3c98df13d35de889532c22792cdb0dabe4bd120849d3d6dc699c73fdf02b22b
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit d4511c9b8c4e18d5ffe5a1d32daabd893ee88a81
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Sep 15 09:15:01 2022 -0400
Simplify manpage packaging
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 65f1ce6..052a3bf 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -691,27 +691,10 @@ end
%config(noreplace) %{_sysconfdir}/npmrc
%{_prefix}/etc/npmrc
%ghost %{_sysconfdir}/npmignore
-%doc %{_mandir}/man1/npm*.1*
-%doc %{_mandir}/man1/npx.1*
-%doc %{_mandir}/man5/folders.5*
-%doc %{_mandir}/man5/install.5*
-%doc %{_mandir}/man5/npmrc.5*
-%doc %{_mandir}/man5/npm-shrinkwrap-json.5*
-%doc %{_mandir}/man5/package-json.5*
-%doc %{_mandir}/man5/package-lock-json.5*
-%doc %{_mandir}/man7/config.7*
-%doc %{_mandir}/man7/developers.7*
-%doc %{_mandir}/man7/orgs.7*
-%doc %{_mandir}/man7/logging.7*
-%doc %{_mandir}/man7/package-spec.7*
-%doc %{_mandir}/man7/registry.7*
-%doc %{_mandir}/man7/removal.7*
-%doc %{_mandir}/man7/scope.7*
-%doc %{_mandir}/man7/scripts.7*
-%doc %{_mandir}/man7/workspaces.7*
+%doc %{_mandir}/man*/
+%exclude %doc %{_mandir}/man1/node.1*
%endif
-
%files docs
%doc doc
%dir %{_pkgdocdir}
commit d9254b5d97dd6c8178e423abd6b3e3d8f5e49173
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Sep 14 16:37:43 2022 -0400
Add f37 to package.cfg
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/package.cfg b/package.cfg
index ec98f0b..d8d71e6 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = rawhide
+targets = rawhide f37
commit fa95cc99d9c09df2d9e6988db6614dcd25af46dc
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Sep 14 15:44:38 2022 -0400
Update to Node.js 18.9.0
- https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18....
- https://github.com/nodejs/node/blob/main/doc/changelogs/CHANGELOG_V18.md#18....
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 626114d..ce6d590 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From dd53d0b72ade3b5b391cb99d7393658b7e24c91c Mon Sep 17 00:00:00 2001
+From c30f7d6e470a9ef8eafb10b2997889231180754e Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -10,10 +10,10 @@ Signed-off-by: rpm-build <rpm-build>
2 files changed, 1 insertion(+), 18 deletions(-)
diff --git a/Makefile b/Makefile
-index e0d756fea3ac356041ecdea678c4628fa8b76de2..c90bfa76231397ea2328613d6335cef0ac784f0f 100644
+index 9c01f8f244ee1904f223d01e31ecfeffc03ea191..133a3d0fcbd22c2dde85a092f84708ddabf8b5f3 100644
--- a/Makefile
+++ b/Makefile
-@@ -147,7 +147,7 @@ with-code-cache test-code-cache:
+@@ -148,7 +148,7 @@ with-code-cache test-code-cache:
$(warning '$@' target is a noop)
out/Makefile: config.gypi common.gypi node.gyp \
@@ -23,7 +23,7 @@ index e0d756fea3ac356041ecdea678c4628fa8b76de2..c90bfa76231397ea2328613d6335cef0
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
diff --git a/node.gyp b/node.gyp
-index e8227bb22a39fe75eab9c66ad85e1a3579d7628d..6db3c5d1783a3c1b9e2ae283d97b78c531ba862a 100644
+index 347d82d2e1e100227e750934532dce29775f1fdf..2419dc739ea0b1d7efaf5096f86383def4162e3c 100644
--- a/node.gyp
+++ b/node.gyp
@@ -429,23 +429,6 @@
@@ -51,5 +51,5 @@ index e8227bb22a39fe75eab9c66ad85e1a3579d7628d..6db3c5d1783a3c1b9e2ae283d97b78c5
],
}, # node_core_target_name
--
-2.36.1
+2.37.3
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
deleted file mode 100644
index ef775fe..0000000
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 2fffabf30b24a7237c17a57704a8e99d425e98f5 Mon Sep 17 00:00:00 2001
-From: Elliott Sales de Andrade quantum.analyst@gmail.com
-Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 2/2] Install both binaries and use libdir.
-
-This allows us to build with a shared library for other users while
-still providing the normal executable.
-
-Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
-Signed-off-by: Stephen Gallagher sgallagh@redhat.com
-Signed-off-by: rpm-build <rpm-build>
----
- configure.py | 7 +++++++
- tools/install.py | 2 +-
- 2 files changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/configure.py b/configure.py
-index e53a83f332ffd60cf7b6fe7e079470a52a43a8de..efdda6afce33201976e3811907bf4d7e3c2d4302 100755
---- a/configure.py
-+++ b/configure.py
-@@ -735,6 +735,12 @@ parser.add_argument('--shared',
- help='compile shared library for embedding node in another project. ' +
- '(This mode is not officially supported for regular applications)')
-
-+parser.add_argument('--libdir',
-+ action='store',
-+ dest='libdir',
-+ default='lib',
-+ help='a directory to install the shared library into')
-+
- parser.add_argument('--without-v8-platform',
- action='store_true',
- dest='without_v8_platform',
-@@ -1372,6 +1378,7 @@ def configure_node(o):
- o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
-
- o['variables']['node_shared'] = b(options.shared)
-+ o['variables']['libdir'] = options.libdir
- node_module_version = getmoduleversion.get_version()
-
- if options.dest_os == 'android':
-diff --git a/tools/install.py b/tools/install.py
-index 5793b581f774db9e2c06495792eb35a3c2f34047..fe16c2bd1f4890919908c7e508451891fce86d0c 100755
---- a/tools/install.py
-+++ b/tools/install.py
-@@ -176,7 +176,7 @@ def files(action):
- try_symlink(so_name, link_path)
- else:
- output_lib = 'libnode.' + variables.get('shlib_suffix')
-- action([output_prefix + output_lib], 'lib/' + output_lib)
-+ action([output_prefix + output_lib], variables.get('libdir') + '/' + output_lib)
- if 'true' == variables.get('node_use_dtrace'):
- action(['out/Release/node.d'], 'lib/dtrace/node.d')
-
---
-2.36.1
-
diff --git a/0002-build-fix-bad-upstream-merge.patch b/0002-build-fix-bad-upstream-merge.patch
new file mode 100644
index 0000000..9d7e91d
--- /dev/null
+++ b/0002-build-fix-bad-upstream-merge.patch
@@ -0,0 +1,32 @@
+From 5193cddcee28a721beb589dba2e2165a71c43745 Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher sgallagh@redhat.com
+Date: Wed, 14 Sep 2022 16:23:13 -0400
+Subject: [PATCH 2/2] build: fix bad upstream merge
+
+The upstream merge of https://github.com/nodejs/node/commit/e27e709d3c
+accidentally removed code related to systemtap and dtrace.
+
+Signed-off-by: Stephen Gallagher sgallagh@redhat.com
+---
+ tools/install.py | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/tools/install.py b/tools/install.py
+index 4b01d67da54e1f3dd604e7523a846f6a89f69651..9d5f4a48bca2c926b3ffb3c51c070222d4f7ce7b 100755
+--- a/tools/install.py
++++ b/tools/install.py
+@@ -177,6 +177,11 @@ def files(action):
+ else:
+ output_lib = 'libnode.' + variables.get('shlib_suffix')
+ action([output_prefix + output_lib], variables.get('libdir') + '/' + output_lib)
++ if 'true' == variables.get('node_use_dtrace'):
++ action(['out/Release/node.d'], 'lib/dtrace/node.d')
++
++ # behave similarly for systemtap
++ action(['src/node.stp'], 'share/systemtap/tapset/')
+
+ action(['deps/v8/tools/gdbinit'], 'share/doc/node/')
+ action(['deps/v8/tools/lldb_commands.py'], 'share/doc/node/')
+--
+2.37.3
+
diff --git a/nodejs.spec b/nodejs.spec
index 9d8fbc1..65f1ce6 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -52,7 +52,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 7
+%global nodejs_minor 9
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -69,7 +69,7 @@
%global v8_major 10
%global v8_minor 2
%global v8_build 154
-%global v8_patch 13
+%global v8_patch 15
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
@@ -81,7 +81,7 @@
%global c_ares_version 1.18.1
# llhttp - from deps/llhttp/include/llhttp.h
-%global llhttp_version 6.0.7
+%global llhttp_version 6.0.9
# libuv - from deps/uv/include/uv/version.h
%global libuv_version 1.43.0
@@ -110,7 +110,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.15.0
+%global npm_version 8.19.1
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -154,8 +154,8 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
-# Patch to install both node and libnode.so, using the correct libdir
-Patch2: 0002-Install-both-binaries-and-use-libdir.patch
+# Fix upstream merge error
+Patch2: 0002-build-fix-bad-upstream-merge.patch
BuildRequires: make
BuildRequires: python%{python3_pkgversion}-devel
diff --git a/sources b/sources
index 39e901a..69a3fcc 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.7.0-stripped.tar.gz) = 2f5685b082bdc6b2de97318c5905b57600252eaf977a3a523964dcb625d5564fc11a6b58c7e9f5029c316857aa889bf4f0bd97835bb7695920bba94563cd9667
+SHA512 (node-v18.9.0-stripped.tar.gz) = 855e11d9c118744f19f4aa75b6374b277c60d7eb99f9821807f51849da88fe833ee6cc240722a51fa689e54ae361d536f8283d6c0160f1ad059c41db681e4e21
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit 45296320d16595de65237c13d5781ed8f368ccf2
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Jul 27 15:00:21 2022 -0400
Update to 18.7.0
Add bcond to disable building the included npm.
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index ef93fce..626114d 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 5f4369b4448337c034067744711b02a496cb3d39 Mon Sep 17 00:00:00 2001
+From dd53d0b72ade3b5b391cb99d7393658b7e24c91c Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -10,7 +10,7 @@ Signed-off-by: rpm-build <rpm-build>
2 files changed, 1 insertion(+), 18 deletions(-)
diff --git a/Makefile b/Makefile
-index 9f7ab7129d06471760c707a4bf7764cb2bdff862..78f91cf7f57b0de32961b1d491edf28a4ad375d2 100644
+index e0d756fea3ac356041ecdea678c4628fa8b76de2..c90bfa76231397ea2328613d6335cef0ac784f0f 100644
--- a/Makefile
+++ b/Makefile
@@ -147,7 +147,7 @@ with-code-cache test-code-cache:
@@ -23,10 +23,10 @@ index 9f7ab7129d06471760c707a4bf7764cb2bdff862..78f91cf7f57b0de32961b1d491edf28a
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
diff --git a/node.gyp b/node.gyp
-index 340ffc27ade9f73c1a5b4121bd9184a1fc3976a9..dfed3734eb52936c6e56ae6df533ca94150c7f69 100644
+index e8227bb22a39fe75eab9c66ad85e1a3579d7628d..6db3c5d1783a3c1b9e2ae283d97b78c531ba862a 100644
--- a/node.gyp
+++ b/node.gyp
-@@ -423,23 +423,6 @@
+@@ -429,23 +429,6 @@
],
},
],
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index a43085f..ef775fe 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 19844592f46490cd7cff5f58aca73a64a992fb42 Mon Sep 17 00:00:00 2001
+From 2fffabf30b24a7237c17a57704a8e99d425e98f5 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -40,11 +40,11 @@ index e53a83f332ffd60cf7b6fe7e079470a52a43a8de..efdda6afce33201976e3811907bf4d7e
if options.dest_os == 'android':
diff --git a/tools/install.py b/tools/install.py
-index 47e9d8bd7a1ae596a7c6e1d5917f538e81533726..c1afbbf0827ced2e166668e7932504687009bb9e 100755
+index 5793b581f774db9e2c06495792eb35a3c2f34047..fe16c2bd1f4890919908c7e508451891fce86d0c 100755
--- a/tools/install.py
+++ b/tools/install.py
-@@ -143,7 +143,7 @@ def files(action):
- action([output_prefix + 'libnode.lib'], 'lib/libnode.lib')
+@@ -176,7 +176,7 @@ def files(action):
+ try_symlink(so_name, link_path)
else:
output_lib = 'libnode.' + variables.get('shlib_suffix')
- action([output_prefix + output_lib], 'lib/' + output_lib)
diff --git a/nodejs.spec b/nodejs.spec
index cf4a08a..9d8fbc1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -28,6 +28,7 @@
%bcond_with bundled_zlib
%endif
+%bcond npm 1
# LTO is currently broken on Node.js builds
%define _lto_cflags %{nil}
@@ -51,7 +52,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 6
+%global nodejs_minor 7
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -109,7 +110,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.13.2
+%global npm_version 8.15.0
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -364,7 +365,7 @@ Conflicts: v8-314-devel
%description -n v8-devel
Development headers for the v8 runtime.
-
+%if %{with npm}
%package -n npm
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
@@ -387,6 +388,7 @@ Provides: npm(npm) = %{npm_version}
%description -n npm
npm is a package manager for node.js. You can use it to install and publish
your node programs. It manages dependencies and does other cool stuff.
+%endif
%package docs
@@ -481,6 +483,7 @@ export LDFLAGS="%{build_ldflags}"
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
--without-corepack \
+ %{!?with_npm:--without-npm} \
--openssl-use-def-ca-store
%ninja_build -C out/Release
@@ -540,6 +543,8 @@ mv %{buildroot}%{_includedir}/node/config.gypi \
# Install the GDB init tool into the documentation directory
mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
+
+%if %{with npm}
# install NPM docs to mandir
mkdir -p %{buildroot}%{_mandir} \
%{buildroot}%{_pkgdocdir}/npm
@@ -548,11 +553,13 @@ cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
ln -srf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
+
# Install Gatsby HTML documentation to %%{_pkgdocdir}
cp -pr deps/npm/docs %{buildroot}%{_pkgdocdir}/npm/
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/docs
ln -srf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
+%endif
# Node tries to install some python files into a documentation directory
# (and not the proper one). Remove them for now until we figure out what to
@@ -560,6 +567,8 @@ ln -srf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
%{buildroot}/%{_defaultdocdir}/node/lldbinit
+
+%if %{with npm}
# Some NPM bundled deps are executable but should not be. This causes
# unnecessary automatic dependencies to be added. Make them not executable.
# Skip the npm bin directory or the npm binary will not work.
@@ -580,6 +589,7 @@ cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
# This is done in the interests of keeping /usr read-only.
mkdir -p %{buildroot}%{_prefix}/etc
ln -rs %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
+%endif
# Install the full-icu data files
mkdir -p %{buildroot}%{icudatadir}
@@ -599,8 +609,10 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require(
# Ensure we have punycode and that the version matches
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
+%if %{with npm}
# Ensure we have npm and that the version matches
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}%{_bindir}/node %{buildroot}%{_bindir}/npm version --json |jq -e '.npm == "%{npm_version}"'
+%endif
# Make sure i18n support is working
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
@@ -671,6 +683,7 @@ end
%{_libdir}/libv8_libplatform.so
+%if %{with npm}
%files -n npm
%{_bindir}/npm
%{_bindir}/npx
@@ -696,13 +709,17 @@ end
%doc %{_mandir}/man7/scope.7*
%doc %{_mandir}/man7/scripts.7*
%doc %{_mandir}/man7/workspaces.7*
+%endif
%files docs
%doc doc
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
+
+%if %{with npm}
%{_pkgdocdir}/npm/docs
+%endif
%changelog
diff --git a/sources b/sources
index 705581d..39e901a 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.6.0-stripped.tar.gz) = 5e07678fc8c22755a72eba6af34ebe76e8bfd28cfdba3701afa3a34c980bceb1914372711eaaf4906e70e115cceb494b6f57b0316604a54113d9c9cea3d10cc6
+SHA512 (node-v18.7.0-stripped.tar.gz) = 2f5685b082bdc6b2de97318c5905b57600252eaf977a3a523964dcb625d5564fc11a6b58c7e9f5029c316857aa889bf4f0bd97835bb7695920bba94563cd9667
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit 47e1398ee29a68dbf5f19c2aedff311372b4cf3a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jul 26 08:24:50 2022 -0400
Drop mass-rebuild changelog entry
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 7b0f2d4..cf4a08a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -706,7 +706,4 @@ end
%changelog
-* Fri Jul 22 2022 Fedora Release Engineering releng@fedoraproject.org - 1:18.6.0-1.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
-
%autochangelog
commit 6a2838d655f1dba40b835edb2aa1b8c281c2a3df
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jul 25 16:58:42 2022 -0400
Bump release version
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
commit e40d5eddc8bbcd81a3efd23645f4d7acfbe47f97
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jul 25 16:34:10 2022 -0400
Fix incorrect release bump
Resolves: rhbz#2110750
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index ccd5447..7b0f2d4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -126,7 +126,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}.1
+Release: %{nodejs_release}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -356,7 +356,7 @@ package to save space if non-English locales are not needed.
Summary: v8 - development headers
Epoch: %{v8_epoch}
Version: %{v8_version}
-Release: %{v8_release}.1
+Release: %{v8_release}
Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
Requires: %{name}-libs%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
Conflicts: v8-314-devel
@@ -369,7 +369,7 @@ Development headers for the v8 runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}.1
+Release: %{npm_release}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
commit 5afd356aa4f116275a78efbddf403a60b5e0793d
Author: Fedora Release Engineering releng@fedoraproject.org
Date: Fri Jul 22 00:39:19 2022 +0000
Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index cf4a08a..ccd5447 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -126,7 +126,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}
+Release: %{nodejs_release}.1
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -356,7 +356,7 @@ package to save space if non-English locales are not needed.
Summary: v8 - development headers
Epoch: %{v8_epoch}
Version: %{v8_version}
-Release: %{v8_release}
+Release: %{v8_release}.1
Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
Requires: %{name}-libs%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
Conflicts: v8-314-devel
@@ -369,7 +369,7 @@ Development headers for the v8 runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}
+Release: %{npm_release}.1
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -706,4 +706,7 @@ end
%changelog
+* Fri Jul 22 2022 Fedora Release Engineering releng@fedoraproject.org - 1:18.6.0-1.1
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
+
%autochangelog
commit 6ad3fc8fdad6916f0d37d3810e97a06779607d54
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Jul 13 11:06:55 2022 -0400
Update to 18.6.0
Switch to ninja for faster builds
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index f60ce4f..cf4a08a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -51,7 +51,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 5
+%global nodejs_minor 6
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -68,7 +68,7 @@
%global v8_major 10
%global v8_minor 2
%global v8_build 154
-%global v8_patch 4
+%global v8_patch 13
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
@@ -109,7 +109,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.12.1
+%global npm_version 8.13.2
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -184,6 +184,7 @@ BuildRequires: jq
BuildRequires: nodejs-packaging
BuildRequires: chrpath
BuildRequires: libatomic
+BuildRequires: ninja-build
BuildRequires: systemtap-sdt-devel
BuildRequires: unzip
@@ -439,11 +440,9 @@ find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%define _lto_cflags %{nil}
%endif
-%ifarch s390 s390x %{arm} %ix86
# Decrease debuginfo verbosity to reduce memory consumption during final
# library linking
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
-%endif
export CC='%{__cc}'
export CXX='%{__cxx}'
@@ -454,16 +453,24 @@ export NODE_GYP_FORCE_PYTHON=%{__python3}
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
# NULL objects. We need to pass -fno-delete-null-pointer-checks
+# 2022-07-14: There's a bug in either torque or gcc that causes a
+# segmentation fault on ppc64le and s390x if compiled with -O2. Things
+# run fine on -O1 and -O3, so we'll just go with -O3 (like upstream)
+# while this gets sorted out.
extra_cflags=(
-D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64
-DZLIB_CONST
-fno-delete-null-pointer-checks
+ -O3
)
export CFLAGS="%{optflags} ${extra_cflags[*]}" CXXFLAGS="%{optflags} ${extra_cflags[*]}"
export LDFLAGS="%{build_ldflags}"
-%{__python3} configure.py --prefix=%{_prefix} \
+%{__python3} configure.py \
+ --ninja \
+ --enable-lto \
+ --prefix=%{_prefix} \
--shared \
--libdir=%{_lib} \
%{ssl_configure} \
@@ -474,15 +481,17 @@ export LDFLAGS="%{build_ldflags}"
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
--without-corepack \
- --openssl-use-def-ca-store \
- --enable-lto
+ --openssl-use-def-ca-store
-%make_build BUILDTYPE=Release
+%ninja_build -C out/Release
%install
rm -rf %{buildroot}
+# The ninja build does not put the shared library in the expected location, so
+# we will move it.
+mv out/Release/lib/libnode.so.%{nodejs_soversion} out/Release/
./tools/install.py install %{buildroot} %{_prefix}
# Set the binary permissions properly
@@ -681,6 +690,7 @@ end
%doc %{_mandir}/man7/developers.7*
%doc %{_mandir}/man7/orgs.7*
%doc %{_mandir}/man7/logging.7*
+%doc %{_mandir}/man7/package-spec.7*
%doc %{_mandir}/man7/registry.7*
%doc %{_mandir}/man7/removal.7*
%doc %{_mandir}/man7/scope.7*
diff --git a/sources b/sources
index 2c11748..705581d 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.5.0-stripped.tar.gz) = 96e22871ba2cdc4a44bd00f0a157a1355cf9997023ca2e0b9535c7e6628ab64d73eaed13b5b8cc1c9844a25117868ff69b28b0681695d8944c3c860cabd6d1d9
+SHA512 (node-v18.6.0-stripped.tar.gz) = 5e07678fc8c22755a72eba6af34ebe76e8bfd28cfdba3701afa3a34c980bceb1914372711eaaf4906e70e115cceb494b6f57b0316604a54113d9c9cea3d10cc6
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit e0e64a6d1957a46e40d92cf9828802c41986d02d
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jul 11 09:36:39 2022 -0400
Update to 18.5.0
Add %autorelease support
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 41c04ca..ef93fce 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From b9f76742bb9120ec9ee84dd5833eaf885be8766a Mon Sep 17 00:00:00 2001
+From 5f4369b4448337c034067744711b02a496cb3d39 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -23,7 +23,7 @@ index 9f7ab7129d06471760c707a4bf7764cb2bdff862..78f91cf7f57b0de32961b1d491edf28a
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
diff --git a/node.gyp b/node.gyp
-index 103178e2ee9a45c436cf630e17025593cf5aaa78..90ae593ca2c153091044674c77e026cad1370ccf 100644
+index 340ffc27ade9f73c1a5b4121bd9184a1fc3976a9..dfed3734eb52936c6e56ae6df533ca94150c7f69 100644
--- a/node.gyp
+++ b/node.gyp
@@ -423,23 +423,6 @@
@@ -33,7 +33,7 @@ index 103178e2ee9a45c436cf630e17025593cf5aaa78..90ae593ca2c153091044674c77e026ca
- }, {
- 'variables': {
- 'opensslconfig_internal': '<(obj_dir)/deps/openssl/openssl.cnf',
-- 'opensslconfig': './deps/openssl/openssl/apps/openssl.cnf',
+- 'opensslconfig': './deps/openssl/nodejs-openssl.cnf',
- },
- 'actions': [
- {
@@ -42,8 +42,8 @@ index 103178e2ee9a45c436cf630e17025593cf5aaa78..90ae593ca2c153091044674c77e026ca
- 'outputs': [ '<(opensslconfig_internal)', ],
- 'action': [
- 'python', 'tools/copyfile.py',
-- './deps/openssl/openssl/apps/openssl.cnf',
-- '<(obj_dir)/deps/openssl/openssl.cnf',
+- '<(opensslconfig)',
+- '<(opensslconfig_internal)',
- ],
- },
- ],
@@ -51,5 +51,5 @@ index 103178e2ee9a45c436cf630e17025593cf5aaa78..90ae593ca2c153091044674c77e026ca
],
}, # node_core_target_name
--
-2.35.1
+2.36.1
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 3995677..a43085f 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 649a983dc168ff0f7a7157e0e9f5da5cf146837c Mon Sep 17 00:00:00 2001
+From 19844592f46490cd7cff5f58aca73a64a992fb42 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -15,10 +15,10 @@ Signed-off-by: rpm-build <rpm-build>
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/configure.py b/configure.py
-index 187c381660b369bf4d6f9ce7bfddcf23c5b6c46a..3b948a0ffac6653aad12dfb5565ac703adba5f2a 100755
+index e53a83f332ffd60cf7b6fe7e079470a52a43a8de..efdda6afce33201976e3811907bf4d7e3c2d4302 100755
--- a/configure.py
+++ b/configure.py
-@@ -729,6 +729,12 @@ parser.add_argument('--shared',
+@@ -735,6 +735,12 @@ parser.add_argument('--shared',
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
@@ -31,7 +31,7 @@ index 187c381660b369bf4d6f9ce7bfddcf23c5b6c46a..3b948a0ffac6653aad12dfb5565ac703
parser.add_argument('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
-@@ -1366,6 +1372,7 @@ def configure_node(o):
+@@ -1372,6 +1378,7 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
o['variables']['node_shared'] = b(options.shared)
@@ -53,5 +53,5 @@ index 47e9d8bd7a1ae596a7c6e1d5917f538e81533726..c1afbbf0827ced2e166668e793250468
action(['out/Release/node.d'], 'lib/dtrace/node.d')
--
-2.35.1
+2.36.1
diff --git a/nodejs.spec b/nodejs.spec
index c4c4cbc..f60ce4f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -40,7 +40,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 4
+%global baserelease %autorelease
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -51,7 +51,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 4
+%global nodejs_minor 5
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -80,7 +80,7 @@
%global c_ares_version 1.18.1
# llhttp - from deps/llhttp/include/llhttp.h
-%global llhttp_version 6.0.6
+%global llhttp_version 6.0.7
# libuv - from deps/uv/include/uv/version.h
%global libuv_version 1.43.0
@@ -126,7 +126,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
+Release: %{nodejs_release}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -286,9 +286,9 @@ Requires: (nodejs-packaging if rpm-build)
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?fedora} || 0%{?rhel} >= 8
-Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
+Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}
%endif
-Conflicts: npm < %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
+Conflicts: npm < %{npm_epoch}:%{npm_version}-%{npm_release}
%description
@@ -302,8 +302,8 @@ real-time applications that run across distributed devices.
%package devel
Summary: JavaScript runtime - development headers
Group: Development/Languages
-Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}
+Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}
Requires: openssl-devel%{?_isa}
%if !%{with bundled_zlib}
Requires: zlib-devel%{?_isa}
@@ -334,8 +334,8 @@ Provides: libv8_libbase.so.%{v8_major} = %{v8_epoch}:%{v8_version}
Provides: libv8_libplatform.so.%{v8_major} = %{v8_epoch}:%{v8_version}
%endif
-Provides: v8 = %{v8_epoch}:%{v8_version}-%{nodejs_release}%{?dist}
-Provides: v8%{?_isa} = %{v8_epoch}:%{v8_version}-%{nodejs_release}%{?dist}
+Provides: v8 = %{v8_epoch}:%{v8_version}-%{nodejs_release}
+Provides: v8%{?_isa} = %{v8_epoch}:%{v8_version}-%{nodejs_release}
Obsoletes: v8 < 1:6.7.17-10
%description libs
@@ -344,7 +344,7 @@ Libraries to support Node.js and provide stable v8 interfaces.
%package full-i18n
Summary: Non-English locale data for Node.js
-Requires: %{name}%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: %{name}%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
%description full-i18n
Optional data files to provide full-icu support for Node.js. Remove this
@@ -355,9 +355,9 @@ package to save space if non-English locales are not needed.
Summary: v8 - development headers
Epoch: %{v8_epoch}
Version: %{v8_version}
-Release: %{v8_release}%{?dist}
-Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Requires: %{name}-libs%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Release: %{v8_release}
+Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
+Requires: %{name}-libs%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
Conflicts: v8-314-devel
%description -n v8-devel
@@ -368,15 +368,15 @@ Development headers for the v8 runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}
+Release: %{npm_release}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
# now.
Obsoletes: npm < 0:3.5.4-6
-Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
%if 0%{?fedora} || 0%{?rhel} >= 8
-Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
%endif
# Do not add epoch to the virtual NPM provides or it will break
@@ -396,8 +396,8 @@ BuildArch: noarch
# We don't require that the main package be installed to
# use the docs, but if it is installed, make sure the
# version always matches
-Conflicts: %{name} > %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Conflicts: %{name} < %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Conflicts: %{name} > %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
+Conflicts: %{name} < %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}
%description docs
The API documentation for the Node.js JavaScript runtime.
diff --git a/sources b/sources
index 5ca3338..2c11748 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.4.0-stripped.tar.gz) = 19d9446773ff1039ba7f08d6ed22e9bca14b889345a0779d089a4b42e003c91433e97dd0029588a1295b1d995a64ccb99d0b414259f2fe1b0537751874e2c1d1
+SHA512 (node-v18.5.0-stripped.tar.gz) = 96e22871ba2cdc4a44bd00f0a157a1355cf9997023ca2e0b9535c7e6628ab64d73eaed13b5b8cc1c9844a25117868ff69b28b0681695d8944c3c860cabd6d1d9
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit 690f39ef062ea9a1a0a1b159f63865e8c422135f
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jun 27 17:02:54 2022 -0400
Re-enable LTO builds
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 17cf28c..c4c4cbc 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -40,7 +40,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 4
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -474,7 +474,8 @@ export LDFLAGS="%{build_ldflags}"
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
--without-corepack \
- --openssl-use-def-ca-store
+ --openssl-use-def-ca-store \
+ --enable-lto
%make_build BUILDTYPE=Release
commit f015d078409207dec9bdf5eac716009f729f5d60
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jun 27 17:02:42 2022 -0400
Switch to %autochangelog
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/changelog b/changelog
new file mode 100644
index 0000000..31e8308
--- /dev/null
+++ b/changelog
@@ -0,0 +1,25 @@
+* Fri Jun 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.4.0-1
+- Update to Node.js 18.4.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
+
+* Thu Jun 09 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-2
+- Fix conflict between x86_64 and i686 installs of nodejs-devel
+
+* Tue Jun 07 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-1
+- Update to Node.js 18.3.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
+
+* Tue May 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.2.0-1
+- Update to Node.js 18.2.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
+
+* Fri May 06 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.1.0-2
+- Fix incorrect epoch in v8-devel dependency
+
+* Thu May 05 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.1.0-1
+- Update to Node.js 18.1.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
+
+* Thu Apr 28 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.0.0-1
+- First release of Node.js 18.x
+
diff --git a/nodejs.spec b/nodejs.spec
index dacf662..17cf28c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -695,28 +695,4 @@ end
%changelog
-* Fri Jun 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.4.0-1
-- Update to Node.js 18.4.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
-
-* Thu Jun 09 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-2
-- Fix conflict between x86_64 and i686 installs of nodejs-devel
-
-* Tue Jun 07 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-1
-- Update to Node.js 18.3.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
-
-* Tue May 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.2.0-1
-- Update to Node.js 18.2.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
-
-* Fri May 06 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.1.0-2
-- Fix incorrect epoch in v8-devel dependency
-
-* Thu May 05 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.1.0-1
-- Update to Node.js 18.1.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
-
-* Thu Apr 28 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.0.0-1
-- First release of Node.js 18.x
-
+%autochangelog
commit 90c93808a15f7a894eb07bca3ce3c633856ea234
Merge: 50d0647 da3f7c9
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Jun 17 09:13:44 2022 -0400
Merge branch 'rawhide' into 18
diff --cc nodejs.spec
index 4572079,b212905..dacf662
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -691,10 -695,9 +695,13 @@@ en
%changelog
+* Fri Jun 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.4.0-1
+- Update to Node.js 18.4.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
+
+ * Thu Jun 09 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-2
+ - Fix conflict between x86_64 and i686 installs of nodejs-devel
+
* Tue Jun 07 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-1
- Update to Node.js 18.3.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
commit 50d0647ce76ca9761f7ab2d68994eba5409d2a05
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Jun 17 09:11:38 2022 -0400
Update to Node.js 18.4.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 1e82eb3..41c04ca 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 39ca2cee62be0561438f8b422662304458e0d16f Mon Sep 17 00:00:00 2001
+From b9f76742bb9120ec9ee84dd5833eaf885be8766a Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 83599a9..3995677 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From b8aad880b037f42d1f5f26e91277dc58f377d01c Mon Sep 17 00:00:00 2001
+From 649a983dc168ff0f7a7157e0e9f5da5cf146837c Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
diff --git a/nodejs.spec b/nodejs.spec
index ae0c979..4572079 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -51,7 +51,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 3
+%global nodejs_minor 4
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -109,7 +109,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.11.0
+%global npm_version 8.12.1
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -691,6 +691,10 @@ end
%changelog
+* Fri Jun 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.4.0-1
+- Update to Node.js 18.4.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
+
* Tue Jun 07 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-1
- Update to Node.js 18.3.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
diff --git a/sources b/sources
index cd8949f..5ca3338 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.3.0-stripped.tar.gz) = 0ced827fe07b4035ef07f4cfcac35d702b3e671bcbe9099a0952b58d6d6b2c249654a878153d66f7500e194e4087e481e36c4809240c874689fccd21ab2b10e6
+SHA512 (node-v18.4.0-stripped.tar.gz) = 19d9446773ff1039ba7f08d6ed22e9bca14b889345a0779d089a4b42e003c91433e97dd0029588a1295b1d995a64ccb99d0b414259f2fe1b0537751874e2c1d1
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit da3f7c98fb36600a86f0c3d3e418c521e282b735
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Jun 9 12:45:46 2022 -0400
Fix conflict between x86_64 and i686 installs of nodejs-devel
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index ae0c979..b212905 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -40,7 +40,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -523,6 +523,10 @@ rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
mkdir -p %{buildroot}%{_datadir}/node
cp -p common.gypi %{buildroot}%{_datadir}/node
+# The config.gypi file is platform-dependent, so rename it to not conflict
+mv %{buildroot}%{_includedir}/node/config.gypi \
+ %{buildroot}%{_includedir}/node/config-%{_arch}.gypi
+
# Install the GDB init tool into the documentation directory
mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
@@ -691,6 +695,9 @@ end
%changelog
+* Thu Jun 09 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-2
+- Fix conflict between x86_64 and i686 installs of nodejs-devel
+
* Tue Jun 07 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-1
- Update to Node.js 18.3.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
commit e011b119efecc1405de67bef23ab5d52dad2e413
Merge: 003fbcb 9a9cbc5
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jun 7 14:15:55 2022 -0400
Merge branch 'rawhide' into 18
diff --cc nodejs.spec
index 0868514,c48c749..ae0c979
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -691,20 -683,158 +691,21 @@@ en
%changelog
-* Fri May 06 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.15.0-3
-- Fix incorrect epoch in v8-devel dependency
-
-* Fri Apr 29 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.15.0-2
-- Fix file conflicts.
-- Make dependency on nodejs-libs more strict.
-
-* Wed Apr 27 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.15.0-1
-- Update to Node.js 16.15.0
-- Stop carrying full ICU sources now that the binary data is available
-- Properly version the v8 virtual Provides
-- Bundle nghttp2
-
-* Mon Apr 04 2022 Jan Staněk jstanek@redhat.com - 16.14.1-2
-- Unify configure.py calls into single command
-- Refactor bootstrap-related parts
-- Decouple dependency bundling from bootstrapping
-
-* Thu Mar 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.1-1
-- Update to Node.js 16.14.1
-- Drop corepack
-
-* Thu Mar 03 2022 Zuzana Svetlikova zsvetlik@redhat.com - 1:16.14.0-3
-- Build without corepack
-
-* Wed Feb 09 2022 Zuzana Svetlikova zsvetlik@redhat.com - 1:16.14.0-2
-- Replace explicit version of npm in %%check with variable and make build fail
- if it doesn't match
-
-* Tue Feb 08 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.0-1
-- Update to Node.js 16.14.0
-
-* Thu Feb 03 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-8
-- Update npm to 8.3.1 (CVE-2021-43616)
-
-* Wed Feb 02 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-7
-- Fix incorrect version Provides: for npm (bz#2049873)
-
-* Mon Jan 31 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-6
-- Rebuild for more architectures
-
-* Mon Jan 31 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-5
-- Tweak some dependencies on EPEL 7 (bz2048589)
-- Add Provides: bundled(zlib)
-
-* Wed Jan 19 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-3
-- Bundle zlib on EPEL 7
-
-* Mon Jan 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-2
-- Add support for building on EPEL 7
-
-* Tue Jan 11 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-1
-- Improper handling of URI Subject Alternative Names (Medium)(CVE-2021-44531)
-- Certificate Verification Bypass via String Injection (Medium)(CVE-2021-44532)
-- Incorrect handling of certificate subject and issuer fields (Medium)(CVE-2021-44533)
-- Prototype pollution via `console.table` properties (Low)(CVE-2022-21824)
-
-* Thu Dec 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.1-2
-- Enable building for EPEL 8 modules
+* Tue Jun 07 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-1
+- Update to Node.js 18.3.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
-* Thu Dec 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.1-1
-- Update to 16.13.1
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+* Tue May 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.2.0-1
+- Update to Node.js 18.2.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
-* Thu Nov 25 2021 Honza Horak hhorak@redhat.com - 1:16.13.0-3
-- Make sure binary node-gyp is executable
- Resolves: #2026615
-
-* Mon Nov 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-1
-- Update to 16.13.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- Add support for epel8
-
-* Mon Oct 25 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.12.0-1
-- Update to 16.12.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Wed Oct 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.11.1-1
-- Update to 16.11.1
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Thu Sep 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.10.0-1
-- Update to 16.10.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-4
-- Correct the bad merge of corepack fix
-
-* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-3
-- Drop auto-dependency on PowerShell introduced by corepack
-
-* Tue Sep 14 2021 Sahana Prasad sahana@redhat.com - 1:16.9.1-2
-- Rebuilt with OpenSSL 3.0.0
-
-* Mon Sep 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-1
-- Update to 16.9.1
-- Add experimental 'corepack' tool
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Tue Aug 31 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.8.0-1
-- Update to 16.8.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Wed Aug 11 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.2-1
-- Update to 16.6.2
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Tue Aug 03 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.1-1
-- Update to 16.6.1
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- Fixes v8 regression introduced in 16.6.0
-
-* Mon Aug 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.0-1
-- Update to 16.6.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Thu Jul 22 2021 Fedora Release Engineering releng@fedoraproject.org - 1:16.5.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Tue Jul 20 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.5.0-1
-- Update to 16.5.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Fri Jul 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.1-2
-- Re-add support for v8 development headers
-
-* Thu Jul 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.1-1
-- Update to 16.4.1
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Wed Jun 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.0-1
-- Update to 16.4.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Fri Jun 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.3.0-1
-- Update to 16.3.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-
-* Wed May 19 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.2.0-1
-- Update to 16.2.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- Fix changelog version numbers
+* Fri May 06 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.1.0-2
+- Fix incorrect epoch in v8-devel dependency
-* Tue May 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.1.0-1
-- Update to 16.1.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- Drop upstreamed patch
+* Thu May 05 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.1.0-1
+- Update to Node.js 18.1.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
-* Thu Apr 29 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.0.0-1
-- First release of Node.js 16.x
+* Thu Apr 28 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.0.0-1
+- First release of Node.js 18.x
+
commit 003fbcb1e263b1bf8d201f5ae895d48a26e6857e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jun 7 14:13:18 2022 -0400
Build 18.x for F37
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/package.cfg b/package.cfg
index 3b874bb..ec98f0b 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = rawhide f36 f35 epel7
+targets = rawhide
commit 40ffbd5092db109de1601b2f2f767a11d58fb418
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jun 7 13:24:16 2022 -0400
Update to Node.js 18.3.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 459e673..1e82eb3 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,7 +1,7 @@
-From 3ac2a9a2ef115a3375162f2abfd26d5cf3f2ee98 Mon Sep 17 00:00:00 2001
+From 39ca2cee62be0561438f8b422662304458e0d16f Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH] Disable running gyp on shared deps
+Subject: [PATCH 1/2] Disable running gyp on shared deps
Signed-off-by: rpm-build <rpm-build>
---
@@ -10,7 +10,7 @@ Signed-off-by: rpm-build <rpm-build>
2 files changed, 1 insertion(+), 18 deletions(-)
diff --git a/Makefile b/Makefile
-index 4aace77..0bad864 100644
+index 9f7ab7129d06471760c707a4bf7764cb2bdff862..78f91cf7f57b0de32961b1d491edf28a4ad375d2 100644
--- a/Makefile
+++ b/Makefile
@@ -147,7 +147,7 @@ with-code-cache test-code-cache:
@@ -23,10 +23,10 @@ index 4aace77..0bad864 100644
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
diff --git a/node.gyp b/node.gyp
-index 86fe9a6..bfa5093 100644
+index 103178e2ee9a45c436cf630e17025593cf5aaa78..90ae593ca2c153091044674c77e026cad1370ccf 100644
--- a/node.gyp
+++ b/node.gyp
-@@ -449,23 +449,6 @@
+@@ -423,23 +423,6 @@
],
},
],
@@ -51,5 +51,5 @@ index 86fe9a6..bfa5093 100644
],
}, # node_core_target_name
--
-2.36.1
+2.35.1
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 149d6bc..83599a9 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From 6d789d036cf7d997b335d07f19b60c95577ea6e2 Mon Sep 17 00:00:00 2001
+From b8aad880b037f42d1f5f26e91277dc58f377d01c Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH] Install both binaries and use libdir.
+Subject: [PATCH 2/2] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -15,7 +15,7 @@ Signed-off-by: rpm-build <rpm-build>
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/configure.py b/configure.py
-index 17ff53e..ad952f6 100755
+index 187c381660b369bf4d6f9ce7bfddcf23c5b6c46a..3b948a0ffac6653aad12dfb5565ac703adba5f2a 100755
--- a/configure.py
+++ b/configure.py
@@ -729,6 +729,12 @@ parser.add_argument('--shared',
@@ -40,7 +40,7 @@ index 17ff53e..ad952f6 100755
if options.dest_os == 'android':
diff --git a/tools/install.py b/tools/install.py
-index 47e9d8b..c1afbbf 100755
+index 47e9d8bd7a1ae596a7c6e1d5917f538e81533726..c1afbbf0827ced2e166668e7932504687009bb9e 100755
--- a/tools/install.py
+++ b/tools/install.py
@@ -143,7 +143,7 @@ def files(action):
@@ -53,5 +53,5 @@ index 47e9d8b..c1afbbf 100755
action(['out/Release/node.d'], 'lib/dtrace/node.d')
--
-2.36.1
+2.35.1
diff --git a/nodejs.spec b/nodejs.spec
index a3ca0b5..0868514 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -51,7 +51,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 2
+%global nodejs_minor 3
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -66,9 +66,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 10
-%global v8_minor 1
-%global v8_build 124
-%global v8_patch 8
+%global v8_minor 2
+%global v8_build 154
+%global v8_patch 4
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
@@ -109,7 +109,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.9.0
+%global npm_version 8.11.0
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -691,6 +691,10 @@ end
%changelog
+* Tue Jun 07 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.3.0-1
+- Update to Node.js 18.3.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
+
* Tue May 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.2.0-1
- Update to Node.js 18.2.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
diff --git a/sources b/sources
index e4960a9..cd8949f 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.2.0-stripped.tar.gz) = 1aa760627b56f0da7f4357d7e726cfa0abb66639716717636522dbfa85a8793c15eb3bfea9854b0f80a5e84b68c44ec443beb8d80db4dcbfb1e446331378aa23
+SHA512 (node-v18.3.0-stripped.tar.gz) = 0ced827fe07b4035ef07f4cfcac35d702b3e671bcbe9099a0952b58d6d6b2c249654a878153d66f7500e194e4087e481e36c4809240c874689fccd21ab2b10e6
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit cfd68734933cdf1db421cba48bb56f44844156ca
Author: Jan Staněk jstanek@redhat.com
Date: Tue May 31 13:30:35 2022 +0200
Patch node.gyp in place of leaving OpenSSL bits in place
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 08d39b6..459e673 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,19 +1,19 @@
-From 221a54bccf0c373abe711553e5d5a1887c9650bf Mon Sep 17 00:00:00 2001
+From 3ac2a9a2ef115a3375162f2abfd26d5cf3f2ee98 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH 1/2] Disable running gyp on shared deps
+Subject: [PATCH] Disable running gyp on shared deps
+Signed-off-by: rpm-build <rpm-build>
---
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ Makefile | 2 +-
+ node.gyp | 17 -----------------
+ 2 files changed, 1 insertion(+), 18 deletions(-)
diff --git a/Makefile b/Makefile
-index 4aace77c7c8c63c652755b4e1d03be51eb53131e..0bad86420d64762f2df225aa2e070befd5801612 100644
+index 4aace77..0bad864 100644
--- a/Makefile
+++ b/Makefile
-@@ -145,11 +145,11 @@ endif
- .PHONY: test-code-cache
- with-code-cache test-code-cache:
+@@ -147,7 +147,7 @@ with-code-cache test-code-cache:
$(warning '$@' target is a noop)
out/Makefile: config.gypi common.gypi node.gyp \
@@ -22,8 +22,34 @@ index 4aace77c7c8c63c652755b4e1d03be51eb53131e..0bad86420d64762f2df225aa2e070bef
tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
-
- # node_version.h is listed because the N-API version is taken from there
+diff --git a/node.gyp b/node.gyp
+index 86fe9a6..bfa5093 100644
+--- a/node.gyp
++++ b/node.gyp
+@@ -449,23 +449,6 @@
+ ],
+ },
+ ],
+- }, {
+- 'variables': {
+- 'opensslconfig_internal': '<(obj_dir)/deps/openssl/openssl.cnf',
+- 'opensslconfig': './deps/openssl/openssl/apps/openssl.cnf',
+- },
+- 'actions': [
+- {
+- 'action_name': 'reset_openssl_cnf',
+- 'inputs': [ '<(opensslconfig)', ],
+- 'outputs': [ '<(opensslconfig_internal)', ],
+- 'action': [
+- 'python', 'tools/copyfile.py',
+- './deps/openssl/openssl/apps/openssl.cnf',
+- '<(obj_dir)/deps/openssl/openssl.cnf',
+- ],
+- },
+- ],
+ }],
+ ],
+ }, # node_core_target_name
--
-2.35.1
+2.36.1
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 02355d3..149d6bc 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,25 +1,24 @@
-From 9f8cd8f9ef8a9466e7d315cdf05fb24eab2678b8 Mon Sep 17 00:00:00 2001
+From 6d789d036cf7d997b335d07f19b60c95577ea6e2 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 2/2] Install both binaries and use libdir.
+Subject: [PATCH] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
+Signed-off-by: rpm-build <rpm-build>
---
configure.py | 7 +++++++
tools/install.py | 2 +-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/configure.py b/configure.py
-index 17ff53ef645493c8090e809b021e1127a07921cd..ad952f6a063d433a76065162baccdca2bab71fbf 100755
+index 17ff53e..ad952f6 100755
--- a/configure.py
+++ b/configure.py
-@@ -727,10 +727,16 @@ parser.add_argument('--shared',
- dest='shared',
- default=None,
+@@ -729,6 +729,12 @@ parser.add_argument('--shared',
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
@@ -32,11 +31,7 @@ index 17ff53ef645493c8090e809b021e1127a07921cd..ad952f6a063d433a76065162baccdca2
parser.add_argument('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
- default=False,
- help='do not initialize v8 platform during node.js startup. ' +
-@@ -1364,10 +1370,11 @@ def configure_node(o):
- o['variables']['debug_nghttp2'] = 'false'
-
+@@ -1366,6 +1372,7 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
o['variables']['node_shared'] = b(options.shared)
@@ -44,15 +39,11 @@ index 17ff53ef645493c8090e809b021e1127a07921cd..ad952f6a063d433a76065162baccdca2
node_module_version = getmoduleversion.get_version()
if options.dest_os == 'android':
- shlib_suffix = 'so'
- elif sys.platform == 'darwin':
diff --git a/tools/install.py b/tools/install.py
-index 47e9d8bd7a1ae596a7c6e1d5917f538e81533726..c1afbbf0827ced2e166668e7932504687009bb9e 100755
+index 47e9d8b..c1afbbf 100755
--- a/tools/install.py
+++ b/tools/install.py
-@@ -141,11 +141,11 @@ def files(action):
- if is_windows:
- action([output_prefix + 'libnode.dll'], 'bin/libnode.dll')
+@@ -143,7 +143,7 @@ def files(action):
action([output_prefix + 'libnode.lib'], 'lib/libnode.lib')
else:
output_lib = 'libnode.' + variables.get('shlib_suffix')
@@ -61,8 +52,6 @@ index 47e9d8bd7a1ae596a7c6e1d5917f538e81533726..c1afbbf0827ced2e166668e793250468
if 'true' == variables.get('node_use_dtrace'):
action(['out/Release/node.d'], 'lib/dtrace/node.d')
- # behave similarly for systemtap
- action(['src/node.stp'], 'share/systemtap/tapset/')
--
-2.35.1
+2.36.1
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index a08d124..645b8c1 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -126,11 +126,9 @@ wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz \
sha256sum -c SHASUMS256.txt --ignore-missing
tar -zxf node-v${version}.tar.gz
-# Exclude problematic OpenSSL bits
+# Remove bundled OpenSSL
# We will link to the system version
-rm -rf node-v${version}/deps/openssl/demos node-v${version}/deps/openssl/test
-# Remove every file except the OpenSSL config files
-find node-v${version}/deps/openssl/ ! -name "*.cnf" -type f -exec rm -f {} ;
+rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
ICU_MAJOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
diff --git a/sources b/sources
index cce7e95..e4960a9 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.2.0-stripped.tar.gz) = 9884b0f878cc9fea819626611b099c3d299b750f43b6792c3787ed1829dc8613d14d7a94f0c917b07eda352f98c5ec6f9191f15a72906daa9687ddc44cc3e82b
+SHA512 (node-v18.2.0-stripped.tar.gz) = 1aa760627b56f0da7f4357d7e726cfa0abb66639716717636522dbfa85a8793c15eb3bfea9854b0f80a5e84b68c44ec443beb8d80db4dcbfb1e446331378aa23
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit cec740c48c5143ed094de52c916575c8609b9b92
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue May 17 14:16:51 2022 -0400
Update to Node.js 18.2.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 97eddab..08d39b6 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From dd952f69bcbf0a9947a0629e44c49003dcb9f77f Mon Sep 17 00:00:00 2001
+From 221a54bccf0c373abe711553e5d5a1887c9650bf Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 688ebc550e9d6677f468bb791b5d06d5507d3ab5..b34b49db53a4b0cb4a3867921f5c6fb71ae34bf1 100644
+index 4aace77c7c8c63c652755b4e1d03be51eb53131e..0bad86420d64762f2df225aa2e070befd5801612 100644
--- a/Makefile
+++ b/Makefile
@@ -145,11 +145,11 @@ endif
@@ -25,5 +25,5 @@ index 688ebc550e9d6677f468bb791b5d06d5507d3ab5..b34b49db53a4b0cb4a3867921f5c6fb7
# node_version.h is listed because the N-API version is taken from there
--
-2.34.1
+2.35.1
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 7536349..02355d3 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From a1c35106e7e9ab3d4a01779079cf9788a2fe777a Mon Sep 17 00:00:00 2001
+From 9f8cd8f9ef8a9466e7d315cdf05fb24eab2678b8 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -9,15 +9,15 @@ still providing the normal executable.
Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
---
- configure.py | 7 +++++++
- tools/install.py | 21 +++++++++------------
- 2 files changed, 16 insertions(+), 12 deletions(-)
+ configure.py | 7 +++++++
+ tools/install.py | 2 +-
+ 2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/configure.py b/configure.py
-index 47137d8912dd1439962127a3c1f417eb78572021..c59037a39fcefdfe173d16a7aa9622a32a3c29e7 100755
+index 17ff53ef645493c8090e809b021e1127a07921cd..ad952f6a063d433a76065162baccdca2bab71fbf 100755
--- a/configure.py
+++ b/configure.py
-@@ -731,10 +731,16 @@ parser.add_argument('--shared',
+@@ -727,10 +727,16 @@ parser.add_argument('--shared',
dest='shared',
default=None,
help='compile shared library for embedding node in another project. ' +
@@ -34,7 +34,7 @@ index 47137d8912dd1439962127a3c1f417eb78572021..c59037a39fcefdfe173d16a7aa9622a3
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1332,10 +1338,11 @@ def configure_node(o):
+@@ -1364,10 +1370,11 @@ def configure_node(o):
o['variables']['debug_nghttp2'] = 'false'
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
@@ -47,45 +47,22 @@ index 47137d8912dd1439962127a3c1f417eb78572021..c59037a39fcefdfe173d16a7aa9622a3
shlib_suffix = 'so'
elif sys.platform == 'darwin':
diff --git a/tools/install.py b/tools/install.py
-index eafcb19bf8b29f87c39b0fe7d3c3fd2d175a7b7b..71b5371578711fcc9a1b80069850f0b61bdfebe2 100755
+index 47e9d8bd7a1ae596a7c6e1d5917f538e81533726..c1afbbf0827ced2e166668e7932504687009bb9e 100755
--- a/tools/install.py
+++ b/tools/install.py
-@@ -128,26 +128,23 @@ def subdir_files(path, dest, action):
- for subdir, files_in_path in ret.items():
- action(files_in_path, subdir + '/')
-
- def files(action):
- is_windows = sys.platform == 'win32'
-- output_file = 'node'
- output_prefix = 'out/Release/'
-+ output_libprefix = output_prefix
-
-- if 'false' == variables.get('node_shared'):
-- if is_windows:
-- output_file += '.exe'
-+ if is_windows:
-+ output_bin = 'node.exe'
-+ output_lib = 'node.dll'
- else:
-- if is_windows:
-- output_file += '.dll'
-- else:
-- output_file = 'lib' + output_file + '.' + variables.get('shlib_suffix')
-+ output_bin = 'node'
-+ output_lib = 'libnode.' + variables.get('shlib_suffix')
-
-- if 'false' == variables.get('node_shared'):
-- action([output_prefix + output_file], 'bin/' + output_file)
-- else:
-- action([output_prefix + output_file], 'lib/' + output_file)
-+ action([output_prefix + output_bin], 'bin/' + output_bin)
-+ if 'true' == variables.get('node_shared'):
-+ action([output_libprefix + output_lib], variables.get('libdir') + '/' + output_lib)
-
+@@ -141,11 +141,11 @@ def files(action):
+ if is_windows:
+ action([output_prefix + 'libnode.dll'], 'bin/libnode.dll')
+ action([output_prefix + 'libnode.lib'], 'lib/libnode.lib')
+ else:
+ output_lib = 'libnode.' + variables.get('shlib_suffix')
+- action([output_prefix + output_lib], 'lib/' + output_lib)
++ action([output_prefix + output_lib], variables.get('libdir') + '/' + output_lib)
if 'true' == variables.get('node_use_dtrace'):
action(['out/Release/node.d'], 'lib/dtrace/node.d')
# behave similarly for systemtap
+ action(['src/node.stp'], 'share/systemtap/tapset/')
--
-2.34.1
+2.35.1
diff --git a/nodejs.spec b/nodejs.spec
index af780e3..a3ca0b5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -40,7 +40,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -51,7 +51,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 1
+%global nodejs_minor 2
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -80,7 +80,7 @@
%global c_ares_version 1.18.1
# llhttp - from deps/llhttp/include/llhttp.h
-%global llhttp_version 6.0.4
+%global llhttp_version 6.0.6
# libuv - from deps/uv/include/uv/version.h
%global libuv_version 1.43.0
@@ -109,7 +109,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.8.0
+%global npm_version 8.9.0
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -532,13 +532,13 @@ mkdir -p %{buildroot}%{_mandir} \
cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
-ln -sf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
+ln -srf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
# Install Gatsby HTML documentation to %%{_pkgdocdir}
cp -pr deps/npm/docs %{buildroot}%{_pkgdocdir}/npm/
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/docs
-ln -sf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
+ln -srf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
# Node tries to install some python files into a documentation directory
# (and not the proper one). Remove them for now until we figure out what to
@@ -565,7 +565,7 @@ cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
# NPM upstream expects it to be in /usr/etc/npmrc, so we'll put a symlink here
# This is done in the interests of keeping /usr read-only.
mkdir -p %{buildroot}%{_prefix}/etc
-ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
+ln -rs %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
# Install the full-icu data files
mkdir -p %{buildroot}%{icudatadir}
@@ -691,6 +691,10 @@ end
%changelog
+* Tue May 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.2.0-1
+- Update to Node.js 18.2.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
+
* Fri May 06 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.1.0-2
- Fix incorrect epoch in v8-devel dependency
diff --git a/sources b/sources
index 3878b4d..cce7e95 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.1.0-stripped.tar.gz) = 0cc8bf11d9b8fabadc1e5ef6f74f793a039345c1a137c8472264d22591de4a7f8b5dfd9c47b523a534222c6a38b8f3bdb5a22ff8f4a1bd72a86e2c4bf9c67b4e
+SHA512 (node-v18.2.0-stripped.tar.gz) = 9884b0f878cc9fea819626611b099c3d299b750f43b6792c3787ed1829dc8613d14d7a94f0c917b07eda352f98c5ec6f9191f15a72906daa9687ddc44cc3e82b
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit 17860dee0aaaae2cfb1f30c77f8a2df085b14f2f
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue May 17 14:12:32 2022 -0400
source-script: Install missing packages
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index 48832ca..a08d124 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -100,6 +100,12 @@ assign_positional_args 1 "${_positionals[@]}"
### END OF CODE GENERATED BY Argbash (sortof) ### ])
# [ <-- needed because of Argbash
+packages=("jq" "wget" "tar" "fedpkg" "grep" "sed")
+
+rpm -q ${packages[@]} >/dev/null
+if [ $? -ne 0 ]; then
+ sudo dnf -y install ${packages[@]}
+fi
set -e
commit 9a9cbc53e1a133053b6fbb81dffdcd747c3af9d7
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue May 17 14:12:32 2022 -0400
source-script: Install missing packages
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index b1295ca..a71ef37 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -100,6 +100,12 @@ assign_positional_args 1 "${_positionals[@]}"
### END OF CODE GENERATED BY Argbash (sortof) ### ])
# [ <-- needed because of Argbash
+packages=("jq" "wget" "tar" "fedpkg" "grep" "sed")
+
+rpm -q ${packages[@]} >/dev/null
+if [ $? -ne 0 ]; then
+ sudo dnf -y install ${packages[@]}
+fi
set -e
commit bb35fed7e20af881e3ff1debd3d045831009e703
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri May 6 09:24:02 2022 -0400
Fix incorrect epoch in v8-devel dependency
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index ca198f7..af780e3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -40,7 +40,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -357,7 +357,7 @@ Epoch: %{v8_epoch}
Version: %{v8_version}
Release: %{v8_release}%{?dist}
Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: %{name}-libs%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Conflicts: v8-314-devel
%description -n v8-devel
@@ -691,7 +691,10 @@ end
%changelog
-* Thu May 05 2022 Stephen Gallagher sgallagh@redhat.com - %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}-%{baserelease}
+* Fri May 06 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.1.0-2
+- Fix incorrect epoch in v8-devel dependency
+
+* Thu May 05 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.1.0-1
- Update to Node.js 18.1.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
commit 42ee482d060ac91bb54213500914b1b78e2351a0
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri May 6 09:17:58 2022 -0400
Fix incorrect epoch in v8-devel dependency
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index bbf0798..c48c749 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -40,7 +40,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -349,7 +349,7 @@ Epoch: %{v8_epoch}
Version: %{v8_version}
Release: %{v8_release}%{?dist}
Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: %{name}-libs%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Conflicts: v8-314-devel
%description -n v8-devel
@@ -683,6 +683,9 @@ end
%changelog
+* Fri May 06 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.15.0-3
+- Fix incorrect epoch in v8-devel dependency
+
* Fri Apr 29 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.15.0-2
- Fix file conflicts.
- Make dependency on nodejs-libs more strict.
commit 475401441adbc85b03eab3f3c08eefb120aad300
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu May 5 15:54:17 2022 -0400
Update to Node.js 18.1.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 724483d..ca198f7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -51,7 +51,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 18
-%global nodejs_minor 0
+%global nodejs_minor 1
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -109,7 +109,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.6.0
+%global npm_version 8.8.0
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -691,5 +691,9 @@ end
%changelog
+* Thu May 05 2022 Stephen Gallagher sgallagh@redhat.com - %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}-%{baserelease}
+- Update to Node.js 18.1.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V18.md#1...
+
* Thu Apr 28 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.0.0-1
- First release of Node.js 18.x
diff --git a/sources b/sources
index 0d565fb..3878b4d 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v18.0.0-stripped.tar.gz) = 988dc800a3fcfb2b48936a08e791f21f028494389b74af5192797476ed5b6c55232cc3b7ef7750c61a5c9f573f33e9ed7c9008bcc5e2245924165d833bed28a5
+SHA512 (node-v18.1.0-stripped.tar.gz) = 0cc8bf11d9b8fabadc1e5ef6f74f793a039345c1a137c8472264d22591de4a7f8b5dfd9c47b523a534222c6a38b8f3bdb5a22ff8f4a1bd72a86e2c4bf9c67b4e
SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit 052736ba797453dbada5a87e0f9544e0255d6742
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Apr 29 10:28:43 2022 -0400
Fix file conflicts
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 4f14ffb..bbf0798 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -40,7 +40,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -304,6 +304,9 @@ Requires: nodejs-packaging
Requires: libuv-devel%{?_isa}
%endif
+# Make it conflict with any other version of nodejs-devel
+Conflicts: %{name}-devel
+
%description devel
Development headers for the Node.js JavaScript runtime.
@@ -680,6 +683,10 @@ end
%changelog
+* Fri Apr 29 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.15.0-2
+- Fix file conflicts.
+- Make dependency on nodejs-libs more strict.
+
* Wed Apr 27 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.15.0-1
- Update to Node.js 16.15.0
- Stop carrying full ICU sources now that the binary data is available
commit ebd646b74aa6c41cfa1ba073c2877f4e1bf833ff
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Apr 29 10:20:43 2022 -0400
-devel packages should explicitly depend on -libs
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 5a69136..4f14ffb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -292,6 +292,7 @@ real-time applications that run across distributed devices.
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: openssl-devel%{?_isa}
%if !%{with bundled_zlib}
Requires: zlib-devel%{?_isa}
@@ -345,6 +346,7 @@ Epoch: %{v8_epoch}
Version: %{v8_version}
Release: %{v8_release}%{?dist}
Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Conflicts: v8-314-devel
%description -n v8-devel
commit b4aea5cfc6bd13b549581906bf049b708c9c506e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Apr 29 10:20:43 2022 -0400
-devel packages should explicitly depend on -libs
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index e10cef8..724483d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -303,6 +303,7 @@ real-time applications that run across distributed devices.
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: openssl-devel%{?_isa}
%if !%{with bundled_zlib}
Requires: zlib-devel%{?_isa}
@@ -356,6 +357,7 @@ Epoch: %{v8_epoch}
Version: %{v8_version}
Release: %{v8_release}%{?dist}
Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: %{name}-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Conflicts: v8-314-devel
%description -n v8-devel
commit 003ed115127a767804d7848e5b6503d4c38509ba
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Apr 29 09:32:23 2022 -0400
Fix reversed conditional for OpenSSL
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 7443439..e10cef8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -209,7 +209,7 @@ Requires: openssl11 >= %{openssl11_minimum}
%global ssl_configure --shared-openssl --shared-openssl-includes=%{_includedir}/openssl11 --shared-openssl-libpath=%{_libdir}/openssl11
%else
-%if 0%{?fedora} && 0%{?fedora} < 36
+%if 0%{?fedora} >= 36
BuildRequires: openssl >= %{openssl30_minimum}
BuildRequires: openssl-devel >= %{openssl30_minimum}
%global openssl_fips_configure --openssl-is-fips
commit 6a5af18121b7533eb6993d9db7052812207914bf
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Apr 28 11:22:34 2022 -0400
First release of 18.0.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index b1295ca..48832ca 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -119,7 +119,12 @@ wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz \
http://nodejs.org/dist/v$%7Bversion%7D/SHASUMS256.txt
sha256sum -c SHASUMS256.txt --ignore-missing
tar -zxf node-v${version}.tar.gz
-rm -rf node-v${version}/deps/openssl
+
+# Exclude problematic OpenSSL bits
+# We will link to the system version
+rm -rf node-v${version}/deps/openssl/demos node-v${version}/deps/openssl/test
+# Remove every file except the OpenSSL config files
+find node-v${version}/deps/openssl/ ! -name "*.cnf" -type f -exec rm -f {} ;
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
ICU_MAJOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
diff --git a/nodejs.spec b/nodejs.spec
index 5a69136..7443439 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -50,12 +50,12 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 16
-%global nodejs_minor 15
+%global nodejs_major 18
+%global nodejs_minor 0
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
-%global nodejs_soversion 93
+%global nodejs_soversion 108
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release %{baserelease}
@@ -65,10 +65,10 @@
# v8 - from deps/v8/include/v8-version.h
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
-%global v8_major 9
-%global v8_minor 4
-%global v8_build 146
-%global v8_patch 24
+%global v8_major 10
+%global v8_minor 1
+%global v8_build 124
+%global v8_patch 8
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
@@ -89,7 +89,7 @@
%global nghttp2_version 1.47.0
# ICU - from tools/icu/current_ver.dep
-%global icu_major 70
+%global icu_major 71
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
@@ -99,7 +99,8 @@
# OpenSSL minimum version
-%global openssl_minimum 1:1.1.1
+%global openssl11_minimum 1:1.1.1
+%global openssl30_minimum 1:3.0.2
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
@@ -108,7 +109,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.5.5
+%global npm_version 8.6.0
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -201,14 +202,24 @@ Provides: bundled(nghttp2) = %{nghttp2_version}
# provide releases for it.
Provides: bundled(llhttp) = %{llhttp_version}
+
%if 0%{?rhel} && 0%{?rhel} < 8
-BuildRequires: openssl11-devel >= %{openssl_minimum}
-Requires: openssl11 >= %{openssl_minimum}
+BuildRequires: openssl11-devel >= %{openssl11_minimum}
+Requires: openssl11 >= %{openssl11_minimum}
%global ssl_configure --shared-openssl --shared-openssl-includes=%{_includedir}/openssl11 --shared-openssl-libpath=%{_libdir}/openssl11
%else
-BuildRequires: openssl-devel >= %{openssl_minimum}
-Requires: openssl >= %{openssl_minimum}
-%global ssl_configure --shared-openssl
+
+%if 0%{?fedora} && 0%{?fedora} < 36
+BuildRequires: openssl >= %{openssl30_minimum}
+BuildRequires: openssl-devel >= %{openssl30_minimum}
+%global openssl_fips_configure --openssl-is-fips
+%else
+Requires: openssl >= %{openssl11_minimum}
+BuildRequires: openssl-devel >= %{openssl11_minimum}
+%global openssl_fips_configure %{nil}
+%endif
+
+%global ssl_configure --shared-openssl %{openssl_fips_configure}
%endif
# we need the system certificate store
@@ -678,151 +689,5 @@ end
%changelog
-* Wed Apr 27 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.15.0-1
-- Update to Node.js 16.15.0
-- Stop carrying full ICU sources now that the binary data is available
-- Properly version the v8 virtual Provides
-- Bundle nghttp2
-
-* Mon Apr 04 2022 Jan Staněk jstanek@redhat.com - 16.14.1-2
-- Unify configure.py calls into single command
-- Refactor bootstrap-related parts
-- Decouple dependency bundling from bootstrapping
-
-* Thu Mar 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.1-1
-- Update to Node.js 16.14.1
-- Drop corepack
-
-* Thu Mar 03 2022 Zuzana Svetlikova zsvetlik@redhat.com - 1:16.14.0-3
-- Build without corepack
-
-* Wed Feb 09 2022 Zuzana Svetlikova zsvetlik@redhat.com - 1:16.14.0-2
-- Replace explicit version of npm in %%check with variable and make build fail
- if it doesn't match
-
-* Tue Feb 08 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.0-1
-- Update to Node.js 16.14.0
-
-* Thu Feb 03 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-8
-- Update npm to 8.3.1 (CVE-2021-43616)
-
-* Wed Feb 02 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-7
-- Fix incorrect version Provides: for npm (bz#2049873)
-
-* Mon Jan 31 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-6
-- Rebuild for more architectures
-
-* Mon Jan 31 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-5
-- Tweak some dependencies on EPEL 7 (bz2048589)
-- Add Provides: bundled(zlib)
-
-* Wed Jan 19 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-3
-- Bundle zlib on EPEL 7
-
-* Mon Jan 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-2
-- Add support for building on EPEL 7
-
-* Tue Jan 11 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-1
-- Improper handling of URI Subject Alternative Names (Medium)(CVE-2021-44531)
-- Certificate Verification Bypass via String Injection (Medium)(CVE-2021-44532)
-- Incorrect handling of certificate subject and issuer fields (Medium)(CVE-2021-44533)
-- Prototype pollution via `console.table` properties (Low)(CVE-2022-21824)
-
-* Thu Dec 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.1-2
-- Enable building for EPEL 8 modules
-
-* Thu Dec 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.1-1
-- Update to 16.13.1
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Thu Nov 25 2021 Honza Horak hhorak@redhat.com - 1:16.13.0-3
-- Make sure binary node-gyp is executable
- Resolves: #2026615
-
-* Mon Nov 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-1
-- Update to 16.13.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- Add support for epel8
-
-* Mon Oct 25 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.12.0-1
-- Update to 16.12.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Wed Oct 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.11.1-1
-- Update to 16.11.1
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Thu Sep 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.10.0-1
-- Update to 16.10.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-4
-- Correct the bad merge of corepack fix
-
-* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-3
-- Drop auto-dependency on PowerShell introduced by corepack
-
-* Tue Sep 14 2021 Sahana Prasad sahana@redhat.com - 1:16.9.1-2
-- Rebuilt with OpenSSL 3.0.0
-
-* Mon Sep 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-1
-- Update to 16.9.1
-- Add experimental 'corepack' tool
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Tue Aug 31 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.8.0-1
-- Update to 16.8.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Wed Aug 11 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.2-1
-- Update to 16.6.2
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Tue Aug 03 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.1-1
-- Update to 16.6.1
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- Fixes v8 regression introduced in 16.6.0
-
-* Mon Aug 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.0-1
-- Update to 16.6.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Thu Jul 22 2021 Fedora Release Engineering releng@fedoraproject.org - 1:16.5.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
-
-* Tue Jul 20 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.5.0-1
-- Update to 16.5.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Fri Jul 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.1-2
-- Re-add support for v8 development headers
-
-* Thu Jul 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.1-1
-- Update to 16.4.1
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Wed Jun 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.0-1
-- Update to 16.4.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-* Fri Jun 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.3.0-1
-- Update to 16.3.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
-
-* Wed May 19 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.2.0-1
-- Update to 16.2.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- Fix changelog version numbers
-
-* Tue May 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.1.0-1
-- Update to 16.1.0
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- Drop upstreamed patch
-
-* Thu Apr 29 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.0.0-1
-- First release of Node.js 16.x
-
+* Thu Apr 28 2022 Stephen Gallagher sgallagh@redhat.com - 1:18.0.0-1
+- First release of Node.js 18.x
diff --git a/sources b/sources
index f466879..0d565fb 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-SHA512 (node-v16.15.0-stripped.tar.gz) = 0621c917d5144b6cfa845654019981c093b8f79e7695ee233474c37ab524bceaa50fb7e82afd8f6337db505a55e6ba407e2984a91e84ff42380366022e1f059c
-SHA512 (icu4c-70_1-data-bin-b.zip) = eff9b41f1df4fe74e13bc216c62a8eab735622e3aa4e0b9c925b61f55294a002238a0022e1579197170d0345de6e877220b04b62d2010796f4ef1fbb2c17ea92
-SHA512 (icu4c-70_1-data-bin-l.zip) = 041ff3480566330d043d9ddcd31e8851e875183d158ea3ce625583b4a9d96166497a9eedc0e72e2f7a3abc3a9110a0372546151b264ff4d1623215aab33552f5
+SHA512 (node-v18.0.0-stripped.tar.gz) = 988dc800a3fcfb2b48936a08e791f21f028494389b74af5192797476ed5b6c55232cc3b7ef7750c61a5c9f573f33e9ed7c9008bcc5e2245924165d833bed28a5
+SHA512 (icu4c-71_1-data-bin-b.zip) = 2bee9b93699c40a53c2e768d4678309fbd49e052e197a80fb76842b4001ee65e548459654ef7e7d154b6289f915fccbcb5b3109edcd61e74f0db289f2bec61fd
+SHA512 (icu4c-71_1-data-bin-l.zip) = 07a299b1cd37cd7b07c5e1a7c6871c0dbbeabb2dec6e11c89237f41e56fd29e1a65725be102b4e4ab722183c02810a5df3ed47c3b9b4a7c14bc4c72ab127a27e
commit c4f58779fae7b6d3219a0b0ec7a8a3f4017fad01
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Apr 28 11:22:57 2022 -0400
nodejs-sources.sh: Fix ICU version detection
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index a8f16ae..b1295ca 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -122,8 +122,8 @@ tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
-ICU_MAJOR=$(jq -r '.[0].url' node-v16.15.0/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
-ICU_MINOR=$(jq -r '.[0].url' node-v16.15.0/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\2/g')
+ICU_MAJOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
+ICU_MINOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\2/g')
# Download the ICU binary data files
rm -Rf icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
commit a89838326872514d41d9a8ad8cccfa3033338553
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Apr 28 11:22:57 2022 -0400
nodejs-sources.sh: Fix ICU version detection
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-sources.sh b/nodejs-sources.sh
index a8f16ae..b1295ca 100755
--- a/nodejs-sources.sh
+++ b/nodejs-sources.sh
@@ -122,8 +122,8 @@ tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
-ICU_MAJOR=$(jq -r '.[0].url' node-v16.15.0/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
-ICU_MINOR=$(jq -r '.[0].url' node-v16.15.0/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\2/g')
+ICU_MAJOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
+ICU_MINOR=$(jq -r '.[0].url' node-v${version}/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\2/g')
# Download the ICU binary data files
rm -Rf icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
commit f36552580f31c8c18535d354f2e97b3e12859b76
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Apr 27 19:03:01 2022 -0400
Update to Node.js 16.15.0
Stop carrying full ICU sources now that the binary data is available
Properly version the v8 virtual Provides
Bundle nghttp2
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 2caefcf..ef92457 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,4 +7,4 @@
/.build-*.log
/noarch
/x86_64
-/0003-deps-upgrade-npm-to-8.3.1.patch
+/icu4c-*-data-bin-*.zip
diff --git a/nodejs-tarball.sh b/nodejs-sources.sh
similarity index 86%
rename from nodejs-tarball.sh
rename to nodejs-sources.sh
index 6f9c4c8..a8f16ae 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-sources.sh
@@ -122,16 +122,15 @@ tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
-# Download the matching version of ICU
-rm -f icu4c*-src.tgz icu.md5
-ICUMD5=$(cat node-v${version}/tools/icu/current_ver.dep |jq -r '.[0].md5')
-wget $(cat node-v${version}/tools/icu/current_ver.dep |jq -r '.[0].url')
-ICUTARBALL=$(ls -1 icu4c*-src.tgz)
-echo "$ICUMD5 $ICUTARBALL" > icu.md5
-md5sum -c icu.md5
-rm -f icu.md5 SHASUMS256.txt
+ICU_MAJOR=$(jq -r '.[0].url' node-v16.15.0/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\1/g')
+ICU_MINOR=$(jq -r '.[0].url' node-v16.15.0/tools/icu/current_ver.dep | sed --expression='s/.*release-([[:digit:]]+)-([[:digit:]]+).*/\2/g')
-fedpkg new-sources node-v${version}-stripped.tar.gz icu4c*-src.tgz
+# Download the ICU binary data files
+rm -Rf icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
+wget $(grep Source3 nodejs.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
+wget $(grep Source4 nodejs.spec | sed --expression="s/.*http/http/g" --expression="s/(%{icu_major})/${ICU_MAJOR}/g" --expression="s/(%{icu_minor})/${ICU_MINOR}/g")
+
+fedpkg new-sources node-v${version}-stripped.tar.gz icu4c-${ICU_MAJOR}_${ICU_MINOR}-data-bin-*.zip
rm -f node-v${version}.tar.gz
@@ -176,7 +175,7 @@ grep "define NGHTTP2_VERSION " node-v${version}/deps/nghttp2/lib/includes/nghttp
echo
echo "ICU"
echo "========================="
-grep "url" node-v${version}/tools/icu/current_ver.dep
+echo "${ICU_MAJOR}.${ICU_MINOR}"
echo
echo "punycode"
echo "========================="
diff --git a/nodejs.spec b/nodejs.spec
index 08192fd..5a69136 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -40,7 +40,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -51,8 +51,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 14
-%global nodejs_patch 1
+%global nodejs_minor 15
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -86,7 +86,7 @@
%global libuv_version 1.43.0
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
-%global nghttp2_version 1.45.1
+%global nghttp2_version 1.47.0
# ICU - from tools/icu/current_ver.dep
%global icu_major 70
@@ -108,7 +108,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.5.0
+%global npm_version 8.5.5
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -139,8 +139,10 @@ ExclusiveArch: %{nodejs_arches}
Source0: node-v%{nodejs_version}-stripped.tar.gz
Source1: npmrc
Source2: btest402.js
-Source3: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_major%7...
-Source100: %{name}-tarball.sh
+# The binary data that icu-small can use to get icu-full capability
+Source3: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_major%7...
+Source4: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_major%7...
+Source100: nodejs-sources.sh
# The native module Requires generator remains in the nodejs SRPM, so it knows
# the nodejs and v8 versions. The remainder has migrated to the
@@ -182,6 +184,7 @@ BuildRequires: nodejs-packaging
BuildRequires: chrpath
BuildRequires: libatomic
BuildRequires: systemtap-sdt-devel
+BuildRequires: unzip
%if %{with bundled}
Provides: bundled(libuv) = %{libuv_version}
@@ -190,14 +193,9 @@ BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:%{libuv_version}
%endif
-%if %{with bundled} || !(0%{?fedora} || 0%{?rhel} >= 9)
-%define nghttp2_configure %{nil}
-Provides: bundled(nghttp2) = %{nghttp2_version}
-%else
-%define nghttp2_configure --shared-nghttp2
-BuildRequires: libnghttp2-devel >= %{nghttp2_version}
-Requires: libnghttp2 >= %{nghttp2_version}
-%endif
+# Node.js frequently bumps this faster than Fedora can follow,
+# so we will bundle it.
+Provides: bundled(nghttp2) = %{nghttp2_version}
# Temporarily bundle llhttp because the upstream doesn't
# provide releases for it.
@@ -314,14 +312,14 @@ Summary: Node.js and v8 libraries
# Compatibility for obsolete v8 package
%if 0%{?__isa_bits} == 64
-Provides: libv8.so.%{v8_major}()(64bit)
-Provides: libv8_libbase.so.%{v8_major}()(64bit)
-Provides: libv8_libplatform.so.%{v8_major}()(64bit)
+Provides: libv8.so.%{v8_major}()(64bit) = %{v8_epoch}:%{v8_version}
+Provides: libv8_libbase.so.%{v8_major}()(64bit) = %{v8_epoch}:%{v8_version}
+Provides: libv8_libplatform.so.%{v8_major}()(64bit) = %{v8_epoch}:%{v8_version}
%else
# 32-bits
-Provides: libv8.so.%{v8_major}
-Provides: libv8_libbase.so.%{v8_major}
-Provides: libv8_libplatform.so.%{v8_major}
+Provides: libv8.so.%{v8_major} = %{v8_epoch}:%{v8_version}
+Provides: libv8_libbase.so.%{v8_major} = %{v8_epoch}:%{v8_version}
+Provides: libv8_libplatform.so.%{v8_major} = %{v8_epoch}:%{v8_version}
%endif
Provides: v8 = %{v8_epoch}:%{v8_version}-%{nodejs_release}%{?dist}
@@ -459,7 +457,6 @@ export LDFLAGS="%{build_ldflags}"
%{!?with_bundled_zlib:--shared-zlib} \
--shared-brotli \
%{!?with_bundled:--shared-libuv} \
- %{!?with_bundled:%{nghttp2_configure}} \
%{?with_bundled:--without-dtrace}%{!?with_bundled:--with-dtrace} \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
@@ -468,35 +465,6 @@ export LDFLAGS="%{build_ldflags}"
%make_build BUILDTYPE=Release
-# Extract the ICU data and convert it to the appropriate endianness
-pushd deps/
-tar xfz %SOURCE3
-
-pushd icu/source
-
-mkdir -p converted
-%if 0%{?little_endian}
-# The little endian data file is included in the ICU sources
-install -Dpm0644 data/in/icudt%{icu_major}l.dat converted/
-
-%else
-# For the time being, we need to build ICU and use the included `icupkg` tool
-# to convert the little endian data file into a big-endian one.
-# At some point in the future, ICU releases will start including both data
-# files and we should switch to those.
-mkdir -p data/out/tmp
-
-%configure
-%make_build
-
-icu_root=$(pwd)
-LD_LIBRARY_PATH=./lib ./bin/icupkg -tb data/in/icudt%{icu_major}l.dat \
- converted/icudt%{icu_major}b.dat
-%endif
-
-popd # icu/source
-popd # deps
-
%install
rm -rf %{buildroot}
@@ -588,7 +556,11 @@ ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
# Install the full-icu data files
mkdir -p %{buildroot}%{icudatadir}
-install -Dpm0644 -t %{buildroot}%{icudatadir} deps/icu/source/converted/*
+%if 0%{?little_endian}
+unzip -d %{buildroot}%{icudatadir} %{SOURCE4} icudt%{icu_major}l.dat
+%else
+unzip -d %{buildroot}%{icudatadir} %{SOURCE3} icudt%{icu_major}b.dat
+%endif
%check
@@ -706,6 +678,12 @@ end
%changelog
+* Wed Apr 27 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.15.0-1
+- Update to Node.js 16.15.0
+- Stop carrying full ICU sources now that the binary data is available
+- Properly version the v8 virtual Provides
+- Bundle nghttp2
+
* Mon Apr 04 2022 Jan Staněk jstanek@redhat.com - 16.14.1-2
- Unify configure.py calls into single command
- Refactor bootstrap-related parts
diff --git a/sources b/sources
index a8ac71f..f466879 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,3 @@
-SHA512 (node-v16.14.1-stripped.tar.gz) = df5fea1a3ba7a1d34884abd1642c8b9fb8716ba98798d87004afe3c713d0bee8e7127ab3f0699d4f936b974fd5312149e7a037f1a62328db6d4c0d381bac52b4
-SHA512 (icu4c-70_1-src.tgz) = 0b26ae7207155cb65a8fdb25f7b2fa4431e74b12bccbed0884a17feaae3c96833d12451064dd152197fd6ea5fd3adfd95594284a463e66c82e0d860f645880c9
+SHA512 (node-v16.15.0-stripped.tar.gz) = 0621c917d5144b6cfa845654019981c093b8f79e7695ee233474c37ab524bceaa50fb7e82afd8f6337db505a55e6ba407e2984a91e84ff42380366022e1f059c
+SHA512 (icu4c-70_1-data-bin-b.zip) = eff9b41f1df4fe74e13bc216c62a8eab735622e3aa4e0b9c925b61f55294a002238a0022e1579197170d0345de6e877220b04b62d2010796f4ef1fbb2c17ea92
+SHA512 (icu4c-70_1-data-bin-l.zip) = 041ff3480566330d043d9ddcd31e8851e875183d158ea3ce625583b4a9d96166497a9eedc0e72e2f7a3abc3a9110a0372546151b264ff4d1623215aab33552f5
commit a6cf62efade6bb283fa82759fe1d19bc3b72b84b
Author: Jan Staněk jstanek@redhat.com
Date: Tue Apr 19 15:53:11 2022 +0200
fixup! unify configure.py calls into single command
diff --git a/nodejs.spec b/nodejs.spec
index bf9cb9f..08192fd 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -459,7 +459,7 @@ export LDFLAGS="%{build_ldflags}"
%{!?with_bundled_zlib:--shared-zlib} \
--shared-brotli \
%{!?with_bundled:--shared-libuv} \
- %{!?with_bundled:%{nghttp2_configure} \
+ %{!?with_bundled:%{nghttp2_configure}} \
%{?with_bundled:--without-dtrace}%{!?with_bundled:--with-dtrace} \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
commit 0190dc1b6f9b429811885d26bb7a6b44241ce6fc
Author: Jan Staněk jstanek@redhat.com
Date: Mon Apr 4 16:39:43 2022 +0200
decouple dependency bundling from bootstrapping
We probably should stop (ab)using the bootstrap macro for module builds
with bundled dependencies. This patch decouples one from the other;
use --with=bundled for just bundling
and --with=bootstrap for full bootstrapping.
diff --git a/nodejs.spec b/nodejs.spec
index c855883..bf9cb9f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,20 @@
-# bundle dependencies that are not available as Fedora modules
+# The following macros control the usage of dependencies bundled from upstream.
+#
+# When to use what:
+# - Regular (presumably non-modular) build: use neither (the default in Fedora)
+# - Early bootstrapping build that is not intended to be shipped:
+# use --with=bootstrap; this will bundle deps and add `~bootstrap` release suffix
+# - Build with some dependencies not avalaible in necessary versions (i.e. module build):
+# use --with=bundled; will bundle deps, but do not add the suffix
+#
+# create bootstrapping build with bundled deps and extra release suffix
%bcond_with bootstrap
+# bundle dependencies that are not available in Fedora modules
+%if %{with bootstrap}
+%bcond_without bundled
+%else
+%bcond_with bundled
+%endif
%if 0%{?rhel} && 0%{?rhel} < 9
%bcond_without python3_fixup
@@ -168,14 +183,14 @@ BuildRequires: chrpath
BuildRequires: libatomic
BuildRequires: systemtap-sdt-devel
-%if %{with bootstrap}
+%if %{with bundled}
Provides: bundled(libuv) = %{libuv_version}
%else
BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:%{libuv_version}
%endif
-%if %{with bootstrap} || !(0%{?fedora} || 0%{?rhel} >= 9)
+%if %{with bundled} || !(0%{?fedora} || 0%{?rhel} >= 9)
%define nghttp2_configure %{nil}
Provides: bundled(nghttp2) = %{nghttp2_version}
%else
@@ -286,7 +301,7 @@ Requires: zlib-devel%{?_isa}
Requires: brotli-devel%{?_isa}
Requires: nodejs-packaging
-%if %{without bootstrap}
+%if %{without bundled}
Requires: libuv-devel%{?_isa}
%endif
@@ -443,9 +458,9 @@ export LDFLAGS="%{build_ldflags}"
%{ssl_configure} \
%{!?with_bundled_zlib:--shared-zlib} \
--shared-brotli \
- %{!?with_bootstrap:--shared-libuv} \
- %{!?with_bootstrap:%{nghttp2_configure} \
- %{?with_bootstrap:--without-dtrace}%{!?with_bootstrap:--with-dtrace} \
+ %{!?with_bundled:--shared-libuv} \
+ %{!?with_bundled:%{nghttp2_configure} \
+ %{?with_bundled:--without-dtrace}%{!?with_bundled:--with-dtrace} \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
--without-corepack \
@@ -616,7 +631,7 @@ end
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
-%if %{without bootstrap}
+%if %{without bundled}
%dir %{_usr}/lib/dtrace
%{_usr}/lib/dtrace/node.d
%endif
@@ -694,6 +709,7 @@ end
* Mon Apr 04 2022 Jan Staněk jstanek@redhat.com - 16.14.1-2
- Unify configure.py calls into single command
- Refactor bootstrap-related parts
+- Decouple dependency bundling from bootstrapping
* Thu Mar 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.1-1
- Update to Node.js 16.14.1
commit f9d99b4340c0e0d38a48ae7ab2f3b43c694941a2
Author: Jan Staněk jstanek@redhat.com
Date: Mon Apr 4 16:29:29 2022 +0200
refactor boostrapping sections
- split sections per topic
- do not nest if macros
- use %without where appropriate
diff --git a/nodejs.spec b/nodejs.spec
index 6148272..c855883 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -169,19 +169,19 @@ BuildRequires: libatomic
BuildRequires: systemtap-sdt-devel
%if %{with bootstrap}
-Provides: bundled(libuv) = %{libuv_version}
-Provides: bundled(nghttp2) = %{nghttp2_version}
+Provides: bundled(libuv) = %{libuv_version}
%else
BuildRequires: libuv-devel >= 1:%{libuv_version}
-Requires: libuv >= 1:%{libuv_version}
-%if 0%{?fedora} || 0%{?rhel} >= 9
-BuildRequires: libnghttp2-devel >= %{nghttp2_version}
-Requires: libnghttp2 >= %{nghttp2_version}
-%define nghttp2_configure --shared-nghttp2
-%else
-%define nghttp2_configure %{nil}
-Provides: bundled(nghttp2) = %{nghttp2_version}
+Requires: libuv >= 1:%{libuv_version}
%endif
+
+%if %{with bootstrap} || !(0%{?fedora} || 0%{?rhel} >= 9)
+%define nghttp2_configure %{nil}
+Provides: bundled(nghttp2) = %{nghttp2_version}
+%else
+%define nghttp2_configure --shared-nghttp2
+BuildRequires: libnghttp2-devel >= %{nghttp2_version}
+Requires: libnghttp2 >= %{nghttp2_version}
%endif
# Temporarily bundle llhttp because the upstream doesn't
@@ -286,9 +286,7 @@ Requires: zlib-devel%{?_isa}
Requires: brotli-devel%{?_isa}
Requires: nodejs-packaging
-%if %{with bootstrap}
-# deps are bundled
-%else
+%if %{without bootstrap}
Requires: libuv-devel%{?_isa}
%endif
@@ -618,9 +616,7 @@ end
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
-%if %{with bootstrap}
-# no dtrace
-%else
+%if %{without bootstrap}
%dir %{_usr}/lib/dtrace
%{_usr}/lib/dtrace/node.d
%endif
@@ -697,6 +693,7 @@ end
%changelog
* Mon Apr 04 2022 Jan Staněk jstanek@redhat.com - 16.14.1-2
- Unify configure.py calls into single command
+- Refactor bootstrap-related parts
* Thu Mar 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.1-1
- Update to Node.js 16.14.1
commit d0e0545474b130027eac8e855a08a5dfde85bccf
Author: Jan Staněk jstanek@redhat.com
Date: Mon Apr 4 14:48:57 2022 +0200
unify configure.py calls into single command
This should fix and prevent bugs resulting from only adding a configure
option to either bootstrap or non-bootstrap variant when the intention
was to add it to both.
Resolves: rhbz#2009880
diff --git a/nodejs.spec b/nodejs.spec
index 25c283e..6148272 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -430,53 +430,28 @@ export NODE_GYP_FORCE_PYTHON=%{__python3}
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
# NULL objects. We need to pass -fno-delete-null-pointer-checks
-export CFLAGS='%{optflags} \
- -D_LARGEFILE_SOURCE \
- -D_FILE_OFFSET_BITS=64 \
- -DZLIB_CONST \
- -fno-delete-null-pointer-checks'
-export CXXFLAGS='%{optflags} \
- -D_LARGEFILE_SOURCE \
- -D_FILE_OFFSET_BITS=64 \
- -DZLIB_CONST \
- -fno-delete-null-pointer-checks'
-
-# Explicit new lines in C(XX)FLAGS can break naive build scripts
-export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
-export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
-
+extra_cflags=(
+ -D_LARGEFILE_SOURCE
+ -D_FILE_OFFSET_BITS=64
+ -DZLIB_CONST
+ -fno-delete-null-pointer-checks
+)
+export CFLAGS="%{optflags} ${extra_cflags[*]}" CXXFLAGS="%{optflags} ${extra_cflags[*]}"
export LDFLAGS="%{build_ldflags}"
-%if %{with bootstrap}
-%{__python3} configure.py --prefix=%{_prefix} \
- --shared \
- --libdir=%{_lib} \
- %{ssl_configure} \
-%if !%{with bundled_zlib}
- --shared-zlib \
-%endif
- --shared-brotli \
- --without-dtrace \
- --with-intl=small-icu \
- --without-corepack \
- --openssl-use-def-ca-store
-%else
%{__python3} configure.py --prefix=%{_prefix} \
--shared \
--libdir=%{_lib} \
%{ssl_configure} \
-%if !%{with bundled_zlib}
- --shared-zlib \
-%endif
+ %{!?with_bundled_zlib:--shared-zlib} \
--shared-brotli \
- --shared-libuv \
- %{nghttp2_configure} \
- --with-dtrace \
+ %{!?with_bootstrap:--shared-libuv} \
+ %{!?with_bootstrap:%{nghttp2_configure} \
+ %{?with_bootstrap:--without-dtrace}%{!?with_bootstrap:--with-dtrace} \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
--without-corepack \
--openssl-use-def-ca-store
-%endif
%make_build BUILDTYPE=Release
@@ -721,6 +696,7 @@ end
%changelog
* Mon Apr 04 2022 Jan Staněk jstanek@redhat.com - 16.14.1-2
+- Unify configure.py calls into single command
* Thu Mar 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.1-1
- Update to Node.js 16.14.1
commit 975cd082a0ca63d716ee43418aae8c6b614d720a
Author: Jan Staněk jstanek@redhat.com
Date: Mon Apr 4 14:40:57 2022 +0200
prepare new release
diff --git a/nodejs.spec b/nodejs.spec
index 6c2c04c..25c283e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -720,6 +720,8 @@ end
%changelog
+* Mon Apr 04 2022 Jan Staněk jstanek@redhat.com - 16.14.1-2
+
* Thu Mar 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.1-1
- Update to Node.js 16.14.1
- Drop corepack
commit 22ea0f9dcfbf99484e938ac3083d81cb07c7f411
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Mar 18 09:19:46 2022 -0400
Add Conflicts: v8-314-devel
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 982bca4..6c2c04c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -334,6 +334,7 @@ Epoch: %{v8_epoch}
Version: %{v8_version}
Release: %{v8_release}%{?dist}
Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Conflicts: v8-314-devel
%description -n v8-devel
Development headers for the v8 runtime.
commit 37e63a09a3570853ac31c3da2e105bbc8329b8e6
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Mar 17 12:25:55 2022 -0400
Update to Node.js 16.14.1
Drop corepack
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 71d17bc..982bca4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -37,7 +37,7 @@
%global nodejs_epoch 1
%global nodejs_major 16
%global nodejs_minor 14
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -93,7 +93,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.3.1
+%global npm_version 8.5.0
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -719,11 +719,16 @@ end
%changelog
+* Thu Mar 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.1-1
+- Update to Node.js 16.14.1
+- Drop corepack
+
* Thu Mar 03 2022 Zuzana Svetlikova zsvetlik@redhat.com - 1:16.14.0-3
- Build without corepack
* Wed Feb 09 2022 Zuzana Svetlikova zsvetlik@redhat.com - 1:16.14.0-2
-- Replace explicit version of npm in %%check with variable and make build fail if it doesn't match
+- Replace explicit version of npm in %%check with variable and make build fail
+ if it doesn't match
* Tue Feb 08 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.0-1
- Update to Node.js 16.14.0
diff --git a/sources b/sources
index 40087ff..a8ac71f 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.14.0-stripped.tar.gz) = 434a8743ef5b82c78cb9de7fff707df87567f859bca86f91dc8f4d4ed3b0a8951b49120e90e52f96248eb511d3bcb4dbfc6d56735861760b7090779483a65e4b
+SHA512 (node-v16.14.1-stripped.tar.gz) = df5fea1a3ba7a1d34884abd1642c8b9fb8716ba98798d87004afe3c713d0bee8e7127ab3f0699d4f936b974fd5312149e7a037f1a62328db6d4c0d381bac52b4
SHA512 (icu4c-70_1-src.tgz) = 0b26ae7207155cb65a8fdb25f7b2fa4431e74b12bccbed0884a17feaae3c96833d12451064dd152197fd6ea5fd3adfd95594284a463e66c82e0d860f645880c9
commit 823115314cd514c984afb0e516d00626c14843f0
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Mar 17 12:21:48 2022 -0400
Finish dropping corepack
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index 0caefce..6f9c4c8 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -192,10 +192,6 @@ echo "npm"
echo "========================="
grep ""version":" node-v${version}/deps/npm/package.json
echo
-echo "corepack"
-echo "========================="
-grep ""version":" node-v${version}/deps/corepack/package.json
-echo
echo "zlib"
echo "========================="
grep "define ZLIB_VERSION" node-v${version}/deps/zlib/zlib.h
diff --git a/nodejs.spec b/nodejs.spec
index b2bf34e..71d17bc 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -107,9 +107,6 @@
# histogram_c - assumed from timestamps
%global histogram_version 0.9.7
-# Node.js 16.9.1 and later comes with an experimental package management tool
-%global corepack_version 0.10.0
-
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
@@ -257,7 +254,6 @@ Provides: bundled(icu) = %{icu_version}
# or there's no option to built it as a shared dependency, so we bundle them
Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
-Provides: bundled(corepack) = %{corepack_version}
%if 0%{?fedora}
# Make sure to pull in the appropriate packaging macros when building RPMs
@@ -592,11 +588,6 @@ find %{buildroot}%{_prefix}/lib/node_modules/npm \
chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp
chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
-# Corepack contains a number of executable"shims", including some for Windows
-# PowerShell. Drop the executable bit for those so we don't pick up an
-# automatic dependency on /usr/bin/pwsh that we cannot satisfy.
-chmod -x %{buildroot}%{_prefix}/lib/node_modules/corepack/shims/*.ps1
-
# Drop the NPM default configuration in place
mkdir -p %{buildroot}%{_sysconfdir}
cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
@@ -651,10 +642,6 @@ end
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
-# corepack
-%{_bindir}/corepack
-%{_prefix}/lib/node_modules/corepack
-
%if %{with bootstrap}
# no dtrace
%else
commit b247312735a988c92e37bab66fe3aa1e6f8e17f6
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Feb 21 08:49:07 2022 -0500
Additional i18n test
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/test2.js b/test2.js
new file mode 100644
index 0000000..e88ef88
--- /dev/null
+++ b/test2.js
@@ -0,0 +1,3 @@
+const january = new Date(9e8);
+const spanish = new Intl.DateTimeFormat('es', { month: 'long' });
+console.log(spanish.format(january));
commit 644b58f4baece3d4d30589f32fe2c1fbb4ecd90b
Author: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu Mar 3 14:34:41 2022 +0100
Build without corepack
diff --git a/nodejs.spec b/nodejs.spec
index 78ec060..b2bf34e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -461,6 +461,7 @@ export LDFLAGS="%{build_ldflags}"
--shared-brotli \
--without-dtrace \
--with-intl=small-icu \
+ --without-corepack \
--openssl-use-def-ca-store
%else
%{__python3} configure.py --prefix=%{_prefix} \
@@ -476,6 +477,7 @@ export LDFLAGS="%{build_ldflags}"
--with-dtrace \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
+ --without-corepack \
--openssl-use-def-ca-store
%endif
@@ -730,6 +732,9 @@ end
%changelog
+* Thu Mar 03 2022 Zuzana Svetlikova zsvetlik@redhat.com - 1:16.14.0-3
+- Build without corepack
+
* Wed Feb 09 2022 Zuzana Svetlikova zsvetlik@redhat.com - 1:16.14.0-2
- Replace explicit version of npm in %%check with variable and make build fail if it doesn't match
commit 142266e3ff98ec16c0a5a40f20a0c1c48450be31
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Feb 14 09:17:55 2022 -0500
Actually add gating.yaml
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/gating.yaml b/gating.yaml
new file mode 100644
index 0000000..9011d43
--- /dev/null
+++ b/gating.yaml
@@ -0,0 +1,18 @@
+--- !Policy
+product_versions:
+ - fedora-*
+decision_context: bodhi_update_push_testing
+subject_type: koji_build
+rules:
+ - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional}
+ - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional}
+
+--- !Policy
+product_versions:
+ - fedora-*
+decision_context: bodhi_update_push_stable
+subject_type: koji_build
+rules:
+ - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.rpmdeplint.functional}
+ - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.installability.functional}
+
commit 777056595316ab858632914bbeb404220067cadd
Author: Zuzana Svetlikova zsvetlik@redhat.com
Date: Wed Feb 9 12:18:48 2022 +0100
Replace explicit version of npm in %%check with variable and make build fail if it doesn't match
diff --git a/nodejs.spec b/nodejs.spec
index 0e7157c..78ec060 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -619,7 +619,7 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require(
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
# Ensure we have npm and that the version matches
-LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}%{_bindir}/node %{buildroot}%{_bindir}/npm version --json |jq '. | select(.npm | contains("7.24.0"))'
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}%{_bindir}/node %{buildroot}%{_bindir}/npm version --json |jq -e '.npm == "%{npm_version}"'
# Make sure i18n support is working
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
@@ -730,6 +730,9 @@ end
%changelog
+* Wed Feb 09 2022 Zuzana Svetlikova zsvetlik@redhat.com - 1:16.14.0-2
+- Replace explicit version of npm in %%check with variable and make build fail if it doesn't match
+
* Tue Feb 08 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.0-1
- Update to Node.js 16.14.0
commit e752a0f3a7f6b7aee58989c0a308809eb464d482
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Feb 8 15:55:58 2022 -0500
Update package.cfg post-branch
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/package.cfg b/package.cfg
index 54ce9d4..3b874bb 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = rawhide f35 epel7
+targets = rawhide f36 f35 epel7
commit 0ee3e7e83c498fd1d72f95925f9ab5526987f7ac
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Feb 8 15:55:05 2022 -0500
Update to Node.js 16.14.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index d6f57d1..97eddab 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,17 +1,17 @@
-From b65f81f25d060b048e788e846f9332a70fa953f1 Mon Sep 17 00:00:00 2001
+From dd952f69bcbf0a9947a0629e44c49003dcb9f77f Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH 1/3] Disable running gyp on shared deps
+Subject: [PATCH 1/2] Disable running gyp on shared deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 7671bb804fa6a4f9c4bed07fa97b353e823d42cc..e0b7803710c539d7b291b24708d8a077cd5fb40d 100644
+index 688ebc550e9d6677f468bb791b5d06d5507d3ab5..b34b49db53a4b0cb4a3867921f5c6fb71ae34bf1 100644
--- a/Makefile
+++ b/Makefile
-@@ -142,11 +142,11 @@ endif
+@@ -145,11 +145,11 @@ endif
.PHONY: test-code-cache
with-code-cache test-code-cache:
$(warning '$@' target is a noop)
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 5330f56..7536349 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From 73033dbc74778f7bee49f77716968bbac1e80c28 Mon Sep 17 00:00:00 2001
+From a1c35106e7e9ab3d4a01779079cf9788a2fe777a Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 2/3] Install both binaries and use libdir.
+Subject: [PATCH 2/2] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -14,10 +14,10 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index 6efb98c2316f089f3167e486282593245373af3f..a6d2ec939e4480dfae703f3978067537abf9f0f0 100755
+index 47137d8912dd1439962127a3c1f417eb78572021..c59037a39fcefdfe173d16a7aa9622a32a3c29e7 100755
--- a/configure.py
+++ b/configure.py
-@@ -721,10 +721,16 @@ parser.add_argument('--shared',
+@@ -731,10 +731,16 @@ parser.add_argument('--shared',
dest='shared',
default=None,
help='compile shared library for embedding node in another project. ' +
@@ -34,7 +34,7 @@ index 6efb98c2316f089f3167e486282593245373af3f..a6d2ec939e4480dfae703f3978067537
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1305,10 +1311,11 @@ def configure_node(o):
+@@ -1332,10 +1338,11 @@ def configure_node(o):
o['variables']['debug_nghttp2'] = 'false'
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
@@ -47,7 +47,7 @@ index 6efb98c2316f089f3167e486282593245373af3f..a6d2ec939e4480dfae703f3978067537
shlib_suffix = 'so'
elif sys.platform == 'darwin':
diff --git a/tools/install.py b/tools/install.py
-index 41cc1cbc60a9480cc08df3aa0ebe582c2becc3a2..11208f9e7166ab60da46d5ace2257c239a7e9263 100755
+index eafcb19bf8b29f87c39b0fe7d3c3fd2d175a7b7b..71b5371578711fcc9a1b80069850f0b61bdfebe2 100755
--- a/tools/install.py
+++ b/tools/install.py
@@ -128,26 +128,23 @@ def subdir_files(path, dest, action):
diff --git a/nodejs.spec b/nodejs.spec
index 1c331a0..0e7157c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 8
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -36,8 +36,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 13
-%global nodejs_patch 2
+%global nodejs_minor 14
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -68,13 +68,13 @@
%global llhttp_version 6.0.4
# libuv - from deps/uv/include/uv/version.h
-%global libuv_version 1.42.0
+%global libuv_version 1.43.0
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_version 1.45.1
# ICU - from tools/icu/current_ver.dep
-%global icu_major 69
+%global icu_major 70
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
@@ -93,7 +93,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_version 8.1.2
+%global npm_version 8.3.1
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -102,7 +102,7 @@
%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
# uvwasi - from deps/uvwasi/include/uvwasi.h
-%global uvwasi_version 0.0.11
+%global uvwasi_version 0.0.12
# histogram_c - assumed from timestamps
%global histogram_version 0.9.7
@@ -141,10 +141,6 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
-# Upstream patch to rebase npm to 8.3.1
-# Carrying it until 16.14.0 is released due to CVE-2021-43616
-Patch3: 0003-deps-upgrade-npm-to-8.3.1.patch
-
BuildRequires: make
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-setuptools
@@ -734,6 +730,9 @@ end
%changelog
+* Tue Feb 08 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.14.0-1
+- Update to Node.js 16.14.0
+
* Thu Feb 03 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-8
- Update npm to 8.3.1 (CVE-2021-43616)
diff --git a/sources b/sources
index efd68f2..40087ff 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,2 @@
-SHA512 (node-v16.13.2-stripped.tar.gz) = 2e55952b95681cb18d8ca3ee096105d3076d3c79a92b707e7f580141a5def6e6a45971bc32ecf47307e90fc51de71039dcb00697487fe83d4eb7af01b0ff40b5
-SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
-SHA512 (0003-deps-upgrade-npm-to-8.3.1.patch) = 756b8b77a11b08cfc57054b809b2d70d7c5a3ce72afa179efff548ebb814747135bcbd051c4d1c86ee045fa0d1fedbe4f1c6268a8b2610e44bf8a2e07be8d656
+SHA512 (node-v16.14.0-stripped.tar.gz) = 434a8743ef5b82c78cb9de7fff707df87567f859bca86f91dc8f4d4ed3b0a8951b49120e90e52f96248eb511d3bcb4dbfc6d56735861760b7090779483a65e4b
+SHA512 (icu4c-70_1-src.tgz) = 0b26ae7207155cb65a8fdb25f7b2fa4431e74b12bccbed0884a17feaae3c96833d12451064dd152197fd6ea5fd3adfd95594284a463e66c82e0d860f645880c9
commit 7a4a4a45189ace25377dec6e808c2fa73effe3b1
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Feb 4 07:52:33 2022 -0500
Package new logging(6) manpage
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index b8d16c7..1c331a0 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -718,6 +718,7 @@ end
%doc %{_mandir}/man7/config.7*
%doc %{_mandir}/man7/developers.7*
%doc %{_mandir}/man7/orgs.7*
+%doc %{_mandir}/man7/logging.7*
%doc %{_mandir}/man7/registry.7*
%doc %{_mandir}/man7/removal.7*
%doc %{_mandir}/man7/scope.7*
commit b699bdb677110bf7c57d86c8a249ab20f28cfa4c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Feb 3 16:25:10 2022 -0500
Update npm to 8.3.1 (CVE-2021-43616)
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index fdd7ef0..2caefcf 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,4 @@
/.build-*.log
/noarch
/x86_64
+/0003-deps-upgrade-npm-to-8.3.1.patch
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 7155f13..d6f57d1 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,14 +1,14 @@
-From 51f31ab027934c3e7aead556752911e6dee1ea69 Mon Sep 17 00:00:00 2001
+From b65f81f25d060b048e788e846f9332a70fa953f1 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH 1/2] Disable running gyp on shared deps
+Subject: [PATCH 1/3] Disable running gyp on shared deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index e55bd8d70242ace659fa9c7945708156e7770f9d..2959b0a436b10c9ff9b104de5130b751d19cb3a9 100644
+index 7671bb804fa6a4f9c4bed07fa97b353e823d42cc..e0b7803710c539d7b291b24708d8a077cd5fb40d 100644
--- a/Makefile
+++ b/Makefile
@@ -142,11 +142,11 @@ endif
@@ -25,5 +25,5 @@ index e55bd8d70242ace659fa9c7945708156e7770f9d..2959b0a436b10c9ff9b104de5130b751
# node_version.h is listed because the N-API version is taken from there
--
-2.33.0
+2.34.1
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 0900d64..5330f56 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From 62ddf8499747fb1e366477d666c0634ad50039a9 Mon Sep 17 00:00:00 2001
+From 73033dbc74778f7bee49f77716968bbac1e80c28 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 2/2] Install both binaries and use libdir.
+Subject: [PATCH 2/3] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -87,5 +87,5 @@ index 41cc1cbc60a9480cc08df3aa0ebe582c2becc3a2..11208f9e7166ab60da46d5ace2257c23
# behave similarly for systemtap
--
-2.33.0
+2.34.1
diff --git a/nodejs.spec b/nodejs.spec
index 9b5e209..b8d16c7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 7
+%global baserelease 8
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -141,6 +141,10 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
+# Upstream patch to rebase npm to 8.3.1
+# Carrying it until 16.14.0 is released due to CVE-2021-43616
+Patch3: 0003-deps-upgrade-npm-to-8.3.1.patch
+
BuildRequires: make
BuildRequires: python%{python3_pkgversion}-devel
BuildRequires: python%{python3_pkgversion}-setuptools
@@ -729,6 +733,9 @@ end
%changelog
+* Thu Feb 03 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-8
+- Update npm to 8.3.1 (CVE-2021-43616)
+
* Wed Feb 02 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-7
- Fix incorrect version Provides: for npm (bz#2049873)
diff --git a/sources b/sources
index 410af83..efd68f2 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,3 @@
SHA512 (node-v16.13.2-stripped.tar.gz) = 2e55952b95681cb18d8ca3ee096105d3076d3c79a92b707e7f580141a5def6e6a45971bc32ecf47307e90fc51de71039dcb00697487fe83d4eb7af01b0ff40b5
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
+SHA512 (0003-deps-upgrade-npm-to-8.3.1.patch) = 756b8b77a11b08cfc57054b809b2d70d7c5a3ce72afa179efff548ebb814747135bcbd051c4d1c86ee045fa0d1fedbe4f1c6268a8b2610e44bf8a2e07be8d656
commit 56f025de66e90eca868b65fa1071755e77bc9aa4
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Feb 2 16:08:00 2022 -0500
Fix incorrect version Provides: for npm (bz#2049873)
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index dccb68c..9b5e209 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 6
+%global baserelease 7
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -353,7 +353,6 @@ Release: %{npm_release}%{?dist}
# (and expected to be present on all Node.js systems) that we ship it bundled
# now.
Obsoletes: npm < 0:3.5.4-6
-Provides: npm = %{npm_epoch}:%{npm_version}
Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
%if 0%{?fedora} || 0%{?rhel} >= 8
Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
@@ -730,6 +729,9 @@ end
%changelog
+* Wed Feb 02 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-7
+- Fix incorrect version Provides: for npm (bz#2049873)
+
* Mon Jan 31 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-6
- Rebuild for more architectures
commit a04bf23c79952538a8498beea9062e2f00babc79
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 31 16:18:12 2022 -0500
Rebuild for more architectures
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index c00be47..dccb68c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 5
+%global baserelease 6
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -730,9 +730,12 @@ end
%changelog
-* Mon Jan 31 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-3
+* Mon Jan 31 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-6
+- Rebuild for more architectures
+
+* Mon Jan 31 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-5
- Tweak some dependencies on EPEL 7 (bz2048589)
-- Add (Provides: bundled(zlib))
+- Add Provides: bundled(zlib)
* Wed Jan 19 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-3
- Bundle zlib on EPEL 7
commit a83c6d516849af54a01915c55ed755845f3581b5
Merge: f0d01eb f42688b
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 31 10:42:25 2022 -0500
Merge remote-tracking branch 'origin/rawhide' into 16
diff --cc nodejs.spec
index f329db1,fba3599..c00be47
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -25,7 -14,7 +25,7 @@@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
- %global baserelease 4
-%global baserelease 2
++%global baserelease 5
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
commit f0d01eb00287b62f11a8c615264327ee870e5a40
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 31 10:40:09 2022 -0500
Tweak some dependencies on EPEL 7 (bz2048589)
Add (Provides: bundled(zlib))
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index bbdab8f..f329db1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 4
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -148,7 +148,9 @@ BuildRequires: python%{python3_pkgversion}-jinja2
%if !%{with python3_fixup}
BuildRequires: python-unversioned-command
%endif
-%if !%{with bundled_zlib}
+%if %{with bundled_zlib}
+Provides: bundled(zlib) = %{zlib_version}
+%else
BuildRequires: zlib-devel
%endif
BuildRequires: brotli-devel
@@ -205,9 +207,7 @@ Requires: ca-certificates
Requires: nodejs-libs%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
# Pull in the full-icu data by default
-%if 0%{?rhel} && 0%{?rhel} < 8
-Requires: nodejs-full-i18n%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
-%else
+%if 0%{?fedora} || 0%{?rhel} >= 8
Recommends: nodejs-full-i18n%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
%endif
@@ -265,11 +265,10 @@ Requires: (nodejs-packaging if rpm-build)
%endif
# Make sure we keep NPM up to date when we update Node.js
-%if 0%{?rhel} && 0%{?rhel} < 8
-Requires: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
-%else
+%if 0%{?fedora} || 0%{?rhel} >= 8
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%endif
+Conflicts: npm < %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%description
@@ -356,9 +355,7 @@ Release: %{npm_release}%{?dist}
Obsoletes: npm < 0:3.5.4-6
Provides: npm = %{npm_epoch}:%{npm_version}
Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-%if 0%{?rhel} && 0%{?rhel} < 8
-Requires: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-%else
+%if 0%{?fedora} || 0%{?rhel} >= 8
Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
%endif
@@ -733,6 +730,10 @@ end
%changelog
+* Mon Jan 31 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-3
+- Tweak some dependencies on EPEL 7 (bz2048589)
+- Add (Provides: bundled(zlib))
+
* Wed Jan 19 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-3
- Bundle zlib on EPEL 7
commit f42688b21707ff6d1a5fb3da620916afd25aa7f5
Author: Fedora Release Engineering releng@fedoraproject.org
Date: Thu Jan 20 21:17:22 2022 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index 58e9503..fba3599 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -14,7 +14,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -701,6 +701,9 @@ end
%changelog
+* Thu Jan 20 2022 Fedora Release Engineering releng@fedoraproject.org - 1:16.13.2-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
+
* Tue Jan 11 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-1
- Improper handling of URI Subject Alternative Names (Medium)(CVE-2021-44531)
- Certificate Verification Bypass via String Injection (Medium)(CVE-2021-44532)
commit 6198b7db1527bb780b42d4effdeefbd4dd8b8f38
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Jan 19 14:04:11 2022 -0500
Bundle zlib on EPEL 7
RHEL 7 has zlib 1.2.7, which is too old for NPM.
RHEL 7 is upgrading from 4.x, so we need to re-add the pretrans
scriptlet for npm.
Also clean up and simplify some of the various version macros.
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index 11fd006..0caefce 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -196,6 +196,10 @@ echo "corepack"
echo "========================="
grep ""version":" node-v${version}/deps/corepack/package.json
echo
+echo "zlib"
+echo "========================="
+grep "define ZLIB_VERSION" node-v${version}/deps/zlib/zlib.h
+echo
echo "Make sure these versions match what is in the RPM spec file"
rm -rf node-v${version}
diff --git a/nodejs.spec b/nodejs.spec
index 97f12b9..bbdab8f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,6 +7,13 @@
%bcond_with python3_fixup
%endif
+%if 0%{?rhel} && 0%{?rhel} < 8
+%bcond_without bundled_zlib
+%else
+%bcond_with bundled_zlib
+%endif
+
+
# LTO is currently broken on Node.js builds
%define _lto_cflags %{nil}
@@ -18,7 +25,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -50,30 +57,21 @@
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
+# zlib - from deps/zlib/zlib.h
+%global zlib_version 1.2.11
+
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
-%global c_ares_major 1
-%global c_ares_minor 18
-%global c_ares_patch 1
-%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
+%global c_ares_version 1.18.1
# llhttp - from deps/llhttp/include/llhttp.h
-%global llhttp_major 6
-%global llhttp_minor 0
-%global llhttp_patch 4
-%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
+%global llhttp_version 6.0.4
# libuv - from deps/uv/include/uv/version.h
-%global libuv_major 1
-%global libuv_minor 42
-%global libuv_patch 0
-%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
+%global libuv_version 1.42.0
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
-%global nghttp2_major 1
-%global nghttp2_minor 45
-%global nghttp2_patch 1
-%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
+%global nghttp2_version 1.45.1
# ICU - from tools/icu/current_ver.dep
%global icu_major 69
@@ -91,17 +89,11 @@
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
# Note: this will be unmerged in an upcoming major release
-%global punycode_major 2
-%global punycode_minor 1
-%global punycode_patch 0
-%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
+%global punycode_version 2.1.0
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_major 8
-%global npm_minor 1
-%global npm_patch 2
-%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
+%global npm_version 8.1.2
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
@@ -110,16 +102,10 @@
%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
# uvwasi - from deps/uvwasi/include/uvwasi.h
-%global uvwasi_major 0
-%global uvwasi_minor 0
-%global uvwasi_patch 11
-%global uvwasi_version %{uvwasi_major}.%{uvwasi_minor}.%{uvwasi_patch}
+%global uvwasi_version 0.0.11
# histogram_c - assumed from timestamps
-%global histogram_major 0
-%global histogram_minor 9
-%global histogram_patch 7
-%global histogram_version %{histogram_major}.%{histogram_minor}.%{histogram_patch}
+%global histogram_version 0.9.7
# Node.js 16.9.1 and later comes with an experimental package management tool
%global corepack_version 0.10.0
@@ -162,7 +148,9 @@ BuildRequires: python%{python3_pkgversion}-jinja2
%if !%{with python3_fixup}
BuildRequires: python-unversioned-command
%endif
+%if !%{with bundled_zlib}
BuildRequires: zlib-devel
+%endif
BuildRequires: brotli-devel
%if 0%{?rhel} && 0%{?rhel} < 8
BuildRequires: devtoolset-11-gcc
@@ -297,7 +285,9 @@ Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: openssl-devel%{?_isa}
+%if !%{with bundled_zlib}
Requires: zlib-devel%{?_isa}
+%endif
Requires: brotli-devel%{?_isa}
Requires: nodejs-packaging
@@ -400,7 +390,10 @@ The API documentation for the Node.js JavaScript runtime.
%autosetup -p1 -n node-v%{nodejs_version}
# remove bundled dependencies that we aren't building
+%if !%{with bundled_zlib}
rm -rf deps/zlib
+%endif
+
rm -rf deps/brotli
rm -rf deps/v8/third_party/jinja2
rm -rf tools/inspector_protocol/jinja2
@@ -466,7 +459,9 @@ export LDFLAGS="%{build_ldflags}"
--shared \
--libdir=%{_lib} \
%{ssl_configure} \
+%if !%{with bundled_zlib}
--shared-zlib \
+%endif
--shared-brotli \
--without-dtrace \
--with-intl=small-icu \
@@ -476,7 +471,9 @@ export LDFLAGS="%{build_ldflags}"
--shared \
--libdir=%{_lib} \
%{ssl_configure} \
+%if !%{with bundled_zlib}
--shared-zlib \
+%endif
--shared-brotli \
--shared-libuv \
%{nghttp2_configure} \
@@ -573,7 +570,7 @@ cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
ln -sf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
-# Install Gatsby HTML documentation to %{_pkgdocdir}
+# Install Gatsby HTML documentation to %%{_pkgdocdir}
cp -pr deps/npm/docs %{buildroot}%{_pkgdocdir}/npm/
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/docs
@@ -632,6 +629,22 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}%{_bindir}/node %{buildroot}%
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
+%if 0%{?rhel} && 0%{?rhel} < 8
+%pretrans -n npm -p <lua>
+-- Remove all of the symlinks from the bundled npm node_modules directory
+base_path = "%{_prefix}/lib/node_modules/npm/node_modules/"
+d_st = posix.stat(base_path)
+if d_st then
+ for f in posix.files(base_path) do
+ path = base_path..f
+ st = posix.stat(path)
+ if st and st.type == "link" then
+ os.remove(path)
+ end
+ end
+end
+%endif
+
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
@@ -720,6 +733,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%changelog
+* Wed Jan 19 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-3
+- Bundle zlib on EPEL 7
+
* Mon Jan 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-2
- Add support for building on EPEL 7
diff --git a/sources b/sources
index 486a352..410af83 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.13.2-stripped.tar.gz) = 0f09ce68779448b60fe84df5ace3bc482c1059e0ca9c9e55cfc51e5ad7e94f7f70c3c561b351674f734dbd4c08944a4f5f82d023a61f292bd6eaad8ab6e2d7c5
+SHA512 (node-v16.13.2-stripped.tar.gz) = 2e55952b95681cb18d8ca3ee096105d3076d3c79a92b707e7f580141a5def6e6a45971bc32ecf47307e90fc51de71039dcb00697487fe83d4eb7af01b0ff40b5
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 0a43c6461513f5ebf90f21cd3e0dd4f7857ddba4
Merge: 497f09b 1dc586d
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jan 18 09:10:42 2022 -0500
Merge branch 'epel7' into epel7-merge
commit 1dc586df1632b457339c40cf3488b81448da43bc
Author: Tomas Hrcka thrcka@redhat.com
Date: Tue Jan 18 14:38:15 2022 +0100
Unretirement request: https://pagure.io/releng/issue/10541
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..1fc6100
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,84 @@
+/node-v0.9.3.tar.gz
+/node-v0.9.4.tar.gz
+/node-v0.9.5.tar.gz
+/node-v0.10.0.tar.gz
+/node-v0.10.1.tar.gz
+/node-v0.10.2.tar.gz
+/node-v0.10.3.tar.gz
+/node-v0.10.4.tar.gz
+/node-v0.10.5.tar.gz
+/node-v0.10.6.tar.gz
+/node-v0.10.7-stripped.tar.gz
+/node-v0.10.8-stripped.tar.gz
+/node-v0.10.9-stripped.tar.gz
+/node-v0.10.12-stripped.tar.gz
+/node-v0.10.13-stripped.tar.gz
+/node-v0.10.14-stripped.tar.gz
+/node-v0.10.16-stripped.tar.gz
+/node-v0.10.17-stripped.tar.gz
+/node-v0.10.18-stripped.tar.gz
+/node-v0.10.19-stripped.tar.gz
+/node-v0.10.20-stripped.tar.gz
+/node-v0.10.21-stripped.tar.gz
+/node-v0.10.22-stripped.tar.gz
+/node-v0.10.23-stripped.tar.gz
+/node-v0.10.24.tar.gz
+/node-v0.10.24-stripped.tar.gz
+/node-v0.10.25-stripped.tar.gz
+/node-v0.10.26-stripped.tar.gz
+/node-v0.10.28-stripped.tar.gz
+/node-v0.10.29-stripped.tar.gz
+/node-v0.10.30-stripped.tar.gz
+/node-v0.10.32-stripped.tar.gz
+/node-v0.10.33-stripped.tar.gz
+/node-v0.10.36-stripped.tar.gz
+/node-v4.2.2-stripped.tar.gz
+/node-v4.2.3-stripped.tar.gz
+/node-v4.2.4-stripped.tar.gz
+/node-v4.2.6-stripped.tar.gz
+/node-v4.3.0-stripped.tar.gz
+/node-v4.3.1-stripped.tar.gz
+/node-v5.7.1-stripped.tar.gz
+/node-v5.8.0-stripped.tar.gz
+/node-v5.9.0.tar.gz
+/node-v5.9.1-stripped.tar.gz
+/node-v5.10.0-stripped.tar.gz
+/node-v5.10.1-stripped.tar.gz
+/node-v5.11.0-stripped.tar.gz
+/node-v6.1.0-stripped.tar.gz
+/node-v6.2.0-stripped.tar.gz
+/node-v6.2.1-stripped.tar.gz
+/node-v6.2.2-stripped.tar.gz
+/node-v6.3.0-stripped.tar.gz
+/node-v6.3.1-stripped.tar.gz
+/node-v6.4.0-stripped.tar.gz
+/node-v6.5.0-stripped.tar.gz
+/node-v6.6.0-stripped.tar.gz
+/node-v6.7.0-stripped.tar.gz
+/node-v6.8.0-stripped.tar.gz
+/node-v6.8.1-stripped.tar.gz
+/node-v6.9.0-stripped.tar.gz
+/node-v6.9.1-stripped.tar.gz
+/node-v6.9.2-stripped.tar.gz
+/node-v6.9.3-stripped.tar.gz
+/node-v6.9.4-stripped.tar.gz
+/node-v6.9.5-stripped.tar.gz
+/node-v6.10.0-stripped.tar.gz
+/node-v6.10.1-stripped.tar.gz
+/node-v6.10.2-stripped.tar.gz
+/node-v6.10.3-stripped.tar.gz
+/node-v6.11.0-stripped.tar.gz
+/node-v6.11.1-stripped.tar.gz
+/node-v6.11.2-stripped.tar.gz
+/node-v6.11.3-stripped.tar.gz
+/node-v6.11.4-stripped.tar.gz
+/node-v6.11.5-stripped.tar.gz
+/node-v6.12.0-stripped.tar.gz
+/node-v6.12.2-stripped.tar.gz
+/node-v6.12.3-stripped.tar.gz
+/node-v6.13.1-stripped.tar.gz
+/node-v6.14.0-stripped.tar.gz
+/node-v6.14.2-stripped.tar.gz
+/node-v6.14.3-stripped.tar.gz
+/node-v6.16.0-stripped.tar.gz
+/node-v6.17.1-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-files-for-bundled-deps.patch
new file mode 100644
index 0000000..a97a09a
--- /dev/null
+++ b/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -0,0 +1,25 @@
+From 8946146b37e4170c406fbdd7c60f1bbb79a9311a Mon Sep 17 00:00:00 2001
+From: Zuzana Svetlikova zsvetlik@redhat.com
+Date: Wed, 6 Sep 2017 14:17:21 +0200
+Subject: [PATCH] dont run gyp on shared deps
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 577d0e232a..bb47a1b95e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -77,7 +77,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
+ $(MAKE) -C out BUILDTYPE=Debug V=$(V)
+ if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
+
+-out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
++out/Makefile: common.gypi deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
+ $(PYTHON) tools/gyp_node.py -f make
+
+ config.gypi: configure
+--
+2.14.1
+
diff --git a/dead.package b/dead.package
deleted file mode 100644
index 9e77afb..0000000
--- a/dead.package
+++ /dev/null
@@ -1 +0,0 @@
-Node.js 6.x is years beyond its supported life
diff --git a/macros.nodejs b/macros.nodejs
new file mode 100644
index 0000000..468a30d
--- /dev/null
+++ b/macros.nodejs
@@ -0,0 +1,33 @@
+# nodejs binary
+%__nodejs %{_bindir}/node
+
+# nodejs library directory
+%nodejs_sitelib %{_prefix}/lib/node_modules
+
+#arch specific library directory
+#for future-proofing only; we don't do multilib
+%nodejs_sitearch %{nodejs_sitelib}
+
+# currently installed nodejs version
+%nodejs_version %(%{__nodejs} -v | sed s/v//)
+
+# symlink dependencies so `npm link` works
+# this should be run in every module's %%install section
+# pass --check to work in the current directory instead of the buildroot
+# pass --no-devdeps to ignore devDependencies when --check is used
+%nodejs_symlink_deps %{_rpmconfigdir}/nodejs-symlink-deps %{nodejs_sitelib}
+
+# patch package.json to fix a dependency
+# see `man npm-json` for details on writing dependencies for package.json files
+# e.g. `%%nodejs_fixdep frobber` makes any version of frobber do
+# `%%nodejs_fixdep frobber '>1.0'` requires frobber > 1.0
+# `%%nodejs_fixdep -r frobber removes the frobber dep
+%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
+
+# macro to filter unwanted provides from Node.js binary native modules
+%nodejs_default_filter %{expand: \
+%global __provides_exclude_from ^%{nodejs_sitearch}/.*\.node$
+}
+
+# no-op macro to allow spec compatibility with EPEL
+%nodejs_find_provides_and_requires %{nil}
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
new file mode 100755
index 0000000..237ae13
--- /dev/null
+++ b/nodejs-tarball.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
+rm -f node-v${version}.tar.gz
+wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
+tar -zxf node-v${version}.tar.gz
+rm -rf node-v${version}/deps/openssl
+tar -zcf node-v${version}-stripped.tar.gz node-v${version}
+
+fedpkg new-sources node-v${version}-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
new file mode 100644
index 0000000..8f2bc62
--- /dev/null
+++ b/nodejs.spec
@@ -0,0 +1,1066 @@
+# bundle some dependencies missing in Modularity
+%bcond_with bootstrap
+
+%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
+
+# == Node.js Version ==
+# Note: Fedora should only ship LTS versions of Node.js (currently expected
+# to be major versions with even numbers). The odd-numbered versions are new
+# feature releases that are only supported for nine months, which is shorter
+# than a Fedora release lifecycle.
+%global nodejs_epoch 1
+%global nodejs_major 6
+%global nodejs_minor 17
+%global nodejs_patch 1
+%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
+%global nodejs_release 1
+
+# == Bundled Dependency Versions ==
+# v8 - from deps/v8/include/v8-version.h
+%global v8_major 5
+%global v8_minor 1
+%global v8_build 281
+%global v8_patch 111
+# V8 presently breaks ABI at least every x.y release while never bumping SONAME
+%global v8_abi %{v8_major}.%{v8_minor}
+%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
+
+# c-ares - from deps/cares/include/ares_version.h
+%global c_ares_major 1
+%global c_ares_minor 10
+%global c_ares_patch 1
+%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
+
+# http-parser - from deps/http_parser/http_parser.h
+%global http_parser_major 2
+%global http_parser_minor 8
+%global http_parser_patch 0
+%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
+
+# libuv - from deps/uv/include/uv-version.h
+%global libuv_major 1
+%global libuv_minor 16
+%global libuv_patch 1
+%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
+
+# punycode - from lib/punycode.js
+# Note: this was merged into the mainline since 0.6.x
+%global punycode_major 2
+%global punycode_minor 0
+%global punycode_patch 0
+%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
+
+# npm - from deps/npm/package.json
+%global npm_epoch 1
+%global npm_major 3
+%global npm_minor 10
+%global npm_patch 10
+%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
+
+# In order to avoid needing to keep incrementing the release version for the
+# main package forever, we will just construct one for npm that is guaranteed
+# to increment safely. Changing this can only be done during an update when the
+# base npm version number is increasing.
+%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
+
+# Filter out the NPM bundled dependencies so we aren't providing them
+%global __provides_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
+%global __requires_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
+
+
+Name: nodejs
+Epoch: %{nodejs_epoch}
+Version: %{nodejs_version}
+Release: %{nodejs_release}%{?dist}
+Summary: JavaScript runtime
+License: MIT and ASL 2.0 and ISC and BSD
+Group: Development/Languages
+URL: http://nodejs.org/
+
+ExclusiveArch: %{nodejs_arches}
+
+# nodejs bundles openssl, but we use the system version in Fedora
+# because openssl contains prohibited code, we remove openssl completely from
+# the tarball, using the script in Source100
+Source0: node-v%{nodejs_version}-stripped.tar.gz
+Source100: %{name}-tarball.sh
+
+# The native module Requires generator remains in the nodejs SRPM, so it knows
+# the nodejs and v8 versions. The remainder has migrated to the
+# nodejs-packaging SRPM.
+Source7: nodejs_native.attr
+
+# Disable running gyp on bundled deps we don't use
+Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
+
+BuildRequires: python2-devel
+BuildRequires: libicu-devel
+BuildRequires: zlib-devel
+BuildRequires: gcc >= 4.8.5
+BuildRequires: gcc-c++ >= 4.8.5
+Provides: bundled(http-parser) = %{http_parser_version}
+
+%if %{with bootstrap}
+Provides: bundled(libuv) = %{libuv_version}
+%else
+BuildRequires: systemtap-sdt-devel
+BuildRequires: libuv-devel >= 1:1.9.1
+Requires: libuv >= 1:1.9.1
+%endif
+
+%if 0%{?fedora} > 25
+BuildRequires: compat-openssl10-devel >= 1:1.0.2
+%else
+BuildRequires: openssl-devel >= 1:1.0.2
+%endif
+
+# we need the system certificate store when Patch2 is applied
+Requires: ca-certificates
+
+#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
+#break when binary compatibility is broken
+Provides: nodejs(abi) = %{nodejs_abi}
+Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
+Provides: nodejs(v8-abi) = %{v8_abi}
+Provides: nodejs(v8-abi%{v8_major}) = %{v8_abi}
+
+#this corresponds to the "engine" requirement in package.json
+Provides: nodejs(engine) = %{nodejs_version}
+
+# Node.js currently has a conflict with the 'node' package in Fedora
+# The ham-radio group has agreed to rename their binary for us, but
+# in the meantime, we're setting an explicit Conflicts: here
+Conflicts: node <= 0.3.2-12
+
+# The punycode module was absorbed into the standard library in v0.6.
+# It still exists as a seperate package for the benefit of users of older
+# versions. Since we've never shipped anything older than v0.10 in Fedora,
+# we don't need the seperate nodejs-punycode package, so we Provide it here so
+# dependent packages don't need to override the dependency generator.
+# See also: RHBZ#11511811
+# UPDATE: punycode will be deprecated and so we should unbundle it in Node v8
+# and use upstream module instead
+# https://github.com/nodejs/node/commit/29e49fc286080215031a81effbd59eac092fff...
+Provides: nodejs-punycode = %{punycode_version}
+Provides: npm(punycode) = %{punycode_version}
+
+
+# Node.js has forked c-ares from upstream in an incompatible way, so we need
+# to carry the bundled version internally.
+# See https://github.com/nodejs/node/commit/766d063e0578c0f7758c3a965c971763f43fec...
+Provides: bundled(c-ares) = %{c_ares_version}
+
+# Node.js is closely tied to the version of v8 that is used with it. It makes
+# sense to use the bundled version because upstream consistently breaks ABI
+# even in point releases. Node.js upstream has now removed the ability to build
+# against a shared system version entirely.
+# See https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
+Provides: bundled(v8) = %{v8_version}
+
+%if 0%{?epel}
+# EPEL doesn't support Recommends, so make it strict
+Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
+%else
+Recommends: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
+%endif
+
+
+%description
+Node.js is a platform built on Chrome's JavaScript runtime
+for easily building fast, scalable network applications.
+Node.js uses an event-driven, non-blocking I/O model that
+makes it lightweight and efficient, perfect for data-intensive
+real-time applications that run across distributed devices.
+
+%package devel
+Summary: JavaScript runtime - development headers
+Group: Development/Languages
+Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: openssl-devel%{?_isa}
+Requires: zlib-devel%{?_isa}
+Requires: nodejs-packaging
+#%if ! 0%%{?bootstrap}
+%if %{with bootstrap}
+#deps are bundled
+%else
+Requires: libuv-devel%{?_isa}
+%endif
+
+%description devel
+Development headers for the Node.js JavaScript runtime.
+
+%package -n npm
+Summary: Node.js Package Manager
+Epoch: %{npm_epoch}
+Version: %{npm_version}
+Release: %{npm_release}%{?dist}
+
+# We used to ship npm separately, but it is so tightly integrated with Node.js
+# (and expected to be present on all Node.js systems) that we ship it bundled
+# now.
+Obsoletes: npm < 0:3.5.4-6
+Provides: npm = %{npm_epoch}:%{npm_version}
+Requires: nodejs = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+
+# Do not add epoch to the virtual NPM provides or it will break
+# the automatic dependency-generation script.
+Provides: npm(npm) = %{npm_version}
+
+%description -n npm
+npm is a package manager for node.js. You can use it to install and publish
+your node programs. It manages dependencies and does other cool stuff.
+
+%package docs
+Summary: Node.js API documentation
+Group: Documentation
+BuildArch: noarch
+
+# We don't require that the main package be installed to
+# use the docs, but if it is installed, make sure the
+# version always matches
+Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+
+%description docs
+The API documentation for the Node.js JavaScript runtime.
+
+
+%prep
+%setup -q -n node-v%{nodejs_version}
+
+# remove bundled dependencies that we aren't building
+%patch1 -p1
+rm -rf deps/icu-small \
+ deps/zlib
+
+
+%build
+# Work around Fedora 28 build issue:
+# https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
+# Tracking BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1550564
+export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
+
+# build with debugging symbols and add defines from libuv (#892601)
+# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
+# NULL objects. We need to pass -fno-delete-null-pointer-checks
+export CFLAGS='%{optflags} -g \
+ -D_LARGEFILE_SOURCE \
+ -D_FILE_OFFSET_BITS=64 \
+ -DZLIB_CONST \
+ -fno-delete-null-pointer-checks'
+export CXXFLAGS='%{optflags} -g \
+ -D_LARGEFILE_SOURCE \
+ -D_FILE_OFFSET_BITS=64 \
+ -DZLIB_CONST \
+ -fno-delete-null-pointer-checks'
+
+# Explicit new lines in C(XX)FLAGS can break naive build scripts
+export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
+export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
+
+export LDFLAGS="%{__global_ldflags}"
+
+%if %{with bootstrap}
+./configure --prefix=%{_prefix} \
+ --shared-openssl \
+ --shared-zlib \
+ --without-dtrace \
+ --with-intl=system-icu \
+ --openssl-use-def-ca-store
+%else
+./configure --prefix=%{_prefix} \
+ --shared-openssl \
+ --shared-zlib \
+ --shared-libuv \
+ --with-dtrace \
+ --with-intl=system-icu \
+ --openssl-use-def-ca-store
+%endif
+
+make BUILDTYPE=Release %{?_smp_mflags}
+
+
+%install
+# Work around Fedora 28 build issue:
+# https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
+# Tracking BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1550564
+export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
+
+rm -rf %{buildroot}
+
+./tools/install.py install %{buildroot} %{_prefix}
+
+# Set the binary permissions properly
+chmod 0755 %{buildroot}/%{_bindir}/node
+
+# own the sitelib directory
+mkdir -p %{buildroot}%{_prefix}/lib/node_modules
+
+# ensure Requires are added to every native module that match the Provides from
+# the nodejs build in the buildroot
+install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native.attr
+cat << EOF > %{buildroot}%{_rpmconfigdir}/nodejs_native.req
+#!/bin/sh
+echo 'nodejs(abi%{nodejs_major}) >= %nodejs_abi'
+echo 'nodejs(v8-abi%{v8_major}) >= %v8_abi'
+EOF
+chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
+
+#install documentation
+mkdir -p %{buildroot}%{_pkgdocdir}/html
+cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
+rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
+
+#node-gyp needs common.gypi too
+mkdir -p %{buildroot}%{_datadir}/node
+cp -p common.gypi %{buildroot}%{_datadir}/node
+
+# Install the GDB init tool into the documentation directory
+mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
+
+# Since the old version of NPM was unbundled, there are a lot of symlinks in
+# it's node_modules directory. We need to keep these as symlinks to ensure we
+# can backtrack on this if we decide to.
+
+# Rename the npm node_modules directory to node_modules.bundled
+mv %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules \
+ %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules.bundled
+
+# Recreate all the symlinks
+mkdir -p %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules
+FILES=%{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules.bundled/*
+for f in $FILES
+do
+ module=`basename $f`
+ ln -s ../node_modules.bundled/$module %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/$module
+done
+
+# install NPM docs to mandir
+mkdir -p %{buildroot}%{_mandir} \
+ %{buildroot}%{_pkgdocdir}/npm
+
+cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
+rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
+ln -sf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
+
+# Install Markdown and HTML documentation to %{_pkgdocdir}
+cp -pr deps/npm/html deps/npm/doc %{buildroot}%{_pkgdocdir}/npm/
+rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/html \
+ %{buildroot}%{_prefix}/lib/node_modules/npm/doc
+
+ln -sf %{_pkgdocdir} %{buildroot}%{_prefix}/lib/node_modules/npm/html
+ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
+
+
+# Node tries to install some python files into a documentation directory
+# (and not the proper one). Remove them for now until we figure out what to
+# do with them.
+rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
+ %{buildroot}/%{_defaultdocdir}/node/lldbinit
+
+%check
+# Fail the build if the versions don't match
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8, '%{v8_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
+
+# Ensure we have punycode and that the version matches
+%{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
+
+# Ensure we have npm and that the version matches
+NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
+
+%files
+%{_bindir}/node
+%dir %{_prefix}/lib/node_modules
+%dir %{_datadir}/node
+%dir %{_datadir}/systemtap
+%dir %{_datadir}/systemtap/tapset
+%{_datadir}/systemtap/tapset/node.stp
+
+#%if ! 0%%{?bootstrap}
+%if %{with bootstrap}
+#no dtrace
+%else
+%dir %{_usr}/lib/dtrace
+%{_usr}/lib/dtrace/node.d
+%endif
+
+%{_rpmconfigdir}/fileattrs/nodejs_native.attr
+%{_rpmconfigdir}/nodejs_native.req
+%license LICENSE
+%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
+%doc %{_mandir}/man1/node.1*
+
+
+%files devel
+%{_includedir}/node
+%{_datadir}/node/common.gypi
+%{_pkgdocdir}/gdbinit
+
+
+%files -n npm
+%{_bindir}/npm
+%{_prefix}/lib/node_modules/npm
+%ghost %{_sysconfdir}/npmrc
+%ghost %{_sysconfdir}/npmignore
+%doc %{_mandir}/man*/npm*
+%doc %{_mandir}/man5/package.json.5*
+%doc %{_mandir}/man7/removing-npm.7*
+%doc %{_mandir}/man7/semver.7*
+
+
+%files docs
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
+%{_pkgdocdir}/npm/html
+%{_pkgdocdir}/npm/doc
+
+%changelog
+* Tue Jun 18 2019 Stephen Gallagher sgallagh@redhat.com - 1:6.17.1-1
+- Update to 6.17.1 security release
+- https://nodejs.org/en/blog/release/v6.17.1/
+- https://nodejs.org/en/blog/release/v6.17.0/
+- Drop debug build
+
+* Thu Jan 10 2019 Stephen Gallagher sgallagh@redhat.com - 1:6.16.0-2
+- Bundle http-parser since it uses backported features not available in RHEL
+
+* Thu Jan 10 2019 Stephen Gallagher sgallagh@redhat.com - 1:6.16.0-1
+- Update to 6.16.0 security release
+- https://nodejs.org/en/blog/release/v6.16.0/
+- https://nodejs.org/en/blog/release/v6.15.1/
+- https://nodejs.org/en/blog/release/v6.15.0/
+- https://nodejs.org/en/blog/release/v6.14.4/
+
+* Thu Jun 14 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.14.3-1
+- Update to 6.14.3 security release
+- https://nodejs.org/en/blog/release/v6.14.3/
+
+* Thu May 03 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.14.2-1
+- Update to 6.14.2
+- https://nodejs.org/en/blog/release/v6.14.2/
+- https://nodejs.org/en/blog/release/v6.14.1/
+
+* Fri Apr 13 2018 Rafael dos Santos rdossant@redhat.com - 1:6.14.0-2
+- Use standard Fedora linker flags (bug #1543859)
+
+* Wed Mar 28 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.14.0-1
+- Update to 6.14.0
+- https://nodejs.org/en/blog/release/v6.14.0/
+
+* Thu Mar 08 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.13.1-1
+- Update to 6.13.1
+- https://nodejs.org/en/blog/release/v6.12.4/
+- https://nodejs.org/en/blog/release/v6.12.5/
+- https://nodejs.org/en/blog/release/v6.13.0/
+- https://nodejs.org/en/blog/release/v6.13.1/
+
+* Thu Jan 11 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.12.3-1
+- Update to 6.12.3
+- https://nodejs.org/en/blog/release/v6.12.3/
+
+* Fri Dec 08 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.12.2-1
+- Update to 6.12.2
+- https://nodejs.org/en/blog/release/v6.12.2/
+
+* Mon Nov 13 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.12.0-1
+- Update to 6.12.0
+
+* Thu Oct 26 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.11.5-1
+- Update to 6.11.5 security release
+
+* Fri Oct 06 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.4-1
+- Update to 6.11.4
+- https://nodejs.org/en/blog/release/v6.11.4/
+- use bcond macro
+
+* Thu Sep 21 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6:11.3-2
+- Adjust spec for modularity
+
+* Thu Sep 07 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.3-1
+- Update to 6.11.3
+- https://nodejs.org/en/blog/release/v6.11.3/
+- remove openssl 1.0.1 patches
+
+* Wed Aug 23 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.11.2-2
+- Move to requiring OpenSSL 1.0.2
+- Unbundle http-parser again
+
+* Tue Aug 22 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.2-1.3
+- Run gyp on http-parser
+
+* Tue Aug 15 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.11.2-1.2
+- Add bundled Provides for http-parser
+
+* Tue Aug 15 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.11.2-1.1
+- Temporarily bundle http-parser
+- Resolves: RHBZ#1481470
+
+* Wed Aug 02 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.2-1
+- Update to 6.11.2
+- https://nodejs.org/en/blog/release/v6.11.2/
+- remove GCC 7 patch merged upstream
+
+* Thu Jul 13 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.1-1
+- Security update (https://nodejs.org/en/blog/vulnerability/july-2017-security-releases/)
+
+* Thu Jun 29 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.0-2
+- Fix typo
+
+* Thu Jun 29 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.0-1
+- Update to 6.11.0
+- https://nodejs.org/en/blog/release/v6.10.3/
+- explicitly depend on http-parser (RHBZ#1457763)
+
+* Wed May 10 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.3-1
+- Update to 6.10.3 (LTS)
+- https://nodejs.org/en/blog/release/v6.10.3/
+- Stop using the bundled http-parser now that there is an upstream
+ release with a new-enough version.
+
+* Tue May 09 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.10.2-3
+- Bootstrap systemtap-sdt-devel for modularity
+
+* Wed Apr 19 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.2-2
+- Switch to final upstream patch for GCC 7 compatibility
+
+* Wed Apr 12 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.10.2-1
+- Update to 6.10.2
+
+* Mon Apr 03 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.1-3
+- Move NPM manpages into the correct subpackage
+- Fixes: rhbz#1433403
+
+* Mon Apr 03 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.1-2
+- Revert upstream change that is incompatible with OpenSSL 1.0.1
+- Fixes: rhbz#1436445
+
+* Wed Mar 22 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.10.1-1
+- Update to 6.10.1
+- remove small-icu from deps
+
+* Thu Mar 09 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.0-1
+- Update to 6.10.0
+- https://nodejs.org/en/blog/release/v6.10.0/
+- New patch for handling system CA certificates
+
+* Tue Feb 28 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.9.5-2
+- Fix FTBFS against GCC 7
+- Resolves: RHBZ 1423991
+
+* Fri Feb 10 2017 Fedora Release Engineering releng@fedoraproject.org - 1:6.9.5-1.1
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Wed Feb 1 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.9.5-1
+- Update to v6.9.5(security)
+- Reenable debug mode (https://github.com/nodejs/node/pull/10525)
+
+* Tue Jan 17 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.9.4-2
+- Enable DTrace support.
+- Eliminate newlines from CFLAGS due to broken dtrace shim
+ https://sourceware.org/bugzilla/show_bug.cgi?id=21063
+ Thanks to Kinston Hughes for the fix.
+
+* Tue Jan 10 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.9.4-1
+- Update to v6.9.4
+
+* Thu Jan 05 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.9.3-1
+- https://nodejs.org/en/blog/release/v6.9.3/
+
+* Wed Dec 21 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.9.2-2
+- Debug builds are failing. Disable them.
+
+* Thu Dec 08 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.9.2-1
+- Update to v6.9.2
+
+* Tue Nov 08 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.9.1-4
+- Fix incorrect Conflicts for nodejs-docs
+
+* Tue Nov 08 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.9.1-2
+- Bump revision and rebuild for s390x
+
+* Thu Oct 20 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.9.1-1
+- Update to 6.9.1 LTS release
+- Fix a regression introduced in v6.8.0 in readable stream that caused unpipe
+ to remove the wrong stream
+- https://nodejs.org/en/blog/release/v6.9.1/
+
+* Tue Oct 18 2016 Stephen Gallagher sgallagh@redhat.com - -
+- Update to 6.9.0 LTS release
+- https://nodejs.org/en/blog/release/v6.9.0/
+
+* Mon Oct 17 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.8.1-5
+- Add dist tag to npm nodejs dependency
+
+* Mon Oct 17 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.8.1-4
+- Fix typo in npm nodejs dependency
+
+* Sat Oct 15 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.8.1-3
+- Bump release version for tagging bug
+
+* Sat Oct 15 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.8.1-1
+- Update node to v6.8.0
+- Fix FTBFS against non-bundled zlib
+
+* Thu Oct 13 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.8.0-108
+- Update node to v6.8.0 and npm@3.10.8
+
+* Tue Sep 27 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.7.0-107
+- Update to 6.7.0
+- https://nodejs.org/en/blog/release/v6.7.0/
+
+* Fri Sep 16 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.6.0-106
+- Drop Conflicts: from main package.
+ It wasn't needed and was breaking upgrades in some cases.
+- Move npm support files into the npm package
+- Mark manpages as %%doc
+
+* Fri Sep 16 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.6.0-105
+- Update to 6.6.0
+- https://github.com/nodejs/node/blob/v6.6.0/doc/changelogs/CHANGELOG_V6.md#6....
+
+* Mon Sep 12 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.5.0-104
+- Add support for building on EPEL 7 against OpenSSL 1.0.1
+- Modify v8_abi autorequires to avoid unnecessary rebuilds
+
+* Mon Aug 29 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.5.0-103
+- Update to 6.5.0
+
+* Mon Aug 22 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.4.0-102
+- Bump release to 102 to fix broken npm dependency
+
+* Thu Aug 18 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.4.0-1
+- Update to 6.4.0
+
+* Tue Aug 16 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.3.1-101
+- Build Node.js with internationalization support
+
+* Thu Aug 04 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.3.1-100
+- Split npm into a subpackage
+
+* Mon Jul 25 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.3.1-1
+- Update to 6.3.1
+- comment out %%patch3
+
+* Mon Jul 18 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.3.0-3
+- Fix epoch version dependency on libuv
+
+* Tue Jul 12 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.3.0-2
+- Patch node.gyp to fix failing ./configure
+
+* Sun Jul 10 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.3.0-1
+- Update node to 6.3.0
+- update punycode to 2.0.0
+- add gcc and gcc-c++ as build dependencies
+- modified system-certs patch
+
+* Sat Jun 18 2016 Tom Hughes tom@compton.nu - 1:6.2.2-1
+- Update to latest stable release 6.2.2
+- Add check on npm version
+
+* Tue Jun 7 2016 Tom Hughes tom@compton.nu - 1:6.2.1-1
+- Update to latest stable release 6.2.1
+
+* Wed May 18 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.2.0-1
+- Update to latest stable release 6.2.0
+- https://github.com/nodejs/node/blob/v6.2.0/doc/changelogs/CHANGELOG_V6.md#6....
+
+* Mon May 09 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.1.0-1
+- Update to latest stable release 6.1.0
+- https://github.com/nodejs/node/blob/v6.1.0/CHANGELOG.md
+
+* Tue May 03 2016 Stephen Gallagher sgallagh@redhat.com - 1:5.11.0-3
+- Drop the epoch on the virtual provides for npm
+
+* Thu Apr 28 2016 Stephen Gallagher sgallagh@redhat.com - 1:5.11.0-2
+- Add epoch and rebuild to preserve upgrade path
+
+* Mon Apr 25 2016 Stephen Gallagher sgallagh@redhat.com - 5.11.0-1
+- Update to latest stable release 5.11.0
+- https://github.com/nodejs/node/blob/v5.11.0/CHANGELOG.md
+
+* Mon Apr 11 2016 Stephen Gallagher sgallagh@redhat.com - 5.10.0-1
+- Update to latest stable release 5.10.1
+- https://github.com/nodejs/node/blob/v5.10.1/CHANGELOG.md
+
+* Fri Apr 01 2016 Stephen Gallagher sgallagh@redhat.com - 5.10.0-1
+- Update to latest security release (5.10.0)
+- Update bundled npm to 3.8.3
+- Fixes serious man-in-the-middle vulnerability with npm
+
+* Wed Mar 23 2016 Stephen Gallagher sgallagh@redhat.com - 5.9.1-1
+- Update to latest stable release (5.9.1)
+- Bundle npm (3.7.3)
+
+* Wed Mar 23 2016 Stephen Gallagher sgallagh@redhat.com - 4.4.1-1
+- Update to 4.4.1 upstream LTS release
+- Add more versatile ABI checking
+
+* Tue Feb 23 2016 Tom Hughes tom@compton.nu - 4.3.1-1
+- Update to 4.3.1 upstream LTS release
+
+* Wed Feb 10 2016 Tom Hughes tom@compton.nu - 4.3.0-3
+- Verify that the built node reports the expected versions
+- Drop unneeded dep on http-parser-devel
+- Add version check for punycode
+
+* Wed Feb 10 2016 Stephen Gallagher sgallagh@redhat.com - 4.3.0-2
+- Fix nodejs-abi to be 4.3
+- Clean up bundled versions in spec file
+
+* Tue Feb 09 2016 Stephen Gallagher sgallagh@redhat.com - 4.3.0-1
+- Update to 4.3.0 upstream LTS release
+- https://github.com/nodejs/node/blob/v4.3.0/CHANGELOG.md
+- Switch to the bundled http-parser
+- Build with -fno-delete-pointer-null-checks for GCC 6
+
+* Tue Feb 9 2016 Tom Hughes tom@compton.nu - 4.2.6-1
+- Update to 4.2.6 upstream release
+
+* Thu Feb 04 2016 Fedora Release Engineering releng@fedoraproject.org - 4.2.4-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
+* Tue Jan 19 2016 Stephen Gallagher sgallagh@redhat.com - 4.2.4-4
+- Force a depdendency on the correct version of http-parser
+
+* Tue Jan 19 2016 Stephen Gallagher sgallagh@redhat.com - 4.2.4-3
+- Force a dependency on the correct version of libuv
+
+* Mon Jan 18 2016 Stephen Gallagher sgallagh@redhat.com - 4.2.4-2
+- Fix Provides: for punycode
+
+* Wed Jan 13 2016 Stephen Gallagher sgallagh@redhat.com - 4.2.4-1
+- New upstream bugfix release 4.2.4
+- https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
+
+* Fri Dec 04 2015 Stephen Gallagher sgallagh@redhat.com 4.2.3-2
+- Add %%with_debug variable to spec file
+ The debug build is not supported on all architectures.
+
+* Fri Dec 04 2015 Stephen Gallagher sgallagh@redhat.com 4.2.3-1
+- New upstream security release 4.2.3
+- https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
+- Fix incorrect v8 version
+
+* Wed Dec 2 2015 Peter Robinson pbrobinson@fedoraproject.org 4.2.2-4
+- Use nodejs_arches macro for arch definition (add aarch64 and power64 platforms)
+
+* Wed Dec 02 2015 Stephen Gallagher sgallagh@redhat.com 4.2.2-3
+- Fix nodejs_abi version
+- Also ensure that we are building against the correct libuv
+
+* Wed Dec 02 2015 Stephen Gallagher sgallagh@redhat.com 4.2.2-2
+- Disable debug build for ARMv7 since it fails to build
+
+* Tue Dec 01 2015 Stephen Gallagher sgallagh@redhat.com 4.2.2-1
+- Upgrade to Node.js 4.2.2 (LTS)
+
+* Wed Jun 17 2015 Fedora Release Engineering rel-eng@lists.fedoraproject.org - 0.10.36-5
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
+* Wed Apr 29 2015 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.36-4
+- fix incorrect Requires on libuv (RHBZ#1215719)
+
+* Tue Feb 24 2015 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.36-3
+- bump v8 requires (RHBZ#1195457)
+
+* Thu Feb 19 2015 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.36-2
+- build against compat-libuv010
+
+* Thu Feb 19 2015 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.36-1
+- new upstream release 0.10.36
+ http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
+- Please note that several upstream releases were skipped due to regressions
+ reported in the upstream bug tracker. Please also review the 0.10.34 and
+ 0.10.35 changelogs available at the above URL for a list of all changes.
+
+* Wed Nov 19 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.33-1
+- new upstream release 0.10.33
+ http://blog.nodejs.org/2014/10/23/node-v0-10-33-stable/
+- This release disables SSLv3 to secure Node.js services against the POODLE
+ attack. (CVE-2014-3566; RHBZ#1152789) For more information or to learn how
+ to re-enable SSLv3 in order to support legacy clients, please see the upstream
+ release announcement linked above.
+
+* Tue Oct 21 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.32-2
+- add Provides nodejs-punycode (RHBZ#1151811)
+
+* Thu Sep 18 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.32-1
+- new upstream release 0.10.32
+ http://blog.nodejs.org/2014/08/19/node-v0-10-31-stable/
+ http://blog.nodejs.org/2014/09/16/node-v0-10-32-stable/
+
+* Sun Aug 17 2014 Fedora Release Engineering rel-eng@lists.fedoraproject.org - 0.10.30-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Fri Aug 01 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.30-1
+- new upstream release 0.10.30
+ http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
+
+* Thu Jun 19 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.29-1
+- new upstream release 0.10.29
+ http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
+- The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
+ be done in a stable distribution release. This build of nodejs will behave as
+ if NODE_INVALID_UTF8 was set. For more information on the implications, see:
+ http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
+
+* Sat Jun 07 2014 Fedora Release Engineering rel-eng@lists.fedoraproject.org - 0.10.28-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Sat May 03 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.28-2
+- use the system certificate store instead of the bundled copy
+ both are based on the Mozilla CA list, so the only effect this should have is
+ making additional certificates added by the system administrator available to
+ node
+
+* Sat May 03 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.28-1
+- new upstream release 0.10.28
+ There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
+ thing updated was npm, which is shipped seperately. The latest was only
+ packaged to avoid confusion. Please see the v0.10.27 changelog for relevant
+ changes in this update:
+ http://blog.nodejs.org/2014/05/01/node-v0-10-27-stable/
+
+* Thu Feb 20 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.26-1
+- new upstream release 0.10.26
+ http://blog.nodejs.org/2014/02/18/node-v0-10-26-stable/
+
+* Fri Feb 14 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.25-2
+- rebuild for icu-53 (via v8)
+
+* Mon Jan 27 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.25-1
+- new upstream release 0.10.25
+ http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
+
+* Thu Dec 19 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.24-1
+- new upstream release 0.10.24
+ http://blog.nodejs.org/2013/12/19/node-v0-10-24-stable/
+- upstream install script installs the headers now
+
+* Thu Dec 12 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.23-1
+- new upstream release 0.10.23
+ http://blog.nodejs.org/2013/12/11/node-v0-10-23-stable/
+
+* Tue Nov 12 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.22-1
+- new upstream release 0.10.22
+ http://blog.nodejs.org/2013/11/12/node-v0-10-22-stable/
+
+* Fri Oct 18 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.21-1
+- new upstream release 0.10.21
+ http://blog.nodejs.org/2013/10/18/node-v0-10-21-stable/
+- resolves an undisclosed security vulnerability in the http module
+
+* Tue Oct 01 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.20-1
+- new upstream release 0.10.20
+ http://blog.nodejs.org/2013/09/30/node-v0-10-20-stable/
+
+* Wed Sep 25 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.19-1
+- new upstream release 0.10.19
+ http://blog.nodejs.org/2013/09/24/node-v0-10-19-stable/
+
+* Fri Sep 06 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.18-1
+- new upstream release 0.10.18
+ http://blog.nodejs.org/2013/09/04/node-v0-10-18-stable/
+
+* Tue Aug 27 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.17-1
+- new upstream release 0.10.17
+ http://blog.nodejs.org/2013/08/21/node-v0-10-17-stable/
+- fix duplicated/conflicting documentation files (RHBZ#1001253)
+
+* Sat Aug 17 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.16-1
+- new upstream release 0.10.16
+ http://blog.nodejs.org/2013/08/16/node-v0-10-16-stable/
+- add v8-devel to -devel Requires
+- restrict -devel Requires to the same architecture
+
+* Wed Aug 14 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.14-3
+- fix typo in _isa macro in v8 Requires
+
+* Mon Aug 05 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.14-2
+- use unversioned docdir for -docs subpackage
+ https://fedoraproject.org/wiki/Changes/UnversionedDocdirs
+- use main package's docdir instead of a seperate -docs directory
+
+* Thu Jul 25 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.14-1
+- new upstream release 0.10.14
+ http://blog.nodejs.org/2013/07/25/node-v0-10-14-stable/
+
+* Wed Jul 10 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.13-1
+- new upstream release 0.10.13
+ http://blog.nodejs.org/2013/07/09/node-v0-10-13-stable/
+- remove RPM macros, etc. now that they've migrated to nodejs-packaging
+
+* Wed Jun 19 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.12-1
+- new upstream release 0.10.12
+ http://blog.nodejs.org/2013/06/18/node-v0-10-12-stable/
+- split off a -packaging subpackage with RPM macros, etc.
+- build -docs as noarch
+- copy mutiple version logic from nodejs-packaging SRPM for now
+
+* Fri May 31 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.9-1
+- new upstream release 0.10.9
+ http://blog.nodejs.org/2013/05/30/node-v0-10-9-stable/
+
+* Wed May 29 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.8-1
+- new upstream release 0.10.8
+ http://blog.nodejs.org/2013/05/24/node-v0-10-8-stable/
+
+* Wed May 29 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.7-1
+- new upstream release 0.10.7
+ http://blog.nodejs.org/2013/05/17/node-v0-10-7-stable/
+- strip openssl from the tarball; it contains prohibited code (RHBZ#967736)
+- patch Makefile so we can just remove all bundled deps completely
+
+* Wed May 15 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.6-1
+- new upstream release 0.10.6
+ http://blog.nodejs.org/2013/05/14/node-v0-10-6-stable/
+
+* Mon May 06 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.5-3
+- nodejs-fixdep: work properly when a package has no dependencies
+
+* Mon Apr 29 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.5-2
+- nodejs-symlink-deps: make it work when --check is used and just
+ devDependencies exist
+
+* Wed Apr 24 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.5-1
+- new upstream release 0.10.5
+ http://blog.nodejs.org/2013/04/23/node-v0-10-5-stable/
+
+* Mon Apr 15 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.4-1
+- new upstream release 0.10.4
+ http://blog.nodejs.org/2013/04/11/node-v0-10-4-stable/
+- add no-op macro to permit spec compatibility with EPEL
+
+* Thu Apr 04 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.3-2
+- nodejs-symlink-deps: symlink unconditionally in the buildroot
+
+* Wed Apr 03 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.3-1
+- new upstream release 0.10.3
+ http://blog.nodejs.org/2013/04/03/node-v0-10-3-stable/
+- nodejs-symlink-deps: only create symlink if target exists
+- nodejs-symlink-deps: symlink devDependencies when --check is used
+
+* Sun Mar 31 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.2-1
+- new upstream release 0.10.2
+ http://blog.nodejs.org/2013/03/28/node-v0-10-2-stable/
+- remove %%nodejs_arches macro since it will only be useful if it is present in
+ the redhat-rpm-config package
+- add default filtering macro to remove unwanted Provides from native modules
+- nodejs-symlink-deps now supports multiple modules in one SRPM properly
+- nodejs-symlink-deps also now supports a --check argument that works in the
+ current working directry instead of the buildroot
+
+* Fri Mar 22 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.1-1
+- new upstream release 0.10.1
+ http://blog.nodejs.org/2013/03/21/node-v0-10-1-stable/
+
+* Wed Mar 20 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.0-4
+- fix escaping in dependency generator regular expressions (RHBZ#923941)
+
+* Wed Mar 13 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.0-3
+- add virtual ABI provides for node and v8 so binary module's deps break when
+ binary compatibility is broken
+- automatically add matching Requires to nodejs binary modules
+- add %%nodejs_arches macro to future-proof ExcluseArch stanza in dependent
+ packages
+
+* Tue Mar 12 2013 Stephen Gallagher sgallagh@redhat.com - 0.10.0-2
+- Fix up documentation subpackage
+
+* Mon Mar 11 2013 Stephen Gallagher sgallagh@redhat.com - 0.10.0-1
+- Update to stable 0.10.0 release
+- https://raw.github.com/joyent/node/v0.10.0/ChangeLog
+
+* Thu Feb 14 2013 Fedora Release Engineering rel-eng@lists.fedoraproject.org - 0.9.5-11
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
+
+* Tue Jan 22 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-10
+- minor bugfixes to RPM magic
+ - nodejs-symlink-deps: don't create an empty node_modules dir when a module
+ has no dependencies
+ - nodes-fixdep: support adding deps when none exist
+- Add the full set of headers usually bundled with node as deps to nodejs-devel.
+ This way `npm install` for native modules that assume the stuff bundled with
+ node exists will usually "just work".
+-move RPM magic to nodejs-devel as requested by FPC
+
+* Sat Jan 12 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-9
+- fix brown paper bag bug in requires generation script
+
+* Thu Jan 10 2013 Stephen Gallagher sgallagh@redhat.com - 0.9.5-8
+- Build debug binary and install it in the nodejs-devel subpackage
+
+* Thu Jan 10 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-7
+- don't use make install since it rebuilds everything
+
+* Thu Jan 10 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-6
+- add %%{?isa}, epoch to v8 deps
+
+* Wed Jan 09 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-5
+- add defines to match libuv (#892601)
+- make v8 dependency explicit (and thus more accurate)
+- add -g to $C(XX)FLAGS instead of patching configure to add it
+- don't write pointless 'npm(foo) > 0' deps
+
+* Sat Jan 05 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-4
+- install development headers
+- add nodejs_sitearch macro
+
+* Wed Jan 02 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-3
+- make nodejs-symlink-deps actually work
+
+* Tue Jan 01 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-2
+- provide nodejs-devel so modules can BuildRequire it (and be consistent
+ with other interpreted languages in the distro)
+
+* Tue Jan 01 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-1
+- new upstream release 0.9.5
+- provide nodejs-devel for the moment
+- fix minor bugs in RPM magic
+- add nodejs_fixdep macro so packagers can easily adjust dependencies in
+ package.json files
+
+* Wed Dec 26 2012 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.4-1
+- new upstream release 0.9.4
+- system library patches are now upstream
+- respect optflags
+- include documentation in subpackage
+- add RPM dependency generation and related magic
+- guard libuv depedency so it always gets bumped when nodejs does
+- add -devel subpackage with enough to make node-gyp happy
+
+* Wed Dec 19 2012 Dan Horák <dan[at]danny.cz> - 0.9.3-8
+- set exclusive arch list to match v8
+
+* Tue Dec 18 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-7
+- Add remaining changes from code review
+- Remove unnecessary BuildRequires on findutils
+- Remove %%clean section
+
+* Fri Dec 14 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-6
+- Fixes from code review
+- Fix executable permissions
+- Correct the License field
+- Build debuginfo properly
+
+* Thu Dec 13 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-5
+- Return back to using the standard binary name
+- Temporarily adding a conflict against the ham radio node package until they
+ complete an agreed rename of their binary.
+
+* Wed Nov 28 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-4
+- Rename binary and manpage to nodejs
+
+* Mon Nov 19 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-3
+- Update to latest upstream development release 0.9.3
+- Include upstreamed patches to unbundle dependent libraries
+
+* Tue Oct 23 2012 Adrian Alves alvesadrian@fedoraproject.org 0.8.12-1
+- Fixes and Patches suggested by Matthias Runge
+
+* Mon Apr 09 2012 Adrian Alves alvesadrian@fedoraproject.org 0.6.5
+- First build.
+
diff --git a/nodejs_native.attr b/nodejs_native.attr
new file mode 100644
index 0000000..0527af6
--- /dev/null
+++ b/nodejs_native.attr
@@ -0,0 +1,2 @@
+%__nodejs_native_requires %{_rpmconfigdir}/nodejs_native.req
+%__nodejs_native_path ^/usr/lib.*/node_modules/.*\.node$
diff --git a/sources b/sources
new file mode 100644
index 0000000..9608953
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+SHA512 (node-v6.17.1-stripped.tar.gz) = 0c89917d14872bfdb94cd2ee428f67093fdef16cbaff5bd96d00960c040c23ce95550d3b634172035b28e214caeac7d2808e0b0b152885deb33b5ec55a6a2f7e
commit 497f09bac44db42a8665c625eb8df9965d12b36e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 17 14:22:40 2022 -0500
Support building Node.js 16.x for EPEL 7
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 58e9503..97f12b9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -10,11 +10,15 @@
# LTO is currently broken on Node.js builds
%define _lto_cflags %{nil}
+# Heavy-handed approach to avoiding issues with python
+# bytecompiling files in the node_modules/ directory
+%global __python %{__python3}
+
# == Master Relase ==
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -152,16 +156,22 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
BuildRequires: make
-BuildRequires: python3-devel
-BuildRequires: python3-setuptools
-BuildRequires: python3-jinja2
+BuildRequires: python%{python3_pkgversion}-devel
+BuildRequires: python%{python3_pkgversion}-setuptools
+BuildRequires: python%{python3_pkgversion}-jinja2
%if !%{with python3_fixup}
BuildRequires: python-unversioned-command
%endif
BuildRequires: zlib-devel
BuildRequires: brotli-devel
-BuildRequires: gcc >= 6.3.0
-BuildRequires: gcc-c++ >= 6.3.0
+%if 0%{?rhel} && 0%{?rhel} < 8
+BuildRequires: devtoolset-11-gcc
+BuildRequires: devtoolset-11-gcc-c++
+%else
+BuildRequires: gcc >= 8.3.0
+BuildRequires: gcc-c++ >= 8.3.0
+%endif
+
BuildRequires: jq
# needed to generate bundled provides for npm dependencies
# https://src.fedoraproject.org/rpms/nodejs/pull-request/2
@@ -191,8 +201,15 @@ Provides: bundled(nghttp2) = %{nghttp2_version}
# provide releases for it.
Provides: bundled(llhttp) = %{llhttp_version}
+%if 0%{?rhel} && 0%{?rhel} < 8
+BuildRequires: openssl11-devel >= %{openssl_minimum}
+Requires: openssl11 >= %{openssl_minimum}
+%global ssl_configure --shared-openssl --shared-openssl-includes=%{_includedir}/openssl11 --shared-openssl-libpath=%{_libdir}/openssl11
+%else
BuildRequires: openssl-devel >= %{openssl_minimum}
Requires: openssl >= %{openssl_minimum}
+%global ssl_configure --shared-openssl
+%endif
# we need the system certificate store
Requires: ca-certificates
@@ -200,7 +217,11 @@ Requires: ca-certificates
Requires: nodejs-libs%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
# Pull in the full-icu data by default
+%if 0%{?rhel} && 0%{?rhel} < 8
+Requires: nodejs-full-i18n%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
+%else
Recommends: nodejs-full-i18n%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
+%endif
# we need ABI virtual provides where SONAMEs aren't enough/not present so deps
# break when binary compatibility is broken
@@ -256,7 +277,12 @@ Requires: (nodejs-packaging if rpm-build)
%endif
# Make sure we keep NPM up to date when we update Node.js
+%if 0%{?rhel} && 0%{?rhel} < 8
+Requires: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
+%else
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
+%endif
+
%description
Node.js is a platform built on Chrome's JavaScript runtime
@@ -340,7 +366,11 @@ Release: %{npm_release}%{?dist}
Obsoletes: npm < 0:3.5.4-6
Provides: npm = %{npm_epoch}:%{npm_version}
Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+%if 0%{?rhel} && 0%{?rhel} < 8
+Requires: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+%else
Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+%endif
# Do not add epoch to the virtual NPM provides or it will break
# the automatic dependency-generation script.
@@ -387,6 +417,12 @@ find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%build
+
+# Activate DevToolset 11 on EPEL 7
+%if 0%{?rhel} && 0%{?rhel} < 8
+. /opt/rh/devtoolset-11/enable
+%endif
+
# When compiled on armv7hl this package generates an out of range
# reference to the literal pool. This is most likely a GCC issue.
%ifarch armv7hl
@@ -429,7 +465,7 @@ export LDFLAGS="%{build_ldflags}"
%{__python3} configure.py --prefix=%{_prefix} \
--shared \
--libdir=%{_lib} \
- --shared-openssl \
+ %{ssl_configure} \
--shared-zlib \
--shared-brotli \
--without-dtrace \
@@ -439,7 +475,7 @@ export LDFLAGS="%{build_ldflags}"
%{__python3} configure.py --prefix=%{_prefix} \
--shared \
--libdir=%{_lib} \
- --shared-openssl \
+ %{ssl_configure} \
--shared-zlib \
--shared-brotli \
--shared-libuv \
@@ -576,6 +612,7 @@ mkdir -p %{buildroot}%{_prefix}/etc
ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
# Install the full-icu data files
+mkdir -p %{buildroot}%{icudatadir}
install -Dpm0644 -t %{buildroot}%{icudatadir} deps/icu/source/converted/*
@@ -589,30 +626,12 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require(
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
# Ensure we have npm and that the version matches
-LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/npm version --json |jq '. | select(.npm | contains("7.24.0"))'
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}%{_bindir}/node %{buildroot}%{_bindir}/npm version --json |jq '. | select(.npm | contains("7.24.0"))'
# Make sure i18n support is working
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
-%pretrans -n npm -p <lua>
--- Replace the npm man directory with a symlink
--- Drop this scriptlet when F31 is EOL
-path = "%{_prefix}/lib/node_modules/npm/man"
-st = posix.stat(path)
-if st and st.type == "directory" then
- status = os.rename(path, path .. ".rpmmoved")
- if not status then
- suffix = 0
- while not status do
- suffix = suffix + 1
- status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
- end
- os.rename(path, path .. ".rpmmoved")
- end
-end
-
-
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
@@ -701,6 +720,9 @@ end
%changelog
+* Mon Jan 17 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-2
+- Add support for building on EPEL 7
+
* Tue Jan 11 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-1
- Improper handling of URI Subject Alternative Names (Medium)(CVE-2021-44531)
- Certificate Verification Bypass via String Injection (Medium)(CVE-2021-44532)
diff --git a/package.cfg b/package.cfg
index 618b18e..54ce9d4 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = rawhide f35
+targets = rawhide f35 epel7
commit 20609b0988594c588e3ed361e48b66b94a877a2f
Merge: 97203e0 9fe5274
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 17 09:36:10 2022 -0500
Merge branch 'epel7' into epel7-merge
commit 9fe52744a293fb453d4c57a6063e5af6b4fa460f
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Jan 14 15:55:11 2022 -0500
Node.js 6.x is years beyond its supported life
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 1fc6100..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,84 +0,0 @@
-/node-v0.9.3.tar.gz
-/node-v0.9.4.tar.gz
-/node-v0.9.5.tar.gz
-/node-v0.10.0.tar.gz
-/node-v0.10.1.tar.gz
-/node-v0.10.2.tar.gz
-/node-v0.10.3.tar.gz
-/node-v0.10.4.tar.gz
-/node-v0.10.5.tar.gz
-/node-v0.10.6.tar.gz
-/node-v0.10.7-stripped.tar.gz
-/node-v0.10.8-stripped.tar.gz
-/node-v0.10.9-stripped.tar.gz
-/node-v0.10.12-stripped.tar.gz
-/node-v0.10.13-stripped.tar.gz
-/node-v0.10.14-stripped.tar.gz
-/node-v0.10.16-stripped.tar.gz
-/node-v0.10.17-stripped.tar.gz
-/node-v0.10.18-stripped.tar.gz
-/node-v0.10.19-stripped.tar.gz
-/node-v0.10.20-stripped.tar.gz
-/node-v0.10.21-stripped.tar.gz
-/node-v0.10.22-stripped.tar.gz
-/node-v0.10.23-stripped.tar.gz
-/node-v0.10.24.tar.gz
-/node-v0.10.24-stripped.tar.gz
-/node-v0.10.25-stripped.tar.gz
-/node-v0.10.26-stripped.tar.gz
-/node-v0.10.28-stripped.tar.gz
-/node-v0.10.29-stripped.tar.gz
-/node-v0.10.30-stripped.tar.gz
-/node-v0.10.32-stripped.tar.gz
-/node-v0.10.33-stripped.tar.gz
-/node-v0.10.36-stripped.tar.gz
-/node-v4.2.2-stripped.tar.gz
-/node-v4.2.3-stripped.tar.gz
-/node-v4.2.4-stripped.tar.gz
-/node-v4.2.6-stripped.tar.gz
-/node-v4.3.0-stripped.tar.gz
-/node-v4.3.1-stripped.tar.gz
-/node-v5.7.1-stripped.tar.gz
-/node-v5.8.0-stripped.tar.gz
-/node-v5.9.0.tar.gz
-/node-v5.9.1-stripped.tar.gz
-/node-v5.10.0-stripped.tar.gz
-/node-v5.10.1-stripped.tar.gz
-/node-v5.11.0-stripped.tar.gz
-/node-v6.1.0-stripped.tar.gz
-/node-v6.2.0-stripped.tar.gz
-/node-v6.2.1-stripped.tar.gz
-/node-v6.2.2-stripped.tar.gz
-/node-v6.3.0-stripped.tar.gz
-/node-v6.3.1-stripped.tar.gz
-/node-v6.4.0-stripped.tar.gz
-/node-v6.5.0-stripped.tar.gz
-/node-v6.6.0-stripped.tar.gz
-/node-v6.7.0-stripped.tar.gz
-/node-v6.8.0-stripped.tar.gz
-/node-v6.8.1-stripped.tar.gz
-/node-v6.9.0-stripped.tar.gz
-/node-v6.9.1-stripped.tar.gz
-/node-v6.9.2-stripped.tar.gz
-/node-v6.9.3-stripped.tar.gz
-/node-v6.9.4-stripped.tar.gz
-/node-v6.9.5-stripped.tar.gz
-/node-v6.10.0-stripped.tar.gz
-/node-v6.10.1-stripped.tar.gz
-/node-v6.10.2-stripped.tar.gz
-/node-v6.10.3-stripped.tar.gz
-/node-v6.11.0-stripped.tar.gz
-/node-v6.11.1-stripped.tar.gz
-/node-v6.11.2-stripped.tar.gz
-/node-v6.11.3-stripped.tar.gz
-/node-v6.11.4-stripped.tar.gz
-/node-v6.11.5-stripped.tar.gz
-/node-v6.12.0-stripped.tar.gz
-/node-v6.12.2-stripped.tar.gz
-/node-v6.12.3-stripped.tar.gz
-/node-v6.13.1-stripped.tar.gz
-/node-v6.14.0-stripped.tar.gz
-/node-v6.14.2-stripped.tar.gz
-/node-v6.14.3-stripped.tar.gz
-/node-v6.16.0-stripped.tar.gz
-/node-v6.17.1-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-files-for-bundled-deps.patch
deleted file mode 100644
index a97a09a..0000000
--- a/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 8946146b37e4170c406fbdd7c60f1bbb79a9311a Mon Sep 17 00:00:00 2001
-From: Zuzana Svetlikova zsvetlik@redhat.com
-Date: Wed, 6 Sep 2017 14:17:21 +0200
-Subject: [PATCH] dont run gyp on shared deps
-
----
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 577d0e232a..bb47a1b95e 100644
---- a/Makefile
-+++ b/Makefile
-@@ -77,7 +77,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
- $(MAKE) -C out BUILDTYPE=Debug V=$(V)
- if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
-
--out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
-+out/Makefile: common.gypi deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
- $(PYTHON) tools/gyp_node.py -f make
-
- config.gypi: configure
---
-2.14.1
-
diff --git a/dead.package b/dead.package
new file mode 100644
index 0000000..9e77afb
--- /dev/null
+++ b/dead.package
@@ -0,0 +1 @@
+Node.js 6.x is years beyond its supported life
diff --git a/macros.nodejs b/macros.nodejs
deleted file mode 100644
index 468a30d..0000000
--- a/macros.nodejs
+++ /dev/null
@@ -1,33 +0,0 @@
-# nodejs binary
-%__nodejs %{_bindir}/node
-
-# nodejs library directory
-%nodejs_sitelib %{_prefix}/lib/node_modules
-
-#arch specific library directory
-#for future-proofing only; we don't do multilib
-%nodejs_sitearch %{nodejs_sitelib}
-
-# currently installed nodejs version
-%nodejs_version %(%{__nodejs} -v | sed s/v//)
-
-# symlink dependencies so `npm link` works
-# this should be run in every module's %%install section
-# pass --check to work in the current directory instead of the buildroot
-# pass --no-devdeps to ignore devDependencies when --check is used
-%nodejs_symlink_deps %{_rpmconfigdir}/nodejs-symlink-deps %{nodejs_sitelib}
-
-# patch package.json to fix a dependency
-# see `man npm-json` for details on writing dependencies for package.json files
-# e.g. `%%nodejs_fixdep frobber` makes any version of frobber do
-# `%%nodejs_fixdep frobber '>1.0'` requires frobber > 1.0
-# `%%nodejs_fixdep -r frobber removes the frobber dep
-%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
-
-# macro to filter unwanted provides from Node.js binary native modules
-%nodejs_default_filter %{expand: \
-%global __provides_exclude_from ^%{nodejs_sitearch}/.*\.node$
-}
-
-# no-op macro to allow spec compatibility with EPEL
-%nodejs_find_provides_and_requires %{nil}
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
deleted file mode 100755
index 237ae13..0000000
--- a/nodejs-tarball.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-#!/bin/sh
-
-version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
-rm -f node-v${version}.tar.gz
-wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
-tar -zxf node-v${version}.tar.gz
-rm -rf node-v${version}/deps/openssl
-tar -zcf node-v${version}-stripped.tar.gz node-v${version}
-
-fedpkg new-sources node-v${version}-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
deleted file mode 100644
index 8f2bc62..0000000
--- a/nodejs.spec
+++ /dev/null
@@ -1,1066 +0,0 @@
-# bundle some dependencies missing in Modularity
-%bcond_with bootstrap
-
-%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
-
-# == Node.js Version ==
-# Note: Fedora should only ship LTS versions of Node.js (currently expected
-# to be major versions with even numbers). The odd-numbered versions are new
-# feature releases that are only supported for nine months, which is shorter
-# than a Fedora release lifecycle.
-%global nodejs_epoch 1
-%global nodejs_major 6
-%global nodejs_minor 17
-%global nodejs_patch 1
-%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
-%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
-
-# == Bundled Dependency Versions ==
-# v8 - from deps/v8/include/v8-version.h
-%global v8_major 5
-%global v8_minor 1
-%global v8_build 281
-%global v8_patch 111
-# V8 presently breaks ABI at least every x.y release while never bumping SONAME
-%global v8_abi %{v8_major}.%{v8_minor}
-%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
-
-# c-ares - from deps/cares/include/ares_version.h
-%global c_ares_major 1
-%global c_ares_minor 10
-%global c_ares_patch 1
-%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
-
-# http-parser - from deps/http_parser/http_parser.h
-%global http_parser_major 2
-%global http_parser_minor 8
-%global http_parser_patch 0
-%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
-
-# libuv - from deps/uv/include/uv-version.h
-%global libuv_major 1
-%global libuv_minor 16
-%global libuv_patch 1
-%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
-
-# punycode - from lib/punycode.js
-# Note: this was merged into the mainline since 0.6.x
-%global punycode_major 2
-%global punycode_minor 0
-%global punycode_patch 0
-%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
-
-# npm - from deps/npm/package.json
-%global npm_epoch 1
-%global npm_major 3
-%global npm_minor 10
-%global npm_patch 10
-%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
-
-# In order to avoid needing to keep incrementing the release version for the
-# main package forever, we will just construct one for npm that is guaranteed
-# to increment safely. Changing this can only be done during an update when the
-# base npm version number is increasing.
-%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
-
-# Filter out the NPM bundled dependencies so we aren't providing them
-%global __provides_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
-%global __requires_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
-
-
-Name: nodejs
-Epoch: %{nodejs_epoch}
-Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
-Summary: JavaScript runtime
-License: MIT and ASL 2.0 and ISC and BSD
-Group: Development/Languages
-URL: http://nodejs.org/
-
-ExclusiveArch: %{nodejs_arches}
-
-# nodejs bundles openssl, but we use the system version in Fedora
-# because openssl contains prohibited code, we remove openssl completely from
-# the tarball, using the script in Source100
-Source0: node-v%{nodejs_version}-stripped.tar.gz
-Source100: %{name}-tarball.sh
-
-# The native module Requires generator remains in the nodejs SRPM, so it knows
-# the nodejs and v8 versions. The remainder has migrated to the
-# nodejs-packaging SRPM.
-Source7: nodejs_native.attr
-
-# Disable running gyp on bundled deps we don't use
-Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
-
-BuildRequires: python2-devel
-BuildRequires: libicu-devel
-BuildRequires: zlib-devel
-BuildRequires: gcc >= 4.8.5
-BuildRequires: gcc-c++ >= 4.8.5
-Provides: bundled(http-parser) = %{http_parser_version}
-
-%if %{with bootstrap}
-Provides: bundled(libuv) = %{libuv_version}
-%else
-BuildRequires: systemtap-sdt-devel
-BuildRequires: libuv-devel >= 1:1.9.1
-Requires: libuv >= 1:1.9.1
-%endif
-
-%if 0%{?fedora} > 25
-BuildRequires: compat-openssl10-devel >= 1:1.0.2
-%else
-BuildRequires: openssl-devel >= 1:1.0.2
-%endif
-
-# we need the system certificate store when Patch2 is applied
-Requires: ca-certificates
-
-#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
-#break when binary compatibility is broken
-Provides: nodejs(abi) = %{nodejs_abi}
-Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
-Provides: nodejs(v8-abi) = %{v8_abi}
-Provides: nodejs(v8-abi%{v8_major}) = %{v8_abi}
-
-#this corresponds to the "engine" requirement in package.json
-Provides: nodejs(engine) = %{nodejs_version}
-
-# Node.js currently has a conflict with the 'node' package in Fedora
-# The ham-radio group has agreed to rename their binary for us, but
-# in the meantime, we're setting an explicit Conflicts: here
-Conflicts: node <= 0.3.2-12
-
-# The punycode module was absorbed into the standard library in v0.6.
-# It still exists as a seperate package for the benefit of users of older
-# versions. Since we've never shipped anything older than v0.10 in Fedora,
-# we don't need the seperate nodejs-punycode package, so we Provide it here so
-# dependent packages don't need to override the dependency generator.
-# See also: RHBZ#11511811
-# UPDATE: punycode will be deprecated and so we should unbundle it in Node v8
-# and use upstream module instead
-# https://github.com/nodejs/node/commit/29e49fc286080215031a81effbd59eac092fff...
-Provides: nodejs-punycode = %{punycode_version}
-Provides: npm(punycode) = %{punycode_version}
-
-
-# Node.js has forked c-ares from upstream in an incompatible way, so we need
-# to carry the bundled version internally.
-# See https://github.com/nodejs/node/commit/766d063e0578c0f7758c3a965c971763f43fec...
-Provides: bundled(c-ares) = %{c_ares_version}
-
-# Node.js is closely tied to the version of v8 that is used with it. It makes
-# sense to use the bundled version because upstream consistently breaks ABI
-# even in point releases. Node.js upstream has now removed the ability to build
-# against a shared system version entirely.
-# See https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
-Provides: bundled(v8) = %{v8_version}
-
-%if 0%{?epel}
-# EPEL doesn't support Recommends, so make it strict
-Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
-%else
-Recommends: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
-%endif
-
-
-%description
-Node.js is a platform built on Chrome's JavaScript runtime
-for easily building fast, scalable network applications.
-Node.js uses an event-driven, non-blocking I/O model that
-makes it lightweight and efficient, perfect for data-intensive
-real-time applications that run across distributed devices.
-
-%package devel
-Summary: JavaScript runtime - development headers
-Group: Development/Languages
-Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Requires: openssl-devel%{?_isa}
-Requires: zlib-devel%{?_isa}
-Requires: nodejs-packaging
-#%if ! 0%%{?bootstrap}
-%if %{with bootstrap}
-#deps are bundled
-%else
-Requires: libuv-devel%{?_isa}
-%endif
-
-%description devel
-Development headers for the Node.js JavaScript runtime.
-
-%package -n npm
-Summary: Node.js Package Manager
-Epoch: %{npm_epoch}
-Version: %{npm_version}
-Release: %{npm_release}%{?dist}
-
-# We used to ship npm separately, but it is so tightly integrated with Node.js
-# (and expected to be present on all Node.js systems) that we ship it bundled
-# now.
-Obsoletes: npm < 0:3.5.4-6
-Provides: npm = %{npm_epoch}:%{npm_version}
-Requires: nodejs = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-
-# Do not add epoch to the virtual NPM provides or it will break
-# the automatic dependency-generation script.
-Provides: npm(npm) = %{npm_version}
-
-%description -n npm
-npm is a package manager for node.js. You can use it to install and publish
-your node programs. It manages dependencies and does other cool stuff.
-
-%package docs
-Summary: Node.js API documentation
-Group: Documentation
-BuildArch: noarch
-
-# We don't require that the main package be installed to
-# use the docs, but if it is installed, make sure the
-# version always matches
-Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-
-%description docs
-The API documentation for the Node.js JavaScript runtime.
-
-
-%prep
-%setup -q -n node-v%{nodejs_version}
-
-# remove bundled dependencies that we aren't building
-%patch1 -p1
-rm -rf deps/icu-small \
- deps/zlib
-
-
-%build
-# Work around Fedora 28 build issue:
-# https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
-# Tracking BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1550564
-export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
-
-# build with debugging symbols and add defines from libuv (#892601)
-# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
-# NULL objects. We need to pass -fno-delete-null-pointer-checks
-export CFLAGS='%{optflags} -g \
- -D_LARGEFILE_SOURCE \
- -D_FILE_OFFSET_BITS=64 \
- -DZLIB_CONST \
- -fno-delete-null-pointer-checks'
-export CXXFLAGS='%{optflags} -g \
- -D_LARGEFILE_SOURCE \
- -D_FILE_OFFSET_BITS=64 \
- -DZLIB_CONST \
- -fno-delete-null-pointer-checks'
-
-# Explicit new lines in C(XX)FLAGS can break naive build scripts
-export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
-export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
-
-export LDFLAGS="%{__global_ldflags}"
-
-%if %{with bootstrap}
-./configure --prefix=%{_prefix} \
- --shared-openssl \
- --shared-zlib \
- --without-dtrace \
- --with-intl=system-icu \
- --openssl-use-def-ca-store
-%else
-./configure --prefix=%{_prefix} \
- --shared-openssl \
- --shared-zlib \
- --shared-libuv \
- --with-dtrace \
- --with-intl=system-icu \
- --openssl-use-def-ca-store
-%endif
-
-make BUILDTYPE=Release %{?_smp_mflags}
-
-
-%install
-# Work around Fedora 28 build issue:
-# https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
-# Tracking BZ: https://bugzilla.redhat.com/show_bug.cgi?id=1550564
-export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
-
-rm -rf %{buildroot}
-
-./tools/install.py install %{buildroot} %{_prefix}
-
-# Set the binary permissions properly
-chmod 0755 %{buildroot}/%{_bindir}/node
-
-# own the sitelib directory
-mkdir -p %{buildroot}%{_prefix}/lib/node_modules
-
-# ensure Requires are added to every native module that match the Provides from
-# the nodejs build in the buildroot
-install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native.attr
-cat << EOF > %{buildroot}%{_rpmconfigdir}/nodejs_native.req
-#!/bin/sh
-echo 'nodejs(abi%{nodejs_major}) >= %nodejs_abi'
-echo 'nodejs(v8-abi%{v8_major}) >= %v8_abi'
-EOF
-chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
-
-#install documentation
-mkdir -p %{buildroot}%{_pkgdocdir}/html
-cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
-rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
-
-#node-gyp needs common.gypi too
-mkdir -p %{buildroot}%{_datadir}/node
-cp -p common.gypi %{buildroot}%{_datadir}/node
-
-# Install the GDB init tool into the documentation directory
-mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
-
-# Since the old version of NPM was unbundled, there are a lot of symlinks in
-# it's node_modules directory. We need to keep these as symlinks to ensure we
-# can backtrack on this if we decide to.
-
-# Rename the npm node_modules directory to node_modules.bundled
-mv %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules \
- %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules.bundled
-
-# Recreate all the symlinks
-mkdir -p %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules
-FILES=%{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules.bundled/*
-for f in $FILES
-do
- module=`basename $f`
- ln -s ../node_modules.bundled/$module %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/$module
-done
-
-# install NPM docs to mandir
-mkdir -p %{buildroot}%{_mandir} \
- %{buildroot}%{_pkgdocdir}/npm
-
-cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
-rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
-ln -sf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
-
-# Install Markdown and HTML documentation to %{_pkgdocdir}
-cp -pr deps/npm/html deps/npm/doc %{buildroot}%{_pkgdocdir}/npm/
-rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/html \
- %{buildroot}%{_prefix}/lib/node_modules/npm/doc
-
-ln -sf %{_pkgdocdir} %{buildroot}%{_prefix}/lib/node_modules/npm/html
-ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
-
-
-# Node tries to install some python files into a documentation directory
-# (and not the proper one). Remove them for now until we figure out what to
-# do with them.
-rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
- %{buildroot}/%{_defaultdocdir}/node/lldbinit
-
-%check
-# Fail the build if the versions don't match
-%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
-%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8, '%{v8_version}')"
-%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
-
-# Ensure we have punycode and that the version matches
-%{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
-
-# Ensure we have npm and that the version matches
-NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
-
-%files
-%{_bindir}/node
-%dir %{_prefix}/lib/node_modules
-%dir %{_datadir}/node
-%dir %{_datadir}/systemtap
-%dir %{_datadir}/systemtap/tapset
-%{_datadir}/systemtap/tapset/node.stp
-
-#%if ! 0%%{?bootstrap}
-%if %{with bootstrap}
-#no dtrace
-%else
-%dir %{_usr}/lib/dtrace
-%{_usr}/lib/dtrace/node.d
-%endif
-
-%{_rpmconfigdir}/fileattrs/nodejs_native.attr
-%{_rpmconfigdir}/nodejs_native.req
-%license LICENSE
-%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
-%doc %{_mandir}/man1/node.1*
-
-
-%files devel
-%{_includedir}/node
-%{_datadir}/node/common.gypi
-%{_pkgdocdir}/gdbinit
-
-
-%files -n npm
-%{_bindir}/npm
-%{_prefix}/lib/node_modules/npm
-%ghost %{_sysconfdir}/npmrc
-%ghost %{_sysconfdir}/npmignore
-%doc %{_mandir}/man*/npm*
-%doc %{_mandir}/man5/package.json.5*
-%doc %{_mandir}/man7/removing-npm.7*
-%doc %{_mandir}/man7/semver.7*
-
-
-%files docs
-%dir %{_pkgdocdir}
-%{_pkgdocdir}/html
-%{_pkgdocdir}/npm/html
-%{_pkgdocdir}/npm/doc
-
-%changelog
-* Tue Jun 18 2019 Stephen Gallagher sgallagh@redhat.com - 1:6.17.1-1
-- Update to 6.17.1 security release
-- https://nodejs.org/en/blog/release/v6.17.1/
-- https://nodejs.org/en/blog/release/v6.17.0/
-- Drop debug build
-
-* Thu Jan 10 2019 Stephen Gallagher sgallagh@redhat.com - 1:6.16.0-2
-- Bundle http-parser since it uses backported features not available in RHEL
-
-* Thu Jan 10 2019 Stephen Gallagher sgallagh@redhat.com - 1:6.16.0-1
-- Update to 6.16.0 security release
-- https://nodejs.org/en/blog/release/v6.16.0/
-- https://nodejs.org/en/blog/release/v6.15.1/
-- https://nodejs.org/en/blog/release/v6.15.0/
-- https://nodejs.org/en/blog/release/v6.14.4/
-
-* Thu Jun 14 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.14.3-1
-- Update to 6.14.3 security release
-- https://nodejs.org/en/blog/release/v6.14.3/
-
-* Thu May 03 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.14.2-1
-- Update to 6.14.2
-- https://nodejs.org/en/blog/release/v6.14.2/
-- https://nodejs.org/en/blog/release/v6.14.1/
-
-* Fri Apr 13 2018 Rafael dos Santos rdossant@redhat.com - 1:6.14.0-2
-- Use standard Fedora linker flags (bug #1543859)
-
-* Wed Mar 28 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.14.0-1
-- Update to 6.14.0
-- https://nodejs.org/en/blog/release/v6.14.0/
-
-* Thu Mar 08 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.13.1-1
-- Update to 6.13.1
-- https://nodejs.org/en/blog/release/v6.12.4/
-- https://nodejs.org/en/blog/release/v6.12.5/
-- https://nodejs.org/en/blog/release/v6.13.0/
-- https://nodejs.org/en/blog/release/v6.13.1/
-
-* Thu Jan 11 2018 Stephen Gallagher sgallagh@redhat.com - 1:6.12.3-1
-- Update to 6.12.3
-- https://nodejs.org/en/blog/release/v6.12.3/
-
-* Fri Dec 08 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.12.2-1
-- Update to 6.12.2
-- https://nodejs.org/en/blog/release/v6.12.2/
-
-* Mon Nov 13 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.12.0-1
-- Update to 6.12.0
-
-* Thu Oct 26 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.11.5-1
-- Update to 6.11.5 security release
-
-* Fri Oct 06 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.4-1
-- Update to 6.11.4
-- https://nodejs.org/en/blog/release/v6.11.4/
-- use bcond macro
-
-* Thu Sep 21 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6:11.3-2
-- Adjust spec for modularity
-
-* Thu Sep 07 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.3-1
-- Update to 6.11.3
-- https://nodejs.org/en/blog/release/v6.11.3/
-- remove openssl 1.0.1 patches
-
-* Wed Aug 23 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.11.2-2
-- Move to requiring OpenSSL 1.0.2
-- Unbundle http-parser again
-
-* Tue Aug 22 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.2-1.3
-- Run gyp on http-parser
-
-* Tue Aug 15 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.11.2-1.2
-- Add bundled Provides for http-parser
-
-* Tue Aug 15 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.11.2-1.1
-- Temporarily bundle http-parser
-- Resolves: RHBZ#1481470
-
-* Wed Aug 02 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.2-1
-- Update to 6.11.2
-- https://nodejs.org/en/blog/release/v6.11.2/
-- remove GCC 7 patch merged upstream
-
-* Thu Jul 13 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.1-1
-- Security update (https://nodejs.org/en/blog/vulnerability/july-2017-security-releases/)
-
-* Thu Jun 29 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.0-2
-- Fix typo
-
-* Thu Jun 29 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.11.0-1
-- Update to 6.11.0
-- https://nodejs.org/en/blog/release/v6.10.3/
-- explicitly depend on http-parser (RHBZ#1457763)
-
-* Wed May 10 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.3-1
-- Update to 6.10.3 (LTS)
-- https://nodejs.org/en/blog/release/v6.10.3/
-- Stop using the bundled http-parser now that there is an upstream
- release with a new-enough version.
-
-* Tue May 09 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.10.2-3
-- Bootstrap systemtap-sdt-devel for modularity
-
-* Wed Apr 19 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.2-2
-- Switch to final upstream patch for GCC 7 compatibility
-
-* Wed Apr 12 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.10.2-1
-- Update to 6.10.2
-
-* Mon Apr 03 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.1-3
-- Move NPM manpages into the correct subpackage
-- Fixes: rhbz#1433403
-
-* Mon Apr 03 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.1-2
-- Revert upstream change that is incompatible with OpenSSL 1.0.1
-- Fixes: rhbz#1436445
-
-* Wed Mar 22 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.10.1-1
-- Update to 6.10.1
-- remove small-icu from deps
-
-* Thu Mar 09 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.10.0-1
-- Update to 6.10.0
-- https://nodejs.org/en/blog/release/v6.10.0/
-- New patch for handling system CA certificates
-
-* Tue Feb 28 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.9.5-2
-- Fix FTBFS against GCC 7
-- Resolves: RHBZ 1423991
-
-* Fri Feb 10 2017 Fedora Release Engineering releng@fedoraproject.org - 1:6.9.5-1.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Wed Feb 1 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.9.5-1
-- Update to v6.9.5(security)
-- Reenable debug mode (https://github.com/nodejs/node/pull/10525)
-
-* Tue Jan 17 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.9.4-2
-- Enable DTrace support.
-- Eliminate newlines from CFLAGS due to broken dtrace shim
- https://sourceware.org/bugzilla/show_bug.cgi?id=21063
- Thanks to Kinston Hughes for the fix.
-
-* Tue Jan 10 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.9.4-1
-- Update to v6.9.4
-
-* Thu Jan 05 2017 Stephen Gallagher sgallagh@redhat.com - 1:6.9.3-1
-- https://nodejs.org/en/blog/release/v6.9.3/
-
-* Wed Dec 21 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.9.2-2
-- Debug builds are failing. Disable them.
-
-* Thu Dec 08 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.9.2-1
-- Update to v6.9.2
-
-* Tue Nov 08 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.9.1-4
-- Fix incorrect Conflicts for nodejs-docs
-
-* Tue Nov 08 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.9.1-2
-- Bump revision and rebuild for s390x
-
-* Thu Oct 20 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.9.1-1
-- Update to 6.9.1 LTS release
-- Fix a regression introduced in v6.8.0 in readable stream that caused unpipe
- to remove the wrong stream
-- https://nodejs.org/en/blog/release/v6.9.1/
-
-* Tue Oct 18 2016 Stephen Gallagher sgallagh@redhat.com - -
-- Update to 6.9.0 LTS release
-- https://nodejs.org/en/blog/release/v6.9.0/
-
-* Mon Oct 17 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.8.1-5
-- Add dist tag to npm nodejs dependency
-
-* Mon Oct 17 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.8.1-4
-- Fix typo in npm nodejs dependency
-
-* Sat Oct 15 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.8.1-3
-- Bump release version for tagging bug
-
-* Sat Oct 15 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.8.1-1
-- Update node to v6.8.0
-- Fix FTBFS against non-bundled zlib
-
-* Thu Oct 13 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.8.0-108
-- Update node to v6.8.0 and npm@3.10.8
-
-* Tue Sep 27 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.7.0-107
-- Update to 6.7.0
-- https://nodejs.org/en/blog/release/v6.7.0/
-
-* Fri Sep 16 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.6.0-106
-- Drop Conflicts: from main package.
- It wasn't needed and was breaking upgrades in some cases.
-- Move npm support files into the npm package
-- Mark manpages as %%doc
-
-* Fri Sep 16 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.6.0-105
-- Update to 6.6.0
-- https://github.com/nodejs/node/blob/v6.6.0/doc/changelogs/CHANGELOG_V6.md#6....
-
-* Mon Sep 12 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.5.0-104
-- Add support for building on EPEL 7 against OpenSSL 1.0.1
-- Modify v8_abi autorequires to avoid unnecessary rebuilds
-
-* Mon Aug 29 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.5.0-103
-- Update to 6.5.0
-
-* Mon Aug 22 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.4.0-102
-- Bump release to 102 to fix broken npm dependency
-
-* Thu Aug 18 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.4.0-1
-- Update to 6.4.0
-
-* Tue Aug 16 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.3.1-101
-- Build Node.js with internationalization support
-
-* Thu Aug 04 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.3.1-100
-- Split npm into a subpackage
-
-* Mon Jul 25 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.3.1-1
-- Update to 6.3.1
-- comment out %%patch3
-
-* Mon Jul 18 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.3.0-3
-- Fix epoch version dependency on libuv
-
-* Tue Jul 12 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.3.0-2
-- Patch node.gyp to fix failing ./configure
-
-* Sun Jul 10 2016 Zuzana Svetlikova zsvetlik@redhat.com - 1:6.3.0-1
-- Update node to 6.3.0
-- update punycode to 2.0.0
-- add gcc and gcc-c++ as build dependencies
-- modified system-certs patch
-
-* Sat Jun 18 2016 Tom Hughes tom@compton.nu - 1:6.2.2-1
-- Update to latest stable release 6.2.2
-- Add check on npm version
-
-* Tue Jun 7 2016 Tom Hughes tom@compton.nu - 1:6.2.1-1
-- Update to latest stable release 6.2.1
-
-* Wed May 18 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.2.0-1
-- Update to latest stable release 6.2.0
-- https://github.com/nodejs/node/blob/v6.2.0/doc/changelogs/CHANGELOG_V6.md#6....
-
-* Mon May 09 2016 Stephen Gallagher sgallagh@redhat.com - 1:6.1.0-1
-- Update to latest stable release 6.1.0
-- https://github.com/nodejs/node/blob/v6.1.0/CHANGELOG.md
-
-* Tue May 03 2016 Stephen Gallagher sgallagh@redhat.com - 1:5.11.0-3
-- Drop the epoch on the virtual provides for npm
-
-* Thu Apr 28 2016 Stephen Gallagher sgallagh@redhat.com - 1:5.11.0-2
-- Add epoch and rebuild to preserve upgrade path
-
-* Mon Apr 25 2016 Stephen Gallagher sgallagh@redhat.com - 5.11.0-1
-- Update to latest stable release 5.11.0
-- https://github.com/nodejs/node/blob/v5.11.0/CHANGELOG.md
-
-* Mon Apr 11 2016 Stephen Gallagher sgallagh@redhat.com - 5.10.0-1
-- Update to latest stable release 5.10.1
-- https://github.com/nodejs/node/blob/v5.10.1/CHANGELOG.md
-
-* Fri Apr 01 2016 Stephen Gallagher sgallagh@redhat.com - 5.10.0-1
-- Update to latest security release (5.10.0)
-- Update bundled npm to 3.8.3
-- Fixes serious man-in-the-middle vulnerability with npm
-
-* Wed Mar 23 2016 Stephen Gallagher sgallagh@redhat.com - 5.9.1-1
-- Update to latest stable release (5.9.1)
-- Bundle npm (3.7.3)
-
-* Wed Mar 23 2016 Stephen Gallagher sgallagh@redhat.com - 4.4.1-1
-- Update to 4.4.1 upstream LTS release
-- Add more versatile ABI checking
-
-* Tue Feb 23 2016 Tom Hughes tom@compton.nu - 4.3.1-1
-- Update to 4.3.1 upstream LTS release
-
-* Wed Feb 10 2016 Tom Hughes tom@compton.nu - 4.3.0-3
-- Verify that the built node reports the expected versions
-- Drop unneeded dep on http-parser-devel
-- Add version check for punycode
-
-* Wed Feb 10 2016 Stephen Gallagher sgallagh@redhat.com - 4.3.0-2
-- Fix nodejs-abi to be 4.3
-- Clean up bundled versions in spec file
-
-* Tue Feb 09 2016 Stephen Gallagher sgallagh@redhat.com - 4.3.0-1
-- Update to 4.3.0 upstream LTS release
-- https://github.com/nodejs/node/blob/v4.3.0/CHANGELOG.md
-- Switch to the bundled http-parser
-- Build with -fno-delete-pointer-null-checks for GCC 6
-
-* Tue Feb 9 2016 Tom Hughes tom@compton.nu - 4.2.6-1
-- Update to 4.2.6 upstream release
-
-* Thu Feb 04 2016 Fedora Release Engineering releng@fedoraproject.org - 4.2.4-5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
-
-* Tue Jan 19 2016 Stephen Gallagher sgallagh@redhat.com - 4.2.4-4
-- Force a depdendency on the correct version of http-parser
-
-* Tue Jan 19 2016 Stephen Gallagher sgallagh@redhat.com - 4.2.4-3
-- Force a dependency on the correct version of libuv
-
-* Mon Jan 18 2016 Stephen Gallagher sgallagh@redhat.com - 4.2.4-2
-- Fix Provides: for punycode
-
-* Wed Jan 13 2016 Stephen Gallagher sgallagh@redhat.com - 4.2.4-1
-- New upstream bugfix release 4.2.4
-- https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
-
-* Fri Dec 04 2015 Stephen Gallagher sgallagh@redhat.com 4.2.3-2
-- Add %%with_debug variable to spec file
- The debug build is not supported on all architectures.
-
-* Fri Dec 04 2015 Stephen Gallagher sgallagh@redhat.com 4.2.3-1
-- New upstream security release 4.2.3
-- https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
-- Fix incorrect v8 version
-
-* Wed Dec 2 2015 Peter Robinson pbrobinson@fedoraproject.org 4.2.2-4
-- Use nodejs_arches macro for arch definition (add aarch64 and power64 platforms)
-
-* Wed Dec 02 2015 Stephen Gallagher sgallagh@redhat.com 4.2.2-3
-- Fix nodejs_abi version
-- Also ensure that we are building against the correct libuv
-
-* Wed Dec 02 2015 Stephen Gallagher sgallagh@redhat.com 4.2.2-2
-- Disable debug build for ARMv7 since it fails to build
-
-* Tue Dec 01 2015 Stephen Gallagher sgallagh@redhat.com 4.2.2-1
-- Upgrade to Node.js 4.2.2 (LTS)
-
-* Wed Jun 17 2015 Fedora Release Engineering rel-eng@lists.fedoraproject.org - 0.10.36-5
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
-
-* Wed Apr 29 2015 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.36-4
-- fix incorrect Requires on libuv (RHBZ#1215719)
-
-* Tue Feb 24 2015 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.36-3
-- bump v8 requires (RHBZ#1195457)
-
-* Thu Feb 19 2015 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.36-2
-- build against compat-libuv010
-
-* Thu Feb 19 2015 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.36-1
-- new upstream release 0.10.36
- http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
-- Please note that several upstream releases were skipped due to regressions
- reported in the upstream bug tracker. Please also review the 0.10.34 and
- 0.10.35 changelogs available at the above URL for a list of all changes.
-
-* Wed Nov 19 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.33-1
-- new upstream release 0.10.33
- http://blog.nodejs.org/2014/10/23/node-v0-10-33-stable/
-- This release disables SSLv3 to secure Node.js services against the POODLE
- attack. (CVE-2014-3566; RHBZ#1152789) For more information or to learn how
- to re-enable SSLv3 in order to support legacy clients, please see the upstream
- release announcement linked above.
-
-* Tue Oct 21 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.32-2
-- add Provides nodejs-punycode (RHBZ#1151811)
-
-* Thu Sep 18 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.32-1
-- new upstream release 0.10.32
- http://blog.nodejs.org/2014/08/19/node-v0-10-31-stable/
- http://blog.nodejs.org/2014/09/16/node-v0-10-32-stable/
-
-* Sun Aug 17 2014 Fedora Release Engineering rel-eng@lists.fedoraproject.org - 0.10.30-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
-
-* Fri Aug 01 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.30-1
-- new upstream release 0.10.30
- http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
-
-* Thu Jun 19 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.29-1
-- new upstream release 0.10.29
- http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
-- The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
- be done in a stable distribution release. This build of nodejs will behave as
- if NODE_INVALID_UTF8 was set. For more information on the implications, see:
- http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
-
-* Sat Jun 07 2014 Fedora Release Engineering rel-eng@lists.fedoraproject.org - 0.10.28-3
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
-
-* Sat May 03 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.28-2
-- use the system certificate store instead of the bundled copy
- both are based on the Mozilla CA list, so the only effect this should have is
- making additional certificates added by the system administrator available to
- node
-
-* Sat May 03 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.28-1
-- new upstream release 0.10.28
- There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
- thing updated was npm, which is shipped seperately. The latest was only
- packaged to avoid confusion. Please see the v0.10.27 changelog for relevant
- changes in this update:
- http://blog.nodejs.org/2014/05/01/node-v0-10-27-stable/
-
-* Thu Feb 20 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.26-1
-- new upstream release 0.10.26
- http://blog.nodejs.org/2014/02/18/node-v0-10-26-stable/
-
-* Fri Feb 14 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.25-2
-- rebuild for icu-53 (via v8)
-
-* Mon Jan 27 2014 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.25-1
-- new upstream release 0.10.25
- http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
-
-* Thu Dec 19 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.24-1
-- new upstream release 0.10.24
- http://blog.nodejs.org/2013/12/19/node-v0-10-24-stable/
-- upstream install script installs the headers now
-
-* Thu Dec 12 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.23-1
-- new upstream release 0.10.23
- http://blog.nodejs.org/2013/12/11/node-v0-10-23-stable/
-
-* Tue Nov 12 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.22-1
-- new upstream release 0.10.22
- http://blog.nodejs.org/2013/11/12/node-v0-10-22-stable/
-
-* Fri Oct 18 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.21-1
-- new upstream release 0.10.21
- http://blog.nodejs.org/2013/10/18/node-v0-10-21-stable/
-- resolves an undisclosed security vulnerability in the http module
-
-* Tue Oct 01 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.20-1
-- new upstream release 0.10.20
- http://blog.nodejs.org/2013/09/30/node-v0-10-20-stable/
-
-* Wed Sep 25 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.19-1
-- new upstream release 0.10.19
- http://blog.nodejs.org/2013/09/24/node-v0-10-19-stable/
-
-* Fri Sep 06 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.18-1
-- new upstream release 0.10.18
- http://blog.nodejs.org/2013/09/04/node-v0-10-18-stable/
-
-* Tue Aug 27 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.17-1
-- new upstream release 0.10.17
- http://blog.nodejs.org/2013/08/21/node-v0-10-17-stable/
-- fix duplicated/conflicting documentation files (RHBZ#1001253)
-
-* Sat Aug 17 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.16-1
-- new upstream release 0.10.16
- http://blog.nodejs.org/2013/08/16/node-v0-10-16-stable/
-- add v8-devel to -devel Requires
-- restrict -devel Requires to the same architecture
-
-* Wed Aug 14 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.14-3
-- fix typo in _isa macro in v8 Requires
-
-* Mon Aug 05 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.14-2
-- use unversioned docdir for -docs subpackage
- https://fedoraproject.org/wiki/Changes/UnversionedDocdirs
-- use main package's docdir instead of a seperate -docs directory
-
-* Thu Jul 25 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.14-1
-- new upstream release 0.10.14
- http://blog.nodejs.org/2013/07/25/node-v0-10-14-stable/
-
-* Wed Jul 10 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.13-1
-- new upstream release 0.10.13
- http://blog.nodejs.org/2013/07/09/node-v0-10-13-stable/
-- remove RPM macros, etc. now that they've migrated to nodejs-packaging
-
-* Wed Jun 19 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.12-1
-- new upstream release 0.10.12
- http://blog.nodejs.org/2013/06/18/node-v0-10-12-stable/
-- split off a -packaging subpackage with RPM macros, etc.
-- build -docs as noarch
-- copy mutiple version logic from nodejs-packaging SRPM for now
-
-* Fri May 31 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.9-1
-- new upstream release 0.10.9
- http://blog.nodejs.org/2013/05/30/node-v0-10-9-stable/
-
-* Wed May 29 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.8-1
-- new upstream release 0.10.8
- http://blog.nodejs.org/2013/05/24/node-v0-10-8-stable/
-
-* Wed May 29 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.7-1
-- new upstream release 0.10.7
- http://blog.nodejs.org/2013/05/17/node-v0-10-7-stable/
-- strip openssl from the tarball; it contains prohibited code (RHBZ#967736)
-- patch Makefile so we can just remove all bundled deps completely
-
-* Wed May 15 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.6-1
-- new upstream release 0.10.6
- http://blog.nodejs.org/2013/05/14/node-v0-10-6-stable/
-
-* Mon May 06 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.5-3
-- nodejs-fixdep: work properly when a package has no dependencies
-
-* Mon Apr 29 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.5-2
-- nodejs-symlink-deps: make it work when --check is used and just
- devDependencies exist
-
-* Wed Apr 24 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.5-1
-- new upstream release 0.10.5
- http://blog.nodejs.org/2013/04/23/node-v0-10-5-stable/
-
-* Mon Apr 15 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.4-1
-- new upstream release 0.10.4
- http://blog.nodejs.org/2013/04/11/node-v0-10-4-stable/
-- add no-op macro to permit spec compatibility with EPEL
-
-* Thu Apr 04 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.3-2
-- nodejs-symlink-deps: symlink unconditionally in the buildroot
-
-* Wed Apr 03 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.3-1
-- new upstream release 0.10.3
- http://blog.nodejs.org/2013/04/03/node-v0-10-3-stable/
-- nodejs-symlink-deps: only create symlink if target exists
-- nodejs-symlink-deps: symlink devDependencies when --check is used
-
-* Sun Mar 31 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.2-1
-- new upstream release 0.10.2
- http://blog.nodejs.org/2013/03/28/node-v0-10-2-stable/
-- remove %%nodejs_arches macro since it will only be useful if it is present in
- the redhat-rpm-config package
-- add default filtering macro to remove unwanted Provides from native modules
-- nodejs-symlink-deps now supports multiple modules in one SRPM properly
-- nodejs-symlink-deps also now supports a --check argument that works in the
- current working directry instead of the buildroot
-
-* Fri Mar 22 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.1-1
-- new upstream release 0.10.1
- http://blog.nodejs.org/2013/03/21/node-v0-10-1-stable/
-
-* Wed Mar 20 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.0-4
-- fix escaping in dependency generator regular expressions (RHBZ#923941)
-
-* Wed Mar 13 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.10.0-3
-- add virtual ABI provides for node and v8 so binary module's deps break when
- binary compatibility is broken
-- automatically add matching Requires to nodejs binary modules
-- add %%nodejs_arches macro to future-proof ExcluseArch stanza in dependent
- packages
-
-* Tue Mar 12 2013 Stephen Gallagher sgallagh@redhat.com - 0.10.0-2
-- Fix up documentation subpackage
-
-* Mon Mar 11 2013 Stephen Gallagher sgallagh@redhat.com - 0.10.0-1
-- Update to stable 0.10.0 release
-- https://raw.github.com/joyent/node/v0.10.0/ChangeLog
-
-* Thu Feb 14 2013 Fedora Release Engineering rel-eng@lists.fedoraproject.org - 0.9.5-11
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
-
-* Tue Jan 22 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-10
-- minor bugfixes to RPM magic
- - nodejs-symlink-deps: don't create an empty node_modules dir when a module
- has no dependencies
- - nodes-fixdep: support adding deps when none exist
-- Add the full set of headers usually bundled with node as deps to nodejs-devel.
- This way `npm install` for native modules that assume the stuff bundled with
- node exists will usually "just work".
--move RPM magic to nodejs-devel as requested by FPC
-
-* Sat Jan 12 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-9
-- fix brown paper bag bug in requires generation script
-
-* Thu Jan 10 2013 Stephen Gallagher sgallagh@redhat.com - 0.9.5-8
-- Build debug binary and install it in the nodejs-devel subpackage
-
-* Thu Jan 10 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-7
-- don't use make install since it rebuilds everything
-
-* Thu Jan 10 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-6
-- add %%{?isa}, epoch to v8 deps
-
-* Wed Jan 09 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-5
-- add defines to match libuv (#892601)
-- make v8 dependency explicit (and thus more accurate)
-- add -g to $C(XX)FLAGS instead of patching configure to add it
-- don't write pointless 'npm(foo) > 0' deps
-
-* Sat Jan 05 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-4
-- install development headers
-- add nodejs_sitearch macro
-
-* Wed Jan 02 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-3
-- make nodejs-symlink-deps actually work
-
-* Tue Jan 01 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-2
-- provide nodejs-devel so modules can BuildRequire it (and be consistent
- with other interpreted languages in the distro)
-
-* Tue Jan 01 2013 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.5-1
-- new upstream release 0.9.5
-- provide nodejs-devel for the moment
-- fix minor bugs in RPM magic
-- add nodejs_fixdep macro so packagers can easily adjust dependencies in
- package.json files
-
-* Wed Dec 26 2012 T.C. Hollingsworth tchollingsworth@gmail.com - 0.9.4-1
-- new upstream release 0.9.4
-- system library patches are now upstream
-- respect optflags
-- include documentation in subpackage
-- add RPM dependency generation and related magic
-- guard libuv depedency so it always gets bumped when nodejs does
-- add -devel subpackage with enough to make node-gyp happy
-
-* Wed Dec 19 2012 Dan Horák <dan[at]danny.cz> - 0.9.3-8
-- set exclusive arch list to match v8
-
-* Tue Dec 18 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-7
-- Add remaining changes from code review
-- Remove unnecessary BuildRequires on findutils
-- Remove %%clean section
-
-* Fri Dec 14 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-6
-- Fixes from code review
-- Fix executable permissions
-- Correct the License field
-- Build debuginfo properly
-
-* Thu Dec 13 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-5
-- Return back to using the standard binary name
-- Temporarily adding a conflict against the ham radio node package until they
- complete an agreed rename of their binary.
-
-* Wed Nov 28 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-4
-- Rename binary and manpage to nodejs
-
-* Mon Nov 19 2012 Stephen Gallagher sgallagh@redhat.com - 0.9.3-3
-- Update to latest upstream development release 0.9.3
-- Include upstreamed patches to unbundle dependent libraries
-
-* Tue Oct 23 2012 Adrian Alves alvesadrian@fedoraproject.org 0.8.12-1
-- Fixes and Patches suggested by Matthias Runge
-
-* Mon Apr 09 2012 Adrian Alves alvesadrian@fedoraproject.org 0.6.5
-- First build.
-
diff --git a/nodejs_native.attr b/nodejs_native.attr
deleted file mode 100644
index 0527af6..0000000
--- a/nodejs_native.attr
+++ /dev/null
@@ -1,2 +0,0 @@
-%__nodejs_native_requires %{_rpmconfigdir}/nodejs_native.req
-%__nodejs_native_path ^/usr/lib.*/node_modules/.*\.node$
diff --git a/sources b/sources
deleted file mode 100644
index 9608953..0000000
--- a/sources
+++ /dev/null
@@ -1 +0,0 @@
-SHA512 (node-v6.17.1-stripped.tar.gz) = 0c89917d14872bfdb94cd2ee428f67093fdef16cbaff5bd96d00960c040c23ce95550d3b634172035b28e214caeac7d2808e0b0b152885deb33b5ec55a6a2f7e
commit 97203e0629cad6495495abfe369960d676e2335b
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jan 11 14:24:23 2022 -0500
Improper handling of URI Subject Alternative Names (Medium)(CVE-2021-44531)
Certificate Verification Bypass via String Injection (Medium)(CVE-2021-44532)
Incorrect handling of certificate subject and issuer fields (Medium)(CVE-2021-44533)
Prototype pollution via `console.table` properties (Low)(CVE-2022-21824)
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index ecb1c1a..58e9503 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -14,7 +14,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -26,7 +26,7 @@
%global nodejs_epoch 1
%global nodejs_major 16
%global nodejs_minor 13
-%global nodejs_patch 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -701,6 +701,12 @@ end
%changelog
+* Tue Jan 11 2022 Stephen Gallagher sgallagh@redhat.com - 1:16.13.2-1
+- Improper handling of URI Subject Alternative Names (Medium)(CVE-2021-44531)
+- Certificate Verification Bypass via String Injection (Medium)(CVE-2021-44532)
+- Incorrect handling of certificate subject and issuer fields (Medium)(CVE-2021-44533)
+- Prototype pollution via `console.table` properties (Low)(CVE-2022-21824)
+
* Thu Dec 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.1-2
- Enable building for EPEL 8 modules
diff --git a/sources b/sources
index 2b2baaf..486a352 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.13.1-stripped.tar.gz) = 0cfc02dbc6f574dd56df096b6a5b08e32629af93eef3e9e99828b6813b1b49dba283a113542c4d1c7541955a95f1c57f8f642f3d7b722b00708b2853c1461fa0
+SHA512 (node-v16.13.2-stripped.tar.gz) = 0f09ce68779448b60fe84df5ace3bc482c1059e0ca9c9e55cfc51e5ad7e94f7f70c3c561b351674f734dbd4c08944a4f5f82d023a61f292bd6eaad8ab6e2d7c5
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 87f93eb0ac86a181a1a3f18e9c8bdb37b06b6e57
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Dec 2 11:17:26 2021 -0500
Enable building for EPEL 8 modules
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index e5432e4..ecb1c1a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,12 @@
# bundle dependencies that are not available as Fedora modules
%bcond_with bootstrap
+%if 0%{?rhel} && 0%{?rhel} < 9
+%bcond_without python3_fixup
+%else
+%bcond_with python3_fixup
+%endif
+
# LTO is currently broken on Node.js builds
%define _lto_cflags %{nil}
@@ -8,7 +14,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -149,7 +155,9 @@ BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-jinja2
+%if !%{with python3_fixup}
BuildRequires: python-unversioned-command
+%endif
BuildRequires: zlib-devel
BuildRequires: brotli-devel
BuildRequires: gcc >= 6.3.0
@@ -367,6 +375,16 @@ rm -rf deps/brotli
rm -rf deps/v8/third_party/jinja2
rm -rf tools/inspector_protocol/jinja2
+# Replace any instances of unversioned python' with python3
+%if %{with python3_fixup}
+pathfix.py -i %{__python3} -pn $(find -type f ! -name "*.js")
+find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
+find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
+sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
+sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
+find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
+%endif
+
%build
# When compiled on armv7hl this package generates an out of range
@@ -383,6 +401,9 @@ rm -rf tools/inspector_protocol/jinja2
export CC='%{__cc}'
export CXX='%{__cxx}'
+%if %{with python3_fixup}
+export NODE_GYP_FORCE_PYTHON=%{__python3}
+%endif
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
@@ -680,6 +701,9 @@ end
%changelog
+* Thu Dec 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.1-2
+- Enable building for EPEL 8 modules
+
* Thu Dec 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.1-1
- Update to 16.13.1
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
commit 7a3f77a0c3aac346df06eb71f682b72929141743
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Dec 2 08:06:21 2021 -0500
Update to 16.13.1
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 1015a66..e5432e4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -20,7 +20,7 @@
%global nodejs_epoch 1
%global nodejs_major 16
%global nodejs_minor 13
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -36,15 +36,15 @@
%global v8_major 9
%global v8_minor 4
%global v8_build 146
-%global v8_patch 19
+%global v8_patch 24
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
-%global c_ares_minor 17
-%global c_ares_patch 2
+%global c_ares_minor 18
+%global c_ares_patch 1
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
# llhttp - from deps/llhttp/include/llhttp.h
@@ -90,7 +90,7 @@
%global npm_epoch 1
%global npm_major 8
%global npm_minor 1
-%global npm_patch 0
+%global npm_patch 2
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -680,6 +680,10 @@ end
%changelog
+* Thu Dec 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.1-1
+- Update to 16.13.1
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Thu Nov 25 2021 Honza Horak hhorak@redhat.com - 1:16.13.0-3
- Make sure binary node-gyp is executable
Resolves: #2026615
diff --git a/sources b/sources
index 93d90d0..2b2baaf 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.13.0-stripped.tar.gz) = 93aa7e15660da39a5db4b5019b56160f773bc726a704e1fe674f27e16d52fcae855cc7f50d8c119dd12b2181ef7b9d22d9650cae42f30d7e4c0f568b57645e2f
+SHA512 (node-v16.13.1-stripped.tar.gz) = 0cfc02dbc6f574dd56df096b6a5b08e32629af93eef3e9e99828b6813b1b49dba283a113542c4d1c7541955a95f1c57f8f642f3d7b722b00708b2853c1461fa0
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 39f6a05ac8bb2dddf0288d7fba7a981400ad62f9
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Nov 29 16:57:55 2021 -0500
Fix release number
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 698e4b9..1015a66 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -680,7 +680,7 @@ end
%changelog
-* Thu Nov 25 2021 Honza Horak hhorak@redhat.com - 1:16.13.0-2
+* Thu Nov 25 2021 Honza Horak hhorak@redhat.com - 1:16.13.0-3
- Make sure binary node-gyp is executable
Resolves: #2026615
commit 23764b6e3225a69211a2a97706af17dd77ed27d7
Author: Honza Horak hhorak@redhat.com
Date: Thu Nov 25 11:55:28 2021 +0000
Make sure binary node-gyp is executable
This is the same change as already applied in CentOS Stream 9:
https://gitlab.com/redhat/centos-stream/rpms/nodejs/-/blob/c9s/nodejs.spec#L...
Resolves: #2026615
diff --git a/nodejs.spec b/nodejs.spec
index f08747a..698e4b9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -537,6 +537,7 @@ find %{buildroot}%{_prefix}/lib/node_modules/npm \
-exec chmod -x {} ;
# The above command is a little overzealous. Add a few permissions back.
+chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/@npmcli/run-script/lib/node-gyp-bin/node-gyp
chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
# Corepack contains a number of executable"shims", including some for Windows
@@ -679,6 +680,10 @@ end
%changelog
+* Thu Nov 25 2021 Honza Horak hhorak@redhat.com - 1:16.13.0-2
+- Make sure binary node-gyp is executable
+ Resolves: #2026615
+
* Mon Nov 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-1
- Update to 16.13.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
commit 075be128407b0cbfee165920d5646cc32371e079
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Nov 29 16:54:59 2021 -0500
Revert "use python2 for building on EPEL 8"
This reverts commit af7e633b53c4fec96d4a76ac34f3b872fee2a268.
diff --git a/nodejs.spec b/nodejs.spec
index 1b290b1..f08747a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -149,13 +149,7 @@ BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-jinja2
-%if 0%{?fedora} || 0%{?rhel} >= 9
BuildRequires: python-unversioned-command
-%else
-BuildRequires: python2-devel
-BuildRequires: python2-setuptools
-BuildRequires: python2-jinja2
-%endif
BuildRequires: zlib-devel
BuildRequires: brotli-devel
BuildRequires: gcc >= 6.3.0
@@ -685,9 +679,6 @@ end
%changelog
-* Mon Nov 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-2
-- Use python2 for building on EPEL 8
-
* Mon Nov 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-1
- Update to 16.13.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
commit 4eee8bba8db630ae1f56218d7143edf8e2dca9c7
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Nov 8 10:32:45 2021 -0500
Fix missing bundled provides
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index d12857f..1b290b1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -181,6 +181,7 @@ Requires: libnghttp2 >= %{nghttp2_version}
%define nghttp2_configure --shared-nghttp2
%else
%define nghttp2_configure %{nil}
+Provides: bundled(nghttp2) = %{nghttp2_version}
%endif
%endif
commit af7e633b53c4fec96d4a76ac34f3b872fee2a268
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Nov 8 10:12:00 2021 -0500
use python2 for building on EPEL 8
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index f0d2b68..d12857f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -149,7 +149,13 @@ BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-jinja2
+%if 0%{?fedora} || 0%{?rhel} >= 9
BuildRequires: python-unversioned-command
+%else
+BuildRequires: python2-devel
+BuildRequires: python2-setuptools
+BuildRequires: python2-jinja2
+%endif
BuildRequires: zlib-devel
BuildRequires: brotli-devel
BuildRequires: gcc >= 6.3.0
@@ -678,6 +684,9 @@ end
%changelog
+* Mon Nov 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-2
+- Use python2 for building on EPEL 8
+
* Mon Nov 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-1
- Update to 16.13.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
commit da1ef7a4743d091e5560e0efd45fde237449114f
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Nov 8 10:07:01 2021 -0500
Fix changelog date
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 8bc84ec..f0d2b68 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -678,7 +678,7 @@ end
%changelog
-* Mon Oct 25 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-1
+* Mon Nov 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-1
- Update to 16.13.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
- Add support for epel8
commit a2ee1ccfdd1287eed5fb82dedaf276c527e609bd
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Nov 5 14:56:57 2021 -0400
Update to 16.13.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Add support for epel8
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index f5afc1e..8bc84ec 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 12
+%global nodejs_minor 13
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -169,8 +169,13 @@ Provides: bundled(nghttp2) = %{nghttp2_version}
%else
BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:%{libuv_version}
+%if 0%{?fedora} || 0%{?rhel} >= 9
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
Requires: libnghttp2 >= %{nghttp2_version}
+%define nghttp2_configure --shared-nghttp2
+%else
+%define nghttp2_configure %{nil}
+%endif
%endif
# Temporarily bundle llhttp because the upstream doesn't
@@ -416,7 +421,7 @@ export LDFLAGS="%{build_ldflags}"
--shared-zlib \
--shared-brotli \
--shared-libuv \
- --shared-nghttp2 \
+ %{nghttp2_configure} \
--with-dtrace \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
@@ -673,6 +678,11 @@ end
%changelog
+* Mon Oct 25 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.13.0-1
+- Update to 16.13.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+- Add support for epel8
+
* Mon Oct 25 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.12.0-1
- Update to 16.12.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
diff --git a/sources b/sources
index a3b70f5..93d90d0 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.12.0-stripped.tar.gz) = 4ac9e17e50a900711db39712f38b6e384902ea32c6bce2652ebec493a431bb0b73d20637a39a89ad1c68a494e573a3ec5aa37880f21e5770c0b8a9844ea1b6a8
+SHA512 (node-v16.13.0-stripped.tar.gz) = 93aa7e15660da39a5db4b5019b56160f773bc726a704e1fe674f27e16d52fcae855cc7f50d8c119dd12b2181ef7b9d22d9650cae42f30d7e4c0f568b57645e2f
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit aba90e54b0b89f09aa3d442d1dabeafbb0da7f64
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Oct 25 09:58:28 2021 -0400
Update to 16.12.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 5420f35..f5afc1e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 11
-%global nodejs_patch 1
+%global nodejs_minor 12
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -89,7 +89,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 8
-%global npm_minor 0
+%global npm_minor 1
%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
@@ -112,7 +112,7 @@
%global histogram_version %{histogram_major}.%{histogram_minor}.%{histogram_patch}
# Node.js 16.9.1 and later comes with an experimental package management tool
-%global corepack_version 0.9.0
+%global corepack_version 0.10.0
Name: nodejs
Epoch: %{nodejs_epoch}
@@ -673,10 +673,14 @@ end
%changelog
+* Mon Oct 25 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.12.0-1
+- Update to 16.12.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Wed Oct 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.11.1-1
- Update to 16.11.1
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
* Thu Sep 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.10.0-1
- Update to 16.10.0
diff --git a/sources b/sources
index 96a0da4..a3b70f5 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.11.1-stripped.tar.gz) = 28bc889637ac8b15b80002b11027ee02d20839ac2262019d6389816221bdf78107a20e51ae439efbb023b3d5b46c183052805b2de53bebee7aa52a66f2040168
+SHA512 (node-v16.12.0-stripped.tar.gz) = 4ac9e17e50a900711db39712f38b6e384902ea32c6bce2652ebec493a431bb0b73d20637a39a89ad1c68a494e573a3ec5aa37880f21e5770c0b8a9844ea1b6a8
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 4c556b450b49cd2af33feee140968cbf14b68b79
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Oct 13 09:20:02 2021 -0400
Update to 16.11.1
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index fc756b0..7155f13 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From b67fd1cbe8be07f4f3c2eb2cfa6df4cd78ab6e70 Mon Sep 17 00:00:00 2001
+From 51f31ab027934c3e7aead556752911e6dee1ea69 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index baae6a3b46bd2680ede8f18166657d3ca6b27027..6b62d40a2ce479e7155a2f23253013b46f11b8b8 100644
+index e55bd8d70242ace659fa9c7945708156e7770f9d..2959b0a436b10c9ff9b104de5130b751d19cb3a9 100644
--- a/Makefile
+++ b/Makefile
@@ -142,11 +142,11 @@ endif
@@ -25,5 +25,5 @@ index baae6a3b46bd2680ede8f18166657d3ca6b27027..6b62d40a2ce479e7155a2f23253013b4
# node_version.h is listed because the N-API version is taken from there
--
-2.32.0
+2.33.0
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 533c437..0900d64 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 7f409cba5389bba6bb10f9a0f05cdf68c4a39338 Mon Sep 17 00:00:00 2001
+From 62ddf8499747fb1e366477d666c0634ad50039a9 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -14,7 +14,7 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index 9327d6e5f5da064b4476adcc38dfa170ad6c16a2..3c54f419e34cb9f06bb32bc318be2de3cefc4546 100755
+index 6efb98c2316f089f3167e486282593245373af3f..a6d2ec939e4480dfae703f3978067537abf9f0f0 100755
--- a/configure.py
+++ b/configure.py
@@ -721,10 +721,16 @@ parser.add_argument('--shared',
@@ -87,5 +87,5 @@ index 41cc1cbc60a9480cc08df3aa0ebe582c2becc3a2..11208f9e7166ab60da46d5ace2257c23
# behave similarly for systemtap
--
-2.32.0
+2.33.0
diff --git a/nodejs.spec b/nodejs.spec
index e672779..5420f35 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -5,7 +5,7 @@
%define _lto_cflags %{nil}
# == Master Relase ==
-# This is used by both the nodejs package and the npm subpackage thar
+# This is used by both the nodejs package and the npm subpackage that
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
%global baserelease 1
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 10
-%global nodejs_patch 0
+%global nodejs_minor 11
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -34,8 +34,8 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 9
-%global v8_minor 3
-%global v8_build 345
+%global v8_minor 4
+%global v8_build 146
%global v8_patch 19
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
@@ -50,7 +50,7 @@
# llhttp - from deps/llhttp/include/llhttp.h
%global llhttp_major 6
%global llhttp_minor 0
-%global llhttp_patch 2
+%global llhttp_patch 4
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
# libuv - from deps/uv/include/uv/version.h
@@ -61,8 +61,8 @@
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 42
-%global nghttp2_patch 0
+%global nghttp2_minor 45
+%global nghttp2_patch 1
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
@@ -88,11 +88,17 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_major 7
-%global npm_minor 24
+%global npm_major 8
+%global npm_minor 0
%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
+# In order to avoid needing to keep incrementing the release version for the
+# main package forever, we will just construct one for npm that is guaranteed
+# to increment safely. Changing this can only be done during an update when the
+# base npm version number is increasing.
+%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
+
# uvwasi - from deps/uvwasi/include/uvwasi.h
%global uvwasi_major 0
%global uvwasi_minor 0
@@ -105,13 +111,6 @@
%global histogram_patch 7
%global histogram_version %{histogram_major}.%{histogram_minor}.%{histogram_patch}
-# In order to avoid needing to keep incrementing the release version for the
-# main package forever, we will just construct one for npm that is guaranteed
-# to increment safely. Changing this can only be done during an update when the
-# base npm version number is increasing.
-%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
-
-
# Node.js 16.9.1 and later comes with an experimental package management tool
%global corepack_version 0.9.0
@@ -155,6 +154,7 @@ BuildRequires: zlib-devel
BuildRequires: brotli-devel
BuildRequires: gcc >= 6.3.0
BuildRequires: gcc-c++ >= 6.3.0
+BuildRequires: jq
# needed to generate bundled provides for npm dependencies
# https://src.fedoraproject.org/rpms/nodejs/pull-request/2
# https://pagure.io/nodejs-packaging/pull-request/10
@@ -561,7 +561,7 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require(
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
# Ensure we have npm and that the version matches
-NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/npm version --json |jq '. | select(.npm | contains("7.24.0"))'
# Make sure i18n support is working
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
@@ -673,6 +673,11 @@ end
%changelog
+* Wed Oct 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.11.1-1
+- Update to 16.11.1
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Thu Sep 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.10.0-1
- Update to 16.10.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
diff --git a/sources b/sources
index 1741e8d..96a0da4 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.10.0-stripped.tar.gz) = db3e99cd64dc5879be342603affb6b31f674deb7b5e37b08c482d93a862c19c2eb929c20ac5636ad19aeec60693c599466c530f911d48da6e8f4cac5d6c81fe4
+SHA512 (node-v16.11.1-stripped.tar.gz) = 28bc889637ac8b15b80002b11027ee02d20839ac2262019d6389816221bdf78107a20e51ae439efbb023b3d5b46c183052805b2de53bebee7aa52a66f2040168
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 99c49fc16fe08b4fecd657fe7762a285aea9f7bf
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Sep 23 16:23:19 2021 -0400
Drop unintended ccache usage
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index fba1484..e672779 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -375,11 +375,8 @@ rm -rf tools/inspector_protocol/jinja2
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
%endif
-#export CC='%{__cc}'
-#export CXX='%{__cxx}'
-
-export CC='ccache gcc'
-export CXX='ccache g++'
+export CC='%{__cc}'
+export CXX='%{__cxx}'
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
commit e13a2ee5560acaa2b18a2733fd7fe47587990c82
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Sep 23 16:16:56 2021 -0400
Update to 16.10.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 3b9ad1d..fc756b0 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 2c7f9fbe4a30ef6e06d4edf5603a638e1775567a Mon Sep 17 00:00:00 2001
+From b67fd1cbe8be07f4f3c2eb2cfa6df4cd78ab6e70 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index cc0539d98e8ab985acf75cd3714d165fc60c34c6..079823ad619ce1b859be26f283af6ac3ee4397e2 100644
+index baae6a3b46bd2680ede8f18166657d3ca6b27027..6b62d40a2ce479e7155a2f23253013b46f11b8b8 100644
--- a/Makefile
+++ b/Makefile
@@ -142,11 +142,11 @@ endif
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index a112320..533c437 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From c5cf0a60bc07de8fa7a23f98c242a218094a6c9c Mon Sep 17 00:00:00 2001
+From 7f409cba5389bba6bb10f9a0f05cdf68c4a39338 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
diff --git a/nodejs.spec b/nodejs.spec
index d3b86ac..fba1484 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 4
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 9
-%global nodejs_patch 1
+%global nodejs_minor 10
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -36,7 +36,7 @@
%global v8_major 9
%global v8_minor 3
%global v8_build 345
-%global v8_patch 16
+%global v8_patch 19
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
@@ -89,8 +89,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 7
-%global npm_minor 21
-%global npm_patch 1
+%global npm_minor 24
+%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -375,8 +375,11 @@ rm -rf tools/inspector_protocol/jinja2
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
%endif
-export CC='%{__cc}'
-export CXX='%{__cxx}'
+#export CC='%{__cc}'
+#export CXX='%{__cxx}'
+
+export CC='ccache gcc'
+export CXX='ccache g++'
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
@@ -673,6 +676,10 @@ end
%changelog
+* Thu Sep 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.10.0-1
+- Update to 16.10.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-4
- Correct the bad merge of corepack fix
diff --git a/sources b/sources
index 0fea247..1741e8d 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.9.1-stripped.tar.gz) = aba020f272d351c0dc5c54fdd8db7a8cf07965d1af2ac1b77879f7dc1736848820648d4d75b6ded4eb3cb51e2f5d6314cbdb31d9a62bbbdc1f43dc1efa7521d5
+SHA512 (node-v16.10.0-stripped.tar.gz) = db3e99cd64dc5879be342603affb6b31f674deb7b5e37b08c482d93a862c19c2eb929c20ac5636ad19aeec60693c599466c530f911d48da6e8f4cac5d6c81fe4
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 0787dcc5e4a0ed51e59cdd9bee534d0ec4e3d23d
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Sep 14 13:25:22 2021 -0400
Correct the bad merge of corepack fix
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index e3d81e5..d3b86ac 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 4
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -533,6 +533,11 @@ find %{buildroot}%{_prefix}/lib/node_modules/npm \
# The above command is a little overzealous. Add a few permissions back.
chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
+# Corepack contains a number of executable"shims", including some for Windows
+# PowerShell. Drop the executable bit for those so we don't pick up an
+# automatic dependency on /usr/bin/pwsh that we cannot satisfy.
+chmod -x %{buildroot}%{_prefix}/lib/node_modules/corepack/shims/*.ps1
+
# Drop the NPM default configuration in place
mkdir -p %{buildroot}%{_sysconfdir}
cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
@@ -668,6 +673,9 @@ end
%changelog
+* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-4
+- Correct the bad merge of corepack fix
+
* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-3
- Drop auto-dependency on PowerShell introduced by corepack
commit 01e00d5acc7066fb62c73511fcf4ab537f574001
Merge: e43df00 8d2c8a7
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Sep 14 16:44:20 2021 -0400
Merge branch '16' into rawhide
diff --cc nodejs.spec
index 7b23945,98e668f..e3d81e5
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -8,7 -8,7 +8,7 @@@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
--%global baserelease 2
++%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@@ -668,9 -673,9 +668,12 @@@ en
%changelog
-* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-2
++* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-3
+ - Drop auto-dependency on PowerShell introduced by corepack
+
+* Tue Sep 14 2021 Sahana Prasad sahana@redhat.com - 1:16.9.1-2
+- Rebuilt with OpenSSL 3.0.0
+
* Mon Sep 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-1
- Update to 16.9.1
- Add experimental 'corepack' tool
commit 8d2c8a7748b3b60748becccaddd136e54b64459b
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Sep 14 13:25:22 2021 -0400
Drop auto-dependency on PowerShell introduced by corepack
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 4a862b7..98e668f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -533,6 +533,11 @@ find %{buildroot}%{_prefix}/lib/node_modules/npm \
# The above command is a little overzealous. Add a few permissions back.
chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
+# Corepack contains a number of executable"shims", including some for Windows
+# PowerShell. Drop the executable bit for those so we don't pick up an
+# automatic dependency on /usr/bin/pwsh that we cannot satisfy.
+chmod -x %{buildroot}%{_prefix}/lib/node_modules/corepack/shims/*.ps1
+
# Drop the NPM default configuration in place
mkdir -p %{buildroot}%{_sysconfdir}
cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
@@ -668,6 +673,9 @@ end
%changelog
+* Tue Sep 14 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-2
+- Drop auto-dependency on PowerShell introduced by corepack
+
* Mon Sep 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-1
- Update to 16.9.1
- Add experimental 'corepack' tool
commit e43df0067aa21caa8889591dcdcf4c58ec923559
Author: Sahana Prasad sahana@redhat.com
Date: Tue Sep 14 19:09:14 2021 +0200
Rebuilt with OpenSSL 3.0.0
diff --git a/nodejs.spec b/nodejs.spec
index 4a862b7..7b23945 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -668,6 +668,9 @@ end
%changelog
+* Tue Sep 14 2021 Sahana Prasad sahana@redhat.com - 1:16.9.1-2
+- Rebuilt with OpenSSL 3.0.0
+
* Mon Sep 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-1
- Update to 16.9.1
- Add experimental 'corepack' tool
commit 97563f52cd138445f5d123d4cc8bb7aa15c1007a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Sep 13 17:05:10 2021 -0400
Update to 16.9.1
Add experimental 'corepack' tool
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index c4eeec5..3b9ad1d 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 9cb78e590f42d3fea0234912558fdd3902d799ba Mon Sep 17 00:00:00 2001
+From 2c7f9fbe4a30ef6e06d4edf5603a638e1775567a Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 609d0614419f86a4fef6171f23ee45830d3ef324..a7ecbce37008f0e7399a26348fe7bed73c3d7516 100644
+index cc0539d98e8ab985acf75cd3714d165fc60c34c6..079823ad619ce1b859be26f283af6ac3ee4397e2 100644
--- a/Makefile
+++ b/Makefile
@@ -142,11 +142,11 @@ endif
@@ -25,5 +25,5 @@ index 609d0614419f86a4fef6171f23ee45830d3ef324..a7ecbce37008f0e7399a26348fe7bed7
# node_version.h is listed because the N-API version is taken from there
--
-2.31.1
+2.32.0
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index d1ec985..a112320 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From c93114b805d4dd5860a5bc7dfd6a0a140444aee7 Mon Sep 17 00:00:00 2001
+From c5cf0a60bc07de8fa7a23f98c242a218094a6c9c Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -47,10 +47,10 @@ index 9327d6e5f5da064b4476adcc38dfa170ad6c16a2..3c54f419e34cb9f06bb32bc318be2de3
shlib_suffix = 'so'
elif sys.platform == 'darwin':
diff --git a/tools/install.py b/tools/install.py
-index 24cf51e73199e60b4c24700e1074fe9bd0a399e6..cce482738804a563b5701ae25039b3d72b0aca73 100755
+index 41cc1cbc60a9480cc08df3aa0ebe582c2becc3a2..11208f9e7166ab60da46d5ace2257c239a7e9263 100755
--- a/tools/install.py
+++ b/tools/install.py
-@@ -119,26 +119,23 @@ def subdir_files(path, dest, action):
+@@ -128,26 +128,23 @@ def subdir_files(path, dest, action):
for subdir, files_in_path in ret.items():
action(files_in_path, subdir + '/')
@@ -87,5 +87,5 @@ index 24cf51e73199e60b4c24700e1074fe9bd0a399e6..cce482738804a563b5701ae25039b3d7
# behave similarly for systemtap
--
-2.31.1
+2.32.0
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index f5b042b..11fd006 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -111,7 +111,10 @@ else
version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
fi
-rm -f node-v${version}.tar.gz node-v${version}-stripped.tar.gz
+rm -rf node-v${version}.tar.gz \
+ node-v${version}-stripped.tar.gz \
+ node-v${version}/ \
+ SHASUMS256.txt
wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz \
http://nodejs.org/dist/v$%7Bversion%7D/SHASUMS256.txt
sha256sum -c SHASUMS256.txt --ignore-missing
@@ -189,6 +192,10 @@ echo "npm"
echo "========================="
grep ""version":" node-v${version}/deps/npm/package.json
echo
+echo "corepack"
+echo "========================="
+grep ""version":" node-v${version}/deps/corepack/package.json
+echo
echo "Make sure these versions match what is in the RPM spec file"
rm -rf node-v${version}
diff --git a/nodejs.spec b/nodejs.spec
index e77bc20..4a862b7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 8
-%global nodejs_patch 0
+%global nodejs_minor 9
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -34,11 +34,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 9
-%global v8_minor 2
-%global v8_build 230
-%global v8_patch 21
-# V8 presently breaks ABI at least every x.y release while never bumping SONAME
-%global v8_abi %{v8_major}.%{v8_minor}
+%global v8_minor 3
+%global v8_build 345
+%global v8_patch 16
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
@@ -92,7 +90,7 @@
%global npm_epoch 1
%global npm_major 7
%global npm_minor 21
-%global npm_patch 0
+%global npm_patch 1
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -114,6 +112,9 @@
%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
+# Node.js 16.9.1 and later comes with an experimental package management tool
+%global corepack_version 0.9.0
+
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
@@ -191,8 +192,6 @@ Recommends: nodejs-full-i18n%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
# break when binary compatibility is broken
Provides: nodejs(abi) = %{nodejs_abi}
Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
-Provides: nodejs(v8-abi) = %{v8_abi}
-Provides: nodejs(v8-abi%{v8_major}) = %{v8_abi}
# this corresponds to the "engine" requirement in package.json
Provides: nodejs(engine) = %{nodejs_version}
@@ -235,6 +234,7 @@ Provides: bundled(icu) = %{icu_version}
# or there's no option to built it as a shared dependency, so we bundle them
Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
+Provides: bundled(corepack) = %{corepack_version}
%if 0%{?fedora}
# Make sure to pull in the appropriate packaging macros when building RPMs
@@ -487,7 +487,6 @@ install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native
cat << EOF > %{buildroot}%{_rpmconfigdir}/nodejs_native.req
#!/bin/sh
echo 'nodejs(abi%{nodejs_major}) >= %nodejs_abi'
-echo 'nodejs(v8-abi%{v8_major}) >= %v8_abi'
EOF
chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
@@ -589,6 +588,10 @@ end
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
+# corepack
+%{_bindir}/corepack
+%{_prefix}/lib/node_modules/corepack
+
%if %{with bootstrap}
# no dtrace
%else
@@ -665,6 +668,12 @@ end
%changelog
+* Mon Sep 13 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.9.1-1
+- Update to 16.9.1
+- Add experimental 'corepack' tool
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Tue Aug 31 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.8.0-1
- Update to 16.8.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
diff --git a/sources b/sources
index c179b0b..0fea247 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.8.0-stripped.tar.gz) = f785d7552548dd6c6514c83467eb197fccba87aee2dda154f631b89dc4dab22674b51450d784e3a7cf239906e951e185db4dcd51ad92a9d4b87a9449c9e4103b
+SHA512 (node-v16.9.1-stripped.tar.gz) = aba020f272d351c0dc5c54fdd8db7a8cf07965d1af2ac1b77879f7dc1736848820648d4d75b6ded4eb3cb51e2f5d6314cbdb31d9a62bbbdc1f43dc1efa7521d5
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit d4c00004d5d0898218f205f60065294d26ad2c53
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Aug 31 13:57:07 2021 -0400
Update to 16.8.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index b2c21a1..c4eeec5 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 88f468c012528efc5b75587ed543a9e78e336a16 Mon Sep 17 00:00:00 2001
+From 9cb78e590f42d3fea0234912558fdd3902d799ba Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index ec4c774748cd9163143bcbb79c9af78148fada4f..45739d94c20d6afc22f210f3b4605e656f06e4e1 100644
+index 609d0614419f86a4fef6171f23ee45830d3ef324..a7ecbce37008f0e7399a26348fe7bed73c3d7516 100644
--- a/Makefile
+++ b/Makefile
@@ -142,11 +142,11 @@ endif
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 032e047..d1ec985 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 67118bf5edf003ac4415ec25ecbdc0a67b149fc2 Mon Sep 17 00:00:00 2001
+From c93114b805d4dd5860a5bc7dfd6a0a140444aee7 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
diff --git a/nodejs.spec b/nodejs.spec
index 035ea51..e77bc20 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 6
-%global nodejs_patch 2
+%global nodejs_minor 8
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -57,7 +57,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 41
+%global libuv_minor 42
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -91,8 +91,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 7
-%global npm_minor 20
-%global npm_patch 3
+%global npm_minor 21
+%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -665,6 +665,11 @@ end
%changelog
+* Tue Aug 31 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.8.0-1
+- Update to 16.8.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Wed Aug 11 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.2-1
- Update to 16.6.2
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
diff --git a/sources b/sources
index 9a98cc3..c179b0b 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.6.2-stripped.tar.gz) = 97210fe4a12f444392a034c707f506506cf4a42c340b9df9240707a875f5a521cffad2be2ad2792a0feca4c47c568b627160adebfaffbbc8e428e824c4281732
+SHA512 (node-v16.8.0-stripped.tar.gz) = f785d7552548dd6c6514c83467eb197fccba87aee2dda154f631b89dc4dab22674b51450d784e3a7cf239906e951e185db4dcd51ad92a9d4b87a9449c9e4103b
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit cdfd803960cb5128e9eb4115b31119b5e50bd451
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Aug 11 16:46:26 2021 -0400
Fix package.cfg
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/package.cfg b/package.cfg
index 311514e..618b18e 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = rawhide f36
+targets = rawhide f35
commit 41ef8447a85f98f2e573beefa17ab4701206f45a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Aug 11 16:36:30 2021 -0400
Update to 16.6.2
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index bf6aa78..035ea51 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
%global nodejs_epoch 1
%global nodejs_major 16
%global nodejs_minor 6
-%global nodejs_patch 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -46,7 +46,7 @@
# https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
%global c_ares_minor 17
-%global c_ares_patch 1
+%global c_ares_patch 2
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
# llhttp - from deps/llhttp/include/llhttp.h
@@ -91,8 +91,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 7
-%global npm_minor 19
-%global npm_patch 1
+%global npm_minor 20
+%global npm_patch 3
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -423,7 +423,7 @@ export LDFLAGS="%{build_ldflags}"
--openssl-use-def-ca-store
%endif
-make BUILDTYPE=Release %{?_smp_mflags}
+%make_build BUILDTYPE=Release
# Extract the ICU data and convert it to the appropriate endianness
pushd deps/
@@ -665,6 +665,10 @@ end
%changelog
+* Wed Aug 11 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.2-1
+- Update to 16.6.2
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Tue Aug 03 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.1-1
- Update to 16.6.1
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
diff --git a/package.cfg b/package.cfg
index ec98f0b..311514e 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = rawhide
+targets = rawhide f36
diff --git a/sources b/sources
index 7247690..9a98cc3 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.6.1-stripped.tar.gz) = cc56b01cb4de9fa45375b4bd3c036c3d6a38016de8bf79d93764261d816c15eb1810191db78ca4e1127525bdf78b1be1d0f965773c60167f1446946cf99c2f3b
+SHA512 (node-v16.6.2-stripped.tar.gz) = 97210fe4a12f444392a034c707f506506cf4a42c340b9df9240707a875f5a521cffad2be2ad2792a0feca4c47c568b627160adebfaffbbc8e428e824c4281732
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit a659677e3aa66b7c3ce700382cd671991bdcd27a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Aug 3 11:13:27 2021 -0400
Update to 16.6.1
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Fixes v8 regression introduced in 16.6.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 24dcb4f..b2c21a1 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 1f9fbdd011f93d9b7818fa4c5e0fd366a89613d0 Mon Sep 17 00:00:00 2001
+From 88f468c012528efc5b75587ed543a9e78e336a16 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 81907c9220f2027e8d25f985de585fd2c2e7bac7..d2023f39eb61e9b777e0d1d0162d21a6453a6eb1 100644
+index ec4c774748cd9163143bcbb79c9af78148fada4f..45739d94c20d6afc22f210f3b4605e656f06e4e1 100644
--- a/Makefile
+++ b/Makefile
@@ -142,11 +142,11 @@ endif
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 0d5a1d8..032e047 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From fae25ad98f1aaad77e31a59405730ebbc53eb5c9 Mon Sep 17 00:00:00 2001
+From 67118bf5edf003ac4415ec25ecbdc0a67b149fc2 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -14,7 +14,7 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index a4c4d26987cb10297662258fab957d8d89b2f9f9..7738a72ffe82034ce109b9eb398f09493b8cd5f5 100755
+index 9327d6e5f5da064b4476adcc38dfa170ad6c16a2..3c54f419e34cb9f06bb32bc318be2de3cefc4546 100755
--- a/configure.py
+++ b/configure.py
@@ -721,10 +721,16 @@ parser.add_argument('--shared',
diff --git a/nodejs.spec b/nodejs.spec
index dae93fb..bf6aa78 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
%global nodejs_epoch 1
%global nodejs_major 16
%global nodejs_minor 6
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -665,6 +665,11 @@ end
%changelog
+* Tue Aug 03 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.1-1
+- Update to 16.6.1
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+- Fixes v8 regression introduced in 16.6.0
+
* Mon Aug 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.0-1
- Update to 16.6.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
diff --git a/sources b/sources
index 01d904a..7247690 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.6.0-stripped.tar.gz) = 33f318257d0cc1ac13625b5f90c3215d345023aefee0a975fbb24edac8e6192d0db5fc614a68d2c582b4bbdd7eea7efff064057624cf9a759129734c1bc2bf32
+SHA512 (node-v16.6.1-stripped.tar.gz) = cc56b01cb4de9fa45375b4bd3c036c3d6a38016de8bf79d93764261d816c15eb1810191db78ca4e1127525bdf78b1be1d0f965773c60167f1446946cf99c2f3b
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 72af3e78094232bcdc5f0948a883cfd318a98956
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Aug 2 08:59:07 2021 -0400
Update to 16.6.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 5fae389..24dcb4f 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,14 +1,14 @@
-From dcc5e9723343bb540ed678e6e3cb93d9a6f00391 Mon Sep 17 00:00:00 2001
+From 1f9fbdd011f93d9b7818fa4c5e0fd366a89613d0 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH 1/3] Disable running gyp on shared deps
+Subject: [PATCH 1/2] Disable running gyp on shared deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 58260979e114588365ebb3ebd5331622440ecff4..9388260f5da5fa01f8881dea53caf849fc278d10 100644
+index 81907c9220f2027e8d25f985de585fd2c2e7bac7..d2023f39eb61e9b777e0d1d0162d21a6453a6eb1 100644
--- a/Makefile
+++ b/Makefile
@@ -142,11 +142,11 @@ endif
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index ae8774c..0d5a1d8 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 75126d1a069e58e4fd659d411bdf9f60f9ae94fc Mon Sep 17 00:00:00 2001
+From fae25ad98f1aaad77e31a59405730ebbc53eb5c9 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -14,10 +14,10 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index d69c52521d80fb3a24f79bcc4d4a364aceb6fa81..83274ac51613cfc3e37fa563aad19447a4028416 100755
+index a4c4d26987cb10297662258fab957d8d89b2f9f9..7738a72ffe82034ce109b9eb398f09493b8cd5f5 100755
--- a/configure.py
+++ b/configure.py
-@@ -720,10 +720,16 @@ parser.add_argument('--shared',
+@@ -721,10 +721,16 @@ parser.add_argument('--shared',
dest='shared',
default=None,
help='compile shared library for embedding node in another project. ' +
@@ -34,7 +34,7 @@ index d69c52521d80fb3a24f79bcc4d4a364aceb6fa81..83274ac51613cfc3e37fa563aad19447
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1307,10 +1313,11 @@ def configure_node(o):
+@@ -1305,10 +1311,11 @@ def configure_node(o):
o['variables']['debug_nghttp2'] = 'false'
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
diff --git a/nodejs.spec b/nodejs.spec
index f8bacd1..dae93fb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 5
+%global nodejs_minor 6
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -34,9 +34,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 9
-%global v8_minor 1
-%global v8_build 269
-%global v8_patch 38
+%global v8_minor 2
+%global v8_build 230
+%global v8_patch 21
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -665,6 +665,10 @@ end
%changelog
+* Mon Aug 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.6.0-1
+- Update to 16.6.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Thu Jul 22 2021 Fedora Release Engineering releng@fedoraproject.org - 1:16.5.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
diff --git a/sources b/sources
index 81a2c8a..01d904a 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.5.0-stripped.tar.gz) = 9f370df93afaec7c5cc6cab08f667dfbaf0f0524a07816c5f823375d102226ca30e6f279bbfcf22fb3bd1b5fb37f7f6137b36c7e393724d2206d43f47db4faa8
+SHA512 (node-v16.6.0-stripped.tar.gz) = 33f318257d0cc1ac13625b5f90c3215d345023aefee0a975fbb24edac8e6192d0db5fc614a68d2c582b4bbdd7eea7efff064057624cf9a759129734c1bc2bf32
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 368b5190bc0369745f1ecb5c267358243e7700d2
Author: Fedora Release Engineering releng@fedoraproject.org
Date: Thu Jul 22 16:12:25 2021 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index 41cca8a..f8bacd1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -665,6 +665,9 @@ end
%changelog
+* Thu Jul 22 2021 Fedora Release Engineering releng@fedoraproject.org - 1:16.5.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
+
* Tue Jul 20 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.5.0-1
- Update to 16.5.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
commit 9bf4a2ac613c0c872610c722a75ffdfe7b02eef7
Merge: f11d379 9285d83
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jul 20 16:09:13 2021 -0400
Merge branch '16' into rawhide
commit 9285d83020fa0e3b496f93c241d6d074d38e053b
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jul 20 16:08:17 2021 -0400
Update to 16.5.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 676b6fe..ae8774c 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From 8506b9411c41dd525249f6b728fd9b91131e8c7c Mon Sep 17 00:00:00 2001
+From 75126d1a069e58e4fd659d411bdf9f60f9ae94fc Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 2/3] Install both binaries and use libdir.
+Subject: [PATCH 2/2] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -14,7 +14,7 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index 4bc790e2f24219fdd57d59cbf2359f51c02707c5..c3802868080920ef5306aef4d6d632ca88f6efcf 100755
+index d69c52521d80fb3a24f79bcc4d4a364aceb6fa81..83274ac51613cfc3e37fa563aad19447a4028416 100755
--- a/configure.py
+++ b/configure.py
@@ -720,10 +720,16 @@ parser.add_argument('--shared',
@@ -34,7 +34,7 @@ index 4bc790e2f24219fdd57d59cbf2359f51c02707c5..c3802868080920ef5306aef4d6d632ca
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1300,10 +1306,11 @@ def configure_node(o):
+@@ -1307,10 +1313,11 @@ def configure_node(o):
o['variables']['debug_nghttp2'] = 'false'
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
@@ -47,7 +47,7 @@ index 4bc790e2f24219fdd57d59cbf2359f51c02707c5..c3802868080920ef5306aef4d6d632ca
shlib_suffix = 'so'
elif sys.platform == 'darwin':
diff --git a/tools/install.py b/tools/install.py
-index 045d406d84be301722f3de62abc448db84e751f8..b3ef4541999126c512e3811881388e0ec8d401c4 100755
+index 24cf51e73199e60b4c24700e1074fe9bd0a399e6..cce482738804a563b5701ae25039b3d72b0aca73 100755
--- a/tools/install.py
+++ b/tools/install.py
@@ -119,26 +119,23 @@ def subdir_files(path, dest, action):
diff --git a/0003-Revert-build-include-minimal-V8-headers-in-distribut.patch b/0003-Revert-build-include-minimal-V8-headers-in-distribut.patch
deleted file mode 100644
index 6a8be05..0000000
--- a/0003-Revert-build-include-minimal-V8-headers-in-distribut.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 804555d0bf0014393883df59c471b42ed11d1f9e Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher sgallagh@redhat.com
-Date: Fri, 2 Jul 2021 09:22:28 -0400
-Subject: [PATCH 3/3] Revert "build: include minimal V8 headers in
- distribution"
-
-This reverts commit 38f32386c138073c6a020ce79085daea15e7b800.
----
- tools/install.py | 17 ++++++-----------
- 1 file changed, 6 insertions(+), 11 deletions(-)
-
-diff --git a/tools/install.py b/tools/install.py
-index b3ef4541999126c512e3811881388e0ec8d401c4..7c0b1ba999cdeacd3431b5334d650677754a9752 100755
---- a/tools/install.py
-+++ b/tools/install.py
-@@ -152,21 +152,16 @@ def files(action):
- if 'true' == variables.get('node_install_npm'): npm_files(action)
-
- headers(action)
-
- def headers(action):
-- def wanted_v8_headers(files_arg, dest):
-- v8_headers = [
-- 'deps/v8/include/cppgc/common.h',
-- 'deps/v8/include/v8.h',
-- 'deps/v8/include/v8-internal.h',
-- 'deps/v8/include/v8-platform.h',
-- 'deps/v8/include/v8-profiler.h',
-- 'deps/v8/include/v8-version.h',
-- 'deps/v8/include/v8config.h',
-+ def ignore_inspector_headers(files_arg, dest):
-+ inspector_headers = [
-+ 'deps/v8/include/v8-inspector.h',
-+ 'deps/v8/include/v8-inspector-protocol.h'
- ]
-- files_arg = [name for name in files_arg if name in v8_headers]
-+ files_arg = [name for name in files_arg if name not in inspector_headers]
- action(files_arg, dest)
-
- action([
- 'common.gypi',
- 'config.gypi',
-@@ -182,11 +177,11 @@ def headers(action):
-
- # Add the expfile that is created on AIX
- if sys.platform.startswith('aix'):
- action(['out/Release/node.exp'], 'include/node/')
-
-- subdir_files('deps/v8/include', 'include/node/', wanted_v8_headers)
-+ subdir_files('deps/v8/include', 'include/node/', ignore_inspector_headers)
-
- if 'false' == variables.get('node_shared_libuv'):
- subdir_files('deps/uv/include', 'include/node/', action)
-
- if 'true' == variables.get('node_use_openssl') and \
---
-2.31.1
-
diff --git a/nodejs.spec b/nodejs.spec
index 449c8f6..41cca8a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 4
-%global nodejs_patch 1
+%global nodejs_minor 5
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -36,7 +36,7 @@
%global v8_major 9
%global v8_minor 1
%global v8_build 269
-%global v8_patch 36
+%global v8_patch 38
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -91,7 +91,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 7
-%global npm_minor 18
+%global npm_minor 19
%global npm_patch 1
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
@@ -145,10 +145,6 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
-# Upstream no longer ships all of the v8 headers, but Fedora has packages
-# that require them.
-Patch3: 0003-Revert-build-include-minimal-V8-headers-in-distribut.patch
-
BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
@@ -669,6 +665,10 @@ end
%changelog
+* Tue Jul 20 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.5.0-1
+- Update to 16.5.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Fri Jul 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.1-2
- Re-add support for v8 development headers
diff --git a/sources b/sources
index 205b61b..81a2c8a 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.4.1-stripped.tar.gz) = 20e6537fef961ba7518f4cb26ffb584b6dbc8990cde0bef9b561382c381528940907301e0f1a47063cbc2e133c7a788ae97ea2b0518fcd93e990bfeeff56f011
+SHA512 (node-v16.5.0-stripped.tar.gz) = 9f370df93afaec7c5cc6cab08f667dfbaf0f0524a07816c5f823375d102226ca30e6f279bbfcf22fb3bd1b5fb37f7f6137b36c7e393724d2206d43f47db4faa8
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit f11d3796814be2a7b88221ea9589811bbc22826d
Merge: 198d86c 5e958a4
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Jul 2 09:27:07 2021 -0400
Merge branch '16' into rawhide
commit 5e958a40556eac24c47dfcc63e82613cb836c2c9
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Jul 2 09:25:27 2021 -0400
Re-add support for v8 development headers
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index bf7e87b..5fae389 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,7 +1,7 @@
From dcc5e9723343bb540ed678e6e3cb93d9a6f00391 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH 1/2] Disable running gyp on shared deps
+Subject: [PATCH 1/3] Disable running gyp on shared deps
---
Makefile | 2 +-
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 153a988..676b6fe 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
From 8506b9411c41dd525249f6b728fd9b91131e8c7c Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 2/2] Install both binaries and use libdir.
+Subject: [PATCH 2/3] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
diff --git a/0003-Revert-build-include-minimal-V8-headers-in-distribut.patch b/0003-Revert-build-include-minimal-V8-headers-in-distribut.patch
new file mode 100644
index 0000000..6a8be05
--- /dev/null
+++ b/0003-Revert-build-include-minimal-V8-headers-in-distribut.patch
@@ -0,0 +1,58 @@
+From 804555d0bf0014393883df59c471b42ed11d1f9e Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher sgallagh@redhat.com
+Date: Fri, 2 Jul 2021 09:22:28 -0400
+Subject: [PATCH 3/3] Revert "build: include minimal V8 headers in
+ distribution"
+
+This reverts commit 38f32386c138073c6a020ce79085daea15e7b800.
+---
+ tools/install.py | 17 ++++++-----------
+ 1 file changed, 6 insertions(+), 11 deletions(-)
+
+diff --git a/tools/install.py b/tools/install.py
+index b3ef4541999126c512e3811881388e0ec8d401c4..7c0b1ba999cdeacd3431b5334d650677754a9752 100755
+--- a/tools/install.py
++++ b/tools/install.py
+@@ -152,21 +152,16 @@ def files(action):
+ if 'true' == variables.get('node_install_npm'): npm_files(action)
+
+ headers(action)
+
+ def headers(action):
+- def wanted_v8_headers(files_arg, dest):
+- v8_headers = [
+- 'deps/v8/include/cppgc/common.h',
+- 'deps/v8/include/v8.h',
+- 'deps/v8/include/v8-internal.h',
+- 'deps/v8/include/v8-platform.h',
+- 'deps/v8/include/v8-profiler.h',
+- 'deps/v8/include/v8-version.h',
+- 'deps/v8/include/v8config.h',
++ def ignore_inspector_headers(files_arg, dest):
++ inspector_headers = [
++ 'deps/v8/include/v8-inspector.h',
++ 'deps/v8/include/v8-inspector-protocol.h'
+ ]
+- files_arg = [name for name in files_arg if name in v8_headers]
++ files_arg = [name for name in files_arg if name not in inspector_headers]
+ action(files_arg, dest)
+
+ action([
+ 'common.gypi',
+ 'config.gypi',
+@@ -182,11 +177,11 @@ def headers(action):
+
+ # Add the expfile that is created on AIX
+ if sys.platform.startswith('aix'):
+ action(['out/Release/node.exp'], 'include/node/')
+
+- subdir_files('deps/v8/include', 'include/node/', wanted_v8_headers)
++ subdir_files('deps/v8/include', 'include/node/', ignore_inspector_headers)
+
+ if 'false' == variables.get('node_shared_libuv'):
+ subdir_files('deps/uv/include', 'include/node/', action)
+
+ if 'true' == variables.get('node_use_openssl') and \
+--
+2.31.1
+
diff --git a/nodejs.spec b/nodejs.spec
index cc64321..449c8f6 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -145,6 +145,10 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
+# Upstream no longer ships all of the v8 headers, but Fedora has packages
+# that require them.
+Patch3: 0003-Revert-build-include-minimal-V8-headers-in-distribut.patch
+
BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
@@ -665,11 +669,13 @@ end
%changelog
+* Fri Jul 02 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.1-2
+- Re-add support for v8 development headers
+
* Thu Jul 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.1-1
- Update to 16.4.1
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
-
* Wed Jun 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.0-1
- Update to 16.4.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
commit 198d86c5346500ba8cb90a9c9d9a66926513ed43
Merge: cba03ba 7b85cf7
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Jul 1 14:08:09 2021 -0400
Merge branch '16' into rawhide
commit 7b85cf7accdbb724015b9d2419bc9674b5c8009a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Jul 1 14:07:26 2021 -0400
Update to 16.4.1
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 033f1df..bf7e87b 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 081c89ebc1a3fd1796708f46e32154079a15cf27 Mon Sep 17 00:00:00 2001
+From dcc5e9723343bb540ed678e6e3cb93d9a6f00391 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 124ea16..153a988 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 862cef2e4f62cd747987b15d9832820da856b154 Mon Sep 17 00:00:00 2001
+From 8506b9411c41dd525249f6b728fd9b91131e8c7c Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
diff --git a/nodejs.spec b/nodejs.spec
index f04d8c4..cc64321 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
%global nodejs_epoch 1
%global nodejs_major 16
%global nodejs_minor 4
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 93
@@ -665,6 +665,11 @@ end
%changelog
+* Thu Jul 01 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.1-1
+- Update to 16.4.1
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
+
* Wed Jun 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.0-1
- Update to 16.4.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
diff --git a/sources b/sources
index 94b3bdb..205b61b 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.4.0-stripped.tar.gz) = 695ea82cb94e05f2105211acac5c1cb1b8dc11e999ae1a53be990f4b4af007f8e5654ec678a3e7b99a63330d1eaf4329a346283e4cb739e803f674c2c3c6eaba
+SHA512 (node-v16.4.1-stripped.tar.gz) = 20e6537fef961ba7518f4cb26ffb584b6dbc8990cde0bef9b561382c381528940907301e0f1a47063cbc2e133c7a788ae97ea2b0518fcd93e990bfeeff56f011
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit cba03baa0760ab71ea70769e3f9f7078b605297f
Merge: 310ded1 86d13af
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Jun 24 10:20:41 2021 -0400
Merge branch '16' into rawhide
commit 86d13afe9295f224df9a88c0b97fd02f7738a325
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Jun 24 10:15:22 2021 -0400
Use system version of jinja2 during build
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index c938a2c..f04d8c4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -148,6 +148,7 @@ Patch2: 0002-Install-both-binaries-and-use-libdir.patch
BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
+BuildRequires: python3-jinja2
BuildRequires: python-unversioned-command
BuildRequires: zlib-devel
BuildRequires: brotli-devel
@@ -357,6 +358,8 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
rm -rf deps/zlib
rm -rf deps/brotli
+rm -rf deps/v8/third_party/jinja2
+rm -rf tools/inspector_protocol/jinja2
%build
commit 310ded126e058cfb2853f897a59424fed81fe62c
Merge: 3d8af66 4057b49
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Jun 23 16:26:52 2021 -0400
Merge branch '16' into rawhide
commit 4057b49b1e36b4e6e533e1d732e170be4fa45a79
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Jun 23 16:24:47 2021 -0400
Update to 16.4.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index df53ce7..033f1df 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From da423176c1ec74b660de5687aec1b6c4bc274a08 Mon Sep 17 00:00:00 2001
+From 081c89ebc1a3fd1796708f46e32154079a15cf27 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,10 +8,10 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 939bba64575bff36be4e9225ea92627a75b04904..6c62c6a5169f16477bfc5ff19d2899d50b731603 100644
+index 58260979e114588365ebb3ebd5331622440ecff4..9388260f5da5fa01f8881dea53caf849fc278d10 100644
--- a/Makefile
+++ b/Makefile
-@@ -137,11 +137,11 @@ endif
+@@ -142,11 +142,11 @@ endif
.PHONY: test-code-cache
with-code-cache test-code-cache:
$(warning '$@' target is a noop)
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 0ddb85a..124ea16 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From c483da788bde23870ba1115220d40ec911196d4c Mon Sep 17 00:00:00 2001
+From 862cef2e4f62cd747987b15d9832820da856b154 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -14,7 +14,7 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index 05d43150524946fac12bf5786afbacd90122d4a7..4cd90ed78af7f6ec5e2e0d713ac1231c8862db5d 100755
+index 4bc790e2f24219fdd57d59cbf2359f51c02707c5..c3802868080920ef5306aef4d6d632ca88f6efcf 100755
--- a/configure.py
+++ b/configure.py
@@ -720,10 +720,16 @@ parser.add_argument('--shared',
diff --git a/nodejs.spec b/nodejs.spec
index 49f40a9..c938a2c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 3
+%global nodejs_minor 4
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -34,9 +34,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 9
-%global v8_minor 0
-%global v8_build 257
-%global v8_patch 25
+%global v8_minor 1
+%global v8_build 269
+%global v8_patch 36
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -91,7 +91,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 7
-%global npm_minor 15
+%global npm_minor 18
%global npm_patch 1
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
@@ -662,6 +662,10 @@ end
%changelog
+* Wed Jun 23 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.4.0-1
+- Update to 16.4.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
* Fri Jun 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.3.0-1
- Update to 16.3.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
diff --git a/sources b/sources
index 5603a40..94b3bdb 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.3.0-stripped.tar.gz) = ae7acbae0e2569a5a37c68dfa3fa6e7e7ea820cf8c5efb4bd2264b0adbbf2a5e64a7f96aacd27cbd86e462ff077d133d5e8c357b0a06994a67858ba36752ea28
+SHA512 (node-v16.4.0-stripped.tar.gz) = 695ea82cb94e05f2105211acac5c1cb1b8dc11e999ae1a53be990f4b4af007f8e5654ec678a3e7b99a63330d1eaf4329a346283e4cb739e803f674c2c3c6eaba
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit f02a2195c90870f37b45ee15c5b929488c278d34
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Jun 4 10:55:16 2021 -0400
Update to 16.3.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 38fc8d1..df53ce7 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 3aebb3eb39fd81c1355dffef8617a5028bc3f622 Mon Sep 17 00:00:00 2001
+From da423176c1ec74b660de5687aec1b6c4bc274a08 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 50d6795bc349035ae6b46363e6a05fed59dd2cf9..ddf127a0c5d990e08a2d3dfe78d1d611ed51f657 100644
+index 939bba64575bff36be4e9225ea92627a75b04904..6c62c6a5169f16477bfc5ff19d2899d50b731603 100644
--- a/Makefile
+++ b/Makefile
@@ -137,11 +137,11 @@ endif
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index cc2e527..0ddb85a 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From efd1e3e6e56c3874c7c5b19434223d094d598254 Mon Sep 17 00:00:00 2001
+From c483da788bde23870ba1115220d40ec911196d4c Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -14,10 +14,10 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index 6798b4a445c3878e63a47e078f3cb4e0dc5b5543..14867568d8552d70b92373fadac28d31682d708b 100755
+index 05d43150524946fac12bf5786afbacd90122d4a7..4cd90ed78af7f6ec5e2e0d713ac1231c8862db5d 100755
--- a/configure.py
+++ b/configure.py
-@@ -715,10 +715,16 @@ parser.add_argument('--shared',
+@@ -720,10 +720,16 @@ parser.add_argument('--shared',
dest='shared',
default=None,
help='compile shared library for embedding node in another project. ' +
@@ -34,7 +34,7 @@ index 6798b4a445c3878e63a47e078f3cb4e0dc5b5543..14867568d8552d70b92373fadac28d31
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1286,10 +1292,11 @@ def configure_node(o):
+@@ -1300,10 +1306,11 @@ def configure_node(o):
o['variables']['debug_nghttp2'] = 'false'
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
diff --git a/nodejs.spec b/nodejs.spec
index 6c55d54..49f40a9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 2
+%global nodejs_minor 3
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -52,7 +52,7 @@
# llhttp - from deps/llhttp/include/llhttp.h
%global llhttp_major 6
%global llhttp_minor 0
-%global llhttp_patch 1
+%global llhttp_patch 2
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
# libuv - from deps/uv/include/uv/version.h
@@ -91,8 +91,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 7
-%global npm_minor 13
-%global npm_patch 0
+%global npm_minor 15
+%global npm_patch 1
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -662,6 +662,11 @@ end
%changelog
+* Fri Jun 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.3.0-1
+- Update to 16.3.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+
+
* Wed May 19 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.2.0-1
- Update to 16.2.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
diff --git a/sources b/sources
index e2c172d..5603a40 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.2.0-stripped.tar.gz) = f61280177acf4e73c28c28e6b13fc5c6968728887b3d1a669a4bb2e4fd5849f4076425cab550e2d2057bec015b3e6c886216c2ac1738c9a851c9a98aba3d743b
+SHA512 (node-v16.3.0-stripped.tar.gz) = ae7acbae0e2569a5a37c68dfa3fa6e7e7ea820cf8c5efb4bd2264b0adbbf2a5e64a7f96aacd27cbd86e462ff077d133d5e8c357b0a06994a67858ba36752ea28
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 18a648f82cb71eff08f1e9185159493f24fcec06
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed May 19 09:16:58 2021 -0400
Update to 16.2.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
Fix changelog version numbers
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 5c1719e..6c55d54 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 1
+%global nodejs_minor 2
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -36,7 +36,7 @@
%global v8_major 9
%global v8_minor 0
%global v8_build 257
-%global v8_patch 24
+%global v8_patch 25
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -91,8 +91,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 7
-%global npm_minor 11
-%global npm_patch 2
+%global npm_minor 13
+%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -662,11 +662,16 @@ end
%changelog
-* Tue May 04 2021 Stephen Gallagher sgallagh@redhat.com - 16.1.0-1
+* Wed May 19 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.2.0-1
+- Update to 16.2.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+- Fix changelog version numbers
+
+* Tue May 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.1.0-1
- Update to 16.1.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
- Drop upstreamed patch
-* Thu Apr 29 2021 Stephen Gallagher sgallagh@redhat.com - 16.0.0-1
+* Thu Apr 29 2021 Stephen Gallagher sgallagh@redhat.com - 1:16.0.0-1
- First release of Node.js 16.x
diff --git a/sources b/sources
index 074ec08..e2c172d 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.1.0-stripped.tar.gz) = 2c4e73af9e056f0bd106762c67d019d36b132707a37a673e0a9a9d6fe3188418c647e2dff8851981d9f0a8eca94adc8ff69e561f6cbff4302fc5260c157155fd
+SHA512 (node-v16.2.0-stripped.tar.gz) = f61280177acf4e73c28c28e6b13fc5c6968728887b3d1a669a4bb2e4fd5849f4076425cab550e2d2057bec015b3e6c886216c2ac1738c9a851c9a98aba3d743b
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 3d8af661ad151c39ed6fefb311b3d4723433126c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon May 17 11:17:58 2021 -0400
Update to 14.17.0
https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V14.md#1...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 1b5cf73..962763f 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 0a889af5ee18290d833f7f63742d5b714bdb1a40 Mon Sep 17 00:00:00 2001
+From 867d8911b63b9837d89cd6ba65ea6ebccd7f77e7 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 93d63110ae2e3928a95d24036b86d11885ab240f..79caaec2112cefa8f6a1c947375b517e9676f176 100644
+index 5bb5d7df5f87e2b1d640e027fd4d0c21975959f7..fc812607ac76fadbbc9f4670a479a040a5024780 100644
--- a/Makefile
+++ b/Makefile
@@ -136,11 +136,11 @@ endif
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 9679f8b..94943d1 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 4012d5b9ae521f36c8b0155f591a38383e84407b Mon Sep 17 00:00:00 2001
+From ea59ced68789dc24c95572b84091afcebe9acb98 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/3] Install both binaries and use libdir.
@@ -13,7 +13,7 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index e6f7e4db0040dda00e432352afa7576535d9b672..6cf5c45dde79ce355b532c2f11b5b7ed80fde88a 100755
+index a477bd1c9578d03cd81456c513486620435749ee..3067eb9fc3e5c3eb22eb4ff3d20f87415b115bb8 100755
--- a/configure.py
+++ b/configure.py
@@ -624,10 +624,16 @@ parser.add_option('--shared',
@@ -46,7 +46,7 @@ index e6f7e4db0040dda00e432352afa7576535d9b672..6cf5c45dde79ce355b532c2f11b5b7ed
shlib_suffix = 'so'
elif sys.platform == 'darwin':
diff --git a/tools/install.py b/tools/install.py
-index 729b416fc47d3ff3317ae3671dee977c719a8841..9bfc6234edb7732f9b90f063c2ee4a276e840636 100755
+index 693faff4c37ac4d83a47e818f4412900497a2b62..7c0b1ba999cdeacd3431b5334d650677754a9752 100755
--- a/tools/install.py
+++ b/tools/install.py
@@ -119,26 +119,23 @@ def subdir_files(path, dest, action):
diff --git a/0003-src-add-.note.GNU-stack-section.patch b/0003-src-add-.note.GNU-stack-section.patch
index 74fd28f..f943f9c 100644
--- a/0003-src-add-.note.GNU-stack-section.patch
+++ b/0003-src-add-.note.GNU-stack-section.patch
@@ -1,4 +1,4 @@
-From 6aa11a8cf48463432c0b5c6bfca5c2a5b18b1cc7 Mon Sep 17 00:00:00 2001
+From 7388d30b111414507b1353da12529f23daec4ee3 Mon Sep 17 00:00:00 2001
From: James Addison jay@jp-hosting.net
Date: Tue, 9 Mar 2021 13:08:47 +0000
Subject: [PATCH 3/3] src: add .note.GNU-stack section
@@ -24,22 +24,22 @@ Related: https://github.com/nodejs/node/pull/37688
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
---
- src/large_pages/node_text_start.S | 3 +++
- 1 file changed, 3 insertions(+)
+ src/large_pages/node_text_start.S | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/large_pages/node_text_start.S b/src/large_pages/node_text_start.S
-index 1609b254f0495a32f8896ba96d96bad03f6f2321..d27dd39cc236f0e6be4e68113bfff7b531a37455 100644
+index 3227b62464932ced6d42916a4300ddbd9b4a4fbb..d27dd39cc236f0e6be4e68113bfff7b531a37455 100644
--- a/src/large_pages/node_text_start.S
+++ b/src/large_pages/node_text_start.S
-@@ -1,5 +1,8 @@
-+#if defined(__ELF__)
+@@ -1,7 +1,7 @@
+ #if defined(__ELF__)
+-.section .note.GNU-stack,"",@progbits
+.section .note.GNU-stack,"",%progbits
-+#endif
+ #endif
.text
.align 0x2000
.global __node_text_start
.hidden __node_text_start
- __node_text_start:
--
2.31.1
diff --git a/nodejs.spec b/nodejs.spec
index 4993651..e55b7e4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 16
-%global nodejs_patch 1
+%global nodejs_minor 17
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 83
@@ -36,7 +36,7 @@
%global v8_major 8
%global v8_minor 4
%global v8_build 371
-%global v8_patch 19
+%global v8_patch 23
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -45,7 +45,7 @@
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
-%global c_ares_minor 16
+%global c_ares_minor 17
%global c_ares_patch 1
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
@@ -57,19 +57,19 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 40
+%global libuv_minor 41
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 41
+%global nghttp2_minor 42
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
-%global icu_major 67
-%global icu_minor 1
+%global icu_major 68
+%global icu_minor 2
%global icu_version %{icu_major}.%{icu_minor}
%global icudatadir %{nodejs_datadir}/icudata
@@ -92,7 +92,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 14
-%global npm_patch 12
+%global npm_patch 13
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -669,6 +669,10 @@ end
%changelog
+* Mon May 17 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.17.0-2
+- Update to 14.17.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V14.md#1...
+
* Tue Apr 20 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.1-2
- Disable stack execution (bz#1950528)
diff --git a/sources b/sources
index 96692c4..db3ba87 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.16.1-stripped.tar.gz) = 1ec3f503ecd6f8ffa24c3abc04e4e33758e1d577f645dc9c3a22282e3f4755e44169ca54a178fb90e8edb8ef6490d65edc4fd7fcf6ec9b5445d38630b9861a29
-SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
+SHA512 (node-v14.17.0-stripped.tar.gz) = eb1109d13da376df49f3d0b25c21573585c9aec589e9175e182491211bc5b3fd54980f8002ae85544fa9127b95584c030c8f121b6e2520d5f0feb84ef6dab104
+SHA512 (icu4c-68_2-src.tgz) = 24f3b7981667b37df58118f56ae76a09b719358c1efa8d6f044d28ef8df1c722a894957acadfb3c37aee39ac845893924fc3370d6bbe09875aec8d937059f84b
commit 9f9d592a89e317ceca7837f5ee73fa0474d8ffbc
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue May 4 17:10:37 2021 -0400
Update to 16.1.0
- Update to 16.1.0
- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
- Drop upstreamed patch
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index f58de31..38fc8d1 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,14 +1,14 @@
-From 3e85ce30203fd13ac663680f0103b2a66c864685 Mon Sep 17 00:00:00 2001
+From 3aebb3eb39fd81c1355dffef8617a5028bc3f622 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH 1/3] Disable running gyp on shared deps
+Subject: [PATCH 1/2] Disable running gyp on shared deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 26746d94f4ab8c2580bc3304b293f37c273cd8f5..11dd97805dae7c6fb8485bffc42e104a9624ba13 100644
+index 50d6795bc349035ae6b46363e6a05fed59dd2cf9..ddf127a0c5d990e08a2d3dfe78d1d611ed51f657 100644
--- a/Makefile
+++ b/Makefile
@@ -137,11 +137,11 @@ endif
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 3499c83..cc2e527 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From d5009b7659e101c76f782003e184ba72bce4686b Mon Sep 17 00:00:00 2001
+From efd1e3e6e56c3874c7c5b19434223d094d598254 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 2/3] Install both binaries and use libdir.
+Subject: [PATCH 2/2] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
diff --git a/0003-src-add-.note.GNU-stack-section.patch b/0003-src-add-.note.GNU-stack-section.patch
deleted file mode 100644
index 74ac3e7..0000000
--- a/0003-src-add-.note.GNU-stack-section.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From 7f1be47c1bcd021c5b28a468d443dd49bae705c4 Mon Sep 17 00:00:00 2001
-From: James Addison jay@jp-hosting.net
-Date: Tue, 9 Mar 2021 13:08:47 +0000
-Subject: [PATCH 3/3] src: add .note.GNU-stack section
-
-This indicates to GNU binutils that it can unset the executable stack
-flag on the binary that it is building.
-
-PR-URL: https://github.com/nodejs/node/pull/37688
-Refs: https://github.com/nodejs/node/issues/17933
-Reviewed-By: Daniel Bevenius daniel.bevenius@gmail.com
-
-src: Use %progbits instead of @progbits
-
-While @progbits is preferred for most architectures, there are some
-(notably 32-bit ARM) for which it does not. %progbits is effective
-everywhere.
-
-See https://bugzilla.redhat.com/show_bug.cgi?id=1950528 for more
-details.
-
-Related: https://github.com/nodejs/node/issues/17933
-Related: https://github.com/nodejs/node/pull/37688
-
-Signed-off-by: Stephen Gallagher sgallagh@redhat.com
----
- src/large_pages/node_text_start.S | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/large_pages/node_text_start.S b/src/large_pages/node_text_start.S
-index 3227b62464932ced6d42916a4300ddbd9b4a4fbb..d27dd39cc236f0e6be4e68113bfff7b531a37455 100644
---- a/src/large_pages/node_text_start.S
-+++ b/src/large_pages/node_text_start.S
-@@ -1,7 +1,7 @@
- #if defined(__ELF__)
--.section .note.GNU-stack,"",@progbits
-+.section .note.GNU-stack,"",%progbits
- #endif
- .text
- .align 0x2000
- .global __node_text_start
- .hidden __node_text_start
---
-2.31.1
-
diff --git a/nodejs.spec b/nodejs.spec
index 9b80555..5c1719e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 16
-%global nodejs_minor 0
+%global nodejs_minor 1
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -36,7 +36,7 @@
%global v8_major 9
%global v8_minor 0
%global v8_build 257
-%global v8_patch 17
+%global v8_patch 24
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -52,7 +52,7 @@
# llhttp - from deps/llhttp/include/llhttp.h
%global llhttp_major 6
%global llhttp_minor 0
-%global llhttp_patch 0
+%global llhttp_patch 1
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
# libuv - from deps/uv/include/uv/version.h
@@ -91,8 +91,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 7
-%global npm_minor 10
-%global npm_patch 0
+%global npm_minor 11
+%global npm_patch 2
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -145,10 +145,6 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
-# Patch to disable stack execution. Merged from one upstream patch and
-# one upstream proposed patch
-Patch3: 0003-src-add-.note.GNU-stack-section.patch
-
BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
@@ -666,6 +662,11 @@ end
%changelog
+* Tue May 04 2021 Stephen Gallagher sgallagh@redhat.com - 16.1.0-1
+- Update to 16.1.0
+- https://github.com/nodejs/node/blob/master/doc/changelogs/CHANGELOG_V16.md#1...
+- Drop upstreamed patch
+
* Thu Apr 29 2021 Stephen Gallagher sgallagh@redhat.com - 16.0.0-1
- First release of Node.js 16.x
diff --git a/sources b/sources
index d09a6a1..074ec08 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v16.0.0-stripped.tar.gz) = 45afd2b674a061f9a11ae270015910b16b79d6702a53d8947d7c4c384e024ac381ed386c4ffef3f19a7ff1b760e45f2caf4d4df41ca05b409ad2a5bae46da49b
+SHA512 (node-v16.1.0-stripped.tar.gz) = 2c4e73af9e056f0bd106762c67d019d36b132707a37a673e0a9a9d6fe3188418c647e2dff8851981d9f0a8eca94adc8ff69e561f6cbff4302fc5260c157155fd
SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit 3ef3ddba235327db5773ba72d0e97cf2e2d26068
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Apr 30 11:54:03 2021 -0400
Changes to manpages
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 0f005a7..9b80555 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -645,19 +645,17 @@ end
%doc %{_mandir}/man5/folders.5*
%doc %{_mandir}/man5/install.5*
%doc %{_mandir}/man5/npmrc.5*
+%doc %{_mandir}/man5/npm-shrinkwrap-json.5*
%doc %{_mandir}/man5/package-json.5*
%doc %{_mandir}/man5/package-lock-json.5*
-%doc %{_mandir}/man5/package-locks.5*
-%doc %{_mandir}/man5/shrinkwrap-json.5*
%doc %{_mandir}/man7/config.7*
%doc %{_mandir}/man7/developers.7*
-%doc %{_mandir}/man7/disputes.7*
%doc %{_mandir}/man7/orgs.7*
%doc %{_mandir}/man7/registry.7*
%doc %{_mandir}/man7/removal.7*
%doc %{_mandir}/man7/scope.7*
%doc %{_mandir}/man7/scripts.7*
-%doc %{_mandir}/man7/semver.7*
+%doc %{_mandir}/man7/workspaces.7*
%files docs
commit 49aeab92f056572a23d00106f959e5f0c273252c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Apr 29 09:41:42 2021 -0400
First release of Node.js 16.x
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 1b5cf73..f58de31 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 0a889af5ee18290d833f7f63742d5b714bdb1a40 Mon Sep 17 00:00:00 2001
+From 3e85ce30203fd13ac663680f0103b2a66c864685 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,10 +8,10 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 93d63110ae2e3928a95d24036b86d11885ab240f..79caaec2112cefa8f6a1c947375b517e9676f176 100644
+index 26746d94f4ab8c2580bc3304b293f37c273cd8f5..11dd97805dae7c6fb8485bffc42e104a9624ba13 100644
--- a/Makefile
+++ b/Makefile
-@@ -136,11 +136,11 @@ endif
+@@ -137,11 +137,11 @@ endif
.PHONY: test-code-cache
with-code-cache test-code-cache:
$(warning '$@' target is a noop)
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 9679f8b..3499c83 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 4012d5b9ae521f36c8b0155f591a38383e84407b Mon Sep 17 00:00:00 2001
+From d5009b7659e101c76f782003e184ba72bce4686b Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/3] Install both binaries and use libdir.
@@ -7,33 +7,34 @@ This allows us to build with a shared library for other users while
still providing the normal executable.
Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
+Signed-off-by: Stephen Gallagher sgallagh@redhat.com
---
configure.py | 7 +++++++
tools/install.py | 21 +++++++++------------
2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index e6f7e4db0040dda00e432352afa7576535d9b672..6cf5c45dde79ce355b532c2f11b5b7ed80fde88a 100755
+index 6798b4a445c3878e63a47e078f3cb4e0dc5b5543..14867568d8552d70b92373fadac28d31682d708b 100755
--- a/configure.py
+++ b/configure.py
-@@ -624,10 +624,16 @@ parser.add_option('--shared',
- action='store_true',
+@@ -715,10 +715,16 @@ parser.add_argument('--shared',
dest='shared',
+ default=None,
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
-+parser.add_option('--libdir',
++parser.add_argument('--libdir',
+ action='store',
+ dest='libdir',
+ default='lib',
+ help='a directory to install the shared library into')
+
- parser.add_option('--without-v8-platform',
+ parser.add_argument('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1200,10 +1206,11 @@ def configure_node(o):
+@@ -1286,10 +1292,11 @@ def configure_node(o):
o['variables']['debug_nghttp2'] = 'false'
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
@@ -46,7 +47,7 @@ index e6f7e4db0040dda00e432352afa7576535d9b672..6cf5c45dde79ce355b532c2f11b5b7ed
shlib_suffix = 'so'
elif sys.platform == 'darwin':
diff --git a/tools/install.py b/tools/install.py
-index 729b416fc47d3ff3317ae3671dee977c719a8841..9bfc6234edb7732f9b90f063c2ee4a276e840636 100755
+index 045d406d84be301722f3de62abc448db84e751f8..b3ef4541999126c512e3811881388e0ec8d401c4 100755
--- a/tools/install.py
+++ b/tools/install.py
@@ -119,26 +119,23 @@ def subdir_files(path, dest, action):
diff --git a/0003-src-add-.note.GNU-stack-section.patch b/0003-src-add-.note.GNU-stack-section.patch
index 74fd28f..74ac3e7 100644
--- a/0003-src-add-.note.GNU-stack-section.patch
+++ b/0003-src-add-.note.GNU-stack-section.patch
@@ -1,4 +1,4 @@
-From 6aa11a8cf48463432c0b5c6bfca5c2a5b18b1cc7 Mon Sep 17 00:00:00 2001
+From 7f1be47c1bcd021c5b28a468d443dd49bae705c4 Mon Sep 17 00:00:00 2001
From: James Addison jay@jp-hosting.net
Date: Tue, 9 Mar 2021 13:08:47 +0000
Subject: [PATCH 3/3] src: add .note.GNU-stack section
@@ -24,22 +24,22 @@ Related: https://github.com/nodejs/node/pull/37688
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
---
- src/large_pages/node_text_start.S | 3 +++
- 1 file changed, 3 insertions(+)
+ src/large_pages/node_text_start.S | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/large_pages/node_text_start.S b/src/large_pages/node_text_start.S
-index 1609b254f0495a32f8896ba96d96bad03f6f2321..d27dd39cc236f0e6be4e68113bfff7b531a37455 100644
+index 3227b62464932ced6d42916a4300ddbd9b4a4fbb..d27dd39cc236f0e6be4e68113bfff7b531a37455 100644
--- a/src/large_pages/node_text_start.S
+++ b/src/large_pages/node_text_start.S
-@@ -1,5 +1,8 @@
-+#if defined(__ELF__)
+@@ -1,7 +1,7 @@
+ #if defined(__ELF__)
+-.section .note.GNU-stack,"",@progbits
+.section .note.GNU-stack,"",%progbits
-+#endif
+ #endif
.text
.align 0x2000
.global __node_text_start
.hidden __node_text_start
- __node_text_start:
--
2.31.1
diff --git a/nodejs.spec b/nodejs.spec
index 4993651..0f005a7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -18,12 +18,12 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 14
-%global nodejs_minor 16
-%global nodejs_patch 1
+%global nodejs_major 16
+%global nodejs_minor 0
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
-%global nodejs_soversion 83
+%global nodejs_soversion 93
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release %{baserelease}
@@ -33,10 +33,10 @@
# v8 - from deps/v8/include/v8-version.h
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
-%global v8_major 8
-%global v8_minor 4
-%global v8_build 371
-%global v8_patch 19
+%global v8_major 9
+%global v8_minor 0
+%global v8_build 257
+%global v8_patch 17
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -45,30 +45,30 @@
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
-%global c_ares_minor 16
+%global c_ares_minor 17
%global c_ares_patch 1
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
# llhttp - from deps/llhttp/include/llhttp.h
-%global llhttp_major 2
-%global llhttp_minor 1
-%global llhttp_patch 3
+%global llhttp_major 6
+%global llhttp_minor 0
+%global llhttp_patch 0
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 40
+%global libuv_minor 41
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 41
+%global nghttp2_minor 42
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
-%global icu_major 67
+%global icu_major 69
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
@@ -90,9 +90,9 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_major 6
-%global npm_minor 14
-%global npm_patch 12
+%global npm_major 7
+%global npm_minor 10
+%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -533,7 +533,6 @@ find %{buildroot}%{_prefix}/lib/node_modules/npm \
-exec chmod -x {} ;
# The above command is a little overzealous. Add a few permissions back.
-chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp
chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
# Drop the NPM default configuration in place
@@ -669,81 +668,6 @@ end
%changelog
-* Tue Apr 20 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.1-2
-- Disable stack execution (bz#1950528)
-
-* Thu Apr 08 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.1-1
-- Update to 14.16.1
-
-* Wed Mar 31 2021 Jonathan Wakely jwakely@redhat.com - 1:14.16.0-4
-- Rebuilt for removed libstdc++ symbols (#1937698)
-
-* Tue Mar 09 2021 Zuzana Svetlikova <zsvetlik@redhat.com - 1:14.16.0-3
-- Only require nodejs-packaging on Fedora
-- remove --debug-nghttp2 (#1930775)
-- always build with systemtap
-
-* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.0-1
-- Update to 14.16.0
-
-* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.15.4-1
-- Update to 14.15.4
-
-* Wed Dec 02 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.15.1-1
-- Update to 14.15.1
-
-* Tue Oct 20 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.14.0-2
-- Don't build with LTO on aarch64
-
-* Mon Oct 19 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.14.0-1
-- Update to 14.14.0
-
-* Fri Oct 09 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.13.1-1
-- Update to 14.13.1
-
-* Thu Oct 01 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.13.0-1
-- Update to 14.13.0
-
-* Wed Sep 16 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.11.0-1
-- Update to 14.11.0
-
-* Tue Sep 08 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.10.0-1
-- Update to 14.10.0
-
-* Fri Aug 21 2020 Jeff Law law@redhat.com - 1:14.7.0-2
-- Narrow LTO opt-out to just armv7hl
-
-* Fri Jul 31 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.7.0-1
-- Update to 14.7.0
-
-* Tue Jul 28 2020 Fedora Release Engineering releng@fedoraproject.org - 1:14.5.0-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
-
-* Tue Jul 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.5.0-1
-- Update to 14.5.0
-
-* Tue Jul 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.4.0-3
-- Update for new packaging guidelines
-
-* Tue Jun 30 2020 Jeff Law law@redhat.com - 1:14.4.0-2
-- Disable LTO
-
-* Wed Jun 03 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:14.4.0-1
-- Security update to 14.4.0
-
-* Thu May 21 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.3.0-1
-- Update to 14.3.0
-
-* Wed May 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.2.0-1
-- Update to 14.2.0
-
-* Wed Apr 29 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.1.0-1
-- Update to 14.1.0
-
-* Fri Apr 24 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:14.0.0-2
-- Keep the fix scripts for Koji
-
-* Thu Apr 23 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:14.0.0-1
-- Update to 14.0.0
-- v14.x should be python3 compatible, so commented out py sed scripts
+* Thu Apr 29 2021 Stephen Gallagher sgallagh@redhat.com - 16.0.0-1
+- First release of Node.js 16.x
diff --git a/package.cfg b/package.cfg
index 5e7e859..ec98f0b 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = rawhide f34 f33
+targets = rawhide
diff --git a/sources b/sources
index 96692c4..d09a6a1 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.16.1-stripped.tar.gz) = 1ec3f503ecd6f8ffa24c3abc04e4e33758e1d577f645dc9c3a22282e3f4755e44169ca54a178fb90e8edb8ef6490d65edc4fd7fcf6ec9b5445d38630b9861a29
-SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
+SHA512 (node-v16.0.0-stripped.tar.gz) = 45afd2b674a061f9a11ae270015910b16b79d6702a53d8947d7c4c384e024ac381ed386c4ffef3f19a7ff1b760e45f2caf4d4df41ca05b409ad2a5bae46da49b
+SHA512 (icu4c-69_1-src.tgz) = d4aeb781715144ea6e3c6b98df5bbe0490bfa3175221a1d667f3e6851b7bd4a638fa4a37d4a921ccb31f02b5d15a6dded9464d98051964a86f7b1cde0ff0aab7
commit b3a32a173864e60e3e3c88c81079b93ec1d44988
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Apr 20 09:43:10 2021 -0400
Truncate %changelog
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index e807c09..4993651 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -686,9 +686,6 @@ end
* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.0-1
- Update to 14.16.0
-* Tue Jan 26 2021 Fedora Release Engineering releng@fedoraproject.org - 1:14.15.4-2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
-
* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.15.4-1
- Update to 14.15.4
@@ -750,414 +747,3 @@ end
- Update to 14.0.0
- v14.x should be python3 compatible, so commented out py sed scripts
-* Wed Apr 15 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:13.13.0-1
-- Update to 13.13.0
-- Add bundled uvwasi and histogram_c provides
-- Add shared brotli dependency
-- Remove icustrip.py patch, which was merged in upstream
-
-* Tue Mar 17 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.11.0-2
-- Fix python3 issue in icustrip.py
-
-* Mon Mar 16 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.11.0-1
-- Update to 13.11.0
-
-* Wed Feb 26 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.9.0-2
-- Build with python 3 only
-
-* Tue Feb 25 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.9.0-1
-- Release Node.js 13.9.0
-
-* Tue Feb 25 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.1-1
-- Update to 12.16.1
-- Fixes six regressions introduced in 12.16.0
-
-* Fri Feb 14 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.0-1
-- Update to 12.16.0
-- Drop upstreamed patch
-
-* Thu Feb 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.15.0-1
-- Update to 12.15.0
-
-* Wed Jan 29 2020 Fedora Release Engineering releng@fedoraproject.org - 1:12.14.1-4
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
-
-* Mon Jan 13 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-3
-- Fix issue with header symlinks in v8-devel
-
-* Tue Jan 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-2
-- Drop unneeded dependency on http-parser-devel
-
-* Tue Jan 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-1
-- Update to 12.14.1
-- https://github.com/nodejs/node/blob/v12.14.1/doc/changelogs/CHANGELOG_V12.md
-
-* Mon Jan 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.0-2
-- Update to 12.14.0
-- https://github.com/nodejs/node/blob/v12.14.0/doc/changelogs/CHANGELOG_V12.md
-- Add new subpackage nodejs-full-i18n to enable optional non-English locale
- support
-- Update documentation packaging for NPM
-
-* Mon Dec 02 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.1-1
-- Update to 12.13.1
-- https://github.com/nodejs/node/blob/v12.13.1/doc/changelogs/CHANGELOG_V12.md
-
-* Tue Oct 29 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-6
-- Add proper i18n support
-
-* Tue Oct 29 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-5
-- Fix issue with NPM docs being replaced with a symlink
-
-* Mon Oct 28 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-2
-- Simplify npmrc default configuration
-
-* Mon Oct 28 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-1
-- Update to 12.13.0 (LTS)
-- https://github.com/nodejs/node/blob/v12.13.0/doc/changelogs/CHANGELOG_V12.md
-- NPM no longer clobbers RPM-installed Node.js modules
-- Drop no-longer needed patch to suppress `npm update -g npm` message
-
-* Wed Sep 04 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.10.0-1
-- Update to 12.10.0
-- https://github.com/nodejs/node/blob/v12.10.0/doc/changelogs/CHANGELOG_V12.md...
-
-* Wed Aug 21 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.9.0-1
-- Update to 12.9.0
-- https://github.com/nodejs/node/blob/v12.9.0/doc/changelogs/CHANGELOG_V12.md#...
-
-* Thu Aug 15 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.8.2-1
-- Update to 12.8.1
-- Resolves: CVE-2019-9511 "Data Dribble"
-- Resolves: CVE-2019-9512 "Ping Flood"
-- Resolves: CVE-2019-9513 "Resource Loop"
-- Resolves: CVE-2019-9514 "Reset Flood"
-- Resolves: CVE-2019-9515 "Settings Flood"
-- Resolves: CVE-2019-9516 "0-Length Headers Leak"
-- Resolves: CVE-2019-9517 "Internal Data Buffering"
-- Resolves: CVE-2019-9518 "Empty Frames Flood"
-- https://github.com/nodejs/node/blob/v12.8.1/doc/changelogs/CHANGELOG_V12.md#...
-
-* Mon Aug 05 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.7.0-3
-- Fix epoch dependencies
-- Carry data files for ICU
-
-* Fri Aug 02 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.7.0-2
-- Change v8-devel release field to avoid duplicated package names
-
-* Thu Aug 01 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.7.0-1
-- Update to 12.7.0
-- https://nodejs.org/en/blog/release/v12.7.0/
-
-* Tue Jul 30 2019 Tom Hughes tom@compton.nu - 1:12.6.0-2
-- Bump release to fix dependencies
-
-* Thu Jul 25 2019 Fedora Release Engineering releng@fedoraproject.org - 1:12.6.0-1.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
-
-* Thu Jun 27 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.6.0-1
-- Update to 12.6.0
-- https://nodejs.org/en/blog/release/v12.6.0/
-- https://nodejs.org/en/blog/release/v12.5.0/
-
-* Tue Jun 04 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.4.0-1
-- Update to 12.4.0
-- https://nodejs.org/en/blog/release/v12.4.0/
-
-* Fri May 24 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.3.1-1
-- Update to 12.3.1
-- https://nodejs.org/en/blog/release/v12.3.1/
-- https://nodejs.org/en/blog/release/v12.3.0/
-
-* Wed May 15 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.2.0-1
-- Update to 12.2.0
-- https://nodejs.org/en/blog/release/v12.2.0/
-
-* Tue Apr 30 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.1.0-1
-- Update to 12.1.0
-- https://nodejs.org/en/blog/release/v12.1.0/
-
-* Wed Apr 24 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.0.0-3
-- Fix upgrade bug for v8-devel (BZ #1702609)
-
-* Tue Apr 23 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.0.0-2
-- Node.js 12.x requires OpenSSL 1.1.1+
-
-* Tue Apr 23 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.0.0-1
-- Release 12.0.0
-- https://nodejs.org/en/blog/release/v12.0.0/
-
-* Thu Apr 11 2019 Stephen Gallagher sgallagh@redhat.com - 1:11.13.0-1
-- Update to 11.13.0
-- https://nodejs.org/en/blog/release/v11.13.0/
-- https://nodejs.org/en/blog/release/v11.12.0/
-- https://nodejs.org/en/blog/release/v11.11.0/
-
-* Fri Mar 01 2019 Stephen Gallagher sgallagh@redhat.com - 1:11.10.1-1
-- Update to 11.10.1
-- https://nodejs.org/en/blog/release/v11.10.1/
-- https://nodejs.org/en/blog/release/v11.10.0/
-- https://nodejs.org/en/blog/release/v11.9.0/
-- https://nodejs.org/en/blog/release/v11.8.0/
-
-* Fri Jan 18 2019 Stephen Gallagher sgallagh@redhat.com - 1:11.7.0-1
-- Update to 11.7.0
-- https://nodejs.org/en/blog/release/v11.7.0/
-- https://nodejs.org/en/blog/release/v11.6.0/
-- https://nodejs.org/en/blog/release/v11.5.0/
-- https://nodejs.org/en/blog/release/v11.4.0/
-
-* Thu Nov 29 2018 Stephen Gallagher sgallagh@redhat.com - 1:11.3.0-1
-- Update to 11.3.0
-- https://nodejs.org/en/blog/release/v11.2.0/
-- https://nodejs.org/en/blog/release/v11.3.0/
-
-* Fri Nov 02 2018 Stephen Gallagher sgallagh@redhat.com - 1:11.1.0-1
-- Update to 11.1.0
-- https://nodejs.org/en/blog/release/v11.1.0/
-
-* Thu Nov 01 2018 Stephen Gallagher sgallagh@redhat.com - 1:11.0.0-1
-- Update to 11.0.0
-- https://nodejs.org/en/blog/release/v11.0.0/
-
-* Thu Nov 01 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.13.0-1
-- Update to 10.13.0
-- https://nodejs.org/en/blog/release/v10.13.0/
-
-* Thu Oct 11 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.12.0-1
-- Update to 10.12.0
-- https://nodejs.org/en/blog/release/v10.12.0/
-
-* Wed Oct 10 2018 Jan Staněk jstanek@redhat.com - 1:10.11.0-2
-- Add non-bootstrap BR for nodejs-packaging
-
-* Thu Sep 20 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.11.0-1
-- Update to 10.11.0
-- https://nodejs.org/en/blog/release/v10.11.0/
-
-* Wed Sep 19 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.10.0-2
-- Really, finally fix npm dep executable permissions
-
-* Tue Sep 11 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.10.0-1
-- Update to 10.10.0
-- https://nodejs.org/en/blog/release/v10.10.0/
-- Fix issue with npm permissions
-
-* Tue Aug 21 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.9.0-2
-- Clean up automatic dependencies for npm
-
-* Thu Aug 16 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.9.0-1
-- Update to 10.9.0
-- https://nodejs.org/en/blog/release/v10.9.0/
-
-* Tue Aug 07 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.8.0-1
-- Update to 10.8.0
-- https://nodejs.org/en/blog/release/v10.8.0/
-
-* Fri Jul 20 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.7.0-4
-- Fix npm upgrade scriptlet
-- Fix unexpected trailing .1 in npm release field
-
-* Fri Jul 20 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.7.0-3
-- Restore annotations to binaries
-- Fix unexpected trailing .1 in release field
-
-* Thu Jul 19 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.7.0-2
-- Update to 10.7.0
-- https://nodejs.org/en/blog/release/v10.7.0/
-- https://nodejs.org/en/blog/release/v10.6.0/
-
-* Fri Jul 13 2018 Fedora Release Engineering releng@fedoraproject.org - 1:10.5.0-1.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
-
-* Thu Jun 21 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.5.0-1
-- Update to 10.5.0
-- https://nodejs.org/en/blog/release/v10.5.0/
-
-* Thu Jun 14 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.4.1-1
-- Update to 10.4.1 to address security issues
-- https://nodejs.org/en/blog/release/v10.4.1/
-- Resolves: rhbz#1590801
-- Resolves: rhbz#1591014
-- Resolves: rhbz#1591019
-
-* Thu Jun 07 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.4.0-1
-- Update to 10.4.0
-- https://nodejs.org/en/blog/release/v10.4.0/
-
-* Wed May 30 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.3.0-1
-- Update to 10.3.0
-- Update npm to 6.1.0
-- https://nodejs.org/en/blog/release/v10.3.0/
-
-* Tue May 29 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.2.1-2
-- Fix up bare 'python' to be python2
-- Drop redundant entry in docs section
-
-* Fri May 25 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.2.1-1
-- Update to 10.2.1
-- https://nodejs.org/en/blog/release/v10.2.1/
-
-* Wed May 23 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.2.0-1
-- Update to 10.2.0
-- https://nodejs.org/en/blog/release/v10.2.0/
-
-* Thu May 10 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.1.0-3
-- Fix incorrect rpm macro
-
-* Thu May 10 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.1.0-2
-- Include upstream v8 fix for ppc64[le]
-- Disable debug build on ppc64[le] and s390x
-
-* Wed May 09 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.1.0-1
-- Update to 10.1.0
-- https://nodejs.org/en/blog/release/v10.1.0/
-- Reenable node_g binary
-
-* Thu Apr 26 2018 Stephen Gallagher sgallagh@redhat.com - 1:10.0.0-1
-- Update to 10.0.0
-- https://nodejs.org/en/blog/release/v10.0.0/
-- Drop workaround patch
-- Temporarily drop node_g binary due to
- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85587
-
-* Fri Apr 13 2018 Rafael dos Santos rdossant@redhat.com - 1:9.11.1-2
-- Use standard Fedora linker flags (bug #1543859)
-
-* Thu Apr 05 2018 Stephen Gallagher sgallagh@redhat.com - 1:9.11.1-1
-- Update to 9.11.1
-- https://nodejs.org/en/blog/release/v9.11.0/
-- https://nodejs.org/en/blog/release/v9.11.1/
-
-* Wed Mar 28 2018 Stephen Gallagher sgallagh@redhat.com - 1:9.10.0-1
-- Update to 9.10.0
-- https://nodejs.org/en/blog/release/v9.10.0/
-
-* Wed Mar 21 2018 Stephen Gallagher sgallagh@redhat.com - 1:9.9.0-1
-- Update to 9.9.0
-- https://nodejs.org/en/blog/release/v9.9.0/
-
-* Thu Mar 08 2018 Stephen Gallagher sgallagh@redhat.com - 1:9.8.0-1
-- Update to 9.8.0
-- https://nodejs.org/en/blog/release/v9.8.0/
-
-* Thu Mar 01 2018 Stephen Gallagher sgallagh@redhat.com - 1:9.7.0-1
-- Update to 9.7.0
-- https://nodejs.org/en/blog/release/v9.7.0/
-- Work around F28 build issue
-
-* Sun Feb 25 2018 Stephen Gallagher sgallagh@redhat.com - 1:9.6.1-1
-- Update to 9.6.1
-- https://nodejs.org/en/blog/release/v9.6.1/
-- https://nodejs.org/en/blog/release/v9.6.0/
-
-* Mon Feb 05 2018 Stephen Gallagher sgallagh@redhat.com - 1:9.5.0-1
-- Package Node.js 9.5.0
-
-* Thu Jan 11 2018 Stephen Gallagher sgallagh@redhat.com - 1:8.9.4-2
-- Fix incorrect Requires:
-
-* Thu Jan 11 2018 Stephen Gallagher sgallagh@redhat.com - 1:8.9.4-1
-- Update to 8.9.4
-- https://nodejs.org/en/blog/release/v8.9.4/
-- Switch to system copy of nghttp2
-
-* Fri Dec 08 2017 Stephen Gallagher sgallagh@redhat.com - 1:8.9.3-2
-- Update to 8.9.3
-- https://nodejs.org/en/blog/release/v8.9.3/
-- https://nodejs.org/en/blog/release/v8.9.2/
-
-* Thu Nov 30 2017 Pete Walter pwalter@fedoraproject.org - 1:8.9.1-2
-- Rebuild for ICU 60.1
-
-* Thu Nov 09 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.9.1-1
-- Update to 8.9.1
-
-* Tue Oct 31 2017 Stephen Gallagher sgallagh@redhat.com - 1:8.9.0-1
-- Update to 8.9.0
-- Drop upstreamed patch
-
-* Thu Oct 26 2017 Stephen Gallagher sgallagh@redhat.com - 1:8.8.1-1
-- Update to 8.8.1 to fix a regression
-
-* Wed Oct 25 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.8.0-1
-- Security update to 8.8.0
-- https://nodejs.org/en/blog/release/v8.8.0/
-
-* Sun Oct 15 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.7.0-1
-- Update to 8.7.0
-- https://nodejs.org/en/blog/release/v8.7.0/
-
-* Fri Oct 06 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.6.0-2
-- Use bcond macro instead of bootstrap conditional
-
-* Wed Sep 27 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.6.0-1
-- Fix nghttp2 version
-- Update to 8.6.0
-- https://nodejs.org/en/blog/release/v8.6.0/
-
-* Wed Sep 20 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.5.0-3
-- Build with bootstrap + bundle libuv for modularity
-- backport patch for aarch64 debug build
-
-* Wed Sep 13 2017 Stephen Gallagher sgallagh@redhat.com - 1:8.5.0-2
-- Disable debug builds on aarch64 due to https://github.com/nodejs/node/issues/15395
-
-* Tue Sep 12 2017 Stephen Gallagher sgallagh@redhat.com - 1:8.5.0-1
-- Update to v8.5.0
-- https://nodejs.org/en/blog/release/v8.5.0/
-
-* Thu Sep 07 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.4.0-2
-- Refactor openssl BR
-
-* Wed Aug 16 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.4.0-1
-- Update to v8.4.0
-- https://nodejs.org/en/blog/release/v8.4.0/
-- http2 is now supported, add bundled nghttp2
-- remove openssl 1.0.1 patches, we won't be using them in fedora
-
-* Thu Aug 10 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.3.0-1
-- Update to v8.3.0
-- https://nodejs.org/en/blog/release/v8.3.0/
-- update V8 to 6.0
-- update minimal gcc and g++ requirements to 4.9.4
-
-* Wed Aug 09 2017 Tom Hughes tom@compton.nu - 1:8.2.1-2
-- Bump release to fix broken dependencies
-
-* Thu Aug 03 2017 Fedora Release Engineering releng@fedoraproject.org - 1:8.2.1-1.2
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
-
-* Wed Jul 26 2017 Fedora Release Engineering releng@fedoraproject.org - 1:8.2.1-1.1
-- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
-
-* Fri Jul 21 2017 Stephen Gallagher sgallagh@redhat.com - 1:8.2.1-1
-- Update to v8.2.1
-- https://nodejs.org/en/blog/release/v8.2.1/
-
-* Thu Jul 20 2017 Stephen Gallagher sgallagh@redhat.com - 1:8.2.0-1
-- Update to v8.2.0
-- https://nodejs.org/en/blog/release/v8.2.0/
-- Update npm to 5.3.0
-- Adds npx command
-
-* Tue Jul 18 2017 Igor Gnatenko ignatenko@redhat.com - 1:8.1.4-3
-- s/BuildRequires/Requires/ for http-parser-devel%%{?_isa}
-
-* Mon Jul 17 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.1.4-2
-- Rename python-devel to python2-devel
-- own %%{_pkgdocdir}/npm
-
-* Tue Jul 11 2017 Stephen Gallagher sgallagh@redhat.com - 1:8.1.4-1
-- Update to v8.1.4
-- https://nodejs.org/en/blog/release/v8.1.4/
-- Drop upstreamed c-ares patch
-
-* Thu Jun 29 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.1.3-1
-- Update to v8.1.3
-- https://nodejs.org/en/blog/release/v8.1.3/
-
-* Wed Jun 28 2017 Zuzana Svetlikova zsvetlik@redhat.com - 1:8.1.2-1
-- Update to v8.1.2
-- remove GCC 7 patch, as it is now fixed in node >= 6.12
-
commit 32edd143c20830bf393c7563daa1a2ca024b0eb2
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Apr 20 09:35:18 2021 -0400
Disable stack execution
Resolves: rhbz#1950528
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 361ea08..1b5cf73 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,7 +1,7 @@
-From b0b4d1ddbc720db73fb8ab13cdbbf1ce6524eebd Mon Sep 17 00:00:00 2001
+From 0a889af5ee18290d833f7f63742d5b714bdb1a40 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH 1/2] Disable running gyp on shared deps
+Subject: [PATCH 1/3] Disable running gyp on shared deps
---
Makefile | 2 +-
@@ -25,5 +25,5 @@ index 93d63110ae2e3928a95d24036b86d11885ab240f..79caaec2112cefa8f6a1c947375b517e
# node_version.h is listed because the N-API version is taken from there
--
-2.29.2
+2.31.1
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 1dc8b12..9679f8b 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From 45a9bca165f6ed76c4e43cc2cc3fdf596814bc77 Mon Sep 17 00:00:00 2001
+From 4012d5b9ae521f36c8b0155f591a38383e84407b Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 2/2] Install both binaries and use libdir.
+Subject: [PATCH 2/3] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -86,5 +86,5 @@ index 729b416fc47d3ff3317ae3671dee977c719a8841..9bfc6234edb7732f9b90f063c2ee4a27
# behave similarly for systemtap
--
-2.29.2
+2.31.1
diff --git a/0003-src-add-.note.GNU-stack-section.patch b/0003-src-add-.note.GNU-stack-section.patch
new file mode 100644
index 0000000..74fd28f
--- /dev/null
+++ b/0003-src-add-.note.GNU-stack-section.patch
@@ -0,0 +1,45 @@
+From 6aa11a8cf48463432c0b5c6bfca5c2a5b18b1cc7 Mon Sep 17 00:00:00 2001
+From: James Addison jay@jp-hosting.net
+Date: Tue, 9 Mar 2021 13:08:47 +0000
+Subject: [PATCH 3/3] src: add .note.GNU-stack section
+
+This indicates to GNU binutils that it can unset the executable stack
+flag on the binary that it is building.
+
+PR-URL: https://github.com/nodejs/node/pull/37688
+Refs: https://github.com/nodejs/node/issues/17933
+Reviewed-By: Daniel Bevenius daniel.bevenius@gmail.com
+
+src: Use %progbits instead of @progbits
+
+While @progbits is preferred for most architectures, there are some
+(notably 32-bit ARM) for which it does not. %progbits is effective
+everywhere.
+
+See https://bugzilla.redhat.com/show_bug.cgi?id=1950528 for more
+details.
+
+Related: https://github.com/nodejs/node/issues/17933
+Related: https://github.com/nodejs/node/pull/37688
+
+Signed-off-by: Stephen Gallagher sgallagh@redhat.com
+---
+ src/large_pages/node_text_start.S | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/large_pages/node_text_start.S b/src/large_pages/node_text_start.S
+index 1609b254f0495a32f8896ba96d96bad03f6f2321..d27dd39cc236f0e6be4e68113bfff7b531a37455 100644
+--- a/src/large_pages/node_text_start.S
++++ b/src/large_pages/node_text_start.S
+@@ -1,5 +1,8 @@
++#if defined(__ELF__)
++.section .note.GNU-stack,"",%progbits
++#endif
+ .text
+ .align 0x2000
+ .global __node_text_start
+ .hidden __node_text_start
+ __node_text_start:
+--
+2.31.1
+
diff --git a/nodejs.spec b/nodejs.spec
index a4eb5e2..e807c09 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -145,6 +145,10 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
+# Patch to disable stack execution. Merged from one upstream patch and
+# one upstream proposed patch
+Patch3: 0003-src-add-.note.GNU-stack-section.patch
+
BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
@@ -665,6 +669,9 @@ end
%changelog
+* Tue Apr 20 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.1-2
+- Disable stack execution (bz#1950528)
+
* Thu Apr 08 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.1-1
- Update to 14.16.1
commit 4fb06444126942877fd999911ffdc1edde41a5e2
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 18 12:47:39 2021 -0500
Simplify handling of unversioned python
Now that /usr/bin/python == python3, we can just BR: the
python-unversioned-command package instead of doing a complicated
search and replace through the codebase.
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 10fdeaa..a4eb5e2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,5 @@
# bundle dependencies that are not available as Fedora modules
%bcond_with bootstrap
-%bcond_without python3_fixup
# LTO is currently broken on Node.js builds
%define _lto_cflags %{nil}
@@ -149,6 +148,7 @@ Patch2: 0002-Install-both-binaries-and-use-libdir.patch
BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
+BuildRequires: python-unversioned-command
BuildRequires: zlib-devel
BuildRequires: brotli-devel
BuildRequires: gcc >= 6.3.0
@@ -358,16 +358,6 @@ The API documentation for the Node.js JavaScript runtime.
rm -rf deps/zlib
rm -rf deps/brotli
-# Replace any instances of unversioned python' with python3
-%if %{with python3_fixup}
-pathfix.py -i %{__python3} -pn $(find -type f ! -name "*.js")
-find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
-find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
-sed -i "s~python~python3~" $(find . -type f | grep "gyp$")
-sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
-sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
-find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
-%endif
%build
# When compiled on armv7hl this package generates an out of range
commit 3ce811c32fe85e6689e386345f72b30127321727
Merge: d51feae 0e63a14
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Apr 8 12:26:38 2021 -0400
Merge branch '14' into rawhide
diff --cc nodejs.spec
index 80b9828,c2d4caf..10fdeaa
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -675,9 -675,9 +675,12 @@@ en
%changelog
+ * Thu Apr 08 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.1-1
+ - Update to 14.16.1
+
+* Wed Mar 31 2021 Jonathan Wakely jwakely@redhat.com - 1:14.16.0-4
+- Rebuilt for removed libstdc++ symbols (#1937698)
+
* Tue Mar 09 2021 Zuzana Svetlikova <zsvetlik@redhat.com - 1:14.16.0-3
- Only require nodejs-packaging on Fedora
- remove --debug-nghttp2 (#1930775)
commit 0e63a1498397f5001f7298bc5f7c5ba39563d17c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Apr 8 12:25:10 2021 -0400
Fix package.cfg
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/package.cfg b/package.cfg
index ceab82f..5e7e859 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = master f34 f33
+targets = rawhide f34 f33
commit 37e035e7684ee405ab3b90e4f6cc2ffe0940faa5
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Apr 8 12:23:11 2021 -0400
Update to 14.16.1
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 730889d..c2d4caf 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -9,7 +9,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -21,7 +21,7 @@
%global nodejs_epoch 1
%global nodejs_major 14
%global nodejs_minor 16
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 83
@@ -93,7 +93,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 14
-%global npm_patch 11
+%global npm_patch 12
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -675,6 +675,9 @@ end
%changelog
+* Thu Apr 08 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.1-1
+- Update to 14.16.1
+
* Tue Mar 09 2021 Zuzana Svetlikova <zsvetlik@redhat.com - 1:14.16.0-3
- Only require nodejs-packaging on Fedora
- remove --debug-nghttp2 (#1930775)
diff --git a/sources b/sources
index b355517..96692c4 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.16.0-stripped.tar.gz) = 817683b85eb47aa976f90b26e6e4a582ad67e7a2f48841be7ca378af46e87434d55fbc894e262889d07283775946348cb3fad152c488ce0c2199eba742018094
+SHA512 (node-v14.16.1-stripped.tar.gz) = 1ec3f503ecd6f8ffa24c3abc04e4e33758e1d577f645dc9c3a22282e3f4755e44169ca54a178fb90e8edb8ef6490d65edc4fd7fcf6ec9b5445d38630b9861a29
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit d51feaec0d8b415a6392576bc5790ede5a994a98
Author: Jonathan Wakely jwakely@redhat.com
Date: Wed Mar 31 17:35:43 2021 +0100
Rebuilt for removed libstdc++ symbols (#1937698)
diff --git a/nodejs.spec b/nodejs.spec
index 730889d..80b9828 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -9,7 +9,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 4
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -675,6 +675,9 @@ end
%changelog
+* Wed Mar 31 2021 Jonathan Wakely jwakely@redhat.com - 1:14.16.0-4
+- Rebuilt for removed libstdc++ symbols (#1937698)
+
* Tue Mar 09 2021 Zuzana Svetlikova <zsvetlik@redhat.com - 1:14.16.0-3
- Only require nodejs-packaging on Fedora
- remove --debug-nghttp2 (#1930775)
commit 562828877ed4f5cfa589da19a7001785f8b22008
Author: Zuzana Svetlikova zsvetlik@redhat.com
Date: Tue Mar 9 18:26:30 2021 +0100
Only require nodejs-packaging on Fedora
remove --debug-nghttp2 (#1930775)
always build with systemtap
diff --git a/nodejs.spec b/nodejs.spec
index dabb932..730889d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -9,7 +9,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -159,12 +159,12 @@ BuildRequires: gcc-c++ >= 6.3.0
BuildRequires: nodejs-packaging
BuildRequires: chrpath
BuildRequires: libatomic
+BuildRequires: systemtap-sdt-devel
%if %{with bootstrap}
Provides: bundled(libuv) = %{libuv_version}
Provides: bundled(nghttp2) = %{nghttp2_version}
%else
-BuildRequires: systemtap-sdt-devel
BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:%{libuv_version}
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
@@ -235,8 +235,10 @@ Provides: bundled(icu) = %{icu_version}
Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
+%if 0%{?fedora}
# Make sure to pull in the appropriate packaging macros when building RPMs
Requires: (nodejs-packaging if rpm-build)
+%endif
# Make sure we keep NPM up to date when we update Node.js
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
@@ -412,7 +414,6 @@ export LDFLAGS="%{build_ldflags}"
--shared-brotli \
--without-dtrace \
--with-intl=small-icu \
- --debug-nghttp2 \
--openssl-use-def-ca-store
%else
%{__python3} configure.py --prefix=%{_prefix} \
@@ -426,7 +427,6 @@ export LDFLAGS="%{build_ldflags}"
--with-dtrace \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
- --debug-nghttp2 \
--openssl-use-def-ca-store
%endif
@@ -675,6 +675,11 @@ end
%changelog
+* Tue Mar 09 2021 Zuzana Svetlikova <zsvetlik@redhat.com - 1:14.16.0-3
+- Only require nodejs-packaging on Fedora
+- remove --debug-nghttp2 (#1930775)
+- always build with systemtap
+
* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.0-1
- Update to 14.16.0
commit 095039c5a9ea57e731cd96b54d204dec1ca29333
Author: Zuzana Svetlikova zsvetlik@redhat.com
Date: Tue Mar 9 18:26:30 2021 +0100
Only require nodejs-packaging on Fedora
remove --debug-nghttp2 (#1930775)
always build with systemtap
diff --git a/nodejs.spec b/nodejs.spec
index dabb932..730889d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -9,7 +9,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -159,12 +159,12 @@ BuildRequires: gcc-c++ >= 6.3.0
BuildRequires: nodejs-packaging
BuildRequires: chrpath
BuildRequires: libatomic
+BuildRequires: systemtap-sdt-devel
%if %{with bootstrap}
Provides: bundled(libuv) = %{libuv_version}
Provides: bundled(nghttp2) = %{nghttp2_version}
%else
-BuildRequires: systemtap-sdt-devel
BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:%{libuv_version}
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
@@ -235,8 +235,10 @@ Provides: bundled(icu) = %{icu_version}
Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
+%if 0%{?fedora}
# Make sure to pull in the appropriate packaging macros when building RPMs
Requires: (nodejs-packaging if rpm-build)
+%endif
# Make sure we keep NPM up to date when we update Node.js
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
@@ -412,7 +414,6 @@ export LDFLAGS="%{build_ldflags}"
--shared-brotli \
--without-dtrace \
--with-intl=small-icu \
- --debug-nghttp2 \
--openssl-use-def-ca-store
%else
%{__python3} configure.py --prefix=%{_prefix} \
@@ -426,7 +427,6 @@ export LDFLAGS="%{build_ldflags}"
--with-dtrace \
--with-intl=small-icu \
--with-icu-default-data-dir=%{icudatadir} \
- --debug-nghttp2 \
--openssl-use-def-ca-store
%endif
@@ -675,6 +675,11 @@ end
%changelog
+* Tue Mar 09 2021 Zuzana Svetlikova <zsvetlik@redhat.com - 1:14.16.0-3
+- Only require nodejs-packaging on Fedora
+- remove --debug-nghttp2 (#1930775)
+- always build with systemtap
+
* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.0-1
- Update to 14.16.0
commit 867d4da14b272bfdc3514a5decad078503d06328
Merge: 44f3bfe a630cd6
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Feb 23 13:57:03 2021 -0500
Merge branch '14' into rawhide
diff --cc nodejs.spec
index 210889e,8c8be0a..dabb932
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -675,9 -674,9 +675,12 @@@ en
%changelog
+ * Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.0-1
+ - Update to 14.16.0
+
+* Tue Jan 26 2021 Fedora Release Engineering releng@fedoraproject.org - 1:14.15.4-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
+
* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.15.4-1
- Update to 14.15.4
commit a630cd6af9c313edbebc198215cc87e4e96f9c24
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Feb 23 13:53:36 2021 -0500
Update to 14.16.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 6717f99..8c8be0a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,8 +20,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 15
-%global nodejs_patch 4
+%global nodejs_minor 16
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 83
@@ -93,7 +93,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 14
-%global npm_patch 10
+%global npm_patch 11
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -674,6 +674,9 @@ end
%changelog
+* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.16.0-1
+- Update to 14.16.0
+
* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.15.4-1
- Update to 14.15.4
diff --git a/package.cfg b/package.cfg
index dfe80fb..ceab82f 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = master f33
+targets = master f34 f33
diff --git a/sources b/sources
index 3547e12..b355517 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.15.4-stripped.tar.gz) = 2c1d9b67e6b9bbdd960eeb82edfb02c237a7c7190407cf60bf14b02eb2b6143159b6f45e7bddb7c97120eab4faa37455534ab8b90bd4161b6d66dab0a72b122e
+SHA512 (node-v14.16.0-stripped.tar.gz) = 817683b85eb47aa976f90b26e6e4a582ad67e7a2f48841be7ca378af46e87434d55fbc894e262889d07283775946348cb3fad152c488ce0c2199eba742018094
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit 44f3bfe9c7a4919bd088aa95b52546960aa030fb
Author: Fedora Release Engineering releng@fedoraproject.org
Date: Tue Jan 26 21:35:49 2021 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index 00a12d8..210889e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -9,7 +9,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -675,6 +675,9 @@ end
%changelog
+* Tue Jan 26 2021 Fedora Release Engineering releng@fedoraproject.org - 1:14.15.4-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
+
* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.15.4-1
- Update to 14.15.4
commit c2e87c433405746eed5667023febc41fd04dc08a
Author: Tom Stellard tstellar@redhat.com
Date: Thu Jan 7 05:55:20 2021 +0000
Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
diff --git a/nodejs.spec b/nodejs.spec
index 6717f99..00a12d8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -146,6 +146,7 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
+BuildRequires: make
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: zlib-devel
commit 9f1a56347d44c7841a0d9615b0cdcbd7c17d66c1
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 4 15:58:35 2021 -0500
Disable LTO
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index dcc511d..6717f99 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -2,11 +2,8 @@
%bcond_with bootstrap
%bcond_without python3_fixup
-# LTO is currently broken on aarch64 builds
-%ifarch aarch64
+# LTO is currently broken on Node.js builds
%define _lto_cflags %{nil}
-%endif
-
# == Master Relase ==
# This is used by both the nodejs package and the npm subpackage thar
commit 74b49c257f94c38b880f43e7e44d4439da4a65fe
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 4 15:18:59 2021 -0500
Update to 14.15.4
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index ef45163..361ea08 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,18 +1,20 @@
-From 65f5eb67f4691ab535cc00240a00bd33efe29969 Mon Sep 17 00:00:00 2001
+From b0b4d1ddbc720db73fb8ab13cdbbf1ce6524eebd Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri, 17 Apr 2020 12:59:44 +0200
-Subject: [PATCH] 0001
+Subject: [PATCH 1/2] Disable running gyp on shared deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 34cdec7f7767b5152678adaeea10a8cf711fb9a8..3b548907033108831e99e054bc84d3ce91daa25c 100644
+index 93d63110ae2e3928a95d24036b86d11885ab240f..79caaec2112cefa8f6a1c947375b517e9676f176 100644
--- a/Makefile
+++ b/Makefile
-@@ -141,7 +141,7 @@ test-code-cache: with-code-cache
- echo "'test-code-cache' target is a noop"
+@@ -136,11 +136,11 @@ endif
+ .PHONY: test-code-cache
+ with-code-cache test-code-cache:
+ $(warning '$@' target is a noop)
out/Makefile: config.gypi common.gypi node.gyp \
- deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \
@@ -20,6 +22,8 @@ index 34cdec7f7767b5152678adaeea10a8cf711fb9a8..3b548907033108831e99e054bc84d3ce
tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
+
+ # node_version.h is listed because the N-API version is taken from there
--
-2.25.2
+2.29.2
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index b3441a7..1dc8b12 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 0b315d55b13d098ce8f3e96d501aeb33152a9e00 Mon Sep 17 00:00:00 2001
+From 45a9bca165f6ed76c4e43cc2cc3fdf596814bc77 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -9,14 +9,16 @@ still providing the normal executable.
Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
---
configure.py | 7 +++++++
- tools/install.py | 29 +++++++++++++----------------
- 2 files changed, 20 insertions(+), 16 deletions(-)
+ tools/install.py | 21 +++++++++------------
+ 2 files changed, 16 insertions(+), 12 deletions(-)
diff --git a/configure.py b/configure.py
-index beb08df0884f7693b6c07d7fb5e85ae7bdcd1d7d..9e364586d4f79322fe53f41915ed7aad0e23a30d 100755
+index e6f7e4db0040dda00e432352afa7576535d9b672..6cf5c45dde79ce355b532c2f11b5b7ed80fde88a 100755
--- a/configure.py
+++ b/configure.py
-@@ -582,6 +582,12 @@ parser.add_option('--shared',
+@@ -624,10 +624,16 @@ parser.add_option('--shared',
+ action='store_true',
+ dest='shared',
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
@@ -29,7 +31,11 @@ index beb08df0884f7693b6c07d7fb5e85ae7bdcd1d7d..9e364586d4f79322fe53f41915ed7aad
parser.add_option('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
-@@ -1124,6 +1130,7 @@ def configure_node(o):
+ default=False,
+ help='do not initialize v8 platform during node.js startup. ' +
+@@ -1200,10 +1206,11 @@ def configure_node(o):
+ o['variables']['debug_nghttp2'] = 'false'
+
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
o['variables']['node_shared'] = b(options.shared)
@@ -37,11 +43,15 @@ index beb08df0884f7693b6c07d7fb5e85ae7bdcd1d7d..9e364586d4f79322fe53f41915ed7aad
node_module_version = getmoduleversion.get_version()
if options.dest_os == 'android':
+ shlib_suffix = 'so'
+ elif sys.platform == 'darwin':
diff --git a/tools/install.py b/tools/install.py
-index 655802980a6ea94d1d4ca1dc63c8c8e905fbb83a..fe4723bf15012c8aacacb0393dc8294c049b0503 100755
+index 729b416fc47d3ff3317ae3671dee977c719a8841..9bfc6234edb7732f9b90f063c2ee4a276e840636 100755
--- a/tools/install.py
+++ b/tools/install.py
-@@ -121,26 +121,23 @@ def subdir_files(path, dest, action):
+@@ -119,26 +119,23 @@ def subdir_files(path, dest, action):
+ for subdir, files_in_path in ret.items():
+ action(files_in_path, subdir + '/')
def files(action):
is_windows = sys.platform == 'win32'
@@ -60,16 +70,8 @@ index 655802980a6ea94d1d4ca1dc63c8c8e905fbb83a..fe4723bf15012c8aacacb0393dc8294c
- output_file += '.dll'
- else:
- output_file = 'lib' + output_file + '.' + variables.get('shlib_suffix')
-- # GYP will output to lib.target except on OS X, this is hardcoded
-- # in its source - see the _InstallableTargetInstallPath function.
-- if sys.platform != 'darwin':
-- output_prefix += 'lib.target/'
+ output_bin = 'node'
+ output_lib = 'libnode.' + variables.get('shlib_suffix')
-+ # GYP will output to lib.target except on OS X, this is hardcoded
-+ # in its source - see the _InstallableTargetInstallPath function.
-+ if sys.platform != 'darwin':
-+ output_libprefix += 'lib.target/'
- if 'false' == variables.get('node_shared'):
- action([output_prefix + output_file], 'bin/' + output_file)
@@ -81,6 +83,8 @@ index 655802980a6ea94d1d4ca1dc63c8c8e905fbb83a..fe4723bf15012c8aacacb0393dc8294c
if 'true' == variables.get('node_use_dtrace'):
action(['out/Release/node.d'], 'lib/dtrace/node.d')
+
+ # behave similarly for systemtap
--
-2.24.1
+2.29.2
diff --git a/nodejs.spec b/nodejs.spec
index 9ba5ae5..dcc511d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -24,7 +24,7 @@
%global nodejs_epoch 1
%global nodejs_major 14
%global nodejs_minor 15
-%global nodejs_patch 1
+%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 83
@@ -96,7 +96,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 14
-%global npm_patch 8
+%global npm_patch 10
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -677,6 +677,9 @@ end
%changelog
+* Mon Jan 04 2021 Stephen Gallagher sgallagh@redhat.com - 1:14.15.4-1
+- Update to 14.15.4
+
* Wed Dec 02 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.15.1-1
- Update to 14.15.1
diff --git a/sources b/sources
index 7478cbc..3547e12 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.15.1-stripped.tar.gz) = aa07a49485a0fecc282173b8b6d915b912a19191446ed6f4684d979e4baebadb7708a338410c2c42ee81d8395db6cfaf9b0879baea9e652dd97f7811a077975d
+SHA512 (node-v14.15.4-stripped.tar.gz) = 2c1d9b67e6b9bbdd960eeb82edfb02c237a7c7190407cf60bf14b02eb2b6143159b6f45e7bddb7c97120eab4faa37455534ab8b90bd4161b6d66dab0a72b122e
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit d4fae2de5af42fef0048e8ff5290f76df0e9e4ba
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Dec 2 20:53:53 2020 -0500
Update to 14.15.1
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 0aa6bfb..9ba5ae5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,7 +12,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -23,8 +23,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 14
-%global nodejs_patch 0
+%global nodejs_minor 15
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 83
@@ -677,6 +677,9 @@ end
%changelog
+* Wed Dec 02 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.15.1-1
+- Update to 14.15.1
+
* Tue Oct 20 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.14.0-2
- Don't build with LTO on aarch64
diff --git a/sources b/sources
index 74190a6..7478cbc 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.14.0-stripped.tar.gz) = 208bcc585e6e8a25a656d942424afa26aa7442a6252c428c01081e3f052998363d3126e290576493bb8fcc3e2944026013cf7a5757113a8717574cefdaa72c31
+SHA512 (node-v14.15.1-stripped.tar.gz) = aa07a49485a0fecc282173b8b6d915b912a19191446ed6f4684d979e4baebadb7708a338410c2c42ee81d8395db6cfaf9b0879baea9e652dd97f7811a077975d
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit a042b795522128838140f15a3019f0cc42a63781
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Oct 20 08:52:25 2020 -0400
Don't build with LTO on aarch64
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 96bfaff..0aa6bfb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -2,12 +2,17 @@
%bcond_with bootstrap
%bcond_without python3_fixup
+# LTO is currently broken on aarch64 builds
+%ifarch aarch64
+%define _lto_cflags %{nil}
+%endif
+
# == Master Relase ==
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -672,6 +677,9 @@ end
%changelog
+* Tue Oct 20 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.14.0-2
+- Don't build with LTO on aarch64
+
* Mon Oct 19 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.14.0-1
- Update to 14.14.0
commit ab1676bdb39acbfb7184338364769f22e5277599
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Oct 19 09:37:56 2020 -0400
Update to 14.14.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 600e725..96bfaff 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,8 +18,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 13
-%global nodejs_patch 1
+%global nodejs_minor 14
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 83
@@ -672,6 +672,9 @@ end
%changelog
+* Mon Oct 19 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.14.0-1
+- Update to 14.14.0
+
* Fri Oct 09 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.13.1-1
- Update to 14.13.1
diff --git a/sources b/sources
index 703a43d..74190a6 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.13.1-stripped.tar.gz) = eae37da105b0a176353c53d96ce081f6d018f9abe90476fa7396be7d3cf9b6d863d6edac4f67f09d384a717c6491f0c250b25e588dd449750bd70da6180ca35f
+SHA512 (node-v14.14.0-stripped.tar.gz) = 208bcc585e6e8a25a656d942424afa26aa7442a6252c428c01081e3f052998363d3126e290576493bb8fcc3e2944026013cf7a5757113a8717574cefdaa72c31
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit 52d3230036dd6bdc1c3b16ab7df8007696af8eef
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Oct 9 09:44:18 2020 -0400
Update to 14.13.1
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index ebdbac5..600e725 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_epoch 1
%global nodejs_major 14
%global nodejs_minor 13
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 83
@@ -51,7 +51,7 @@
# llhttp - from deps/llhttp/include/llhttp.h
%global llhttp_major 2
%global llhttp_minor 1
-%global llhttp_patch 2
+%global llhttp_patch 3
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
# libuv - from deps/uv/include/uv/version.h
@@ -672,6 +672,9 @@ end
%changelog
+* Fri Oct 09 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.13.1-1
+- Update to 14.13.1
+
* Thu Oct 01 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.13.0-1
- Update to 14.13.0
diff --git a/sources b/sources
index ae6c258..703a43d 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.13.0-stripped.tar.gz) = be305a7e636a1f04e34b675d905be526f6370a94642bffa19c899e0885d58ddca3eb171765307238a6572cda7efceec2a6aaebf7af2e7a5ad617dee6124500ca
+SHA512 (node-v14.13.1-stripped.tar.gz) = eae37da105b0a176353c53d96ce081f6d018f9abe90476fa7396be7d3cf9b6d863d6edac4f67f09d384a717c6491f0c250b25e588dd449750bd70da6180ca35f
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit 3781c81a5cccd262ea984b11219c5419b9c6fc4d
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Oct 5 09:40:46 2020 -0400
Add explicit setuptools dep
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index b66b6f2..ebdbac5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -145,6 +145,7 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
BuildRequires: python3-devel
+BuildRequires: python3-setuptools
BuildRequires: zlib-devel
BuildRequires: brotli-devel
BuildRequires: gcc >= 6.3.0
commit 2cd44ffc6bf6d8b291a848189b31cc8f16771ca7
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Oct 1 13:36:19 2020 -0400
Update to 14.13.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index c7ca6db..fdd7ef0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,5 @@
+*~
+*.swp
/*.tar.gz
/*.src.rpm
/*.tgz
diff --git a/nodejs.spec b/nodejs.spec
index 2918a64..b66b6f2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 11
+%global nodejs_minor 13
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -45,7 +45,7 @@
# https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
%global c_ares_minor 16
-%global c_ares_patch 0
+%global c_ares_patch 1
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
# llhttp - from deps/llhttp/include/llhttp.h
@@ -56,7 +56,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 39
+%global libuv_minor 40
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -97,7 +97,7 @@
# uvwasi - from deps/uvwasi/include/uvwasi.h
%global uvwasi_major 0
%global uvwasi_minor 0
-%global uvwasi_patch 10
+%global uvwasi_patch 11
%global uvwasi_version %{uvwasi_major}.%{uvwasi_minor}.%{uvwasi_patch}
# histogram_c - assumed from timestamps
@@ -671,6 +671,9 @@ end
%changelog
+* Thu Oct 01 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.13.0-1
+- Update to 14.13.0
+
* Wed Sep 16 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.11.0-1
- Update to 14.11.0
diff --git a/sources b/sources
index 5aae63e..ae6c258 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.11.0-stripped.tar.gz) = 0ac5496eed70d6d00b0d71fed6f07395d96a4fd1d7efdf2598ba66964f04bbabadbf465e26d07e80856ae825794ed740e607d63bdf8f2b2e64f80171d71851f0
+SHA512 (node-v14.13.0-stripped.tar.gz) = be305a7e636a1f04e34b675d905be526f6370a94642bffa19c899e0885d58ddca3eb171765307238a6572cda7efceec2a6aaebf7af2e7a5ad617dee6124500ca
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit 78306ffa5a3b1bf9853313bea9b8973043733d78
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Sep 17 11:55:27 2020 -0400
Drop old pretrans scriptlet
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index e3750ba..2918a64 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -585,24 +585,6 @@ if st and st.type == "directory" then
end
-%pretrans -n v8-devel -p <lua>
--- Replace the v8 libplatform include directory with a symlink
--- Drop this scriptlet when F30 is EOL
-path = "%{_includedir}/libplatform"
-st = posix.stat(path)
-if st and st.type == "directory" then
- status = os.rename(path, path .. ".rpmmoved")
- if not status then
- suffix = 0
- while not status do
- suffix = suffix + 1
- status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
- end
- os.rename(path, path .. ".rpmmoved")
- end
-end
-
-
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
@@ -652,7 +634,6 @@ end
%{_libdir}/libv8.so
%{_libdir}/libv8_libbase.so
%{_libdir}/libv8_libplatform.so
-%ghost %{_includedir}/libplatform.rpmmoved
%files -n npm
commit af60d955d99018b81098bf0f8bf08e8a8e99de75
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Sep 16 08:55:53 2020 -0400
Add package.cfg
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/package.cfg b/package.cfg
new file mode 100644
index 0000000..dfe80fb
--- /dev/null
+++ b/package.cfg
@@ -0,0 +1,2 @@
+[koji]
+targets = master f33
commit 227926069cfb44e68944537afa1416203b4ea0c0
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Sep 16 08:22:20 2020 -0400
Update to 14.11.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index e6b70ee..e3750ba 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 10
+%global nodejs_minor 11
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -50,8 +50,8 @@
# llhttp - from deps/llhttp/include/llhttp.h
%global llhttp_major 2
-%global llhttp_minor 0
-%global llhttp_patch 4
+%global llhttp_minor 1
+%global llhttp_patch 2
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
# libuv - from deps/uv/include/uv/version.h
@@ -690,6 +690,9 @@ end
%changelog
+* Wed Sep 16 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.11.0-1
+- Update to 14.11.0
+
* Tue Sep 08 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.10.0-1
- Update to 14.10.0
diff --git a/sources b/sources
index 927ee67..5aae63e 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.10.0-stripped.tar.gz) = d0e5235112f6a3a8d76a6c88c1c52ac266e726d59257157435d0fcc81452f873d446490006a38b226a8dbb94e1f8e999eda61ea3064a5d993ecfeb31122bf649
+SHA512 (node-v14.11.0-stripped.tar.gz) = 0ac5496eed70d6d00b0d71fed6f07395d96a4fd1d7efdf2598ba66964f04bbabadbf465e26d07e80856ae825794ed740e607d63bdf8f2b2e64f80171d71851f0
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit c30fcda754c76dbbf207abe8d2a51e268c199913
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Sep 8 16:47:01 2020 -0400
Add missing symlink to files
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 2b8bb6a..e6b70ee 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -648,6 +648,7 @@ end
%files -n v8-devel
%{_includedir}/libplatform
%{_includedir}/v8*.h
+%{_includedir}/cppgc
%{_libdir}/libv8.so
%{_libdir}/libv8_libbase.so
%{_libdir}/libv8_libplatform.so
commit f2dbb7e6ed0103c4140fdec399fde5399468cce7
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Sep 8 14:13:55 2020 -0400
Update to 14.10.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 88beabe..2b8bb6a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,7 +7,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -18,7 +18,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 7
+%global nodejs_minor 10
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -56,8 +56,8 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 38
-%global libuv_patch 1
+%global libuv_minor 39
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -91,13 +91,13 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 14
-%global npm_patch 7
+%global npm_patch 8
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
%global uvwasi_major 0
%global uvwasi_minor 0
-%global uvwasi_patch 9
+%global uvwasi_patch 10
%global uvwasi_version %{uvwasi_major}.%{uvwasi_minor}.%{uvwasi_patch}
# histogram_c - assumed from timestamps
@@ -473,8 +473,9 @@ ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/libnode.so
# Install v8 compatibility symlinks
for header in %{buildroot}%{_includedir}/node/libplatform %{buildroot}%{_includedir}/node/v8*.h; do
header=$(basename ${header})
- ln -s %{_includedir}/node/${header} %{buildroot}%{_includedir}/${header}
+ ln -s ./node/${header} %{buildroot}%{_includedir}/${header}
done
+ln -s ./node/cppgc %{buildroot}%{_includedir}/cppgc
for soname in libv8 libv8_libbase libv8_libplatform; do
ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so
ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
@@ -688,6 +689,9 @@ end
%changelog
+* Tue Sep 08 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.10.0-1
+- Update to 14.10.0
+
* Fri Aug 21 2020 Jeff Law law@redhat.com - 1:14.7.0-2
- Narrow LTO opt-out to just armv7hl
diff --git a/sources b/sources
index b64ce65..927ee67 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.7.0-stripped.tar.gz) = b348851102b9cf204478b2b0d3eafc82287f6f32beee182fc1f77cad3636a1a529a31d4404ba310163d0f6c05209ba32acc9f4543204ec5bc25201ac2da662cf
+SHA512 (node-v14.10.0-stripped.tar.gz) = d0e5235112f6a3a8d76a6c88c1c52ac266e726d59257157435d0fcc81452f873d446490006a38b226a8dbb94e1f8e999eda61ea3064a5d993ecfeb31122bf649
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit 0ea33eec603687e056b3e576a0215d400ff300e0
Author: Jeff Law law@redhat.com
Date: Fri Aug 21 09:04:40 2020 -0600
Narrow LTO opt-opt to just armv7hl
diff --git a/nodejs.spec b/nodejs.spec
index 26dc400..88beabe 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,7 +7,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -364,9 +364,11 @@ find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%endif
%build
-# This package has static probes which do not work with LTO
-# Disable LTO
+# When compiled on armv7hl this package generates an out of range
+# reference to the literal pool. This is most likely a GCC issue.
+%ifarch armv7hl
%define _lto_cflags %{nil}
+%endif
%ifarch s390 s390x %{arm} %ix86
# Decrease debuginfo verbosity to reduce memory consumption during final
@@ -686,6 +688,9 @@ end
%changelog
+* Fri Aug 21 2020 Jeff Law law@redhat.com - 1:14.7.0-2
+- Narrow LTO opt-out to just armv7hl
+
* Fri Jul 31 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.7.0-1
- Update to 14.7.0
commit 82bd0f8d940feb7de127b8ca4a6feea94ee21f4e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Jul 31 12:00:13 2020 -0400
Update to 14.7.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 8ad6700..26dc400 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,7 +7,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -18,7 +18,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 5
+%global nodejs_minor 7
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -33,9 +33,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 8
-%global v8_minor 3
-%global v8_build 110
-%global v8_patch 9
+%global v8_minor 4
+%global v8_build 371
+%global v8_patch 19
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -57,7 +57,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
%global libuv_minor 38
-%global libuv_patch 0
+%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -91,7 +91,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 14
-%global npm_patch 5
+%global npm_patch 7
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -686,6 +686,9 @@ end
%changelog
+* Fri Jul 31 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.7.0-1
+- Update to 14.7.0
+
* Tue Jul 28 2020 Fedora Release Engineering releng@fedoraproject.org - 1:14.5.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
diff --git a/sources b/sources
index 73a0b5a..b64ce65 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.5.0-stripped.tar.gz) = 68b2867ea4b0c6185226fd686e361d2e711fd9dbd843c93b777e7214c5c88545cb5bd290a7b34a680c8392ff15a33644ee04610f0be1e240750e605ff1aa7d36
+SHA512 (node-v14.7.0-stripped.tar.gz) = b348851102b9cf204478b2b0d3eafc82287f6f32beee182fc1f77cad3636a1a529a31d4404ba310163d0f6c05209ba32acc9f4543204ec5bc25201ac2da662cf
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit 650d161657f6fe24e0232d1a5f0de11738f018a5
Author: Fedora Release Engineering releng@fedoraproject.org
Date: Tue Jul 28 09:14:07 2020 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index f623163..8ad6700 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,7 +7,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -686,6 +686,9 @@ end
%changelog
+* Tue Jul 28 2020 Fedora Release Engineering releng@fedoraproject.org - 1:14.5.0-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
+
* Tue Jul 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.5.0-1
- Update to 14.5.0
commit 9a5b2eee9f25cbb4c40dce23592f583d9162d8ea
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jul 7 11:33:57 2020 -0400
Update to 14.5.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 271dd29..c7ca6db 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,114 +1,7 @@
/*.tar.gz
/*.src.rpm
-/node-v0.9.3.tar.gz
-/node-v0.9.4.tar.gz
-/node-v0.9.5.tar.gz
-/node-v0.10.0.tar.gz
-/node-v0.10.1.tar.gz
-/node-v0.10.2.tar.gz
-/node-v0.10.3.tar.gz
-/node-v0.10.4.tar.gz
-/node-v0.10.5.tar.gz
-/node-v0.10.6.tar.gz
-/node-v0.10.7-stripped.tar.gz
-/node-v0.10.8-stripped.tar.gz
-/node-v0.10.9-stripped.tar.gz
-/node-v0.10.12-stripped.tar.gz
-/node-v0.10.13-stripped.tar.gz
-/node-v0.10.14-stripped.tar.gz
-/node-v0.10.16-stripped.tar.gz
-/node-v0.10.17-stripped.tar.gz
-/node-v0.10.18-stripped.tar.gz
-/node-v0.10.19-stripped.tar.gz
-/node-v0.10.20-stripped.tar.gz
-/node-v0.10.21-stripped.tar.gz
-/node-v0.10.22-stripped.tar.gz
-/node-v0.10.23-stripped.tar.gz
-/node-v0.10.24.tar.gz
-/node-v0.10.24-stripped.tar.gz
-/node-v0.10.25-stripped.tar.gz
-/node-v0.10.26-stripped.tar.gz
-/node-v0.10.28-stripped.tar.gz
-/node-v0.10.29-stripped.tar.gz
-/node-v0.10.30-stripped.tar.gz
-/node-v0.10.32-stripped.tar.gz
-/node-v0.10.33-stripped.tar.gz
-/node-v0.10.36-stripped.tar.gz
-/node-v4.2.2-stripped.tar.gz
-/node-v4.2.3-stripped.tar.gz
-/node-v4.2.4-stripped.tar.gz
-/node-v4.2.6-stripped.tar.gz
-/node-v4.3.0-stripped.tar.gz
-/node-v4.3.1-stripped.tar.gz
-/node-v5.7.1-stripped.tar.gz
-/node-v5.8.0-stripped.tar.gz
-/node-v5.9.0.tar.gz
-/node-v5.9.1-stripped.tar.gz
-/node-v5.10.0-stripped.tar.gz
-/node-v5.10.1-stripped.tar.gz
-/node-v5.11.0-stripped.tar.gz
-/node-v6.1.0-stripped.tar.gz
-/node-v6.2.0-stripped.tar.gz
-/node-v6.2.1-stripped.tar.gz
-/node-v6.2.2-stripped.tar.gz
-/node-v6.3.0-stripped.tar.gz
-/node-v6.3.1-stripped.tar.gz
-/node-v6.4.0-stripped.tar.gz
-/node-v6.5.0-stripped.tar.gz
-/node-v6.6.0-stripped.tar.gz
-/node-v6.7.0-stripped.tar.gz
-/node-v6.8.0-stripped.tar.gz
-/node-v6.8.1-stripped.tar.gz
-/node-v6.9.0-stripped.tar.gz
-/node-v6.9.1-stripped.tar.gz
-/node-v6.9.2-stripped.tar.gz
-/node-v6.9.3-stripped.tar.gz
-/node-v6.9.4-stripped.tar.gz
-/node-v6.9.5-stripped.tar.gz
-/node-v6.10.0-stripped.tar.gz
-/node-v6.10.1-stripped.tar.gz
-/node-v6.10.2-stripped.tar.gz
-/node-v6.10.3-stripped.tar.gz
-/node-v6.11.0-stripped.tar.gz
-/node-v8.1.2-stripped.tar.gz
-/node-v8.1.3-stripped.tar.gz
-/node-v8.1.4-stripped.tar.gz
-/node-v8.2.0-stripped.tar.gz
-/node-v8.2.1-stripped.tar.gz
-/node-v8.3.0-stripped.tar.gz
-/node-v8.4.0-stripped.tar.gz
-/node-v8.5.0-stripped.tar.gz
-/node-v8.6.0-stripped.tar.gz
-/node-v8.7.0-stripped.tar.gz
-/node-v8.8.0-stripped.tar.gz
-/node-v8.8.1-stripped.tar.gz
-/node-v8.9.0-stripped.tar.gz
-/node-v8.9.1-stripped.tar.gz
-/node-v8.9.3-stripped.tar.gz
-/node-v8.9.4-stripped.tar.gz
-/node-v9.5.0-stripped.tar.gz
-/node-v9.6.1-stripped.tar.gz
-/node-v9.7.0-stripped.tar.gz
-/node-v9.8.0-stripped.tar.gz
-/node-v9.9.0-stripped.tar.gz
-/node-v9.10.0-stripped.tar.gz
-/node-v9.11.1.tar.gz
-/node-v9.11.1-stripped.tar.gz
-/node-v10.0.0-stripped.tar.gz
-/node-v10.1.0-stripped.tar.gz
-/node-v10.2.0-stripped.tar.gz
-/node-v10.2.1-stripped.tar.gz
-/node-v10.3.0-stripped.tar.gz
-/node-v10.4.0-stripped.tar.gz
-/node-v10.4.1-stripped.tar.gz
-/node-v10.5.0-stripped.tar.gz
-/node-v10.6.0-stripped.tar.gz
-/node-v10.7.0-stripped.tar.gz
-/node-v10.8.0-stripped.tar.gz
-/node-v10.9.0-stripped.tar.gz
-/node-v10.10.0-stripped.tar.gz
-/node-v10.11.0-stripped.tar.gz
-/icu4c-64_2-src.tgz
-/icu4c-65_1-src.tgz
-/icu4c-66_1-src.tgz
-/icu4c-67_1-src.tgz
+/*.tgz
+/node-*/*
+/.build-*.log
+/noarch
+/x86_64
diff --git a/nodejs.spec b/nodejs.spec
index 19149d1..f623163 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,7 +7,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -18,7 +18,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 4
+%global nodejs_minor 5
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -33,9 +33,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 8
-%global v8_minor 1
-%global v8_build 307
-%global v8_patch 31
+%global v8_minor 3
+%global v8_build 110
+%global v8_patch 9
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -56,7 +56,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 37
+%global libuv_minor 38
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -97,7 +97,7 @@
# uvwasi - from deps/uvwasi/include/uvwasi.h
%global uvwasi_major 0
%global uvwasi_minor 0
-%global uvwasi_patch 8
+%global uvwasi_patch 9
%global uvwasi_version %{uvwasi_major}.%{uvwasi_minor}.%{uvwasi_patch}
# histogram_c - assumed from timestamps
@@ -686,6 +686,9 @@ end
%changelog
+* Tue Jul 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.5.0-1
+- Update to 14.5.0
+
* Tue Jul 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.4.0-3
- Update for new packaging guidelines
diff --git a/sources b/sources
index 3e05b63..73a0b5a 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.4.0-stripped.tar.gz) = 28112c451e59c678d8f3bfa58abc06f711a47bddaa4636919facb60e785bbce958a2061434f1579b7e47e4b3c8c57123655a8eb9662d6010a564280d890dfce3
+SHA512 (node-v14.5.0-stripped.tar.gz) = 68b2867ea4b0c6185226fd686e361d2e711fd9dbd843c93b777e7214c5c88545cb5bd290a7b34a680c8392ff15a33644ee04610f0be1e240750e605ff1aa7d36
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit a6be2c886db91c82b64fbf8c8593d84afb1bd944
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jul 7 10:57:57 2020 -0400
Update for new packaging guidelines
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 4c2be8a..19149d1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,7 +7,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -231,6 +231,9 @@ Provides: bundled(icu) = %{icu_version}
Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
+# Make sure to pull in the appropriate packaging macros when building RPMs
+Requires: (nodejs-packaging if rpm-build)
+
# Make sure we keep NPM up to date when we update Node.js
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
@@ -683,6 +686,9 @@ end
%changelog
+* Tue Jul 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.4.0-3
+- Update for new packaging guidelines
+
* Tue Jun 30 2020 Jeff Law law@redhat.com - 1:14.4.0-2
- Disable LTO
commit 22d4850d291c81d57882e8ce5a22f45106c16a8f
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jul 7 10:45:26 2020 -0400
Fix typo in changelog
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index c40bf21..4c2be8a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -684,7 +684,7 @@ end
%changelog
* Tue Jun 30 2020 Jeff Law law@redhat.com - 1:14.4.0-2
-Disable LTO
+- Disable LTO
* Wed Jun 03 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:14.4.0-1
- Security update to 14.4.0
commit a9d362b0f18f91e91640f70e9cd72fd2384e750a
Author: Jeff Law law@redhat.com
Date: Tue Jun 30 14:07:04 2020 -0600
Disable LTO
diff --git a/nodejs.spec b/nodejs.spec
index 046cbbb..c40bf21 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,7 +7,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -361,6 +361,9 @@ find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%endif
%build
+# This package has static probes which do not work with LTO
+# Disable LTO
+%define _lto_cflags %{nil}
%ifarch s390 s390x %{arm} %ix86
# Decrease debuginfo verbosity to reduce memory consumption during final
@@ -680,6 +683,9 @@ end
%changelog
+* Tue Jun 30 2020 Jeff Law law@redhat.com - 1:14.4.0-2
+Disable LTO
+
* Wed Jun 03 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:14.4.0-1
- Security update to 14.4.0
commit 5ec847fbbad6783fe8403f23222a3cbcf52227c5
Merge: bb0d4da 78887f1
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jun 29 09:29:27 2020 -0400
Merge branch '14'
diff --cc 0001-Disable-running-gyp-on-shared-deps.patch
index 6d662d3,a20fb72..ef45163
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@@ -1,7 -1,7 +1,7 @@@
- From 0da4decd64a9cbfcf75b2697c722cd6fc82a164d Mon Sep 17 00:00:00 2001
+ From 65f5eb67f4691ab535cc00240a00bd33efe29969 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
-Date: Thu, 27 Apr 2017 14:25:42 +0200
-Subject: [PATCH 1/2] Disable running gyp on shared deps
+Date: Fri, 17 Apr 2020 12:59:44 +0200
+Subject: [PATCH] 0001
---
Makefile | 2 +-
diff --cc nodejs.spec
index 36fe999,68f6176..046cbbb
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -1,10 -1,7 +1,8 @@@
- # uncomment to enable bootstrap mode
- # %%global _with_bootstrap 1
-
# bundle dependencies that are not available as Fedora modules
%bcond_with bootstrap
+ %bcond_without python3_fixup
+
# == Master Relase ==
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
commit 78887f1479112d6d5671c012b841411e2b89758f
Author: Zuzana Svetlikova zsvetlik@redhat.com
Date: Wed Jun 3 22:33:35 2020 +0200
Security update to 14.4.0
diff --git a/nodejs.spec b/nodejs.spec
index f1d7d38..68f6176 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,3 @@
-# uncomment to enable bootstrap mode
-# %%global _with_bootstrap 1
-
# bundle dependencies that are not available as Fedora modules
%bcond_with bootstrap
%bcond_without python3_fixup
@@ -20,7 +17,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 3
+%global nodejs_minor 4
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -64,7 +61,7 @@
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 40
+%global nghttp2_minor 41
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
@@ -149,8 +146,12 @@ Patch2: 0002-Install-both-binaries-and-use-libdir.patch
BuildRequires: python3-devel
BuildRequires: zlib-devel
BuildRequires: brotli-devel
-BuildRequires: gcc >= 4.9.4
-BuildRequires: gcc-c++ >= 4.9.4
+BuildRequires: gcc >= 6.3.0
+BuildRequires: gcc-c++ >= 6.3.0
+# needed to generate bundled provides for npm dependencies
+# https://src.fedoraproject.org/rpms/nodejs/pull-request/2
+# https://pagure.io/nodejs-packaging/pull-request/10
+BuildRequires: nodejs-packaging
BuildRequires: chrpath
BuildRequires: libatomic
@@ -158,7 +159,6 @@ BuildRequires: libatomic
Provides: bundled(libuv) = %{libuv_version}
Provides: bundled(nghttp2) = %{nghttp2_version}
%else
-BuildRequires: nodejs-packaging
BuildRequires: systemtap-sdt-devel
BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:%{libuv_version}
@@ -208,7 +208,6 @@ Conflicts: node <= 0.3.2-12
Provides: nodejs-punycode = %{punycode_version}
Provides: npm(punycode) = %{punycode_version}
-
# Node.js has forked c-ares from upstream in an incompatible way, so we need
# to carry the bundled version internally.
# See https://github.com/nodejs/node/commit/766d063e0578c0f7758c3a965c971763f43fec...
@@ -234,7 +233,6 @@ Provides: bundled(histogram) = %{histogram_version}
# Make sure we keep NPM up to date when we update Node.js
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
-
%description
Node.js is a platform built on Chrome's JavaScript runtime
for easily building fast, scalable network applications.
@@ -242,6 +240,7 @@ Node.js uses an event-driven, non-blocking I/O model that
makes it lightweight and efficient, perfect for data-intensive
real-time applications that run across distributed devices.
+
%package devel
Summary: JavaScript runtime - development headers
Group: Development/Languages
@@ -260,6 +259,7 @@ Requires: libuv-devel%{?_isa}
%description devel
Development headers for the Node.js JavaScript runtime.
+
%package libs
Summary: Node.js and v8 libraries
@@ -287,7 +287,6 @@ Libraries to support Node.js and provide stable v8 interfaces.
Summary: Non-English locale data for Node.js
Requires: %{name}%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-
%description full-i18n
Optional data files to provide full-icu support for Node.js. Remove this
package to save space if non-English locales are not needed.
@@ -303,6 +302,7 @@ Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_rel
%description -n v8-devel
Development headers for the v8 runtime.
+
%package -n npm
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
@@ -325,6 +325,7 @@ Provides: npm(npm) = %{npm_version}
npm is a package manager for node.js. You can use it to install and publish
your node programs. It manages dependencies and does other cool stuff.
+
%package docs
Summary: Node.js API documentation
Group: Documentation
@@ -347,7 +348,6 @@ The API documentation for the Node.js JavaScript runtime.
rm -rf deps/zlib
rm -rf deps/brotli
-
# Replace any instances of unversioned python' with python3
%if %{with python3_fixup}
pathfix.py -i %{__python3} -pn $(find -type f ! -name "*.js")
@@ -419,7 +419,6 @@ export LDFLAGS="%{build_ldflags}"
make BUILDTYPE=Release %{?_smp_mflags}
-
# Extract the ICU data and convert it to the appropriate endianness
pushd deps/
tar xfz %SOURCE3
@@ -511,7 +510,6 @@ rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/docs
ln -sf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
-
# Node tries to install some python files into a documentation directory
# (and not the proper one). Remove them for now until we figure out what to
# do with them.
@@ -530,7 +528,6 @@ find %{buildroot}%{_prefix}/lib/node_modules/npm \
chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp
chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
-
# Drop the NPM default configuration in place
mkdir -p %{buildroot}%{_sysconfdir}
cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
@@ -543,6 +540,7 @@ ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
# Install the full-icu data files
install -Dpm0644 -t %{buildroot}%{icudatadir} deps/icu/source/converted/*
+
%check
# Fail the build if the versions don't match
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
@@ -681,7 +679,10 @@ end
%changelog
-* Thu May 21 2020 Stephen Gallagher sgallagh@redhat.com - 1:4.3.0-1
+* Wed Jun 03 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:14.4.0-1
+- Security update to 14.4.0
+
+* Thu May 21 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.3.0-1
- Update to 14.3.0
* Wed May 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.2.0-1
@@ -690,10 +691,10 @@ end
* Wed Apr 29 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.1.0-1
- Update to 14.1.0
-* Fri Apr 24 2020 zsvetlik@redhat.com - 1:14.0.0-2
+* Fri Apr 24 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:14.0.0-2
- Keep the fix scripts for Koji
-* Thu Apr 23 2020 zsvetlik@redhat.com - 1:14.0.0-1
+* Thu Apr 23 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:14.0.0-1
- Update to 14.0.0
- v14.x should be python3 compatible, so commented out py sed scripts
diff --git a/sources b/sources
index 3e7ba92..3e05b63 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.3.0-stripped.tar.gz) = 8a62ec66cfef5cab579af0cf9a34e43ccace4bbeeea55a141d536713deffd850612e9385cf1a1b53d1730bf517469c306dcc0608106548a1c19ad055c089eb89
+SHA512 (node-v14.4.0-stripped.tar.gz) = 28112c451e59c678d8f3bfa58abc06f711a47bddaa4636919facb60e785bbce958a2061434f1579b7e47e4b3c8c57123655a8eb9662d6010a564280d890dfce3
SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit d85f19e1bcb0a25d319231a44930e758fbd7e22a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri May 22 11:15:45 2020 -0400
Bump the version field correctly
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index cdb39ee..f1d7d38 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 2
+%global nodejs_minor 3
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
commit 803540893efd0bb97cae3c19e5ca1ae475ac5911
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu May 21 17:03:50 2020 -0400
Update to 14.3.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 2f62f82..271dd29 100644
--- a/.gitignore
+++ b/.gitignore
@@ -111,3 +111,4 @@
/icu4c-64_2-src.tgz
/icu4c-65_1-src.tgz
/icu4c-66_1-src.tgz
+/icu4c-67_1-src.tgz
diff --git a/nodejs.spec b/nodejs.spec
index b50a7f5..cdb39ee 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -69,7 +69,7 @@
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
-%global icu_major 66
+%global icu_major 67
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
@@ -93,7 +93,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 14
-%global npm_patch 4
+%global npm_patch 5
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# uvwasi - from deps/uvwasi/include/uvwasi.h
@@ -681,6 +681,9 @@ end
%changelog
+* Thu May 21 2020 Stephen Gallagher sgallagh@redhat.com - 1:4.3.0-1
+- Update to 14.3.0
+
* Wed May 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.2.0-1
- Update to 14.2.0
diff --git a/sources b/sources
index f3cb90b..3e7ba92 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.2.0-stripped.tar.gz) = ca29fe274359a578ebb6b129e7627458c44c3dd680503e10395fae6e1d8c461991f068e0fa4ff20694dcda6f8657787d9dc4feea77c3c0d9b59f09639013d39e
-SHA512 (icu4c-66_1-src.tgz) = 78d87bce65a7bdf7e9a19bda13e353c60846816ff34025f829d1ff15f9ac49aa6061eb192173742be0eca105684ce0e39e95656147afe848520bf60274c8d246
+SHA512 (node-v14.3.0-stripped.tar.gz) = 8a62ec66cfef5cab579af0cf9a34e43ccace4bbeeea55a141d536713deffd850612e9385cf1a1b53d1730bf517469c306dcc0608106548a1c19ad055c089eb89
+SHA512 (icu4c-67_1-src.tgz) = 4779f1ce1ca7976f6fad6768853ea8c540da54d11509e3b6cfd864a04b5f2db1c3d4b546387f91ad02fb90804525bc37d2543173f0d705d6ca11dc6f2b7640a8
commit da95035952608d54519af98725361816cce4009c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed May 6 07:37:03 2020 -0400
Update to 14.2.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 4d06043..b50a7f5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 1
+%global nodejs_minor 2
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -99,7 +99,7 @@
# uvwasi - from deps/uvwasi/include/uvwasi.h
%global uvwasi_major 0
%global uvwasi_minor 0
-%global uvwasi_patch 6
+%global uvwasi_patch 8
%global uvwasi_version %{uvwasi_major}.%{uvwasi_minor}.%{uvwasi_patch}
# histogram_c - assumed from timestamps
@@ -681,6 +681,9 @@ end
%changelog
+* Wed May 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.2.0-1
+- Update to 14.2.0
+
* Wed Apr 29 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.1.0-1
- Update to 14.1.0
diff --git a/sources b/sources
index e3d8954..f3cb90b 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.1.0-stripped.tar.gz) = dacdc683cf1e194d8844ece591ff80fa2d92b2841963f090ac377e7036f0edaab7c2912ed3d0e07ddc763088313cd6e3c850da55f31708244f000f9a29da197e
+SHA512 (node-v14.2.0-stripped.tar.gz) = ca29fe274359a578ebb6b129e7627458c44c3dd680503e10395fae6e1d8c461991f068e0fa4ff20694dcda6f8657787d9dc4feea77c3c0d9b59f09639013d39e
SHA512 (icu4c-66_1-src.tgz) = 78d87bce65a7bdf7e9a19bda13e353c60846816ff34025f829d1ff15f9ac49aa6061eb192173742be0eca105684ce0e39e95656147afe848520bf60274c8d246
commit bb0d4da94c2960f22c82fb90c6131fd427e95ce1
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Apr 29 15:33:09 2020 -0400
Update to 12.16.3
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index fe06c61..36fe999 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -4,6 +4,7 @@
# bundle dependencies that are not available as Fedora modules
%bcond_with bootstrap
+
# == Master Relase ==
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
@@ -20,7 +21,7 @@
%global nodejs_epoch 1
%global nodejs_major 12
%global nodejs_minor 16
-%global nodejs_patch 2
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -45,7 +46,7 @@
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
-%global c_ares_minor 15
+%global c_ares_minor 16
%global c_ares_patch 0
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
@@ -104,7 +105,7 @@
# uvwasi - from deps/uvwasi/include/uvwasi.h
%global uvwasi_major 0
%global uvwasi_minor 0
-%global uvwasi_patch 5
+%global uvwasi_patch 6
%global uvwasi_version %{uvwasi_major}.%{uvwasi_minor}.%{uvwasi_patch}
# histogram_c - assumed from timestamps
@@ -241,12 +242,7 @@ Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
# Make sure we keep NPM up to date when we update Node.js
-%if 0%{?rhel} < 8
-# EPEL doesn't support Recommends, so make it strict
-Requires: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
-%else
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
-%endif
%description
@@ -329,9 +325,7 @@ Release: %{npm_release}%{?dist}
Obsoletes: npm < 0:3.5.4-6
Provides: npm = %{npm_epoch}:%{npm_version}
Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-%if 0%{?fedora} || 0%{?rhel} >= 8
Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-%endif
# Do not add epoch to the virtual NPM provides or it will break
# the automatic dependency-generation script.
@@ -695,6 +689,9 @@ end
%changelog
+* Wed Apr 29 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.3-1
+- Update to 12.16.3
+
* Wed Apr 15 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:12.16.2-1
- Update to 12.16.2
- Add bundled uvwasi and histogram_c provides
diff --git a/sources b/sources
index 8bf1c62..95d4069 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v12.16.2-stripped.tar.gz) = cc289da4a836feb5e7c330de0fcee8b3677d925f98e1c574918f0432d6dcdcbf6183a1a3a834f568ad80e273d1744ddb3df3679dccfd1b784c075b0ea6181c00
+SHA512 (node-v12.16.3-stripped.tar.gz) = cf11b2d88c2444e342a4087abe2f4707a4234f530b3408da855586202aad4fd71b8014d7ec0b5a2a51347c954638694cb39462236c8e8c3dc2afde32fccabf09
SHA512 (icu4c-65_1-src.tgz) = 8f1ef33e1f4abc9a8ee870331c59f01b473d6da1251a19ce403f822f3e3871096f0791855d39c8f20c612fc49cda2c62c06864aa32ddab2dbd186d2b21ce9139
commit bb1d7b3d198399b07556fd065e053e613d7e8181
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Apr 29 15:08:51 2020 -0400
Update to 14.1.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 8df8781..4d06043 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -3,12 +3,13 @@
# bundle dependencies that are not available as Fedora modules
%bcond_with bootstrap
+%bcond_without python3_fixup
# == Master Relase ==
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,7 +20,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 14
-%global nodejs_minor 0
+%global nodejs_minor 1
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -36,7 +37,7 @@
%global v8_major 8
%global v8_minor 1
%global v8_build 307
-%global v8_patch 30
+%global v8_patch 31
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -231,12 +232,7 @@ Provides: bundled(uvwasi) = %{uvwasi_version}
Provides: bundled(histogram) = %{histogram_version}
# Make sure we keep NPM up to date when we update Node.js
-%if 0%{?rhel} < 8
-# EPEL doesn't support Recommends, so make it strict
-Requires: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
-%else
Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
-%endif
%description
@@ -319,9 +315,7 @@ Release: %{npm_release}%{?dist}
Obsoletes: npm < 0:3.5.4-6
Provides: npm = %{npm_epoch}:%{npm_version}
Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-%if 0%{?fedora} || 0%{?rhel} >= 8
Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-%endif
# Do not add epoch to the virtual NPM provides or it will break
# the automatic dependency-generation script.
@@ -355,6 +349,7 @@ rm -rf deps/brotli
# Replace any instances of unversioned python' with python3
+%if %{with python3_fixup}
pathfix.py -i %{__python3} -pn $(find -type f ! -name "*.js")
find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
@@ -362,6 +357,7 @@ sed -i "s~python~python3~" $(find . -type f | grep "gyp$")
sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
+%endif
%build
@@ -685,6 +681,9 @@ end
%changelog
+* Wed Apr 29 2020 Stephen Gallagher sgallagh@redhat.com - 1:14.1.0-1
+- Update to 14.1.0
+
* Fri Apr 24 2020 zsvetlik@redhat.com - 1:14.0.0-2
- Keep the fix scripts for Koji
diff --git a/sources b/sources
index 63c2970..e3d8954 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v14.0.0-stripped.tar.gz) = d8df905a8bddba6635e8d68122d81658037bf5c9b08ccdc6923c1a8d617bef345f8a448fc3738666bfc46c28f59eceef09265336d29d0ce86a263a86ca951bbd
+SHA512 (node-v14.1.0-stripped.tar.gz) = dacdc683cf1e194d8844ece591ff80fa2d92b2841963f090ac377e7036f0edaab7c2912ed3d0e07ddc763088313cd6e3c850da55f31708244f000f9a29da197e
SHA512 (icu4c-66_1-src.tgz) = 78d87bce65a7bdf7e9a19bda13e353c60846816ff34025f829d1ff15f9ac49aa6061eb192173742be0eca105684ce0e39e95656147afe848520bf60274c8d246
commit 3bf38ee88f5b3cf8f5567bd45552ebdffa2a24fd
Author: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri Apr 24 14:56:30 2020 +0200
Keep the fix scripts for Koji
diff --git a/nodejs.spec b/nodejs.spec
index 89194b5..8df8781 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -355,13 +355,13 @@ rm -rf deps/brotli
# Replace any instances of unversioned python' with python3
-# pathfix.py -i %%{__python3} -pn $(find -type f ! -name "*.js")
-# find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
-# find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
-# sed -i "s~python~python3~" $(find . -type f | grep "gyp$")
-# sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
-# sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
-# find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
+pathfix.py -i %{__python3} -pn $(find -type f ! -name "*.js")
+find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
+find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
+sed -i "s~python~python3~" $(find . -type f | grep "gyp$")
+sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
+sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
+find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%build
@@ -685,6 +685,9 @@ end
%changelog
+* Fri Apr 24 2020 zsvetlik@redhat.com - 1:14.0.0-2
+- Keep the fix scripts for Koji
+
* Thu Apr 23 2020 zsvetlik@redhat.com - 1:14.0.0-1
- Update to 14.0.0
- v14.x should be python3 compatible, so commented out py sed scripts
commit f27023550f6c1458a8fdf34b089ebdeebde0e99e
Author: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri Apr 24 01:29:26 2020 +0200
Update to v14, don't use python sed scripts
diff --git a/nodejs.spec b/nodejs.spec
index bbf4fba..89194b5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,12 +18,12 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 13
-%global nodejs_minor 13
+%global nodejs_major 14
+%global nodejs_minor 0
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
-%global nodejs_soversion 79
+%global nodejs_soversion 83
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release %{baserelease}
@@ -33,10 +33,10 @@
# v8 - from deps/v8/include/v8-version.h
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
-%global v8_major 7
-%global v8_minor 9
-%global v8_build 317
-%global v8_patch 25
+%global v8_major 8
+%global v8_minor 1
+%global v8_build 307
+%global v8_patch 30
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -57,7 +57,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 35
+%global libuv_minor 37
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -355,13 +355,13 @@ rm -rf deps/brotli
# Replace any instances of unversioned python' with python3
-pathfix.py -i %{__python3} -pn $(find -type f ! -name "*.js")
-find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
-find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
-sed -i "s~python~python3~" $(find . -type f | grep "gyp$")
-sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
-sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
-find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
+# pathfix.py -i %%{__python3} -pn $(find -type f ! -name "*.js")
+# find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
+# find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
+# sed -i "s~python~python3~" $(find . -type f | grep "gyp$")
+# sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
+# sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
+# find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%build
@@ -685,6 +685,10 @@ end
%changelog
+* Thu Apr 23 2020 zsvetlik@redhat.com - 1:14.0.0-1
+- Update to 14.0.0
+- v14.x should be python3 compatible, so commented out py sed scripts
+
* Wed Apr 15 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:13.13.0-1
- Update to 13.13.0
- Add bundled uvwasi and histogram_c provides
diff --git a/sources b/sources
index 508983c..63c2970 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v13.13.0-stripped.tar.gz) = 54f31fc69c614610a412021fdd6cd8327dcd10a716df4500614f6e6a30ba1cb2314a14f3c675b629bf6bad24c82ef66f59d24b74f5677ae8ea4157fb98759fc9
+SHA512 (node-v14.0.0-stripped.tar.gz) = d8df905a8bddba6635e8d68122d81658037bf5c9b08ccdc6923c1a8d617bef345f8a448fc3738666bfc46c28f59eceef09265336d29d0ce86a263a86ca951bbd
SHA512 (icu4c-66_1-src.tgz) = 78d87bce65a7bdf7e9a19bda13e353c60846816ff34025f829d1ff15f9ac49aa6061eb192173742be0eca105684ce0e39e95656147afe848520bf60274c8d246
commit 3f06b08f134f8a69a18e5f4f00a736ed78879de9
Author: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri Apr 17 11:56:38 2020 +0200
Update to v13.13.0, add new Provides/Requires, remove icustrip patch, update nodejs-tarball
diff --git a/.gitignore b/.gitignore
index ef6e814..2f62f82 100644
--- a/.gitignore
+++ b/.gitignore
@@ -110,3 +110,4 @@
/node-v10.11.0-stripped.tar.gz
/icu4c-64_2-src.tgz
/icu4c-65_1-src.tgz
+/icu4c-66_1-src.tgz
diff --git a/0003-icustrip.py-fix-use-of-string-and-byte-objects.patch b/0003-icustrip.py-fix-use-of-string-and-byte-objects.patch
deleted file mode 100644
index fe01f64..0000000
--- a/0003-icustrip.py-fix-use-of-string-and-byte-objects.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From fa4382c4b48ec34ed3259334f2e0f8d2706ffcf9 Mon Sep 17 00:00:00 2001
-From: Jonathan MERCIER jmercier@cng.fr
-Date: Tue, 17 Mar 2020 21:18:37 -0400
-Subject: [PATCH 3/3] icustrip.py: fix use of string and byte objects
-
-Signed-off-by: Stephen Gallagher sgallagh@redhat.com
----
- tools/icu/icutrim.py | 17 ++++++++---------
- 1 file changed, 8 insertions(+), 9 deletions(-)
-
-diff --git a/tools/icu/icutrim.py b/tools/icu/icutrim.py
-index 25bd99d9cb260da00de9647f9b060790b48af8b2..f857e73bbce298048e407ddbef87f5bc4ac5307a 100755
---- a/tools/icu/icutrim.py
-+++ b/tools/icu/icutrim.py
-@@ -11,10 +11,11 @@
- # Usage:
- # Use "-h" to get help options.
-
- from __future__ import print_function
-
-+import io
- import json
- import optparse
- import os
- import re
- import shutil
-@@ -157,13 +158,12 @@ def runcmd(tool, cmd, doContinue=False):
- print("FAILED: %s" % cmd)
- sys.exit(1)
- return rc
-
- ## STEP 0 - read in json config
--fi= open(options.filterfile, "rb")
--config=json.load(fi)
--fi.close()
-+with io.open(options.filterfile, encoding='utf-8') as fi:
-+ config = json.load(fi)
-
- if options.locales:
- config["variables"] = config.get("variables", {})
- config["variables"]["locales"] = config["variables"].get("locales", {})
- config["variables"]["locales"]["only"] = options.locales.split(',')
-@@ -283,14 +283,13 @@ for i in range(len(items)):
- print("procesing %s" % (tree))
- trees[tree] = { "extension": ".res", "treeprefix": treeprefix, "hasIndex": True }
- # read in the resource list for the tree
- treelistfile = os.path.join(options.tmpdir,"%s.lst" % tree)
- runcmd("iculslocs", "-i %s -N %s -T %s -l > %s" % (outfile, dataname, tree, treelistfile))
-- fi = open(treelistfile, 'rb')
-- treeitems = fi.readlines()
-- trees[tree]["locs"] = [treeitems[i].strip() for i in range(len(treeitems))]
-- fi.close()
-+ with io.open(treelistfile, 'r', encoding='utf-8') as fi:
-+ treeitems = fi.readlines()
-+ trees[tree]["locs"] = [line.strip() for line in treeitems]
- if tree not in config.get("trees", {}):
- print(" Warning: filter file %s does not mention trees.%s - will be kept as-is" % (options.filterfile, tree))
- else:
- queueForRemoval(tree)
-
-@@ -315,16 +314,16 @@ def removeList(count=0):
- print("## Damage control, trying to parse stderr from icupkg..")
- fi = open(hackerrfile, 'rb')
- erritems = fi.readlines()
- fi.close()
- #Item zone/zh_Hant_TW.res depends on missing item zone/zh_Hant.res
-- pat = re.compile("""^Item ([^ ]+) depends on missing item ([^ ]+).*""")
-+ pat = re.compile(bytes(r"^Item ([^ ]+) depends on missing item ([^ ]+).*", 'utf-8'))
- for i in range(len(erritems)):
- line = erritems[i].strip()
- m = pat.match(line)
- if m:
-- toDelete = m.group(1)
-+ toDelete = m.group(1).decode("utf-8")
- if(options.verbose > 5):
- print("<< %s added to delete" % toDelete)
- remove.add(toDelete)
- else:
- print("ERROR: could not match errline: %s" % line)
---
-2.25.1
-
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index dfc8587..f5b042b 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -167,7 +167,7 @@ grep "define UV_VERSION_MAJOR" node-v${version}/deps/uv/include/uv/version.h
grep "define UV_VERSION_MINOR" node-v${version}/deps/uv/include/uv/version.h
grep "define UV_VERSION_PATCH" node-v${version}/deps/uv/include/uv/version.h
echo
-echo "libuv"
+echo "nghttp2"
echo "========================="
grep "define NGHTTP2_VERSION " node-v${version}/deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
echo
@@ -179,6 +179,12 @@ echo "punycode"
echo "========================="
grep "'version'" node-v${version}/lib/punycode.js
echo
+echo "uvwasi"
+echo "========================="
+grep "define UVWASI_VERSION_MAJOR" node-v${version}/deps/uvwasi/include/uvwasi.h
+grep "define UVWASI_VERSION_MINOR" node-v${version}/deps/uvwasi/include/uvwasi.h
+grep "define UVWASI_VERSION_PATCH" node-v${version}/deps/uvwasi/include/uvwasi.h
+echo
echo "npm"
echo "========================="
grep ""version":" node-v${version}/deps/npm/package.json
diff --git a/nodejs.spec b/nodejs.spec
index 7ba814c..bbf4fba 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 13
-%global nodejs_minor 11
+%global nodejs_minor 13
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -45,7 +45,7 @@
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
-%global c_ares_minor 15
+%global c_ares_minor 16
%global c_ares_patch 0
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
@@ -57,8 +57,8 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 34
-%global libuv_patch 2
+%global libuv_minor 35
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -68,7 +68,7 @@
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
-%global icu_major 65
+%global icu_major 66
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
@@ -91,10 +91,22 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 13
-%global npm_patch 7
+%global npm_minor 14
+%global npm_patch 4
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
+# uvwasi - from deps/uvwasi/include/uvwasi.h
+%global uvwasi_major 0
+%global uvwasi_minor 0
+%global uvwasi_patch 6
+%global uvwasi_version %{uvwasi_major}.%{uvwasi_minor}.%{uvwasi_patch}
+
+# histogram_c - assumed from timestamps
+%global histogram_major 0
+%global histogram_minor 9
+%global histogram_patch 7
+%global histogram_version %{histogram_major}.%{histogram_minor}.%{histogram_patch}
+
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
# to increment safely. Changing this can only be done during an update when the
@@ -133,12 +145,9 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
-# Patch to fix python3 issues with icustrip.py
-# https://github.com/nodejs/node/pull/31659
-Patch3: 0003-icustrip.py-fix-use-of-string-and-byte-objects.patch
-
BuildRequires: python3-devel
BuildRequires: zlib-devel
+BuildRequires: brotli-devel
BuildRequires: gcc >= 4.9.4
BuildRequires: gcc-c++ >= 4.9.4
BuildRequires: chrpath
@@ -171,14 +180,14 @@ Requires: nodejs-libs%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
# Pull in the full-icu data by default
Recommends: nodejs-full-i18n%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
-#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
-#break when binary compatibility is broken
+# we need ABI virtual provides where SONAMEs aren't enough/not present so deps
+# break when binary compatibility is broken
Provides: nodejs(abi) = %{nodejs_abi}
Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
Provides: nodejs(v8-abi) = %{v8_abi}
Provides: nodejs(v8-abi%{v8_major}) = %{v8_abi}
-#this corresponds to the "engine" requirement in package.json
+# this corresponds to the "engine" requirement in package.json
Provides: nodejs(engine) = %{nodejs_version}
# Node.js currently has a conflict with the 'node' package in Fedora
@@ -216,6 +225,11 @@ Provides: bundled(v8) = %{v8_version}
# an ABI-break, so we'll use the bundled copy.
Provides: bundled(icu) = %{icu_version}
+# Upstream added new dependencies, but so far they are not available in Fedora
+# or there's no option to built it as a shared dependency, so we bundle them
+Provides: bundled(uvwasi) = %{uvwasi_version}
+Provides: bundled(histogram) = %{histogram_version}
+
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?rhel} < 8
# EPEL doesn't support Recommends, so make it strict
@@ -238,6 +252,7 @@ Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
+Requires: brotli-devel%{?_isa}
Requires: nodejs-packaging
%if %{with bootstrap}
@@ -336,6 +351,7 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
rm -rf deps/zlib
+rm -rf deps/brotli
# Replace any instances of unversioned python' with python3
@@ -384,6 +400,7 @@ export LDFLAGS="%{build_ldflags}"
--libdir=%{_lib} \
--shared-openssl \
--shared-zlib \
+ --shared-brotli \
--without-dtrace \
--with-intl=small-icu \
--debug-nghttp2 \
@@ -394,6 +411,7 @@ export LDFLAGS="%{build_ldflags}"
--libdir=%{_lib} \
--shared-openssl \
--shared-zlib \
+ --shared-brotli \
--shared-libuv \
--shared-nghttp2 \
--with-dtrace \
@@ -471,12 +489,12 @@ echo 'nodejs(v8-abi%{v8_major}) >= %v8_abi'
EOF
chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
-#install documentation
+# install documentation
mkdir -p %{buildroot}%{_pkgdocdir}/html
cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
-#node-gyp needs common.gypi too
+# node-gyp needs common.gypi too
mkdir -p %{buildroot}%{_datadir}/node
cp -p common.gypi %{buildroot}%{_datadir}/node
@@ -521,7 +539,7 @@ chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin
mkdir -p %{buildroot}%{_sysconfdir}
cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
-# NPM upstream expectes it to be in /usr/etc/npmrc, so we'll put a symlink here
+# NPM upstream expects it to be in /usr/etc/npmrc, so we'll put a symlink here
# This is done in the interests of keeping /usr read-only.
mkdir -p %{buildroot}%{_prefix}/etc
ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
@@ -613,6 +631,7 @@ end
%dir %{icudatadir}
%{icudatadir}/icudt%{icu_major}*.dat
+
%files libs
%license LICENSE
%{_libdir}/libnode.so.%{nodejs_soversion}
@@ -664,7 +683,14 @@ end
%{_pkgdocdir}/html
%{_pkgdocdir}/npm/docs
+
%changelog
+* Wed Apr 15 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:13.13.0-1
+- Update to 13.13.0
+- Add bundled uvwasi and histogram_c provides
+- Add shared brotli dependency
+- Remove icustrip.py patch, which was merged in upstream
+
* Tue Mar 17 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.11.0-2
- Fix python3 issue in icustrip.py
diff --git a/sources b/sources
index fe91f21..508983c 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v13.11.0-stripped.tar.gz) = dca4cc309c1376d141df9ad39ad2f7d4c045806705a78bf77d738c6f60110d0ce0ae3a11408a94dd655f22c0b178aed5422d1d141c3eba9f98d946a588e826f2
-SHA512 (icu4c-65_1-src.tgz) = 8f1ef33e1f4abc9a8ee870331c59f01b473d6da1251a19ce403f822f3e3871096f0791855d39c8f20c612fc49cda2c62c06864aa32ddab2dbd186d2b21ce9139
+SHA512 (node-v13.13.0-stripped.tar.gz) = 54f31fc69c614610a412021fdd6cd8327dcd10a716df4500614f6e6a30ba1cb2314a14f3c675b629bf6bad24c82ef66f59d24b74f5677ae8ea4157fb98759fc9
+SHA512 (icu4c-66_1-src.tgz) = 78d87bce65a7bdf7e9a19bda13e353c60846816ff34025f829d1ff15f9ac49aa6061eb192173742be0eca105684ce0e39e95656147afe848520bf60274c8d246
commit a8ba41ef71ccc672adf0d81eaa7273bef82cd120
Author: Zuzana Svetlikova zsvetlik@redhat.com
Date: Fri Apr 17 13:10:35 2020 +0200
Update to 12.16.2, add new Provides/Requires
diff --git a/.gitignore b/.gitignore
index 4f7c337..ef6e814 100644
--- a/.gitignore
+++ b/.gitignore
@@ -109,3 +109,4 @@
/node-v10.10.0-stripped.tar.gz
/node-v10.11.0-stripped.tar.gz
/icu4c-64_2-src.tgz
+/icu4c-65_1-src.tgz
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index ce6ff7a..6d662d3 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,29 +1,25 @@
-From 2213cf773b7cf503807397aac79f10d6690a6640 Mon Sep 17 00:00:00 2001
+From 0da4decd64a9cbfcf75b2697c722cd6fc82a164d Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
-Date: Thu, 27 Apr 2017 14:25:42 +0200
-Subject: [PATCH 1/2] Disable running gyp on shared deps
+Date: Fri, 17 Apr 2020 12:59:44 +0200
+Subject: [PATCH] 0001
---
- Makefile | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 05eaa73abbe0c6c651bdf446e3678b92700d57c3..829c4c7c9f8a2132def8767a243cb7160a85d2b2 100644
+index 88166da2a8..f0637b6c78 100644
--- a/Makefile
+++ b/Makefile
-@@ -141,9 +141,9 @@ test-code-cache: with-code-cache
+@@ -141,7 +141,7 @@ test-code-cache: with-code-cache
echo "'test-code-cache' target is a noop"
out/Makefile: config.gypi common.gypi node.gyp \
- deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp \
-- tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
-- tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
-+ deps/http_parser/http_parser.gyp \
-+ tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
-+ tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
++ deps/http_parser/http_parser.gyp \
+ tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
+ tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
-
- # node_version.h is listed because the N-API version is taken from there
--
-2.24.1
+2.25.2
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index 2aed5cd..74e36e0 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -132,6 +132,8 @@ fedpkg new-sources node-v${version}-stripped.tar.gz icu4c*-src.tgz
rm -f node-v${version}.tar.gz
+set +e
+
# Determine the bundled versions of the various packages
echo "Bundled software versions"
echo "-------------------------"
@@ -171,7 +173,7 @@ grep "define UV_VERSION_MAJOR" node-v${version}/deps/uv/include/uv/version.h
grep "define UV_VERSION_MINOR" node-v${version}/deps/uv/include/uv/version.h
grep "define UV_VERSION_PATCH" node-v${version}/deps/uv/include/uv/version.h
echo
-echo "libuv"
+echo "nghttp2"
echo "========================="
grep "define NGHTTP2_VERSION " node-v${version}/deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
echo
@@ -183,6 +185,12 @@ echo "punycode"
echo "========================="
grep "'version'" node-v${version}/lib/punycode.js
echo
+echo "uvwasi"
+echo "========================="
+grep "define UVWASI_VERSION_MAJOR" node-v${version}/deps/uvwasi/include/uvwasi.h
+grep "define UVWASI_VERSION_MINOR" node-v${version}/deps/uvwasi/include/uvwasi.h
+grep "define UVWASI_VERSION_PATCH" node-v${version}/deps/uvwasi/include/uvwasi.h
+echo
echo "npm"
echo "========================="
grep ""version":" node-v${version}/deps/npm/package.json
diff --git a/nodejs.spec b/nodejs.spec
index 42504a0..fe06c61 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 4
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -20,7 +20,7 @@
%global nodejs_epoch 1
%global nodejs_major 12
%global nodejs_minor 16
-%global nodejs_patch 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -64,7 +64,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
%global libuv_minor 34
-%global libuv_patch 0
+%global libuv_patch 2
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -74,8 +74,8 @@
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
-%global icu_major 64
-%global icu_minor 2
+%global icu_major 65
+%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
%global icudatadir %{nodejs_datadir}/icudata
@@ -97,10 +97,22 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 13
+%global npm_minor 14
%global npm_patch 4
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
+# uvwasi - from deps/uvwasi/include/uvwasi.h
+%global uvwasi_major 0
+%global uvwasi_minor 0
+%global uvwasi_patch 5
+%global uvwasi_version %{uvwasi_major}.%{uvwasi_minor}.%{uvwasi_patch}
+
+# histogram_c - assumed from timestamps
+%global histogram_major 0
+%global histogram_minor 9
+%global histogram_patch 7
+%global histogram_version %{histogram_major}.%{histogram_minor}.%{histogram_patch}
+
# In order to avoid needing to keep incrementing the release version for the
# main package forever, we will just construct one for npm that is guaranteed
# to increment safely. Changing this can only be done during an update when the
@@ -141,6 +153,7 @@ Patch2: 0002-Install-both-binaries-and-use-libdir.patch
BuildRequires: python3-devel
BuildRequires: zlib-devel
+BuildRequires: brotli-devel
BuildRequires: gcc >= 4.9.4
BuildRequires: gcc-c++ >= 4.9.4
BuildRequires: chrpath
@@ -177,14 +190,14 @@ Requires: nodejs-libs%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
# Pull in the full-icu data by default
Recommends: nodejs-full-i18n%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
-#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
-#break when binary compatibility is broken
+# we need ABI virtual provides where SONAMEs aren't enough/not present so deps
+# break when binary compatibility is broken
Provides: nodejs(abi) = %{nodejs_abi}
Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
Provides: nodejs(v8-abi) = %{v8_abi}
Provides: nodejs(v8-abi%{v8_major}) = %{v8_abi}
-#this corresponds to the "engine" requirement in package.json
+# this corresponds to the "engine" requirement in package.json
Provides: nodejs(engine) = %{nodejs_version}
# Node.js currently has a conflict with the 'node' package in Fedora
@@ -222,6 +235,11 @@ Provides: bundled(v8) = %{v8_version}
# an ABI-break, so we'll use the bundled copy.
Provides: bundled(icu) = %{icu_version}
+# Upstream added new dependencies, but so far they are not available in Fedora
+# or there's no option to built it as a shared dependency, so we bundle them
+Provides: bundled(uvwasi) = %{uvwasi_version}
+Provides: bundled(histogram) = %{histogram_version}
+
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?rhel} < 8
# EPEL doesn't support Recommends, so make it strict
@@ -244,6 +262,7 @@ Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
+Requires: brotli-devel%{?_isa}
Requires: nodejs-packaging
%if %{with bootstrap}
@@ -342,6 +361,7 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
rm -rf deps/zlib
+rm -rf deps/brotli
# Replace any instances of unversioned python' with python3
@@ -390,6 +410,7 @@ export LDFLAGS="%{build_ldflags}"
--libdir=%{_lib} \
--shared-openssl \
--shared-zlib \
+ --shared-brotli \
--without-dtrace \
--with-intl=small-icu \
--debug-nghttp2 \
@@ -400,6 +421,7 @@ export LDFLAGS="%{build_ldflags}"
--libdir=%{_lib} \
--shared-openssl \
--shared-zlib \
+ --shared-brotli \
--shared-libuv \
--shared-nghttp2 \
--with-dtrace \
@@ -477,12 +499,12 @@ echo 'nodejs(v8-abi%{v8_major}) >= %v8_abi'
EOF
chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
-#install documentation
+# install documentation
mkdir -p %{buildroot}%{_pkgdocdir}/html
cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
-#node-gyp needs common.gypi too
+# node-gyp needs common.gypi too
mkdir -p %{buildroot}%{_datadir}/node
cp -p common.gypi %{buildroot}%{_datadir}/node
@@ -527,7 +549,7 @@ chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin
mkdir -p %{buildroot}%{_sysconfdir}
cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
-# NPM upstream expectes it to be in /usr/etc/npmrc, so we'll put a symlink here
+# NPM upstream expects it to be in /usr/etc/npmrc, so we'll put a symlink here
# This is done in the interests of keeping /usr read-only.
mkdir -p %{buildroot}%{_prefix}/etc
ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
@@ -535,6 +557,7 @@ ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
# Install the full-icu data files
install -Dpm0644 -t %{buildroot}%{icudatadir} deps/icu/source/converted/*
+
%check
# Fail the build if the versions don't match
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
@@ -604,7 +627,7 @@ end
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
-%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
+%doc AUTHORS CHANGELOG.md onboarding.md GOVERNANCE.md README.md
%doc %{_mandir}/man1/node.1*
@@ -619,6 +642,7 @@ end
%dir %{icudatadir}
%{icudatadir}/icudt%{icu_major}*.dat
+
%files libs
%license LICENSE
%{_libdir}/libnode.so.%{nodejs_soversion}
@@ -669,7 +693,13 @@ end
%{_pkgdocdir}/html
%{_pkgdocdir}/npm/docs
+
%changelog
+* Wed Apr 15 2020 Zuzana Svetlikova zsvetlik@redhat.com - 1:12.16.2-1
+- Update to 12.16.2
+- Add bundled uvwasi and histogram_c provides
+- Add shared brotli dependency
+
* Tue Mar 17 2020 Tom Stellard tstellar@redhat.com - 1:12.16.1-4
- Replace hard-coded gcc and g++ with __cc and __cxx macros
diff --git a/sources b/sources
index a85e8b0..8bf1c62 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v12.16.1-stripped.tar.gz) = 489d337bd522ab48ad9cef99aa2ce3203a05fb05fda0454b805905f699d14da643b51f6b20786995f2aeeb9f468434b60d734e75cec3451e7648da623914c699
-SHA512 (icu4c-64_2-src.tgz) = 5ecb4c230ba45918747a1cf9aef86f555aa07d5b29b1d07ab674e8013f46dfb907a0e9d6945db41155f9dc3012fd94e1152ffc19f61a68b6dfcbabdcb8ae9d78
+SHA512 (node-v12.16.2-stripped.tar.gz) = cc289da4a836feb5e7c330de0fcee8b3677d925f98e1c574918f0432d6dcdcbf6183a1a3a834f568ad80e273d1744ddb3df3679dccfd1b784c075b0ea6181c00
+SHA512 (icu4c-65_1-src.tgz) = 8f1ef33e1f4abc9a8ee870331c59f01b473d6da1251a19ce403f822f3e3871096f0791855d39c8f20c612fc49cda2c62c06864aa32ddab2dbd186d2b21ce9139
commit 78f7bb0b356802538b189b8e87ef13c80629963c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Mar 23 14:31:48 2020 -0400
Replace hard-coded gcc and g++ with __cc and __cxx macros
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index f2e0afd..7ba814c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -355,8 +355,8 @@ find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
%endif
-export CC='gcc'
-export CXX='g++'
+export CC='%{__cc}'
+export CXX='%{__cxx}'
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
commit 4fd4157b50b984a02047db408575f97c6b3bed1e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Mar 17 23:24:03 2020 -0400
Fix python3 issue in icustrip.py
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0003-icustrip.py-fix-use-of-string-and-byte-objects.patch b/0003-icustrip.py-fix-use-of-string-and-byte-objects.patch
new file mode 100644
index 0000000..fe01f64
--- /dev/null
+++ b/0003-icustrip.py-fix-use-of-string-and-byte-objects.patch
@@ -0,0 +1,82 @@
+From fa4382c4b48ec34ed3259334f2e0f8d2706ffcf9 Mon Sep 17 00:00:00 2001
+From: Jonathan MERCIER jmercier@cng.fr
+Date: Tue, 17 Mar 2020 21:18:37 -0400
+Subject: [PATCH 3/3] icustrip.py: fix use of string and byte objects
+
+Signed-off-by: Stephen Gallagher sgallagh@redhat.com
+---
+ tools/icu/icutrim.py | 17 ++++++++---------
+ 1 file changed, 8 insertions(+), 9 deletions(-)
+
+diff --git a/tools/icu/icutrim.py b/tools/icu/icutrim.py
+index 25bd99d9cb260da00de9647f9b060790b48af8b2..f857e73bbce298048e407ddbef87f5bc4ac5307a 100755
+--- a/tools/icu/icutrim.py
++++ b/tools/icu/icutrim.py
+@@ -11,10 +11,11 @@
+ # Usage:
+ # Use "-h" to get help options.
+
+ from __future__ import print_function
+
++import io
+ import json
+ import optparse
+ import os
+ import re
+ import shutil
+@@ -157,13 +158,12 @@ def runcmd(tool, cmd, doContinue=False):
+ print("FAILED: %s" % cmd)
+ sys.exit(1)
+ return rc
+
+ ## STEP 0 - read in json config
+-fi= open(options.filterfile, "rb")
+-config=json.load(fi)
+-fi.close()
++with io.open(options.filterfile, encoding='utf-8') as fi:
++ config = json.load(fi)
+
+ if options.locales:
+ config["variables"] = config.get("variables", {})
+ config["variables"]["locales"] = config["variables"].get("locales", {})
+ config["variables"]["locales"]["only"] = options.locales.split(',')
+@@ -283,14 +283,13 @@ for i in range(len(items)):
+ print("procesing %s" % (tree))
+ trees[tree] = { "extension": ".res", "treeprefix": treeprefix, "hasIndex": True }
+ # read in the resource list for the tree
+ treelistfile = os.path.join(options.tmpdir,"%s.lst" % tree)
+ runcmd("iculslocs", "-i %s -N %s -T %s -l > %s" % (outfile, dataname, tree, treelistfile))
+- fi = open(treelistfile, 'rb')
+- treeitems = fi.readlines()
+- trees[tree]["locs"] = [treeitems[i].strip() for i in range(len(treeitems))]
+- fi.close()
++ with io.open(treelistfile, 'r', encoding='utf-8') as fi:
++ treeitems = fi.readlines()
++ trees[tree]["locs"] = [line.strip() for line in treeitems]
+ if tree not in config.get("trees", {}):
+ print(" Warning: filter file %s does not mention trees.%s - will be kept as-is" % (options.filterfile, tree))
+ else:
+ queueForRemoval(tree)
+
+@@ -315,16 +314,16 @@ def removeList(count=0):
+ print("## Damage control, trying to parse stderr from icupkg..")
+ fi = open(hackerrfile, 'rb')
+ erritems = fi.readlines()
+ fi.close()
+ #Item zone/zh_Hant_TW.res depends on missing item zone/zh_Hant.res
+- pat = re.compile("""^Item ([^ ]+) depends on missing item ([^ ]+).*""")
++ pat = re.compile(bytes(r"^Item ([^ ]+) depends on missing item ([^ ]+).*", 'utf-8'))
+ for i in range(len(erritems)):
+ line = erritems[i].strip()
+ m = pat.match(line)
+ if m:
+- toDelete = m.group(1)
++ toDelete = m.group(1).decode("utf-8")
+ if(options.verbose > 5):
+ print("<< %s added to delete" % toDelete)
+ remove.add(toDelete)
+ else:
+ print("ERROR: could not match errline: %s" % line)
+--
+2.25.1
+
diff --git a/nodejs.spec b/nodejs.spec
index 3fea0ad..f2e0afd 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -133,6 +133,10 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
+# Patch to fix python3 issues with icustrip.py
+# https://github.com/nodejs/node/pull/31659
+Patch3: 0003-icustrip.py-fix-use-of-string-and-byte-objects.patch
+
BuildRequires: python3-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
@@ -594,7 +598,7 @@ end
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
-%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
+%doc AUTHORS CHANGELOG.md onboarding.md GOVERNANCE.md README.md
%doc %{_mandir}/man1/node.1*
@@ -655,11 +659,15 @@ end
%files docs
+%doc doc
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
%{_pkgdocdir}/npm/docs
%changelog
+* Tue Mar 17 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.11.0-2
+- Fix python3 issue in icustrip.py
+
* Mon Mar 16 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.11.0-1
- Update to 13.11.0
commit 1484855d648b4ed8254139ca9b586666fd3d2e76
Author: Tom Stellard tstellar@redhat.com
Date: Thu Feb 13 03:01:14 2020 +0000
Replace hard-coded gcc and g++ with __cc and __cxx macros
diff --git a/nodejs.spec b/nodejs.spec
index 0fc9249..42504a0 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 4
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -361,8 +361,8 @@ find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
%endif
-export CC='gcc'
-export CXX='g++'
+export CC='%{__cc}'
+export CXX='%{__cxx}'
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
@@ -670,6 +670,9 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Tue Mar 17 2020 Tom Stellard tstellar@redhat.com - 1:12.16.1-4
+- Replace hard-coded gcc and g++ with __cc and __cxx macros
+
* Mon Mar 16 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.1-3
- Set npmrc to use python3 explicitly
commit 3b337524b7e9fe845fb51f4b648eee5f003e7e2e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Mar 16 08:13:37 2020 -0400
Update changelog
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 9c47100..0fc9249 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -670,6 +670,9 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Mon Mar 16 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.1-3
+- Set npmrc to use python3 explicitly
+
* Wed Feb 26 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.1-2
- Build with Python 3 only
commit 76e468eeba1c877c1515dfe96b1cd1cf3b653c8a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Mar 16 08:12:33 2020 -0400
Set npmrc to use python3 explicitly
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/npmrc b/npmrc
index 10437ca..50be1d1 100644
--- a/npmrc
+++ b/npmrc
@@ -1 +1,2 @@
prefix=/usr/local
+python=/usr/bin/python3
commit b5019305341a31658d854767c6edd2f2cfbe6963
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Mar 16 08:12:33 2020 -0400
Set npmrc to use python3 explicitly
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/npmrc b/npmrc
index 10437ca..50be1d1 100644
--- a/npmrc
+++ b/npmrc
@@ -1 +1,2 @@
prefix=/usr/local
+python=/usr/bin/python3
commit aadc802d26c4e7e0950c267a4405a299d26df295
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Mar 16 08:11:14 2020 -0400
Update to 13.11.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 690bba2..3fea0ad 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 13
-%global nodejs_minor 9
+%global nodejs_minor 11
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -660,6 +660,9 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Mon Mar 16 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.11.0-1
+- Update to 13.11.0
+
* Wed Feb 26 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.9.0-2
- Build with python 3 only
diff --git a/sources b/sources
index 9ac6f21..fe91f21 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v13.9.0-stripped.tar.gz) = 6d633b8e42954eba13bbf3b3deb47c7514af04a9f650d9d757f4a3ede85d591a21a4e1330d4b9389e59164bd34883c18ba62b50f4479de0daf6080f166f02138
+SHA512 (node-v13.11.0-stripped.tar.gz) = dca4cc309c1376d141df9ad39ad2f7d4c045806705a78bf77d738c6f60110d0ce0ae3a11408a94dd655f22c0b178aed5422d1d141c3eba9f98d946a588e826f2
SHA512 (icu4c-65_1-src.tgz) = 8f1ef33e1f4abc9a8ee870331c59f01b473d6da1251a19ce403f822f3e3871096f0791855d39c8f20c612fc49cda2c62c06864aa32ddab2dbd186d2b21ce9139
commit 30a795152ad27093cb931582a977ee497adf979d
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Feb 26 14:16:46 2020 -0500
Update changelog and drop package.cfg
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 91254c4..690bba2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -660,7 +660,10 @@ end
%{_pkgdocdir}/npm/docs
%changelog
-* Tue Feb 25 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.9.0--1
+* Wed Feb 26 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.9.0-2
+- Build with python 3 only
+
+* Tue Feb 25 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.9.0-1
- Release Node.js 13.9.0
* Tue Feb 25 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.1-1
diff --git a/package.cfg b/package.cfg
deleted file mode 100644
index 7ba3a28..0000000
--- a/package.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-[koji]
-targets = master f32 f31
commit 7e23cb6a17ac1daf73ef7d65288ea26b9450209f
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Feb 26 14:15:00 2020 -0500
Build with python3 only
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 88af4b3..91254c4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -133,7 +133,6 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
-BuildRequires: python2-devel
BuildRequires: python3-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
@@ -335,15 +334,14 @@ The API documentation for the Node.js JavaScript runtime.
rm -rf deps/zlib
-# Replace any instances of unversioned python' with python2
-pathfix.py -i %{__python2} -pn $(find -type f ! -name "*.js")
-find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
-find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python2~" {} ;
-sed -i "s~python~python2~" $(find . -type f | grep "gyp$")
+# Replace any instances of unversioned python' with python3
+pathfix.py -i %{__python3} -pn $(find -type f ! -name "*.js")
+find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
+find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
+sed -i "s~python~python3~" $(find . -type f | grep "gyp$")
sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
-sed -i "s~usr/bin/python.*$~usr/bin/python2~" ./deps/v8/tools/mb/mb_unittest.py
-find . -type f -exec sed -i "s~python -c~python2 -c~" {} ;
-sed -i "s~which('python')~which('python2')~" configure
+sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
+find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%build
@@ -377,7 +375,7 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
export LDFLAGS="%{build_ldflags}"
%if %{with bootstrap}
-./configure --prefix=%{_prefix} \
+%{__python3} configure.py --prefix=%{_prefix} \
--shared \
--libdir=%{_lib} \
--shared-openssl \
@@ -387,7 +385,7 @@ export LDFLAGS="%{build_ldflags}"
--debug-nghttp2 \
--openssl-use-def-ca-store
%else
-./configure --prefix=%{_prefix} \
+%{__python3} configure.py --prefix=%{_prefix} \
--shared \
--libdir=%{_lib} \
--shared-openssl \
commit 2a719fcdd4d6b33eeed7738566b0ff0510a3d8d7
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Feb 26 14:15:10 2020 -0500
Bump changelog
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 95b4b0d..9c47100 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -670,6 +670,9 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Wed Feb 26 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.1-2
+- Build with Python 3 only
+
* Tue Feb 25 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.1-1
- Update to 12.16.1
- Fixes six regressions introduced in 12.16.0
commit cc5ee3bfc38c2328c94a49c0719bfca5183c5377
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Feb 26 14:15:00 2020 -0500
Build with python3 only
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 8cd0db6..95b4b0d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -139,7 +139,6 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
-BuildRequires: python2-devel
BuildRequires: python3-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
@@ -345,15 +344,14 @@ The API documentation for the Node.js JavaScript runtime.
rm -rf deps/zlib
-# Replace any instances of unversioned python' with python2
-pathfix.py -i %{__python2} -pn $(find -type f ! -name "*.js")
-find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
-find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python2~" {} ;
-sed -i "s~python~python2~" $(find . -type f | grep "gyp$")
+# Replace any instances of unversioned python' with python3
+pathfix.py -i %{__python3} -pn $(find -type f ! -name "*.js")
+find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python3~" {} ;
+find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python3~" {} ;
+sed -i "s~python~python3~" $(find . -type f | grep "gyp$")
sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
-sed -i "s~usr/bin/python.*$~usr/bin/python2~" ./deps/v8/tools/mb/mb_unittest.py
-find . -type f -exec sed -i "s~python -c~python2 -c~" {} ;
-sed -i "s~which('python')~which('python2')~" configure
+sed -i "s~usr/bin/python.*$~usr/bin/python3~" ./deps/v8/tools/mb/mb_unittest.py
+find . -type f -exec sed -i "s~python -c~python3 -c~" {} ;
%build
@@ -387,7 +385,7 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
export LDFLAGS="%{build_ldflags}"
%if %{with bootstrap}
-./configure --prefix=%{_prefix} \
+%{__python3} configure.py --prefix=%{_prefix} \
--shared \
--libdir=%{_lib} \
--shared-openssl \
@@ -397,7 +395,7 @@ export LDFLAGS="%{build_ldflags}"
--debug-nghttp2 \
--openssl-use-def-ca-store
%else
-./configure --prefix=%{_prefix} \
+%{__python3} configure.py --prefix=%{_prefix} \
--shared \
--libdir=%{_lib} \
--shared-openssl \
commit 6dcddc369946554858df21ae0e1bbbb549f390f4
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Feb 25 11:22:47 2020 -0500
Release Node.js 13.9.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 4f7c337..ef6e814 100644
--- a/.gitignore
+++ b/.gitignore
@@ -109,3 +109,4 @@
/node-v10.10.0-stripped.tar.gz
/node-v10.11.0-stripped.tar.gz
/icu4c-64_2-src.tgz
+/icu4c-65_1-src.tgz
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index ce6ff7a..a20fb72 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,29 +1,25 @@
-From 2213cf773b7cf503807397aac79f10d6690a6640 Mon Sep 17 00:00:00 2001
+From 65f5eb67f4691ab535cc00240a00bd33efe29969 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
---
- Makefile | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 05eaa73abbe0c6c651bdf446e3678b92700d57c3..829c4c7c9f8a2132def8767a243cb7160a85d2b2 100644
+index 34cdec7f7767b5152678adaeea10a8cf711fb9a8..3b548907033108831e99e054bc84d3ce91daa25c 100644
--- a/Makefile
+++ b/Makefile
-@@ -141,9 +141,9 @@ test-code-cache: with-code-cache
+@@ -141,7 +141,7 @@ test-code-cache: with-code-cache
echo "'test-code-cache' target is a noop"
out/Makefile: config.gypi common.gypi node.gyp \
-- deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp \
-- tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
-- tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
-+ deps/http_parser/http_parser.gyp \
-+ tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
-+ tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
+- deps/uv/uv.gyp deps/llhttp/llhttp.gyp deps/zlib/zlib.gyp \
++ deps/llhttp/llhttp.gyp \
+ tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
+ tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
-
- # node_version.h is listed because the N-API version is taken from there
--
2.24.1
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index c0613bf..b3441a7 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 11512edeb046b64be4daca76f061a3a918251ee0 Mon Sep 17 00:00:00 2001
+From 0b315d55b13d098ce8f3e96d501aeb33152a9e00 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/2] Install both binaries and use libdir.
@@ -13,10 +13,10 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index 6537a62d3954d83927c698db3fb80c9fc05faba7..b9a894bec9e5fd954004bcb423822ca984066dc5 100755
+index beb08df0884f7693b6c07d7fb5e85ae7bdcd1d7d..9e364586d4f79322fe53f41915ed7aad0e23a30d 100755
--- a/configure.py
+++ b/configure.py
-@@ -571,6 +571,12 @@ parser.add_option('--shared',
+@@ -582,6 +582,12 @@ parser.add_option('--shared',
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
@@ -29,7 +29,7 @@ index 6537a62d3954d83927c698db3fb80c9fc05faba7..b9a894bec9e5fd954004bcb423822ca9
parser.add_option('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
-@@ -1105,6 +1111,7 @@ def configure_node(o):
+@@ -1124,6 +1130,7 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
o['variables']['node_shared'] = b(options.shared)
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index 2aed5cd..dfc8587 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -132,6 +132,8 @@ fedpkg new-sources node-v${version}-stripped.tar.gz icu4c*-src.tgz
rm -f node-v${version}.tar.gz
+set +e
+
# Determine the bundled versions of the various packages
echo "Bundled software versions"
echo "-------------------------"
@@ -153,12 +155,6 @@ grep "define ARES_VERSION_MAJOR" node-v${version}/deps/cares/include/ares_versio
grep "define ARES_VERSION_MINOR" node-v${version}/deps/cares/include/ares_version.h
grep "define ARES_VERSION_PATCH" node-v${version}/deps/cares/include/ares_version.h
echo
-echo "http-parser"
-echo "========================="
-grep "define HTTP_PARSER_VERSION_MAJOR" node-v${version}/deps/http_parser/http_parser.h
-grep "define HTTP_PARSER_VERSION_MINOR" node-v${version}/deps/http_parser/http_parser.h
-grep "define HTTP_PARSER_VERSION_PATCH" node-v${version}/deps/http_parser/http_parser.h
-echo
echo "llhttp"
echo "========================="
grep "define LLHTTP_VERSION_MAJOR" node-v${version}/deps/llhttp/include/llhttp.h
diff --git a/nodejs.spec b/nodejs.spec
index 8cd0db6..88af4b3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,12 +18,12 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 12
-%global nodejs_minor 16
-%global nodejs_patch 1
+%global nodejs_major 13
+%global nodejs_minor 9
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
-%global nodejs_soversion 72
+%global nodejs_soversion 79
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release %{baserelease}
@@ -34,9 +34,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 7
-%global v8_minor 8
-%global v8_build 279
-%global v8_patch 23
+%global v8_minor 9
+%global v8_build 317
+%global v8_patch 25
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -49,12 +49,6 @@
%global c_ares_patch 0
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
-# http-parser - from deps/http_parser/http_parser.h
-%global http_parser_major 2
-%global http_parser_minor 9
-%global http_parser_patch 3
-%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
-
# llhttp - from deps/llhttp/include/llhttp.h
%global llhttp_major 2
%global llhttp_minor 0
@@ -64,7 +58,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
%global libuv_minor 34
-%global libuv_patch 0
+%global libuv_patch 2
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -74,8 +68,8 @@
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
-%global icu_major 64
-%global icu_minor 2
+%global icu_major 65
+%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
%global icudatadir %{nodejs_datadir}/icudata
@@ -98,7 +92,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 13
-%global npm_patch 4
+%global npm_patch 7
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -148,7 +142,6 @@ BuildRequires: chrpath
BuildRequires: libatomic
%if %{with bootstrap}
-Provides: bundled(http-parser) = %{http_parser_version}
Provides: bundled(libuv) = %{libuv_version}
Provides: bundled(nghttp2) = %{nghttp2_version}
%else
@@ -158,15 +151,12 @@ BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:%{libuv_version}
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
Requires: libnghttp2 >= %{nghttp2_version}
+%endif
-# Temporarily bundle http-parser and llhttp because the latter
-# isn't packaged yet and they are controlled by the same
-# configure flag.
-Provides: bundled(http-parser) = %{http_parser_version}
+# Temporarily bundle llhttp because the upstream doesn't
+# provide releases for it.
Provides: bundled(llhttp) = %{llhttp_version}
-%endif
-
BuildRequires: openssl-devel >= %{openssl_minimum}
Requires: openssl >= %{openssl_minimum}
@@ -672,6 +662,9 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Tue Feb 25 2020 Stephen Gallagher sgallagh@redhat.com - 1:13.9.0--1
+- Release Node.js 13.9.0
+
* Tue Feb 25 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.1-1
- Update to 12.16.1
- Fixes six regressions introduced in 12.16.0
diff --git a/sources b/sources
index a85e8b0..9ac6f21 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v12.16.1-stripped.tar.gz) = 489d337bd522ab48ad9cef99aa2ce3203a05fb05fda0454b805905f699d14da643b51f6b20786995f2aeeb9f468434b60d734e75cec3451e7648da623914c699
-SHA512 (icu4c-64_2-src.tgz) = 5ecb4c230ba45918747a1cf9aef86f555aa07d5b29b1d07ab674e8013f46dfb907a0e9d6945db41155f9dc3012fd94e1152ffc19f61a68b6dfcbabdcb8ae9d78
+SHA512 (node-v13.9.0-stripped.tar.gz) = 6d633b8e42954eba13bbf3b3deb47c7514af04a9f650d9d757f4a3ede85d591a21a4e1330d4b9389e59164bd34883c18ba62b50f4479de0daf6080f166f02138
+SHA512 (icu4c-65_1-src.tgz) = 8f1ef33e1f4abc9a8ee870331c59f01b473d6da1251a19ce403f822f3e3871096f0791855d39c8f20c612fc49cda2c62c06864aa32ddab2dbd186d2b21ce9139
commit 21fad4d53b909f1c01a07c5796418ac1cf4ad6c2
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Feb 25 10:04:05 2020 -0500
Update to 12.16.1
Fixes six regressions introduced in 12.16.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index ab85999..8cd0db6 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
%global nodejs_epoch 1
%global nodejs_major 12
%global nodejs_minor 16
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -672,6 +672,10 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Tue Feb 25 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.1-1
+- Update to 12.16.1
+- Fixes six regressions introduced in 12.16.0
+
* Fri Feb 14 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.0-1
- Update to 12.16.0
- Drop upstreamed patch
diff --git a/sources b/sources
index b8cf1f0..a85e8b0 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v12.16.0-stripped.tar.gz) = 38080f00b1081185f353ea031ef9ab0572e83e4cf603586f7f0d451e471cb70761f30faaf43bf73b1c15a2c3465d5d1b77ca49c2d04f2377290d6a5dc1f3678f
+SHA512 (node-v12.16.1-stripped.tar.gz) = 489d337bd522ab48ad9cef99aa2ce3203a05fb05fda0454b805905f699d14da643b51f6b20786995f2aeeb9f468434b60d734e75cec3451e7648da623914c699
SHA512 (icu4c-64_2-src.tgz) = 5ecb4c230ba45918747a1cf9aef86f555aa07d5b29b1d07ab674e8013f46dfb907a0e9d6945db41155f9dc3012fd94e1152ffc19f61a68b6dfcbabdcb8ae9d78
commit 8541a778358397635207c827e23e96f67c43d9e9
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Feb 14 09:37:37 2020 -0500
Fix wrong version
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 254b031..ab85999 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 15
+%global nodejs_minor 16
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
commit 0c25ed4a836f568ab5bf759d074285aaef08e9a1
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Feb 14 09:35:51 2020 -0500
Update to 12.16.0
Drop upstreamed patch
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 59fe1ae..ce6ff7a 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,14 +1,14 @@
-From 5f69e0ff5cd84daec8d6ed49868d0c2a01337107 Mon Sep 17 00:00:00 2001
+From 2213cf773b7cf503807397aac79f10d6690a6640 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
-Subject: [PATCH 1/3] Disable running gyp on shared deps
+Subject: [PATCH 1/2] Disable running gyp on shared deps
---
Makefile | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
-index 56f53582d1f494a05571e3228c4585647e1a30a7..2fb80e742637fdbd039714bda9a9022be7ea259b 100644
+index 05eaa73abbe0c6c651bdf446e3678b92700d57c3..829c4c7c9f8a2132def8767a243cb7160a85d2b2 100644
--- a/Makefile
+++ b/Makefile
@@ -141,9 +141,9 @@ test-code-cache: with-code-cache
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index 78682c9..c0613bf 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From 4c96b8cdb6690dc0ce329aaddf1a41e58afbd5b4 Mon Sep 17 00:00:00 2001
+From 11512edeb046b64be4daca76f061a3a918251ee0 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 2/3] Install both binaries and use libdir.
+Subject: [PATCH 2/2] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -13,10 +13,10 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index 20cce214dbb113aeef8f1044d7af88d842a11fd7..e2d78a2a51ef81621618cb20fa76f4a1421bf9e0 100755
+index 6537a62d3954d83927c698db3fb80c9fc05faba7..b9a894bec9e5fd954004bcb423822ca984066dc5 100755
--- a/configure.py
+++ b/configure.py
-@@ -559,6 +559,12 @@ parser.add_option('--shared',
+@@ -571,6 +571,12 @@ parser.add_option('--shared',
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
@@ -29,14 +29,14 @@ index 20cce214dbb113aeef8f1044d7af88d842a11fd7..e2d78a2a51ef81621618cb20fa76f4a1
parser.add_option('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
-@@ -1103,6 +1109,7 @@ def configure_node(o):
- if o['variables']['want_separate_host_toolset'] == 0:
- o['variables']['node_code_cache'] = 'yes' # For testing
+@@ -1105,6 +1111,7 @@ def configure_node(o):
+ o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
+
o['variables']['node_shared'] = b(options.shared)
+ o['variables']['libdir'] = options.libdir
node_module_version = getmoduleversion.get_version()
- if sys.platform == 'darwin':
+ if options.dest_os == 'android':
diff --git a/tools/install.py b/tools/install.py
index 655802980a6ea94d1d4ca1dc63c8c8e905fbb83a..fe4723bf15012c8aacacb0393dc8294c049b0503 100755
--- a/tools/install.py
diff --git a/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch b/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch
deleted file mode 100644
index b3f055a..0000000
--- a/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-From c811931a72908b90608fbdc6669da482ac5e7fd9 Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher sgallagh@redhat.com
-Date: Fri, 6 Dec 2019 16:40:25 -0500
-Subject: [PATCH 3/3] build: auto-load ICU data from
- --with-icu-default-data-dir
-
-When compiled with `--with-intl=small` and
-`--with-icu-default-data-dir=PATH`, Node.js will use PATH as a
-fallback location for the ICU data.
-
-We will first perform an access check using fopen(PATH, 'r') to
-ensure that the file is readable. If it is, we'll set the
-icu_data_directory and proceed. There's a slight overhead for the
-fopen() check, but it should be barely measurable.
-
-This will be useful for Linux distribution packagers who want to
-be able to ship a minimal node binary in a container image but
-also be able to add on the full i18n support where needed. With
-this patch, it becomes possible to ship the interpreter as
-/usr/bin/node in one package for the distribution and to ship the
-data files in another package (without a strict dependency
-between the two). This means that users of the distribution will
-not need to explicitly direct Node.js to locate the ICU data. It
-also means that in environments where full internationalization is
-not required, they do not need to carry the extra content (with
-the associated storage costs).
-
-Refs: https://github.com/nodejs/node/issues/3460
-
-Signed-off-by: Stephen Gallagher sgallagh@redhat.com
-
-PR-URL: https://github.com/nodejs/node/pull/30825
-Reviewed-By: Steven R Loomis srloomis@us.ibm.com
-Reviewed-By: Ben Noordhuis info@bnoordhuis.nl
-Reviewed-By: Richard Lau riclau@uk.ibm.com
-Reviewed-By: Rich Trott rtrott@gmail.com
----
- configure.py | 9 +++++++++
- node.gypi | 7 +++++++
- src/node.cc | 20 ++++++++++++++++++++
- 3 files changed, 36 insertions(+)
-
-diff --git a/configure.py b/configure.py
-index e2d78a2a51ef81621618cb20fa76f4a1421bf9e0..cbf0d3ad567ea7beea86f56844d950e50c98c35c 100755
---- a/configure.py
-+++ b/configure.py
-@@ -444,6 +444,14 @@ intl_optgroup.add_option('--with-icu-source',
- 'the icu4c source archive. '
- 'v%d.x or later recommended.' % icu_versions['minimum_icu'])
-
-+intl_optgroup.add_option('--with-icu-default-data-dir',
-+ action='store',
-+ dest='with_icu_default_data_dir',
-+ help='Path to the icuXXdt{lb}.dat file. If unspecified, ICU data will '
-+ 'only be read if the NODE_ICU_DATA environment variable or the '
-+ '--icu-data-dir runtime argument is used. This option has effect '
-+ 'only when Node.js is built with --with-intl=small-icu.')
-+
- parser.add_option('--with-ltcg',
- action='store_true',
- dest='with_ltcg',
-@@ -1380,6 +1388,7 @@ def configure_intl(o):
- locs.add('root') # must have root
- o['variables']['icu_locales'] = ','.join(str(loc) for loc in locs)
- # We will check a bit later if we can use the canned deps/icu-small
-+ o['variables']['icu_default_data'] = options.with_icu_default_data_dir or ''
- elif with_intl == 'full-icu':
- # full ICU
- o['variables']['v8_enable_i18n_support'] = 1
-diff --git a/node.gypi b/node.gypi
-index 05d80e846cffd31a0a61943e5ab391ad79cddab0..144544214316a3a5ce256e8772d57d14817c5185 100644
---- a/node.gypi
-+++ b/node.gypi
-@@ -103,6 +103,13 @@
- 'conditions': [
- [ 'icu_small=="true"', {
- 'defines': [ 'NODE_HAVE_SMALL_ICU=1' ],
-+ 'conditions': [
-+ [ 'icu_default_data!=""', {
-+ 'defines': [
-+ 'NODE_ICU_DEFAULT_DATA_DIR="<(icu_default_data)"',
-+ ],
-+ }],
-+ ],
- }]],
- }],
- [ 'node_no_browser_globals=="true"', {
-diff --git a/src/node.cc b/src/node.cc
-index 9d182d2aeb48c8b600bace036df868fb695dfa7c..bfad9a633ceab2493b8fa79badfe8c6c9110e001 100644
---- a/src/node.cc
-+++ b/src/node.cc
-@@ -79,6 +79,7 @@
-
- #if defined(NODE_HAVE_I18N_SUPPORT)
- #include <unicode/uvernum.h>
-+#include <unicode/utypes.h>
- #endif
-
-
-@@ -823,6 +824,25 @@ int InitializeNodeWithArgs(std::vectorstd::string* argv,
- if (per_process::cli_options->icu_data_dir.empty())
- credentials::SafeGetenv("NODE_ICU_DATA",
- &per_process::cli_options->icu_data_dir);
-+
-+#ifdef NODE_ICU_DEFAULT_DATA_DIR
-+ // If neither the CLI option nor the environment variable was specified,
-+ // fall back to the configured default
-+ if (per_process::cli_options->icu_data_dir.empty()) {
-+ // Check whether the NODE_ICU_DEFAULT_DATA_DIR contains the right data
-+ // file and can be read.
-+ static const char full_path[] =
-+ NODE_ICU_DEFAULT_DATA_DIR "/" U_ICUDATA_NAME ".dat";
-+
-+ FILE* f = fopen(full_path, "rb");
-+
-+ if (f != nullptr) {
-+ fclose(f);
-+ per_process::cli_options->icu_data_dir = NODE_ICU_DEFAULT_DATA_DIR;
-+ }
-+ }
-+#endif // NODE_ICU_DEFAULT_DATA_DIR
-+
- // Initialize ICU.
- // If icu_data_dir is empty here, it will load the 'minimal' data.
- if (!i18n::InitializeICUDirectory(per_process::cli_options->icu_data_dir)) {
---
-2.24.1
-
diff --git a/nodejs.spec b/nodejs.spec
index 04ff821..254b031 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -34,9 +34,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 7
-%global v8_minor 7
-%global v8_build 299
-%global v8_patch 13
+%global v8_minor 8
+%global v8_build 279
+%global v8_patch 23
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -63,8 +63,8 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 33
-%global libuv_patch 1
+%global libuv_minor 34
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -139,10 +139,6 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch2: 0002-Install-both-binaries-and-use-libdir.patch
-# Upstream patch to enable auto-detection of full ICU data
-# https://github.com/nodejs/node/pull/30825
-Patch3: 0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch
-
BuildRequires: python2-devel
BuildRequires: python3-devel
BuildRequires: zlib-devel
@@ -676,6 +672,10 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Fri Feb 14 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.16.0-1
+- Update to 12.16.0
+- Drop upstreamed patch
+
* Thu Feb 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.15.0-1
- Update to 12.15.0
diff --git a/package.cfg b/package.cfg
index 2255bcd..7ba3a28 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = master f31
+targets = master f32 f31
diff --git a/sources b/sources
index 1cc3629..b8cf1f0 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v12.15.0-stripped.tar.gz) = 89616891c666224b42fff53c4893e5fd4e9a4a5635f61954cb7ad9a0731ba0637b7f4a778508091324321250b33d5d70f77022436afdbafbf79cc58942e89f51
+SHA512 (node-v12.16.0-stripped.tar.gz) = 38080f00b1081185f353ea031ef9ab0572e83e4cf603586f7f0d451e471cb70761f30faaf43bf73b1c15a2c3465d5d1b77ca49c2d04f2377290d6a5dc1f3678f
SHA512 (icu4c-64_2-src.tgz) = 5ecb4c230ba45918747a1cf9aef86f555aa07d5b29b1d07ab674e8013f46dfb907a0e9d6945db41155f9dc3012fd94e1152ffc19f61a68b6dfcbabdcb8ae9d78
commit 0ef27aeec3eb7a6eb2933c6ffee7b508cbb9af55
Merge: 8687149 dc276a2
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Feb 6 10:54:07 2020 -0500
Merge branch '12'
diff --cc nodejs.spec
index b809377,95d44fc..04ff821
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -676,9 -676,9 +676,12 @@@ en
%{_pkgdocdir}/npm/docs
%changelog
+ * Thu Feb 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.15.0-1
+ - Update to 12.15.0
+
+* Wed Jan 29 2020 Fedora Release Engineering releng@fedoraproject.org - 1:12.14.1-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
* Mon Jan 13 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-3
- Fix issue with header symlinks in v8-devel
commit dc276a246e8567bc835f888eab340b274968259a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Feb 6 10:51:27 2020 -0500
Update to 12.15.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 668ff55..59fe1ae 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From a560ff12ff44d9732ce325ca4bcde6e536fe3ed0 Mon Sep 17 00:00:00 2001
+From 5f69e0ff5cd84daec8d6ed49868d0c2a01337107 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
-index 0947300f24028d00bcfb79b38d96bded136228e3..5d4f88a705053fbdd6b56ec85e9997670c6a69c5 100644
+index 56f53582d1f494a05571e3228c4585647e1a30a7..2fb80e742637fdbd039714bda9a9022be7ea259b 100644
--- a/Makefile
+++ b/Makefile
@@ -141,9 +141,9 @@ test-code-cache: with-code-cache
@@ -25,5 +25,5 @@ index 0947300f24028d00bcfb79b38d96bded136228e3..5d4f88a705053fbdd6b56ec85e999767
# node_version.h is listed because the N-API version is taken from there
--
-2.23.0
+2.24.1
diff --git a/0002-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
index cabec6e..78682c9 100644
--- a/0002-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From cf581096dd350cf7267e5a12ff26159120274c5c Mon Sep 17 00:00:00 2001
+From 4c96b8cdb6690dc0ce329aaddf1a41e58afbd5b4 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 2/3] Install both binaries and use libdir.
@@ -82,5 +82,5 @@ index 655802980a6ea94d1d4ca1dc63c8c8e905fbb83a..fe4723bf15012c8aacacb0393dc8294c
if 'true' == variables.get('node_use_dtrace'):
action(['out/Release/node.d'], 'lib/dtrace/node.d')
--
-2.23.0
+2.24.1
diff --git a/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch b/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch
index ad955e3..b3f055a 100644
--- a/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch
+++ b/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch
@@ -1,4 +1,4 @@
-From 30e8730b88afc2c3ac46503a8cc668b367c70e3e Mon Sep 17 00:00:00 2001
+From c811931a72908b90608fbdc6669da482ac5e7fd9 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Fri, 6 Dec 2019 16:40:25 -0500
Subject: [PATCH 3/3] build: auto-load ICU data from
@@ -86,7 +86,7 @@ index 05d80e846cffd31a0a61943e5ab391ad79cddab0..144544214316a3a5ce256e8772d57d14
}],
[ 'node_no_browser_globals=="true"', {
diff --git a/src/node.cc b/src/node.cc
-index ae53d0c31c3568d04387da89ab6e9d049e41c919..cbd1c632008f89f2c4aedccb00db19f686693c75 100644
+index 9d182d2aeb48c8b600bace036df868fb695dfa7c..bfad9a633ceab2493b8fa79badfe8c6c9110e001 100644
--- a/src/node.cc
+++ b/src/node.cc
@@ -79,6 +79,7 @@
@@ -97,7 +97,7 @@ index ae53d0c31c3568d04387da89ab6e9d049e41c919..cbd1c632008f89f2c4aedccb00db19f6
#endif
-@@ -848,6 +849,25 @@ int InitializeNodeWithArgs(std::vectorstd::string* argv,
+@@ -823,6 +824,25 @@ int InitializeNodeWithArgs(std::vectorstd::string* argv,
if (per_process::cli_options->icu_data_dir.empty())
credentials::SafeGetenv("NODE_ICU_DATA",
&per_process::cli_options->icu_data_dir);
@@ -124,5 +124,5 @@ index ae53d0c31c3568d04387da89ab6e9d049e41c919..cbd1c632008f89f2c4aedccb00db19f6
// If icu_data_dir is empty here, it will load the 'minimal' data.
if (!i18n::InitializeICUDirectory(per_process::cli_options->icu_data_dir)) {
--
-2.23.0
+2.24.1
diff --git a/nodejs.spec b/nodejs.spec
index a8c97a3..95d44fc 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 14
-%global nodejs_patch 1
+%global nodejs_minor 15
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -51,13 +51,13 @@
# http-parser - from deps/http_parser/http_parser.h
%global http_parser_major 2
-%global http_parser_minor 8
-%global http_parser_patch 0
+%global http_parser_minor 9
+%global http_parser_patch 3
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
# llhttp - from deps/llhttp/include/llhttp.h
-%global llhttp_major 1
-%global llhttp_minor 1
+%global llhttp_major 2
+%global llhttp_minor 0
%global llhttp_patch 4
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
@@ -69,8 +69,8 @@
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 39
-%global nghttp2_patch 2
+%global nghttp2_minor 40
+%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
@@ -676,6 +676,9 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Thu Feb 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.15.0-1
+- Update to 12.15.0
+
* Mon Jan 13 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-3
- Fix issue with header symlinks in v8-devel
diff --git a/sources b/sources
index 80ac055..1cc3629 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v12.14.1-stripped.tar.gz) = c42e5e29c22a836e6cc4b3fedab102d3bec732339f3e924c5e7578ac52a1ade1b5e6382f93bccacdfeb5d74d456a2e3cec735c664c980a5351263a3a14f6cf9d
+SHA512 (node-v12.15.0-stripped.tar.gz) = 89616891c666224b42fff53c4893e5fd4e9a4a5635f61954cb7ad9a0731ba0637b7f4a778508091324321250b33d5d70f77022436afdbafbf79cc58942e89f51
SHA512 (icu4c-64_2-src.tgz) = 5ecb4c230ba45918747a1cf9aef86f555aa07d5b29b1d07ab674e8013f46dfb907a0e9d6945db41155f9dc3012fd94e1152ffc19f61a68b6dfcbabdcb8ae9d78
commit 8687149cded42d7368eb009c77ee2dda3caf4cdf
Author: Fedora Release Engineering releng@fedoraproject.org
Date: Wed Jan 29 15:05:50 2020 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index a8c97a3..b809377 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 4
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -676,6 +676,9 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Wed Jan 29 2020 Fedora Release Engineering releng@fedoraproject.org - 1:12.14.1-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
* Mon Jan 13 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-3
- Fix issue with header symlinks in v8-devel
commit 0d8fd851cb1c4c992880c8bcbea873e9bc7ad852
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 13 08:07:35 2020 -0500
Fix issue with header symlinks in v8-devel
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 99dc359..a8c97a3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -463,7 +463,7 @@ ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/libnode.so
# Install v8 compatibility symlinks
for header in %{buildroot}%{_includedir}/node/libplatform %{buildroot}%{_includedir}/node/v8*.h; do
header=$(basename ${header})
- ln -s ${header} %{buildroot}%{_includedir}/${header}
+ ln -s %{_includedir}/node/${header} %{buildroot}%{_includedir}/${header}
done
for soname in libv8 libv8_libbase libv8_libplatform; do
ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so
@@ -676,6 +676,9 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Mon Jan 13 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-3
+- Fix issue with header symlinks in v8-devel
+
* Tue Jan 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-2
- Drop unneeded dependency on http-parser-devel
commit 390abc303d016e8f429bfd0599d4c827730df003
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jan 7 22:26:51 2020 -0500
Drop unneeded dependency on http-parser-devel
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 3bf51a8..99dc359 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -158,8 +158,6 @@ Provides: bundled(nghttp2) = %{nghttp2_version}
%else
BuildRequires: nodejs-packaging
BuildRequires: systemtap-sdt-devel
-BuildRequires: http-parser-devel >= 2.9.0
-Requires: http-parser >= 2.9.0
BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:%{libuv_version}
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
@@ -256,7 +254,6 @@ Requires: nodejs-packaging
%if %{with bootstrap}
# deps are bundled
%else
-Requires: http-parser-devel%{?_isa}
Requires: libuv-devel%{?_isa}
%endif
@@ -679,6 +676,9 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Tue Jan 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-2
+- Drop unneeded dependency on http-parser-devel
+
* Tue Jan 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-1
- Update to 12.14.1
- https://github.com/nodejs/node/blob/v12.14.1/doc/changelogs/CHANGELOG_V12.md
commit 39cd045bf59bf48d9544ee697a5b587ad5a84692
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jan 7 20:01:41 2020 -0500
Update to 12.14.1
https://github.com/nodejs/node/blob/v12.14.1/doc/changelogs/CHANGELOG_V12.md
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 2357dbd..3bf51a8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -20,7 +20,7 @@
%global nodejs_epoch 1
%global nodejs_major 12
%global nodejs_minor 14
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -679,6 +679,10 @@ end
%{_pkgdocdir}/npm/docs
%changelog
+* Tue Jan 07 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.1-1
+- Update to 12.14.1
+- https://github.com/nodejs/node/blob/v12.14.1/doc/changelogs/CHANGELOG_V12.md
+
* Mon Jan 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.0-2
- Update to 12.14.0
- https://github.com/nodejs/node/blob/v12.14.0/doc/changelogs/CHANGELOG_V12.md
diff --git a/sources b/sources
index d5e5b8f..80ac055 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v12.14.0-stripped.tar.gz) = 8d5d7a96a466cdf86cebc4ca7608067e16804f32235bf862247073d543613393483fcd85d04c5511fd26958d21834372d031aab0570d9d72581fb0c36f17f849
+SHA512 (node-v12.14.1-stripped.tar.gz) = c42e5e29c22a836e6cc4b3fedab102d3bec732339f3e924c5e7578ac52a1ade1b5e6382f93bccacdfeb5d74d456a2e3cec735c664c980a5351263a3a14f6cf9d
SHA512 (icu4c-64_2-src.tgz) = 5ecb4c230ba45918747a1cf9aef86f555aa07d5b29b1d07ab674e8013f46dfb907a0e9d6945db41155f9dc3012fd94e1152ffc19f61a68b6dfcbabdcb8ae9d78
commit f0e2a1ed4615917f2e28f65166a6ec748d8bd1ec
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jan 6 14:34:02 2020 -0500
Update to 12.14.0
- https://github.com/nodejs/node/blob/v12.14.0/doc/changelogs/CHANGELOG_V12.md
- Add new subpackage nodejs-full-i18n to enable optional non-English locale
support
- New NPM manpage packaging
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index c81b123..668ff55 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 80542232e5b9c3ede63b7a70c1077497e130da81 Mon Sep 17 00:00:00 2001
+From a560ff12ff44d9732ce325ca4bcde6e536fe3ed0 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
-index 0a5177d1c3e7d6769535d79e063f987157a30f4d..1f3dd0abe4031defb5b7cc817b12886bdea002c7 100644
+index 0947300f24028d00bcfb79b38d96bded136228e3..5d4f88a705053fbdd6b56ec85e9997670c6a69c5 100644
--- a/Makefile
+++ b/Makefile
@@ -141,9 +141,9 @@ test-code-cache: with-code-cache
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0002-Install-both-binaries-and-use-libdir.patch
similarity index 90%
rename from 0003-Install-both-binaries-and-use-libdir.patch
rename to 0002-Install-both-binaries-and-use-libdir.patch
index ea3d4b9..cabec6e 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0002-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From 5bfeffdf4b5de1c60a2ff0d1ddf65db2bb9a1533 Mon Sep 17 00:00:00 2001
+From cf581096dd350cf7267e5a12ff26159120274c5c Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 3/3] Install both binaries and use libdir.
+Subject: [PATCH 2/3] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -13,10 +13,10 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index 473bbfeb294b34e0cb4ead9db607adfc3781be29..a1f98be9a68c360f3bd17c8f5e0a1478adce9a55 100755
+index 20cce214dbb113aeef8f1044d7af88d842a11fd7..e2d78a2a51ef81621618cb20fa76f4a1421bf9e0 100755
--- a/configure.py
+++ b/configure.py
-@@ -556,6 +556,12 @@ parser.add_option('--shared',
+@@ -559,6 +559,12 @@ parser.add_option('--shared',
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
@@ -29,7 +29,7 @@ index 473bbfeb294b34e0cb4ead9db607adfc3781be29..a1f98be9a68c360f3bd17c8f5e0a1478
parser.add_option('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
-@@ -1098,6 +1104,7 @@ def configure_node(o):
+@@ -1103,6 +1109,7 @@ def configure_node(o):
if o['variables']['want_separate_host_toolset'] == 0:
o['variables']['node_code_cache'] = 'yes' # For testing
o['variables']['node_shared'] = b(options.shared)
diff --git a/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch b/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch
new file mode 100644
index 0000000..ad955e3
--- /dev/null
+++ b/0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch
@@ -0,0 +1,128 @@
+From 30e8730b88afc2c3ac46503a8cc668b367c70e3e Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher sgallagh@redhat.com
+Date: Fri, 6 Dec 2019 16:40:25 -0500
+Subject: [PATCH 3/3] build: auto-load ICU data from
+ --with-icu-default-data-dir
+
+When compiled with `--with-intl=small` and
+`--with-icu-default-data-dir=PATH`, Node.js will use PATH as a
+fallback location for the ICU data.
+
+We will first perform an access check using fopen(PATH, 'r') to
+ensure that the file is readable. If it is, we'll set the
+icu_data_directory and proceed. There's a slight overhead for the
+fopen() check, but it should be barely measurable.
+
+This will be useful for Linux distribution packagers who want to
+be able to ship a minimal node binary in a container image but
+also be able to add on the full i18n support where needed. With
+this patch, it becomes possible to ship the interpreter as
+/usr/bin/node in one package for the distribution and to ship the
+data files in another package (without a strict dependency
+between the two). This means that users of the distribution will
+not need to explicitly direct Node.js to locate the ICU data. It
+also means that in environments where full internationalization is
+not required, they do not need to carry the extra content (with
+the associated storage costs).
+
+Refs: https://github.com/nodejs/node/issues/3460
+
+Signed-off-by: Stephen Gallagher sgallagh@redhat.com
+
+PR-URL: https://github.com/nodejs/node/pull/30825
+Reviewed-By: Steven R Loomis srloomis@us.ibm.com
+Reviewed-By: Ben Noordhuis info@bnoordhuis.nl
+Reviewed-By: Richard Lau riclau@uk.ibm.com
+Reviewed-By: Rich Trott rtrott@gmail.com
+---
+ configure.py | 9 +++++++++
+ node.gypi | 7 +++++++
+ src/node.cc | 20 ++++++++++++++++++++
+ 3 files changed, 36 insertions(+)
+
+diff --git a/configure.py b/configure.py
+index e2d78a2a51ef81621618cb20fa76f4a1421bf9e0..cbf0d3ad567ea7beea86f56844d950e50c98c35c 100755
+--- a/configure.py
++++ b/configure.py
+@@ -444,6 +444,14 @@ intl_optgroup.add_option('--with-icu-source',
+ 'the icu4c source archive. '
+ 'v%d.x or later recommended.' % icu_versions['minimum_icu'])
+
++intl_optgroup.add_option('--with-icu-default-data-dir',
++ action='store',
++ dest='with_icu_default_data_dir',
++ help='Path to the icuXXdt{lb}.dat file. If unspecified, ICU data will '
++ 'only be read if the NODE_ICU_DATA environment variable or the '
++ '--icu-data-dir runtime argument is used. This option has effect '
++ 'only when Node.js is built with --with-intl=small-icu.')
++
+ parser.add_option('--with-ltcg',
+ action='store_true',
+ dest='with_ltcg',
+@@ -1380,6 +1388,7 @@ def configure_intl(o):
+ locs.add('root') # must have root
+ o['variables']['icu_locales'] = ','.join(str(loc) for loc in locs)
+ # We will check a bit later if we can use the canned deps/icu-small
++ o['variables']['icu_default_data'] = options.with_icu_default_data_dir or ''
+ elif with_intl == 'full-icu':
+ # full ICU
+ o['variables']['v8_enable_i18n_support'] = 1
+diff --git a/node.gypi b/node.gypi
+index 05d80e846cffd31a0a61943e5ab391ad79cddab0..144544214316a3a5ce256e8772d57d14817c5185 100644
+--- a/node.gypi
++++ b/node.gypi
+@@ -103,6 +103,13 @@
+ 'conditions': [
+ [ 'icu_small=="true"', {
+ 'defines': [ 'NODE_HAVE_SMALL_ICU=1' ],
++ 'conditions': [
++ [ 'icu_default_data!=""', {
++ 'defines': [
++ 'NODE_ICU_DEFAULT_DATA_DIR="<(icu_default_data)"',
++ ],
++ }],
++ ],
+ }]],
+ }],
+ [ 'node_no_browser_globals=="true"', {
+diff --git a/src/node.cc b/src/node.cc
+index ae53d0c31c3568d04387da89ab6e9d049e41c919..cbd1c632008f89f2c4aedccb00db19f686693c75 100644
+--- a/src/node.cc
++++ b/src/node.cc
+@@ -79,6 +79,7 @@
+
+ #if defined(NODE_HAVE_I18N_SUPPORT)
+ #include <unicode/uvernum.h>
++#include <unicode/utypes.h>
+ #endif
+
+
+@@ -848,6 +849,25 @@ int InitializeNodeWithArgs(std::vectorstd::string* argv,
+ if (per_process::cli_options->icu_data_dir.empty())
+ credentials::SafeGetenv("NODE_ICU_DATA",
+ &per_process::cli_options->icu_data_dir);
++
++#ifdef NODE_ICU_DEFAULT_DATA_DIR
++ // If neither the CLI option nor the environment variable was specified,
++ // fall back to the configured default
++ if (per_process::cli_options->icu_data_dir.empty()) {
++ // Check whether the NODE_ICU_DEFAULT_DATA_DIR contains the right data
++ // file and can be read.
++ static const char full_path[] =
++ NODE_ICU_DEFAULT_DATA_DIR "/" U_ICUDATA_NAME ".dat";
++
++ FILE* f = fopen(full_path, "rb");
++
++ if (f != nullptr) {
++ fclose(f);
++ per_process::cli_options->icu_data_dir = NODE_ICU_DEFAULT_DATA_DIR;
++ }
++ }
++#endif // NODE_ICU_DEFAULT_DATA_DIR
++
+ // Initialize ICU.
+ // If icu_data_dir is empty here, it will load the 'minimal' data.
+ if (!i18n::InitializeICUDirectory(per_process::cli_options->icu_data_dir)) {
+--
+2.23.0
+
diff --git a/nodejs.spec b/nodejs.spec
index 50c9f72..2357dbd 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,14 +19,16 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 13
-%global nodejs_patch 1
+%global nodejs_minor 14
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release %{baserelease}
+%global nodejs_datadir %{_datarootdir}/nodejs
+
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
# Epoch is set to ensure clean upgrades from the old v8 package
@@ -76,15 +78,9 @@
%global icu_minor 2
%global icu_version %{icu_major}.%{icu_minor}
-%global sys_icu_version %(/usr/bin/icu-config --version)
-
-%if "%{sys_icu_version}" >= "%{icu_version}"
-%global bundled_icu 0
-%global icu_flag system-icu
-%else
-%global bundled_icu 1
-%global icu_flag full-icu
-%endif
+%global icudatadir %{nodejs_datadir}/icudata
+%{!?little_endian: %global little_endian %(%{__python3} -c "import sys;print (0 if sys.byteorder=='big' else 1)")}
+# " this line just fixes syntax highlighting for vim that is confused by the above and continues literal
# OpenSSL minimum version
@@ -101,8 +97,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 12
-%global npm_patch 1
+%global npm_minor 13
+%global npm_patch 4
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -141,7 +137,11 @@ Source7: nodejs_native.attr
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Patch to install both node and libnode.so, using the correct libdir
-Patch3: 0003-Install-both-binaries-and-use-libdir.patch
+Patch2: 0002-Install-both-binaries-and-use-libdir.patch
+
+# Upstream patch to enable auto-detection of full ICU data
+# https://github.com/nodejs/node/pull/30825
+Patch3: 0003-build-auto-load-ICU-data-from-with-icu-default-data-.patch
BuildRequires: python2-devel
BuildRequires: python3-devel
@@ -173,8 +173,6 @@ Provides: bundled(llhttp) = %{llhttp_version}
%endif
-BuildRequires: libicu-devel
-
BuildRequires: openssl-devel >= %{openssl_minimum}
Requires: openssl >= %{openssl_minimum}
@@ -183,6 +181,8 @@ Requires: ca-certificates
Requires: nodejs-libs%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
+# Pull in the full-icu data by default
+Recommends: nodejs-full-i18n%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
#break when binary compatibility is broken
@@ -285,6 +285,17 @@ Obsoletes: v8 < 1:6.7.17-10
%description libs
Libraries to support Node.js and provide stable v8 interfaces.
+
+%package full-i18n
+Summary: Non-English locale data for Node.js
+Requires: %{name}%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+
+
+%description full-i18n
+Optional data files to provide full-icu support for Node.js. Remove this
+package to save space if non-English locales are not needed.
+
+
%package -n v8-devel
Summary: v8 - development headers
Epoch: %{v8_epoch}
@@ -340,12 +351,6 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
rm -rf deps/zlib
-%if bundled_icu
-pushd deps/
-rm -rf icu-small
-tar xfz %SOURCE3
-popd
-%endif
# Replace any instances of unversioned python' with python2
pathfix.py -i %{__python2} -pn $(find -type f ! -name "*.js")
@@ -407,7 +412,8 @@ export LDFLAGS="%{build_ldflags}"
--shared-libuv \
--shared-nghttp2 \
--with-dtrace \
- --with-intl=%{icu_flag} \
+ --with-intl=small-icu \
+ --with-icu-default-data-dir=%{icudatadir} \
--debug-nghttp2 \
--openssl-use-def-ca-store
%endif
@@ -415,6 +421,36 @@ export LDFLAGS="%{build_ldflags}"
make BUILDTYPE=Release %{?_smp_mflags}
+# Extract the ICU data and convert it to the appropriate endianness
+pushd deps/
+tar xfz %SOURCE3
+
+pushd icu/source
+
+mkdir -p converted
+%if 0%{?little_endian}
+# The little endian data file is included in the ICU sources
+install -Dpm0644 data/in/icudt%{icu_major}l.dat converted/
+
+%else
+# For the time being, we need to build ICU and use the included `icupkg` tool
+# to convert the little endian data file into a big-endian one.
+# At some point in the future, ICU releases will start including both data
+# files and we should switch to those.
+mkdir -p data/out/tmp
+
+%configure
+%make_build
+
+icu_root=$(pwd)
+LD_LIBRARY_PATH=./lib ./bin/icupkg -tb data/in/icudt%{icu_major}l.dat \
+ converted/icudt%{icu_major}b.dat
+%endif
+
+popd # icu/source
+popd # deps
+
+
%install
rm -rf %{buildroot}
@@ -425,16 +461,16 @@ chmod 0755 %{buildroot}/%{_bindir}/node
chrpath --delete %{buildroot}%{_bindir}/node
# Install library symlink
-ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/libnode.so
+ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/libnode.so
# Install v8 compatibility symlinks
for header in %{buildroot}%{_includedir}/node/libplatform %{buildroot}%{_includedir}/node/v8*.h; do
header=$(basename ${header})
- ln -s %{_includedir}/node/${header} %{buildroot}%{_includedir}/${header}
+ ln -s ${header} %{buildroot}%{_includedir}/${header}
done
for soname in libv8 libv8_libbase libv8_libplatform; do
- ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so
- ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
+ ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so
+ ln -s libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
done
# own the sitelib directory
@@ -470,13 +506,11 @@ cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
ln -sf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
-# Install Markdown and HTML documentation to %{_pkgdocdir}
-cp -pr deps/npm/html deps/npm/doc %{buildroot}%{_pkgdocdir}/npm/
-rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/html \
- %{buildroot}%{_prefix}/lib/node_modules/npm/doc
+# Install Gatsby HTML documentation to %{_pkgdocdir}
+cp -pr deps/npm/docs %{buildroot}%{_pkgdocdir}/npm/
+rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/docs
-ln -sf %{_pkgdocdir} %{buildroot}%{_prefix}/lib/node_modules/npm/html
-ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
+ln -sf %{_pkgdocdir}/npm %{buildroot}%{_prefix}/lib/node_modules/npm/docs
# Node tries to install some python files into a documentation directory
@@ -507,6 +541,9 @@ cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
mkdir -p %{buildroot}%{_prefix}/etc
ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
+# Install the full-icu data files
+install -Dpm0644 -t %{buildroot}%{icudatadir} deps/icu/source/converted/*
+
%check
# Fail the build if the versions don't match
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
@@ -520,43 +557,11 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require(
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
# Make sure i18n support is working
-NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node %{SOURCE2}
+NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node --icu-data-dir=%{buildroot}%{icudatadir} %{SOURCE2}
%pretrans -n npm -p <lua>
--- Replace the npm docs directory with a symlink
--- Drop this scriptlet when F31 is EOL
-path = "%{_prefix}/lib/node_modules/npm/doc"
-st = posix.stat(path)
-if st and st.type == "directory" then
- status = os.rename(path, path .. ".rpmmoved")
- if not status then
- suffix = 0
- while not status do
- suffix = suffix + 1
- status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
- end
- os.rename(path, path .. ".rpmmoved")
- end
-end
-
--- Replace the npm HTML docs directory with a symlink
--- Drop this scriptlet when F31 is EOL
-path = "%{_prefix}/lib/node_modules/npm/html"
-st = posix.stat(path)
-if st and st.type == "directory" then
- status = os.rename(path, path .. ".rpmmoved")
- if not status then
- suffix = 0
- while not status do
- suffix = suffix + 1
- status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
- end
- os.rename(path, path .. ".rpmmoved")
- end
-end
-
--- Replace the npm HTML man directory with a symlink
+-- Replace the npm man directory with a symlink
-- Drop this scriptlet when F31 is EOL
path = "%{_prefix}/lib/node_modules/npm/man"
st = posix.stat(path)
@@ -590,6 +595,7 @@ if st and st.type == "directory" then
end
end
+
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
@@ -607,7 +613,6 @@ end
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
-%license LICENSE
%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
%doc %{_mandir}/man1/node.1*
@@ -619,11 +624,17 @@ end
%{_pkgdocdir}/gdbinit
+%files full-i18n
+%dir %{icudatadir}
+%{icudatadir}/icudt%{icu_major}*.dat
+
%files libs
+%license LICENSE
%{_libdir}/libnode.so.%{nodejs_soversion}
%{_libdir}/libv8.so.%{v8_major}
%{_libdir}/libv8_libbase.so.%{v8_major}
%{_libdir}/libv8_libplatform.so.%{v8_major}
+%dir %{nodejs_datadir}/
%files -n v8-devel
@@ -642,21 +653,39 @@ end
%config(noreplace) %{_sysconfdir}/npmrc
%{_prefix}/etc/npmrc
%ghost %{_sysconfdir}/npmignore
-%doc %{_mandir}/man*/npm*
-%doc %{_mandir}/man*/npx*
-%doc %{_mandir}/man5/package.json.5*
-%doc %{_mandir}/man5/package-lock.json.5*
-%doc %{_mandir}/man7/removing-npm.7*
+%doc %{_mandir}/man1/npm*.1*
+%doc %{_mandir}/man1/npx.1*
+%doc %{_mandir}/man5/folders.5*
+%doc %{_mandir}/man5/install.5*
+%doc %{_mandir}/man5/npmrc.5*
+%doc %{_mandir}/man5/package-json.5*
+%doc %{_mandir}/man5/package-lock-json.5*
+%doc %{_mandir}/man5/package-locks.5*
+%doc %{_mandir}/man5/shrinkwrap-json.5*
+%doc %{_mandir}/man7/config.7*
+%doc %{_mandir}/man7/developers.7*
+%doc %{_mandir}/man7/disputes.7*
+%doc %{_mandir}/man7/orgs.7*
+%doc %{_mandir}/man7/registry.7*
+%doc %{_mandir}/man7/removal.7*
+%doc %{_mandir}/man7/scope.7*
+%doc %{_mandir}/man7/scripts.7*
%doc %{_mandir}/man7/semver.7*
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
-%{_pkgdocdir}/npm/html
-%{_pkgdocdir}/npm/doc
+%{_pkgdocdir}/npm/docs
%changelog
+* Mon Jan 06 2020 Stephen Gallagher sgallagh@redhat.com - 1:12.14.0-2
+- Update to 12.14.0
+- https://github.com/nodejs/node/blob/v12.14.0/doc/changelogs/CHANGELOG_V12.md
+- Add new subpackage nodejs-full-i18n to enable optional non-English locale
+ support
+- Update documentation packaging for NPM
+
* Mon Dec 02 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.1-1
- Update to 12.13.1
- https://github.com/nodejs/node/blob/v12.13.1/doc/changelogs/CHANGELOG_V12.md
diff --git a/sources b/sources
index 08c40fb..d5e5b8f 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (node-v12.13.1-stripped.tar.gz) = 882c5eea44dc72d8c56be3bdde39f312d9df050b7bf1f8dc5d60127b95404dd6131eae936ef5c7b1cc41b6de184afabf946272a0ac8fee03578098a40600deb6
+SHA512 (node-v12.14.0-stripped.tar.gz) = 8d5d7a96a466cdf86cebc4ca7608067e16804f32235bf862247073d543613393483fcd85d04c5511fd26958d21834372d031aab0570d9d72581fb0c36f17f849
SHA512 (icu4c-64_2-src.tgz) = 5ecb4c230ba45918747a1cf9aef86f555aa07d5b29b1d07ab674e8013f46dfb907a0e9d6945db41155f9dc3012fd94e1152ffc19f61a68b6dfcbabdcb8ae9d78
commit 34c48b632d16551577bb294065937a81ee35de5e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Dec 3 11:57:28 2019 -0500
Drop old, no-longer-needed symlink scriptlet
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 812d9b8..50c9f72 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -524,20 +524,6 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%pretrans -n npm -p <lua>
--- Remove all of the symlinks from the bundled npm node_modules directory
--- Drop this scriptlet when F29 is EOL
-base_path = "%{_prefix}/lib/node_modules/npm/node_modules/"
-d_st = posix.stat(base_path)
-if d_st then
- for f in posix.files(base_path) do
- path = base_path..f
- st = posix.stat(path)
- if st and st.type == "link" then
- os.remove(path)
- end
- end
-end
-
-- Replace the npm docs directory with a symlink
-- Drop this scriptlet when F31 is EOL
path = "%{_prefix}/lib/node_modules/npm/doc"
commit ac499c11f6e05657988a91742fb199a2bde295d2
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Dec 2 11:45:27 2019 -0500
Update to 12.13.1
https://github.com/nodejs/node/blob/v12.13.1/doc/changelogs/CHANGELOG_V12.md
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 1659e90..812d9b8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 7
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -20,7 +20,7 @@
%global nodejs_epoch 1
%global nodejs_major 12
%global nodejs_minor 13
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -61,8 +61,8 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 32
-%global libuv_patch 0
+%global libuv_minor 33
+%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -102,7 +102,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 12
-%global npm_patch 0
+%global npm_patch 1
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -671,6 +671,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Dec 02 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.1-1
+- Update to 12.13.1
+- https://github.com/nodejs/node/blob/v12.13.1/doc/changelogs/CHANGELOG_V12.md
+
* Tue Oct 29 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-6
- Add proper i18n support
diff --git a/sources b/sources
index 00bb18b..08c40fb 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
+SHA512 (node-v12.13.1-stripped.tar.gz) = 882c5eea44dc72d8c56be3bdde39f312d9df050b7bf1f8dc5d60127b95404dd6131eae936ef5c7b1cc41b6de184afabf946272a0ac8fee03578098a40600deb6
SHA512 (icu4c-64_2-src.tgz) = 5ecb4c230ba45918747a1cf9aef86f555aa07d5b29b1d07ab674e8013f46dfb907a0e9d6945db41155f9dc3012fd94e1152ffc19f61a68b6dfcbabdcb8ae9d78
-SHA512 (node-v12.13.0-stripped.tar.gz) = be475255aaddcd6f5b26fbbc8a4ec7c29538fd9fe7115f93710606a7d876d3e44568f623ce1ca9e90b2db22499d61d6b61e680524217f67f4976493afbc2427f
commit 3d331932897c31c3eafae6079c919a8bbc21df7c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Dec 2 11:41:30 2019 -0500
Include ICU in nodejs-tarball.sh
Also print the libnode SOversion.
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index 2cd913c..2aed5cd 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -101,6 +101,7 @@ assign_positional_args 1 "${_positionals[@]}"
# [ <-- needed because of Argbash
+set -e
echo $_arg_version
@@ -111,12 +112,23 @@ else
fi
rm -f node-v${version}.tar.gz node-v${version}-stripped.tar.gz
-wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
+wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz \
+ http://nodejs.org/dist/v$%7Bversion%7D/SHASUMS256.txt
+sha256sum -c SHASUMS256.txt --ignore-missing
tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
-fedpkg new-sources node-v${version}-stripped.tar.gz
+# Download the matching version of ICU
+rm -f icu4c*-src.tgz icu.md5
+ICUMD5=$(cat node-v${version}/tools/icu/current_ver.dep |jq -r '.[0].md5')
+wget $(cat node-v${version}/tools/icu/current_ver.dep |jq -r '.[0].url')
+ICUTARBALL=$(ls -1 icu4c*-src.tgz)
+echo "$ICUMD5 $ICUTARBALL" > icu.md5
+md5sum -c icu.md5
+rm -f icu.md5 SHASUMS256.txt
+
+fedpkg new-sources node-v${version}-stripped.tar.gz icu4c*-src.tgz
rm -f node-v${version}.tar.gz
@@ -124,6 +136,10 @@ rm -f node-v${version}.tar.gz
echo "Bundled software versions"
echo "-------------------------"
echo
+echo "libnode shared object version"
+echo "========================="
+grep "define NODE_MODULE_VERSION" node-v${version}/src/node_version.h
+echo
echo "V8"
echo "========================="
grep "define V8_MAJOR_VERSION" node-v${version}/deps/v8/include/v8-version.h
@@ -172,4 +188,6 @@ echo "========================="
grep ""version":" node-v${version}/deps/npm/package.json
echo
echo "Make sure these versions match what is in the RPM spec file"
+
+rm -rf node-v${version}
# ] <-- needed because of Argbash
commit 5ec966f5e9eba5877d12202b8030848a6fcda8f4
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Nov 6 14:52:45 2019 -0500
Fix incorrect comparison
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index ef5a0f3..1659e90 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 6
+%global baserelease 7
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -78,7 +78,7 @@
%global sys_icu_version %(/usr/bin/icu-config --version)
-%if sys_icu_version >= icu_version
+%if "%{sys_icu_version}" >= "%{icu_version}"
%global bundled_icu 0
%global icu_flag system-icu
%else
commit 24df70972b3b0e0b5491a3fe7b99e0f3a8de6bea
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Nov 6 12:58:16 2019 -0500
Add proper i18n support
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index b5672bc..4f7c337 100644
--- a/.gitignore
+++ b/.gitignore
@@ -108,3 +108,4 @@
/node-v10.9.0-stripped.tar.gz
/node-v10.10.0-stripped.tar.gz
/node-v10.11.0-stripped.tar.gz
+/icu4c-64_2-src.tgz
diff --git a/btest402.js b/btest402.js
new file mode 100644
index 0000000..277319c
--- /dev/null
+++ b/btest402.js
@@ -0,0 +1,151 @@
+// Copyright (C) 2014 IBM Corporation and Others. All Rights Reserved.
+// This file is part of the Node.JS ICU enablement work
+// https://github.com/joyent/node/pull/7719
+// and is under the same license.
+//
+// This is a very, very, very basic test of es402
+//
+// URL: https://github.com/srl295/btest402
+// Author: Steven R. Loomis srl@icu-project.org
+//
+// for a complete test, see http://test262.ecmascript.org
+//
+// Usage: node btest402.js
+
+try {
+ console.log("You have console.log.");
+} catch(e) {
+ // this works on d8
+ console = { log: print };
+ console.log("Now you have console.log.");
+}
+
+function runbtest() {
+ var summary = {};
+
+ try {
+ var i = Intl;
+ summary.haveIntl = true;
+ console.log("+ Congrats, you have the Intl object.");
+ } catch(e) {
+ console.log("You don't have the Intl object: " + e);
+ }
+
+ if(summary.haveIntl) {
+ var locs = [ "en", "mt", "ja","tlh"];
+ var d = new Date(196400000);
+ for ( var n=0; n<locs.length; n++ ) {
+ var loc = locs[n];
+ var lsummary = summary[loc] = {};
+
+ console.log(loc+":");
+ var sl=null;
+ try {
+ sl = Intl.DateTimeFormat.supportedLocalesOf([loc]);
+ if( sl.length > 0 ) {
+ lsummary.haveSlo = true;
+ }
+ } catch (e) {
+ console.log("SLO err: " + e);
+ }
+ var dstr = "ERR";
+ try {
+ lsummary.dstr = d.toLocaleString(loc,{month: "long",day:"numeric",weekday:"long",year:"numeric"});
+ console.log(" date: (supported:"+sl+") " + lsummary.dstr);
+ } catch (e) {
+ console.log(" Date Format err: " + e);
+ }
+ try {
+ new Intl.v8BreakIterator();
+ console.log(" Intl.v8BreakIterator:" +
+ Intl.v8BreakIterator.supportedLocalesOf(loc) + " Supported, first()==" +
+ new Intl.v8BreakIterator(loc).first() );
+ lsummary.brkOk = true;
+ } catch ( e) {
+ console.log(" Intl.v8BreakIterator error (NOT part of EcmaScript402): " + e);
+ }
+ console.log();
+ }
+ }
+
+ // print summary
+ console.log();
+ console.log("--------- Analysis ---------");
+ stxt = "";
+ if( summary.haveIntl ) {
+ console.log("* You have the 'Intl' object. Congratulations! You have the possibility of being EcmaScript 402 compliant.");
+ stxt += "Have Intl, ";
+
+ if ( !summary.en.haveSlo ) {
+ stxt += "Date:no EN, ";
+ console.log("* English isn't a supported language by the date formatter. Perhaps the data isn't installed properly?");
+ }
+ if ( !summary.tlh.haveSlo ) {
+ stxt += "Date:no 'tlh', ";
+ console.log("* Klingon isn't a supported language by the date formatter. It is without honor!");
+ }
+ // now, what is it actually saying
+ if( summary.en.dstr.indexOf("1970") == -1) {
+ stxt += "Date:bad 'en', ";
+ console.log("* the English date format text looks bad to me. Doesn't even have the year.");
+ } else {
+ if( summary.en.dstr.indexOf("Jan") == -1) {
+ stxt += "Date:bad 'en', ";
+ console.log("* The English date format text looks bad to me. Doesn't have the right month.");
+ }
+ }
+
+ if( summary.mt.dstr == summary.en.dstr ) {
+ stxt += "Date:'mt'=='en', ";
+ console.log("* The English and Maltese look the same to me. Probably a 'small' build.");
+ } else if( summary.mt.dstr.indexOf("1970") == -1) {
+ stxt += "Date:bad 'mt', ";
+ console.log("* the Maltese date format text looks bad to me. Doesn't even have the year. (This data is missing from the Chromium ICU build)");
+ } else {
+ if( summary.mt.dstr.indexOf("Jann") == -1) {
+ stxt += "Date:bad 'mt', ";
+ console.log("* The Maltese date format text looks bad to me. Doesn't have the right month. (This data is missing from the Chromium ICU build)");
+ }
+ }
+
+ if ( !summary.ja.haveSlo ) {
+ stxt += "Date:no 'ja', ";
+ console.log("* Japanese isn't a supported language by the date formatter. Could be a 'small' build.");
+ } else {
+ if( summary.ja.dstr.indexOf("1970") == -1) {
+ stxt += "Date:bad 'ja', ";
+ console.log("* the Japanese date format text looks bad to me. Doesn't even have the year.");
+ } else {
+ if( summary.ja.dstr.indexOf("日") == -1) {
+ stxt += "Date:bad 'ja', ";
+ console.log("* The Japanese date format text looks bad to me.");
+ }
+ }
+ }
+ if ( summary.en.brkOk ) {
+ stxt += "FYI: v8Brk:have 'en', ";
+ console.log("* You have Intl.v8BreakIterator support. (Note: not part of ES402.)");
+ }
+ } else {
+ console.log("* You don't have the 'Intl' object. You aren't EcmaScript 402 compliant.");
+ stxt += " NO Intl. ";
+ }
+
+ // 1-liner.
+ console.log();
+ console.log("----------------");
+ console.log( "SUMMARY:" + stxt );
+}
+
+var dorun = true;
+
+try {
+ if(btest402_noautorun) {
+ dorun = false;
+ }
+} catch(e) {}
+
+if(dorun) {
+ console.log("Running btest..");
+ runbtest();
+}
diff --git a/nodejs.spec b/nodejs.spec
index f9ee475..ef5a0f3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 5
+%global baserelease 6
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -76,15 +76,15 @@
%global icu_minor 2
%global icu_version %{icu_major}.%{icu_minor}
-%global bundled_icu 1
+%global sys_icu_version %(/usr/bin/icu-config --version)
-%if 0%{?bundled_icu}
-%global icu_flag small-icu
-%else
+%if sys_icu_version >= icu_version
+%global bundled_icu 0
%global icu_flag system-icu
+%else
+%global bundled_icu 1
+%global icu_flag full-icu
%endif
-%{!?little_endian: %global little_endian %(%{__python3} -c "import sys;print (0 if sys.byteorder=='big' else 1)")}
-# " this line just fixes syntax highlighting for vim that is confused by the above and continues literal
# OpenSSL minimum version
@@ -128,6 +128,8 @@ ExclusiveArch: %{nodejs_arches}
# the tarball, using the script in Source100
Source0: node-v%{nodejs_version}-stripped.tar.gz
Source1: npmrc
+Source2: btest402.js
+Source3: https://github.com/unicode-org/icu/releases/download/release-%%7Bicu_major%7...
Source100: %{name}-tarball.sh
# The native module Requires generator remains in the nodejs SRPM, so it knows
@@ -171,10 +173,7 @@ Provides: bundled(llhttp) = %{llhttp_version}
%endif
-
-%if 0%{?fedora} >= 29
-BuildRequires: libicu-devel >= 62.1
-%endif
+BuildRequires: libicu-devel
BuildRequires: openssl-devel >= %{openssl_minimum}
Requires: openssl >= %{openssl_minimum}
@@ -341,6 +340,13 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
rm -rf deps/zlib
+%if bundled_icu
+pushd deps/
+rm -rf icu-small
+tar xfz %SOURCE3
+popd
+%endif
+
# Replace any instances of unversioned python' with python2
pathfix.py -i %{__python2} -pn $(find -type f ! -name "*.js")
find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
@@ -359,6 +365,9 @@ sed -i "s~which('python')~which('python2')~" configure
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
%endif
+export CC='gcc'
+export CXX='g++'
+
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
# NULL objects. We need to pass -fno-delete-null-pointer-checks
@@ -428,17 +437,6 @@ for soname in libv8 libv8_libbase libv8_libplatform; do
ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
done
-# When using small-icu, carry the icudt64{l,b}.dat
-%if 0%{?bundled_icu}
-%if 0%{?little_endian}
-cp -a out/Release/obj/gen/icutmp/icudt64l.dat \
- %{buildroot}%{_libdir}/icudt64l.dat
-%else
-cp -a out/Release/obj/gen/icutmp/icudt64b.dat \
- %{buildroot}%{_libdir}/icudt64b.dat
-%endif
-%endif
-
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
@@ -521,6 +519,9 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require(
# Ensure we have npm and that the version matches
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
+# Make sure i18n support is working
+NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node %{SOURCE2}
+
%pretrans -n npm -p <lua>
-- Remove all of the symlinks from the bundled npm node_modules directory
@@ -638,14 +639,6 @@ end
%{_libdir}/libv8_libbase.so.%{v8_major}
%{_libdir}/libv8_libplatform.so.%{v8_major}
-%if 0%{?bundled_icu}
-%if 0%{?little_endian}
-%{_libdir}/icudt64l.dat
-%else
-%{_libdir}/icudt64b.dat
-%endif
-%endif
-
%files -n v8-devel
%{_includedir}/libplatform
@@ -678,6 +671,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Oct 29 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-6
+- Add proper i18n support
+
* Tue Oct 29 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-5
- Fix issue with NPM docs being replaced with a symlink
diff --git a/sources b/sources
index def0e00..00bb18b 100644
--- a/sources
+++ b/sources
@@ -1 +1,2 @@
+SHA512 (icu4c-64_2-src.tgz) = 5ecb4c230ba45918747a1cf9aef86f555aa07d5b29b1d07ab674e8013f46dfb907a0e9d6945db41155f9dc3012fd94e1152ffc19f61a68b6dfcbabdcb8ae9d78
SHA512 (node-v12.13.0-stripped.tar.gz) = be475255aaddcd6f5b26fbbc8a4ec7c29538fd9fe7115f93710606a7d876d3e44568f623ce1ca9e90b2db22499d61d6b61e680524217f67f4976493afbc2427f
commit 83b7eb4ea021a1e47adb16b2f8dcc9adbd10c832
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Oct 29 10:24:09 2019 -0400
Fix issue with NPM docs being replaced with a symlink
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 49115e3..f9ee475 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 5
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -553,6 +553,38 @@ if st and st.type == "directory" then
end
end
+-- Replace the npm HTML docs directory with a symlink
+-- Drop this scriptlet when F31 is EOL
+path = "%{_prefix}/lib/node_modules/npm/html"
+st = posix.stat(path)
+if st and st.type == "directory" then
+ status = os.rename(path, path .. ".rpmmoved")
+ if not status then
+ suffix = 0
+ while not status do
+ suffix = suffix + 1
+ status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
+ end
+ os.rename(path, path .. ".rpmmoved")
+ end
+end
+
+-- Replace the npm HTML man directory with a symlink
+-- Drop this scriptlet when F31 is EOL
+path = "%{_prefix}/lib/node_modules/npm/man"
+st = posix.stat(path)
+if st and st.type == "directory" then
+ status = os.rename(path, path .. ".rpmmoved")
+ if not status then
+ suffix = 0
+ while not status do
+ suffix = suffix + 1
+ status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
+ end
+ os.rename(path, path .. ".rpmmoved")
+ end
+end
+
%pretrans -n v8-devel -p <lua>
-- Replace the v8 libplatform include directory with a symlink
@@ -646,7 +678,7 @@ end
%{_pkgdocdir}/npm/doc
%changelog
-* Tue Oct 29 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-3
+* Tue Oct 29 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-5
- Fix issue with NPM docs being replaced with a symlink
* Mon Oct 28 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-2
commit d6b10f9a6beca8d998f34036adebfa3a0cb32888
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Oct 29 08:03:54 2019 -0400
Fix issue with NPM docs being replaced with a symlink
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 94a71db..49115e3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -231,7 +231,7 @@ Provides: bundled(v8) = %{v8_version}
Provides: bundled(icu) = %{icu_version}
# Make sure we keep NPM up to date when we update Node.js
-%if 0%{?rhel}
+%if 0%{?rhel} < 8
# EPEL doesn't support Recommends, so make it strict
Requires: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%else
@@ -308,6 +308,9 @@ Release: %{npm_release}%{?dist}
Obsoletes: npm < 0:3.5.4-6
Provides: npm = %{npm_epoch}:%{npm_version}
Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+%if 0%{?fedora} || 0%{?rhel} >= 8
+Recommends: nodejs-docs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+%endif
# Do not add epoch to the virtual NPM provides or it will break
# the automatic dependency-generation script.
@@ -534,6 +537,23 @@ if d_st then
end
end
+-- Replace the npm docs directory with a symlink
+-- Drop this scriptlet when F31 is EOL
+path = "%{_prefix}/lib/node_modules/npm/doc"
+st = posix.stat(path)
+if st and st.type == "directory" then
+ status = os.rename(path, path .. ".rpmmoved")
+ if not status then
+ suffix = 0
+ while not status do
+ suffix = suffix + 1
+ status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
+ end
+ os.rename(path, path .. ".rpmmoved")
+ end
+end
+
+
%pretrans -n v8-devel -p <lua>
-- Replace the v8 libplatform include directory with a symlink
-- Drop this scriptlet when F30 is EOL
@@ -626,6 +646,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Oct 29 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-3
+- Fix issue with NPM docs being replaced with a symlink
+
* Mon Oct 28 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-2
- Simplify npmrc default configuration
commit 2526ca953f7d2de94348a77127a85b39a4a8407d
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Oct 28 21:17:18 2019 -0400
Simplify npmrc default configuration
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0002-Use-etc-npmrc-for-the-default-configuration.patch b/0002-Use-etc-npmrc-for-the-default-configuration.patch
deleted file mode 100644
index 6d79f42..0000000
--- a/0002-Use-etc-npmrc-for-the-default-configuration.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From d5f88f988423c6304549eb2724b05c9344b0b88b Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher sgallagh@redhat.com
-Date: Mon, 28 Oct 2019 13:24:57 -0400
-Subject: [PATCH 2/3] Use /etc/npmrc for the default configuration
-
-Signed-off-by: Stephen Gallagher sgallagh@redhat.com
----
- deps/npm/lib/config/defaults.js | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/deps/npm/lib/config/defaults.js b/deps/npm/lib/config/defaults.js
-index 57d373df1e10c349142e14fa9e4bbc95b7df79e3..0ffe6aed8562070cd1d021010b13bef30bac8763 100644
---- a/deps/npm/lib/config/defaults.js
-+++ b/deps/npm/lib/config/defaults.js
-@@ -153,7 +153,7 @@ Object.defineProperty(exports, 'defaults', {get: function () {
- 'commit-hooks': true,
-
- global: false,
-- globalconfig: path.resolve(globalPrefix, 'etc', 'npmrc'),
-+ globalconfig: '/etc/npmrc',
- 'global-style': false,
- group: process.platform === 'win32' ? 0
- : process.env.SUDO_GID || (process.getgid && process.getgid()),
---
-2.23.0
-
diff --git a/nodejs.spec b/nodejs.spec
index e799bd8..94a71db 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -138,10 +138,6 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
-# Use /etc/npmrc for the default configuration
-# We'll use this to set the prefix to /usr/local for `npm -g install`
-Patch2: 0002-Use-etc-npmrc-for-the-default-configuration.patch
-
# Patch to install both node and libnode.so, using the correct libdir
Patch3: 0003-Install-both-binaries-and-use-libdir.patch
@@ -503,8 +499,12 @@ chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin
# Drop the NPM default configuration in place
mkdir -p %{buildroot}%{_sysconfdir}
-cp %{SOURCE1} %{buildroot}%{_sysconfdir}/
+cp %{SOURCE1} %{buildroot}%{_sysconfdir}/npmrc
+# NPM upstream expectes it to be in /usr/etc/npmrc, so we'll put a symlink here
+# This is done in the interests of keeping /usr read-only.
+mkdir -p %{buildroot}%{_prefix}/etc
+ln -s %{_sysconfdir}/npmrc %{buildroot}%{_prefix}/etc/npmrc
%check
# Fail the build if the versions don't match
@@ -609,6 +609,7 @@ end
%{_bindir}/npx
%{_prefix}/lib/node_modules/npm
%config(noreplace) %{_sysconfdir}/npmrc
+%{_prefix}/etc/npmrc
%ghost %{_sysconfdir}/npmignore
%doc %{_mandir}/man*/npm*
%doc %{_mandir}/man*/npx*
@@ -625,6 +626,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Oct 28 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-2
+- Simplify npmrc default configuration
+
* Mon Oct 28 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-1
- Update to 12.13.0 (LTS)
- https://github.com/nodejs/node/blob/v12.13.0/doc/changelogs/CHANGELOG_V12.md
commit 7d86b7301d328cfa747339d7ba40f089e5ac4f4b
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Oct 28 15:03:31 2019 -0400
Fix typo in npmrc patch
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0002-Use-etc-npmrc-for-the-default-configuration.patch b/0002-Use-etc-npmrc-for-the-default-configuration.patch
index 21142c1..6d79f42 100644
--- a/0002-Use-etc-npmrc-for-the-default-configuration.patch
+++ b/0002-Use-etc-npmrc-for-the-default-configuration.patch
@@ -1,4 +1,4 @@
-From 194e21ab7bb3faf34211a0f9474755064cb8d579 Mon Sep 17 00:00:00 2001
+From d5f88f988423c6304549eb2724b05c9344b0b88b Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Mon, 28 Oct 2019 13:24:57 -0400
Subject: [PATCH 2/3] Use /etc/npmrc for the default configuration
@@ -9,7 +9,7 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/deps/npm/lib/config/defaults.js b/deps/npm/lib/config/defaults.js
-index 57d373df1e10c349142e14fa9e4bbc95b7df79e3..c0e2926ac5af12582fa3b4a4a48804fe5a9cea68 100644
+index 57d373df1e10c349142e14fa9e4bbc95b7df79e3..0ffe6aed8562070cd1d021010b13bef30bac8763 100644
--- a/deps/npm/lib/config/defaults.js
+++ b/deps/npm/lib/config/defaults.js
@@ -153,7 +153,7 @@ Object.defineProperty(exports, 'defaults', {get: function () {
@@ -17,7 +17,7 @@ index 57d373df1e10c349142e14fa9e4bbc95b7df79e3..c0e2926ac5af12582fa3b4a4a48804fe
global: false,
- globalconfig: path.resolve(globalPrefix, 'etc', 'npmrc'),
-+ globalconfig: '/etc/npmrc'
++ globalconfig: '/etc/npmrc',
'global-style': false,
group: process.platform === 'win32' ? 0
: process.env.SUDO_GID || (process.getgid && process.getgid()),
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 4df28b4..ea3d4b9 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 68a68c00f78bade05487d34412f3a4b773c4363e Mon Sep 17 00:00:00 2001
+From 5bfeffdf4b5de1c60a2ff0d1ddf65db2bb9a1533 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
commit 641a3e19b293c86dac3f0a0c7e2b240a18d76ccc
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Oct 28 14:18:19 2019 -0400
Add missing mkdir
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index b401b4b..e799bd8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -502,6 +502,7 @@ chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin
# Drop the NPM default configuration in place
+mkdir -p %{buildroot}%{_sysconfdir}
cp %{SOURCE1} %{buildroot}%{_sysconfdir}/
commit ed04b00a690efab3faf6544b006832de35466741
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Oct 28 13:34:25 2019 -0400
Update to 12.13.0 (LTS)
- https://github.com/nodejs/node/blob/v12.13.0/doc/changelogs/CHANGELOG_V12.md
- NPM no longer clobbers RPM-installed Node.js modules
- Drop no-longer needed patch to suppress `npm update -g npm` message
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index ec53bfa..c81b123 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From eb4c49be960358e395ade13372f3790e6e41461b Mon Sep 17 00:00:00 2001
+From 80542232e5b9c3ede63b7a70c1077497e130da81 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,12 +8,10 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
-index 33d43798f52617797d787b4999317e258811c157..a59615648f49a72411ac086ad1bc0c2623b4a41f 100644
+index 0a5177d1c3e7d6769535d79e063f987157a30f4d..1f3dd0abe4031defb5b7cc817b12886bdea002c7 100644
--- a/Makefile
+++ b/Makefile
-@@ -139,13 +139,13 @@ with-code-cache:
- .PHONY: test-code-cache
- test-code-cache: with-code-cache
+@@ -141,9 +141,9 @@ test-code-cache: with-code-cache
echo "'test-code-cache' target is a noop"
out/Makefile: config.gypi common.gypi node.gyp \
@@ -25,9 +23,7 @@ index 33d43798f52617797d787b4999317e258811c157..a59615648f49a72411ac086ad1bc0c26
+ tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
- config.gypi: configure configure.py
- @if [ -x config.status ]; then \
- ./config.status; \
+ # node_version.h is listed because the N-API version is taken from there
--
-2.21.0
+2.23.0
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
deleted file mode 100644
index f87e99c..0000000
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ /dev/null
@@ -1,87 +0,0 @@
-From 0461fabf259b36a156c55dc402b1d66d09eb90ca Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher sgallagh@redhat.com
-Date: Tue, 1 May 2018 08:05:30 -0400
-Subject: [PATCH 2/3] Suppress NPM message to run global update
-
-Signed-off-by: Stephen Gallagher sgallagh@redhat.com
----
- deps/npm/bin/npm-cli.js | 54 -----------------------------------------
- 1 file changed, 54 deletions(-)
-
-diff --git a/deps/npm/bin/npm-cli.js b/deps/npm/bin/npm-cli.js
-index 93eddc7a3c892b0f5d35c477c042a8e5087d7b01..ceb12b5d9a33ab7b98df05d7ef082c42f03eedb9 100755
---- a/deps/npm/bin/npm-cli.js
-+++ b/deps/npm/bin/npm-cli.js
-@@ -67,69 +67,15 @@
- if (conf.usage && npm.command !== 'help') {
- npm.argv.unshift(npm.command)
- npm.command = 'help'
- }
-
-- var isGlobalNpmUpdate = conf.global && ['install', 'update'].includes(npm.command) && npm.argv.includes('npm')
--
- // now actually fire up npm and run the command.
- // this is how to use npm programmatically:
- conf._exit = true
- npm.load(conf, function (er) {
- if (er) return errorHandler(er)
-- if (
-- !isGlobalNpmUpdate &&
-- npm.config.get('update-notifier') &&
-- !unsupported.checkVersion(process.version).unsupported
-- ) {
-- const pkg = require('../package.json')
-- let notifier = require('update-notifier')({pkg})
-- const isCI = require('ci-info').isCI
-- if (
-- notifier.update &&
-- notifier.update.latest !== pkg.version &&
-- !isCI
-- ) {
-- const color = require('ansicolors')
-- const useColor = npm.config.get('color')
-- const useUnicode = npm.config.get('unicode')
-- const old = notifier.update.current
-- const latest = notifier.update.latest
-- let type = notifier.update.type
-- if (useColor) {
-- switch (type) {
-- case 'major':
-- type = color.red(type)
-- break
-- case 'minor':
-- type = color.yellow(type)
-- break
-- case 'patch':
-- type = color.green(type)
-- break
-- }
-- }
-- const changelog = `https://github.com/npm/cli/releases/tag/v$%7Blatest%7D%60
-- notifier.notify({
-- message: `New ${type} version of ${pkg.name} available! ${
-- useColor ? color.red(old) : old
-- } ${useUnicode ? '→' : '->'} ${
-- useColor ? color.green(latest) : latest
-- }\n` +
-- `${
-- useColor ? color.yellow('Changelog:') : 'Changelog:'
-- } ${
-- useColor ? color.cyan(changelog) : changelog
-- }\n` +
-- `Run ${
-- useColor
-- ? color.green(`npm install -g ${pkg.name}`)
-- : `npm i -g ${pkg.name}`
-- } to update!`
-- })
-- }
-- }
- npm.commands[npm.command](npm.argv, function (err) {
- // https://genius.com/Lin-manuel-miranda-your-obedient-servant-lyrics
- if (
- !err &&
- npm.config.get('ham-it-up') &&
---
-2.21.0
-
diff --git a/0002-Use-etc-npmrc-for-the-default-configuration.patch b/0002-Use-etc-npmrc-for-the-default-configuration.patch
new file mode 100644
index 0000000..21142c1
--- /dev/null
+++ b/0002-Use-etc-npmrc-for-the-default-configuration.patch
@@ -0,0 +1,26 @@
+From 194e21ab7bb3faf34211a0f9474755064cb8d579 Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher sgallagh@redhat.com
+Date: Mon, 28 Oct 2019 13:24:57 -0400
+Subject: [PATCH 2/3] Use /etc/npmrc for the default configuration
+
+Signed-off-by: Stephen Gallagher sgallagh@redhat.com
+---
+ deps/npm/lib/config/defaults.js | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/deps/npm/lib/config/defaults.js b/deps/npm/lib/config/defaults.js
+index 57d373df1e10c349142e14fa9e4bbc95b7df79e3..c0e2926ac5af12582fa3b4a4a48804fe5a9cea68 100644
+--- a/deps/npm/lib/config/defaults.js
++++ b/deps/npm/lib/config/defaults.js
+@@ -153,7 +153,7 @@ Object.defineProperty(exports, 'defaults', {get: function () {
+ 'commit-hooks': true,
+
+ global: false,
+- globalconfig: path.resolve(globalPrefix, 'etc', 'npmrc'),
++ globalconfig: '/etc/npmrc'
+ 'global-style': false,
+ group: process.platform === 'win32' ? 0
+ : process.env.SUDO_GID || (process.getgid && process.getgid()),
+--
+2.23.0
+
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 985dd82..4df28b4 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From f35fcd689dce64e7d6b5f3496e5e5358a24ae4e0 Mon Sep 17 00:00:00 2001
+From 68a68c00f78bade05487d34412f3a4b773c4363e Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
@@ -13,12 +13,10 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index ce01a14566e65ad9d568e0cb8594b35bacd698c6..180f0b4861463e3d4fab979fce4b4c8dfc6ceee2 100755
+index 473bbfeb294b34e0cb4ead9db607adfc3781be29..a1f98be9a68c360f3bd17c8f5e0a1478adce9a55 100755
--- a/configure.py
+++ b/configure.py
-@@ -554,10 +554,16 @@ parser.add_option('--shared',
- action='store_true',
- dest='shared',
+@@ -556,6 +556,12 @@ parser.add_option('--shared',
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
@@ -31,11 +29,7 @@ index ce01a14566e65ad9d568e0cb8594b35bacd698c6..180f0b4861463e3d4fab979fce4b4c8d
parser.add_option('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
- default=False,
- help='do not initialize v8 platform during node.js startup. ' +
-@@ -1096,10 +1102,11 @@ def configure_node(o):
- o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
- # TODO(refack): fix this when implementing embedded code-cache when cross-compiling.
+@@ -1098,6 +1104,7 @@ def configure_node(o):
if o['variables']['want_separate_host_toolset'] == 0:
o['variables']['node_code_cache'] = 'yes' # For testing
o['variables']['node_shared'] = b(options.shared)
@@ -43,15 +37,11 @@ index ce01a14566e65ad9d568e0cb8594b35bacd698c6..180f0b4861463e3d4fab979fce4b4c8d
node_module_version = getmoduleversion.get_version()
if sys.platform == 'darwin':
- shlib_suffix = '%s.dylib'
- elif sys.platform.startswith('aix'):
diff --git a/tools/install.py b/tools/install.py
index 655802980a6ea94d1d4ca1dc63c8c8e905fbb83a..fe4723bf15012c8aacacb0393dc8294c049b0503 100755
--- a/tools/install.py
+++ b/tools/install.py
-@@ -119,30 +119,27 @@ def subdir_files(path, dest, action):
- for subdir, files_in_path in ret.items():
- action(files_in_path, subdir + '/')
+@@ -121,26 +121,23 @@ def subdir_files(path, dest, action):
def files(action):
is_windows = sys.platform == 'win32'
@@ -91,8 +81,6 @@ index 655802980a6ea94d1d4ca1dc63c8c8e905fbb83a..fe4723bf15012c8aacacb0393dc8294c
if 'true' == variables.get('node_use_dtrace'):
action(['out/Release/node.d'], 'lib/dtrace/node.d')
-
- # behave similarly for systemtap
--
-2.21.0
+2.23.0
diff --git a/nodejs.spec b/nodejs.spec
index 0071c11..b401b4b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 10
+%global nodejs_minor 13
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -32,9 +32,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 7
-%global v8_minor 6
-%global v8_build 303
-%global v8_patch 29
+%global v8_minor 7
+%global v8_build 299
+%global v8_patch 13
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -61,7 +61,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 31
+%global libuv_minor 32
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -101,8 +101,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 10
-%global npm_patch 3
+%global npm_minor 12
+%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -127,6 +127,7 @@ ExclusiveArch: %{nodejs_arches}
# because openssl contains prohibited code, we remove openssl completely from
# the tarball, using the script in Source100
Source0: node-v%{nodejs_version}-stripped.tar.gz
+Source1: npmrc
Source100: %{name}-tarball.sh
# The native module Requires generator remains in the nodejs SRPM, so it knows
@@ -137,9 +138,9 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
-# Suppress the message from npm to run `npm -g update npm`
-# This does bad things on an RPM-managed npm.
-Patch2: 0002-Suppress-NPM-message-to-run-global-update.patch
+# Use /etc/npmrc for the default configuration
+# We'll use this to set the prefix to /usr/local for `npm -g install`
+Patch2: 0002-Use-etc-npmrc-for-the-default-configuration.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch3: 0003-Install-both-binaries-and-use-libdir.patch
@@ -500,6 +501,10 @@ chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/npm-lifecycl
chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
+# Drop the NPM default configuration in place
+cp %{SOURCE1} %{buildroot}%{_sysconfdir}/
+
+
%check
# Fail the build if the versions don't match
LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
@@ -602,7 +607,7 @@ end
%{_bindir}/npm
%{_bindir}/npx
%{_prefix}/lib/node_modules/npm
-%ghost %{_sysconfdir}/npmrc
+%config(noreplace) %{_sysconfdir}/npmrc
%ghost %{_sysconfdir}/npmignore
%doc %{_mandir}/man*/npm*
%doc %{_mandir}/man*/npx*
@@ -619,6 +624,12 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Oct 28 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.13.0-1
+- Update to 12.13.0 (LTS)
+- https://github.com/nodejs/node/blob/v12.13.0/doc/changelogs/CHANGELOG_V12.md
+- NPM no longer clobbers RPM-installed Node.js modules
+- Drop no-longer needed patch to suppress `npm update -g npm` message
+
* Wed Sep 04 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.10.0-1
- Update to 12.10.0
- https://github.com/nodejs/node/blob/v12.10.0/doc/changelogs/CHANGELOG_V12.md...
diff --git a/npmrc b/npmrc
new file mode 100644
index 0000000..10437ca
--- /dev/null
+++ b/npmrc
@@ -0,0 +1 @@
+prefix=/usr/local
diff --git a/sources b/sources
index e1413c0..def0e00 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.10.0-stripped.tar.gz) = 4e99ffe8565f0bac1a2ce7c3797d5e734d42d11998c7c36033a6e4ddda7a432d1a4c7d02c1a606ebc28c1b7324caecf38c701fb2c8dafcc56af97eaf5f996318
+SHA512 (node-v12.13.0-stripped.tar.gz) = be475255aaddcd6f5b26fbbc8a4ec7c29538fd9fe7115f93710606a7d876d3e44568f623ce1ca9e90b2db22499d61d6b61e680524217f67f4976493afbc2427f
commit 79a508703333c68676f3f76ddddb5bc31ca056b3
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Sep 4 16:21:05 2019 -0400
Update to 12.10.0
https://github.com/nodejs/node/blob/v12.10.0/doc/changelogs/CHANGELOG_V12.md...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index f140769..ec53bfa 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 6139142ca617c9de7c802c75133ed536204f80e2 Mon Sep 17 00:00:00 2001
+From eb4c49be960358e395ade13372f3790e6e41461b Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
-index 58f4cc7a5795b80bb8b02efe28235a6b674d3204..960fb201c72432214fba1f1625fd6258ad9dc45a 100644
+index 33d43798f52617797d787b4999317e258811c157..a59615648f49a72411ac086ad1bc0c2623b4a41f 100644
--- a/Makefile
+++ b/Makefile
@@ -139,13 +139,13 @@ with-code-cache:
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 5b7b769..f87e99c 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From a136a2d73ed3502600eb49ee4f93775f5dfe02ce Mon Sep 17 00:00:00 2001
+From 0461fabf259b36a156c55dc402b1d66d09eb90ca Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/3] Suppress NPM message to run global update
@@ -9,10 +9,10 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
1 file changed, 54 deletions(-)
diff --git a/deps/npm/bin/npm-cli.js b/deps/npm/bin/npm-cli.js
-index 705aa472e7e5502311f24767adfb0aebab396772..e8aebe644f610bb09c3748338fd70e6c8c422cea 100755
+index 93eddc7a3c892b0f5d35c477c042a8e5087d7b01..ceb12b5d9a33ab7b98df05d7ef082c42f03eedb9 100755
--- a/deps/npm/bin/npm-cli.js
+++ b/deps/npm/bin/npm-cli.js
-@@ -66,69 +66,15 @@
+@@ -67,69 +67,15 @@
if (conf.usage && npm.command !== 'help') {
npm.argv.unshift(npm.command)
npm.command = 'help'
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index ffcc3ad..985dd82 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 4a32f1d071d7275d5b946047b5cc59116c46bab1 Mon Sep 17 00:00:00 2001
+From f35fcd689dce64e7d6b5f3496e5e5358a24ae4e0 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
@@ -13,7 +13,7 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index beab9ceccce9adc8ec564350a732382d186ffdf1..8d08988ed6245f43928ad65af02b7bd29f1d47a7 100755
+index ce01a14566e65ad9d568e0cb8594b35bacd698c6..180f0b4861463e3d4fab979fce4b4c8dfc6ceee2 100755
--- a/configure.py
+++ b/configure.py
@@ -554,10 +554,16 @@ parser.add_option('--shared',
@@ -33,7 +33,7 @@ index beab9ceccce9adc8ec564350a732382d186ffdf1..8d08988ed6245f43928ad65af02b7bd2
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1093,10 +1099,11 @@ def configure_node(o):
+@@ -1096,10 +1102,11 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
# TODO(refack): fix this when implementing embedded code-cache when cross-compiling.
if o['variables']['want_separate_host_toolset'] == 0:
diff --git a/nodejs.spec b/nodejs.spec
index e35c2d8..0071c11 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 9
+%global nodejs_minor 10
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -102,7 +102,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 10
-%global npm_patch 2
+%global npm_patch 3
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -619,7 +619,11 @@ end
%{_pkgdocdir}/npm/doc
%changelog
-* Wed Aug 21 2019 Stephen Gallagher sgallagh@redhat.com - -
+* Wed Sep 04 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.10.0-1
+- Update to 12.10.0
+- https://github.com/nodejs/node/blob/v12.10.0/doc/changelogs/CHANGELOG_V12.md...
+
+* Wed Aug 21 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.9.0-1
- Update to 12.9.0
- https://github.com/nodejs/node/blob/v12.9.0/doc/changelogs/CHANGELOG_V12.md#...
diff --git a/sources b/sources
index a09450c..e1413c0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.9.0-stripped.tar.gz) = c82d9e7e76de928d9c7e2b05de6640efc91bf700a9594e744554a02a92d831d238489e7bf34f0beffd1573ed74298d8cd63dd75bf609f2c7d916da3bff50dd74
+SHA512 (node-v12.10.0-stripped.tar.gz) = 4e99ffe8565f0bac1a2ce7c3797d5e734d42d11998c7c36033a6e4ddda7a432d1a4c7d02c1a606ebc28c1b7324caecf38c701fb2c8dafcc56af97eaf5f996318
commit 23cd998628e3e89c5a91cdbb6c71a8e7f031c0d9
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Aug 21 10:50:37 2019 -0400
Update to 12.9.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index d4c1f1e..f140769 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From d8cdfcd680cbd728904c19b2eea7730c61b16c73 Mon Sep 17 00:00:00 2001
+From 6139142ca617c9de7c802c75133ed536204f80e2 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
-index 1e4915a6d2ebedc8af009d8505b5b8d11a53f5f7..cae1c3c1da9a440d84a6f86fa6353e81db535c71 100644
+index 58f4cc7a5795b80bb8b02efe28235a6b674d3204..960fb201c72432214fba1f1625fd6258ad9dc45a 100644
--- a/Makefile
+++ b/Makefile
@@ -139,13 +139,13 @@ with-code-cache:
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 3c88d35..5b7b769 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From ef6374e4ed159b719f465ecdb2e273019f134fb0 Mon Sep 17 00:00:00 2001
+From a136a2d73ed3502600eb49ee4f93775f5dfe02ce Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/3] Suppress NPM message to run global update
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 4112e65..ffcc3ad 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From bc1d8e49a42cb88d86b2accba6ee1776baba4ca5 Mon Sep 17 00:00:00 2001
+From 4a32f1d071d7275d5b946047b5cc59116c46bab1 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
@@ -13,10 +13,10 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index cc805d3fd165fd2abe4c8581ffdb8829341ad2ba..64f50439bc09827f99786c3b0d574ba454954ca9 100755
+index beab9ceccce9adc8ec564350a732382d186ffdf1..8d08988ed6245f43928ad65af02b7bd29f1d47a7 100755
--- a/configure.py
+++ b/configure.py
-@@ -550,10 +550,16 @@ parser.add_option('--shared',
+@@ -554,10 +554,16 @@ parser.add_option('--shared',
action='store_true',
dest='shared',
help='compile shared library for embedding node in another project. ' +
@@ -33,7 +33,7 @@ index cc805d3fd165fd2abe4c8581ffdb8829341ad2ba..64f50439bc09827f99786c3b0d574ba4
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1094,10 +1100,11 @@ def configure_node(o):
+@@ -1093,10 +1099,11 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
# TODO(refack): fix this when implementing embedded code-cache when cross-compiling.
if o['variables']['want_separate_host_toolset'] == 0:
diff --git a/nodejs.spec b/nodejs.spec
index 029c423..e35c2d8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 8
-%global nodejs_patch 1
+%global nodejs_minor 9
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -32,9 +32,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 2
%global v8_major 7
-%global v8_minor 5
-%global v8_build 288
-%global v8_patch 22
+%global v8_minor 6
+%global v8_build 303
+%global v8_patch 29
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -61,8 +61,8 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 30
-%global libuv_patch 1
+%global libuv_minor 31
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -619,6 +619,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Aug 21 2019 Stephen Gallagher sgallagh@redhat.com - -
+- Update to 12.9.0
+- https://github.com/nodejs/node/blob/v12.9.0/doc/changelogs/CHANGELOG_V12.md#...
+
* Thu Aug 15 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.8.2-1
- Update to 12.8.1
- Resolves: CVE-2019-9511 "Data Dribble"
diff --git a/sources b/sources
index 4359bda..a09450c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.8.1-stripped.tar.gz) = b7c007e7a0c92303893a389d345f1040d43a0c8eb1ed46f250476ddfae368dbf5a708a81a6bf9f30411684aeabb436371451ebab9decaf2b8e192ea8a342784f
+SHA512 (node-v12.9.0-stripped.tar.gz) = c82d9e7e76de928d9c7e2b05de6640efc91bf700a9594e744554a02a92d831d238489e7bf34f0beffd1573ed74298d8cd63dd75bf609f2c7d916da3bff50dd74
commit a7660f795dcd0bdba908dfbacebed22e7c1ee194
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Aug 16 11:13:09 2019 -0400
Add helper tool to scrape the bundled library versions
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index ae56e19..2cd913c 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -120,4 +120,56 @@ fedpkg new-sources node-v${version}-stripped.tar.gz
rm -f node-v${version}.tar.gz
+# Determine the bundled versions of the various packages
+echo "Bundled software versions"
+echo "-------------------------"
+echo
+echo "V8"
+echo "========================="
+grep "define V8_MAJOR_VERSION" node-v${version}/deps/v8/include/v8-version.h
+grep "define V8_MINOR_VERSION" node-v${version}/deps/v8/include/v8-version.h
+grep "define V8_BUILD_NUMBER" node-v${version}/deps/v8/include/v8-version.h
+grep "define V8_PATCH_LEVEL" node-v${version}/deps/v8/include/v8-version.h
+echo
+echo "c-ares"
+echo "========================="
+grep "define ARES_VERSION_MAJOR" node-v${version}/deps/cares/include/ares_version.h
+grep "define ARES_VERSION_MINOR" node-v${version}/deps/cares/include/ares_version.h
+grep "define ARES_VERSION_PATCH" node-v${version}/deps/cares/include/ares_version.h
+echo
+echo "http-parser"
+echo "========================="
+grep "define HTTP_PARSER_VERSION_MAJOR" node-v${version}/deps/http_parser/http_parser.h
+grep "define HTTP_PARSER_VERSION_MINOR" node-v${version}/deps/http_parser/http_parser.h
+grep "define HTTP_PARSER_VERSION_PATCH" node-v${version}/deps/http_parser/http_parser.h
+echo
+echo "llhttp"
+echo "========================="
+grep "define LLHTTP_VERSION_MAJOR" node-v${version}/deps/llhttp/include/llhttp.h
+grep "define LLHTTP_VERSION_MINOR" node-v${version}/deps/llhttp/include/llhttp.h
+grep "define LLHTTP_VERSION_PATCH" node-v${version}/deps/llhttp/include/llhttp.h
+echo
+echo "libuv"
+echo "========================="
+grep "define UV_VERSION_MAJOR" node-v${version}/deps/uv/include/uv/version.h
+grep "define UV_VERSION_MINOR" node-v${version}/deps/uv/include/uv/version.h
+grep "define UV_VERSION_PATCH" node-v${version}/deps/uv/include/uv/version.h
+echo
+echo "libuv"
+echo "========================="
+grep "define NGHTTP2_VERSION " node-v${version}/deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
+echo
+echo "ICU"
+echo "========================="
+grep "url" node-v${version}/tools/icu/current_ver.dep
+echo
+echo "punycode"
+echo "========================="
+grep "'version'" node-v${version}/lib/punycode.js
+echo
+echo "npm"
+echo "========================="
+grep ""version":" node-v${version}/deps/npm/package.json
+echo
+echo "Make sure these versions match what is in the RPM spec file"
# ] <-- needed because of Argbash
commit a148d56ddcce24dc0446602121140169864bdff3
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Aug 16 07:14:28 2019 -0400
Add version positional argument to nodejs-tarball.sh
Uses argbash to generate argument handling.
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index e19d80e..ae56e19 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -1,6 +1,115 @@
#!/bin/sh
+# Uses Argbash to generate command argument parsing. To update
+# arguments, make sure to call
+# `argbash nodejs-tarball.sh -o nodejs-tarball.sh`
+
+# ARG_POSITIONAL_SINGLE([version],[Node.js release version],[""])
+# ARG_DEFAULTS_POS([])
+# ARG_HELP([Tool to aid in Node.js packaging of new releases])
+# ARGBASH_GO()
+# needed because of Argbash --> m4_ignore([
+### START OF CODE GENERATED BY Argbash v2.8.1 one line above ###
+# Argbash is a bash code generator used to get arguments parsing right.
+# Argbash is FREE SOFTWARE, see https://argbash.io for more info
+
+
+die()
+{
+ local _ret=$2
+ test -n "$_ret" || _ret=1
+ test "$_PRINT_HELP" = yes && print_help >&2
+ echo "$1" >&2
+ exit ${_ret}
+}
+
+
+begins_with_short_option()
+{
+ local first_option all_short_options='h'
+ first_option="${1:0:1}"
+ test "$all_short_options" = "${all_short_options/$first_option/}" && return 1 || return 0
+}
+
+# THE DEFAULTS INITIALIZATION - POSITIONALS
+_positionals=()
+_arg_version=""
+# THE DEFAULTS INITIALIZATION - OPTIONALS
+
+
+print_help()
+{
+ printf '%s\n' "Tool to aid in Node.js packaging of new releases"
+ printf 'Usage: %s [-h|--help] [<version>]\n' "$0"
+ printf '\t%s\n' "<version>: Node.js release version (default: '""')"
+ printf '\t%s\n' "-h, --help: Prints help"
+}
+
+
+parse_commandline()
+{
+ _positionals_count=0
+ while test $# -gt 0
+ do
+ _key="$1"
+ case "$_key" in
+ -h|--help)
+ print_help
+ exit 0
+ ;;
+ -h*)
+ print_help
+ exit 0
+ ;;
+ *)
+ _last_positional="$1"
+ _positionals+=("$_last_positional")
+ _positionals_count=$((_positionals_count + 1))
+ ;;
+ esac
+ shift
+ done
+}
+
+
+handle_passed_args_count()
+{
+ test "${_positionals_count}" -le 1 || _PRINT_HELP=yes die "FATAL ERROR: There were spurious positional arguments --- we expect between 0 and 1, but got ${_positionals_count} (the last one was: '${_last_positional}')." 1
+}
+
+
+assign_positional_args()
+{
+ local _positional_name _shift_for=$1
+ _positional_names="_arg_version "
+
+ shift "$_shift_for"
+ for _positional_name in ${_positional_names}
+ do
+ test $# -gt 0 || break
+ eval "$_positional_name=${1}" || die "Error during argument parsing, possibly an Argbash bug." 1
+ shift
+ done
+}
+
+parse_commandline "$@"
+handle_passed_args_count
+assign_positional_args 1 "${_positionals[@]}"
+
+# OTHER STUFF GENERATED BY Argbash
+
+### END OF CODE GENERATED BY Argbash (sortof) ### ])
+# [ <-- needed because of Argbash
+
+
+
+echo $_arg_version
+
+if [ x$_arg_version != x ]; then
+ version=$_arg_version
+else
+ version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
+fi
-version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
rm -f node-v${version}.tar.gz node-v${version}-stripped.tar.gz
wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
tar -zxf node-v${version}.tar.gz
@@ -10,3 +119,5 @@ tar -zcf node-v${version}-stripped.tar.gz node-v${version}
fedpkg new-sources node-v${version}-stripped.tar.gz
rm -f node-v${version}.tar.gz
+
+# ] <-- needed because of Argbash
commit 95a3bb336154fe26070b3eaf1decc2a34aa305ba
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Aug 15 11:18:11 2019 -0400
Update to 12.8.1
Resolves: CVE-2019-9511 "Data Dribble"
Resolves: CVE-2019-9512 "Ping Flood"
Resolves: CVE-2019-9513 "Resource Loop"
Resolves: CVE-2019-9514 "Reset Flood"
Resolves: CVE-2019-9515 "Settings Flood"
Resolves: CVE-2019-9516 "0-Length Headers Leak"
Resolves: CVE-2019-9517 "Internal Data Buffering"
Resolves: CVE-2019-9518 "Empty Frames Flood"
https://github.com/nodejs/node/blob/v12.8.1/doc/changelogs/CHANGELOG_V12.md#...
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 699d46e..d4c1f1e 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,29 +1,33 @@
-From 03ff54a26a47fce13a83094dcfba7840852bf30c Mon Sep 17 00:00:00 2001
+From d8cdfcd680cbd728904c19b2eea7730c61b16c73 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
-Subject: [PATCH 1/4] Disable running gyp on shared deps
+Subject: [PATCH 1/3] Disable running gyp on shared deps
---
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ Makefile | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Makefile b/Makefile
-index d7427e578f882034895fc44529d3711c621c06b9..a12edd09252202e98aecaca76cb8457ac98d2ad7 100644
+index 1e4915a6d2ebedc8af009d8505b5b8d11a53f5f7..cae1c3c1da9a440d84a6f86fa6353e81db535c71 100644
--- a/Makefile
+++ b/Makefile
-@@ -139,11 +139,11 @@ with-code-cache:
+@@ -139,13 +139,13 @@ with-code-cache:
.PHONY: test-code-cache
test-code-cache: with-code-cache
echo "'test-code-cache' target is a noop"
out/Makefile: config.gypi common.gypi node.gyp \
-- deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp \
+- deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp \
+- tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
+- tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
+ deps/http_parser/http_parser.gyp \
- tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
- tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
++ tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
++ tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure configure.py
+ @if [ -x config.status ]; then \
+ ./config.status; \
--
2.21.0
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 7cb8e8e..3c88d35 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,7 +1,7 @@
-From 18ea2d546f5a384d51aad0e7bd39f5b1daaf6471 Mon Sep 17 00:00:00 2001
+From ef6374e4ed159b719f465ecdb2e273019f134fb0 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
-Subject: [PATCH 2/4] Suppress NPM message to run global update
+Subject: [PATCH 2/3] Suppress NPM message to run global update
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
---
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 85aa7e3..4112e65 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From 5cb76403cf796f548ff4a7ed62d6545acb5febe3 Mon Sep 17 00:00:00 2001
+From bc1d8e49a42cb88d86b2accba6ee1776baba4ca5 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 3/4] Install both binaries and use libdir.
+Subject: [PATCH 3/3] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -13,7 +13,7 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index a791efebbca128a2138f61713eb2f5d23b8ced98..32eeee090b5248f5236e75f3201177ec446eb41d 100755
+index cc805d3fd165fd2abe4c8581ffdb8829341ad2ba..64f50439bc09827f99786c3b0d574ba454954ca9 100755
--- a/configure.py
+++ b/configure.py
@@ -550,10 +550,16 @@ parser.add_option('--shared',
@@ -33,7 +33,7 @@ index a791efebbca128a2138f61713eb2f5d23b8ced98..32eeee090b5248f5236e75f3201177ec
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1096,10 +1102,11 @@ def configure_node(o):
+@@ -1094,10 +1100,11 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
# TODO(refack): fix this when implementing embedded code-cache when cross-compiling.
if o['variables']['want_separate_host_toolset'] == 0:
diff --git a/0004-build-include-stubs-in-shared-library.patch b/0004-build-include-stubs-in-shared-library.patch
deleted file mode 100644
index 571834c..0000000
--- a/0004-build-include-stubs-in-shared-library.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 6d3a39df826c88e4ab12b937bef06c5905c08ab7 Mon Sep 17 00:00:00 2001
-From: Jeroen Ooms jeroenooms@gmail.com
-Date: Mon, 29 Jul 2019 20:15:14 +0200
-Subject: [PATCH 4/4] build: include stubs in shared library
-
-This is needed for external applications that link to shared libnode.
-Fixes #27431
----
- node.gyp | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/node.gyp b/node.gyp
-index 55b7da02ccaf1835b5fd986aaa320d72f8b7fbf2..4eae262a61e77bb8a9556e42a241b83eda3f0eba 100644
---- a/node.gyp
-+++ b/node.gyp
-@@ -684,10 +684,16 @@
- # - "C4244: conversion from 'type1' to 'type2', possible loss of data"
- # Ususaly safe. Disable for `dep`, enable for `src`
- 'msvs_disabled_warnings!': [4244],
-
- 'conditions': [
-+ [ 'node_shared=="true"', {
-+ 'sources': [
-+ 'src/node_snapshot_stub.cc',
-+ 'src/node_code_cache_stub.cc',
-+ ]
-+ }],
- [ 'node_shared=="true" and node_module_version!="" and OS!="win"', {
- 'product_extension': '<(shlib_suffix)',
- 'xcode_settings': {
- 'LD_DYLIB_INSTALL_NAME':
- '@rpath/lib<(node_core_target_name).<(shlib_suffix)'
---
-2.21.0
-
diff --git a/nodejs.spec b/nodejs.spec
index e3f5bb9..029c423 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 3
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,8 +19,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 7
-%global nodejs_patch 0
+%global nodejs_minor 8
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -68,7 +68,7 @@
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
%global nghttp2_minor 39
-%global nghttp2_patch 1
+%global nghttp2_patch 2
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
@@ -102,7 +102,7 @@
%global npm_epoch 1
%global npm_major 6
%global npm_minor 10
-%global npm_patch 0
+%global npm_patch 2
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -144,9 +144,6 @@ Patch2: 0002-Suppress-NPM-message-to-run-global-update.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch3: 0003-Install-both-binaries-and-use-libdir.patch
-# Upstream patch to include stubs in libnode. Drop in 12.8.0
-Patch4: 0004-build-include-stubs-in-shared-library.patch
-
BuildRequires: python2-devel
BuildRequires: python3-devel
BuildRequires: zlib-devel
@@ -622,6 +619,18 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Aug 15 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.8.2-1
+- Update to 12.8.1
+- Resolves: CVE-2019-9511 "Data Dribble"
+- Resolves: CVE-2019-9512 "Ping Flood"
+- Resolves: CVE-2019-9513 "Resource Loop"
+- Resolves: CVE-2019-9514 "Reset Flood"
+- Resolves: CVE-2019-9515 "Settings Flood"
+- Resolves: CVE-2019-9516 "0-Length Headers Leak"
+- Resolves: CVE-2019-9517 "Internal Data Buffering"
+- Resolves: CVE-2019-9518 "Empty Frames Flood"
+- https://github.com/nodejs/node/blob/v12.8.1/doc/changelogs/CHANGELOG_V12.md#...
+
* Mon Aug 05 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.7.0-3
- Fix epoch dependencies
- Carry data files for ICU
diff --git a/package.cfg b/package.cfg
index 77d2a9c..2255bcd 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = master f30 f29
+targets = master f31
diff --git a/sources b/sources
index ad425a8..4359bda 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.7.0-stripped.tar.gz) = 267c9a8883b5264d2679dc9306b00533e8cc072e7b59d8b6c9440a6daab0e89fde78f625796f8349210a9b0aafd69ba1f596de32615ae674b8d04f8e185ca311
+SHA512 (node-v12.8.1-stripped.tar.gz) = b7c007e7a0c92303893a389d345f1040d43a0c8eb1ed46f250476ddfae368dbf5a708a81a6bf9f30411684aeabb436371451ebab9decaf2b8e192ea8a342784f
commit a2b8a18f3d5f3d6f1228098730e24b5ab84ac3ec
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Aug 5 09:16:02 2019 -0400
Fix epoch dependencies
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 9d44041..e3f5bb9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 3
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -188,7 +188,7 @@ Requires: openssl >= %{openssl_minimum}
# we need the system certificate store
Requires: ca-certificates
-Requires: nodejs-libs%{?_isa} = %{epoch}:%{version}-%{release}
+Requires: nodejs-libs%{?_isa} = %{nodejs_epoch}:%{version}-%{release}
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
@@ -239,9 +239,9 @@ Provides: bundled(icu) = %{icu_version}
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?rhel}
# EPEL doesn't support Recommends, so make it strict
-Requires: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}
+Requires: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%else
-Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}
+Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%endif
@@ -297,7 +297,7 @@ Summary: v8 - development headers
Epoch: %{v8_epoch}
Version: %{v8_version}
Release: %{v8_release}%{?dist}
-Requires: %{name}-devel%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: %{name}-devel%{?_isa} = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
%description -n v8-devel
Development headers for the v8 runtime.
@@ -313,7 +313,7 @@ Release: %{npm_release}%{?dist}
# now.
Obsoletes: npm < 0:3.5.4-6
Provides: npm = %{npm_epoch}:%{npm_version}
-Requires: nodejs = %{epoch}:%{version}-%{release}
+Requires: nodejs = %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
# Do not add epoch to the virtual NPM provides or it will break
# the automatic dependency-generation script.
@@ -331,8 +331,8 @@ BuildArch: noarch
# We don't require that the main package be installed to
# use the docs, but if it is installed, make sure the
# version always matches
-Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Conflicts: %{name} > %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Conflicts: %{name} < %{nodejs_epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
%description docs
The API documentation for the Node.js JavaScript runtime.
@@ -622,6 +622,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Aug 05 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.7.0-3
+- Fix epoch dependencies
+- Carry data files for ICU
+
* Fri Aug 02 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.7.0-2
- Change v8-devel release field to avoid duplicated package names
commit 3e9a5a1b8382afd1518ad017f1f06b033c9bf1ed
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Aug 5 09:15:45 2019 -0400
Carry bundled ICU data
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 5e9c9eb..9d44041 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -75,7 +75,17 @@
%global icu_major 64
%global icu_minor 2
%global icu_version %{icu_major}.%{icu_minor}
+
+%global bundled_icu 1
+
+%if 0%{?bundled_icu}
%global icu_flag small-icu
+%else
+%global icu_flag system-icu
+%endif
+%{!?little_endian: %global little_endian %(%{__python3} -c "import sys;print (0 if sys.byteorder=='big' else 1)")}
+# " this line just fixes syntax highlighting for vim that is confused by the above and continues literal
+
# OpenSSL minimum version
%global openssl_minimum 1:1.1.1
@@ -421,6 +431,17 @@ for soname in libv8 libv8_libbase libv8_libplatform; do
ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
done
+# When using small-icu, carry the icudt64{l,b}.dat
+%if 0%{?bundled_icu}
+%if 0%{?little_endian}
+cp -a out/Release/obj/gen/icutmp/icudt64l.dat \
+ %{buildroot}%{_libdir}/icudt64l.dat
+%else
+cp -a out/Release/obj/gen/icutmp/icudt64b.dat \
+ %{buildroot}%{_libdir}/icudt64b.dat
+%endif
+%endif
+
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
@@ -562,6 +583,14 @@ end
%{_libdir}/libv8_libbase.so.%{v8_major}
%{_libdir}/libv8_libplatform.so.%{v8_major}
+%if 0%{?bundled_icu}
+%if 0%{?little_endian}
+%{_libdir}/icudt64l.dat
+%else
+%{_libdir}/icudt64b.dat
+%endif
+%endif
+
%files -n v8-devel
%{_includedir}/libplatform
commit 7cfea04abbdb88eff4133101f06fa54ac220c309
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Aug 2 08:35:06 2019 -0400
Fix v8-devel release field
The current approach would result in reusing the same ENVR for
v8-devel any time the nodejs release field was reused and the
v8 version provided did not change. This is the same approach
we use for NPM to avoid this problem.
We need to bump the v8-devel epoch because
v8-devel-7.5.288.22-2.fc31 > v8-devel-7.5.288.22-1.12.7.0.1.fc31
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index a96b93d..5e9c9eb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 1
+%global baserelease 2
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -30,7 +30,7 @@
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
# Epoch is set to ensure clean upgrades from the old v8 package
-%global v8_epoch 1
+%global v8_epoch 2
%global v8_major 7
%global v8_minor 5
%global v8_build 288
@@ -38,6 +38,7 @@
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
+%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
@@ -285,6 +286,7 @@ Libraries to support Node.js and provide stable v8 interfaces.
Summary: v8 - development headers
Epoch: %{v8_epoch}
Version: %{v8_version}
+Release: %{v8_release}%{?dist}
Requires: %{name}-devel%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
%description -n v8-devel
@@ -591,6 +593,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Aug 02 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.7.0-2
+- Change v8-devel release field to avoid duplicated package names
+
* Thu Aug 01 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.7.0-1
- Update to 12.7.0
- https://nodejs.org/en/blog/release/v12.7.0/
commit 3952fecde8f1332222348a7f574e846bdbd1eec4
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Aug 1 15:50:33 2019 -0400
Update to 12.7.0
https://nodejs.org/en/blog/release/v12.7.0/
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 97f212c..699d46e 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,14 +1,14 @@
-From 238fd4c35942ecd020349325772cbb72f80748da Mon Sep 17 00:00:00 2001
+From 03ff54a26a47fce13a83094dcfba7840852bf30c Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
-Subject: [PATCH 1/3] Disable running gyp on shared deps
+Subject: [PATCH 1/4] Disable running gyp on shared deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index e14edb2a034173956f69280844a1cbd6dcd63150..6bd2c02928f21b6afcfb5b97e9734165d9aa3907 100644
+index d7427e578f882034895fc44529d3711c621c06b9..a12edd09252202e98aecaca76cb8457ac98d2ad7 100644
--- a/Makefile
+++ b/Makefile
@@ -139,11 +139,11 @@ with-code-cache:
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 0667bde..7cb8e8e 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,7 +1,7 @@
-From c591d631e1a26010e0dfb72f278f8dc2ed85d218 Mon Sep 17 00:00:00 2001
+From 18ea2d546f5a384d51aad0e7bd39f5b1daaf6471 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
-Subject: [PATCH 2/3] Suppress NPM message to run global update
+Subject: [PATCH 2/4] Suppress NPM message to run global update
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
---
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 8aac370..85aa7e3 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From 783d6dbce0c3777568bbf8ea2218bb1e58b66e02 Mon Sep 17 00:00:00 2001
+From 5cb76403cf796f548ff4a7ed62d6545acb5febe3 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH 3/3] Install both binaries and use libdir.
+Subject: [PATCH 3/4] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -13,10 +13,10 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index b1a04742f00f2a9f23e3f583f8246ff6ec50c797..a0308c848b2a25f8b5f926aaf6eeccd4ffc7b8a7 100755
+index a791efebbca128a2138f61713eb2f5d23b8ced98..32eeee090b5248f5236e75f3201177ec446eb41d 100755
--- a/configure.py
+++ b/configure.py
-@@ -534,10 +534,16 @@ parser.add_option('--shared',
+@@ -550,10 +550,16 @@ parser.add_option('--shared',
action='store_true',
dest='shared',
help='compile shared library for embedding node in another project. ' +
@@ -33,11 +33,11 @@ index b1a04742f00f2a9f23e3f583f8246ff6ec50c797..a0308c848b2a25f8b5f926aaf6eeccd4
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1072,10 +1078,11 @@ def configure_node(o):
+@@ -1096,10 +1102,11 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
# TODO(refack): fix this when implementing embedded code-cache when cross-compiling.
if o['variables']['want_separate_host_toolset'] == 0:
- o['variables']['node_code_cache_path'] = 'yes'
+ o['variables']['node_code_cache'] = 'yes' # For testing
o['variables']['node_shared'] = b(options.shared)
+ o['variables']['libdir'] = options.libdir
node_module_version = getmoduleversion.get_version()
diff --git a/0004-build-include-stubs-in-shared-library.patch b/0004-build-include-stubs-in-shared-library.patch
new file mode 100644
index 0000000..571834c
--- /dev/null
+++ b/0004-build-include-stubs-in-shared-library.patch
@@ -0,0 +1,35 @@
+From 6d3a39df826c88e4ab12b937bef06c5905c08ab7 Mon Sep 17 00:00:00 2001
+From: Jeroen Ooms jeroenooms@gmail.com
+Date: Mon, 29 Jul 2019 20:15:14 +0200
+Subject: [PATCH 4/4] build: include stubs in shared library
+
+This is needed for external applications that link to shared libnode.
+Fixes #27431
+---
+ node.gyp | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/node.gyp b/node.gyp
+index 55b7da02ccaf1835b5fd986aaa320d72f8b7fbf2..4eae262a61e77bb8a9556e42a241b83eda3f0eba 100644
+--- a/node.gyp
++++ b/node.gyp
+@@ -684,10 +684,16 @@
+ # - "C4244: conversion from 'type1' to 'type2', possible loss of data"
+ # Ususaly safe. Disable for `dep`, enable for `src`
+ 'msvs_disabled_warnings!': [4244],
+
+ 'conditions': [
++ [ 'node_shared=="true"', {
++ 'sources': [
++ 'src/node_snapshot_stub.cc',
++ 'src/node_code_cache_stub.cc',
++ ]
++ }],
+ [ 'node_shared=="true" and node_module_version!="" and OS!="win"', {
+ 'product_extension': '<(shlib_suffix)',
+ 'xcode_settings': {
+ 'LD_DYLIB_INSTALL_NAME':
+ '@rpath/lib<(node_core_target_name).<(shlib_suffix)'
+--
+2.21.0
+
diff --git a/nodejs.spec b/nodejs.spec
index dbbdd24..a96b93d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# This is used by both the nodejs package and the npm subpackage thar
# has a separate version - the name is special so that rpmdev-bumpspec
# will bump this rather than adding .1 to the end.
-%global baserelease 2
+%global baserelease 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,7 +19,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 6
+%global nodejs_minor 7
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -66,8 +66,8 @@
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 38
-%global nghttp2_patch 0
+%global nghttp2_minor 39
+%global nghttp2_patch 1
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
@@ -90,7 +90,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 9
+%global npm_minor 10
%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
@@ -133,6 +133,9 @@ Patch2: 0002-Suppress-NPM-message-to-run-global-update.patch
# Patch to install both node and libnode.so, using the correct libdir
Patch3: 0003-Install-both-binaries-and-use-libdir.patch
+# Upstream patch to include stubs in libnode. Drop in 12.8.0
+Patch4: 0004-build-include-stubs-in-shared-library.patch
+
BuildRequires: python2-devel
BuildRequires: python3-devel
BuildRequires: zlib-devel
@@ -588,6 +591,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Aug 01 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.7.0-1
+- Update to 12.7.0
+- https://nodejs.org/en/blog/release/v12.7.0/
+
* Tue Jul 30 2019 Tom Hughes tom@compton.nu - 1:12.6.0-2
- Bump release to fix dependencies
diff --git a/sources b/sources
index af25db2..ad425a8 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.6.0-stripped.tar.gz) = b4f9c31d132e6d53a22733c4ab03468f55aeeff959f9fccb908000b093386dcdd46100e483c9999f38b4630cbda68d113fef8d2cfa023c292f0956fd0e3795db
+SHA512 (node-v12.7.0-stripped.tar.gz) = 267c9a8883b5264d2679dc9306b00533e8cc072e7b59d8b6c9440a6daab0e89fde78f625796f8349210a9b0aafd69ba1f596de32615ae674b8d04f8e185ca311
commit 41276ef42a998675701a7979ad829c3338251415
Author: Tom Hughes tom@compton.nu
Date: Wed Jul 31 10:54:19 2019 +0100
Disable bootstrap mode
diff --git a/nodejs.spec b/nodejs.spec
index 84f6a16..dbbdd24 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
# uncomment to enable bootstrap mode
-%global _with_bootstrap 1
+# %%global _with_bootstrap 1
# bundle dependencies that are not available as Fedora modules
%bcond_with bootstrap
commit c16cb38c5a746c42b081108f523d00a4f2b8d95f
Author: Tom Hughes tom@compton.nu
Date: Wed Jul 31 08:39:25 2019 +0100
Enable bootstrap mode
diff --git a/nodejs.spec b/nodejs.spec
index dbbdd24..84f6a16 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
# uncomment to enable bootstrap mode
-# %%global _with_bootstrap 1
+%global _with_bootstrap 1
# bundle dependencies that are not available as Fedora modules
%bcond_with bootstrap
commit 517073eb590938e95cba95ad934339ae8ce8cd92
Author: Tom Hughes tom@compton.nu
Date: Wed Jul 31 08:38:46 2019 +0100
Remove redundant commented out code and document enabling bootstrap
diff --git a/nodejs.spec b/nodejs.spec
index d5a4ceb..dbbdd24 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,7 @@
+# uncomment to enable bootstrap mode
+# %%global _with_bootstrap 1
+
# bundle dependencies that are not available as Fedora modules
-# %%{!?_with_bootstrap: %%global bootstrap 1}
-# use bcond for building modules
%bcond_with bootstrap
# == Master Relase ==
@@ -140,7 +141,6 @@ BuildRequires: gcc-c++ >= 4.9.4
BuildRequires: chrpath
BuildRequires: libatomic
-#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
Provides: bundled(http-parser) = %{http_parser_version}
Provides: bundled(libuv) = %{libuv_version}
@@ -246,7 +246,6 @@ Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
-#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
# deps are bundled
%else
@@ -368,7 +367,6 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
export LDFLAGS="%{build_ldflags}"
-#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
./configure --prefix=%{_prefix} \
--shared \
@@ -532,7 +530,6 @@ end
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
-#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
# no dtrace
%else
commit 7de27387d943e1411d79842b94784a7c7ac53324
Author: Tom Hughes tom@compton.nu
Date: Wed Jul 31 08:32:42 2019 +0100
Define %baserelease to help rpmdev-bumpspec
diff --git a/nodejs.spec b/nodejs.spec
index e102b6d..d5a4ceb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -3,6 +3,12 @@
# use bcond for building modules
%bcond_with bootstrap
+# == Master Relase ==
+# This is used by both the nodejs package and the npm subpackage thar
+# has a separate version - the name is special so that rpmdev-bumpspec
+# will bump this rather than adding .1 to the end.
+%global baserelease 2
+
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
# == Node.js Version ==
@@ -18,7 +24,7 @@
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release %{baserelease}
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
commit 1cd522fb38c333d400346047fdace3f29c1fdd98
Author: Miro Hrončok miro@hroncok.cz
Date: Wed Jul 31 01:57:32 2019 +0200
Make the inter-package dependencies work after next mass rebuild
This makes sure the dependencies are specified in a way that won't break
next time:
- when possible, use %{version}-%{release} directly to avoid inconsistency
- for npm, make the dependency >= without %{?dist}
- that makes sure it works even with minorbumps
- npm already requires nodejs == E:V-R, so this won't break
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1734582
diff --git a/nodejs.spec b/nodejs.spec
index 7f8a58d..e102b6d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -168,7 +168,7 @@ Requires: openssl >= %{openssl_minimum}
# we need the system certificate store
Requires: ca-certificates
-Requires: nodejs-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: nodejs-libs%{?_isa} = %{epoch}:%{version}-%{release}
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
@@ -219,9 +219,9 @@ Provides: bundled(icu) = %{icu_version}
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?rhel}
# EPEL doesn't support Recommends, so make it strict
-Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
+Requires: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}
%else
-Recommends: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
+Recommends: npm >= %{npm_epoch}:%{npm_version}-%{npm_release}
%endif
@@ -293,7 +293,7 @@ Release: %{npm_release}%{?dist}
# now.
Obsoletes: npm < 0:3.5.4-6
Provides: npm = %{npm_epoch}:%{npm_version}
-Requires: nodejs = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Requires: nodejs = %{epoch}:%{version}-%{release}
# Do not add epoch to the virtual NPM provides or it will break
# the automatic dependency-generation script.
commit ba96d369472bfe962ff6f4886a807ff7bfe65f6a
Author: Tom Hughes tom@compton.nu
Date: Wed Jul 31 00:58:15 2019 +0100
Bump release to fix dependencies
diff --git a/nodejs.spec b/nodejs.spec
index 9bc3b39..7f8a58d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -97,7 +97,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}.1
+Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -286,7 +286,7 @@ Development headers for the v8 runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.1
+Release: %{npm_release}%{?dist}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -585,6 +585,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jul 30 2019 Tom Hughes tom@compton.nu - 1:12.6.0-2
+- Bump release to fix dependencies
+
* Thu Jul 25 2019 Fedora Release Engineering releng@fedoraproject.org - 1:12.6.0-1.1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
commit 49f73cc2e870b8184a34da24d779c56033c36664
Author: Fedora Release Engineering releng@fedoraproject.org
Date: Thu Jul 25 18:46:00 2019 +0000
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index 9ad222a..9bc3b39 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -97,7 +97,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
+Release: %{nodejs_release}%{?dist}.1
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -286,7 +286,7 @@ Development headers for the v8 runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}
+Release: %{npm_release}%{?dist}.1
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -585,6 +585,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jul 25 2019 Fedora Release Engineering releng@fedoraproject.org - 1:12.6.0-1.1
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
+
* Thu Jun 27 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.6.0-1
- Update to 12.6.0
- https://nodejs.org/en/blog/release/v12.6.0/
commit 0fa0c255b833c9f6a3e63ff4858f6ba2336fbc30
Merge: 0b558f6 0217ef1
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jul 23 13:36:24 2019 -0400
Merge branch '12'
commit 0217ef1931929f05d069c7281b713c60408f87c4
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jul 16 13:17:57 2019 -0400
Update to 12.6.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 5f2b0aa..9ad222a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,7 +12,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 5
+%global nodejs_minor 6
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -53,7 +53,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 29
+%global libuv_minor 30
%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -259,7 +259,8 @@ Summary: Node.js and v8 libraries
Provides: libv8.so.%{v8_major}()(64bit)
Provides: libv8_libbase.so.%{v8_major}()(64bit)
Provides: libv8_libplatform.so.%{v8_major}()(64bit)
-%else # 32-bits
+%else
+# 32-bits
Provides: libv8.so.%{v8_major}
Provides: libv8_libbase.so.%{v8_major}
Provides: libv8_libplatform.so.%{v8_major}
@@ -335,15 +336,21 @@ sed -i "s~which('python')~which('python2')~" configure
%build
+%ifarch s390 s390x %{arm} %ix86
+# Decrease debuginfo verbosity to reduce memory consumption during final
+# library linking
+%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
+%endif
+
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
# NULL objects. We need to pass -fno-delete-null-pointer-checks
-export CFLAGS='%{optflags} -g \
+export CFLAGS='%{optflags} \
-D_LARGEFILE_SOURCE \
-D_FILE_OFFSET_BITS=64 \
-DZLIB_CONST \
-fno-delete-null-pointer-checks'
-export CXXFLAGS='%{optflags} -g \
+export CXXFLAGS='%{optflags} \
-D_LARGEFILE_SOURCE \
-D_FILE_OFFSET_BITS=64 \
-DZLIB_CONST \
@@ -578,8 +585,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
-* Thu Jun 27 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.5.0-1
-- Update to 12.5.0
+* Thu Jun 27 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.6.0-1
+- Update to 12.6.0
+- https://nodejs.org/en/blog/release/v12.6.0/
- https://nodejs.org/en/blog/release/v12.5.0/
* Tue Jun 04 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.4.0-1
diff --git a/sources b/sources
index 4a2048a..af25db2 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.5.0-stripped.tar.gz) = 9eec27388eddc766f9b08ef47a3350bdb1d33c17034e3a005c3f2f91e829526d2d5d8ab3bfa3076cb385ea3629de8ffea2e880963dae82c679020ca5b14916a3
+SHA512 (node-v12.6.0-stripped.tar.gz) = b4f9c31d132e6d53a22733c4ab03468f55aeeff959f9fccb908000b093386dcdd46100e483c9999f38b4630cbda68d113fef8d2cfa023c292f0956fd0e3795db
commit 0b558f6e3e9d698560a72cc13c4c9dc435409067
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jul 16 13:17:57 2019 -0400
Update to 12.6.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 5f2b0aa..e183488 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,7 +12,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 5
+%global nodejs_minor 6
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -53,7 +53,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 29
+%global libuv_minor 30
%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -578,8 +578,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
-* Thu Jun 27 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.5.0-1
-- Update to 12.5.0
+* Thu Jun 27 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.6.0-1
+- Update to 12.6.0
+- https://nodejs.org/en/blog/release/v12.6.0/
- https://nodejs.org/en/blog/release/v12.5.0/
* Tue Jun 04 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.4.0-1
diff --git a/sources b/sources
index 4a2048a..af25db2 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.5.0-stripped.tar.gz) = 9eec27388eddc766f9b08ef47a3350bdb1d33c17034e3a005c3f2f91e829526d2d5d8ab3bfa3076cb385ea3629de8ffea2e880963dae82c679020ca5b14916a3
+SHA512 (node-v12.6.0-stripped.tar.gz) = b4f9c31d132e6d53a22733c4ab03468f55aeeff959f9fccb908000b093386dcdd46100e483c9999f38b4630cbda68d113fef8d2cfa023c292f0956fd0e3795db
commit ad26e7b46ecdb12e7d50b29a916e99a51eda6a57
Merge: 420fac3 e892c5e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Jun 27 12:37:35 2019 -0400
Merge branch '12'
commit e892c5e9c537789adfbcb1ce87fb32093127d920
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Jun 27 12:34:52 2019 -0400
Update to 12.5.0
https://nodejs.org/en/blog/release/v12.5.0/
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 5de6457..97f212c 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 684bbd3b112afbb575f971ea23a03d3d228922f7 Mon Sep 17 00:00:00 2001
+From 238fd4c35942ecd020349325772cbb72f80748da Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 5834df883b0c232d2c9187f20e61f35dff4f6cef..ba3cacad0382dc17c4a911ea0c0bb39ced96c650 100644
+index e14edb2a034173956f69280844a1cbd6dcd63150..6bd2c02928f21b6afcfb5b97e9734165d9aa3907 100644
--- a/Makefile
+++ b/Makefile
@@ -139,11 +139,11 @@ with-code-cache:
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 6266f5d..0667bde 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From 162762fc882d56e48283bd6393242ec613bf74c9 Mon Sep 17 00:00:00 2001
+From c591d631e1a26010e0dfb72f278f8dc2ed85d218 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/3] Suppress NPM message to run global update
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 3b7d286..8aac370 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From a3e5296fcb14cf3e00f31864f305fb40720e8718 Mon Sep 17 00:00:00 2001
+From 783d6dbce0c3777568bbf8ea2218bb1e58b66e02 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
@@ -13,7 +13,7 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index 15ea5687cf1cd8e4ebe449ea2fc39eea95fb29b6..a738e300d6098bef4975930422b3fa55b3f5421d 100755
+index b1a04742f00f2a9f23e3f583f8246ff6ec50c797..a0308c848b2a25f8b5f926aaf6eeccd4ffc7b8a7 100755
--- a/configure.py
+++ b/configure.py
@@ -534,10 +534,16 @@ parser.add_option('--shared',
@@ -33,7 +33,7 @@ index 15ea5687cf1cd8e4ebe449ea2fc39eea95fb29b6..a738e300d6098bef4975930422b3fa55
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1065,10 +1071,11 @@ def configure_node(o):
+@@ -1072,10 +1078,11 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
# TODO(refack): fix this when implementing embedded code-cache when cross-compiling.
if o['variables']['want_separate_host_toolset'] == 0:
diff --git a/nodejs.spec b/nodejs.spec
index dc3727f..5f2b0aa 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,7 +12,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 4
+%global nodejs_minor 5
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -25,9 +25,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 1
%global v8_major 7
-%global v8_minor 4
+%global v8_minor 5
%global v8_build 288
-%global v8_patch 27
+%global v8_patch 22
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -48,7 +48,7 @@
# llhttp - from deps/llhttp/include/llhttp.h
%global llhttp_major 1
%global llhttp_minor 1
-%global llhttp_patch 3
+%global llhttp_patch 4
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
# libuv - from deps/uv/include/uv/version.h
@@ -578,6 +578,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jun 27 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.5.0-1
+- Update to 12.5.0
+- https://nodejs.org/en/blog/release/v12.5.0/
+
* Tue Jun 04 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.4.0-1
- Update to 12.4.0
- https://nodejs.org/en/blog/release/v12.4.0/
diff --git a/sources b/sources
index 2c1ee89..4a2048a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.4.0-stripped.tar.gz) = 71619c7d83d9ad7350d0fb6b7389646baa15a7b83b86fed34443f4228ef8e3d8e3d7186364e8da4eaacc743a6d4a2df68556bd8ccd0c12f79114948e0f8f7c76
+SHA512 (node-v12.5.0-stripped.tar.gz) = 9eec27388eddc766f9b08ef47a3350bdb1d33c17034e3a005c3f2f91e829526d2d5d8ab3bfa3076cb385ea3629de8ffea2e880963dae82c679020ca5b14916a3
commit a9185c10486639bdbb0c197ca1c89e012db4194a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jun 18 08:39:32 2019 -0400
Update to 6.17.1 security release
https://nodejs.org/en/blog/release/v6.17.1/
https://nodejs.org/en/blog/release/v6.17.0/
Drop debug build
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 34665da..1fc6100 100644
--- a/.gitignore
+++ b/.gitignore
@@ -81,3 +81,4 @@
/node-v6.14.2-stripped.tar.gz
/node-v6.14.3-stripped.tar.gz
/node-v6.16.0-stripped.tar.gz
+/node-v6.17.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 2a894a5..8f2bc62 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,16 +1,8 @@
-%global with_debug 1
-
# bundle some dependencies missing in Modularity
%bcond_with bootstrap
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
-# ARM builds currently break on the Debug builds, so we'll just
-# build the standard runtime until that gets sorted out.
-%ifarch %{arm} aarch64 %{power64}
-%global with_debug 0
-%endif
-
# == Node.js Version ==
# Note: Fedora should only ship LTS versions of Node.js (currently expected
# to be major versions with even numbers). The odd-numbered versions are new
@@ -18,8 +10,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 6
-%global nodejs_minor 16
-%global nodejs_patch 0
+%global nodejs_minor 17
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -286,12 +278,7 @@ export LDFLAGS="%{__global_ldflags}"
--openssl-use-def-ca-store
%endif
-%if %{?with_debug} == 1
-# Setting BUILDTYPE=Debug builds both release and debug binaries
-make BUILDTYPE=Debug %{?_smp_mflags}
-%else
make BUILDTYPE=Release %{?_smp_mflags}
-%endif
%install
@@ -307,11 +294,6 @@ rm -rf %{buildroot}
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
-%if %{?with_debug} == 1
-# Install the debug binary and set its permissions
-install -Dpm0755 out/Debug/node %{buildroot}/%{_bindir}/node_g
-%endif
-
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
@@ -413,9 +395,6 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%files devel
-%if %{?with_debug} == 1
-%{_bindir}/node_g
-%endif
%{_includedir}/node
%{_datadir}/node/common.gypi
%{_pkgdocdir}/gdbinit
@@ -439,6 +418,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jun 18 2019 Stephen Gallagher sgallagh@redhat.com - 1:6.17.1-1
+- Update to 6.17.1 security release
+- https://nodejs.org/en/blog/release/v6.17.1/
+- https://nodejs.org/en/blog/release/v6.17.0/
+- Drop debug build
+
* Thu Jan 10 2019 Stephen Gallagher sgallagh@redhat.com - 1:6.16.0-2
- Bundle http-parser since it uses backported features not available in RHEL
diff --git a/sources b/sources
index 5d4e0a5..9608953 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.16.0-stripped.tar.gz) = f39f01be5149d08823b94f3609804e360c12f6bfacc80000cb59846492ae14dfb9b648c6bccaf5caadbeba27fb529a9a55d5c54a7ab290d87817a8e571c18a47
+SHA512 (node-v6.17.1-stripped.tar.gz) = 0c89917d14872bfdb94cd2ee428f67093fdef16cbaff5bd96d00960c040c23ce95550d3b634172035b28e214caeac7d2808e0b0b152885deb33b5ec55a6a2f7e
commit 420fac3b3e5087f1762ec4d8510d497ba34a12e2
Merge: 5f5e0d6 c720837
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri Jun 14 08:03:55 2019 -0400
Merge branch '12'
commit c720837b1e69ea0e4bc5db24e8f9c271550df66b
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Jun 4 14:55:08 2019 -0400
Update to 12.4.0
https://nodejs.org/en/blog/release/v12.4.0/
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index ab9e3c3..5de6457 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From f03434acfdb20c85a8e075d71e8b51417dca316a Mon Sep 17 00:00:00 2001
+From 684bbd3b112afbb575f971ea23a03d3d228922f7 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 9759700..6266f5d 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From a7e02e98e41a9f6d20aea653368080ae2a2970c7 Mon Sep 17 00:00:00 2001
+From 162762fc882d56e48283bd6393242ec613bf74c9 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/3] Suppress NPM message to run global update
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 6b87dcd..3b7d286 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From e690915a96b568f6550563491a346aacd8b717a5 Mon Sep 17 00:00:00 2001
+From a3e5296fcb14cf3e00f31864f305fb40720e8718 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
diff --git a/nodejs.spec b/nodejs.spec
index dbee522..dc3727f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,8 +12,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 3
-%global nodejs_patch 1
+%global nodejs_minor 4
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -578,6 +578,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jun 04 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.4.0-1
+- Update to 12.4.0
+- https://nodejs.org/en/blog/release/v12.4.0/
+
* Fri May 24 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.3.1-1
- Update to 12.3.1
- https://nodejs.org/en/blog/release/v12.3.1/
diff --git a/sources b/sources
index c254739..2c1ee89 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.3.1-stripped.tar.gz) = 405b498b81aa9e8e2d9e6da7b8784a30691abed070b2a1bc333b312dac70488e30d87a1b914a4a63cc50b7d7786794fa4327aa236a6d4f2808ee639f2bf5555a
+SHA512 (node-v12.4.0-stripped.tar.gz) = 71619c7d83d9ad7350d0fb6b7389646baa15a7b83b86fed34443f4228ef8e3d8e3d7186364e8da4eaacc743a6d4a2df68556bd8ccd0c12f79114948e0f8f7c76
commit 5f5e0d663d04003b11b288055fb6595381515cdd
Merge: 3e9c033 8839865
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jun 3 10:47:32 2019 -0400
Merge branch '10'
commit 883986537abb091528b6f663407e6ef582bd3d3c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jun 3 10:46:41 2019 -0400
Add %{?dist} to v8_devel release
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index d8bf64a..d37aa52 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -17,7 +17,7 @@
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_soversion 64
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -261,7 +261,7 @@ Libraries to support Node.js and provide stable v8 interfaces.
Summary: v8 - development headers
Epoch: %{v8_epoch}
Version: %{v8_version}
-Release: %{v8_release}
+Release: %{v8_release}%{?dist}
Requires: %{name}-devel%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
%description -n v8-devel
@@ -565,7 +565,7 @@ end
%{_pkgdocdir}/npm/doc
%changelog
-* Mon Jun 03 2019 Stephen Gallagher sgallagh@redhat.com - 1:10.16.0-2
+* Mon Jun 03 2019 Stephen Gallagher sgallagh@redhat.com - 1:10.16.0-3
- Change v8-devel release stream to avoid duplicate NEVRAs
* Fri May 31 2019 Stephen Gallagher sgallagh@redhat.com - 1:10.16.0-1
commit 3e9c033c7be60fdfdfc7d22daf1a748ed55bb743
Merge: f3a2d35 2a2165f
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jun 3 08:33:49 2019 -0400
Merge branch '10'
commit 2a2165f9779495e519d96794a343ec94b516fbe5
Author: Stephen Gallagher sgallagh@redhat.com
Date: Mon Jun 3 08:33:06 2019 -0400
Change v8-devel release stream to avoid duplicate NEVRAs
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index ca236a7..d8bf64a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -17,7 +17,7 @@
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_soversion 64
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -30,6 +30,7 @@
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
+%global v8_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
# c-ares - from deps/cares/include/ares_version.h
# https://github.com/nodejs/node/pull/9332
@@ -260,6 +261,7 @@ Libraries to support Node.js and provide stable v8 interfaces.
Summary: v8 - development headers
Epoch: %{v8_epoch}
Version: %{v8_version}
+Release: %{v8_release}
Requires: %{name}-devel%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
%description -n v8-devel
@@ -563,6 +565,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Jun 03 2019 Stephen Gallagher sgallagh@redhat.com - 1:10.16.0-2
+- Change v8-devel release stream to avoid duplicate NEVRAs
+
* Fri May 31 2019 Stephen Gallagher sgallagh@redhat.com - 1:10.16.0-1
- Update to 10.16.0
- https://nodejs.org/en/blog/release/v10.16.0/
commit f3a2d35eae49d315252bc31ac60db9ef49cb2304
Merge: 4033b07 3e0c220
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri May 31 08:50:42 2019 -0400
Merge branch '10'
commit 3e0c220d1a7900c68522c7a9ce36a511e99d1ddb
Author: Stephen Gallagher sgallagh@redhat.com
Date: Fri May 31 08:50:27 2019 -0400
Update to 10.16.0
https://nodejs.org/en/blog/release/v10.16.0/
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index ba4c437..0a0cdf7 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 223cfda05cf681b8dfe6f24fbb7d5360d1bfdeee Mon Sep 17 00:00:00 2001
+From 99ed2ea42371e85b8df10c99bb70ccedbd0c3884 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index 4e7263924cf19ac3a3a3670d28d835b21820fd6c..78ffc37bf1a39ad8f8a430a507a2fbffb9029a20 100644
+index 92d98f0351c4cec030a0725c8f7adbb37a830787..5b1a4816c354b76d1d7240d4cebefa85b28dc532 100644
--- a/Makefile
+++ b/Makefile
@@ -121,14 +121,13 @@ with-code-cache:
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index fed3000..10d2f31 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From 945b762887c65c2c70024de259e27db8a0a31859 Mon Sep 17 00:00:00 2001
+From 8cc2464baf61529ddbd7749c8238a89eda6930e3 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/3] Suppress NPM message to run global update
@@ -9,10 +9,10 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
1 file changed, 54 deletions(-)
diff --git a/deps/npm/bin/npm-cli.js b/deps/npm/bin/npm-cli.js
-index 6f76b23828531e7af98a7e3cd7d5abfaac09b40c..98edb6f45fe073e03794a2ae6e7aa7f5500723ee 100755
+index 705aa472e7e5502311f24767adfb0aebab396772..e8aebe644f610bb09c3748338fd70e6c8c422cea 100755
--- a/deps/npm/bin/npm-cli.js
+++ b/deps/npm/bin/npm-cli.js
-@@ -67,69 +67,15 @@
+@@ -66,69 +66,15 @@
if (conf.usage && npm.command !== 'help') {
npm.argv.unshift(npm.command)
npm.command = 'help'
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 7b92718..b1acb05 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From ec52fb7c987b3fe68560ae878b4b0f522f01f8a5 Mon Sep 17 00:00:00 2001
+From c340b54b10858215eaa10fd2775e2c0f3c113dd6 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
@@ -13,7 +13,7 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index 0ad986ab82e29fdc436794b7f24e49afe1239dca..a58420fc618fe9ad79dcdc27bb6758f34ffaa481 100755
+index cfd4207d32b8b99fda9ec2b2c0f92695f89ef8a3..eb26f7dfe761aa2585252ced28693b9d441b7452 100755
--- a/configure.py
+++ b/configure.py
@@ -550,10 +550,16 @@ parser.add_option('--shared',
diff --git a/nodejs.spec b/nodejs.spec
index 0801aae..ca236a7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,12 +12,12 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 15
-%global nodejs_patch 3
+%global nodejs_minor 16
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_soversion 64
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -46,8 +46,8 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 23
-%global libuv_patch 2
+%global libuv_minor 28
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -57,15 +57,12 @@
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
-%global icu_major 62
-%global icu_minor 1
+%global icu_major 64
+%global icu_minor 2
%global icu_version %{icu_major}.%{icu_minor}
-%if 0%{?fedora} >= 29
-%global icu_flag system-icu
-%else
+# No Fedora release has 64.2 yet
%global icu_flag small-icu
-%endif
# punycode - from lib/punycode.js
@@ -79,8 +76,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 4
-%global npm_patch 1
+%global npm_minor 9
+%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -566,6 +563,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri May 31 2019 Stephen Gallagher sgallagh@redhat.com - 1:10.16.0-1
+- Update to 10.16.0
+- https://nodejs.org/en/blog/release/v10.16.0/
+
* Wed Apr 24 2019 Stephen Gallagher sgallagh@redhat.com - 1:10.15.3-2
- Fix upgrade bug for v8-devel (BZ #1702609)
diff --git a/sources b/sources
index fd84937..5cbbf73 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.15.3-stripped.tar.gz) = 1f7f38e59cfe370855022f9333a89ecfd99152ec901d1cd600c3915fff310b021f7f75dfde8949350edb6af0ab9f191e665b5829d820c29229b7a8dcd0d966df
+SHA512 (node-v10.16.0-stripped.tar.gz) = 8b753ba18f6e6c8a6a6faa808079ab60c1f06f2da1b73dabf45e066a8ecf21a58f7d91b77e3b7810550f6c043ad5d7cd8cb5f27de05b9fb4e81c4160305276cc
commit 11b4e1cf843b1de47a26951c38a8e526c50e14b3
Author: Stephen Gallagher sgallagh@redhat.com
Date: Sat May 25 09:07:39 2019 -0400
Update to 12.3.1
https://nodejs.org/en/blog/release/v12.3.1/
https://nodejs.org/en/blog/release/v12.3.0/
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 163f11a..ab9e3c3 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 716c544b0272c89458ed168f3459f873be2f3035 Mon Sep 17 00:00:00 2001
+From f03434acfdb20c85a8e075d71e8b51417dca316a Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,10 +8,10 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index d41bf1601fb5990ae70e0e13fb105677ef8f9b86..4d9b363c7c0eeb83f34cedf2266e939d4ad140e7 100644
+index 5834df883b0c232d2c9187f20e61f35dff4f6cef..ba3cacad0382dc17c4a911ea0c0bb39ced96c650 100644
--- a/Makefile
+++ b/Makefile
-@@ -114,11 +114,11 @@ with-code-cache:
+@@ -139,11 +139,11 @@ with-code-cache:
.PHONY: test-code-cache
test-code-cache: with-code-cache
echo "'test-code-cache' target is a noop"
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 7081cde..9759700 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From f60c5f106a993adee0f66e44f70a1fee562108e0 Mon Sep 17 00:00:00 2001
+From a7e02e98e41a9f6d20aea653368080ae2a2970c7 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/3] Suppress NPM message to run global update
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 28b329b..6b87dcd 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 6be87e48c3b907dfb4c75b7f415b5107189799f0 Mon Sep 17 00:00:00 2001
+From e690915a96b568f6550563491a346aacd8b717a5 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
@@ -13,7 +13,7 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index 1dd6da6d2b997a3fea602c7ad4ab6ce4197bfc18..b0ae741588fa91cb4a0f6bd483ae0c6469cbc114 100755
+index 15ea5687cf1cd8e4ebe449ea2fc39eea95fb29b6..a738e300d6098bef4975930422b3fa55b3f5421d 100755
--- a/configure.py
+++ b/configure.py
@@ -534,10 +534,16 @@ parser.add_option('--shared',
diff --git a/nodejs.spec b/nodejs.spec
index 25f2109..dbee522 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,8 +12,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 2
-%global nodejs_patch 0
+%global nodejs_minor 3
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
@@ -27,7 +27,7 @@
%global v8_major 7
%global v8_minor 4
%global v8_build 288
-%global v8_patch 21
+%global v8_patch 27
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -53,8 +53,8 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 28
-%global libuv_patch 0
+%global libuv_minor 29
+%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -578,6 +578,11 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri May 24 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.3.1-1
+- Update to 12.3.1
+- https://nodejs.org/en/blog/release/v12.3.1/
+- https://nodejs.org/en/blog/release/v12.3.0/
+
* Wed May 15 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.2.0-1
- Update to 12.2.0
- https://nodejs.org/en/blog/release/v12.2.0/
diff --git a/sources b/sources
index 7e5b0fb..c254739 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.2.0-stripped.tar.gz) = 668b7777e7c369c5eafb741bf9414ede1f30417cec69d82ec3539af0aff42315ece98e84a183044750802d5cf9283498d5783459fb316741a6aedf6f2a1b4f31
+SHA512 (node-v12.3.1-stripped.tar.gz) = 405b498b81aa9e8e2d9e6da7b8784a30691abed070b2a1bc333b312dac70488e30d87a1b914a4a63cc50b7d7786794fa4327aa236a6d4f2808ee639f2bf5555a
commit 61ea09b3c220b5218d7d0dd25df6890be8332544
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed May 15 20:01:54 2019 -0400
Update to 12.2.0
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 48fe77c..25f2109 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,7 +12,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 1
+%global nodejs_minor 2
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
@@ -48,7 +48,7 @@
# llhttp - from deps/llhttp/include/llhttp.h
%global llhttp_major 1
%global llhttp_minor 1
-%global llhttp_patch 1
+%global llhttp_patch 3
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
# libuv - from deps/uv/include/uv/version.h
@@ -578,6 +578,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Wed May 15 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.2.0-1
+- Update to 12.2.0
+- https://nodejs.org/en/blog/release/v12.2.0/
+
* Tue Apr 30 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.1.0-1
- Update to 12.1.0
- https://nodejs.org/en/blog/release/v12.1.0/
diff --git a/sources b/sources
index 1e6ee1d..7e5b0fb 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.1.0-stripped.tar.gz) = 367111600786d57291725e0452f532d7c8c6bfe72259b654fc2518323cb7c49576fe8678de69b559b93cf7a03ae2a2fe4f116a43bba740b2d2e1df5e49582cae
+SHA512 (node-v12.2.0-stripped.tar.gz) = 668b7777e7c369c5eafb741bf9414ede1f30417cec69d82ec3539af0aff42315ece98e84a183044750802d5cf9283498d5783459fb316741a6aedf6f2a1b4f31
commit a724e428054448646aeaf04ef101cd770e73398d
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Apr 30 08:51:56 2019 -0400
Update to 12.1.0
https://nodejs.org/en/blog/release/v12.1.0/
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 927de9f..163f11a 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From be67711060761dcb520dc538582bc497c978a211 Mon Sep 17 00:00:00 2001
+From 716c544b0272c89458ed168f3459f873be2f3035 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index d04aac3515a1812d120555297f2b340baaea58f8..a91651e22a9d6b7891255071b38217dc358781af 100644
+index d41bf1601fb5990ae70e0e13fb105677ef8f9b86..4d9b363c7c0eeb83f34cedf2266e939d4ad140e7 100644
--- a/Makefile
+++ b/Makefile
@@ -114,11 +114,11 @@ with-code-cache:
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index ccf8774..7081cde 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From a3aeb06b2ed164e220d1ef1ff42256c3e7d0ad25 Mon Sep 17 00:00:00 2001
+From f60c5f106a993adee0f66e44f70a1fee562108e0 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/3] Suppress NPM message to run global update
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index cfd7de0..28b329b 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From 7e18c5370e11d7cecc1801756870c036cf26dd12 Mon Sep 17 00:00:00 2001
+From 6be87e48c3b907dfb4c75b7f415b5107189799f0 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
@@ -13,10 +13,10 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index 1a0819e74113bc22a2e92eb08502b1fc33874343..caeb29d2868e0b88c98c3a5261dedd6305c5bc50 100755
+index 1dd6da6d2b997a3fea602c7ad4ab6ce4197bfc18..b0ae741588fa91cb4a0f6bd483ae0c6469cbc114 100755
--- a/configure.py
+++ b/configure.py
-@@ -529,10 +529,16 @@ parser.add_option('--shared',
+@@ -534,10 +534,16 @@ parser.add_option('--shared',
action='store_true',
dest='shared',
help='compile shared library for embedding node in another project. ' +
@@ -33,7 +33,7 @@ index 1a0819e74113bc22a2e92eb08502b1fc33874343..caeb29d2868e0b88c98c3a5261dedd63
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1053,10 +1059,11 @@ def configure_node(o):
+@@ -1065,10 +1071,11 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
# TODO(refack): fix this when implementing embedded code-cache when cross-compiling.
if o['variables']['want_separate_host_toolset'] == 0:
diff --git a/node-v10.12.0/package.cfg b/node-v10.12.0/package.cfg
deleted file mode 100644
index 832eaab..0000000
--- a/node-v10.12.0/package.cfg
+++ /dev/null
@@ -1,2 +0,0 @@
-[koji]
-targets = master f29
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index 237ae13..e19d80e 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -1,10 +1,12 @@
#!/bin/sh
version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
-rm -f node-v${version}.tar.gz
+rm -f node-v${version}.tar.gz node-v${version}-stripped.tar.gz
wget http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
fedpkg new-sources node-v${version}-stripped.tar.gz
+
+rm -f node-v${version}.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 3adf5d3..48fe77c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,13 +12,13 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 12
-%global nodejs_minor 0
+%global nodejs_minor 1
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -64,19 +64,14 @@
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
-%global icu_major 63
-%global icu_minor 1
+%global icu_major 64
+%global icu_minor 2
%global icu_version %{icu_major}.%{icu_minor}
+%global icu_flag small-icu
# OpenSSL minimum version
%global openssl_minimum 1:1.1.1
-%if 0%{?fedora} >= 30
-%global icu_flag system-icu
-%else
-%global icu_flag small-icu
-%endif
-
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
# Note: this will be unmerged in an upcoming major release
@@ -583,6 +578,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Apr 30 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.1.0-1
+- Update to 12.1.0
+- https://nodejs.org/en/blog/release/v12.1.0/
+
* Wed Apr 24 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.0.0-3
- Fix upgrade bug for v8-devel (BZ #1702609)
diff --git a/sources b/sources
index 8ee313f..1e6ee1d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v12.0.0-stripped.tar.gz) = 68bec09de987059f361a9a7fb25a66eab35bd848a8dd2e000000ac6cc0c6fa2e7ec901ed0cd12e609b3303ecb6b598a10054afc66764d3d43153c323e773cb86
+SHA512 (node-v12.1.0-stripped.tar.gz) = 367111600786d57291725e0452f532d7c8c6bfe72259b654fc2518323cb7c49576fe8678de69b559b93cf7a03ae2a2fe4f116a43bba740b2d2e1df5e49582cae
commit bfa1e93cd6c7a6fa5f2542d5b5c7dd5c122bedd0
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Apr 24 09:00:10 2019 -0400
Fix upgrade bug for v8-devel (BZ #1702609)
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 5135cdd..3adf5d3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -583,6 +583,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Apr 24 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.0.0-3
+- Fix upgrade bug for v8-devel (BZ #1702609)
+
* Tue Apr 23 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.0.0-2
- Node.js 12.x requires OpenSSL 1.1.1+
commit 4033b07c57819ed694181d4681009b3425c18ae6
Merge: 51d8606 ab8672a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Apr 24 09:18:31 2019 -0400
Merge branch '10'
commit ab8672abf9cde5a8152346c285e8365f5039f473
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Apr 24 09:02:28 2019 -0400
Fix upgrade bug for v8-devel (BZ #1702609)
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index de668bb..0801aae 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -17,7 +17,7 @@
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_soversion 64
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -566,6 +566,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Apr 24 2019 Stephen Gallagher sgallagh@redhat.com - 1:10.15.3-2
+- Fix upgrade bug for v8-devel (BZ #1702609)
+
* Tue Apr 09 2019 Stephen Gallagher sgallagh@redhat.com - 1:10.15.3-1
- Update to 10.15.3
- https://nodejs.org/en/blog/release/v10.15.3/
commit fb2650929269e968be8155d5114e36930d25ff17
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Apr 24 08:59:37 2019 -0400
Properly replace v8-devel includes with symlinks
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 39c9304..de668bb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -469,7 +469,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%pretrans -n npm -p <lua>
-- Remove all of the symlinks from the bundled npm node_modules directory
--- This scriptlet can be removed in Fedora 31
+-- Drop this scriptlet when F29 is EOL
base_path = "%{_prefix}/lib/node_modules/npm/node_modules/"
d_st = posix.stat(base_path)
if d_st then
@@ -482,6 +482,23 @@ if d_st then
end
end
+%pretrans -n v8-devel -p <lua>
+-- Replace the v8 libplatform include directory with a symlink
+-- Drop this scriptlet when F30 is EOL
+path = "%{_includedir}/libplatform"
+st = posix.stat(path)
+if st and st.type == "directory" then
+ status = os.rename(path, path .. ".rpmmoved")
+ if not status then
+ suffix = 0
+ while not status do
+ suffix = suffix + 1
+ status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
+ end
+ os.rename(path, path .. ".rpmmoved")
+ end
+end
+
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
@@ -525,6 +542,7 @@ end
%{_libdir}/libv8.so
%{_libdir}/libv8_libbase.so
%{_libdir}/libv8_libplatform.so
+%ghost %{_includedir}/libplatform.rpmmoved
%files -n npm
commit 8d55b79675884b69289e9e8a1b77ebe541201e3e
Author: Stephen Gallagher sgallagh@redhat.com
Date: Wed Apr 24 08:59:37 2019 -0400
Properly replace v8-devel includes with symlinks
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 5eb096e..5135cdd 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -486,7 +486,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%pretrans -n npm -p <lua>
-- Remove all of the symlinks from the bundled npm node_modules directory
--- This scriptlet can be removed in Fedora 31
+-- Drop this scriptlet when F29 is EOL
base_path = "%{_prefix}/lib/node_modules/npm/node_modules/"
d_st = posix.stat(base_path)
if d_st then
@@ -499,6 +499,23 @@ if d_st then
end
end
+%pretrans -n v8-devel -p <lua>
+-- Replace the v8 libplatform include directory with a symlink
+-- Drop this scriptlet when F30 is EOL
+path = "%{_includedir}/libplatform"
+st = posix.stat(path)
+if st and st.type == "directory" then
+ status = os.rename(path, path .. ".rpmmoved")
+ if not status then
+ suffix = 0
+ while not status do
+ suffix = suffix + 1
+ status = os.rename(path .. ".rpmmoved", path .. ".rpmmoved." .. suffix)
+ end
+ os.rename(path, path .. ".rpmmoved")
+ end
+end
+
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
@@ -542,6 +559,7 @@ end
%{_libdir}/libv8.so
%{_libdir}/libv8_libbase.so
%{_libdir}/libv8_libplatform.so
+%ghost %{_includedir}/libplatform.rpmmoved
%files -n npm
commit 76581ac1db6b75d06f54f0edde04701305b9e94c
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Apr 23 21:29:02 2019 -0400
Add Buildrequires: libatomic
s390x requires it to link properly and it's not harmful to have it
available on all arches. Not making it conditional in case it
would cause issues on a future archicture.
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 8c0a52d..5eb096e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -137,6 +137,7 @@ BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
BuildRequires: gcc-c++ >= 4.9.4
BuildRequires: chrpath
+BuildRequires: libatomic
#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
commit ff8041427b9b76c7625c69bad9ac048de28541cc
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Apr 23 17:30:36 2019 -0400
Node.js 12.x requires OpenSSL 1.1.1+
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 69cb8ee..8c0a52d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
%global nodejs_soversion 72
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -68,6 +68,9 @@
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
+# OpenSSL minimum version
+%global openssl_minimum 1:1.1.1
+
%if 0%{?fedora} >= 30
%global icu_flag system-icu
%else
@@ -163,7 +166,8 @@ Provides: bundled(llhttp) = %{llhttp_version}
BuildRequires: libicu-devel >= 62.1
%endif
-BuildRequires: openssl-devel
+BuildRequires: openssl-devel >= %{openssl_minimum}
+Requires: openssl >= %{openssl_minimum}
# we need the system certificate store
Requires: ca-certificates
@@ -560,6 +564,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Apr 23 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.0.0-2
+- Node.js 12.x requires OpenSSL 1.1.1+
+
* Tue Apr 23 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.0.0-1
- Release 12.0.0
- https://nodejs.org/en/blog/release/v12.0.0/
commit 1d1dc74d36847207ce69b46ad40ab9a1ffd33f3a
Author: Stephen Gallagher sgallagh@redhat.com
Date: Tue Apr 23 14:07:13 2019 -0400
Release 12.0.0
- https://nodejs.org/en/blog/release/v12.0.0/
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index f6cb699..927de9f 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,34 +1,29 @@
-From e4d1665c49d00d19be0650f92b98308f3ed251d1 Mon Sep 17 00:00:00 2001
+From be67711060761dcb520dc538582bc497c978a211 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
---
- Makefile | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 3d8ef4dc5764bba4d6ed5bad3cc03a2045c3be86..bb75e85c345662ab5285f6f00be725f33c06cbf5 100644
+index d04aac3515a1812d120555297f2b340baaea58f8..a91651e22a9d6b7891255071b38217dc358781af 100644
--- a/Makefile
+++ b/Makefile
-@@ -122,14 +122,13 @@ with-code-cache:
-
+@@ -114,11 +114,11 @@ with-code-cache:
.PHONY: test-code-cache
test-code-cache: with-code-cache
- $(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) code-cache
+ echo "'test-code-cache' target is a noop"
--out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp \
-- deps/zlib/zlib.gyp deps/v8/gypfiles/toolchain.gypi \
-- deps/v8/gypfiles/features.gypi deps/v8/gypfiles/v8.gyp node.gyp \
-- config.gypi
-+out/Makefile: common.gypi deps/http_parser/http_parser.gyp \
-+ deps/v8/gypfiles/toolchain.gypi deps/v8/gypfiles/features.gypi \
-+ deps/v8/gypfiles/v8.gyp node.gyp config.gypi
+ out/Makefile: config.gypi common.gypi node.gyp \
+- deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp \
++ deps/http_parser/http_parser.gyp \
+ tools/v8_gypfiles/toolchain.gypi tools/v8_gypfiles/features.gypi \
+ tools/v8_gypfiles/inspector.gypi tools/v8_gypfiles/v8.gyp
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure configure.py
- @if [ -x config.status ]; then \
- ./config.status; \
--
2.21.0
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 08f4571..ccf8774 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From aa203e18cd0a5398e5b7e1900ba71a0816c1fd3d Mon Sep 17 00:00:00 2001
+From a3aeb06b2ed164e220d1ef1ff42256c3e7d0ad25 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/3] Suppress NPM message to run global update
@@ -9,10 +9,10 @@ Signed-off-by: Stephen Gallagher sgallagh@redhat.com
1 file changed, 54 deletions(-)
diff --git a/deps/npm/bin/npm-cli.js b/deps/npm/bin/npm-cli.js
-index 6f76b23828531e7af98a7e3cd7d5abfaac09b40c..98edb6f45fe073e03794a2ae6e7aa7f5500723ee 100755
+index 705aa472e7e5502311f24767adfb0aebab396772..e8aebe644f610bb09c3748338fd70e6c8c422cea 100755
--- a/deps/npm/bin/npm-cli.js
+++ b/deps/npm/bin/npm-cli.js
-@@ -67,69 +67,15 @@
+@@ -66,69 +66,15 @@
if (conf.usage && npm.command !== 'help') {
npm.argv.unshift(npm.command)
npm.command = 'help'
diff --git a/0003-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
index 2b77ef0..cfd7de0 100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,4 +1,4 @@
-From bf276a108cf7710220c3ed2a8bd0685478703c9b Mon Sep 17 00:00:00 2001
+From 7e18c5370e11d7cecc1801756870c036cf26dd12 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
Subject: [PATCH 3/3] Install both binaries and use libdir.
@@ -13,10 +13,10 @@ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index 9f780ab9bca150df7a635af00c2976c1fb8156a7..f1f2b129466334436747c3e7f95b7bb6dc245253 100755
+index 1a0819e74113bc22a2e92eb08502b1fc33874343..caeb29d2868e0b88c98c3a5261dedd6305c5bc50 100755
--- a/configure.py
+++ b/configure.py
-@@ -560,10 +560,16 @@ parser.add_option('--shared',
+@@ -529,10 +529,16 @@ parser.add_option('--shared',
action='store_true',
dest='shared',
help='compile shared library for embedding node in another project. ' +
@@ -33,11 +33,11 @@ index 9f780ab9bca150df7a635af00c2976c1fb8156a7..f1f2b129466334436747c3e7f95b7bb6
dest='without_v8_platform',
default=False,
help='do not initialize v8 platform during node.js startup. ' +
-@@ -1106,10 +1112,11 @@ def configure_node(o):
-
+@@ -1053,10 +1059,11 @@ def configure_node(o):
o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
- if options.code_cache_path:
- o['variables']['node_code_cache_path'] = options.code_cache_path
+ # TODO(refack): fix this when implementing embedded code-cache when cross-compiling.
+ if o['variables']['want_separate_host_toolset'] == 0:
+ o['variables']['node_code_cache_path'] = 'yes'
o['variables']['node_shared'] = b(options.shared)
+ o['variables']['libdir'] = options.libdir
node_module_version = getmoduleversion.get_version()
@@ -46,12 +46,12 @@ index 9f780ab9bca150df7a635af00c2976c1fb8156a7..f1f2b129466334436747c3e7f95b7bb6
shlib_suffix = '%s.dylib'
elif sys.platform.startswith('aix'):
diff --git a/tools/install.py b/tools/install.py
-index 3befec213b1ce68b234f0a2602a8acd302fd8422..e7a6c67c3a72ee7745ba45049552a4e8feee5a61 100755
+index 655802980a6ea94d1d4ca1dc63c8c8e905fbb83a..fe4723bf15012c8aacacb0393dc8294c049b0503 100755
--- a/tools/install.py
+++ b/tools/install.py
-@@ -120,30 +120,27 @@ def subdir_files(path, dest, action):
- for subdir, files in ret.items():
- action(files, subdir + '/')
+@@ -119,30 +119,27 @@ def subdir_files(path, dest, action):
+ for subdir, files_in_path in ret.items():
+ action(files_in_path, subdir + '/')
def files(action):
is_windows = sys.platform == 'win32'
diff --git a/nodejs.spec b/nodejs.spec
index ff77541..69cb8ee 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -11,12 +11,12 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 11
-%global nodejs_minor 14
+%global nodejs_major 12
+%global nodejs_minor 0
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
-%global nodejs_soversion 67
+%global nodejs_soversion 72
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -25,9 +25,9 @@
# Epoch is set to ensure clean upgrades from the old v8 package
%global v8_epoch 1
%global v8_major 7
-%global v8_minor 0
-%global v8_build 276
-%global v8_patch 38
+%global v8_minor 4
+%global v8_build 288
+%global v8_patch 21
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -48,18 +48,18 @@
# llhttp - from deps/llhttp/include/llhttp.h
%global llhttp_major 1
%global llhttp_minor 1
-%global llhttp_patch 0
+%global llhttp_patch 1
%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 27
+%global libuv_minor 28
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 34
+%global nghttp2_minor 38
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
@@ -85,7 +85,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 7
+%global npm_minor 9
%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
@@ -324,7 +324,7 @@ The API documentation for the Node.js JavaScript runtime.
rm -rf deps/zlib
# Replace any instances of unversioned python' with python2
-pathfix.py -i %{__python2} -pn $(find -type f)
+pathfix.py -i %{__python2} -pn $(find -type f ! -name "*.js")
find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python2~" {} ;
sed -i "s~python~python2~" $(find . -type f | grep "gyp$")
@@ -560,6 +560,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Apr 23 2019 Stephen Gallagher sgallagh@redhat.com - 1:12.0.0-1
+- Release 12.0.0
+- https://nodejs.org/en/blog/release/v12.0.0/
+
* Thu Apr 11 2019 Stephen Gallagher sgallagh@redhat.com - 1:11.13.0-1
- Update to 11.13.0
- https://nodejs.org/en/blog/release/v11.13.0/
diff --git a/sources b/sources
index 0162cfe..8ee313f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v11.14.0-stripped.tar.gz) = a54c5b885fdbff8de7233f2d88667a0638676fb3461cc99e50e5a022170233f10c6a55cd86e4321fd143f48654dcceca924807aed574558e47e4c821780755f2
+SHA512 (node-v12.0.0-stripped.tar.gz) = 68bec09de987059f361a9a7fb25a66eab35bd848a8dd2e000000ac6cc0c6fa2e7ec901ed0cd12e609b3303ecb6b598a10054afc66764d3d43153c323e773cb86
commit 302af5c550fc929543b94452cac067c8741c4252
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Apr 11 20:02:40 2019 -0400
Fix libnode soversion
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 6301c0c..ff77541 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -15,7 +15,8 @@
%global nodejs_minor 14
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
-%global nodejs_soversion 64
+# nodejs_soversion - from NODE_MODULE_VERSION in src/node_version.h
+%global nodejs_soversion 67
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
commit 8c0820b716faf05dc691e21d0ecfd6926ad9e613
Merge: ce85601 1fa28cd
Author: Stephen Gallagher sgallagh@redhat.com
Date: Thu Apr 11 15:24:13 2019 -0400
Merge branch '10' into 11
diff --cc 0001-Disable-running-gyp-on-shared-deps.patch
index 79cbc7e,ba4c437..f6cb699
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@@ -1,17 -1,17 +1,17 @@@
- From def28d29f907050d8bcd94ed2e341d128ffa3fa6 Mon Sep 17 00:00:00 2001
-From 223cfda05cf681b8dfe6f24fbb7d5360d1bfdeee Mon Sep 17 00:00:00 2001
++From e4d1665c49d00d19be0650f92b98308f3ed251d1 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
- Subject: [PATCH 1/2] Disable running gyp on shared deps
+ Subject: [PATCH 1/3] Disable running gyp on shared deps
---
Makefile | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
- index 5fc2bb0c58f5532044a14e9f9595b2316f562726..f1c1545caa220d7442d6d92c49412ec7554de123 100644
-index 4e7263924cf19ac3a3a3670d28d835b21820fd6c..78ffc37bf1a39ad8f8a430a507a2fbffb9029a20 100644
++index 3d8ef4dc5764bba4d6ed5bad3cc03a2045c3be86..bb75e85c345662ab5285f6f00be725f33c06cbf5 100644
--- a/Makefile
+++ b/Makefile
--@@ -121,14 +121,13 @@ with-code-cache:
++@@ -122,14 +122,13 @@ with-code-cache:
.PHONY: test-code-cache
test-code-cache: with-code-cache
diff --cc 0002-Suppress-NPM-message-to-run-global-update.patch
index fd54ee2,fed3000..08f4571
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@@ -1,7 -1,7 +1,7 @@@
- From ab6c18fd9aba942bee3f2f8030273c846b6025a6 Mon Sep 17 00:00:00 2001
-From 945b762887c65c2c70024de259e27db8a0a31859 Mon Sep 17 00:00:00 2001
++From aa203e18cd0a5398e5b7e1900ba71a0816c1fd3d Mon Sep 17 00:00:00 2001
From: Stephen Gallagher sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
- Subject: [PATCH 2/2] Suppress NPM message to run global update
+ Subject: [PATCH 2/3] Suppress NPM message to run global update
Signed-off-by: Stephen Gallagher sgallagh@redhat.com
---
diff --cc 0003-Install-both-binaries-and-use-libdir.patch
index 0000000,7b92718..2b77ef0
mode 000000,100644..100644
--- a/0003-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@@ -1,0 -1,98 +1,98 @@@
-From ec52fb7c987b3fe68560ae878b4b0f522f01f8a5 Mon Sep 17 00:00:00 2001
++From bf276a108cf7710220c3ed2a8bd0685478703c9b Mon Sep 17 00:00:00 2001
+ From: Elliott Sales de Andrade quantum.analyst@gmail.com
+ Date: Tue, 19 Mar 2019 23:22:40 -0400
+ Subject: [PATCH 3/3] Install both binaries and use libdir.
+
+ This allows us to build with a shared library for other users while
+ still providing the normal executable.
+
+ Signed-off-by: Elliott Sales de Andrade quantum.analyst@gmail.com
+ ---
+ configure.py | 7 +++++++
+ tools/install.py | 29 +++++++++++++----------------
+ 2 files changed, 20 insertions(+), 16 deletions(-)
+
+ diff --git a/configure.py b/configure.py
-index 0ad986ab82e29fdc436794b7f24e49afe1239dca..a58420fc618fe9ad79dcdc27bb6758f34ffaa481 100755
++index 9f780ab9bca150df7a635af00c2976c1fb8156a7..f1f2b129466334436747c3e7f95b7bb6dc245253 100755
+ --- a/configure.py
+ +++ b/configure.py
-@@ -550,10 +550,16 @@ parser.add_option('--shared',
++@@ -560,10 +560,16 @@ parser.add_option('--shared',
+ action='store_true',
+ dest='shared',
+ help='compile shared library for embedding node in another project. ' +
+ '(This mode is not officially supported for regular applications)')
+
+ +parser.add_option('--libdir',
+ + action='store',
+ + dest='libdir',
+ + default='lib',
+ + help='a directory to install the shared library into')
+ +
+ parser.add_option('--without-v8-platform',
+ action='store_true',
+ dest='without_v8_platform',
+ default=False,
+ help='do not initialize v8 platform during node.js startup. ' +
-@@ -1093,10 +1099,11 @@ def configure_node(o):
++@@ -1106,10 +1112,11 @@ def configure_node(o):
+
+ o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
+ if options.code_cache_path:
+ o['variables']['node_code_cache_path'] = options.code_cache_path
+ o['variables']['node_shared'] = b(options.shared)
+ + o['variables']['libdir'] = options.libdir
+ node_module_version = getmoduleversion.get_version()
+
+ if sys.platform == 'darwin':
+ shlib_suffix = '%s.dylib'
+ elif sys.platform.startswith('aix'):
+ diff --git a/tools/install.py b/tools/install.py
-index 028c32ecbbdf9625238dfcc2baef66df9408b539..bf443c4d15a3b3ebf1e10a5dd802e9c5999691e5 100755
++index 3befec213b1ce68b234f0a2602a8acd302fd8422..e7a6c67c3a72ee7745ba45049552a4e8feee5a61 100755
+ --- a/tools/install.py
+ +++ b/tools/install.py
-@@ -115,30 +115,27 @@ def subdir_files(path, dest, action):
++@@ -120,30 +120,27 @@ def subdir_files(path, dest, action):
+ for subdir, files in ret.items():
+ action(files, subdir + '/')
+
+ def files(action):
+ is_windows = sys.platform == 'win32'
+ - output_file = 'node'
+ output_prefix = 'out/Release/'
+ + output_libprefix = output_prefix
+
+ - if 'false' == variables.get('node_shared'):
+ - if is_windows:
+ - output_file += '.exe'
+ + if is_windows:
+ + output_bin = 'node.exe'
+ + output_lib = 'node.dll'
+ else:
+ - if is_windows:
+ - output_file += '.dll'
+ - else:
+ - output_file = 'lib' + output_file + '.' + variables.get('shlib_suffix')
+ - # GYP will output to lib.target except on OS X, this is hardcoded
+ - # in its source - see the _InstallableTargetInstallPath function.
+ - if sys.platform != 'darwin':
+ - output_prefix += 'lib.target/'
+ + output_bin = 'node'
+ + output_lib = 'libnode.' + variables.get('shlib_suffix')
+ + # GYP will output to lib.target except on OS X, this is hardcoded
+ + # in its source - see the _InstallableTargetInstallPath function.
+ + if sys.platform != 'darwin':
+ + output_libprefix += 'lib.target/'
+
+ - if 'false' == variables.get('node_shared'):
+ - action([output_prefix + output_file], 'bin/' + output_file)
+ - else:
+ - action([output_prefix + output_file], 'lib/' + output_file)
+ + action([output_prefix + output_bin], 'bin/' + output_bin)
+ + if 'true' == variables.get('node_shared'):
+ + action([output_libprefix + output_lib], variables.get('libdir') + '/' + output_lib)
+
+ if 'true' == variables.get('node_use_dtrace'):
+ action(['out/Release/node.d'], 'lib/dtrace/node.d')
+
+ # behave similarly for systemtap
+ --
+ 2.21.0
+
diff --cc 0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
index 0436f75,0436f75..0000000
deleted file mode 100644,100644
--- a/0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
+++ /dev/null
@@@ -1,128 -1,128 +1,0 @@@
--From cefa0fd937cb48a8431e62268b2c9500b104d4e5 Mon Sep 17 00:00:00 2001
--From: Junliang Yan jyan@ca.ibm.com
--Date: Wed, 9 May 2018 18:39:49 -0400
--Subject: [PATCH 3/4] [PATCH] PPC: use pc-relative address to init constpool
-- reg
--
--R=joransiu@ca.ibm.com
--
--Change-Id: I67364f29d494b09786a14b13743f73bef4b64582
--Reviewed-on: https://chromium-review.googlesource.com/950242
--Commit-Queue: Junliang Yan jyan@ca.ibm.com
--Reviewed-by: Joran Siu joransiu@ca.ibm.com
--Cr-Commit-Position: refs/heads/master@{#51750}
--
--Signed-off-by: Stephen Gallagher sgallagh@redhat.com
-----
-- deps/v8/src/ppc/macro-assembler-ppc.cc | 14 ++++++++++----
-- deps/v8/src/ppc/macro-assembler-ppc.h | 9 +++++----
-- 2 files changed, 15 insertions(+), 8 deletions(-)
--
--diff --git a/deps/v8/src/ppc/macro-assembler-ppc.cc b/deps/v8/src/ppc/macro-assembler-ppc.cc
--index 68efa84c72c7f6d781d508183b53ea83024944d1..3192e9cefb1c1b116c5e12b5c52e7971b92a111a 100644
----- a/deps/v8/src/ppc/macro-assembler-ppc.cc
--+++ b/deps/v8/src/ppc/macro-assembler-ppc.cc
--@@ -166,11 +166,11 @@ void TurboAssembler::Call(Register target) {
--
-- DCHECK_EQ(CallSize(target), SizeOfCodeGeneratedSince(&start));
-- }
--
-- void MacroAssembler::CallJSEntry(Register target) {
--- DCHECK(target == ip);
--+ CHECK(target == r5);
-- Call(target);
-- }
--
-- int TurboAssembler::CallSize(Address target, RelocInfo::Mode rmode,
-- Condition cond) {
--@@ -823,20 +823,27 @@ void TurboAssembler::ShiftRightAlgPair(Register dst_low, Register dst_high,
-- srawi(dst_high, src_high, shift);
-- }
-- }
-- #endif
--
---void MacroAssembler::LoadConstantPoolPointerRegisterFromCodeTargetAddress(
--+void TurboAssembler::LoadConstantPoolPointerRegisterFromCodeTargetAddress(
-- Register code_target_address) {
-- lwz(kConstantPoolRegister,
-- MemOperand(code_target_address,
-- Code::kConstantPoolOffset - Code::kHeaderSize));
-- add(kConstantPoolRegister, kConstantPoolRegister, code_target_address);
-- }
--
--+void TurboAssembler::LoadPC(Register dst) {
--+ b(4, SetLK);
--+ mflr(dst);
--+}
--+
-- void TurboAssembler::LoadConstantPoolPointerRegister() {
--- mov_label_addr(kConstantPoolRegister, ConstantPoolPosition());
--+ LoadPC(kConstantPoolRegister);
--+ add_label_offset(kConstantPoolRegister, kConstantPoolRegister,
--+ ConstantPoolPosition(), -pc_offset() + 4);
-- }
--
-- void TurboAssembler::StubPrologue(StackFrame::Type type) {
-- {
-- ConstantPoolUnavailableScope constant_pool_unavailable(this);
--@@ -848,11 +855,10 @@ void TurboAssembler::StubPrologue(StackFrame::Type type) {
-- set_constant_pool_available(true);
-- }
-- }
--
-- void TurboAssembler::Prologue() {
--- DCHECK(base != no_reg);
-- PushStandardFrame(r4);
-- if (FLAG_enable_embedded_constant_pool) {
-- // base contains prologue address
-- LoadConstantPoolPointerRegister();
-- set_constant_pool_available(true);
--diff --git a/deps/v8/src/ppc/macro-assembler-ppc.h b/deps/v8/src/ppc/macro-assembler-ppc.h
--index f4d9afd47f150f9cd2e840c20a61e965a5d8f5f5..32e6219c41bbbfe8427e05f2f9a02ff800efcffb 100644
----- a/deps/v8/src/ppc/macro-assembler-ppc.h
--+++ b/deps/v8/src/ppc/macro-assembler-ppc.h
--@@ -214,10 +214,11 @@ class TurboAssembler : public Assembler {
--
-- void LoadSingle(DoubleRegister dst, const MemOperand& mem,
-- Register scratch = no_reg);
-- void LoadSingleU(DoubleRegister dst, const MemOperand& mem,
-- Register scratch = no_reg);
--+ void LoadPC(Register dst);
--
-- void StoreDouble(DoubleRegister src, const MemOperand& mem,
-- Register scratch = no_reg);
-- void StoreDoubleU(DoubleRegister src, const MemOperand& mem,
-- Register scratch = no_reg);
--@@ -639,10 +640,14 @@ class TurboAssembler : public Assembler {
--
-- // Call a code stub.
-- void CallStubDelayed(CodeStub* stub);
--
-- void LoadConstantPoolPointerRegister();
--+
--+ // Loads the constant pool pointer (kConstantPoolRegister).
--+ void LoadConstantPoolPointerRegisterFromCodeTargetAddress(
--+ Register code_target_address);
-- void AbortConstantPoolBuilding() {
-- #ifdef DEBUG
-- // Avoid DCHECK(!is_linked()) failure in ~Label()
-- bind(ConstantPoolPosition());
-- #endif
--@@ -733,14 +738,10 @@ class MacroAssembler : public TurboAssembler {
-- // Push and pop the registers that can hold pointers, as defined by the
-- // RegList constant kSafepointSavedRegisters.
-- void PushSafepointRegisters();
-- void PopSafepointRegisters();
--
--- // Loads the constant pool pointer (kConstantPoolRegister).
--- void LoadConstantPoolPointerRegisterFromCodeTargetAddress(
--- Register code_target_address);
---
-- // Flush the I-cache from asm code. You should use CpuFeatures::FlushICache
-- // from C.
-- // Does not handle errors.
-- void FlushICache(Register address, size_t size, Register scratch);
--
----
--2.17.0
--
diff --cc nodejs.spec
index 3e62800,39c9304..6301c0c
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -13,19 -11,22 +11,22 @@@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 10
-%global nodejs_minor 15
-%global nodejs_patch 3
+%global nodejs_major 11
- %global nodejs_minor 13
++%global nodejs_minor 14
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+ %global nodejs_soversion 64
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
+ # Epoch is set to ensure clean upgrades from the old v8 package
+ %global v8_epoch 1
-%global v8_major 6
-%global v8_minor 8
-%global v8_build 275
-%global v8_patch 32
+%global v8_major 7
+%global v8_minor 0
+%global v8_build 276
+%global v8_patch 38
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@@ -43,10 -44,10 +44,16 @@@
%global http_parser_patch 0
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
++# llhttp - from deps/llhttp/include/llhttp.h
++%global llhttp_major 1
++%global llhttp_minor 1
++%global llhttp_patch 0
++%global llhttp_version %{llhttp_major}.%{llhttp_minor}.%{llhttp_patch}
++
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 23
-%global libuv_patch 2
+%global libuv_minor 27
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@@ -137,6 -143,6 +148,13 @@@ BuildRequires: libuv-devel >= 1:%{libuv
Requires: libuv >= 1:%{libuv_version}
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
Requires: libnghttp2 >= %{nghttp2_version}
++
++# Temporarily bundle http-parser and llhttp because the latter
++# isn't packaged yet and they are controlled by the same
++# configure flag.
++Provides: bundled(http-parser) = %{http_parser_version}
++Provides: bundled(llhttp) = %{llhttp_version}
++
%endif
@@@ -320,7 -360,7 +372,6 @@@ export LDFLAGS="%{build_ldflags}
--shared-openssl \
--shared-zlib \
--shared-libuv \
-- --shared-http-parser \
--shared-nghttp2 \
--with-dtrace \
--with-intl=%{icu_flag} \
diff --cc sources
index a8170a8,fd84937..0162cfe
--- a/sources
+++ b/sources
@@@ -1,1 -1,1 +1,1 @@@
- SHA512 (node-v11.13.0-stripped.tar.gz) = e64caa043c324612c96f7b6c20876474d4f3bea6fcc0838bdd7aaa9d514b12506605312b3391fa79caba2bbf297c10bfa2f46fbde2399cd025d745f745c328c2
-SHA512 (node-v10.15.3-stripped.tar.gz) = 1f7f38e59cfe370855022f9333a89ecfd99152ec901d1cd600c3915fff310b021f7f75dfde8949350edb6af0ab9f191e665b5829d820c29229b7a8dcd0d966df
++SHA512 (node-v11.14.0-stripped.tar.gz) = a54c5b885fdbff8de7233f2d88667a0638676fb3461cc99e50e5a022170233f10c6a55cd86e4321fd143f48654dcceca924807aed574558e47e4c821780755f2
commit ce8560141558011372e5bd1d0dc490f1d25d35db
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Apr 11 11:30:16 2019 -0400
Update to 11.13.0
https://nodejs.org/en/blog/release/v11.13.0/
https://nodejs.org/en/blog/release/v11.12.0/
https://nodejs.org/en/blog/release/v11.11.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 06dbbad..3e62800 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -14,8 +14,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 11
-%global nodejs_minor 10
-%global nodejs_patch 1
+%global nodejs_minor 13
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -45,7 +45,7 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 26
+%global libuv_minor 27
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -487,6 +487,12 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Apr 11 2019 Stephen Gallagher
sgallagh@redhat.com - 1:11.13.0-1
+- Update to 11.13.0
+-
https://nodejs.org/en/blog/release/v11.13.0/
+-
https://nodejs.org/en/blog/release/v11.12.0/
+-
https://nodejs.org/en/blog/release/v11.11.0/
+
* Fri Mar 01 2019 Stephen Gallagher
sgallagh@redhat.com - 1:11.10.1-1
- Update to 11.10.1
-
https://nodejs.org/en/blog/release/v11.10.1/
diff --git a/sources b/sources
index 49b35c0..a8170a8 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v11.10.1-stripped.tar.gz) = dda65905d0ca860f1521777463c49ddabec59444f3fc2143472dd9525ac860108221ff1768f984a7f5d1ca7abd330be86520ac7937243349cc2b0b1d6566b51d
+SHA512 (node-v11.13.0-stripped.tar.gz) = e64caa043c324612c96f7b6c20876474d4f3bea6fcc0838bdd7aaa9d514b12506605312b3391fa79caba2bbf297c10bfa2f46fbde2399cd025d745f745c328c2
commit 51d8606600ec82dd3b346c7867e8739be79bfa61
Merge: a1eb1bc 1fa28cd
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Apr 9 21:26:29 2019 -0400
Merge branch '10'
commit 1fa28cdbc461114b4cf649cf81bd0ba5f6c896aa
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Apr 9 21:23:05 2019 -0400
Rebase patches for 10.15.3
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 9eaaca4..ba4c437 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 443fef828092b315a207a194f5fe74e52e451996 Mon Sep 17 00:00:00 2001
+From 223cfda05cf681b8dfe6f24fbb7d5360d1bfdeee Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/3] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index 3a343301d640bc7fd41e9680c74455bb260a950d..d2b9c13ee3e53d957ed32476e40fb09e41fcfded 100644
+index 4e7263924cf19ac3a3a3670d28d835b21820fd6c..78ffc37bf1a39ad8f8a430a507a2fbffb9029a20 100644
--- a/Makefile
+++ b/Makefile
@@ -121,14 +121,13 @@ with-code-cache:
@@ -30,5 +30,5 @@ index 3a343301d640bc7fd41e9680c74455bb260a950d..d2b9c13ee3e53d957ed32476e40fb09e
@if [ -x config.status ]; then \
./config.status; \
--
-2.20.1
+2.21.0
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index ceb2723..fed3000 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From 0fd4649d1943f45cb06bda6febdc7ffa7d5859b2 Mon Sep 17 00:00:00 2001
+From 945b762887c65c2c70024de259e27db8a0a31859 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/3] Suppress NPM message to run global update
@@ -83,5 +83,5 @@ index 6f76b23828531e7af98a7e3cd7d5abfaac09b40c..98edb6f45fe073e03794a2ae6e7aa7f5
!err &&
npm.config.get('ham-it-up') &&
--
-2.20.1
+2.21.0
diff --git a/0001-Install-both-binaries-and-use-libdir.patch b/0003-Install-both-binaries-and-use-libdir.patch
similarity index 73%
rename from 0001-Install-both-binaries-and-use-libdir.patch
rename to 0003-Install-both-binaries-and-use-libdir.patch
index 23dcb31..7b92718 100644
--- a/0001-Install-both-binaries-and-use-libdir.patch
+++ b/0003-Install-both-binaries-and-use-libdir.patch
@@ -1,7 +1,7 @@
-From c38964d69ebb93e2273eca4bdcc4370fa26926f8 Mon Sep 17 00:00:00 2001
+From ec52fb7c987b3fe68560ae878b4b0f522f01f8a5 Mon Sep 17 00:00:00 2001
From: Elliott Sales de Andrade
quantum.analyst@gmail.com
Date: Tue, 19 Mar 2019 23:22:40 -0400
-Subject: [PATCH] Install both binaries and use libdir.
+Subject: [PATCH 3/3] Install both binaries and use libdir.
This allows us to build with a shared library for other users while
still providing the normal executable.
@@ -9,14 +9,16 @@ still providing the normal executable.
Signed-off-by: Elliott Sales de Andrade
quantum.analyst@gmail.com
---
configure.py | 7 +++++++
- tools/install.py | 31 ++++++++++++++-----------------
- 2 files changed, 21 insertions(+), 17 deletions(-)
+ tools/install.py | 29 +++++++++++++----------------
+ 2 files changed, 20 insertions(+), 16 deletions(-)
diff --git a/configure.py b/configure.py
-index b62be2302c..0924fa96dc 100755
+index 0ad986ab82e29fdc436794b7f24e49afe1239dca..a58420fc618fe9ad79dcdc27bb6758f34ffaa481 100755
--- a/configure.py
+++ b/configure.py
-@@ -552,6 +552,12 @@ parser.add_option('--shared',
+@@ -550,10 +550,16 @@ parser.add_option('--shared',
+ action='store_true',
+ dest='shared',
help='compile shared library for embedding node in another project. ' +
'(This mode is not officially supported for regular applications)')
@@ -29,7 +31,11 @@ index b62be2302c..0924fa96dc 100755
parser.add_option('--without-v8-platform',
action='store_true',
dest='without_v8_platform',
-@@ -1094,6 +1100,7 @@ def configure_node(o):
+ default=False,
+ help='do not initialize v8 platform during node.js startup. ' +
+@@ -1093,10 +1099,11 @@ def configure_node(o):
+
+ o['variables']['node_no_browser_globals'] = b(options.no_browser_globals)
if options.code_cache_path:
o['variables']['node_code_cache_path'] = options.code_cache_path
o['variables']['node_shared'] = b(options.shared)
@@ -37,11 +43,15 @@ index b62be2302c..0924fa96dc 100755
node_module_version = getmoduleversion.get_version()
if sys.platform == 'darwin':
+ shlib_suffix = '%s.dylib'
+ elif sys.platform.startswith('aix'):
diff --git a/tools/install.py b/tools/install.py
-index ce9ceeee1d..5ac67b714e 100755
+index 028c32ecbbdf9625238dfcc2baef66df9408b539..bf443c4d15a3b3ebf1e10a5dd802e9c5999691e5 100755
--- a/tools/install.py
+++ b/tools/install.py
-@@ -116,26 +116,23 @@ def subdir_files(path, dest, action):
+@@ -115,30 +115,27 @@ def subdir_files(path, dest, action):
+ for subdir, files in ret.items():
+ action(files, subdir + '/')
def files(action):
is_windows = sys.platform == 'win32'
@@ -64,24 +74,25 @@ index ce9ceeee1d..5ac67b714e 100755
- # in its source - see the _InstallableTargetInstallPath function.
- if sys.platform != 'darwin':
- output_prefix += 'lib.target/'
--
-- if 'false' == variables.get('node_shared'):
-- action([output_prefix + output_file], 'bin/' + output_file)
-- else:
-- action([output_prefix + output_file], 'lib/' + output_file)
+ output_bin = 'node'
+ output_lib = 'libnode.' + variables.get('shlib_suffix')
+ # GYP will output to lib.target except on OS X, this is hardcoded
+ # in its source - see the _InstallableTargetInstallPath function.
+ if sys.platform != 'darwin':
+ output_libprefix += 'lib.target/'
-+
+
+- if 'false' == variables.get('node_shared'):
+- action([output_prefix + output_file], 'bin/' + output_file)
+- else:
+- action([output_prefix + output_file], 'lib/' + output_file)
+ action([output_prefix + output_bin], 'bin/' + output_bin)
+ if 'true' == variables.get('node_shared'):
+ action([output_libprefix + output_lib], variables.get('libdir') + '/' + output_lib)
if 'true' == variables.get('node_use_dtrace'):
action(['out/Release/node.d'], 'lib/dtrace/node.d')
+
+ # behave similarly for systemtap
--
-2.20.1
+2.21.0
diff --git a/nodejs.spec b/nodejs.spec
index 9701af7..39c9304 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -119,12 +119,8 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# This does bad things on an RPM-managed npm.
Patch2: 0002-Suppress-NPM-message-to-run-global-update.patch
-
-# Upstream patch to fix debug generation on PowerPC
-Patch3: 0003-deps-V8-cherry-pick-d0468de.patch
-
# Patch to install both node and libnode.so, using the correct libdir
-Patch5: 0001-Install-both-binaries-and-use-libdir.patch
+Patch3: 0003-Install-both-binaries-and-use-libdir.patch
BuildRequires: python2-devel
BuildRequires: python3-devel
@@ -555,6 +551,7 @@ end
* Tue Apr 09 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.3-1
- Update to 10.15.3
-
https://nodejs.org/en/blog/release/v10.15.3/
+- Drop upstreamed patch
* Tue Apr 09 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.2-3
- Separate nodejs-libs out to its own subpackage
commit a1eb1bcc0831a44ba6171329dc6d156709cb4256
Merge: 115810f b8917d8
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Apr 9 20:39:39 2019 -0400
Merge branch '10'
commit b8917d838d8629286107553226d3286d3012beb8
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Apr 9 20:38:40 2019 -0400
Update to 10.15.3
https://nodejs.org/en/blog/release/v10.15.3/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index f42933a..9701af7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -13,11 +13,11 @@
%global nodejs_epoch 1
%global nodejs_major 10
%global nodejs_minor 15
-%global nodejs_patch 2
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_soversion 64
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -552,6 +552,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Apr 09 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.3-1
+- Update to 10.15.3
+-
https://nodejs.org/en/blog/release/v10.15.3/
+
* Tue Apr 09 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.2-3
- Separate nodejs-libs out to its own subpackage
- Clean up compatibility virtual Provides
diff --git a/sources b/sources
index 23724af..fd84937 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.15.2-stripped.tar.gz) = f7971cbeb94bc7079bca090546b30608f333a95b3e82c7fccd581a84ebc21496fd5ee595ce66abce0fdf484d6a2f9d818a2d7110833adec8daa73b885108a19f
+SHA512 (node-v10.15.3-stripped.tar.gz) = 1f7f38e59cfe370855022f9333a89ecfd99152ec901d1cd600c3915fff310b021f7f75dfde8949350edb6af0ab9f191e665b5829d820c29229b7a8dcd0d966df
commit 115810f425ae1b4031211bc983d4ffc90ef1bcb8
Merge: a99828d c29f89e
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Apr 9 19:54:52 2019 -0400
Merge branch '10'
commit c29f89eb9a8997c8e167316c9c835355622f9377
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Apr 9 10:40:26 2019 -0400
Split libnode into a nodejs-libs subpackage
Clean up provides and epoch
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 3a0e62c..f42933a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -17,10 +17,12 @@
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_soversion 64
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
+# Epoch is set to ensure clean upgrades from the old v8 package
+%global v8_epoch 1
%global v8_major 6
%global v8_minor 8
%global v8_build 275
@@ -157,21 +159,8 @@ BuildRequires: openssl-devel
# we need the system certificate store
Requires: ca-certificates
-# Compatibility for obsolete v8 package
-%ifarch %{ix86} x86_64 %{arm}
-%ifarch x86_64
-Provides: libv8.so.%{v8_major}()(64bit)
-Provides: libv8_libbase.so.%{v8_major}()(64bit)
-Provides: libv8_libplatform.so.%{v8_major}()(64bit)
-%else
-Provides: libv8.so.%{v8_major}
-Provides: libv8_libbase.so.%{v8_major}
-Provides: libv8_libplatform.so.%{v8_major}
-%endif
-Provides: v8 = %{epoch}:%{v8_version}-%{nodejs_release}%{?dist}
-Provides: v8%{?_isa} = %{epoch}:%{v8_version}-%{nodejs_release}%{?dist}
-Obsoletes: v8 < 1:6.7.17-10
-%endif
+Requires: nodejs-libs%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
#break when binary compatibility is broken
@@ -253,8 +242,30 @@ Requires: libuv-devel%{?_isa}
%description devel
Development headers for the Node.js JavaScript runtime.
+%package libs
+Summary: Node.js and v8 libraries
+
+# Compatibility for obsolete v8 package
+%if 0%{?__isa_bits} == 64
+Provides: libv8.so.%{v8_major}()(64bit)
+Provides: libv8_libbase.so.%{v8_major}()(64bit)
+Provides: libv8_libplatform.so.%{v8_major}()(64bit)
+%else # 32-bits
+Provides: libv8.so.%{v8_major}
+Provides: libv8_libbase.so.%{v8_major}
+Provides: libv8_libplatform.so.%{v8_major}
+%endif
+
+Provides: v8 = %{v8_epoch}:%{v8_version}-%{nodejs_release}%{?dist}
+Provides: v8%{?_isa} = %{v8_epoch}:%{v8_version}-%{nodejs_release}%{?dist}
+Obsoletes: v8 < 1:6.7.17-10
+
+%description libs
+Libraries to support Node.js and provide stable v8 interfaces.
+
%package -n v8-devel
Summary: v8 - development headers
+Epoch: %{v8_epoch}
Version: %{v8_version}
Requires: %{name}-devel%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
@@ -383,9 +394,7 @@ for header in %{buildroot}%{_includedir}/node/libplatform %{buildroot}%{_include
done
for soname in libv8 libv8_libbase libv8_libplatform; do
ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so
-%ifarch %{ix86} x86_64 %{arm}
ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
-%endif
done
# own the sitelib directory
@@ -479,12 +488,6 @@ end
%files
%{_bindir}/node
-%{_libdir}/libnode.so.%{nodejs_soversion}
-%ifarch %{ix86} x86_64 %{arm}
-%{_libdir}/libv8.so.%{v8_major}
-%{_libdir}/libv8_libbase.so.%{v8_major}
-%{_libdir}/libv8_libplatform.so.%{v8_major}
-%endif
%dir %{_prefix}/lib/node_modules
%dir %{_datadir}/node
%dir %{_datadir}/systemtap
@@ -513,6 +516,13 @@ end
%{_pkgdocdir}/gdbinit
+%files libs
+%{_libdir}/libnode.so.%{nodejs_soversion}
+%{_libdir}/libv8.so.%{v8_major}
+%{_libdir}/libv8_libbase.so.%{v8_major}
+%{_libdir}/libv8_libplatform.so.%{v8_major}
+
+
%files -n v8-devel
%{_includedir}/libplatform
%{_includedir}/v8*.h
@@ -542,6 +552,11 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Apr 09 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.2-3
+- Separate nodejs-libs out to its own subpackage
+- Clean up compatibility virtual Provides
+- Set epoch for v8-devel to maintain upgrade path
+
* Sun Mar 17 2019 Elliott Sales de Andrade
quantum.analyst@gmail.com - 1:10.15.2-2
- Drop debug executable
- Build with a shared library
commit d3df05b0b2224ba3a2a5aee2b4f3e1dce85951a0
Author: Elliott Sales de Andrade
quantum.analyst@gmail.com
Date: Wed Mar 20 04:54:52 2019 +0000
Add v8 compatibility subpackage.
diff --git a/nodejs.spec b/nodejs.spec
index b80f0fa..3a0e62c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -157,6 +157,22 @@ BuildRequires: openssl-devel
# we need the system certificate store
Requires: ca-certificates
+# Compatibility for obsolete v8 package
+%ifarch %{ix86} x86_64 %{arm}
+%ifarch x86_64
+Provides: libv8.so.%{v8_major}()(64bit)
+Provides: libv8_libbase.so.%{v8_major}()(64bit)
+Provides: libv8_libplatform.so.%{v8_major}()(64bit)
+%else
+Provides: libv8.so.%{v8_major}
+Provides: libv8_libbase.so.%{v8_major}
+Provides: libv8_libplatform.so.%{v8_major}
+%endif
+Provides: v8 = %{epoch}:%{v8_version}-%{nodejs_release}%{?dist}
+Provides: v8%{?_isa} = %{epoch}:%{v8_version}-%{nodejs_release}%{?dist}
+Obsoletes: v8 < 1:6.7.17-10
+%endif
+
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
#break when binary compatibility is broken
Provides: nodejs(abi) = %{nodejs_abi}
@@ -237,6 +253,14 @@ Requires: libuv-devel%{?_isa}
%description devel
Development headers for the Node.js JavaScript runtime.
+%package -n v8-devel
+Summary: v8 - development headers
+Version: %{v8_version}
+Requires: %{name}-devel%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+
+%description -n v8-devel
+Development headers for the v8 runtime.
+
%package -n npm
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
@@ -352,6 +376,18 @@ chrpath --delete %{buildroot}%{_bindir}/node
# Install library symlink
ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/libnode.so
+# Install v8 compatibility symlinks
+for header in %{buildroot}%{_includedir}/node/libplatform %{buildroot}%{_includedir}/node/v8*.h; do
+ header=$(basename ${header})
+ ln -s %{_includedir}/node/${header} %{buildroot}%{_includedir}/${header}
+done
+for soname in libv8 libv8_libbase libv8_libplatform; do
+ ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so
+%ifarch %{ix86} x86_64 %{arm}
+ ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/${soname}.so.%{v8_major}
+%endif
+done
+
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
@@ -444,6 +480,11 @@ end
%files
%{_bindir}/node
%{_libdir}/libnode.so.%{nodejs_soversion}
+%ifarch %{ix86} x86_64 %{arm}
+%{_libdir}/libv8.so.%{v8_major}
+%{_libdir}/libv8_libbase.so.%{v8_major}
+%{_libdir}/libv8_libplatform.so.%{v8_major}
+%endif
%dir %{_prefix}/lib/node_modules
%dir %{_datadir}/node
%dir %{_datadir}/systemtap
@@ -472,6 +513,14 @@ end
%{_pkgdocdir}/gdbinit
+%files -n v8-devel
+%{_includedir}/libplatform
+%{_includedir}/v8*.h
+%{_libdir}/libv8.so
+%{_libdir}/libv8_libbase.so
+%{_libdir}/libv8_libplatform.so
+
+
%files -n npm
%{_bindir}/npm
%{_bindir}/npx
@@ -493,9 +542,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
-* Thu Mar 14 2019 Elliott Sales de Andrade
quantum.analyst@gmail.com - 1:10.15.2-2
+* Sun Mar 17 2019 Elliott Sales de Andrade
quantum.analyst@gmail.com - 1:10.15.2-2
- Drop debug executable
- Build with a shared library
+- Add v8 compatibility subpackage
* Fri Mar 01 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.2-1
- Update to 10.15.2
commit 3dd1c93fd4881e468d717b8df28e7370b78ee84b
Author: Elliott Sales de Andrade
quantum.analyst@gmail.com
Date: Wed Mar 20 03:25:48 2019 +0000
Build with a shared library.
diff --git a/0001-Install-both-binaries-and-use-libdir.patch b/0001-Install-both-binaries-and-use-libdir.patch
new file mode 100644
index 0000000..23dcb31
--- /dev/null
+++ b/0001-Install-both-binaries-and-use-libdir.patch
@@ -0,0 +1,87 @@
+From c38964d69ebb93e2273eca4bdcc4370fa26926f8 Mon Sep 17 00:00:00 2001
+From: Elliott Sales de Andrade
quantum.analyst@gmail.com
+Date: Tue, 19 Mar 2019 23:22:40 -0400
+Subject: [PATCH] Install both binaries and use libdir.
+
+This allows us to build with a shared library for other users while
+still providing the normal executable.
+
+Signed-off-by: Elliott Sales de Andrade
quantum.analyst@gmail.com
+---
+ configure.py | 7 +++++++
+ tools/install.py | 31 ++++++++++++++-----------------
+ 2 files changed, 21 insertions(+), 17 deletions(-)
+
+diff --git a/configure.py b/configure.py
+index b62be2302c..0924fa96dc 100755
+--- a/configure.py
++++ b/configure.py
+@@ -552,6 +552,12 @@ parser.add_option('--shared',
+ help='compile shared library for embedding node in another project. ' +
+ '(This mode is not officially supported for regular applications)')
+
++parser.add_option('--libdir',
++ action='store',
++ dest='libdir',
++ default='lib',
++ help='a directory to install the shared library into')
++
+ parser.add_option('--without-v8-platform',
+ action='store_true',
+ dest='without_v8_platform',
+@@ -1094,6 +1100,7 @@ def configure_node(o):
+ if options.code_cache_path:
+ o['variables']['node_code_cache_path'] = options.code_cache_path
+ o['variables']['node_shared'] = b(options.shared)
++ o['variables']['libdir'] = options.libdir
+ node_module_version = getmoduleversion.get_version()
+
+ if sys.platform == 'darwin':
+diff --git a/tools/install.py b/tools/install.py
+index ce9ceeee1d..5ac67b714e 100755
+--- a/tools/install.py
++++ b/tools/install.py
+@@ -116,26 +116,23 @@ def subdir_files(path, dest, action):
+
+ def files(action):
+ is_windows = sys.platform == 'win32'
+- output_file = 'node'
+ output_prefix = 'out/Release/'
++ output_libprefix = output_prefix
+
+- if 'false' == variables.get('node_shared'):
+- if is_windows:
+- output_file += '.exe'
++ if is_windows:
++ output_bin = 'node.exe'
++ output_lib = 'node.dll'
+ else:
+- if is_windows:
+- output_file += '.dll'
+- else:
+- output_file = 'lib' + output_file + '.' + variables.get('shlib_suffix')
+- # GYP will output to lib.target except on OS X, this is hardcoded
+- # in its source - see the _InstallableTargetInstallPath function.
+- if sys.platform != 'darwin':
+- output_prefix += 'lib.target/'
+-
+- if 'false' == variables.get('node_shared'):
+- action([output_prefix + output_file], 'bin/' + output_file)
+- else:
+- action([output_prefix + output_file], 'lib/' + output_file)
++ output_bin = 'node'
++ output_lib = 'libnode.' + variables.get('shlib_suffix')
++ # GYP will output to lib.target except on OS X, this is hardcoded
++ # in its source - see the _InstallableTargetInstallPath function.
++ if sys.platform != 'darwin':
++ output_libprefix += 'lib.target/'
++
++ action([output_prefix + output_bin], 'bin/' + output_bin)
++ if 'true' == variables.get('node_shared'):
++ action([output_libprefix + output_lib], variables.get('libdir') + '/' + output_lib)
+
+ if 'true' == variables.get('node_use_dtrace'):
+ action(['out/Release/node.d'], 'lib/dtrace/node.d')
+--
+2.20.1
+
diff --git a/nodejs.spec b/nodejs.spec
index 5797775..b80f0fa 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -15,6 +15,7 @@
%global nodejs_minor 15
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+%global nodejs_soversion 64
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 2
@@ -120,11 +121,15 @@ Patch2: 0002-Suppress-NPM-message-to-run-global-update.patch
# Upstream patch to fix debug generation on PowerPC
Patch3: 0003-deps-V8-cherry-pick-d0468de.patch
+# Patch to install both node and libnode.so, using the correct libdir
+Patch5: 0001-Install-both-binaries-and-use-libdir.patch
+
BuildRequires: python2-devel
BuildRequires: python3-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
BuildRequires: gcc-c++ >= 4.9.4
+BuildRequires: chrpath
#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
@@ -309,6 +314,8 @@ export LDFLAGS="%{build_ldflags}"
#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
./configure --prefix=%{_prefix} \
+ --shared \
+ --libdir=%{_lib} \
--shared-openssl \
--shared-zlib \
--without-dtrace \
@@ -317,6 +324,8 @@ export LDFLAGS="%{build_ldflags}"
--openssl-use-def-ca-store
%else
./configure --prefix=%{_prefix} \
+ --shared \
+ --libdir=%{_lib} \
--shared-openssl \
--shared-zlib \
--shared-libuv \
@@ -338,6 +347,10 @@ rm -rf %{buildroot}
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
+chrpath --delete %{buildroot}%{_bindir}/node
+
+# Install library symlink
+ln -s %{_libdir}/libnode.so.%{nodejs_soversion} %{buildroot}%{_libdir}/libnode.so
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
@@ -402,15 +415,15 @@ chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin
%check
# Fail the build if the versions don't match
-%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
-%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8.replace(/-node.\d+$/, ''), '%{v8_version}')"
-%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8.replace(/-node.\d+$/, ''), '%{v8_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
# Ensure we have punycode and that the version matches
-%{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
+LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
# Ensure we have npm and that the version matches
-NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
+NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules LD_LIBRARY_PATH=%{buildroot}%{_libdir} %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
%pretrans -n npm -p <lua>
@@ -430,6 +443,7 @@ end
%files
%{_bindir}/node
+%{_libdir}/libnode.so.%{nodejs_soversion}
%dir %{_prefix}/lib/node_modules
%dir %{_datadir}/node
%dir %{_datadir}/systemtap
@@ -453,6 +467,7 @@ end
%files devel
%{_includedir}/node
+%{_libdir}/libnode.so
%{_datadir}/node/common.gypi
%{_pkgdocdir}/gdbinit
@@ -480,6 +495,7 @@ end
%changelog
* Thu Mar 14 2019 Elliott Sales de Andrade
quantum.analyst@gmail.com - 1:10.15.2-2
- Drop debug executable
+- Build with a shared library
* Fri Mar 01 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.2-1
- Update to 10.15.2
commit f8ff2da483b777a9489233b66b78d72fb7e51a86
Author: Elliott Sales de Andrade
quantum.analyst@gmail.com
Date: Thu Mar 14 04:52:06 2019 +0000
Drop the debug executable.
diff --git a/nodejs.spec b/nodejs.spec
index 57c5e7c..5797775 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,3 @@
-%global with_debug 1
-
# bundle dependencies that are not available as Fedora modules
# %%{!?_with_bootstrap: %%global bootstrap 1}
# use bcond for building modules
@@ -18,7 +16,7 @@
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -330,12 +328,7 @@ export LDFLAGS="%{build_ldflags}"
--openssl-use-def-ca-store
%endif
-%if %{?with_debug} == 1
-# Setting BUILDTYPE=Debug builds both release and debug binaries
-make BUILDTYPE=Debug %{?_smp_mflags}
-%else
make BUILDTYPE=Release %{?_smp_mflags}
-%endif
%install
@@ -346,11 +339,6 @@ rm -rf %{buildroot}
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
-%if %{?with_debug} == 1
-# Install the debug binary and set its permissions
-install -Dpm0755 out/Debug/node %{buildroot}/%{_bindir}/node_g
-%endif
-
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
@@ -464,9 +452,6 @@ end
%files devel
-%if %{?with_debug} == 1
-%{_bindir}/node_g
-%endif
%{_includedir}/node
%{_datadir}/node/common.gypi
%{_pkgdocdir}/gdbinit
@@ -493,6 +478,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Mar 14 2019 Elliott Sales de Andrade
quantum.analyst@gmail.com - 1:10.15.2-2
+- Drop debug executable
+
* Fri Mar 01 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.2-1
- Update to 10.15.2
-
https://nodejs.org/en/blog/release/v10.15.1/
commit a99828d810ef17f200b2beea0e153cef71a01ac9
Merge: c52c39a ed1e3b3
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 7 08:10:32 2019 -0500
Merge branch '10'
commit 6c9d2762c91992ee6b67aa3981cd73c1b7b4739d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Mar 1 13:27:23 2019 -0500
Update to 11.10.1
https://nodejs.org/en/blog/release/v11.10.1/
https://nodejs.org/en/blog/release/v11.10.0/
https://nodejs.org/en/blog/release/v11.9.0/
https://nodejs.org/en/blog/release/v11.8.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 4f9486a..06dbbad 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,11 +1,5 @@
%global with_debug 1
-# PowerPC and s390x segfault during Debug builds
-#
https://github.com/nodejs/node/issues/20642
-%ifarch %{power64} s390x
-%global with_debug 0
-%endif
-
# bundle dependencies that are not available as Fedora modules
# %%{!?_with_bootstrap: %%global bootstrap 1}
# use bcond for building modules
@@ -20,8 +14,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 11
-%global nodejs_minor 7
-%global nodejs_patch 0
+%global nodejs_minor 10
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -51,8 +45,8 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 24
-%global libuv_patch 1
+%global libuv_minor 26
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -66,8 +60,11 @@
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
-# Currently, we have to use the bundled copy since Fedora is still on 62.1
+%if 0%{?fedora} >= 30
+%global icu_flag system-icu
+%else
%global icu_flag small-icu
+%endif
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
@@ -80,7 +77,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 5
+%global npm_minor 7
%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
@@ -490,6 +487,13 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Mar 01 2019 Stephen Gallagher
sgallagh@redhat.com - 1:11.10.1-1
+- Update to 11.10.1
+-
https://nodejs.org/en/blog/release/v11.10.1/
+-
https://nodejs.org/en/blog/release/v11.10.0/
+-
https://nodejs.org/en/blog/release/v11.9.0/
+-
https://nodejs.org/en/blog/release/v11.8.0/
+
* Fri Jan 18 2019 Stephen Gallagher
sgallagh@redhat.com - 1:11.7.0-1
- Update to 11.7.0
-
https://nodejs.org/en/blog/release/v11.7.0/
diff --git a/sources b/sources
index 7b2324b..49b35c0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v11.7.0-stripped.tar.gz) = 7061cc6d99ba8d9b6f791bea910cd6d801b660731d0638aa5e309328c9d77c30c909a030a9a4e19e04345399fbfb0c308c37d0f69fe0e5756d9595607ceaa1fb
+SHA512 (node-v11.10.1-stripped.tar.gz) = dda65905d0ca860f1521777463c49ddabec59444f3fc2143472dd9525ac860108221ff1768f984a7f5d1ca7abd330be86520ac7937243349cc2b0b1d6566b51d
commit ed1e3b3c9814b76fac5c60d9d39b855d8ac911e0
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Mar 1 13:09:05 2019 -0500
Update package.cfg post-branch
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/package.cfg b/package.cfg
index 832eaab..77d2a9c 100644
--- a/package.cfg
+++ b/package.cfg
@@ -1,2 +1,2 @@
[koji]
-targets = master f29
+targets = master f30 f29
commit c52c39a4d759512397cff9145530e324e3c68fa5
Merge: 5424f9d 8900556
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Mar 1 13:06:55 2019 -0500
Merge branch '10'
commit 89005563c3dd09a3f761c87f0ab98e79d5d9615d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Mar 1 13:02:24 2019 -0500
Update to 10.15.2
-
https://nodejs.org/en/blog/release/v10.15.1/
-
https://nodejs.org/en/blog/release/v10.15.2/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 79cbc7e..9eaaca4 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,14 +1,14 @@
-From def28d29f907050d8bcd94ed2e341d128ffa3fa6 Mon Sep 17 00:00:00 2001
+From 443fef828092b315a207a194f5fe74e52e451996 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
-Subject: [PATCH 1/2] Disable running gyp on shared deps
+Subject: [PATCH 1/3] Disable running gyp on shared deps
---
Makefile | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index 5fc2bb0c58f5532044a14e9f9595b2316f562726..f1c1545caa220d7442d6d92c49412ec7554de123 100644
+index 3a343301d640bc7fd41e9680c74455bb260a950d..d2b9c13ee3e53d957ed32476e40fb09e41fcfded 100644
--- a/Makefile
+++ b/Makefile
@@ -121,14 +121,13 @@ with-code-cache:
@@ -30,5 +30,5 @@ index 5fc2bb0c58f5532044a14e9f9595b2316f562726..f1c1545caa220d7442d6d92c49412ec7
@if [ -x config.status ]; then \
./config.status; \
--
-2.19.0
+2.20.1
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index fd54ee2..ceb2723 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,7 +1,7 @@
-From ab6c18fd9aba942bee3f2f8030273c846b6025a6 Mon Sep 17 00:00:00 2001
+From 0fd4649d1943f45cb06bda6febdc7ffa7d5859b2 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
-Subject: [PATCH 2/2] Suppress NPM message to run global update
+Subject: [PATCH 2/3] Suppress NPM message to run global update
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
---
@@ -83,5 +83,5 @@ index 6f76b23828531e7af98a7e3cd7d5abfaac09b40c..98edb6f45fe073e03794a2ae6e7aa7f5
!err &&
npm.config.get('ham-it-up') &&
--
-2.19.0
+2.20.1
diff --git a/0003-deps-V8-cherry-pick-d0468de.patch b/0003-deps-V8-cherry-pick-d0468de.patch
new file mode 100644
index 0000000..4fe73a7
--- /dev/null
+++ b/0003-deps-V8-cherry-pick-d0468de.patch
@@ -0,0 +1,118 @@
+From 7108faf1bbcd1e542cd4c34bb57e76432da754f4 Mon Sep 17 00:00:00 2001
+From: Milad Farazmand
miladfar@ca.ibm.com
+Date: Wed, 30 Jan 2019 19:08:06 +0000
+Subject: [PATCH 3/3] deps: V8: cherry-pick d0468de
+
+Original commit message:
+
+ [heap] Fix StoreBuffer setup.
+
+ - Solves a problem for PPC in a configuration where commit page size
+ is 64K.
https://chromium-review.googlesource.com/c/v8/v8/+/1149515
+ - Uses existing VM allocation code to get properly aligned memory.
+ - Makes sure the size for SetPermissions is a multiple of system page
+ size.
+
+ Bug:chromium:756050
+
+ Change-Id: Ib3799ab7a3bb44b0091c234234c1cc47938379c2
+ Reviewed-on:
https://chromium-review.googlesource.com/1161210
+ Commit-Queue: Bill Budge
bbudge@chromium.org
+ Reviewed-by: Michael Lippautz
mlippautz@chromium.org
+ Reviewed-by: Michael Starzinger
mstarzinger@chromium.org
+ Cr-Commit-Position: refs/heads/master@{#54930}
+
+Refs:
https://github.com/v8/v8/commit/d0468dede05fcd57b5a96d0fbfa117a76795fa58
+---
+ common.gypi | 2 +-
+ deps/v8/src/heap/store-buffer.cc | 28 +++++++++++++++++-----------
+ 2 files changed, 18 insertions(+), 12 deletions(-)
+
+diff --git a/common.gypi b/common.gypi
+index 0a4ed881a5b92514d3df88ffc74555931eb71b7c..1405183bf61dfbab8c8b18a6233a08a7a1ad62ec 100644
+--- a/common.gypi
++++ b/common.gypi
+@@ -31,11 +31,11 @@
+ # Default to -O0 for debug builds.
+ 'v8_optimized_debug%': 0,
+
+ # Reset this number to 0 on major V8 upgrades.
+ # Increment by one for each non-official patch applied to deps/v8.
+- 'v8_embedder_string': '-node.12',
++ 'v8_embedder_string': '-node.13',
+
+ # Enable disassembler for `--print-code` v8 options
+ 'v8_enable_disassembler': 1,
+
+ # Don't bake anything extra into the snapshot.
+diff --git a/deps/v8/src/heap/store-buffer.cc b/deps/v8/src/heap/store-buffer.cc
+index d73e3235c158df27756eb719643f81822d2bd015..657aa9212a6153f3bd1c44e519a3c8c7064c62b4 100644
+--- a/deps/v8/src/heap/store-buffer.cc
++++ b/deps/v8/src/heap/store-buffer.cc
+@@ -28,46 +28,52 @@ StoreBuffer::StoreBuffer(Heap* heap)
+ insertion_callback = &InsertDuringRuntime;
+ deletion_callback = &DeleteDuringRuntime;
+ }
+
+ void StoreBuffer::SetUp() {
+- // Allocate 3x the buffer size, so that we can start the new store buffer
+- // aligned to 2x the size. This lets us use a bit test to detect the end of
+- // the area.
++ const size_t requested_size = kStoreBufferSize * kStoreBuffers;
++ // Allocate buffer memory aligned at least to kStoreBufferSize. This lets us
++ // use a bit test to detect the ends of the buffers.
++ const size_t alignment =
++ std::max<size_t>(kStoreBufferSize, AllocatePageSize());
++ void* hint = AlignedAddress(heap_->GetRandomMmapAddr(), alignment);
+ VirtualMemory reservation;
+- if (!AllocVirtualMemory(kStoreBufferSize * 3, heap_->GetRandomMmapAddr(),
+- &reservation)) {
++ if (!AlignedAllocVirtualMemory(requested_size, alignment, hint,
++ &reservation)) {
+ heap_->FatalProcessOutOfMemory("StoreBuffer::SetUp");
+ }
++
+ Address start = reservation.address();
+- start_[0] = reinterpret_cast<Address*>(::RoundUp(start, kStoreBufferSize));
++ const size_t allocated_size = reservation.size();
++
++ start_[0] = reinterpret_cast<Address*>(start);
+ limit_[0] = start_[0] + (kStoreBufferSize / kPointerSize);
+ start_[1] = limit_[0];
+ limit_[1] = start_[1] + (kStoreBufferSize / kPointerSize);
+
+- Address* vm_limit = reinterpret_cast<Address*>(start + reservation.size());
+-
++ // Sanity check the buffers.
++ Address* vm_limit = reinterpret_cast<Address*>(start + allocated_size);
+ USE(vm_limit);
+ for (int i = 0; i < kStoreBuffers; i++) {
+ DCHECK(reinterpret_cast<Address>(start_[i]) >= reservation.address());
+ DCHECK(reinterpret_cast<Address>(limit_[i]) >= reservation.address());
+ DCHECK(start_[i] <= vm_limit);
+ DCHECK(limit_[i] <= vm_limit);
+ DCHECK_EQ(0, reinterpret_cast<Address>(limit_[i]) & kStoreBufferMask);
+ }
+
+- if (!reservation.SetPermissions(reinterpret_cast<Address>(start_[0]),
+- kStoreBufferSize * kStoreBuffers,
++ // Set RW permissions only on the pages we use.
++ const size_t used_size = RoundUp(requested_size, CommitPageSize());
++ if (!reservation.SetPermissions(start, used_size,
+ PageAllocator::kReadWrite)) {
+ heap_->FatalProcessOutOfMemory("StoreBuffer::SetUp");
+ }
+ current_ = 0;
+ top_ = start_[current_];
+ virtual_memory_.TakeControl(&reservation);
+ }
+
+-
+ void StoreBuffer::TearDown() {
+ if (virtual_memory_.IsReserved()) virtual_memory_.Free();
+ top_ = nullptr;
+ for (int i = 0; i < kStoreBuffers; i++) {
+ start_[i] = nullptr;
+--
+2.20.1
+
diff --git a/nodejs.spec b/nodejs.spec
index a169682..57c5e7c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,11 +1,5 @@
%global with_debug 1
-# PowerPC and s390x segfault during Debug builds
-#
https://github.com/nodejs/node/issues/20642
-%ifarch %{power64} s390x
-%global with_debug 0
-%endif
-
# bundle dependencies that are not available as Fedora modules
# %%{!?_with_bootstrap: %%global bootstrap 1}
# use bcond for building modules
@@ -21,7 +15,7 @@
%global nodejs_epoch 1
%global nodejs_major 10
%global nodejs_minor 15
-%global nodejs_patch 0
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -124,6 +118,10 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# This does bad things on an RPM-managed npm.
Patch2: 0002-Suppress-NPM-message-to-run-global-update.patch
+
+# Upstream patch to fix debug generation on PowerPC
+Patch3: 0003-deps-V8-cherry-pick-d0468de.patch
+
BuildRequires: python2-devel
BuildRequires: python3-devel
BuildRequires: zlib-devel
@@ -273,14 +271,11 @@ The API documentation for the Node.js JavaScript runtime.
%prep
-%setup -q -n node-v%{nodejs_version}
+%autosetup -p1 -n node-v%{nodejs_version}
# remove bundled dependencies that we aren't building
-%patch1 -p1
rm -rf deps/zlib
-%patch2 -p1
-
# Replace any instances of unversioned python' with python2
pathfix.py -i %{__python2} -pn $(find -type f)
find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
@@ -498,6 +493,11 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Mar 01 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.2-1
+- Update to 10.15.2
+-
https://nodejs.org/en/blog/release/v10.15.1/
+-
https://nodejs.org/en/blog/release/v10.15.2/
+
* Wed Jan 02 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.0-1
- Update to 10.15.0
-
https://nodejs.org/en/blog/release/v10.15.0/
diff --git a/sources b/sources
index 6b9800b..23724af 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.15.0-stripped.tar.gz) = 7f1529852ebd0d374dd7efe8f8cee30c3277d061004965daba7ed14f3e91bdd7c8a71db7953b2043b8eef89a2eab7ab98f5357424b340ac6ff328ff921edec76
+SHA512 (node-v10.15.2-stripped.tar.gz) = f7971cbeb94bc7079bca090546b30608f333a95b3e82c7fccd581a84ebc21496fd5ee595ce66abce0fdf484d6a2f9d818a2d7110833adec8daa73b885108a19f
commit 5424f9d1b215314d206679d7cd93285083f7b1c9
Author: Tom Hughes
tom@compton.nu
Date: Fri Feb 8 07:13:31 2019 +0000
Bump release to fix dependencies
diff --git a/nodejs.spec b/nodejs.spec
index f47b574..551194c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -24,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -98,7 +98,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}.1
+Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
URL:
http://nodejs.org/
@@ -238,7 +238,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.1
+Release: %{npm_release}%{?dist}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -491,6 +491,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Feb 8 2019 Tom Hughes
tom@compton.nu - 1:%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}-3%{?dist}
+- Bump release to fix dependencies
+
* Fri Feb 01 2019 Fedora Release Engineering
releng@fedoraproject.org - 1:10.13.0-2.1
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
commit f58833768d6e97eea542a9afe5aef883e8351c61
Author: Fedora Release Engineering
releng@fedoraproject.org
Date: Fri Feb 1 12:26:44 2019 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering
releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index 4d93426..f47b574 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -98,7 +98,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
+Release: %{nodejs_release}%{?dist}.1
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
URL:
http://nodejs.org/
@@ -238,7 +238,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}
+Release: %{npm_release}%{?dist}.1
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -491,6 +491,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Feb 01 2019 Fedora Release Engineering
releng@fedoraproject.org - 1:10.13.0-2.1
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
+
* Sun Jan 27 2019 Tom Hughes
tom@compton.nu - 1:10.13.0-2
- Bump release to fix dependencies
commit ecd93cd121fc78bb6af55e11a3e247e7e00b5dfd
Author: Igor Gnatenko
ignatenkobrain@fedoraproject.org
Date: Mon Jan 28 20:17:55 2019 +0100
Remove obsolete Group tag
References:
https://fedoraproject.org/wiki/Changes/Remove_Group_Tag
diff --git a/nodejs.spec b/nodejs.spec
index d897e77..4d93426 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -101,7 +101,6 @@ Version: %{nodejs_version}
Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
-Group: Development/Languages
URL:
http://nodejs.org/
ExclusiveArch: %{nodejs_arches}
@@ -219,7 +218,6 @@ real-time applications that run across distributed devices.
%package devel
Summary: JavaScript runtime - development headers
-Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
@@ -259,7 +257,6 @@ your node programs. It manages dependencies and does other cool stuff.
%package docs
Summary: Node.js API documentation
-Group: Documentation
BuildArch: noarch
# We don't require that the main package be installed to
commit 45914513a2f824915dc568499e082ae76cfd8b25
Author: Tom Hughes
tom@compton.nu
Date: Sun Jan 27 21:39:13 2019 +0000
Bump release to fix dependencies
diff --git a/nodejs.spec b/nodejs.spec
index e97f3b3..d897e77 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -24,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -98,7 +98,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}.1
+Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -240,7 +240,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.1
+Release: %{npm_release}%{?dist}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -494,6 +494,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Sun Jan 27 2019 Tom Hughes
tom@compton.nu - 1:10.13.0-2
+- Bump release to fix dependencies
+
* Wed Jan 23 2019 Pete Walter
pwalter@fedoraproject.org - 1:10.13.0-1.1
- Rebuild for ICU 63
commit 8dd664422a4067f6c6c5c80f4da138c8fd0a58a0
Author: Pete Walter
pwalter@fedoraproject.org
Date: Wed Jan 23 22:31:30 2019 +0000
Rebuild for ICU 63
diff --git a/nodejs.spec b/nodejs.spec
index 2a8fed3..e97f3b3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -98,7 +98,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
+Release: %{nodejs_release}%{?dist}.1
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -240,7 +240,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}
+Release: %{npm_release}%{?dist}.1
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -494,6 +494,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Jan 23 2019 Pete Walter
pwalter@fedoraproject.org - 1:10.13.0-1.1
+- Rebuild for ICU 63
+
* Thu Nov 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.13.0-1
- Update to 10.13.0
-
https://nodejs.org/en/blog/release/v10.13.0/
commit f7fc3612146a6fa058802d0d9c504c955e6ba54c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Jan 18 11:17:40 2019 -0500
Update to 11.7.0
https://nodejs.org/en/blog/release/v11.7.0/
https://nodejs.org/en/blog/release/v11.6.0/
https://nodejs.org/en/blog/release/v11.5.0/
https://nodejs.org/en/blog/release/v11.4.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index ed96988..4f9486a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 11
-%global nodejs_minor 3
+%global nodejs_minor 7
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -51,8 +51,8 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 23
-%global libuv_patch 2
+%global libuv_minor 24
+%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -80,8 +80,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 4
-%global npm_patch 1
+%global npm_minor 5
+%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -490,6 +490,13 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Jan 18 2019 Stephen Gallagher
sgallagh@redhat.com - 1:11.7.0-1
+- Update to 11.7.0
+-
https://nodejs.org/en/blog/release/v11.7.0/
+-
https://nodejs.org/en/blog/release/v11.6.0/
+-
https://nodejs.org/en/blog/release/v11.5.0/
+-
https://nodejs.org/en/blog/release/v11.4.0/
+
* Thu Nov 29 2018 Stephen Gallagher
sgallagh@redhat.com - 1:11.3.0-1
- Update to 11.3.0
-
https://nodejs.org/en/blog/release/v11.2.0/
diff --git a/sources b/sources
index fcb4527..7b2324b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v11.3.0-stripped.tar.gz) = 682f99c794cf7380ae8b1f068c90ac99b77aab29315b9ea98997577ce3b5e7868d7b55d02361c4110d83f0e1ce2e035065c7d2cf165da6813260b9cf59ef8d09
+SHA512 (node-v11.7.0-stripped.tar.gz) = 7061cc6d99ba8d9b6f791bea910cd6d801b660731d0638aa5e309328c9d77c30c909a030a9a4e19e04345399fbfb0c308c37d0f69fe0e5756d9595607ceaa1fb
commit cb0b28bd5fb859fdf5d9438a7237dbf7a7588517
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 10 08:25:24 2019 -0500
Bundle http-parser since it uses backported features not available in RHEL
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index a09765a..2a894a5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -103,21 +103,18 @@ Source7: nodejs_native.attr
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
BuildRequires: python2-devel
-Requires: http-parser >= 2.7.0
BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.5
BuildRequires: gcc-c++ >= 4.8.5
+Provides: bundled(http-parser) = %{http_parser_version}
%if %{with bootstrap}
-Provides: bundled(http-parser) = %{http_parser_version}
Provides: bundled(libuv) = %{libuv_version}
%else
BuildRequires: systemtap-sdt-devel
-BuildRequires: http-parser-devel >= 2.7.0
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
-
%endif
%if 0%{?fedora} > 25
@@ -195,7 +192,6 @@ Requires: nodejs-packaging
%if %{with bootstrap}
#deps are bundled
%else
-Requires: http-parser-devel%{?_isa}
Requires: libuv-devel%{?_isa}
%endif
@@ -285,7 +281,6 @@ export LDFLAGS="%{__global_ldflags}"
--shared-openssl \
--shared-zlib \
--shared-libuv \
- --shared-http-parser \
--with-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
@@ -444,6 +439,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jan 10 2019 Stephen Gallagher
sgallagh@redhat.com - 1:6.16.0-2
+- Bundle http-parser since it uses backported features not available in RHEL
+
* Thu Jan 10 2019 Stephen Gallagher
sgallagh@redhat.com - 1:6.16.0-1
- Update to 6.16.0 security release
-
https://nodejs.org/en/blog/release/v6.16.0/
commit e769d072e953cedf2490c82371d746bbfda50f4f
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 10 08:04:00 2019 -0500
Update to 6.16.0 security release
*
https://nodejs.org/en/blog/release/v6.16.0/
*
https://nodejs.org/en/blog/release/v6.15.1/
*
https://nodejs.org/en/blog/release/v6.15.0/
*
https://nodejs.org/en/blog/release/v6.14.4/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index b92ecd8..34665da 100644
--- a/.gitignore
+++ b/.gitignore
@@ -80,3 +80,4 @@
/node-v6.14.0-stripped.tar.gz
/node-v6.14.2-stripped.tar.gz
/node-v6.14.3-stripped.tar.gz
+/node-v6.16.0-stripped.tar.gz
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index 20dab4b..237ae13 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -1,10 +1,10 @@
#!/bin/sh
version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
+rm -f node-v${version}.tar.gz
wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
-echo "Now make sure to run:"
-echo "fedpkg new-sources node-v${version}-stripped.tar.gz"
+fedpkg new-sources node-v${version}-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index c977c5f..a09765a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,8 +18,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 6
-%global nodejs_minor 14
-%global nodejs_patch 3
+%global nodejs_minor 16
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -54,7 +54,6 @@
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
-# Note: this will be unmerged in v7 or v8
%global punycode_major 2
%global punycode_minor 0
%global punycode_patch 0
@@ -445,6 +444,13 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jan 10 2019 Stephen Gallagher
sgallagh@redhat.com - 1:6.16.0-1
+- Update to 6.16.0 security release
+-
https://nodejs.org/en/blog/release/v6.16.0/
+-
https://nodejs.org/en/blog/release/v6.15.1/
+-
https://nodejs.org/en/blog/release/v6.15.0/
+-
https://nodejs.org/en/blog/release/v6.14.4/
+
* Thu Jun 14 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.14.3-1
- Update to 6.14.3 security release
-
https://nodejs.org/en/blog/release/v6.14.3/
diff --git a/sources b/sources
index 0d63e30..5d4e0a5 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.14.3-stripped.tar.gz) = 96978edb66680a41840880728ffbde620dafa7561bda29e1d9e32ece7f010bb2c1aa763f04e5f393c7f88714c9082d41741a180d3c63fce1966f5984381debc4
+SHA512 (node-v6.16.0-stripped.tar.gz) = f39f01be5149d08823b94f3609804e360c12f6bfacc80000cb59846492ae14dfb9b648c6bccaf5caadbeba27fb529a9a55d5c54a7ab290d87817a8e571c18a47
commit 494dea3b5f6e1c879f996f229ca6ae2400c8850d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Jan 2 15:18:52 2019 -0500
Update to 10.15.0
https://nodejs.org/en/blog/release/v10.15.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index bc42ef2..a169682 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,8 +20,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 14
-%global nodejs_patch 1
+%global nodejs_minor 15
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -39,7 +39,7 @@
# c-ares - from deps/cares/include/ares_version.h
#
https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
-%global c_ares_minor 14
+%global c_ares_minor 15
%global c_ares_patch 0
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
@@ -61,7 +61,7 @@
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
-# ICU - from configure.py in the configure_intl() function
+# ICU - from tools/icu/current_ver.dep
%global icu_major 62
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
@@ -138,8 +138,8 @@ Provides: bundled(nghttp2) = %{nghttp2_version}
%else
BuildRequires: nodejs-packaging
BuildRequires: systemtap-sdt-devel
-BuildRequires: http-parser-devel >= 2.7.0
-Requires: http-parser >= 2.7.0
+BuildRequires: http-parser-devel >= 2.9.0
+Requires: http-parser >= 2.9.0
BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:%{libuv_version}
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
@@ -498,6 +498,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Jan 02 2019 Stephen Gallagher
sgallagh@redhat.com - 1:10.15.0-1
+- Update to 10.15.0
+-
https://nodejs.org/en/blog/release/v10.15.0/
+
* Thu Nov 29 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.14.1-1
- Update to 10.14.1
-
https://nodejs.org/en/blog/release/v10.14.0/
diff --git a/sources b/sources
index 9ac5811..6b9800b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.14.1-stripped.tar.gz) = cbb6f3e6f55b61c52ba0afd7c2f781dfcd024eb81d35778fd9032357578f8f5735e08d9831b985b8c0374dc7b9eb7d689bb00568802a01af1345e5bd5fe2e8de
+SHA512 (node-v10.15.0-stripped.tar.gz) = 7f1529852ebd0d374dd7efe8f8cee30c3277d061004965daba7ed14f3e91bdd7c8a71db7953b2043b8eef89a2eab7ab98f5357424b340ac6ff328ff921edec76
commit f11d0d2aec322ee0cdf02b2bbe3e7aff8f40cd85
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Nov 29 14:17:45 2018 -0500
Update to 11.3.0
-
https://nodejs.org/en/blog/release/v11.2.0/
-
https://nodejs.org/en/blog/release/v11.3.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 0b53b37..ed96988 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 11
-%global nodejs_minor 1
+%global nodejs_minor 3
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -31,7 +31,7 @@
%global v8_major 7
%global v8_minor 0
%global v8_build 276
-%global v8_patch 32
+%global v8_patch 38
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -39,7 +39,7 @@
# c-ares - from deps/cares/include/ares_version.h
#
https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
-%global c_ares_minor 14
+%global c_ares_minor 15
%global c_ares_patch 0
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
@@ -490,6 +490,11 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Nov 29 2018 Stephen Gallagher
sgallagh@redhat.com - 1:11.3.0-1
+- Update to 11.3.0
+-
https://nodejs.org/en/blog/release/v11.2.0/
+-
https://nodejs.org/en/blog/release/v11.3.0/
+
* Fri Nov 02 2018 Stephen Gallagher
sgallagh@redhat.com - 1:11.1.0-1
- Update to 11.1.0
-
https://nodejs.org/en/blog/release/v11.1.0/
diff --git a/sources b/sources
index 2542c41..fcb4527 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v11.1.0-stripped.tar.gz) = 64e2fee8329db2061d4f2de0e483002657b9d3bca759b79438d4c59d44089f95d9ab85df2d49d6d92c27e514e5d357e88cfee2da74b24b7149de4e873bc7e0ff
+SHA512 (node-v11.3.0-stripped.tar.gz) = 682f99c794cf7380ae8b1f068c90ac99b77aab29315b9ea98997577ce3b5e7868d7b55d02361c4110d83f0e1ce2e035065c7d2cf165da6813260b9cf59ef8d09
commit 233eace07d8f98572b543a73c02f6d84af283552
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Nov 29 13:27:16 2018 -0500
Update to 10.14.1
-
https://nodejs.org/en/blog/release/v10.14.0/
-
https://nodejs.org/en/blog/release/v10.14.1/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 2a8fed3..bc42ef2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,8 +20,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 13
-%global nodejs_patch 0
+%global nodejs_minor 14
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -412,6 +412,10 @@ find %{buildroot}%{_prefix}/lib/node_modules/npm \
-executable -type f \
-exec chmod -x {} ;
+# The above command is a little overzealous. Add a few permissions back.
+chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin/node-gyp
+chmod 0755 %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js
+
%check
# Fail the build if the versions don't match
@@ -494,6 +498,11 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Nov 29 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.14.1-1
+- Update to 10.14.1
+-
https://nodejs.org/en/blog/release/v10.14.0/
+-
https://nodejs.org/en/blog/release/v10.14.1/
+
* Thu Nov 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.13.0-1
- Update to 10.13.0
-
https://nodejs.org/en/blog/release/v10.13.0/
diff --git a/sources b/sources
index 3ecaf54..9ac5811 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.13.0-stripped.tar.gz) = 2df0905571768b7f1e37ebb2446ce355f1913e56254ba06d566d7e0f3cb5a104c26a9f2fd9bf449f6910628ed785bf81c04569d6701cc1adf1be9b18cc55f22c
+SHA512 (node-v10.14.1-stripped.tar.gz) = cbb6f3e6f55b61c52ba0afd7c2f781dfcd024eb81d35778fd9032357578f8f5735e08d9831b985b8c0374dc7b9eb7d689bb00568802a01af1345e5bd5fe2e8de
commit 01611e2acd156d4004d04922e4f39c6b482902d6
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Nov 2 12:55:46 2018 -0400
Update to 11.1.0
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index f710110..0b53b37 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 11
-%global nodejs_minor 0
+%global nodejs_minor 1
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -31,7 +31,7 @@
%global v8_major 7
%global v8_minor 0
%global v8_build 276
-%global v8_patch 28
+%global v8_patch 32
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -62,16 +62,12 @@
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from tools/icu/current_ver.dep
-%global icu_major 62
+%global icu_major 63
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
-%if 0%{?fedora} >= 29
-%global icu_flag system-icu
-%else
+# Currently, we have to use the bundled copy since Fedora is still on 62.1
%global icu_flag small-icu
-%endif
-
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
@@ -494,6 +490,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Nov 02 2018 Stephen Gallagher
sgallagh@redhat.com - 1:11.1.0-1
+- Update to 11.1.0
+-
https://nodejs.org/en/blog/release/v11.1.0/
+
* Thu Nov 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:11.0.0-1
- Update to 11.0.0
-
https://nodejs.org/en/blog/release/v11.0.0/
diff --git a/sources b/sources
index da6ddda..2542c41 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v11.0.0-stripped.tar.gz) = c602431641ff61ede56e8bdfee4b350bad67360b1c07a9a2db58648a3d18a74929d4a2b4768c2e68b8ddf9cac0748570e9b85ef90c326b94e533d3d023136afa
+SHA512 (node-v11.1.0-stripped.tar.gz) = 64e2fee8329db2061d4f2de0e483002657b9d3bca759b79438d4c59d44089f95d9ab85df2d49d6d92c27e514e5d357e88cfee2da74b24b7149de4e873bc7e0ff
commit 14f1ffd29885bd4850270cea587b947057038c12
Merge: 0600184 10895e3
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Nov 1 13:14:00 2018 -0400
Merge branch '10' into 11
commit 10895e3e40a2ae7f390e0d5f370739320f99ff43
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Nov 1 13:13:06 2018 -0400
Disable debug on Power64 and s390x again
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 853b5a6..2a8fed3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,11 @@
%global with_debug 1
+# PowerPC and s390x segfault during Debug builds
+#
https://github.com/nodejs/node/issues/20642
+%ifarch %{power64} s390x
+%global with_debug 0
+%endif
+
# bundle dependencies that are not available as Fedora modules
# %%{!?_with_bootstrap: %%global bootstrap 1}
# use bcond for building modules
commit 060018482ee94c6f46c23a0a6f51a5efe5f816bc
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Nov 1 11:27:31 2018 -0400
Update to 11.0.0
https://nodejs.org/en/blog/release/v11.0.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 853b5a6..d24e2f9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -13,8 +13,8 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 10
-%global nodejs_minor 13
+%global nodejs_major 11
+%global nodejs_minor 0
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -22,10 +22,10 @@
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
-%global v8_major 6
-%global v8_minor 8
-%global v8_build 275
-%global v8_patch 32
+%global v8_major 7
+%global v8_minor 0
+%global v8_build 276
+%global v8_patch 28
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -55,7 +55,7 @@
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
-# ICU - from configure.py in the configure_intl() function
+# ICU - from tools/icu/current_ver.dep
%global icu_major 62
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
@@ -488,6 +488,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Nov 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:11.0.0-1
+- Update to 11.0.0
+-
https://nodejs.org/en/blog/release/v11.0.0/
+
* Thu Nov 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.13.0-1
- Update to 10.13.0
-
https://nodejs.org/en/blog/release/v10.13.0/
diff --git a/sources b/sources
index 3ecaf54..da6ddda 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.13.0-stripped.tar.gz) = 2df0905571768b7f1e37ebb2446ce355f1913e56254ba06d566d7e0f3cb5a104c26a9f2fd9bf449f6910628ed785bf81c04569d6701cc1adf1be9b18cc55f22c
+SHA512 (node-v11.0.0-stripped.tar.gz) = c602431641ff61ede56e8bdfee4b350bad67360b1c07a9a2db58648a3d18a74929d4a2b4768c2e68b8ddf9cac0748570e9b85ef90c326b94e533d3d023136afa
commit cd261bf1e21c2858ab9d48cb352b8196e2b78789
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Nov 1 11:14:34 2018 -0400
Update to 10.13.0
https://nodejs.org/en/blog/release/v10.13.0/
diff --git a/nodejs.spec b/nodejs.spec
index 6ffb267..853b5a6 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,11 +1,5 @@
%global with_debug 1
-# PowerPC and s390x segfault during Debug builds
-#
https://github.com/nodejs/node/issues/20642
-%ifarch %{power64} s390x
-%global with_debug 0
-%endif
-
# bundle dependencies that are not available as Fedora modules
# %%{!?_with_bootstrap: %%global bootstrap 1}
# use bcond for building modules
@@ -20,7 +14,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 12
+%global nodejs_minor 13
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -494,6 +488,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Nov 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.13.0-1
+- Update to 10.13.0
+-
https://nodejs.org/en/blog/release/v10.13.0/
+
* Thu Oct 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.12.0-1
- Update to 10.12.0
-
https://nodejs.org/en/blog/release/v10.12.0/
diff --git a/sources b/sources
index 97c41b7..3ecaf54 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.12.0-stripped.tar.gz) = e18c024d9b7f679b4c2045e042fd4a8571abdaa5f9cbe29ad5990de075d0aee59682257945eaade1988cafb1799d7f4df73c78169f8fbf8fa1123b7ab188ff24
+SHA512 (node-v10.13.0-stripped.tar.gz) = 2df0905571768b7f1e37ebb2446ce355f1913e56254ba06d566d7e0f3cb5a104c26a9f2fd9bf449f6910628ed785bf81c04569d6701cc1adf1be9b18cc55f22c
commit f69c68938d12d42e5274d64527065ba4c28b8069
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Oct 11 14:52:35 2018 -0400
Update to 10.12.0
https://nodejs.org/en/blog/release/v10.12.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/node-v10.12.0/package.cfg b/node-v10.12.0/package.cfg
new file mode 100644
index 0000000..832eaab
--- /dev/null
+++ b/node-v10.12.0/package.cfg
@@ -0,0 +1,2 @@
+[koji]
+targets = master f29
diff --git a/nodejs.spec b/nodejs.spec
index 4b96160..6ffb267 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,11 +20,11 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 11
+%global nodejs_minor 12
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -52,12 +52,12 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
%global libuv_minor 23
-%global libuv_patch 0
+%global libuv_patch 2
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 33
+%global nghttp2_minor 34
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
@@ -494,6 +494,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Oct 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.12.0-1
+- Update to 10.12.0
+-
https://nodejs.org/en/blog/release/v10.12.0/
+
* Wed Oct 10 2018 Jan Staněk
jstanek@redhat.com - 1:10.11.0-2
- Add non-bootstrap BR for nodejs-packaging
diff --git a/sources b/sources
index 5331429..97c41b7 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.11.0-stripped.tar.gz) = af929d53a7a16d1d0749529e2eb406c9cfca099e296073e1e814f2bd4669ffc994101bc9207512232e69bc175464d75e304f8ca6af41e87d6345d6835bf759aa
+SHA512 (node-v10.12.0-stripped.tar.gz) = e18c024d9b7f679b4c2045e042fd4a8571abdaa5f9cbe29ad5990de075d0aee59682257945eaade1988cafb1799d7f4df73c78169f8fbf8fa1123b7ab188ff24
commit 1ef3fee90070102558bb836a3fc6c7d1d1b215ec
Merge: 4995ef7 9987cc4
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Oct 11 12:45:28 2018 -0400
Merge branch 'pr2' into 10
commit 9987cc4221ee825fed1904f6752d7cf2c2b0b782
Author: Jan Staněk
jstanek@redhat.com
Date: Wed Oct 10 15:49:57 2018 +0200
Add non-bootstrap BR for nodejs-packaging
diff --git a/nodejs.spec b/nodejs.spec
index 58b8c19..1ed683a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -24,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -136,6 +136,7 @@ Provides: bundled(http-parser) = %{http_parser_version}
Provides: bundled(libuv) = %{libuv_version}
Provides: bundled(nghttp2) = %{nghttp2_version}
%else
+BuildRequires: nodejs-packaging
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
Requires: http-parser >= 2.7.0
@@ -493,6 +494,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Oct 10 2018 Jan Staněk
jstanek@redhat.com - 1:10.11.0-2
+- Add non-bootstrap BR for nodejs-packaging
+
* Thu Sep 20 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.11.0-1
- Update to 10.11.0
-
https://nodejs.org/en/blog/release/v10.11.0/
@@ -717,7 +721,7 @@ end
* Thu Jun 29 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.1.3-1
- Update to v8.1.3
--
https://nodejs.org/en/blog/release/v8.1.3/
+-
https://nodejs.org/en/blog/release/v8.1.3/
* Wed Jun 28 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.1.2-1
- Update to v8.1.2
commit 4995ef7018d761f5928c3e6a85a59b3e50fc9d8d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Sep 21 19:55:25 2018 -0400
Fix libuv dependency
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 58b8c19..2e3f5fe 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -140,7 +140,7 @@ BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
Requires: http-parser >= 2.7.0
BuildRequires: libuv-devel >= 1:%{libuv_version}
-Requires: libuv >= 1:1.20.2
+Requires: libuv >= 1:%{libuv_version}
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
Requires: libnghttp2 >= %{nghttp2_version}
%endif
commit 74ef5461c130a9b009f9f194b2b9865b2a459f3c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Sep 20 10:45:55 2018 -0400
Rebase patches for 10.11.0
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 87010d5..b5672bc 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,5 @@
+/*.tar.gz
+/*.src.rpm
/node-v0.9.3.tar.gz
/node-v0.9.4.tar.gz
/node-v0.9.5.tar.gz
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index c457298..79cbc7e 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From dc60fa79586e5e8681f019e80080aebc227d0c03 Mon Sep 17 00:00:00 2001
+From def28d29f907050d8bcd94ed2e341d128ffa3fa6 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index 7f9a57804b77606a3bec03f6be707969d71d3562..dd68e1ba2d3928f46c5d1f8991ded98bc1465323 100644
+index 5fc2bb0c58f5532044a14e9f9595b2316f562726..f1c1545caa220d7442d6d92c49412ec7554de123 100644
--- a/Makefile
+++ b/Makefile
@@ -121,14 +121,13 @@ with-code-cache:
@@ -26,9 +26,9 @@ index 7f9a57804b77606a3bec03f6be707969d71d3562..dd68e1ba2d3928f46c5d1f8991ded98b
+ deps/v8/gypfiles/v8.gyp node.gyp config.gypi
$(PYTHON) tools/gyp_node.py -f make
- config.gypi: configure
+ config.gypi: configure configure.py
@if [ -x config.status ]; then \
./config.status; \
--
-2.19.0.rc1
+2.19.0
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 752a49c..fd54ee2 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From 6fa6df3e7ec585d1bf1386dcf29f608a039bbbe9 Mon Sep 17 00:00:00 2001
+From ab6c18fd9aba942bee3f2f8030273c846b6025a6 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/2] Suppress NPM message to run global update
@@ -83,5 +83,5 @@ index 6f76b23828531e7af98a7e3cd7d5abfaac09b40c..98edb6f45fe073e03794a2ae6e7aa7f5
!err &&
npm.config.get('ham-it-up') &&
--
-2.19.0.rc1
+2.19.0
commit d1243a55a46a67025a684f5c6c63fcc8bfff8648
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Sep 20 10:33:34 2018 -0400
Update to 10.11.0
https://nodejs.org/en/blog/release/v10.11.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 38ee89c..87010d5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -105,3 +105,4 @@
/node-v10.8.0-stripped.tar.gz
/node-v10.9.0-stripped.tar.gz
/node-v10.10.0-stripped.tar.gz
+/node-v10.11.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 769c9c5..58b8c19 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,18 +20,18 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 10
+%global nodejs_minor 11
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
%global v8_minor 8
%global v8_build 275
-%global v8_patch 30
+%global v8_patch 32
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -61,7 +61,7 @@
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
-# ICU - from configure in the configure_intl() function
+# ICU - from configure.py in the configure_intl() function
%global icu_major 62
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
@@ -493,6 +493,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Sep 20 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.11.0-1
+- Update to 10.11.0
+-
https://nodejs.org/en/blog/release/v10.11.0/
+
* Wed Sep 19 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.10.0-2
- Really, finally fix npm dep executable permissions
diff --git a/sources b/sources
index 03f52b2..5331429 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.10.0-stripped.tar.gz) = 3202ce37c132abca96219ff296059d424fdd585b415db637ebd1250fb06a7efe8f8e6a3ecc0b985e7500055d1e7d6c92231eedd266f35767e324d9fd656d853d
+SHA512 (node-v10.11.0-stripped.tar.gz) = af929d53a7a16d1d0749529e2eb406c9cfca099e296073e1e814f2bd4669ffc994101bc9207512232e69bc175464d75e304f8ca6af41e87d6345d6835bf759aa
commit f16535f82a2d459a601e9ff3bc3c6ea2e325bfd4
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Sep 20 08:39:14 2018 -0400
Fix missing quotes
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 7a0fa6f..769c9c5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -407,7 +407,7 @@ rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
# unnecessary automatic dependencies to be added. Make them not executable.
# Skip the npm bin directory or the npm binary will not work.
find %{buildroot}%{_prefix}/lib/node_modules/npm \
- -not -path %{buildroot}%{_prefix}/lib/node_modules/npm/bin/* \
+ -not -path "%{buildroot}%{_prefix}/lib/node_modules/npm/bin/*" \
-executable -type f \
-exec chmod -x {} ;
commit 4614b5fef198db8bf25beb8347db8c3133d31249
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Sep 19 11:35:24 2018 -0400
Really, finally fix npm dep executable permissions
Resolves: rhbz#1630937
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index c5b09a5..7a0fa6f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -24,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -407,8 +407,9 @@ rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
# unnecessary automatic dependencies to be added. Make them not executable.
# Skip the npm bin directory or the npm binary will not work.
find %{buildroot}%{_prefix}/lib/node_modules/npm \
- -path bin -o -prune \
- -type f -executable -exec chmod -x {} ;
+ -not -path %{buildroot}%{_prefix}/lib/node_modules/npm/bin/* \
+ -executable -type f \
+ -exec chmod -x {} ;
%check
@@ -492,6 +493,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Sep 19 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.10.0-2
+- Really, finally fix npm dep executable permissions
+
* Tue Sep 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.10.0-1
- Update to 10.10.0
-
https://nodejs.org/en/blog/release/v10.10.0/
commit a52c593fa8137ca6d67901eadb236e273723f9cf
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Sep 11 10:25:33 2018 -0400
Add package.cfg
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/package.cfg b/package.cfg
new file mode 100644
index 0000000..832eaab
--- /dev/null
+++ b/package.cfg
@@ -0,0 +1,2 @@
+[koji]
+targets = master f29
commit 54ae556d2b4fae9950ace4fc8bbef2f33c1ca40e
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Sep 11 09:39:22 2018 -0400
Update to 10.10.0
-
https://nodejs.org/en/blog/release/v10.10.0/
- Fix issue with npm permissions
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 120a868..38ee89c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -104,3 +104,4 @@
/node-v10.7.0-stripped.tar.gz
/node-v10.8.0-stripped.tar.gz
/node-v10.9.0-stripped.tar.gz
+/node-v10.10.0-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 19340c0..c457298 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 3775a1669913db89c042859fd87c349fb5459e55 Mon Sep 17 00:00:00 2001
+From dc60fa79586e5e8681f019e80080aebc227d0c03 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,10 +8,10 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index 231948c15b95bdcdf5cbe2ada9dcb54207cde1cc..ce48995b92feb55d2c307296f3899937d60b16ae 100644
+index 7f9a57804b77606a3bec03f6be707969d71d3562..dd68e1ba2d3928f46c5d1f8991ded98bc1465323 100644
--- a/Makefile
+++ b/Makefile
-@@ -109,14 +109,13 @@ with-code-cache:
+@@ -121,14 +121,13 @@ with-code-cache:
.PHONY: test-code-cache
test-code-cache: with-code-cache
@@ -30,5 +30,5 @@ index 231948c15b95bdcdf5cbe2ada9dcb54207cde1cc..ce48995b92feb55d2c307296f3899937
@if [ -x config.status ]; then \
./config.status; \
--
-2.18.0
+2.19.0.rc1
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 8f4f608..752a49c 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,32 +1,42 @@
-From 5fa6ec054f98e7e2e480feab792d51ff4100f1d9 Mon Sep 17 00:00:00 2001
+From 6fa6df3e7ec585d1bf1386dcf29f608a039bbbe9 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/2] Suppress NPM message to run global update
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
---
- deps/npm/bin/npm-cli.js | 49 -----------------------------------------
- 1 file changed, 49 deletions(-)
+ deps/npm/bin/npm-cli.js | 54 -----------------------------------------
+ 1 file changed, 54 deletions(-)
diff --git a/deps/npm/bin/npm-cli.js b/deps/npm/bin/npm-cli.js
-index a38009d276e3bb7cb26e9536b62596c336ff8fb5..98edb6f45fe073e03794a2ae6e7aa7f5500723ee 100755
+index 6f76b23828531e7af98a7e3cd7d5abfaac09b40c..98edb6f45fe073e03794a2ae6e7aa7f5500723ee 100755
--- a/deps/npm/bin/npm-cli.js
+++ b/deps/npm/bin/npm-cli.js
-@@ -72,59 +72,10 @@
+@@ -67,69 +67,15 @@
+ if (conf.usage && npm.command !== 'help') {
+ npm.argv.unshift(npm.command)
+ npm.command = 'help'
+ }
+
+- var isGlobalNpmUpdate = conf.global && ['install', 'update'].includes(npm.command) && npm.argv.includes('npm')
+-
// now actually fire up npm and run the command.
// this is how to use npm programmatically:
conf._exit = true
npm.load(conf, function (er) {
if (er) return errorHandler(er)
- if (
+- !isGlobalNpmUpdate &&
- npm.config.get('update-notifier') &&
- !unsupported.checkVersion(process.version).unsupported
- ) {
- const pkg = require('../package.json')
- let notifier = require('update-notifier')({pkg})
+- const isCI = require('ci-info').isCI
- if (
- notifier.update &&
-- notifier.update.latest !== pkg.version
+- notifier.update.latest !== pkg.version &&
+- !isCI
- ) {
- const color = require('ansicolors')
- const useColor = npm.config.get('color')
@@ -73,5 +83,5 @@ index a38009d276e3bb7cb26e9536b62596c336ff8fb5..98edb6f45fe073e03794a2ae6e7aa7f5
!err &&
npm.config.get('ham-it-up') &&
--
-2.18.0
+2.19.0.rc1
diff --git a/nodejs.spec b/nodejs.spec
index 9b965ef..c5b09a5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,18 +20,18 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 9
+%global nodejs_minor 10
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
%global v8_minor 8
%global v8_build 275
-%global v8_patch 24
+%global v8_patch 30
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -51,13 +51,13 @@
# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 22
+%global libuv_minor 23
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 32
+%global nghttp2_minor 33
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
@@ -84,8 +84,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 2
-%global npm_patch 0
+%global npm_minor 4
+%global npm_patch 1
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -405,7 +405,10 @@ rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
# Some NPM bundled deps are executable but should not be. This causes
# unnecessary automatic dependencies to be added. Make them not executable.
-find %{buildroot}%{_prefix}/lib/node_modules/npm -type f -executable -exec chmod -x {} ;
+# Skip the npm bin directory or the npm binary will not work.
+find %{buildroot}%{_prefix}/lib/node_modules/npm \
+ -path bin -o -prune \
+ -type f -executable -exec chmod -x {} ;
%check
@@ -489,6 +492,11 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Sep 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.10.0-1
+- Update to 10.10.0
+-
https://nodejs.org/en/blog/release/v10.10.0/
+- Fix issue with npm permissions
+
* Tue Aug 21 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.9.0-2
- Clean up automatic dependencies for npm
diff --git a/sources b/sources
index eeb5a71..03f52b2 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.9.0-stripped.tar.gz) = 74d6aa97b5f30ee7b6e8fd01c1bbcba7c7f70e26e99eb5a3f7b59fa465eb461e62d72d5bf4af9d39d9004df918a4bc1dc24f08b40d335e983e3171c003091a47
+SHA512 (node-v10.10.0-stripped.tar.gz) = 3202ce37c132abca96219ff296059d424fdd585b415db637ebd1250fb06a7efe8f8e6a3ecc0b985e7500055d1e7d6c92231eedd266f35767e324d9fd656d853d
commit 8392e14d2333b9de66db54ded33d4eadff8b05d0
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Aug 21 16:11:44 2018 -0400
Fix typo
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 701c248..9b965ef 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -405,7 +405,7 @@ rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
# Some NPM bundled deps are executable but should not be. This causes
# unnecessary automatic dependencies to be added. Make them not executable.
-find %{buildroot}%{_prefix}/lib/node_modules/npm -type f -exectuable -exec chmod -x {} ;
+find %{buildroot}%{_prefix}/lib/node_modules/npm -type f -executable -exec chmod -x {} ;
%check
commit ec1e55a94c6618de9667bab22146e481798ba958
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Aug 21 08:32:15 2018 -0400
Clean up automatic dependencies for npm
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 4192e7a..701c248 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -24,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -403,6 +403,11 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
%{buildroot}/%{_defaultdocdir}/node/lldbinit
+# Some NPM bundled deps are executable but should not be. This causes
+# unnecessary automatic dependencies to be added. Make them not executable.
+find %{buildroot}%{_prefix}/lib/node_modules/npm -type f -exectuable -exec chmod -x {} ;
+
+
%check
# Fail the build if the versions don't match
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
@@ -484,6 +489,9 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Aug 21 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.9.0-2
+- Clean up automatic dependencies for npm
+
* Thu Aug 16 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.9.0-1
- Update to 10.9.0
-
https://nodejs.org/en/blog/release/v10.9.0/
commit ac5b9d5fde5ff9b12afee3e80d13b02c0fabd547
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Aug 16 07:15:31 2018 -0400
Update to 10.9.0
https://nodejs.org/en/blog/release/v10.9.0/
diff --git a/.gitignore b/.gitignore
index 99031a8..120a868 100644
--- a/.gitignore
+++ b/.gitignore
@@ -103,3 +103,4 @@
/node-v10.6.0-stripped.tar.gz
/node-v10.7.0-stripped.tar.gz
/node-v10.8.0-stripped.tar.gz
+/node-v10.9.0-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 95504ac..19340c0 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 89c2a359e3c813dd9c3e076f0f91e4fcc46d0274 Mon Sep 17 00:00:00 2001
+From 3775a1669913db89c042859fd87c349fb5459e55 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,10 +8,10 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index 81dbd9f4d19434c39ab58ff377b0205c7beee557..0db2f5490701068e930d6f108ec4f0447a9fab19 100644
+index 231948c15b95bdcdf5cbe2ada9dcb54207cde1cc..ce48995b92feb55d2c307296f3899937d60b16ae 100644
--- a/Makefile
+++ b/Makefile
-@@ -105,14 +105,13 @@ with-code-cache:
+@@ -109,14 +109,13 @@ with-code-cache:
.PHONY: test-code-cache
test-code-cache: with-code-cache
@@ -30,5 +30,5 @@ index 81dbd9f4d19434c39ab58ff377b0205c7beee557..0db2f5490701068e930d6f108ec4f044
@if [ -x config.status ]; then \
./config.status; \
--
-2.17.1
+2.18.0
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index f5fb2e1..8f4f608 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From b88de8b58be60c6fc741e4d7d408fc2071e2722a Mon Sep 17 00:00:00 2001
+From 5fa6ec054f98e7e2e480feab792d51ff4100f1d9 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/2] Suppress NPM message to run global update
@@ -73,5 +73,5 @@ index a38009d276e3bb7cb26e9536b62596c336ff8fb5..98edb6f45fe073e03794a2ae6e7aa7f5
!err &&
npm.config.get('ham-it-up') &&
--
-2.17.1
+2.18.0
diff --git a/nodejs.spec b/nodejs.spec
index d37ff16..4192e7a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 8
+%global nodejs_minor 9
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -29,9 +29,9 @@
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
-%global v8_minor 7
-%global v8_build 288
-%global v8_patch 49
+%global v8_minor 8
+%global v8_build 275
+%global v8_patch 24
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -484,6 +484,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Aug 16 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.9.0-1
+- Update to 10.9.0
+-
https://nodejs.org/en/blog/release/v10.9.0/
+
* Tue Aug 07 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.8.0-1
- Update to 10.8.0
-
https://nodejs.org/en/blog/release/v10.8.0/
diff --git a/sources b/sources
index 172c909..eeb5a71 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.8.0-stripped.tar.gz) = 882fe7290f18748de1d06ecf90ab0ce360cb6edd555ee07b3a9a09973dc47b0b84d195260e63aafc8f9dacf07c865e0c1a0329e46f5d13abb39bc05eafd21a2d
+SHA512 (node-v10.9.0-stripped.tar.gz) = 74d6aa97b5f30ee7b6e8fd01c1bbcba7c7f70e26e99eb5a3f7b59fa465eb461e62d72d5bf4af9d39d9004df918a4bc1dc24f08b40d335e983e3171c003091a47
commit 05992d4967d0363de29c8b8282fbebdc6e55432d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Aug 7 10:49:16 2018 -0400
Update to 10.8.0
https://nodejs.org/en/blog/release/v10.8.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 8d0b85c..99031a8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -102,3 +102,4 @@
/node-v10.5.0-stripped.tar.gz
/node-v10.6.0-stripped.tar.gz
/node-v10.7.0-stripped.tar.gz
+/node-v10.8.0-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 50e46e4..95504ac 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From 77feac7fbcc5eb43f086d937162a84406cc835af Mon Sep 17 00:00:00 2001
+From 89c2a359e3c813dd9c3e076f0f91e4fcc46d0274 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,7 +8,7 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index c75194dbaa15662ffef7ab6cb1b7dae6a647bfcf..636da9323830de6064a6807b3700c2111077db33 100644
+index 81dbd9f4d19434c39ab58ff377b0205c7beee557..0db2f5490701068e930d6f108ec4f0447a9fab19 100644
--- a/Makefile
+++ b/Makefile
@@ -105,14 +105,13 @@ with-code-cache:
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index a87aeed..f5fb2e1 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,24 +1,27 @@
-From 6c121f7eacbeaf07e51ec761b1794ebd00ffcc1b Mon Sep 17 00:00:00 2001
+From b88de8b58be60c6fc741e4d7d408fc2071e2722a Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/2] Suppress NPM message to run global update
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
---
- deps/npm/bin/npm-cli.js | 46 -----------------------------------------
- 1 file changed, 46 deletions(-)
+ deps/npm/bin/npm-cli.js | 49 -----------------------------------------
+ 1 file changed, 49 deletions(-)
diff --git a/deps/npm/bin/npm-cli.js b/deps/npm/bin/npm-cli.js
-index d7c14bc4b2cd0206448163c3a9bed765bde7fae7..98edb6f45fe073e03794a2ae6e7aa7f5500723ee 100755
+index a38009d276e3bb7cb26e9536b62596c336ff8fb5..98edb6f45fe073e03794a2ae6e7aa7f5500723ee 100755
--- a/deps/npm/bin/npm-cli.js
+++ b/deps/npm/bin/npm-cli.js
-@@ -72,56 +72,10 @@
+@@ -72,59 +72,10 @@
// now actually fire up npm and run the command.
// this is how to use npm programmatically:
conf._exit = true
npm.load(conf, function (er) {
if (er) return errorHandler(er)
-- if (!unsupported.checkVersion(process.version).unsupported) {
+- if (
+- npm.config.get('update-notifier') &&
+- !unsupported.checkVersion(process.version).unsupported
+- ) {
- const pkg = require('../package.json')
- let notifier = require('update-notifier')({pkg})
- if (
@@ -44,7 +47,7 @@ index d7c14bc4b2cd0206448163c3a9bed765bde7fae7..98edb6f45fe073e03794a2ae6e7aa7f5
- break
- }
- }
-- const changelog = `
https://github.com/npm/npm/releases/tag/v$%7Blatest%7D%60
+- const changelog = `
https://github.com/npm/cli/releases/tag/v$%7Blatest%7D%60
- notifier.notify({
- message: `New ${type} version of ${pkg.name} available! ${
- useColor ? color.red(old) : old
diff --git a/nodejs.spec b/nodejs.spec
index b326fd4..d37ff16 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,11 +20,11 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 7
+%global nodejs_minor 8
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 4
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -84,7 +84,7 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 6
-%global npm_minor 1
+%global npm_minor 2
%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
@@ -484,6 +484,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Aug 07 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.8.0-1
+- Update to 10.8.0
+-
https://nodejs.org/en/blog/release/v10.8.0/
+
* Fri Jul 20 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.7.0-4
- Fix npm upgrade scriptlet
- Fix unexpected trailing .1 in npm release field
diff --git a/sources b/sources
index 8eb5f66..172c909 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.7.0-stripped.tar.gz) = 7961c20e5213ae8ff6440cd2f0326b058459b6b74e0a704a1ea33644948f19f43a33c460191ecad8e1b00003d815adfca390d1fc3b2f5732338d0c1d98fb73f2
+SHA512 (node-v10.8.0-stripped.tar.gz) = 882fe7290f18748de1d06ecf90ab0ce360cb6edd555ee07b3a9a09973dc47b0b84d195260e63aafc8f9dacf07c865e0c1a0329e46f5d13abb39bc05eafd21a2d
commit 273c4600f6b3a6217023ffb3b87d02f575f439c8
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Jul 20 13:15:26 2018 -0400
Fix npm upgrade scriptlet
Fix unexpected trailing .1 in npm release field
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 09a7e2e..b326fd4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -24,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 4
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -239,7 +239,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.1
+Release: %{npm_release}%{?dist}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -419,15 +419,18 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%pretrans -n npm -p <lua>
-- Remove all of the symlinks from the bundled npm node_modules directory
-- This scriptlet can be removed in Fedora 31
-for f in posix.files("%{_prefix}/lib/node_modules/npm/node_modules/") do
- path = "%{_prefix}/lib/node_modules/npm/node_modules/"..f
- st = posix.stat(path)
- if st and st.type == "link" then
- os.remove(path)
+base_path = "%{_prefix}/lib/node_modules/npm/node_modules/"
+d_st = posix.stat(base_path)
+if d_st then
+ for f in posix.files(base_path) do
+ path = base_path..f
+ st = posix.stat(path)
+ if st and st.type == "link" then
+ os.remove(path)
+ end
end
end
-
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
@@ -481,6 +484,10 @@ end
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Jul 20 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.7.0-4
+- Fix npm upgrade scriptlet
+- Fix unexpected trailing .1 in npm release field
+
* Fri Jul 20 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.7.0-3
- Restore annotations to binaries
- Fix unexpected trailing .1 in release field
commit 3a8cc3a04bf9c806d0603be7653eeacdd7622a7f
Merge: 13b32d5 8cfb76e
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Jul 20 09:19:42 2018 -0400
Merge branch '10'
commit 8cfb76e41c445b6a692c63b8c3f17c2cb8b47f81
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Jul 20 09:16:14 2018 -0400
Restore annotations
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 5905154..f6ac5b8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,8 +1,5 @@
%global with_debug 1
-# Annobin is currently breaking C++ builds
-%undefine _annotated_build
-
# PowerPC and s390x segfault during Debug builds
#
https://github.com/nodejs/node/issues/20642
%ifarch %{power64} s390x
@@ -27,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -484,7 +481,11 @@ end
%{_pkgdocdir}/npm/doc
%changelog
-* Thu Jul 19 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.6.0-1
+* Fri Jul 20 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.7.0-3
+- Restore annotations to binaries
+- Fix unexpected trailing .1 in release field
+
+* Thu Jul 19 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.7.0-2
- Update to 10.7.0
-
https://nodejs.org/en/blog/release/v10.7.0/
-
https://nodejs.org/en/blog/release/v10.6.0/
commit 13b32d55f00e35ab5e7bf5a4d00035923895b3c3
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Jul 20 09:16:14 2018 -0400
Restore annotations
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 442ef37..09a7e2e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,8 +1,5 @@
%global with_debug 1
-# Annobin is currently breaking C++ builds
-%undefine _annotated_build
-
# PowerPC and s390x segfault during Debug builds
#
https://github.com/nodejs/node/issues/20642
%ifarch %{power64} s390x
@@ -27,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -484,7 +481,11 @@ end
%{_pkgdocdir}/npm/doc
%changelog
-* Thu Jul 19 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.6.0-1
+* Fri Jul 20 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.7.0-3
+- Restore annotations to binaries
+- Fix unexpected trailing .1 in release field
+
+* Thu Jul 19 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.7.0-2
- Update to 10.7.0
-
https://nodejs.org/en/blog/release/v10.7.0/
-
https://nodejs.org/en/blog/release/v10.6.0/
commit 3a1dafa701727d1ef7aeac1d29c248b772741221
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Jul 20 08:09:14 2018 -0400
Drop unintentional .1 in release field
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 3d22f41..442ef37 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -101,7 +101,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}.1
+Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
commit a74514f550a873d222feb557a74016b918f96832
Merge: e93c276 29f2860
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jul 19 20:51:07 2018 -0400
Merge branch '10'
commit 29f2860fc3ae849747c37ffbabbf65426aa21155
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jul 19 20:17:42 2018 -0400
Fix NPM pretrans scriptlet
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 8ba1bbe..5905154 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -27,7 +27,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -419,16 +419,18 @@ rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
-%pretrans -p <lua>
+%pretrans -n npm -p <lua>
-- Remove all of the symlinks from the bundled npm node_modules directory
-- This scriptlet can be removed in Fedora 31
for f in posix.files("%{_prefix}/lib/node_modules/npm/node_modules/") do
- st = posix.stat(f)
+ path = "%{_prefix}/lib/node_modules/npm/node_modules/"..f
+ st = posix.stat(path)
if st and st.type == "link" then
os.remove(path)
end
end
+
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
commit e93c27602005028cdb6f4faf167a47d2353bba39
Merge: 5146e4f 46cd672
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jul 19 14:23:58 2018 -0400
Merge branch '10'
diff --cc nodejs.spec
index 8f577b0,8ba1bbe..e67633b
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -475,9 -482,11 +482,14 @@@ en
%{_pkgdocdir}/npm/doc
%changelog
+ * Thu Jul 19 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.6.0-1
+ - Update to 10.7.0
+ -
https://nodejs.org/en/blog/release/v10.7.0/
+ -
https://nodejs.org/en/blog/release/v10.6.0/
+
+* Fri Jul 13 2018 Fedora Release Engineering
releng@fedoraproject.org - 1:10.5.0-1.1
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
+
* Thu Jun 21 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.5.0-1
- Update to 10.5.0
-
https://nodejs.org/en/blog/release/v10.5.0/
commit 46cd672b99d7803d5774f6af3d0f0d82791f0c44
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jul 19 08:56:26 2018 -0400
Update to 10.7.0
-
https://nodejs.org/en/blog/release/v10.7.0/
-
https://nodejs.org/en/blog/release/v10.6.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 586f147..8d0b85c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -100,3 +100,5 @@
/node-v10.4.0-stripped.tar.gz
/node-v10.4.1-stripped.tar.gz
/node-v10.5.0-stripped.tar.gz
+/node-v10.6.0-stripped.tar.gz
+/node-v10.7.0-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 54c26ad..50e46e4 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,4 +1,4 @@
-From b5b4b7f8acd2d67c79d1fc2c954aa88edff27511 Mon Sep 17 00:00:00 2001
+From 77feac7fbcc5eb43f086d937162a84406cc835af Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH 1/2] Disable running gyp on shared deps
@@ -8,14 +8,14 @@ Subject: [PATCH 1/2] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index b11168aaa456af019a32885f5495c4527a16e9a0..1297fbfc9f68261ea8ebfd1ac70f32581918d078 100644
+index c75194dbaa15662ffef7ab6cb1b7dae6a647bfcf..636da9323830de6064a6807b3700c2111077db33 100644
--- a/Makefile
+++ b/Makefile
-@@ -89,14 +89,13 @@ $(NODE_EXE): config.gypi out/Makefile
+@@ -105,14 +105,13 @@ with-code-cache:
- $(NODE_G_EXE): config.gypi out/Makefile
- $(MAKE) -C out BUILDTYPE=Debug V=$(V)
- if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
+ .PHONY: test-code-cache
+ test-code-cache: with-code-cache
+ $(PYTHON) tools/test.py $(PARALLEL_ARGS) --mode=$(BUILDTYPE_LOWER) code-cache
-out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp \
- deps/zlib/zlib.gyp deps/v8/gypfiles/toolchain.gypi \
@@ -27,8 +27,8 @@ index b11168aaa456af019a32885f5495c4527a16e9a0..1297fbfc9f68261ea8ebfd1ac70f3258
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
- $(error Missing or stale $@, please run ./$<)
-
+ @if [ -x config.status ]; then \
+ ./config.status; \
--
-2.17.0
+2.17.1
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index 050485e..a87aeed 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,4 +1,4 @@
-From e84a42f54aa1dabc115a0c647af6aa1500a85f34 Mon Sep 17 00:00:00 2001
+From 6c121f7eacbeaf07e51ec761b1794ebd00ffcc1b Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
Subject: [PATCH 2/2] Suppress NPM message to run global update
@@ -70,5 +70,5 @@ index d7c14bc4b2cd0206448163c3a9bed765bde7fae7..98edb6f45fe073e03794a2ae6e7aa7f5
!err &&
npm.config.get('ham-it-up') &&
--
-2.17.0
+2.17.1
diff --git a/nodejs.spec b/nodejs.spec
index 948eaa7..8ba1bbe 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,8 @@
%global with_debug 1
+# Annobin is currently breaking C++ builds
+%undefine _annotated_build
+
# PowerPC and s390x segfault during Debug builds
#
https://github.com/nodejs/node/issues/20642
%ifarch %{power64} s390x
@@ -20,7 +23,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 5
+%global nodejs_minor 7
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -31,7 +34,7 @@
%global v8_major 6
%global v8_minor 7
%global v8_build 288
-%global v8_patch 46
+%global v8_patch 49
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -49,10 +52,10 @@
%global http_parser_patch 0
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
-# libuv - from deps/uv/include/uv-version.h
+# libuv - from deps/uv/include/uv/version.h
%global libuv_major 1
-%global libuv_minor 20
-%global libuv_patch 3
+%global libuv_minor 22
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -62,15 +65,22 @@
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
# ICU - from configure in the configure_intl() function
-%global icu_major 61
+%global icu_major 62
%global icu_minor 1
%global icu_version %{icu_major}.%{icu_minor}
+%if 0%{?fedora} >= 29
+%global icu_flag system-icu
+%else
+%global icu_flag small-icu
+%endif
+
+
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
# Note: this will be unmerged in an upcoming major release
%global punycode_major 2
-%global punycode_minor 0
+%global punycode_minor 1
%global punycode_patch 0
%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
@@ -87,10 +97,6 @@
# base npm version number is increasing.
%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
-# Filter out the NPM bundled dependencies so we aren't providing them
-%global __provides_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
-%global __requires_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
-
Name: nodejs
Epoch: %{nodejs_epoch}
@@ -122,6 +128,7 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
Patch2: 0002-Suppress-NPM-message-to-run-global-update.patch
BuildRequires: python2-devel
+BuildRequires: python3-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
BuildRequires: gcc-c++ >= 4.9.4
@@ -135,12 +142,17 @@ Provides: bundled(nghttp2) = %{nghttp2_version}
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
Requires: http-parser >= 2.7.0
-BuildRequires: libuv-devel >= 1:1.20.2
+BuildRequires: libuv-devel >= 1:%{libuv_version}
Requires: libuv >= 1:1.20.2
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
Requires: libnghttp2 >= %{nghttp2_version}
%endif
+
+%if 0%{?fedora} >= 29
+BuildRequires: libicu-devel >= 62.1
+%endif
+
BuildRequires: openssl-devel
# we need the system certificate store
@@ -272,13 +284,17 @@ rm -rf deps/zlib
%patch2 -p1
# Replace any instances of unversioned python' with python2
+pathfix.py -i %{__python2} -pn $(find -type f)
find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python2~" {} ;
-find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python2~" {} ;
+sed -i "s~python~python2~" $(find . -type f | grep "gyp$")
+sed -i "s~usr/bin/python2~usr/bin/python3~" ./deps/v8/tools/gen-inlining-tests.py
+sed -i "s~usr/bin/python.*$~usr/bin/python2~" ./deps/v8/tools/mb/mb_unittest.py
find . -type f -exec sed -i "s~python -c~python2 -c~" {} ;
sed -i "s~which('python')~which('python2')~" configure
%build
+
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
# NULL objects. We need to pass -fno-delete-null-pointer-checks
@@ -305,6 +321,7 @@ export LDFLAGS="%{build_ldflags}"
--shared-openssl \
--shared-zlib \
--without-dtrace \
+ --with-intl=small-icu \
--debug-nghttp2 \
--openssl-use-def-ca-store
%else
@@ -315,6 +332,7 @@ export LDFLAGS="%{build_ldflags}"
--shared-http-parser \
--shared-nghttp2 \
--with-dtrace \
+ --with-intl=%{icu_flag} \
--debug-nghttp2 \
--openssl-use-def-ca-store
%endif
@@ -365,25 +383,6 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
# Install the GDB init tool into the documentation directory
mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
-# Since the old version of NPM was unbundled, there are a lot of symlinks in
-# it's node_modules directory. We need to keep these as symlinks to ensure we
-# can backtrack on this if we decide to.
-
-# Rename the npm node_modules directory to node_modules.bundled
-mkdir -p %{buildroot}/%{_prefix}/lib/node/.bundled
-mv %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules \
- %{buildroot}/%{_prefix}/lib/node/.bundled/npm
-
-# Recreate all the symlinks
-mkdir -p %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules
-FILES=%{buildroot}/%{_prefix}/lib/node/.bundled/npm/*
-for f in $FILES
-do
- module=`basename $f`
- ln -s ../../../node/.bundled/npm/$module \
- %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/$module
-done
-
# install NPM docs to mandir
mkdir -p %{buildroot}%{_mandir} \
%{buildroot}%{_pkgdocdir}/npm
@@ -419,11 +418,20 @@ rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
# Ensure we have npm and that the version matches
NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
+
+%pretrans -p <lua>
+-- Remove all of the symlinks from the bundled npm node_modules directory
+-- This scriptlet can be removed in Fedora 31
+for f in posix.files("%{_prefix}/lib/node_modules/npm/node_modules/") do
+ st = posix.stat(f)
+ if st and st.type == "link" then
+ os.remove(path)
+ end
+end
+
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
-%dir %{_prefix}/lib/node
-%dir %{_prefix}/lib/node/.bundled
%dir %{_datadir}/node
%dir %{_datadir}/systemtap
%dir %{_datadir}/systemtap/tapset
@@ -457,7 +465,6 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_bindir}/npm
%{_bindir}/npx
%{_prefix}/lib/node_modules/npm
-%{_prefix}/lib/node/.bundled/npm
%ghost %{_sysconfdir}/npmrc
%ghost %{_sysconfdir}/npmignore
%doc %{_mandir}/man*/npm*
@@ -475,6 +482,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jul 19 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.6.0-1
+- Update to 10.7.0
+-
https://nodejs.org/en/blog/release/v10.7.0/
+-
https://nodejs.org/en/blog/release/v10.6.0/
+
* Thu Jun 21 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.5.0-1
- Update to 10.5.0
-
https://nodejs.org/en/blog/release/v10.5.0/
diff --git a/sources b/sources
index 842a96b..8eb5f66 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.5.0-stripped.tar.gz) = df9ec8923d5b6260a27b1794f6841a2eb8f08cd8a2a24958dc5d2e7698878337a014c582055cc9eb96dee6303bc5580c718bde8b86cdbde27c8f01f8cac12a31
+SHA512 (node-v10.7.0-stripped.tar.gz) = 7961c20e5213ae8ff6440cd2f0326b058459b6b74e0a704a1ea33644948f19f43a33c460191ecad8e1b00003d815adfca390d1fc3b2f5732338d0c1d98fb73f2
commit 5146e4fc7272f20b94def851046153b834c960a3
Author: Fedora Release Engineering
releng@fedoraproject.org
Date: Fri Jul 13 11:40:35 2018 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering
releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index f5ba5cd..8f577b0 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -95,7 +95,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
+Release: %{nodejs_release}%{?dist}.1
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -230,7 +230,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}
+Release: %{npm_release}%{?dist}.1
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -475,6 +475,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Jul 13 2018 Fedora Release Engineering
releng@fedoraproject.org - 1:10.5.0-1.1
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
+
* Thu Jun 21 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.5.0-1
- Update to 10.5.0
-
https://nodejs.org/en/blog/release/v10.5.0/
commit c388b6ab25e18013d1c4db82bddd31ba65d69c71
Merge: 291b5b8 0118783
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jun 21 21:19:31 2018 -0400
Merge branch '10'
diff --cc nodejs.spec
index 6c622d2,948eaa7..f5ba5cd
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -189,16 -186,13 +186,13 @@@ Provides: bundled(c-ares) = %{c_ares_ve
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
Provides: bundled(v8) = %{v8_version}
- %if 0%{?fedora} && 0%{?fedora < 28}
- # Node.js requires up-to-date ICU
- %global config_intl --with-intl=small-icu
- Provides: bundled(icu) = %{libicu_version}
- %else
- %global config_intl --with-intl=system-icu
- %endif
+ # Node.js is bound to a specific version of ICU which may not match the OS
+ # We cannot pin the OS to this version of ICU because every update includes
+ # an ABI-break, so we'll use the bundled copy.
+ Provides: bundled(icu) = %{icu_version}
# Make sure we keep NPM up to date when we update Node.js
-%if 0%{?epel}
+%if 0%{?rhel}
# EPEL doesn't support Recommends, so make it strict
Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%else
commit 011878379b079f9dc7e8845e468bd2375b2d228b
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jun 21 21:04:36 2018 -0400
Update to 10.5.0
https://nodejs.org/en/blog/release/v10.5.0/
diff --git a/.gitignore b/.gitignore
index 49ba7e5..586f147 100644
--- a/.gitignore
+++ b/.gitignore
@@ -99,3 +99,4 @@
/node-v10.3.0-stripped.tar.gz
/node-v10.4.0-stripped.tar.gz
/node-v10.4.1-stripped.tar.gz
+/node-v10.5.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 257ab3a..948eaa7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,8 +20,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 4
-%global nodejs_patch 1
+%global nodejs_minor 5
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -31,7 +31,7 @@
%global v8_major 6
%global v8_minor 7
%global v8_build 288
-%global v8_patch 45
+%global v8_patch 46
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -475,9 +475,13 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jun 21 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.5.0-1
+- Update to 10.5.0
+-
https://nodejs.org/en/blog/release/v10.5.0/
+
* Thu Jun 14 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.4.1-1
- Update to 10.4.1 to address security issues
--
https://nodejs.org/en/blog/release/v10.4.0/
+-
https://nodejs.org/en/blog/release/v10.4.1/
- Resolves: rhbz#1590801
- Resolves: rhbz#1591014
- Resolves: rhbz#1591019
diff --git a/sources b/sources
index a9936e3..842a96b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.4.1-stripped.tar.gz) = 6344c1a436a437ea52d50ef3f3cc66225e7b47612927c29660842c0a0f5293002bddd68935207599238504b027f64f7613f7ba667251a65bf8c4f81d6a26239b
+SHA512 (node-v10.5.0-stripped.tar.gz) = df9ec8923d5b6260a27b1794f6841a2eb8f08cd8a2a24958dc5d2e7698878337a014c582055cc9eb96dee6303bc5580c718bde8b86cdbde27c8f01f8cac12a31
commit 1a5355ac702079cbfffac3569f1f75db9da393e6
Merge: 6ec7be2 6fe5ee0
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jun 14 14:08:13 2018 -0400
Merge branch '6' into epel7
commit 6fe5ee09e5fc737d46afc8b2f30e8dfe0ec2011c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jun 14 14:07:51 2018 -0400
Update to 6.14.3 security release
https://nodejs.org/en/blog/release/v6.14.3/
diff --git a/.gitignore b/.gitignore
index 84206d8..b92ecd8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -79,3 +79,4 @@
/node-v6.13.1-stripped.tar.gz
/node-v6.14.0-stripped.tar.gz
/node-v6.14.2-stripped.tar.gz
+/node-v6.14.3-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index c053f9a..7e53b8a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 14
-%global nodejs_patch 2
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -445,6 +445,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jun 14 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.14.3-1
+- Update to 6.14.3 security release
+-
https://nodejs.org/en/blog/release/v6.14.3/
+
* Thu May 03 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.14.2-1
- Update to 6.14.2
-
https://nodejs.org/en/blog/release/v6.14.2/
diff --git a/sources b/sources
index 4422efe..0d63e30 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.14.2-stripped.tar.gz) = ce323a05dcc9a4e0341afaa5210de2c8c852d2554d3cfab6e9876a1be8da14c0703899c9b2c88edc08b2fae763a1a336bc9bd9df3a9cb421c9025fbe116e9061
+SHA512 (node-v6.14.3-stripped.tar.gz) = 96978edb66680a41840880728ffbde620dafa7561bda29e1d9e32ece7f010bb2c1aa763f04e5f393c7f88714c9082d41741a180d3c63fce1966f5984381debc4
commit 291b5b8a05559bbc6e02636481981cca8a8732ea
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jun 14 09:04:59 2018 -0400
Update to 8.11.3 for security fixes
https://nodejs.org/en/blog/release/v8.11.3/
diff --git a/.gitignore b/.gitignore
index 79e7af2..e266d7f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -87,3 +87,4 @@
/node-v8.10.0-stripped.tar.gz
/node-v8.11.0-stripped.tar.gz
/node-v8.11.2-stripped.tar.gz
+/node-v8.11.3-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 07ebe29..6c622d2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -15,10 +15,10 @@
%global nodejs_epoch 1
%global nodejs_major 8
%global nodejs_minor 11
-%global nodejs_patch 2
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -56,7 +56,7 @@
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 29
+%global nghttp2_minor 32
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
@@ -490,6 +490,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jun 14 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.11.3-1
+- Update to 8.11.3 for security fixes
+-
https://nodejs.org/en/blog/release/v8.11.3/
+
* Mon Jun 04 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.11.2-2
- Build against OpenSSL 1.1
diff --git a/sources b/sources
index c92dc6f..eac00d0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.11.2-stripped.tar.gz) = ede88661ef795f01b4824cb479085f16f47d7e03973d90803b57d88cff20c05a5e08f76e00d33ed7611f2085e812b2088fe65d1f046d5ef212f4aa4cb8389b62
+SHA512 (node-v8.11.3-stripped.tar.gz) = 17e0ceb71d9e8d6ab3ce211ae6034014baf66a751e9dc093d2baf487822524dc48a919db56ddbbcdcd1521071b4d416a24057854d0e881a6e91d3ae9c58cd918
commit b944bdb7ecfb5d6aec7a65f9e33ca875f138bff0
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jun 14 08:33:46 2018 -0400
Update to 10.4.1 to address security issues
https://nodejs.org/en/blog/release/v10.4.0/
Resolves: rhbz#1590801
Resolves: rhbz#1591014
Resolves: rhbz#1591019
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 3827b7b..49ba7e5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -98,3 +98,4 @@
/node-v10.2.1-stripped.tar.gz
/node-v10.3.0-stripped.tar.gz
/node-v10.4.0-stripped.tar.gz
+/node-v10.4.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index ea55530..257ab3a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
%global nodejs_epoch 1
%global nodejs_major 10
%global nodejs_minor 4
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -31,7 +31,7 @@
%global v8_major 6
%global v8_minor 7
%global v8_build 288
-%global v8_patch 43
+%global v8_patch 45
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -57,7 +57,7 @@
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 29
+%global nghttp2_minor 32
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
@@ -475,11 +475,18 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
-* Thu Jun 07 2018 Stephen Gallagher
sgallagh@redhat.com - -
+* Thu Jun 14 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.4.1-1
+- Update to 10.4.1 to address security issues
+-
https://nodejs.org/en/blog/release/v10.4.0/
+- Resolves: rhbz#1590801
+- Resolves: rhbz#1591014
+- Resolves: rhbz#1591019
+
+* Thu Jun 07 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.4.0-1
- Update to 10.4.0
-
https://nodejs.org/en/blog/release/v10.4.0/
-* Wed May 30 2018 Stephen Gallagher
sgallagh@redhat.com - -
+* Wed May 30 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.3.0-1
- Update to 10.3.0
- Update npm to 6.1.0
-
https://nodejs.org/en/blog/release/v10.3.0/
diff --git a/sources b/sources
index 64e702b..a9936e3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.4.0-stripped.tar.gz) = 7119246769a71f6c2b8fb44b23003b6a6efcbdc3934e49523dba91c3c5dd91b9f6a193ce8121fbb35401467e970a6c3ac02a470485f992386cd1be849ba996d1
+SHA512 (node-v10.4.1-stripped.tar.gz) = 6344c1a436a437ea52d50ef3f3cc66225e7b47612927c29660842c0a0f5293002bddd68935207599238504b027f64f7613f7ba667251a65bf8c4f81d6a26239b
commit ac33fdb3b3369887b7f60ee14fdc406287e5cbea
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jun 7 09:04:01 2018 -0400
Drop --debug-http2
Upstream removed this option.
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 18acb88..ea55530 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -305,7 +305,6 @@ export LDFLAGS="%{build_ldflags}"
--shared-openssl \
--shared-zlib \
--without-dtrace \
- --debug-http2 \
--debug-nghttp2 \
--openssl-use-def-ca-store
%else
@@ -316,7 +315,6 @@ export LDFLAGS="%{build_ldflags}"
--shared-http-parser \
--shared-nghttp2 \
--with-dtrace \
- --debug-http2 \
--debug-nghttp2 \
--openssl-use-def-ca-store
%endif
commit 6bbcfaf555464c763ccda4459d83517eb54cbf63
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jun 7 08:54:08 2018 -0400
Update to 10.4.0
https://nodejs.org/en/blog/release/v10.4.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 9493b52..3827b7b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -97,3 +97,4 @@
/node-v10.2.0-stripped.tar.gz
/node-v10.2.1-stripped.tar.gz
/node-v10.3.0-stripped.tar.gz
+/node-v10.4.0-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-on-shared-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
index 712d413..54c26ad 100644
--- a/0001-Disable-running-gyp-on-shared-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,14 +1,14 @@
-From 03d9247890c2755710a8208974d2919b6a217a63 Mon Sep 17 00:00:00 2001
+From b5b4b7f8acd2d67c79d1fc2c954aa88edff27511 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
-Subject: [PATCH 1/4] Disable running gyp on shared deps
+Subject: [PATCH 1/2] Disable running gyp on shared deps
---
Makefile | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index a7099947c72a783a4b9d96c950ac084153532d94..bfd205d0992d4bb4b901a1f3d5595e01e6f88bf8 100644
+index b11168aaa456af019a32885f5495c4527a16e9a0..1297fbfc9f68261ea8ebfd1ac70f32581918d078 100644
--- a/Makefile
+++ b/Makefile
@@ -89,14 +89,13 @@ $(NODE_EXE): config.gypi out/Makefile
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
index b51bf87..050485e 100644
--- a/0002-Suppress-NPM-message-to-run-global-update.patch
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -1,7 +1,7 @@
-From 396550f6e26912fe6ef774bc60e24ef73e2f5366 Mon Sep 17 00:00:00 2001
+From e84a42f54aa1dabc115a0c647af6aa1500a85f34 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 May 2018 08:05:30 -0400
-Subject: [PATCH 2/4] Suppress NPM message to run global update
+Subject: [PATCH 2/2] Suppress NPM message to run global update
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
---
diff --git a/nodejs.spec b/nodejs.spec
index e0f05fa..18acb88 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 3
+%global nodejs_minor 4
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -29,9 +29,9 @@
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
-%global v8_minor 6
-%global v8_build 346
-%global v8_patch 32
+%global v8_minor 7
+%global v8_build 288
+%global v8_patch 43
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -121,9 +121,6 @@ Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# This does bad things on an RPM-managed npm.
Patch2: 0002-Suppress-NPM-message-to-run-global-update.patch
-# Fix PowerPC builds
-Patch3: 0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
-
BuildRequires: python2-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
@@ -273,7 +270,6 @@ The API documentation for the Node.js JavaScript runtime.
rm -rf deps/zlib
%patch2 -p1
-%patch3 -p1
# Replace any instances of unversioned python' with python2
find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
@@ -481,6 +477,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jun 07 2018 Stephen Gallagher
sgallagh@redhat.com - -
+- Update to 10.4.0
+-
https://nodejs.org/en/blog/release/v10.4.0/
+
* Wed May 30 2018 Stephen Gallagher
sgallagh@redhat.com - -
- Update to 10.3.0
- Update npm to 6.1.0
diff --git a/sources b/sources
index 8173400..64e702b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.3.0-stripped.tar.gz) = 0a2fed09a6d0e67288b90207ed85c331bc82655983d8e6c3df5173e6989ab1995fb4787837d5ade65fdb8728f943b2372bc86b3064b4f7270296e89218eff533
+SHA512 (node-v10.4.0-stripped.tar.gz) = 7119246769a71f6c2b8fb44b23003b6a6efcbdc3934e49523dba91c3c5dd91b9f6a193ce8121fbb35401467e970a6c3ac02a470485f992386cd1be849ba996d1
commit 0ee60cf892459e5cc411ee4344d48ed59d37eb95
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Jun 4 13:25:44 2018 -0400
Drop PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 4149a60..e0f05fa 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -334,11 +334,6 @@ make BUILDTYPE=Release %{?_smp_mflags}
%install
-# Work around Fedora 28 build issue:
-#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
-# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
-export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
-
rm -rf %{buildroot}
./tools/install.py install %{buildroot} %{_prefix}
commit ca9078658f60205576694751cc259e0b123ba013
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Jun 4 13:25:44 2018 -0400
Drop PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index db13429..07ebe29 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -348,11 +348,6 @@ make BUILDTYPE=Release %{?_smp_mflags}
%install
-# Work around Fedora 28 build issue:
-#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
-# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
-export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
-
rm -rf %{buildroot}
./tools/install.py install %{buildroot} %{_prefix}
commit 814fbc1ef81f87f4d1ece322c96f11b2ae8eb199
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Jun 4 13:04:15 2018 -0400
Build against OpenSSL 1.1
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 9753a9e..db13429 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -144,7 +144,7 @@ BuildRequires: libnghttp2-devel >= 1.25.0
Requires: libnghttp2 >= 1.25.0
%endif
-BuildRequires: (openssl-devel <= 1:1.1.0 or compat-openssl10-devel)
+BuildRequires: openssl-devel
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -495,6 +495,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Jun 04 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.11.2-2
+- Build against OpenSSL 1.1
+
* Thu May 17 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.11.2-1
- Update to 8.11.2
-
https://nodejs.org/en/blog/release/v8.11.2/
commit 22609d8c1bfeaa21fe0057645af20b3a2ccc7f53
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed May 30 10:26:09 2018 -0400
Update to 10.3.0
Update npm to 6.1.0
https://nodejs.org/en/blog/release/v10.3.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index c5772f7..9493b52 100644
--- a/.gitignore
+++ b/.gitignore
@@ -96,3 +96,4 @@
/node-v10.1.0-stripped.tar.gz
/node-v10.2.0-stripped.tar.gz
/node-v10.2.1-stripped.tar.gz
+/node-v10.3.0-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
similarity index 82%
rename from 0001-Disable-running-gyp-files-for-bundled-deps.patch
rename to 0001-Disable-running-gyp-on-shared-deps.patch
index dcf8a64..712d413 100644
--- a/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,14 +1,14 @@
-From 078957089ba07fe1e31a3e5ef718bc37da6d911c Mon Sep 17 00:00:00 2001
+From 03d9247890c2755710a8208974d2919b6a217a63 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
-Subject: [PATCH] Disable running gyp on shared deps
+Subject: [PATCH 1/4] Disable running gyp on shared deps
---
Makefile | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index f499788d9d86cc9b7a06c5f918ea1aea2ebd3a8c..4b5b8c9834fa8389511d43ffead2b8233137c499 100644
+index a7099947c72a783a4b9d96c950ac084153532d94..bfd205d0992d4bb4b901a1f3d5595e01e6f88bf8 100644
--- a/Makefile
+++ b/Makefile
@@ -89,14 +89,13 @@ $(NODE_EXE): config.gypi out/Makefile
diff --git a/0002-Suppress-NPM-message-to-run-global-update.patch b/0002-Suppress-NPM-message-to-run-global-update.patch
new file mode 100644
index 0000000..b51bf87
--- /dev/null
+++ b/0002-Suppress-NPM-message-to-run-global-update.patch
@@ -0,0 +1,74 @@
+From 396550f6e26912fe6ef774bc60e24ef73e2f5366 Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Tue, 1 May 2018 08:05:30 -0400
+Subject: [PATCH 2/4] Suppress NPM message to run global update
+
+Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
+---
+ deps/npm/bin/npm-cli.js | 46 -----------------------------------------
+ 1 file changed, 46 deletions(-)
+
+diff --git a/deps/npm/bin/npm-cli.js b/deps/npm/bin/npm-cli.js
+index d7c14bc4b2cd0206448163c3a9bed765bde7fae7..98edb6f45fe073e03794a2ae6e7aa7f5500723ee 100755
+--- a/deps/npm/bin/npm-cli.js
++++ b/deps/npm/bin/npm-cli.js
+@@ -72,56 +72,10 @@
+ // now actually fire up npm and run the command.
+ // this is how to use npm programmatically:
+ conf._exit = true
+ npm.load(conf, function (er) {
+ if (er) return errorHandler(er)
+- if (!unsupported.checkVersion(process.version).unsupported) {
+- const pkg = require('../package.json')
+- let notifier = require('update-notifier')({pkg})
+- if (
+- notifier.update &&
+- notifier.update.latest !== pkg.version
+- ) {
+- const color = require('ansicolors')
+- const useColor = npm.config.get('color')
+- const useUnicode = npm.config.get('unicode')
+- const old = notifier.update.current
+- const latest = notifier.update.latest
+- let type = notifier.update.type
+- if (useColor) {
+- switch (type) {
+- case 'major':
+- type = color.red(type)
+- break
+- case 'minor':
+- type = color.yellow(type)
+- break
+- case 'patch':
+- type = color.green(type)
+- break
+- }
+- }
+- const changelog = `
https://github.com/npm/npm/releases/tag/v$%7Blatest%7D%60
+- notifier.notify({
+- message: `New ${type} version of ${pkg.name} available! ${
+- useColor ? color.red(old) : old
+- } ${useUnicode ? '→' : '->'} ${
+- useColor ? color.green(latest) : latest
+- }\n` +
+- `${
+- useColor ? color.yellow('Changelog:') : 'Changelog:'
+- } ${
+- useColor ? color.cyan(changelog) : changelog
+- }\n` +
+- `Run ${
+- useColor
+- ? color.green(`npm install -g ${pkg.name}`)
+- : `npm i -g ${pkg.name}`
+- } to update!`
+- })
+- }
+- }
+ npm.commands[npm.command](npm.argv, function (err) {
+ //
https://genius.com/Lin-manuel-miranda-your-obedient-servant-lyrics
+ if (
+ !err &&
+ npm.config.get('ham-it-up') &&
+--
+2.17.0
+
diff --git a/0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch b/0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
index f3b8125..0436f75 100644
--- a/0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
+++ b/0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
@@ -1,7 +1,7 @@
-From a0048de40ceb91e0bf7b0ffd6eb5054c41b3a4a6 Mon Sep 17 00:00:00 2001
+From cefa0fd937cb48a8431e62268b2c9500b104d4e5 Mon Sep 17 00:00:00 2001
From: Junliang Yan
jyan@ca.ibm.com
Date: Wed, 9 May 2018 18:39:49 -0400
-Subject: [PATCH 3/3] [PATCH] PPC: use pc-relative address to init constpool
+Subject: [PATCH 3/4] [PATCH] PPC: use pc-relative address to init constpool
reg
R=joransiu@ca.ibm.com
diff --git a/no-npm-update-msg.patch b/no-npm-update-msg.patch
deleted file mode 100644
index f16961a..0000000
--- a/no-npm-update-msg.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff '--color=auto' -ruN node-v9.11.1.orig/deps/npm/bin/npm-cli.js node-v9.11.1/deps/npm/bin/npm-cli.js
---- node-v9.11.1.orig/deps/npm/bin/npm-cli.js 2018-04-05 00:34:51.000000000 -0400
-+++ node-v9.11.1/deps/npm/bin/npm-cli.js 2018-04-09 16:57:31.595166069 -0400
-@@ -25,12 +25,6 @@
-
- unsupported.checkForUnsupportedNode()
-
-- if (!unsupported.checkVersion(process.version).unsupported) {
-- var updater = require('update-notifier')
-- var pkg = require('../package.json')
-- updater({pkg: pkg}).notify({defer: true})
-- }
--
- var path = require('path')
- var npm = require('../lib/npm.js')
- var npmconf = require('../lib/config/core.js')
diff --git a/nodejs.spec b/nodejs.spec
index 8081807..4149a60 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,11 +20,11 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 2
-%global nodejs_patch 1
+%global nodejs_minor 3
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -76,8 +76,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_major 5
-%global npm_minor 6
+%global npm_major 6
+%global npm_minor 1
%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
@@ -115,14 +115,14 @@ Source100: %{name}-tarball.sh
Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
-Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
+Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Suppress the message from npm to run `npm -g update npm`
# This does bad things on an RPM-managed npm.
-Patch3: no-npm-update-msg.patch
+Patch2: 0002-Suppress-NPM-message-to-run-global-update.patch
# Fix PowerPC builds
-Patch4: 0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
+Patch3: 0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
BuildRequires: python2-devel
BuildRequires: zlib-devel
@@ -272,9 +272,8 @@ The API documentation for the Node.js JavaScript runtime.
%patch1 -p1
rm -rf deps/zlib
-
+%patch2 -p1
%patch3 -p1
-%patch4 -p1
# Replace any instances of unversioned python' with python2
find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
@@ -487,6 +486,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Wed May 30 2018 Stephen Gallagher
sgallagh@redhat.com - -
+- Update to 10.3.0
+- Update npm to 6.1.0
+-
https://nodejs.org/en/blog/release/v10.3.0/
+
* Tue May 29 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.2.1-2
- Fix up bare 'python' to be python2
- Drop redundant entry in docs section
diff --git a/sources b/sources
index db404d0..8173400 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.2.1-stripped.tar.gz) = 21c6e8d3eee67c0d4b0a7b456b7706fed924da388ddaf8c4987215df1402ca172f417c202cbf262f68454efdbde984455280c8f868ea1c1798f86325a04ed8b7
+SHA512 (node-v10.3.0-stripped.tar.gz) = 0a2fed09a6d0e67288b90207ed85c331bc82655983d8e6c3df5173e6989ab1995fb4787837d5ade65fdb8728f943b2372bc86b3064b4f7270296e89218eff533
commit ed12bdf9708db3594737c5578c3e61f72dd64def
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue May 29 08:21:46 2018 -0400
Fix up bare 'python' to be python2
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index a691a7a..9753a9e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -287,6 +287,13 @@ rm -rf deps/icu-small \
%patch4 -p1
+# Replace any instances of unversioned python' with python2
+find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
+find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python2~" {} ;
+find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python2~" {} ;
+find . -type f -exec sed -i "s~python -c~python2 -c~" {} ;
+sed -i "s~which('python')~which('python2')~" configure
+
%build
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
@@ -308,11 +315,6 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
export LDFLAGS="%{build_ldflags}"
-# Work around Fedora 28 issue:
-#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
-# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
-export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
-
#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
./configure --prefix=%{_prefix} \
@@ -489,7 +491,6 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
-%{_pkgdocdir}/npm*
%{_pkgdocdir}/npm/html
%{_pkgdocdir}/npm/doc
commit 3c76939ae2b9d4fe0600971ae9db1bc76dd4900c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue May 29 09:33:09 2018 -0400
Add changelog entries
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 957387e..8081807 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -24,7 +24,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -487,6 +487,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Tue May 29 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.2.1-2
+- Fix up bare 'python' to be python2
+- Drop redundant entry in docs section
+
* Fri May 25 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.2.1-1
- Update to 10.2.1
-
https://nodejs.org/en/blog/release/v10.2.1/
commit e12c018b73d9aaff0706adf856258c93584edf32
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue May 29 08:21:46 2018 -0400
Fix up bare 'python' to be python2
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 458378f..957387e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -276,6 +276,13 @@ rm -rf deps/zlib
%patch3 -p1
%patch4 -p1
+# Replace any instances of unversioned python' with python2
+find . -type f -exec sed -i "s~/usr/bin/env python~/usr/bin/python2~" {} ;
+find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python2~" {} ;
+find . -type f -exec sed -i "s~/usr/bin/python\W~/usr/bin/python2~" {} ;
+find . -type f -exec sed -i "s~python -c~python2 -c~" {} ;
+sed -i "s~which('python')~which('python2')~" configure
+
%build
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
@@ -297,11 +304,6 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
export LDFLAGS="%{build_ldflags}"
-# Work around Fedora 28 issue:
-#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
-# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
-export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
-
#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
./configure --prefix=%{_prefix} \
@@ -481,7 +483,6 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
-%{_pkgdocdir}/npm*
%{_pkgdocdir}/npm/html
%{_pkgdocdir}/npm/doc
commit ad36c3e56371ec8d28e415840d8dae56ab452142
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri May 25 08:03:40 2018 -0400
Update to 10.2.1
https://nodejs.org/en/blog/release/v10.2.1/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index af52030..c5772f7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -95,3 +95,4 @@
/node-v10.0.0-stripped.tar.gz
/node-v10.1.0-stripped.tar.gz
/node-v10.2.0-stripped.tar.gz
+/node-v10.2.1-stripped.tar.gz
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index 20dab4b..237ae13 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -1,10 +1,10 @@
#!/bin/sh
version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
+rm -f node-v${version}.tar.gz
wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
-echo "Now make sure to run:"
-echo "fedpkg new-sources node-v${version}-stripped.tar.gz"
+fedpkg new-sources node-v${version}-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 9494be4..458378f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
%global nodejs_epoch 1
%global nodejs_major 10
%global nodejs_minor 2
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -486,9 +486,13 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Fri May 25 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.2.1-1
+- Update to 10.2.1
+-
https://nodejs.org/en/blog/release/v10.2.1/
+
* Wed May 23 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.2.0-1
- Update to 10.2.0
--
https://nodejs.org/en/blog/release/v10.0.0/
+-
https://nodejs.org/en/blog/release/v10.2.0/
* Thu May 10 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.1.0-3
- Fix incorrect rpm macro
diff --git a/sources b/sources
index 4e5f3c9..db404d0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.2.0-stripped.tar.gz) = 41f3e09adc104ca5fe264a0622013ab2667116384fc5f1018162b4bc5b7627b284926769de37b59eddb4e11ab90e61a20196469ad420707f9982d43aca1baae5
+SHA512 (node-v10.2.1-stripped.tar.gz) = 21c6e8d3eee67c0d4b0a7b456b7706fed924da388ddaf8c4987215df1402ca172f417c202cbf262f68454efdbde984455280c8f868ea1c1798f86325a04ed8b7
commit 65be442ab169ceaf1827b550565166db06a9efa7
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed May 23 21:40:27 2018 -0400
Update to 10.2.0
https://nodejs.org/en/blog/release/v10.0.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 915abe0..af52030 100644
--- a/.gitignore
+++ b/.gitignore
@@ -94,3 +94,4 @@
/node-v9.11.1-stripped.tar.gz
/node-v10.0.0-stripped.tar.gz
/node-v10.1.0-stripped.tar.gz
+/node-v10.2.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 3f4ce6f..9494be4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,18 +20,18 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 1
+%global nodejs_minor 2
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
%global v8_minor 6
%global v8_build 346
-%global v8_patch 27
+%global v8_patch 32
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -52,7 +52,7 @@
# libuv - from deps/uv/include/uv-version.h
%global libuv_major 1
%global libuv_minor 20
-%global libuv_patch 2
+%global libuv_patch 3
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -486,6 +486,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Wed May 23 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.2.0-1
+- Update to 10.2.0
+-
https://nodejs.org/en/blog/release/v10.0.0/
+
* Thu May 10 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.1.0-3
- Fix incorrect rpm macro
diff --git a/sources b/sources
index d2ca6fa..4e5f3c9 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.1.0-stripped.tar.gz) = 9b85f482cd947359cae98c2b2cfb364f89712ea75b2df47b7072bfbc63a6557f3e22c013ffe1ad8267065f32f9055e9d9edfa64682e0a3efe887e13a977b977e
+SHA512 (node-v10.2.0-stripped.tar.gz) = 41f3e09adc104ca5fe264a0622013ab2667116384fc5f1018162b4bc5b7627b284926769de37b59eddb4e11ab90e61a20196469ad420707f9982d43aca1baae5
commit 733d54662fbb3d92d85223939df41d693b45fa6d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri May 18 09:36:07 2018 -0400
Add patch for nghttp2
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-on-shared-deps.patch
similarity index 69%
rename from 0001-Disable-running-gyp-files-for-bundled-deps.patch
rename to 0001-Disable-running-gyp-on-shared-deps.patch
index 324a468..1c104e0 100644
--- a/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-Disable-running-gyp-on-shared-deps.patch
@@ -1,17 +1,19 @@
-From c2aff16cc196a61f4ab1cdae4a91c7926123c239 Mon Sep 17 00:00:00 2001
+From c651b81df4132f5a1db173d1317ba64673de6f01 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
-Subject: [PATCH] Disable running gyp on shared deps
+Subject: [PATCH 1/4] Disable running gyp on shared deps
---
Makefile | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index 0a217bd893..e1229ad07f 100644
+index 2c62bf29cd233479e7c56b86d293519dcf9cce6e..10198b11fac2171b6b1c381dbba72596f350870d 100644
--- a/Makefile
+++ b/Makefile
-@@ -79,10 +79,9 @@ $(NODE_G_EXE): config.gypi out/Makefile
+@@ -90,14 +90,13 @@ $(NODE_EXE): config.gypi out/Makefile
+
+ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
@@ -25,5 +27,8 @@ index 0a217bd893..e1229ad07f 100644
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
+ $(error Missing or stale $@, please run ./$<)
+
--
-2.12.2
+2.17.0
+
diff --git a/0001-Fix-aarch64-debug.patch b/0002-Fix-aarch64-debug.patch
similarity index 65%
rename from 0001-Fix-aarch64-debug.patch
rename to 0002-Fix-aarch64-debug.patch
index 00bae49..fa30e47 100644
--- a/0001-Fix-aarch64-debug.patch
+++ b/0002-Fix-aarch64-debug.patch
@@ -1,17 +1,19 @@
-From 058e4efd61c7c9ab4efd55bd9aa37e2184654050 Mon Sep 17 00:00:00 2001
+From 1ce4b0bab75380351ab04cc97ee7f86d7c988d44 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed, 20 Sep 2017 13:05:01 +0200
-Subject: [PATCH] Fix aarch64 debug
+Subject: [PATCH 2/4] Fix aarch64 debug
---
deps/v8/src/v8.gyp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/deps/v8/src/v8.gyp b/deps/v8/src/v8.gyp
-index c269f245aa..2ebbd393a9 100644
+index 1c56842f81a548f91b1e5f7b62690d50e012e039..0f34d104f7fff89c5321a54b4cc3ca577aed1be4 100644
--- a/deps/v8/src/v8.gyp
+++ b/deps/v8/src/v8.gyp
-@@ -348,7 +348,7 @@
+@@ -350,11 +350,11 @@
+ ],
+ 'outputs': [
'<(INTERMEDIATE_DIR)/snapshot.cc',
],
'variables': {
@@ -20,7 +22,11 @@ index c269f245aa..2ebbd393a9 100644
'conditions': [
['v8_random_seed!=0', {
'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
-@@ -449,7 +449,7 @@
+ }],
+ ['v8_vector_stores!=0', {
+@@ -451,11 +451,11 @@
+ 'action_name': 'run_mksnapshot (external)',
+ 'inputs': [
'<(mksnapshot_exec)',
],
'variables': {
@@ -29,6 +35,8 @@ index c269f245aa..2ebbd393a9 100644
'conditions': [
['v8_random_seed!=0', {
'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
+ }],
+ ['v8_vector_stores!=0', {
--
-2.14.1
+2.17.0
diff --git a/0003-Suppress-message-to-update-npm.patch b/0003-Suppress-message-to-update-npm.patch
new file mode 100644
index 0000000..d2c38a4
--- /dev/null
+++ b/0003-Suppress-message-to-update-npm.patch
@@ -0,0 +1,34 @@
+From 78ba46ffc5b0bd1dd30470a8b4fa21ce75b36c67 Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Fri, 18 May 2018 08:25:06 -0400
+Subject: [PATCH 3/4] Suppress message to update npm
+
+Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
+---
+ deps/npm/bin/npm-cli.js | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/deps/npm/bin/npm-cli.js b/deps/npm/bin/npm-cli.js
+index e2c013b5df86371b5a0e5b5ac5cc73613f47fd2c..50691e6f82b7f102cbbf40ba568345836dc849fb 100755
+--- a/deps/npm/bin/npm-cli.js
++++ b/deps/npm/bin/npm-cli.js
+@@ -23,16 +23,10 @@
+ log.pause() // will be unpaused when config is loaded.
+ log.info('it worked if it ends with', 'ok')
+
+ unsupported.checkForUnsupportedNode()
+
+- if (!unsupported.checkVersion(process.version).unsupported) {
+- var updater = require('update-notifier')
+- var pkg = require('../package.json')
+- updater({pkg: pkg}).notify({defer: true})
+- }
+-
+ var path = require('path')
+ var npm = require('../lib/npm.js')
+ var npmconf = require('../lib/config/core.js')
+ var errorHandler = require('../lib/utils/error-handler.js')
+ var output = require('../lib/utils/output.js')
+--
+2.17.0
+
diff --git a/0004-http2-pass-session-to-DEBUG_HTTP2SESSION2.patch b/0004-http2-pass-session-to-DEBUG_HTTP2SESSION2.patch
new file mode 100644
index 0000000..e9eaabf
--- /dev/null
+++ b/0004-http2-pass-session-to-DEBUG_HTTP2SESSION2.patch
@@ -0,0 +1,43 @@
+From 138926210083b2a9d1bd7a224204e02199242dab Mon Sep 17 00:00:00 2001
+From: Daniel Bevenius
daniel.bevenius@gmail.com
+Date: Fri, 18 May 2018 09:58:37 +0200
+Subject: [PATCH 4/4] http2: pass session to DEBUG_HTTP2SESSION2
+
+When configure with --debug-http2 --debug-nghttp2 the following
+compilation error is generated:
+
+DEBUG_HTTP2SESSION2(this, "fatal error receiving data: %d", ret);
+ ^
+../src/node_http2.cc:1690:27:
+error: invalid use of 'this' outside of a non-static member function
+
+1 errors generated.
+
+OnStreamReadImpl is static and I think the intention was to pass in the
+session variable here.
+
+Refs:
https://github.com/nodejs/node/issues/20806
+---
+ src/node_http2.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/node_http2.cc b/src/node_http2.cc
+index b31878582301ed2fc974e1ff75bd0776bfd3293e..4aa9fceec18ced426195039da4814be3898d9689 100644
+--- a/src/node_http2.cc
++++ b/src/node_http2.cc
+@@ -1685,11 +1685,11 @@ void Http2Session::OnStreamReadImpl(ssize_t nread,
+
+ // Note: if ssize_t is not defined (e.g. on Win32), nghttp2 will typedef
+ // ssize_t to int. Cast here so that the < 0 check actually works on
+ // Windows.
+ if (static_cast<int>(ret) < 0) {
+- DEBUG_HTTP2SESSION2(this, "fatal error receiving data: %d", ret);
++ DEBUG_HTTP2SESSION2(session, "fatal error receiving data: %d", ret);
+
+ Local<Value> argv[1] = {
+ Integer::New(isolate, ret),
+ };
+ session->MakeCallback(env->error_string(), arraysize(argv), argv);
+--
+2.17.0
+
diff --git a/no-npm-update-msg.patch b/no-npm-update-msg.patch
deleted file mode 100644
index f16961a..0000000
--- a/no-npm-update-msg.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff '--color=auto' -ruN node-v9.11.1.orig/deps/npm/bin/npm-cli.js node-v9.11.1/deps/npm/bin/npm-cli.js
---- node-v9.11.1.orig/deps/npm/bin/npm-cli.js 2018-04-05 00:34:51.000000000 -0400
-+++ node-v9.11.1/deps/npm/bin/npm-cli.js 2018-04-09 16:57:31.595166069 -0400
-@@ -25,12 +25,6 @@
-
- unsupported.checkForUnsupportedNode()
-
-- if (!unsupported.checkVersion(process.version).unsupported) {
-- var updater = require('update-notifier')
-- var pkg = require('../package.json')
-- updater({pkg: pkg}).notify({defer: true})
-- }
--
- var path = require('path')
- var npm = require('../lib/npm.js')
- var npmconf = require('../lib/config/core.js')
diff --git a/nodejs.spec b/nodejs.spec
index 79b98ab..a691a7a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -109,15 +109,19 @@ Source100: %{name}-tarball.sh
Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
-Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
+Patch1: 0001-Disable-running-gyp-on-shared-deps.patch
# Being fixed upstream.
# Follow
https://bugs.chromium.org/p/v8/issues/detail?id=6939
-Patch2: 0001-Fix-aarch64-debug.patch
+Patch2: 0002-Fix-aarch64-debug.patch
# Suppress the message from npm to run `npm -g update npm`
# This does bad things on an RPM-managed npm.
-Patch3: no-npm-update-msg.patch
+Patch3: 0003-Suppress-message-to-update-npm.patch
+
+# Fix nghttp2 debug builds
+#
https://github.com/nodejs/node/pull/20815
+Patch4: 0004-http2-pass-session-to-DEBUG_HTTP2SESSION2.patch
BuildRequires: python2-devel
BuildRequires: libicu-devel
@@ -281,6 +285,8 @@ rm -rf deps/icu-small \
%patch3 -p1
+%patch4 -p1
+
%build
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
commit fb6fa8bce83dfb923161fdfb93cbafcc9c61b46a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri May 18 08:26:19 2018 -0400
Drop unneeded debug disabling lines
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 25a7731..79b98ab 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,13 +7,6 @@
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
-# ARM64 builds of 8.5.0 break on the Debug builds, so we'll just
-# build the standard runtime until that gets sorted out.
-#
https://github.com/nodejs/node/issues/15395
-%ifarch aarch64
-%global with_debug 1
-%endif
-
# == Node.js Version ==
# Note: Fedora should only ship LTS versions of Node.js (currently expected
# to be major versions with even numbers). The odd-numbered versions are new
commit 146920185805f7c45c94034f0a8df160c7c784ce
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu May 17 11:20:09 2018 -0400
Update to 8.11.2
https://nodejs.org/en/blog/release/v8.11.2/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 7e9ace0..79e7af2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -86,3 +86,4 @@
/node-v8.9.4-stripped.tar.gz
/node-v8.10.0-stripped.tar.gz
/node-v8.11.0-stripped.tar.gz
+/node-v8.11.2-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index c8f5a45..25a7731 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -22,17 +22,17 @@
%global nodejs_epoch 1
%global nodejs_major 8
%global nodejs_minor 11
-%global nodejs_patch 0
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
%global v8_minor 2
%global v8_build 414
-%global v8_patch 50
+%global v8_patch 54
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -56,14 +56,14 @@
%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
-# libicu
+# ICU - from configure in the configure_intl() function
%global libicu_major 60
-%global libicu_minor 0
+%global libicu_minor 1
%global libicu_version %{libicu_major}.%{libicu_minor}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 25
+%global nghttp2_minor 29
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
@@ -495,6 +495,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu May 17 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.11.2-1
+- Update to 8.11.2
+-
https://nodejs.org/en/blog/release/v8.11.2/
+
* Fri Apr 13 2018 Rafael dos Santos
rdossant@redhat.com - 1:8.11.0-2
- Use standard Fedora linker flags (bug #1543859)
@@ -619,564 +623,3 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
- Update to v8.1.2
- remove GCC 7 patch, as it is now fixed in node >= 6.12
-* Fri Jun 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
-- Update to 6.11.0
-- remove system CA patch since it was merged upstream
--
https://github.com/nodejs/node/pull/8334
-
-* Fri May 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-3
-- Rebuild without bootstrap
-
-* Thu May 11 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-2
-- Provide bundled http-parser in case of boostraping
-
-* Wed May 10 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.3-1
-- Update to 6.10.3 (LTS)
--
https://nodejs.org/en/blog/release/v6.10.3/
-- Stop using the bundled http-parser now that there is an upstream
- release with a new-enough version.
-
-* Tue May 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.2-3
-- Bootstrap systemtap-sdt-devel for modularity
-
-* Wed Apr 19 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.2-2
-- Switch to final upstream patch for GCC 7 compatibility
-
-* Wed Apr 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.2-1
-- Update to 6.10.2
-
-* Mon Apr 03 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.1-3
-- Move NPM manpages into the correct subpackage
-- Fixes: rhbz#1433403
-
-* Mon Apr 03 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.1-2
-- Revert upstream change that is incompatible with OpenSSL 1.0.1
-- Fixes: rhbz#1436445
-
-* Wed Mar 22 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.1-1
-- Update to 6.10.1
-- remove small-icu from deps
-
-* Thu Mar 09 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.0-1
-- Update to 6.10.0
--
https://nodejs.org/en/blog/release/v6.10.0/
-- New patch for handling system CA certificates
-
-* Tue Feb 28 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.5-2
-- Fix FTBFS against GCC 7
-- Resolves: RHBZ 1423991
-
-* Fri Feb 10 2017 Fedora Release Engineering
releng@fedoraproject.org - 1:6.9.5-1.1
-- Rebuilt for
https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
-
-* Wed Feb 1 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.5-1
-- Update to v6.9.5(security)
-- Reenable debug mode (
https://github.com/nodejs/node/pull/10525)
-
-* Tue Jan 17 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.4-2
-- Enable DTrace support.
-- Eliminate newlines from CFLAGS due to broken dtrace shim
-
https://sourceware.org/bugzilla/show_bug.cgi?id=21063
- Thanks to Kinston Hughes for the fix.
-
-* Tue Jan 10 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.4-1
-- Update to v6.9.4
-
-* Thu Jan 05 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.3-1
--
https://nodejs.org/en/blog/release/v6.9.3/
-
-* Wed Dec 21 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.2-2
-- Debug builds are failing. Disable them.
-
-* Thu Dec 08 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.2-1
-- Update to v6.9.2
-
-* Tue Nov 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-4
-- Fix incorrect Conflicts for nodejs-docs
-
-* Tue Nov 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-2
-- Bump revision and rebuild for s390x
-
-* Thu Oct 20 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-1
-- Update to 6.9.1 LTS release
-- Fix a regression introduced in v6.8.0 in readable stream that caused unpipe
- to remove the wrong stream
--
https://nodejs.org/en/blog/release/v6.9.1/
-
-* Tue Oct 18 2016 Stephen Gallagher
sgallagh@redhat.com - -
-- Update to 6.9.0 LTS release
--
https://nodejs.org/en/blog/release/v6.9.0/
-
-* Mon Oct 17 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-5
-- Add dist tag to npm nodejs dependency
-
-* Mon Oct 17 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-4
-- Fix typo in npm nodejs dependency
-
-* Sat Oct 15 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-3
-- Bump release version for tagging bug
-
-* Sat Oct 15 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-1
-- Update node to v6.8.0
-- Fix FTBFS against non-bundled zlib
-
-* Thu Oct 13 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.8.0-108
-- Update node to v6.8.0 and npm@3.10.8
-
-* Tue Sep 27 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.7.0-107
-- Update to 6.7.0
--
https://nodejs.org/en/blog/release/v6.7.0/
-
-* Fri Sep 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.6.0-106
-- Drop Conflicts: from main package.
- It wasn't needed and was breaking upgrades in some cases.
-- Move npm support files into the npm package
-- Mark manpages as %%doc
-
-* Fri Sep 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.6.0-105
-- Update to 6.6.0
--
https://github.com/nodejs/node/blob/v6.6.0/doc/changelogs/CHANGELOG_V6.md#6....
-
-* Mon Sep 12 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.5.0-104
-- Add support for building on EPEL 7 against OpenSSL 1.0.1
-- Modify v8_abi autorequires to avoid unnecessary rebuilds
-
-* Mon Aug 29 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.5.0-103
-- Update to 6.5.0
-
-* Mon Aug 22 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-102
-- Bump release to 102 to fix broken npm dependency
-
-* Thu Aug 18 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-1
-- Update to 6.4.0
-
-* Tue Aug 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.1-101
-- Build Node.js with internationalization support
-
-* Thu Aug 04 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.1-100
-- Split npm into a subpackage
-
-* Mon Jul 25 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.1-1
-- Update to 6.3.1
-- comment out %%patch3
-
-* Mon Jul 18 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.0-3
-- Fix epoch version dependency on libuv
-
-* Tue Jul 12 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.0-2
-- Patch node.gyp to fix failing ./configure
-
-* Sun Jul 10 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.0-1
-- Update node to 6.3.0
-- update punycode to 2.0.0
-- add gcc and gcc-c++ as build dependencies
-- modified system-certs patch
-
-* Sat Jun 18 2016 Tom Hughes
tom@compton.nu - 1:6.2.2-1
-- Update to latest stable release 6.2.2
-- Add check on npm version
-
-* Tue Jun 7 2016 Tom Hughes
tom@compton.nu - 1:6.2.1-1
-- Update to latest stable release 6.2.1
-
-* Wed May 18 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.2.0-1
-- Update to latest stable release 6.2.0
--
https://github.com/nodejs/node/blob/v6.2.0/doc/changelogs/CHANGELOG_V6.md#6....
-
-* Mon May 09 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.1.0-1
-- Update to latest stable release 6.1.0
--
https://github.com/nodejs/node/blob/v6.1.0/CHANGELOG.md
-
-* Tue May 03 2016 Stephen Gallagher
sgallagh@redhat.com - 1:5.11.0-3
-- Drop the epoch on the virtual provides for npm
-
-* Thu Apr 28 2016 Stephen Gallagher
sgallagh@redhat.com - 1:5.11.0-2
-- Add epoch and rebuild to preserve upgrade path
-
-* Mon Apr 25 2016 Stephen Gallagher
sgallagh@redhat.com - 5.11.0-1
-- Update to latest stable release 5.11.0
--
https://github.com/nodejs/node/blob/v5.11.0/CHANGELOG.md
-
-* Mon Apr 11 2016 Stephen Gallagher
sgallagh@redhat.com - 5.10.0-1
-- Update to latest stable release 5.10.1
--
https://github.com/nodejs/node/blob/v5.10.1/CHANGELOG.md
-
-* Fri Apr 01 2016 Stephen Gallagher
sgallagh@redhat.com - 5.10.0-1
-- Update to latest security release (5.10.0)
-- Update bundled npm to 3.8.3
-- Fixes serious man-in-the-middle vulnerability with npm
-
-* Wed Mar 23 2016 Stephen Gallagher
sgallagh@redhat.com - 5.9.1-1
-- Update to latest stable release (5.9.1)
-- Bundle npm (3.7.3)
-
-* Wed Mar 23 2016 Stephen Gallagher
sgallagh@redhat.com - 4.4.1-1
-- Update to 4.4.1 upstream LTS release
-- Add more versatile ABI checking
-
-* Tue Feb 23 2016 Tom Hughes
tom@compton.nu - 4.3.1-1
-- Update to 4.3.1 upstream LTS release
-
-* Wed Feb 10 2016 Tom Hughes
tom@compton.nu - 4.3.0-3
-- Verify that the built node reports the expected versions
-- Drop unneeded dep on http-parser-devel
-- Add version check for punycode
-
-* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-2
-- Fix nodejs-abi to be 4.3
-- Clean up bundled versions in spec file
-
-* Tue Feb 09 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-1
-- Update to 4.3.0 upstream LTS release
--
https://github.com/nodejs/node/blob/v4.3.0/CHANGELOG.md
-- Switch to the bundled http-parser
-- Build with -fno-delete-pointer-null-checks for GCC 6
-
-* Tue Feb 9 2016 Tom Hughes
tom@compton.nu - 4.2.6-1
-- Update to 4.2.6 upstream release
-
-* Thu Feb 04 2016 Fedora Release Engineering
releng@fedoraproject.org - 4.2.4-5
-- Rebuilt for
https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
-
-* Tue Jan 19 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-4
-- Force a depdendency on the correct version of http-parser
-
-* Tue Jan 19 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-3
-- Force a dependency on the correct version of libuv
-
-* Mon Jan 18 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-2
-- Fix Provides: for punycode
-
-* Wed Jan 13 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-1
-- New upstream bugfix release 4.2.4
--
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
-
-* Fri Dec 04 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.3-2
-- Add %%with_debug variable to spec file
- The debug build is not supported on all architectures.
-
-* Fri Dec 04 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.3-1
-- New upstream security release 4.2.3
--
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
-- Fix incorrect v8 version
-
-* Wed Dec 2 2015 Peter Robinson
pbrobinson@fedoraproject.org 4.2.2-4
-- Use nodejs_arches macro for arch definition (add aarch64 and power64 platforms)
-
-* Wed Dec 02 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-3
-- Fix nodejs_abi version
-- Also ensure that we are building against the correct libuv
-
-* Wed Dec 02 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-2
-- Disable debug build for ARMv7 since it fails to build
-
-* Tue Dec 01 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-1
-- Upgrade to Node.js 4.2.2 (LTS)
-
-* Wed Jun 17 2015 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.36-5
-- Rebuilt for
https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
-
-* Wed Apr 29 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-4
-- fix incorrect Requires on libuv (RHBZ#1215719)
-
-* Tue Feb 24 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-3
-- bump v8 requires (RHBZ#1195457)
-
-* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-2
-- build against compat-libuv010
-
-* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-1
-- new upstream release 0.10.36
-
http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
-- Please note that several upstream releases were skipped due to regressions
- reported in the upstream bug tracker. Please also review the 0.10.34 and
- 0.10.35 changelogs available at the above URL for a list of all changes.
-
-* Wed Nov 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.33-1
-- new upstream release 0.10.33
-
http://blog.nodejs.org/2014/10/23/node-v0-10-33-stable/
-- This release disables SSLv3 to secure Node.js services against the POODLE
- attack. (CVE-2014-3566; RHBZ#1152789) For more information or to learn how
- to re-enable SSLv3 in order to support legacy clients, please see the upstream
- release announcement linked above.
-
-* Tue Oct 21 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-2
-- add Provides nodejs-punycode (RHBZ#1151811)
-
-* Thu Sep 18 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-1
-- new upstream release 0.10.32
-
http://blog.nodejs.org/2014/08/19/node-v0-10-31-stable/
-
http://blog.nodejs.org/2014/09/16/node-v0-10-32-stable/
-
-* Sun Aug 17 2014 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.30-2
-- Rebuilt for
https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
-
-* Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
-- new upstream release 0.10.30
-
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
-
-* Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
-- new upstream release 0.10.29
-
http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
-- The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
- be done in a stable distribution release. This build of nodejs will behave as
- if NODE_INVALID_UTF8 was set. For more information on the implications, see:
-
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
-
-* Sat Jun 07 2014 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.28-3
-- Rebuilt for
https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
-
-* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-2
-- use the system certificate store instead of the bundled copy
- both are based on the Mozilla CA list, so the only effect this should have is
- making additional certificates added by the system administrator available to
- node
-
-* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-1
-- new upstream release 0.10.28
- There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
- thing updated was npm, which is shipped seperately. The latest was only
- packaged to avoid confusion. Please see the v0.10.27 changelog for relevant
- changes in this update:
-
http://blog.nodejs.org/2014/05/01/node-v0-10-27-stable/
-
-* Thu Feb 20 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.26-1
-- new upstream release 0.10.26
-
http://blog.nodejs.org/2014/02/18/node-v0-10-26-stable/
-
-* Fri Feb 14 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-2
-- rebuild for icu-53 (via v8)
-
-* Mon Jan 27 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-1
-- new upstream release 0.10.25
-
http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
-
-* Thu Dec 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.24-1
-- new upstream release 0.10.24
-
http://blog.nodejs.org/2013/12/19/node-v0-10-24-stable/
-- upstream install script installs the headers now
-
-* Thu Dec 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.23-1
-- new upstream release 0.10.23
-
http://blog.nodejs.org/2013/12/11/node-v0-10-23-stable/
-
-* Tue Nov 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.22-1
-- new upstream release 0.10.22
-
http://blog.nodejs.org/2013/11/12/node-v0-10-22-stable/
-
-* Fri Oct 18 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.21-1
-- new upstream release 0.10.21
-
http://blog.nodejs.org/2013/10/18/node-v0-10-21-stable/
-- resolves an undisclosed security vulnerability in the http module
-
-* Tue Oct 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.20-1
-- new upstream release 0.10.20
-
http://blog.nodejs.org/2013/09/30/node-v0-10-20-stable/
-
-* Wed Sep 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.19-1
-- new upstream release 0.10.19
-
http://blog.nodejs.org/2013/09/24/node-v0-10-19-stable/
-
-* Fri Sep 06 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.18-1
-- new upstream release 0.10.18
-
http://blog.nodejs.org/2013/09/04/node-v0-10-18-stable/
-
-* Tue Aug 27 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.17-1
-- new upstream release 0.10.17
-
http://blog.nodejs.org/2013/08/21/node-v0-10-17-stable/
-- fix duplicated/conflicting documentation files (RHBZ#1001253)
-
-* Sat Aug 17 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.16-1
-- new upstream release 0.10.16
-
http://blog.nodejs.org/2013/08/16/node-v0-10-16-stable/
-- add v8-devel to -devel Requires
-- restrict -devel Requires to the same architecture
-
-* Wed Aug 14 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-3
-- fix typo in _isa macro in v8 Requires
-
-* Mon Aug 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-2
-- use unversioned docdir for -docs subpackage
-
https://fedoraproject.org/wiki/Changes/UnversionedDocdirs
-- use main package's docdir instead of a seperate -docs directory
-
-* Thu Jul 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-1
-- new upstream release 0.10.14
-
http://blog.nodejs.org/2013/07/25/node-v0-10-14-stable/
-
-* Wed Jul 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.13-1
-- new upstream release 0.10.13
-
http://blog.nodejs.org/2013/07/09/node-v0-10-13-stable/
-- remove RPM macros, etc. now that they've migrated to nodejs-packaging
-
-* Wed Jun 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.12-1
-- new upstream release 0.10.12
-
http://blog.nodejs.org/2013/06/18/node-v0-10-12-stable/
-- split off a -packaging subpackage with RPM macros, etc.
-- build -docs as noarch
-- copy mutiple version logic from nodejs-packaging SRPM for now
-
-* Fri May 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.9-1
-- new upstream release 0.10.9
-
http://blog.nodejs.org/2013/05/30/node-v0-10-9-stable/
-
-* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.8-1
-- new upstream release 0.10.8
-
http://blog.nodejs.org/2013/05/24/node-v0-10-8-stable/
-
-* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.7-1
-- new upstream release 0.10.7
-
http://blog.nodejs.org/2013/05/17/node-v0-10-7-stable/
-- strip openssl from the tarball; it contains prohibited code (RHBZ#967736)
-- patch Makefile so we can just remove all bundled deps completely
-
-* Wed May 15 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.6-1
-- new upstream release 0.10.6
-
http://blog.nodejs.org/2013/05/14/node-v0-10-6-stable/
-
-* Mon May 06 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.5-3
-- nodejs-fixdep: work properly when a package has no dependencies
-
-* Mon Apr 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.5-2
-- nodejs-symlink-deps: make it work when --check is used and just
- devDependencies exist
-
-* Wed Apr 24 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.5-1
-- new upstream release 0.10.5
-
http://blog.nodejs.org/2013/04/23/node-v0-10-5-stable/
-
-* Mon Apr 15 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.4-1
-- new upstream release 0.10.4
-
http://blog.nodejs.org/2013/04/11/node-v0-10-4-stable/
-- add no-op macro to permit spec compatibility with EPEL
-
-* Thu Apr 04 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.3-2
-- nodejs-symlink-deps: symlink unconditionally in the buildroot
-
-* Wed Apr 03 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.3-1
-- new upstream release 0.10.3
-
http://blog.nodejs.org/2013/04/03/node-v0-10-3-stable/
-- nodejs-symlink-deps: only create symlink if target exists
-- nodejs-symlink-deps: symlink devDependencies when --check is used
-
-* Sun Mar 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.2-1
-- new upstream release 0.10.2
-
http://blog.nodejs.org/2013/03/28/node-v0-10-2-stable/
-- remove %%nodejs_arches macro since it will only be useful if it is present in
- the redhat-rpm-config package
-- add default filtering macro to remove unwanted Provides from native modules
-- nodejs-symlink-deps now supports multiple modules in one SRPM properly
-- nodejs-symlink-deps also now supports a --check argument that works in the
- current working directry instead of the buildroot
-
-* Fri Mar 22 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.1-1
-- new upstream release 0.10.1
-
http://blog.nodejs.org/2013/03/21/node-v0-10-1-stable/
-
-* Wed Mar 20 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.0-4
-- fix escaping in dependency generator regular expressions (RHBZ#923941)
-
-* Wed Mar 13 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.0-3
-- add virtual ABI provides for node and v8 so binary module's deps break when
- binary compatibility is broken
-- automatically add matching Requires to nodejs binary modules
-- add %%nodejs_arches macro to future-proof ExcluseArch stanza in dependent
- packages
-
-* Tue Mar 12 2013 Stephen Gallagher
sgallagh@redhat.com - 0.10.0-2
-- Fix up documentation subpackage
-
-* Mon Mar 11 2013 Stephen Gallagher
sgallagh@redhat.com - 0.10.0-1
-- Update to stable 0.10.0 release
--
https://raw.github.com/joyent/node/v0.10.0/ChangeLog
-
-* Thu Feb 14 2013 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.9.5-11
-- Rebuilt for
https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
-
-* Tue Jan 22 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-10
-- minor bugfixes to RPM magic
- - nodejs-symlink-deps: don't create an empty node_modules dir when a module
- has no dependencies
- - nodes-fixdep: support adding deps when none exist
-- Add the full set of headers usually bundled with node as deps to nodejs-devel.
- This way `npm install` for native modules that assume the stuff bundled with
- node exists will usually "just work".
--move RPM magic to nodejs-devel as requested by FPC
-
-* Sat Jan 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-9
-- fix brown paper bag bug in requires generation script
-
-* Thu Jan 10 2013 Stephen Gallagher
sgallagh@redhat.com - 0.9.5-8
-- Build debug binary and install it in the nodejs-devel subpackage
-
-* Thu Jan 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-7
-- don't use make install since it rebuilds everything
-
-* Thu Jan 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-6
-- add %%{?isa}, epoch to v8 deps
-
-* Wed Jan 09 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-5
-- add defines to match libuv (#892601)
-- make v8 dependency explicit (and thus more accurate)
-- add -g to $C(XX)FLAGS instead of patching configure to add it
-- don't write pointless 'npm(foo) > 0' deps
-
-* Sat Jan 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-4
-- install development headers
-- add nodejs_sitearch macro
-
-* Wed Jan 02 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-3
-- make nodejs-symlink-deps actually work
-
-* Tue Jan 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-2
-- provide nodejs-devel so modules can BuildRequire it (and be consistent
- with other interpreted languages in the distro)
-
-* Tue Jan 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-1
-- new upstream release 0.9.5
-- provide nodejs-devel for the moment
-- fix minor bugs in RPM magic
-- add nodejs_fixdep macro so packagers can easily adjust dependencies in
- package.json files
-
-* Wed Dec 26 2012 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.4-1
-- new upstream release 0.9.4
-- system library patches are now upstream
-- respect optflags
-- include documentation in subpackage
-- add RPM dependency generation and related magic
-- guard libuv depedency so it always gets bumped when nodejs does
-- add -devel subpackage with enough to make node-gyp happy
-
-* Wed Dec 19 2012 Dan Horák <dan[at]danny.cz> - 0.9.3-8
-- set exclusive arch list to match v8
-
-* Tue Dec 18 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-7
-- Add remaining changes from code review
-- Remove unnecessary BuildRequires on findutils
-- Remove %%clean section
-
-* Fri Dec 14 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-6
-- Fixes from code review
-- Fix executable permissions
-- Correct the License field
-- Build debuginfo properly
-
-* Thu Dec 13 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-5
-- Return back to using the standard binary name
-- Temporarily adding a conflict against the ham radio node package until they
- complete an agreed rename of their binary.
-
-* Wed Nov 28 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-4
-- Rename binary and manpage to nodejs
-
-* Mon Nov 19 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-3
-- Update to latest upstream development release 0.9.3
-- Include upstreamed patches to unbundle dependent libraries
-
-* Tue Oct 23 2012 Adrian Alves
alvesadrian@fedoraproject.org 0.8.12-1
-- Fixes and Patches suggested by Matthias Runge
-
-* Mon Apr 09 2012 Adrian Alves
alvesadrian@fedoraproject.org 0.6.5
-- First build.
-
diff --git a/sources b/sources
index 0eb4c9b..c92dc6f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.11.0-stripped.tar.gz) = 8779563b95448dd82e3c3ac3f279069989672e1f22444e7cfcf89f8c19c2978f67a7e47109e08598cd407f52cdb96692e95100321c83898e39376ede044fe8b1
+SHA512 (node-v8.11.2-stripped.tar.gz) = ede88661ef795f01b4824cb479085f16f47d7e03973d90803b57d88cff20c05a5e08f76e00d33ed7611f2085e812b2088fe65d1f046d5ef212f4aa4cb8389b62
commit 6c33c7f5304c66be9db31863e69d1e12bfe5f537
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu May 10 12:33:20 2018 -0400
Fix incorrect rpm macro
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 2924b31..3f4ce6f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -2,7 +2,7 @@
# PowerPC and s390x segfault during Debug builds
#
https://github.com/nodejs/node/issues/20642
-%ifarch %{ppc} s390x
+%ifarch %{power64} s390x
%global with_debug 0
%endif
@@ -24,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -486,6 +486,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Thu May 10 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.1.0-3
+- Fix incorrect rpm macro
+
* Thu May 10 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.1.0-2
- Include upstream v8 fix for ppc64[le]
- Disable debug build on ppc64[le] and s390x
commit 200f9491aa76ed7339f3beddababc274f671e026
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu May 10 09:56:20 2018 -0400
Include upstream v8 fix for ppc64[le]
Disable debug build on ppc64[le] and s390x
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch b/0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
new file mode 100644
index 0000000..f3b8125
--- /dev/null
+++ b/0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
@@ -0,0 +1,128 @@
+From a0048de40ceb91e0bf7b0ffd6eb5054c41b3a4a6 Mon Sep 17 00:00:00 2001
+From: Junliang Yan
jyan@ca.ibm.com
+Date: Wed, 9 May 2018 18:39:49 -0400
+Subject: [PATCH 3/3] [PATCH] PPC: use pc-relative address to init constpool
+ reg
+
+R=joransiu@ca.ibm.com
+
+Change-Id: I67364f29d494b09786a14b13743f73bef4b64582
+Reviewed-on:
https://chromium-review.googlesource.com/950242
+Commit-Queue: Junliang Yan
jyan@ca.ibm.com
+Reviewed-by: Joran Siu
joransiu@ca.ibm.com
+Cr-Commit-Position: refs/heads/master@{#51750}
+
+Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
+---
+ deps/v8/src/ppc/macro-assembler-ppc.cc | 14 ++++++++++----
+ deps/v8/src/ppc/macro-assembler-ppc.h | 9 +++++----
+ 2 files changed, 15 insertions(+), 8 deletions(-)
+
+diff --git a/deps/v8/src/ppc/macro-assembler-ppc.cc b/deps/v8/src/ppc/macro-assembler-ppc.cc
+index 68efa84c72c7f6d781d508183b53ea83024944d1..3192e9cefb1c1b116c5e12b5c52e7971b92a111a 100644
+--- a/deps/v8/src/ppc/macro-assembler-ppc.cc
++++ b/deps/v8/src/ppc/macro-assembler-ppc.cc
+@@ -166,11 +166,11 @@ void TurboAssembler::Call(Register target) {
+
+ DCHECK_EQ(CallSize(target), SizeOfCodeGeneratedSince(&start));
+ }
+
+ void MacroAssembler::CallJSEntry(Register target) {
+- DCHECK(target == ip);
++ CHECK(target == r5);
+ Call(target);
+ }
+
+ int TurboAssembler::CallSize(Address target, RelocInfo::Mode rmode,
+ Condition cond) {
+@@ -823,20 +823,27 @@ void TurboAssembler::ShiftRightAlgPair(Register dst_low, Register dst_high,
+ srawi(dst_high, src_high, shift);
+ }
+ }
+ #endif
+
+-void MacroAssembler::LoadConstantPoolPointerRegisterFromCodeTargetAddress(
++void TurboAssembler::LoadConstantPoolPointerRegisterFromCodeTargetAddress(
+ Register code_target_address) {
+ lwz(kConstantPoolRegister,
+ MemOperand(code_target_address,
+ Code::kConstantPoolOffset - Code::kHeaderSize));
+ add(kConstantPoolRegister, kConstantPoolRegister, code_target_address);
+ }
+
++void TurboAssembler::LoadPC(Register dst) {
++ b(4, SetLK);
++ mflr(dst);
++}
++
+ void TurboAssembler::LoadConstantPoolPointerRegister() {
+- mov_label_addr(kConstantPoolRegister, ConstantPoolPosition());
++ LoadPC(kConstantPoolRegister);
++ add_label_offset(kConstantPoolRegister, kConstantPoolRegister,
++ ConstantPoolPosition(), -pc_offset() + 4);
+ }
+
+ void TurboAssembler::StubPrologue(StackFrame::Type type) {
+ {
+ ConstantPoolUnavailableScope constant_pool_unavailable(this);
+@@ -848,11 +855,10 @@ void TurboAssembler::StubPrologue(StackFrame::Type type) {
+ set_constant_pool_available(true);
+ }
+ }
+
+ void TurboAssembler::Prologue() {
+- DCHECK(base != no_reg);
+ PushStandardFrame(r4);
+ if (FLAG_enable_embedded_constant_pool) {
+ // base contains prologue address
+ LoadConstantPoolPointerRegister();
+ set_constant_pool_available(true);
+diff --git a/deps/v8/src/ppc/macro-assembler-ppc.h b/deps/v8/src/ppc/macro-assembler-ppc.h
+index f4d9afd47f150f9cd2e840c20a61e965a5d8f5f5..32e6219c41bbbfe8427e05f2f9a02ff800efcffb 100644
+--- a/deps/v8/src/ppc/macro-assembler-ppc.h
++++ b/deps/v8/src/ppc/macro-assembler-ppc.h
+@@ -214,10 +214,11 @@ class TurboAssembler : public Assembler {
+
+ void LoadSingle(DoubleRegister dst, const MemOperand& mem,
+ Register scratch = no_reg);
+ void LoadSingleU(DoubleRegister dst, const MemOperand& mem,
+ Register scratch = no_reg);
++ void LoadPC(Register dst);
+
+ void StoreDouble(DoubleRegister src, const MemOperand& mem,
+ Register scratch = no_reg);
+ void StoreDoubleU(DoubleRegister src, const MemOperand& mem,
+ Register scratch = no_reg);
+@@ -639,10 +640,14 @@ class TurboAssembler : public Assembler {
+
+ // Call a code stub.
+ void CallStubDelayed(CodeStub* stub);
+
+ void LoadConstantPoolPointerRegister();
++
++ // Loads the constant pool pointer (kConstantPoolRegister).
++ void LoadConstantPoolPointerRegisterFromCodeTargetAddress(
++ Register code_target_address);
+ void AbortConstantPoolBuilding() {
+ #ifdef DEBUG
+ // Avoid DCHECK(!is_linked()) failure in ~Label()
+ bind(ConstantPoolPosition());
+ #endif
+@@ -733,14 +738,10 @@ class MacroAssembler : public TurboAssembler {
+ // Push and pop the registers that can hold pointers, as defined by the
+ // RegList constant kSafepointSavedRegisters.
+ void PushSafepointRegisters();
+ void PopSafepointRegisters();
+
+- // Loads the constant pool pointer (kConstantPoolRegister).
+- void LoadConstantPoolPointerRegisterFromCodeTargetAddress(
+- Register code_target_address);
+-
+ // Flush the I-cache from asm code. You should use CpuFeatures::FlushICache
+ // from C.
+ // Does not handle errors.
+ void FlushICache(Register address, size_t size, Register scratch);
+
+--
+2.17.0
+
diff --git a/nodejs.spec b/nodejs.spec
index 28b00be..2924b31 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,11 @@
%global with_debug 1
+# PowerPC and s390x segfault during Debug builds
+#
https://github.com/nodejs/node/issues/20642
+%ifarch %{ppc} s390x
+%global with_debug 0
+%endif
+
# bundle dependencies that are not available as Fedora modules
# %%{!?_with_bootstrap: %%global bootstrap 1}
# use bcond for building modules
@@ -18,7 +24,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -115,6 +121,9 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# This does bad things on an RPM-managed npm.
Patch3: no-npm-update-msg.patch
+# Fix PowerPC builds
+Patch4: 0003-PATCH-PPC-use-pc-relative-address-to-init-constpool-.patch
+
BuildRequires: python2-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
@@ -265,6 +274,7 @@ rm -rf deps/zlib
%patch3 -p1
+%patch4 -p1
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -476,6 +486,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Thu May 10 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.1.0-2
+- Include upstream v8 fix for ppc64[le]
+- Disable debug build on ppc64[le] and s390x
+
* Wed May 09 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.1.0-1
- Update to 10.1.0
-
https://nodejs.org/en/blog/release/v10.1.0/
commit f94eb9eb75d1070da264ddbe3bd9059dd8e9ba48
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed May 9 11:00:25 2018 -0400
Update to 10.1.0
-
https://nodejs.org/en/blog/release/v10.1.0/
- Reenable node_g binary
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 81f645f..915abe0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -93,3 +93,4 @@
/node-v9.11.1.tar.gz
/node-v9.11.1-stripped.tar.gz
/node-v10.0.0-stripped.tar.gz
+/node-v10.1.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index a5b8c4b..28b00be 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,4 @@
-# Debug builds are failing on GCC 8.0.2
-#
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85587
-%global with_debug 0
+%global with_debug 1
# bundle dependencies that are not available as Fedora modules
# %%{!?_with_bootstrap: %%global bootstrap 1}
@@ -16,7 +14,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 10
-%global nodejs_minor 0
+%global nodejs_minor 1
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -27,7 +25,7 @@
%global v8_major 6
%global v8_minor 6
%global v8_build 346
-%global v8_patch 24
+%global v8_patch 27
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -478,6 +476,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/nod
%{_pkgdocdir}/npm/doc
%changelog
+* Wed May 09 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.1.0-1
+- Update to 10.1.0
+-
https://nodejs.org/en/blog/release/v10.1.0/
+- Reenable node_g binary
+
* Thu Apr 26 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.0.0-1
- Update to 10.0.0
-
https://nodejs.org/en/blog/release/v10.0.0/
diff --git a/sources b/sources
index 60c5874..d2ca6fa 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v10.0.0-stripped.tar.gz) = dd1a1a966b8020a4fe82dadb21b0b9adc9f5656915d63e635bc913d3935529f48e535308440ef4961c791cb9cfb86a53c442c70d8b17b01a7d02d2c39fb30eff
+SHA512 (node-v10.1.0-stripped.tar.gz) = 9b85f482cd947359cae98c2b2cfb364f89712ea75b2df47b7072bfbc63a6557f3e22c013ffe1ad8267065f32f9055e9d9edfa64682e0a3efe887e13a977b977e
commit 6ec7be247154d4e02008c34b233a1be7f51d307e
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu May 3 10:11:09 2018 -0400
F26 doesn't have %{build_ldflags}
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index c053f9a..344a9b5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -272,7 +272,7 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
-export LDFLAGS="%{build_ldflags}"
+export LDFLAGS="%{__global_ldflags}"
%if %{with bootstrap}
./configure --prefix=%{_prefix} \
commit 3e4e6d91a032bcbc353720b5b4810cf9689f115c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu May 3 09:35:41 2018 -0400
Update to 6.14.2
-
https://nodejs.org/en/blog/release/v6.14.2/
-
https://nodejs.org/en/blog/release/v6.14.1/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 303292d..84206d8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -78,3 +78,4 @@
/node-v6.12.3-stripped.tar.gz
/node-v6.13.1-stripped.tar.gz
/node-v6.14.0-stripped.tar.gz
+/node-v6.14.2-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 822dce1..c053f9a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,10 +19,10 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 14
-%global nodejs_patch 0
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -445,6 +445,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu May 03 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.14.2-1
+- Update to 6.14.2
+-
https://nodejs.org/en/blog/release/v6.14.2/
+-
https://nodejs.org/en/blog/release/v6.14.1/
+
* Fri Apr 13 2018 Rafael dos Santos
rdossant@redhat.com - 1:6.14.0-2
- Use standard Fedora linker flags (bug #1543859)
diff --git a/sources b/sources
index 5edc8e0..4422efe 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.14.0-stripped.tar.gz) = 6db788a179dd801ecc349378ab1cdb969530cc1ce3d05473f19435d4ebedec79802f2c28caa644a44904de290e4709167c4a81d714048e348528aae69d4d0fb6
+SHA512 (node-v6.14.2-stripped.tar.gz) = ce323a05dcc9a4e0341afaa5210de2c8c852d2554d3cfab6e9876a1be8da14c0703899c9b2c88edc08b2fae763a1a336bc9bd9df3a9cb421c9025fbe116e9061
commit b9473f5871ade07a77953a6e1409593b4b4ab6e3
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Apr 26 10:32:10 2018 -0400
Update to 10.0.0
https://nodejs.org/en/blog/release/v10.0.0/
Drop workaround patch
Temporarily disable debug build
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index b3022aa..81f645f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -92,3 +92,4 @@
/node-v9.10.0-stripped.tar.gz
/node-v9.11.1.tar.gz
/node-v9.11.1-stripped.tar.gz
+/node-v10.0.0-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-files-for-bundled-deps.patch
index 324a468..dcf8a64 100644
--- a/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -1,4 +1,4 @@
-From c2aff16cc196a61f4ab1cdae4a91c7926123c239 Mon Sep 17 00:00:00 2001
+From 078957089ba07fe1e31a3e5ef718bc37da6d911c Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu, 27 Apr 2017 14:25:42 +0200
Subject: [PATCH] Disable running gyp on shared deps
@@ -8,22 +8,27 @@ Subject: [PATCH] Disable running gyp on shared deps
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index 0a217bd893..e1229ad07f 100644
+index f499788d9d86cc9b7a06c5f918ea1aea2ebd3a8c..4b5b8c9834fa8389511d43ffead2b8233137c499 100644
--- a/Makefile
+++ b/Makefile
-@@ -79,10 +79,9 @@ $(NODE_G_EXE): config.gypi out/Makefile
+@@ -89,14 +89,13 @@ $(NODE_EXE): config.gypi out/Makefile
+
+ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
-out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp \
- deps/zlib/zlib.gyp deps/v8/gypfiles/toolchain.gypi \
-- deps/v8/gypfiles/features.gypi deps/v8/src/v8.gyp node.gyp \
+- deps/v8/gypfiles/features.gypi deps/v8/gypfiles/v8.gyp node.gyp \
- config.gypi
+out/Makefile: common.gypi deps/http_parser/http_parser.gyp \
+ deps/v8/gypfiles/toolchain.gypi deps/v8/gypfiles/features.gypi \
-+ deps/v8/src/v8.gyp node.gyp config.gypi
++ deps/v8/gypfiles/v8.gyp node.gyp config.gypi
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
+ $(error Missing or stale $@, please run ./$<)
+
--
-2.12.2
+2.17.0
+
diff --git a/0001-Fix-aarch64-debug.patch b/0001-Fix-aarch64-debug.patch
deleted file mode 100644
index 00bae49..0000000
--- a/0001-Fix-aarch64-debug.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-From 058e4efd61c7c9ab4efd55bd9aa37e2184654050 Mon Sep 17 00:00:00 2001
-From: Zuzana Svetlikova
zsvetlik@redhat.com
-Date: Wed, 20 Sep 2017 13:05:01 +0200
-Subject: [PATCH] Fix aarch64 debug
-
----
- deps/v8/src/v8.gyp | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/deps/v8/src/v8.gyp b/deps/v8/src/v8.gyp
-index c269f245aa..2ebbd393a9 100644
---- a/deps/v8/src/v8.gyp
-+++ b/deps/v8/src/v8.gyp
-@@ -348,7 +348,7 @@
- '<(INTERMEDIATE_DIR)/snapshot.cc',
- ],
- 'variables': {
-- 'mksnapshot_flags': [],
-+ 'mksnapshot_flags': ['--nodebug_code'],
- 'conditions': [
- ['v8_random_seed!=0', {
- 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
-@@ -449,7 +449,7 @@
- '<(mksnapshot_exec)',
- ],
- 'variables': {
-- 'mksnapshot_flags': [],
-+ 'mksnapshot_flags': ['--nodebug_code'],
- 'conditions': [
- ['v8_random_seed!=0', {
- 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
---
-2.14.1
-
diff --git a/nodejs.spec b/nodejs.spec
index 93ce5c7..a5b8c4b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,4 +1,6 @@
-%global with_debug 1
+# Debug builds are failing on GCC 8.0.2
+#
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85587
+%global with_debug 0
# bundle dependencies that are not available as Fedora modules
# %%{!?_with_bootstrap: %%global bootstrap 1}
@@ -7,32 +9,25 @@
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
-# ARM64 builds of 8.5.0 break on the Debug builds, so we'll just
-# build the standard runtime until that gets sorted out.
-#
https://github.com/nodejs/node/issues/15395
-%ifarch aarch64
-%global with_debug 1
-%endif
-
# == Node.js Version ==
# Note: Fedora should only ship LTS versions of Node.js (currently expected
# to be major versions with even numbers). The odd-numbered versions are new
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 9
-%global nodejs_minor 11
-%global nodejs_patch 1
+%global nodejs_major 10
+%global nodejs_minor 0
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
-%global v8_minor 2
-%global v8_build 414
-%global v8_patch 46
+%global v8_minor 6
+%global v8_build 346
+%global v8_patch 24
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -40,7 +35,7 @@
# c-ares - from deps/cares/include/ares_version.h
#
https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
-%global c_ares_minor 13
+%global c_ares_minor 14
%global c_ares_patch 0
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
@@ -52,7 +47,7 @@
# libuv - from deps/uv/include/uv-version.h
%global libuv_major 1
-%global libuv_minor 19
+%global libuv_minor 20
%global libuv_patch 2
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -118,10 +113,6 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
-# Being fixed upstream.
-# Follow
https://bugs.chromium.org/p/v8/issues/detail?id=6939
-Patch2: 0001-Fix-aarch64-debug.patch
-
# Suppress the message from npm to run `npm -g update npm`
# This does bad things on an RPM-managed npm.
Patch3: no-npm-update-msg.patch
@@ -140,15 +131,15 @@ Provides: bundled(nghttp2) = %{nghttp2_version}
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
Requires: http-parser >= 2.7.0
-BuildRequires: libuv-devel >= 1:1.9.1
-Requires: libuv >= 1:1.9.1
+BuildRequires: libuv-devel >= 1:1.20.2
+Requires: libuv >= 1:1.20.2
BuildRequires: libnghttp2-devel >= %{nghttp2_version}
Requires: libnghttp2 >= %{nghttp2_version}
%endif
BuildRequires: openssl-devel
-# we need the system certificate store when Patch2 is applied
+# we need the system certificate store
Requires: ca-certificates
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
@@ -274,7 +265,6 @@ The API documentation for the Node.js JavaScript runtime.
%patch1 -p1
rm -rf deps/zlib
-%patch2 -p1
%patch3 -p1
@@ -392,7 +382,7 @@ FILES=%{buildroot}/%{_prefix}/lib/node/.bundled/npm/*
for f in $FILES
do
module=`basename $f`
- ln -s %{_prefix}/lib/node/.bundled/npm/$module \
+ ln -s ../../../node/.bundled/npm/$module \
%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/$module
done
@@ -429,7 +419,7 @@ rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
%{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
# Ensure we have npm and that the version matches
-NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
+NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules:%{buildroot}%{_prefix}/lib/node_modules/npm/node_modules %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
%files
%{_bindir}/node
@@ -488,6 +478,13 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Apr 26 2018 Stephen Gallagher
sgallagh@redhat.com - 1:10.0.0-1
+- Update to 10.0.0
+-
https://nodejs.org/en/blog/release/v10.0.0/
+- Drop workaround patch
+- Temporarily drop node_g binary due to
+
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85587
+
* Fri Apr 13 2018 Rafael dos Santos
rdossant@redhat.com - 1:9.11.1-2
- Use standard Fedora linker flags (bug #1543859)
diff --git a/sources b/sources
index 1071b0b..60c5874 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v9.11.1-stripped.tar.gz) = d273432f867ff1bb864da2ebf4c964c894682cd6505abc6aa66672db112c1566dd9c533871b638b8b4921a6a77bfca9876939214f9ca962cfaf1bac164860d31
+SHA512 (node-v10.0.0-stripped.tar.gz) = dd1a1a966b8020a4fe82dadb21b0b9adc9f5656915d63e635bc913d3935529f48e535308440ef4961c791cb9cfb86a53c442c70d8b17b01a7d02d2c39fb30eff
commit 9b4c7dc07a0dc2b40f3bf3dce7a7c67837b4e6c2
Author: Rafael dos Santos
rdossant@redhat.com
Date: Fri Apr 13 07:37:53 2018 +0000
Use standard Fedora linker flags.
- Resolves #1543859
Signed-off-by: Rafael dos Santos
rdossant@redhat.com
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index c5cc340..c8f5a45 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -307,6 +307,8 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
+export LDFLAGS="%{build_ldflags}"
+
# Work around Fedora 28 issue:
#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
@@ -493,6 +495,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Apr 13 2018 Rafael dos Santos
rdossant@redhat.com - 1:8.11.0-2
+- Use standard Fedora linker flags (bug #1543859)
+
* Wed Mar 28 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.11.0-1
- Update to 8.11.0
-
https://nodejs.org/en/blog/release/v8.11.0/
commit 949b25d19b3f9861743811c056df4efcd9a45c1d
Author: Rafael dos Santos
rdossant@redhat.com
Date: Fri Apr 13 07:37:53 2018 +0000
Use standard Fedora linker flags.
- Resolves #1543859
Signed-off-by: Rafael dos Santos
rdossant@redhat.com
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 70d456f..822dce1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -22,7 +22,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -272,6 +272,8 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
+export LDFLAGS="%{build_ldflags}"
+
%if %{with bootstrap}
./configure --prefix=%{_prefix} \
--shared-openssl \
@@ -443,6 +445,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Apr 13 2018 Rafael dos Santos
rdossant@redhat.com - 1:6.14.0-2
+- Use standard Fedora linker flags (bug #1543859)
+
* Wed Mar 28 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.14.0-1
- Update to 6.14.0
-
https://nodejs.org/en/blog/release/v6.14.0/
commit e32bc066e3cf84078785ad37c67f4decca14537b
Author: Rafael dos Santos
rdossant@redhat.com
Date: Fri Apr 13 07:37:53 2018 +0000
Use standard Fedora linker flags.
- Resolves #1543859
Signed-off-by: Rafael dos Santos
rdossant@redhat.com
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index b32dbce..93ce5c7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -297,6 +297,8 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
+export LDFLAGS="%{build_ldflags}"
+
# Work around Fedora 28 issue:
#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
@@ -486,6 +488,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Apr 13 2018 Rafael dos Santos
rdossant@redhat.com - 1:9.11.1-2
+- Use standard Fedora linker flags (bug #1543859)
+
* Thu Apr 05 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.11.1-1
- Update to 9.11.1
-
https://nodejs.org/en/blog/release/v9.11.0/
commit e88700c9c23f494b9e4a4ad46773f7120816cf3b
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 9 17:12:47 2018 -0400
Move bundled NPM deps
If a user does `npm -g update npm` (not recommended), they can
dangerously clobber their system because it will remove the
.bundled directory. This patch moves it to a safer location.
Resolves: rhbz#1565256
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 93233a6..b32dbce 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -380,16 +380,18 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
# can backtrack on this if we decide to.
# Rename the npm node_modules directory to node_modules.bundled
+mkdir -p %{buildroot}/%{_prefix}/lib/node/.bundled
mv %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules \
- %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules.bundled
+ %{buildroot}/%{_prefix}/lib/node/.bundled/npm
# Recreate all the symlinks
mkdir -p %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules
-FILES=%{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules.bundled/*
+FILES=%{buildroot}/%{_prefix}/lib/node/.bundled/npm/*
for f in $FILES
do
module=`basename $f`
- ln -s ../node_modules.bundled/$module %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/$module
+ ln -s %{_prefix}/lib/node/.bundled/npm/$module \
+ %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/$module
done
# install NPM docs to mandir
@@ -430,6 +432,8 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
+%dir %{_prefix}/lib/node
+%dir %{_prefix}/lib/node/.bundled
%dir %{_datadir}/node
%dir %{_datadir}/systemtap
%dir %{_datadir}/systemtap/tapset
@@ -463,6 +467,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_bindir}/npm
%{_bindir}/npx
%{_prefix}/lib/node_modules/npm
+%{_prefix}/lib/node/.bundled/npm
%ghost %{_sysconfdir}/npmrc
%ghost %{_sysconfdir}/npmignore
%doc %{_mandir}/man*/npm*
commit fa68d1cc51e3f55c3590ffb92151c7acbb53ff1c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 9 17:01:28 2018 -0400
Suppress npm update message
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/no-npm-update-msg.patch b/no-npm-update-msg.patch
new file mode 100644
index 0000000..f16961a
--- /dev/null
+++ b/no-npm-update-msg.patch
@@ -0,0 +1,16 @@
+diff '--color=auto' -ruN node-v9.11.1.orig/deps/npm/bin/npm-cli.js node-v9.11.1/deps/npm/bin/npm-cli.js
+--- node-v9.11.1.orig/deps/npm/bin/npm-cli.js 2018-04-05 00:34:51.000000000 -0400
++++ node-v9.11.1/deps/npm/bin/npm-cli.js 2018-04-09 16:57:31.595166069 -0400
+@@ -25,12 +25,6 @@
+
+ unsupported.checkForUnsupportedNode()
+
+- if (!unsupported.checkVersion(process.version).unsupported) {
+- var updater = require('update-notifier')
+- var pkg = require('../package.json')
+- updater({pkg: pkg}).notify({defer: true})
+- }
+-
+ var path = require('path')
+ var npm = require('../lib/npm.js')
+ var npmconf = require('../lib/config/core.js')
diff --git a/nodejs.spec b/nodejs.spec
index 6e180d8..c5cc340 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -122,6 +122,10 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# Follow
https://bugs.chromium.org/p/v8/issues/detail?id=6939
Patch2: 0001-Fix-aarch64-debug.patch
+# Suppress the message from npm to run `npm -g update npm`
+# This does bad things on an RPM-managed npm.
+Patch3: no-npm-update-msg.patch
+
BuildRequires: python2-devel
BuildRequires: libicu-devel
BuildRequires: zlib-devel
@@ -282,6 +286,8 @@ rm -rf deps/icu-small \
%patch2 -p1
+%patch3 -p1
+
%build
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
commit 1e2b51b3b4798ad4fe9d793a1c4173ab6420bfd6
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 9 17:01:28 2018 -0400
Suppress npm update message
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/no-npm-update-msg.patch b/no-npm-update-msg.patch
new file mode 100644
index 0000000..f16961a
--- /dev/null
+++ b/no-npm-update-msg.patch
@@ -0,0 +1,16 @@
+diff '--color=auto' -ruN node-v9.11.1.orig/deps/npm/bin/npm-cli.js node-v9.11.1/deps/npm/bin/npm-cli.js
+--- node-v9.11.1.orig/deps/npm/bin/npm-cli.js 2018-04-05 00:34:51.000000000 -0400
++++ node-v9.11.1/deps/npm/bin/npm-cli.js 2018-04-09 16:57:31.595166069 -0400
+@@ -25,12 +25,6 @@
+
+ unsupported.checkForUnsupportedNode()
+
+- if (!unsupported.checkVersion(process.version).unsupported) {
+- var updater = require('update-notifier')
+- var pkg = require('../package.json')
+- updater({pkg: pkg}).notify({defer: true})
+- }
+-
+ var path = require('path')
+ var npm = require('../lib/npm.js')
+ var npmconf = require('../lib/config/core.js')
diff --git a/nodejs.spec b/nodejs.spec
index b3892ce..93233a6 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -122,6 +122,10 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# Follow
https://bugs.chromium.org/p/v8/issues/detail?id=6939
Patch2: 0001-Fix-aarch64-debug.patch
+# Suppress the message from npm to run `npm -g update npm`
+# This does bad things on an RPM-managed npm.
+Patch3: no-npm-update-msg.patch
+
BuildRequires: python2-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
@@ -272,6 +276,8 @@ rm -rf deps/zlib
%patch2 -p1
+%patch3 -p1
+
%build
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
commit 969079bd58403f302b9ea94a7629be1ebeb6806d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Apr 5 13:53:15 2018 -0400
Upload the correct source tarball
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index ce0f7db..b3022aa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -91,3 +91,4 @@
/node-v9.9.0-stripped.tar.gz
/node-v9.10.0-stripped.tar.gz
/node-v9.11.1.tar.gz
+/node-v9.11.1-stripped.tar.gz
diff --git a/sources b/sources
index 2082613..1071b0b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v9.11.1.tar.gz) = 6bdd0afa3bdcc633075bbaf1c3a9b8c1a914a881da2dc942ff1477a2b000930a8777c0498db5edcb1eeaa7f13cff942ab88bf0764e296d49e0d1a9a677a52bb0
+SHA512 (node-v9.11.1-stripped.tar.gz) = d273432f867ff1bb864da2ebf4c964c894682cd6505abc6aa66672db112c1566dd9c533871b638b8b4921a6a77bfca9876939214f9ca962cfaf1bac164860d31
commit cac139539ee78a1663661e6ea768a6f68ac4bdaf
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Apr 5 10:27:49 2018 -0400
Update to 9.11.1
https://nodejs.org/en/blog/release/v9.11.0/
https://nodejs.org/en/blog/release/v9.11.1/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index cff7528..ce0f7db 100644
--- a/.gitignore
+++ b/.gitignore
@@ -90,3 +90,4 @@
/node-v9.8.0-stripped.tar.gz
/node-v9.9.0-stripped.tar.gz
/node-v9.10.0-stripped.tar.gz
+/node-v9.11.1.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index abf824d..b3892ce 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,8 +21,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 9
-%global nodejs_minor 10
-%global nodejs_patch 0
+%global nodejs_minor 11
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -62,6 +62,11 @@
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
+# ICU - from configure in the configure_intl() function
+%global icu_major 61
+%global icu_minor 1
+%global icu_version %{icu_major}.%{icu_minor}
+
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
# Note: this will be unmerged in an upcoming major release
@@ -118,7 +123,6 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
Patch2: 0001-Fix-aarch64-debug.patch
BuildRequires: python2-devel
-BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
BuildRequires: gcc-c++ >= 4.9.4
@@ -183,6 +187,11 @@ Provides: bundled(c-ares) = %{c_ares_version}
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
Provides: bundled(v8) = %{v8_version}
+# Node.js is bound to a specific version of ICU which may not match the OS
+# We cannot pin the OS to this version of ICU because every update includes
+# an ABI-break, so we'll use the bundled copy.
+Provides: bundled(icu) = %{icu_version}
+
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?epel}
# EPEL doesn't support Recommends, so make it strict
@@ -259,8 +268,7 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/icu-small \
- deps/zlib
+rm -rf deps/zlib
%patch2 -p1
@@ -294,7 +302,6 @@ export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
--shared-openssl \
--shared-zlib \
--without-dtrace \
- --with-intl=system-icu \
--debug-http2 \
--debug-nghttp2 \
--openssl-use-def-ca-store
@@ -306,7 +313,6 @@ export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
--shared-http-parser \
--shared-nghttp2 \
--with-dtrace \
- --with-intl=system-icu \
--debug-http2 \
--debug-nghttp2 \
--openssl-use-def-ca-store
@@ -469,6 +475,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Apr 05 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.11.1-1
+- Update to 9.11.1
+-
https://nodejs.org/en/blog/release/v9.11.0/
+-
https://nodejs.org/en/blog/release/v9.11.1/
+
* Wed Mar 28 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.10.0-1
- Update to 9.10.0
-
https://nodejs.org/en/blog/release/v9.10.0/
diff --git a/sources b/sources
index b7e2c69..2082613 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v9.10.0-stripped.tar.gz) = 2efdfdc66ba8acea3636b96cb958e98db2e7332d30eb2be2a08ed3f62f5c9079cf58277694318b8677c84c13bbf4e3fe79b76cd04277e5768d605d68810a3c1c
+SHA512 (node-v9.11.1.tar.gz) = 6bdd0afa3bdcc633075bbaf1c3a9b8c1a914a881da2dc942ff1477a2b000930a8777c0498db5edcb1eeaa7f13cff942ab88bf0764e296d49e0d1a9a677a52bb0
commit 22b55cf94224dc4edea99d537d1fba1b08e682bd
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Mar 28 15:28:50 2018 -0400
Ensure libuv 1.19.1 or later
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 9022cca..6e180d8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -137,8 +137,8 @@ Provides: bundled(nghttp2) = %{nghttp2_version}
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
Requires: http-parser >= 2.7.0
-BuildRequires: libuv-devel >= 1:1.9.1
-Requires: libuv >= 1:1.9.1
+BuildRequires: libuv-devel >= 1:1.19.1
+Requires: libuv >= 1:1.19.1
BuildRequires: libnghttp2-devel >= 1.25.0
Requires: libnghttp2 >= 1.25.0
%endif
commit 2854d1369a57d17e3c0bd564c57e61cb5be38548
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Mar 28 14:45:33 2018 -0400
Use bundled ICU on F27
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 27a1a3e..9022cca 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -56,6 +56,11 @@
%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
+# libicu
+%global libicu_major 60
+%global libicu_minor 0
+%global libicu_version %{libicu_major}.%{libicu_minor}
+
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
%global nghttp2_minor 25
@@ -183,6 +188,14 @@ Provides: bundled(c-ares) = %{c_ares_version}
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
Provides: bundled(v8) = %{v8_version}
+%if 0%{?fedora} && 0%{?fedora < 28}
+# Node.js requires up-to-date ICU
+%global config_intl --with-intl=small-icu
+Provides: bundled(icu) = %{libicu_version}
+%else
+%global config_intl --with-intl=system-icu
+%endif
+
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?rhel}
# EPEL doesn't support Recommends, so make it strict
@@ -259,8 +272,13 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
+
+%if 0%{?fedora} && 0%{?fedora < 28}
+rm -rf deps/zlib
+%else
rm -rf deps/icu-small \
deps/zlib
+%endif
%patch2 -p1
@@ -294,7 +312,7 @@ export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
--shared-openssl \
--shared-zlib \
--without-dtrace \
- --with-intl=system-icu \
+ %{config_intl} \
--debug-http2 \
--debug-nghttp2 \
--openssl-use-def-ca-store
@@ -306,7 +324,7 @@ export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
--shared-http-parser \
--shared-nghttp2 \
--with-dtrace \
- --with-intl=system-icu \
+ %{config_intl} \
--debug-http2 \
--debug-nghttp2 \
--openssl-use-def-ca-store
commit cc0d5eb2e643873f8dc448769370c274be00de1d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Mar 28 14:36:50 2018 -0400
Fix embedded http-parser version
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 1bc874f..27a1a3e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -46,7 +46,7 @@
# http-parser - from deps/http_parser/http_parser.h
%global http_parser_major 2
-%global http_parser_minor 7
+%global http_parser_minor 8
%global http_parser_patch 0
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
commit 2096fce045941d5908f7699a84326d557b5904ea
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Mar 28 14:35:03 2018 -0400
Fix embedded http-parser version
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 61dc634..abf824d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -46,7 +46,7 @@
# http-parser - from deps/http_parser/http_parser.h
%global http_parser_major 2
-%global http_parser_minor 7
+%global http_parser_minor 8
%global http_parser_patch 0
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
commit a790dbdf3d5cd0d80ff4b4c09618eb93515b80c3
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Mar 28 14:22:21 2018 -0400
Update to 6.14.0
https://nodejs.org/en/blog/release/v6.14.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 0726d5e..303292d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -77,3 +77,4 @@
/node-v6.12.2-stripped.tar.gz
/node-v6.12.3-stripped.tar.gz
/node-v6.13.1-stripped.tar.gz
+/node-v6.14.0-stripped.tar.gz
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index e7e9613..20dab4b 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -5,3 +5,6 @@ wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
+
+echo "Now make sure to run:"
+echo "fedpkg new-sources node-v${version}-stripped.tar.gz"
diff --git a/nodejs.spec b/nodejs.spec
index 16a7df0..70d456f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,8 +18,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 6
-%global nodejs_minor 13
-%global nodejs_patch 1
+%global nodejs_minor 14
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -42,7 +42,7 @@
# http-parser - from deps/http_parser/http_parser.h
%global http_parser_major 2
-%global http_parser_minor 7
+%global http_parser_minor 8
%global http_parser_patch 0
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
@@ -443,6 +443,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Mar 28 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.14.0-1
+- Update to 6.14.0
+-
https://nodejs.org/en/blog/release/v6.14.0/
+
* Thu Mar 08 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.13.1-1
- Update to 6.13.1
-
https://nodejs.org/en/blog/release/v6.12.4/
diff --git a/sources b/sources
index 4b286e7..5edc8e0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.13.1-stripped.tar.gz) = 09a2cc205d747c20d21865f7c877b12223e1050e1c57b5a382eaed868a36536878538f8cd65125ab3f89e94c8f178cbf60ff97632aa8ae621718ad385ff51c88
+SHA512 (node-v6.14.0-stripped.tar.gz) = 6db788a179dd801ecc349378ab1cdb969530cc1ce3d05473f19435d4ebedec79802f2c28caa644a44904de290e4709167c4a81d714048e348528aae69d4d0fb6
commit 8061633857ceee9811a0c8d9457a92315dee50c2
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Mar 28 14:14:33 2018 -0400
Update to 8.11.0
https://nodejs.org/en/blog/release/v8.11.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index ced6849..7e9ace0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -85,3 +85,4 @@
/node-v8.9.3-stripped.tar.gz
/node-v8.9.4-stripped.tar.gz
/node-v8.10.0-stripped.tar.gz
+/node-v8.11.0-stripped.tar.gz
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index e7e9613..20dab4b 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -5,3 +5,6 @@ wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
+
+echo "Now make sure to run:"
+echo "fedpkg new-sources node-v${version}-stripped.tar.gz"
diff --git a/nodejs.spec b/nodejs.spec
index c6aa2d7..1bc874f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,11 +21,11 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 10
+%global nodejs_minor 11
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -469,6 +469,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Mar 28 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.11.0-1
+- Update to 8.11.0
+-
https://nodejs.org/en/blog/release/v8.11.0/
+
* Thu Mar 08 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.10.0-1
- Update to 8.10.0
-
https://nodejs.org/en/blog/release/v8.10.0/
diff --git a/sources b/sources
index 641252e..0eb4c9b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.10.0-stripped.tar.gz) = 25b55122c36f3e48e627e8939160746d186e709d3d552bc4230241a28abed8fbe48c29670940ea0e493eb63c8f62b40cceb4fa51a0c2c128792ca8baf5906aff
+SHA512 (node-v8.11.0-stripped.tar.gz) = 8779563b95448dd82e3c3ac3f279069989672e1f22444e7cfcf89f8c19c2978f67a7e47109e08598cd407f52cdb96692e95100321c83898e39376ede044fe8b1
commit 88fac04184d9a27130c99ba7269e22148f7f964b
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Mar 28 14:09:14 2018 -0400
Update to 9.10.0
https://nodejs.org/en/blog/release/v9.10.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 92678e5..cff7528 100644
--- a/.gitignore
+++ b/.gitignore
@@ -89,3 +89,4 @@
/node-v9.7.0-stripped.tar.gz
/node-v9.8.0-stripped.tar.gz
/node-v9.9.0-stripped.tar.gz
+/node-v9.10.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 9d31c9a..61dc634 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 9
-%global nodejs_minor 9
+%global nodejs_minor 10
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -469,6 +469,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Mar 28 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.10.0-1
+- Update to 9.10.0
+-
https://nodejs.org/en/blog/release/v9.10.0/
+
* Wed Mar 21 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.9.0-1
- Update to 9.9.0
-
https://nodejs.org/en/blog/release/v9.9.0/
diff --git a/sources b/sources
index 028c930..b7e2c69 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v9.9.0-stripped.tar.gz) = 047286a8fb85b049d5ec4b7597c032d863331cfbe139201d8523da240886ef7c30b6b1f08cbd735e01042cd2e0c34b11754f82469a417d8d218e359e38e5650d
+SHA512 (node-v9.10.0-stripped.tar.gz) = 2efdfdc66ba8acea3636b96cb958e98db2e7332d30eb2be2a08ed3f62f5c9079cf58277694318b8677c84c13bbf4e3fe79b76cd04277e5768d605d68810a3c1c
commit 9688d0951ec8af7521e5555ae218b8f5a791743f
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Mar 21 20:35:22 2018 -0400
Update to 9.9.0
https://nodejs.org/en/blog/release/v9.9.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 93945e9..92678e5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -88,3 +88,4 @@
/node-v9.6.1-stripped.tar.gz
/node-v9.7.0-stripped.tar.gz
/node-v9.8.0-stripped.tar.gz
+/node-v9.9.0-stripped.tar.gz
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index e7e9613..20dab4b 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -5,3 +5,6 @@ wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
+
+echo "Now make sure to run:"
+echo "fedpkg new-sources node-v${version}-stripped.tar.gz"
diff --git a/nodejs.spec b/nodejs.spec
index 62dabc6..9d31c9a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 9
-%global nodejs_minor 8
+%global nodejs_minor 9
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -469,6 +469,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Mar 21 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.9.0-1
+- Update to 9.9.0
+-
https://nodejs.org/en/blog/release/v9.9.0/
+
* Thu Mar 08 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.8.0-1
- Update to 9.8.0
-
https://nodejs.org/en/blog/release/v9.8.0/
diff --git a/sources b/sources
index 2446b51..028c930 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v9.8.0-stripped.tar.gz) = d0ea80716138447efd3044856fd3ad28f8538f06c24f150f1cc4b96ec710ca472daeeac291dde29a073c9ad003d6c846d9b66e7c0f5df00adb5f6cdc082b7816
+SHA512 (node-v9.9.0-stripped.tar.gz) = 047286a8fb85b049d5ec4b7597c032d863331cfbe139201d8523da240886ef7c30b6b1f08cbd735e01042cd2e0c34b11754f82469a417d8d218e359e38e5650d
commit 374ae23edf3676653fec706a5c81c5cdf019ce11
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 8 10:55:22 2018 -0500
Work around F28 build issue
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index d316a92..16a7df0 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -249,6 +249,11 @@ rm -rf deps/icu-small \
%build
+# Work around Fedora 28 build issue:
+#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
+# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
+export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
+
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
# NULL objects. We need to pass -fno-delete-null-pointer-checks
@@ -294,6 +299,11 @@ make BUILDTYPE=Release %{?_smp_mflags}
%install
+# Work around Fedora 28 build issue:
+#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
+# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
+export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
+
rm -rf %{buildroot}
./tools/install.py install %{buildroot} %{_prefix}
commit 12ac43da4fa415870677ad68718e8ee85ede9796
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 8 09:45:09 2018 -0500
Update to 6.13.1
-
https://nodejs.org/en/blog/release/v6.12.4/
-
https://nodejs.org/en/blog/release/v6.12.5/
-
https://nodejs.org/en/blog/release/v6.13.0/
-
https://nodejs.org/en/blog/release/v6.13.1/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 8a78ea6..0726d5e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -76,3 +76,4 @@
/node-v6.12.0-stripped.tar.gz
/node-v6.12.2-stripped.tar.gz
/node-v6.12.3-stripped.tar.gz
+/node-v6.13.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 0593b88..d316a92 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,8 +18,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 6
-%global nodejs_minor 12
-%global nodejs_patch 3
+%global nodejs_minor 13
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -48,8 +48,8 @@
# libuv - from deps/uv/include/uv-version.h
%global libuv_major 1
-%global libuv_minor 15
-%global libuv_patch 0
+%global libuv_minor 16
+%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# punycode - from lib/punycode.js
@@ -433,6 +433,13 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Mar 08 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.13.1-1
+- Update to 6.13.1
+-
https://nodejs.org/en/blog/release/v6.12.4/
+-
https://nodejs.org/en/blog/release/v6.12.5/
+-
https://nodejs.org/en/blog/release/v6.13.0/
+-
https://nodejs.org/en/blog/release/v6.13.1/
+
* Thu Jan 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.12.3-1
- Update to 6.12.3
-
https://nodejs.org/en/blog/release/v6.12.3/
diff --git a/sources b/sources
index 0806cd3..4b286e7 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.12.3-stripped.tar.gz) = 2a79fad3d76b3f4cf74ae914ecf9464e24548330ee3c6eef7232fa116ecda76afaf8c762b57fdb1c29bbe054705fe1248b8788284a73dd70a9458a8ffed857c4
+SHA512 (node-v6.13.1-stripped.tar.gz) = 09a2cc205d747c20d21865f7c877b12223e1050e1c57b5a382eaed868a36536878538f8cd65125ab3f89e94c8f178cbf60ff97632aa8ae621718ad385ff51c88
commit 64f8f82763943f764d25225c2d95ae065490b10a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 8 09:35:34 2018 -0500
Update to 8.10.0
https://nodejs.org/en/blog/release/v8.10.0/
diff --git a/.gitignore b/.gitignore
index ade8dc2..ced6849 100644
--- a/.gitignore
+++ b/.gitignore
@@ -84,3 +84,4 @@
/node-v8.9.1-stripped.tar.gz
/node-v8.9.3-stripped.tar.gz
/node-v8.9.4-stripped.tar.gz
+/node-v8.10.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index da3dcab..c6aa2d7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,8 +21,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 9
-%global nodejs_patch 4
+%global nodejs_minor 10
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 3
@@ -30,8 +30,8 @@
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
-%global v8_minor 1
-%global v8_build 534
+%global v8_minor 2
+%global v8_build 414
%global v8_patch 50
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
@@ -52,8 +52,8 @@
# libuv - from deps/uv/include/uv-version.h
%global libuv_major 1
-%global libuv_minor 15
-%global libuv_patch 0
+%global libuv_minor 19
+%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -469,6 +469,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Mar 08 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.10.0-1
+- Update to 8.10.0
+-
https://nodejs.org/en/blog/release/v8.10.0/
+
* Thu Mar 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.4-3
- Work around build issue on F28
diff --git a/sources b/sources
index 6320142..641252e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.9.4-stripped.tar.gz) = de10b27c87e2b4fd7a09f58921a7b4733e86cf41c0360f15f23f0d02a78830e34ae1360b6868124194d684de53f12c1f815b63283b062c76730b9c4165bc5224
+SHA512 (node-v8.10.0-stripped.tar.gz) = 25b55122c36f3e48e627e8939160746d186e709d3d552bc4230241a28abed8fbe48c29670940ea0e493eb63c8f62b40cceb4fa51a0c2c128792ca8baf5906aff
commit 65648a2672dc03641b9eaa4d25a8f19d94fd90c3
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 8 09:17:54 2018 -0500
Update to 9.8.0
https://nodejs.org/en/blog/release/v9.8.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index c1e6f38..93945e9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -87,3 +87,4 @@
/node-v9.5.0-stripped.tar.gz
/node-v9.6.1-stripped.tar.gz
/node-v9.7.0-stripped.tar.gz
+/node-v9.8.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 78d5284..62dabc6 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 9
-%global nodejs_minor 7
+%global nodejs_minor 8
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -469,6 +469,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Mar 08 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.8.0-1
+- Update to 9.8.0
+-
https://nodejs.org/en/blog/release/v9.8.0/
+
* Thu Mar 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.7.0-1
- Update to 9.7.0
-
https://nodejs.org/en/blog/release/v9.7.0/
diff --git a/sources b/sources
index 7bb78fc..2446b51 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v9.7.0-stripped.tar.gz) = 99cb62e0be94689d5e665da94edc5f24fab135e7751a3501802ea902d20c2bca12e3368da5aec613e366b828f211e7f3b826b0f77ab734ffdf141f184de5aba7
+SHA512 (node-v9.8.0-stripped.tar.gz) = d0ea80716138447efd3044856fd3ad28f8538f06c24f150f1cc4b96ec710ca472daeeac291dde29a073c9ad003d6c846d9b66e7c0f5df00adb5f6cdc082b7816
commit 5849914e260ad9d4c4ded47bd73ae8186088db9f
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 1 08:25:32 2018 -0500
Work around F28 build issue
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 3c5384f..da3dcab 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -91,7 +91,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}.1
+Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -222,7 +222,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.1
+Release: %{npm_release}%{?dist}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -283,6 +283,11 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
+# Work around Fedora 28 issue:
+#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
+# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
+export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
+
#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
./configure --prefix=%{_prefix} \
@@ -316,6 +321,11 @@ make BUILDTYPE=Release %{?_smp_mflags}
%install
+# Work around Fedora 28 build issue:
+#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
+# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
+export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
+
rm -rf %{buildroot}
./tools/install.py install %{buildroot} %{_prefix}
@@ -396,7 +406,7 @@ rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
%check
# Fail the build if the versions don't match
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
-%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8, '%{v8_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8.replace(/-node.\d+$/, ''), '%{v8_version}')"
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
# Ensure we have punycode and that the version matches
@@ -459,6 +469,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Mar 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.4-3
+- Work around build issue on F28
+
* Thu Feb 08 2018 Fedora Release Engineering
releng@fedoraproject.org - 1:8.9.4-2.1
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
commit 6775e6863717e6dcbda44ed318d89e3fc1e9bd4f
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 1 08:25:32 2018 -0500
Update to 9.7.0
-
https://nodejs.org/en/blog/release/v9.7.0/
- Work around F28 build issue
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 96ed4be..c1e6f38 100644
--- a/.gitignore
+++ b/.gitignore
@@ -86,3 +86,4 @@
/node-v8.9.4-stripped.tar.gz
/node-v9.5.0-stripped.tar.gz
/node-v9.6.1-stripped.tar.gz
+/node-v9.7.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index f3d550e..78d5284 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,8 +21,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 9
-%global nodejs_minor 6
-%global nodejs_patch 1
+%global nodejs_minor 7
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -53,7 +53,7 @@
# libuv - from deps/uv/include/uv-version.h
%global libuv_major 1
%global libuv_minor 19
-%global libuv_patch 1
+%global libuv_patch 2
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -283,6 +283,11 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
+# Work around Fedora 28 issue:
+#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
+# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
+export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
+
#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
./configure --prefix=%{_prefix} \
@@ -316,6 +321,11 @@ make BUILDTYPE=Release %{?_smp_mflags}
%install
+# Work around Fedora 28 build issue:
+#
https://fedoraproject.org/wiki/Changes/Avoid_usr_bin_python_in_RPM_Build#Qui...
+# Tracking BZ:
https://bugzilla.redhat.com/show_bug.cgi?id=1550564
+export PYTHON_DISALLOW_AMBIGUOUS_VERSION=0
+
rm -rf %{buildroot}
./tools/install.py install %{buildroot} %{_prefix}
@@ -459,6 +469,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Mar 01 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.7.0-1
+- Update to 9.7.0
+-
https://nodejs.org/en/blog/release/v9.7.0/
+- Work around F28 build issue
+
* Sun Feb 25 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.6.1-1
- Update to 9.6.1
-
https://nodejs.org/en/blog/release/v9.6.1/
diff --git a/sources b/sources
index 8ad63db..7bb78fc 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v9.6.1-stripped.tar.gz) = b14fd53548f2a51699264a239814f9d6f2b5d64480a3dd4618c051dd8a387e8aa74a57822a6d547336bc2d7d289fb49e9dd1707148355b0d8bb0f064c30af92f
+SHA512 (node-v9.7.0-stripped.tar.gz) = 99cb62e0be94689d5e665da94edc5f24fab135e7751a3501802ea902d20c2bca12e3368da5aec613e366b828f211e7f3b826b0f77ab734ffdf141f184de5aba7
commit dd9507e62e4e9e8be1c3ff63fe18b4b89a5edf6e
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Sun Feb 25 19:56:35 2018 -0500
Update to 9.6.1
https://nodejs.org/en/blog/release/v9.6.1/
https://nodejs.org/en/blog/release/v9.6.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index ebe89a5..96ed4be 100644
--- a/.gitignore
+++ b/.gitignore
@@ -85,3 +85,4 @@
/node-v8.9.3-stripped.tar.gz
/node-v8.9.4-stripped.tar.gz
/node-v9.5.0-stripped.tar.gz
+/node-v9.6.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 626cc98..f3d550e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,8 +21,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 9
-%global nodejs_minor 5
-%global nodejs_patch 0
+%global nodejs_minor 6
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -459,6 +459,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Sun Feb 25 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.6.1-1
+- Update to 9.6.1
+-
https://nodejs.org/en/blog/release/v9.6.1/
+-
https://nodejs.org/en/blog/release/v9.6.0/
+
* Mon Feb 05 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.5.0-1
- Package Node.js 9.5.0
diff --git a/sources b/sources
index a8b491d..8ad63db 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v9.5.0-stripped.tar.gz) = 72f584fd040f4e3bcef6ca81824240e83ad171db14bfdefdfd1c97d54d520bccfb9de504dc46dbe91caeb50a210883f47d344a9a17dc1bf6650a72730eee9a04
+SHA512 (node-v9.6.1-stripped.tar.gz) = b14fd53548f2a51699264a239814f9d6f2b5d64480a3dd4618c051dd8a387e8aa74a57822a6d547336bc2d7d289fb49e9dd1707148355b0d8bb0f064c30af92f
commit 903a5567efa41c9029bfc4f5d678bf4c592b04f9
Author: Fedora Release Engineering
releng@fedoraproject.org
Date: Thu Feb 8 04:19:45 2018 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering
releng@fedoraproject.org
diff --git a/nodejs.spec b/nodejs.spec
index 930a9ba..3c5384f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -91,7 +91,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
+Release: %{nodejs_release}%{?dist}.1
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -222,7 +222,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}
+Release: %{npm_release}%{?dist}.1
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -459,6 +459,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Feb 08 2018 Fedora Release Engineering
releng@fedoraproject.org - 1:8.9.4-2.1
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
* Thu Jan 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.4-2
- Fix incorrect Requires:
commit a3da53001dffc3a43e7d2041111da122e346b4dc
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Feb 5 12:43:53 2018 -0500
Package Node.js 9.5.0
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index ade8dc2..ebe89a5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -84,3 +84,4 @@
/node-v8.9.1-stripped.tar.gz
/node-v8.9.3-stripped.tar.gz
/node-v8.9.4-stripped.tar.gz
+/node-v9.5.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 371b683..626cc98 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,19 +20,19 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 8
-%global nodejs_minor 9
-%global nodejs_patch 4
+%global nodejs_major 9
+%global nodejs_minor 5
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
-%global v8_minor 1
-%global v8_build 534
-%global v8_patch 50
+%global v8_minor 2
+%global v8_build 414
+%global v8_patch 46
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -40,8 +40,8 @@
# c-ares - from deps/cares/include/ares_version.h
#
https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
-%global c_ares_minor 10
-%global c_ares_patch 1
+%global c_ares_minor 13
+%global c_ares_patch 0
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
# http-parser - from deps/http_parser/http_parser.h
@@ -52,13 +52,13 @@
# libuv - from deps/uv/include/uv-version.h
%global libuv_major 1
-%global libuv_minor 15
-%global libuv_patch 0
+%global libuv_minor 19
+%global libuv_patch 1
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
%global nghttp2_major 1
-%global nghttp2_minor 25
+%global nghttp2_minor 29
%global nghttp2_patch 0
%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
@@ -134,11 +134,11 @@ BuildRequires: http-parser-devel >= 2.7.0
Requires: http-parser >= 2.7.0
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
-BuildRequires: libnghttp2-devel >= 1.25.0
-Requires: libnghttp2 >= 1.25.0
+BuildRequires: libnghttp2-devel >= %{nghttp2_version}
+Requires: libnghttp2 >= %{nghttp2_version}
%endif
-BuildRequires: (openssl-devel <= 1:1.1.0 or compat-openssl10-devel)
+BuildRequires: openssl-devel
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -396,7 +396,7 @@ rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
%check
# Fail the build if the versions don't match
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
-%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8, '%{v8_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8.replace(/-node.\d+$/, ''), '%{v8_version}')"
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
# Ensure we have punycode and that the version matches
@@ -459,6 +459,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Feb 05 2018 Stephen Gallagher
sgallagh@redhat.com - 1:9.5.0-1
+- Package Node.js 9.5.0
+
* Thu Jan 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.4-2
- Fix incorrect Requires:
diff --git a/sources b/sources
index 6320142..a8b491d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.9.4-stripped.tar.gz) = de10b27c87e2b4fd7a09f58921a7b4733e86cf41c0360f15f23f0d02a78830e34ae1360b6868124194d684de53f12c1f815b63283b062c76730b9c4165bc5224
+SHA512 (node-v9.5.0-stripped.tar.gz) = 72f584fd040f4e3bcef6ca81824240e83ad171db14bfdefdfd1c97d54d520bccfb9de504dc46dbe91caeb50a210883f47d344a9a17dc1bf6650a72730eee9a04
commit b73e62c1a973e478dcab8ac29200343d5b4ec45a
Author: Haikel Guemar
hguemar@fedoraproject.org
Date: Tue Jan 16 17:58:04 2018 +0100
Minor conditional fix
Recommands does not exist on RHEL, not just EPEL
diff --git a/nodejs.spec b/nodejs.spec
index 371b683..930a9ba 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -184,7 +184,7 @@ Provides: bundled(c-ares) = %{c_ares_version}
Provides: bundled(v8) = %{v8_version}
# Make sure we keep NPM up to date when we update Node.js
-%if 0%{?epel}
+%if 0%{?rhel}
# EPEL doesn't support Recommends, so make it strict
Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%else
commit 099be0c9874ea886f77a93a639841786f31059a1
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 11 19:40:45 2018 -0500
Update to 6.12.3
https://nodejs.org/en/blog/release/v6.12.3/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index fce5e3a..8a78ea6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -75,3 +75,4 @@
/node-v6.11.5-stripped.tar.gz
/node-v6.12.0-stripped.tar.gz
/node-v6.12.2-stripped.tar.gz
+/node-v6.12.3-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index ab1ab7b..0593b88 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 12
-%global nodejs_patch 2
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -29,7 +29,7 @@
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 109
+%global v8_patch 111
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -433,7 +433,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Fri Dec 08 2017 Stephen Gallagher
sgallagh@redhat.com - -
+* Thu Jan 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:6.12.3-1
+- Update to 6.12.3
+-
https://nodejs.org/en/blog/release/v6.12.3/
+
+* Fri Dec 08 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.12.2-1
- Update to 6.12.2
-
https://nodejs.org/en/blog/release/v6.12.2/
diff --git a/sources b/sources
index ef1af3f..0806cd3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.12.2-stripped.tar.gz) = f32733fdb2b72c7540eae8082bd9fe6afa102381924985a8ffb5961639bfc6a4e1081b79abb1cd4009828b1ee93502291cca8ca966fbaa187cf5c7568a7db2f6
+SHA512 (node-v6.12.3-stripped.tar.gz) = 2a79fad3d76b3f4cf74ae914ecf9464e24548330ee3c6eef7232fa116ecda76afaf8c762b57fdb1c29bbe054705fe1248b8788284a73dd70a9458a8ffed857c4
commit ddf9147898f18521eccf28b355f59ab2c0a659ce
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 11 14:30:44 2018 -0500
Fix incorrect Requires:
diff --git a/nodejs.spec b/nodejs.spec
index d03919d..371b683 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -135,7 +135,7 @@ Requires: http-parser >= 2.7.0
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
BuildRequires: libnghttp2-devel >= 1.25.0
-Requires: libnghttpd2 >= 1.25.0
+Requires: libnghttp2 >= 1.25.0
%endif
BuildRequires: (openssl-devel <= 1:1.1.0 or compat-openssl10-devel)
@@ -459,6 +459,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jan 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.4-2
+- Fix incorrect Requires:
+
* Thu Jan 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.4-1
- Update to 8.9.4
-
https://nodejs.org/en/blog/release/v8.9.4/
commit cbcccf579762faf14847a34640b952e99e802ef6
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 11 08:27:13 2018 -0500
Update to 8.9.4
https://nodejs.org/en/blog/release/v8.9.4/
Switch to system copy of nghttp2
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index ec96e06..ade8dc2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -83,3 +83,4 @@
/node-v8.9.0-stripped.tar.gz
/node-v8.9.1-stripped.tar.gz
/node-v8.9.3-stripped.tar.gz
+/node-v8.9.4-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 5e8e737..d03919d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -22,17 +22,17 @@
%global nodejs_epoch 1
%global nodejs_major 8
%global nodejs_minor 9
-%global nodejs_patch 3
+%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
%global v8_minor 1
%global v8_build 534
-%global v8_patch 48
+%global v8_patch 50
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -56,9 +56,15 @@
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
+# nghttp2 - from deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
+%global nghttp2_major 1
+%global nghttp2_minor 25
+%global nghttp2_patch 0
+%global nghttp2_version %{nghttp2_major}.%{nghttp2_minor}.%{nghttp2_patch}
+
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
-# Note: this will be unmerged in v7 or v8
+# Note: this will be unmerged in an upcoming major release
%global punycode_major 2
%global punycode_minor 0
%global punycode_patch 0
@@ -67,8 +73,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 5
-%global npm_minor 5
-%global npm_patch 1
+%global npm_minor 6
+%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -121,12 +127,15 @@ BuildRequires: gcc-c++ >= 4.9.4
%if %{with bootstrap}
Provides: bundled(http-parser) = %{http_parser_version}
Provides: bundled(libuv) = %{libuv_version}
+Provides: bundled(nghttp2) = %{nghttp2_version}
%else
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
Requires: http-parser >= 2.7.0
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
+BuildRequires: libnghttp2-devel >= 1.25.0
+Requires: libnghttpd2 >= 1.25.0
%endif
BuildRequires: (openssl-devel <= 1:1.1.0 or compat-openssl10-devel)
@@ -174,10 +183,6 @@ Provides: bundled(c-ares) = %{c_ares_version}
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
Provides: bundled(v8) = %{v8_version}
-# As of v8.4.0, Node.js has http/2 support. They however don't provide --shared-<lib>
-# option yet.
-Provides: bundled(nghttp2) = 1.25.0
-
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?epel}
# EPEL doesn't support Recommends, so make it strict
@@ -294,6 +299,7 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--shared-zlib \
--shared-libuv \
--shared-http-parser \
+ --shared-nghttp2 \
--with-dtrace \
--with-intl=system-icu \
--debug-http2 \
@@ -453,7 +459,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Fri Dec 08 2017 Stephen Gallagher
sgallagh@redhat.com - -
+* Thu Jan 11 2018 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.4-1
+- Update to 8.9.4
+-
https://nodejs.org/en/blog/release/v8.9.4/
+- Switch to system copy of nghttp2
+
+* Fri Dec 08 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.3-2
- Update to 8.9.3
-
https://nodejs.org/en/blog/release/v8.9.3/
-
https://nodejs.org/en/blog/release/v8.9.2/
diff --git a/sources b/sources
index a53b570..6320142 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.9.3-stripped.tar.gz) = 4aa1e9e5a5a0d4ef404804b5c8a7dac34511290cb8abfdaeb46c05f2ad80298556c2990ca3cdedf482371ce1fb31fa97a7ea6d6f23283c250c52aa1716c2f6bf
+SHA512 (node-v8.9.4-stripped.tar.gz) = de10b27c87e2b4fd7a09f58921a7b4733e86cf41c0360f15f23f0d02a78830e34ae1360b6868124194d684de53f12c1f815b63283b062c76730b9c4165bc5224
commit ff693e0914783dc4e3ba03caff3657151c7f3a2a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Dec 8 16:09:58 2017 -0500
Update to 6.12.2
https://nodejs.org/en/blog/release/v6.12.2/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 66a1163..fce5e3a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -74,3 +74,4 @@
/node-v6.11.4-stripped.tar.gz
/node-v6.11.5-stripped.tar.gz
/node-v6.12.0-stripped.tar.gz
+/node-v6.12.2-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 858e7d9..ab1ab7b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 12
-%global nodejs_patch 0
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -29,7 +29,7 @@
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 108
+%global v8_patch 109
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -192,7 +192,7 @@ Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
-#%if ! 0%{?bootstrap}
+#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
#deps are bundled
%else
@@ -391,7 +391,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
-#%if ! 0%{?bootstrap}
+#%if ! 0%%{?bootstrap}
%if %{with bootstrap}
#no dtrace
%else
@@ -433,6 +433,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Dec 08 2017 Stephen Gallagher
sgallagh@redhat.com - -
+- Update to 6.12.2
+-
https://nodejs.org/en/blog/release/v6.12.2/
+
* Mon Nov 13 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.12.0-1
- Update to 6.12.0
diff --git a/sources b/sources
index 33ee71c..ef1af3f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.12.0-stripped.tar.gz) = ec64483c7aeef6901a1d77b03bd5caa4e236c6c484b879c7a5a5c041fd3fd2d0d78df96428c3e3cb08abc123e381b1cab4a111375b07189c32f4b29db9aa8c26
+SHA512 (node-v6.12.2-stripped.tar.gz) = f32733fdb2b72c7540eae8082bd9fe6afa102381924985a8ffb5961639bfc6a4e1081b79abb1cd4009828b1ee93502291cca8ca966fbaa187cf5c7568a7db2f6
commit 308def14406cbd8839edef6ce98974a7aaddf56a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Dec 8 11:53:43 2017 -0500
Update to 8.9.3
https://nodejs.org/en/blog/release/v8.9.3/
https://nodejs.org/en/blog/release/v8.9.2/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 3d3f1d4..ec96e06 100644
--- a/.gitignore
+++ b/.gitignore
@@ -82,3 +82,4 @@
/node-v8.8.1-stripped.tar.gz
/node-v8.9.0-stripped.tar.gz
/node-v8.9.1-stripped.tar.gz
+/node-v8.9.3-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 1f828e5..5e8e737 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -22,7 +22,7 @@
%global nodejs_epoch 1
%global nodejs_major 8
%global nodejs_minor 9
-%global nodejs_patch 1
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 2
@@ -32,7 +32,7 @@
%global v8_major 6
%global v8_minor 1
%global v8_build 534
-%global v8_patch 47
+%global v8_patch 48
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -453,6 +453,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Dec 08 2017 Stephen Gallagher
sgallagh@redhat.com - -
+- Update to 8.9.3
+-
https://nodejs.org/en/blog/release/v8.9.3/
+-
https://nodejs.org/en/blog/release/v8.9.2/
+
* Thu Nov 30 2017 Pete Walter
pwalter@fedoraproject.org - 1:8.9.1-2
- Rebuild for ICU 60.1
diff --git a/sources b/sources
index 0db7e6e..a53b570 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.9.1-stripped.tar.gz) = 74739ce49b50d847ee7b458ff37dccefd9ed0c444e4d1de127b2136e65ec2483a24a7cbddeacabc3134205165e4853372f07725b4d6e20f378ce33fb1a84568e
+SHA512 (node-v8.9.3-stripped.tar.gz) = 4aa1e9e5a5a0d4ef404804b5c8a7dac34511290cb8abfdaeb46c05f2ad80298556c2990ca3cdedf482371ce1fb31fa97a7ea6d6f23283c250c52aa1716c2f6bf
commit 6fe256ade3a44786ba9c014f473b9227a5d50554
Author: Pete Walter
pwalter@fedoraproject.org
Date: Fri Dec 1 08:28:33 2017 +0000
Fix release harder
diff --git a/nodejs.spec b/nodejs.spec
index 102f794..1f828e5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -85,7 +85,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}.1
+Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
commit f58ac92b9332944381b122c949745107f45ac630
Author: Pete Walter
pwalter@fedoraproject.org
Date: Fri Dec 1 08:17:34 2017 +0000
Properly bump nodejs_release
diff --git a/nodejs.spec b/nodejs.spec
index 2def32c..102f794 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -25,7 +25,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -217,7 +217,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.3
+Release: %{npm_release}%{?dist}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -453,7 +453,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Thu Nov 30 2017 Pete Walter
pwalter@fedoraproject.org - 1:8.9.1-1.1
+* Thu Nov 30 2017 Pete Walter
pwalter@fedoraproject.org - 1:8.9.1-2
- Rebuild for ICU 60.1
* Thu Nov 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.9.1-1
commit 865172fcd78b4f8760ba103158dd40f2d4ac774e
Author: Pete Walter
pwalter@fedoraproject.org
Date: Thu Nov 30 20:38:18 2017 +0000
Rebuild for ICU 60.1
diff --git a/nodejs.spec b/nodejs.spec
index 6f635ae..2def32c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -85,7 +85,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
+Release: %{nodejs_release}%{?dist}.1
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -217,7 +217,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.2
+Release: %{npm_release}%{?dist}.3
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -453,6 +453,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Nov 30 2017 Pete Walter
pwalter@fedoraproject.org - 1:8.9.1-1.1
+- Rebuild for ICU 60.1
+
* Thu Nov 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.9.1-1
- Update to 8.9.1
commit e9f59064d08992ad0693b13ab86646ca1fef0305
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Mon Nov 13 11:19:16 2017 +0100
Update to 6.12.0
diff --git a/.gitignore b/.gitignore
index 4998aab..66a1163 100644
--- a/.gitignore
+++ b/.gitignore
@@ -73,3 +73,4 @@
/node-v6.11.3-stripped.tar.gz
/node-v6.11.4-stripped.tar.gz
/node-v6.11.5-stripped.tar.gz
+/node-v6.12.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 837ff68..858e7d9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,7 +1,6 @@
%global with_debug 1
# bundle some dependencies missing in Modularity
-#%{!?_with_bootstrap: %global bootstrap 1}
%bcond_with bootstrap
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,8 +18,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 6
-%global nodejs_minor 11
-%global nodejs_patch 5
+%global nodejs_minor 12
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -49,7 +48,7 @@
# libuv - from deps/uv/include/uv-version.h
%global libuv_major 1
-%global libuv_minor 11
+%global libuv_minor 15
%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
@@ -108,10 +107,9 @@ BuildRequires: python2-devel
Requires: http-parser >= 2.7.0
BuildRequires: libicu-devel
BuildRequires: zlib-devel
-BuildRequires: gcc >= 4.8.0
-BuildRequires: gcc-c++ >= 4.8.0
+BuildRequires: gcc >= 4.8.5
+BuildRequires: gcc-c++ >= 4.8.5
-#%if ! 0%{?bootstrap}
%if %{with bootstrap}
Provides: bundled(http-parser) = %{http_parser_version}
Provides: bundled(libuv) = %{libuv_version}
@@ -129,7 +127,7 @@ BuildRequires: compat-openssl10-devel >= 1:1.0.2
BuildRequires: openssl-devel >= 1:1.0.2
%endif
-# we need the system certificate store
+# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
@@ -246,8 +244,7 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/http-parser \
- deps/icu-small \
+rm -rf deps/icu-small \
deps/zlib
@@ -270,7 +267,6 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
-#%if ! 0%{?bootstrap}
%if %{with bootstrap}
./configure --prefix=%{_prefix} \
--shared-openssl \
@@ -437,12 +433,15 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Nov 13 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.12.0-1
+- Update to 6.12.0
+
* Thu Oct 26 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.5-1
- Update to 6.11.5 security release
* Fri Oct 06 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.4-1
- Update to 6.11.4
--
https://nodejs.org/en/blog/release/v6.11.3/
+-
https://nodejs.org/en/blog/release/v6.11.4/
- use bcond macro
* Thu Sep 21 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6:11.3-2
diff --git a/sources b/sources
index 3596f27..33ee71c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.11.5-stripped.tar.gz) = 1a92ca8411bc683a588e0b51fc298a2a7ff162bf485157239a875dd7d57de554acbf6ed682ed5f80f4e0092577c193fd5b94eccdf22783d7a2b527747b86ca53
+SHA512 (node-v6.12.0-stripped.tar.gz) = ec64483c7aeef6901a1d77b03bd5caa4e236c6c484b879c7a5a5c041fd3fd2d0d78df96428c3e3cb08abc123e381b1cab4a111375b07189c32f4b29db9aa8c26
commit 3e6dc166bf9a7d5857b384223757e0802e2e71cb
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Nov 9 15:37:46 2017 +0100
Update to 8.9.1
diff --git a/.gitignore b/.gitignore
index 3da651c..3d3f1d4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -81,3 +81,4 @@
/node-v8.8.0-stripped.tar.gz
/node-v8.8.1-stripped.tar.gz
/node-v8.9.0-stripped.tar.gz
+/node-v8.9.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 5699a3e..6f635ae 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -22,7 +22,7 @@
%global nodejs_epoch 1
%global nodejs_major 8
%global nodejs_minor 9
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -32,7 +32,7 @@
%global v8_major 6
%global v8_minor 1
%global v8_build 534
-%global v8_patch 46
+%global v8_patch 47
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -453,6 +453,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Nov 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.9.1-1
+- Update to 8.9.1
+
* Tue Oct 31 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.0-1
- Update to 8.9.0
- Drop upstreamed patch
diff --git a/sources b/sources
index edbcff0..0db7e6e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.9.0-stripped.tar.gz) = b7a2aed662eb6b9dd5029f86fde8658092b8834417e7ccc2f80adf399ccbf7b35932f5afd141c8dd88f2e050ea3418997daabcc8237a59e1af6a2238dc7a384b
+SHA512 (node-v8.9.1-stripped.tar.gz) = 74739ce49b50d847ee7b458ff37dccefd9ed0c444e4d1de127b2136e65ec2483a24a7cbddeacabc3134205165e4853372f07725b4d6e20f378ce33fb1a84568e
commit 599922b4e5e44f8e6a4bb32a77caeb0a7b949307
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Oct 31 18:57:50 2017 -0400
Update to 8.9.0
Drop upstreamed patch
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index d127522..3da651c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -80,3 +80,4 @@
/node-v8.7.0-stripped.tar.gz
/node-v8.8.0-stripped.tar.gz
/node-v8.8.1-stripped.tar.gz
+/node-v8.9.0-stripped.tar.gz
diff --git a/0001-src-fix-http2-debug-build-errors.patch b/0001-src-fix-http2-debug-build-errors.patch
deleted file mode 100644
index 4467f27..0000000
--- a/0001-src-fix-http2-debug-build-errors.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-From 27a4275eb7a52d944b95655fd5afc8b192e95b8c Mon Sep 17 00:00:00 2001
-From: Daniel Bevenius
daniel.bevenius@gmail.com
-Date: Tue, 24 Oct 2017 08:34:02 +0200
-Subject: [PATCH] src: fix http2 debug build errors
-
-Currently building with debug enabled produces the following errors:
-
-In file included from ../src/node_http2.h:6:
-../src/node_http2_core-inl.h:465:18: error: expected ';' after do/while
-statement
- CHECK_GT(id, 0)
- ^
- ;
-../src/node_http2_core-inl.h:469:18: error: use of undeclared identifier
-'spec'
- OnPriority(id, spec.stream_id, spec.weight, spec.exclusive);
- ^
-../src/node_http2_core-inl.h:469:34: error: use of undeclared identifier
-'spec'
- OnPriority(id, spec.stream_id, spec.weight, spec.exclusive);
- ^
-../src/node_http2_core-inl.h:469:47: error: use of undeclared identifier
-'spec'
- OnPriority(id, spec.stream_id, spec.weight, spec.exclusive);
- ^
-
-This commit adds the missing semicolon to fix the above error.
-
-../src/node_http2.cc:92:9: error: reference to non-static member
-function must be called; did you mean to call
- it with no arguments?
- CHECK(object->Has(context, env()->ongetpadding_string()).FromJust());
- ^~~~~~
-../src/util.h:120:20: note: expanded from macro 'CHECK'
- if (UNLIKELY(!(expr))) {
-\
- ^~~~
-../src/util.h:107:44: note: expanded from macro 'UNLIKELY'
-
-For this issue I was not sure what the correct check would be so I've
-just commented it out and will update after feedback.
-
-squash: uncomment check
----
- src/node_http2.cc | 2 +-
- src/node_http2_core-inl.h | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/node_http2.cc b/src/node_http2.cc
-index 089423334366c2696b9458ea0aa660ecf3f7ce3e..e10c71e9a84e1ecaf268ef733a2a79ad57c9dc74 100644
---- a/src/node_http2.cc
-+++ b/src/node_http2.cc
-@@ -87,11 +87,11 @@ ssize_t Http2Session::OnCallbackPadding(size_t frameLen,
-
- HandleScope handle_scope(isolate);
- Context::Scope context_scope(context);
-
- #if defined(DEBUG) && DEBUG
-- CHECK(object->Has(context, env()->ongetpadding_string()).FromJust());
-+ CHECK(object()->Has(context, env()->ongetpadding_string()).FromJust());
- #endif
-
- AliasedBuffer<uint32_t, v8::Uint32Array>& buffer =
- env()->http2_state()->padding_buffer;
- buffer[PADDING_BUF_FRAME_LENGTH] = frameLen;
-diff --git a/src/node_http2_core-inl.h b/src/node_http2_core-inl.h
-index 5bfe1dc19a949c9d861ad2d7423a91617feb0649..9735e565b2f0e2585a043054da87d1c81e4e3abf 100644
---- a/src/node_http2_core-inl.h
-+++ b/src/node_http2_core-inl.h
-@@ -460,11 +460,11 @@ inline void Nghttp2Session::HandlePriorityFrame(const nghttp2_frame* frame) {
- // Priority frame stream ID should never be <= 0. nghttp2 handles this
- // as an error condition that terminates the session, so we should be
- // good here
-
- #if defined(DEBUG) && DEBUG
-- CHECK_GT(id, 0)
-+ CHECK_GT(id, 0);
- #endif
-
- nghttp2_priority_spec spec = priority_frame.pri_spec;
- OnPriority(id, spec.stream_id, spec.weight, spec.exclusive);
- }
---
-2.14.2
-
diff --git a/nodejs.spec b/nodejs.spec
index 160982c..5699a3e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,8 +21,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 8
-%global nodejs_patch 1
+%global nodejs_minor 9
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -32,7 +32,7 @@
%global v8_major 6
%global v8_minor 1
%global v8_build 534
-%global v8_patch 42
+%global v8_patch 46
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -67,8 +67,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 5
-%global npm_minor 4
-%global npm_patch 2
+%global npm_minor 5
+%global npm_patch 1
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -111,9 +111,6 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# Follow
https://bugs.chromium.org/p/v8/issues/detail?id=6939
Patch2: 0001-Fix-aarch64-debug.patch
-# From upstream PR:
https://github.com/nodejs/node/pull/16432
-Patch3: 0001-src-fix-http2-debug-build-errors.patch
-
BuildRequires: python2-devel
BuildRequires: libicu-devel
BuildRequires: zlib-devel
@@ -261,7 +258,6 @@ rm -rf deps/icu-small \
deps/zlib
%patch2 -p1
-%patch3 -p1
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -457,6 +453,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Oct 31 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.9.0-1
+- Update to 8.9.0
+- Drop upstreamed patch
+
* Thu Oct 26 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.8.1-1
- Update to 8.8.1 to fix a regression
diff --git a/sources b/sources
index 36cd2ab..edbcff0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.8.1-stripped.tar.gz) = 2a8a0888401c73dbd30817c21d2709866dde83b85a5af29df4372268bb25f2721bf4ee3a1321f60687e5b2e03d5ce5b9d6d4da4869ae8b1f393e517bd14853af
+SHA512 (node-v8.9.0-stripped.tar.gz) = b7a2aed662eb6b9dd5029f86fde8658092b8834417e7ccc2f80adf399ccbf7b35932f5afd141c8dd88f2e050ea3418997daabcc8237a59e1af6a2238dc7a384b
commit 5e8c81542ff3ea5b1a06df04f4abc4f8ff93df8c
Merge: fba8d96 8d7baa5
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Oct 26 11:38:28 2017 -0400
Merge branch 'f26' into epel7
commit 8d7baa5f106b0000513814fdbd544c7825315cdc
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Oct 26 11:36:32 2017 -0400
Update to 6.11.5 security release
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 9105bf5..4998aab 100644
--- a/.gitignore
+++ b/.gitignore
@@ -72,3 +72,4 @@
/node-v6.11.2-stripped.tar.gz
/node-v6.11.3-stripped.tar.gz
/node-v6.11.4-stripped.tar.gz
+/node-v6.11.5-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 755d4f3..9886a3d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -20,7 +20,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 11
-%global nodejs_patch 4
+%global nodejs_patch 5
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -434,6 +434,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Oct 26 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.5-1
+- Update to 6.11.5 security release
+
* Fri Oct 06 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.4-1
- Update to 6.11.4
-
https://nodejs.org/en/blog/release/v6.11.3/
diff --git a/sources b/sources
index 3b66adf..3596f27 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.11.4-stripped.tar.gz) = 94d4759744dd61288a3c352ca6050954c0716772c19cd281a927a9702f9e41fdbdbcf310183e43c734187192d97817cbb1f1c203f47b400c60550a5da78fead6
+SHA512 (node-v6.11.5-stripped.tar.gz) = 1a92ca8411bc683a588e0b51fc298a2a7ff162bf485157239a875dd7d57de554acbf6ed682ed5f80f4e0092577c193fd5b94eccdf22783d7a2b527747b86ca53
commit 928ef51e4e197e2de6f6d6673242a3114186f7ac
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Oct 26 09:59:05 2017 -0400
Add patch to fix debug builds
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/0001-src-fix-http2-debug-build-errors.patch b/0001-src-fix-http2-debug-build-errors.patch
new file mode 100644
index 0000000..4467f27
--- /dev/null
+++ b/0001-src-fix-http2-debug-build-errors.patch
@@ -0,0 +1,85 @@
+From 27a4275eb7a52d944b95655fd5afc8b192e95b8c Mon Sep 17 00:00:00 2001
+From: Daniel Bevenius
daniel.bevenius@gmail.com
+Date: Tue, 24 Oct 2017 08:34:02 +0200
+Subject: [PATCH] src: fix http2 debug build errors
+
+Currently building with debug enabled produces the following errors:
+
+In file included from ../src/node_http2.h:6:
+../src/node_http2_core-inl.h:465:18: error: expected ';' after do/while
+statement
+ CHECK_GT(id, 0)
+ ^
+ ;
+../src/node_http2_core-inl.h:469:18: error: use of undeclared identifier
+'spec'
+ OnPriority(id, spec.stream_id, spec.weight, spec.exclusive);
+ ^
+../src/node_http2_core-inl.h:469:34: error: use of undeclared identifier
+'spec'
+ OnPriority(id, spec.stream_id, spec.weight, spec.exclusive);
+ ^
+../src/node_http2_core-inl.h:469:47: error: use of undeclared identifier
+'spec'
+ OnPriority(id, spec.stream_id, spec.weight, spec.exclusive);
+ ^
+
+This commit adds the missing semicolon to fix the above error.
+
+../src/node_http2.cc:92:9: error: reference to non-static member
+function must be called; did you mean to call
+ it with no arguments?
+ CHECK(object->Has(context, env()->ongetpadding_string()).FromJust());
+ ^~~~~~
+../src/util.h:120:20: note: expanded from macro 'CHECK'
+ if (UNLIKELY(!(expr))) {
+\
+ ^~~~
+../src/util.h:107:44: note: expanded from macro 'UNLIKELY'
+
+For this issue I was not sure what the correct check would be so I've
+just commented it out and will update after feedback.
+
+squash: uncomment check
+---
+ src/node_http2.cc | 2 +-
+ src/node_http2_core-inl.h | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/node_http2.cc b/src/node_http2.cc
+index 089423334366c2696b9458ea0aa660ecf3f7ce3e..e10c71e9a84e1ecaf268ef733a2a79ad57c9dc74 100644
+--- a/src/node_http2.cc
++++ b/src/node_http2.cc
+@@ -87,11 +87,11 @@ ssize_t Http2Session::OnCallbackPadding(size_t frameLen,
+
+ HandleScope handle_scope(isolate);
+ Context::Scope context_scope(context);
+
+ #if defined(DEBUG) && DEBUG
+- CHECK(object->Has(context, env()->ongetpadding_string()).FromJust());
++ CHECK(object()->Has(context, env()->ongetpadding_string()).FromJust());
+ #endif
+
+ AliasedBuffer<uint32_t, v8::Uint32Array>& buffer =
+ env()->http2_state()->padding_buffer;
+ buffer[PADDING_BUF_FRAME_LENGTH] = frameLen;
+diff --git a/src/node_http2_core-inl.h b/src/node_http2_core-inl.h
+index 5bfe1dc19a949c9d861ad2d7423a91617feb0649..9735e565b2f0e2585a043054da87d1c81e4e3abf 100644
+--- a/src/node_http2_core-inl.h
++++ b/src/node_http2_core-inl.h
+@@ -460,11 +460,11 @@ inline void Nghttp2Session::HandlePriorityFrame(const nghttp2_frame* frame) {
+ // Priority frame stream ID should never be <= 0. nghttp2 handles this
+ // as an error condition that terminates the session, so we should be
+ // good here
+
+ #if defined(DEBUG) && DEBUG
+- CHECK_GT(id, 0)
++ CHECK_GT(id, 0);
+ #endif
+
+ nghttp2_priority_spec spec = priority_frame.pri_spec;
+ OnPriority(id, spec.stream_id, spec.weight, spec.exclusive);
+ }
+--
+2.14.2
+
diff --git a/nodejs.spec b/nodejs.spec
index 806308b..160982c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -107,8 +107,13 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
+# Being fixed upstream.
+# Follow
https://bugs.chromium.org/p/v8/issues/detail?id=6939
Patch2: 0001-Fix-aarch64-debug.patch
+# From upstream PR:
https://github.com/nodejs/node/pull/16432
+Patch3: 0001-src-fix-http2-debug-build-errors.patch
+
BuildRequires: python2-devel
BuildRequires: libicu-devel
BuildRequires: zlib-devel
@@ -256,6 +261,7 @@ rm -rf deps/icu-small \
deps/zlib
%patch2 -p1
+%patch3 -p1
%build
# build with debugging symbols and add defines from libuv (#892601)
commit f2976b7fa927a4bebbac3e96ae0934fc67294ed6
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Oct 26 08:37:57 2017 -0400
Update to 8.8.1 to fix a regression
diff --git a/.gitignore b/.gitignore
index 07be98a..d127522 100644
--- a/.gitignore
+++ b/.gitignore
@@ -79,3 +79,4 @@
/node-v8.6.0-stripped.tar.gz
/node-v8.7.0-stripped.tar.gz
/node-v8.8.0-stripped.tar.gz
+/node-v8.8.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 967da94..806308b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -22,7 +22,7 @@
%global nodejs_epoch 1
%global nodejs_major 8
%global nodejs_minor 8
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -451,27 +451,30 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Wed Oct 25 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+* Thu Oct 26 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.8.1-1
+- Update to 8.8.1 to fix a regression
+
+* Wed Oct 25 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.8.0-1
- Security update to 8.8.0
-
https://nodejs.org/en/blog/release/v8.8.0/
-* Sun Oct 15 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+* Sun Oct 15 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.7.0-1
- Update to 8.7.0
-
https://nodejs.org/en/blog/release/v8.7.0/
-* Fri Oct 06 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+* Fri Oct 06 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.6.0-2
- Use bcond macro instead of bootstrap conditional
-* Wed Sep 27 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+* Wed Sep 27 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.6.0-1
- Fix nghttp2 version
- Update to 8.6.0
-
https://nodejs.org/en/blog/release/v8.6.0/
-* Wed Sep 20 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+* Wed Sep 20 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.5.0-3
- Build with bootstrap + bundle libuv for modularity
- backport patch for aarch64 debug build
-* Wed Sep 13 2017 Stephen Gallagher
sgallagh@redhat.com - -
+* Wed Sep 13 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.5.0-2
- Disable debug builds on aarch64 due to
https://github.com/nodejs/node/issues/15395
* Tue Sep 12 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.5.0-1
diff --git a/sources b/sources
index 4462747..36cd2ab 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.8.0-stripped.tar.gz) = 8d038ce9d06c1a4602a697a8ff1920e1e209855dbf7cf016d5ddb70cd8f330c7980e47c0c1fa11e7a328da8a9a9d3c6988f46b8ca17984559dd86730fb14fc3d
+SHA512 (node-v8.8.1-stripped.tar.gz) = 2a8a0888401c73dbd30817c21d2709866dde83b85a5af29df4372268bb25f2721bf4ee3a1321f60687e5b2e03d5ce5b9d6d4da4869ae8b1f393e517bd14853af
commit b9b3cbc9326877628511a623beafa696b9a028cf
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Oct 25 16:11:00 2017 +0200
Security update to 8.8.0
diff --git a/.gitignore b/.gitignore
index 098bd75..07be98a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -78,3 +78,4 @@
/node-v8.5.0-stripped.tar.gz
/node-v8.6.0-stripped.tar.gz
/node-v8.7.0-stripped.tar.gz
+/node-v8.8.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index d98511c..967da94 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 7
+%global nodejs_minor 8
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -451,6 +451,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Oct 25 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+- Security update to 8.8.0
+-
https://nodejs.org/en/blog/release/v8.8.0/
+
* Sun Oct 15 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
- Update to 8.7.0
-
https://nodejs.org/en/blog/release/v8.7.0/
diff --git a/sources b/sources
index 21326af..4462747 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.7.0-stripped.tar.gz) = 27409e507b22df1612649974da00fde896b9d4902b0f91a8b019a3fa947305ae7ccf6a39775f531f6c0e3bddd1b2bc680cc925d4d2b40c046c5922246ef56397
+SHA512 (node-v8.8.0-stripped.tar.gz) = 8d038ce9d06c1a4602a697a8ff1920e1e209855dbf7cf016d5ddb70cd8f330c7980e47c0c1fa11e7a328da8a9a9d3c6988f46b8ca17984559dd86730fb14fc3d
commit fba8d96a8fa6a74a348c869d44caababffb5b7d9
Merge: dd07899 73320d1
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Oct 17 15:54:07 2017 -0400
Merge remote-tracking branch 'origin/f26' into epel7
diff --cc nodejs.spec
index f908ed9,755d4f3..668aef3
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -96,10 -104,7 +104,8 @@@ Source7: nodejs_native.att
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
- BuildRequires: python-devel
- BuildRequires: libuv-devel >= 1:1.9.1
- Requires: libuv >= 1:1.9.1
+ BuildRequires: python2-devel
+Requires: http-parser >= 2.7.0
BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
@@@ -233,12 -245,9 +246,11 @@@ The API documentation for the Node.js J
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/icu-small \
+rm -rf deps/http-parser \
+ deps/icu-small \
- deps/uv \
deps/zlib
+
%build
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
commit 1594b532f019542c1b51241114be3de0f6ea58b4
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Sun Oct 15 23:40:32 2017 +0200
Update to 8.7.0
diff --git a/.gitignore b/.gitignore
index 3a9e10f..098bd75 100644
--- a/.gitignore
+++ b/.gitignore
@@ -77,3 +77,4 @@
/node-v8.4.0-stripped.tar.gz
/node-v8.5.0-stripped.tar.gz
/node-v8.6.0-stripped.tar.gz
+/node-v8.7.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 7a51291..d98511c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,18 +21,18 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 6
+%global nodejs_minor 7
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
-%global v8_minor 0
-%global v8_build 287
-%global v8_patch 53
+%global v8_minor 1
+%global v8_build 534
+%global v8_patch 42
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -52,8 +52,8 @@
# libuv - from deps/uv/include/uv-version.h
%global libuv_major 1
-%global libuv_minor 14
-%global libuv_patch 1
+%global libuv_minor 15
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# punycode - from lib/punycode.js
@@ -67,8 +67,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 5
-%global npm_minor 3
-%global npm_patch 0
+%global npm_minor 4
+%global npm_patch 2
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -451,6 +451,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Sun Oct 15 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+- Update to 8.7.0
+-
https://nodejs.org/en/blog/release/v8.7.0/
+
* Fri Oct 06 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
- Use bcond macro instead of bootstrap conditional
diff --git a/sources b/sources
index 7868d60..21326af 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.6.0-stripped.tar.gz) = d8154d917cc339e5bef115e2e1db2a821f6f1782aa686705e61394e342d1aba5a960bf7a66f1950c929dff15fb49c7955fb2ce6ebf8e972eee2a5a004c832224
+SHA512 (node-v8.7.0-stripped.tar.gz) = 27409e507b22df1612649974da00fde896b9d4902b0f91a8b019a3fa947305ae7ccf6a39775f531f6c0e3bddd1b2bc680cc925d4d2b40c046c5922246ef56397
commit 73320d106322ac83a867a79a1446f54c63bdc96a
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Oct 6 23:36:06 2017 +0200
Add missing else
diff --git a/nodejs.spec b/nodejs.spec
index 452e510..755d4f3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -394,6 +394,8 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
#%if ! 0%{?bootstrap}
%if %{with bootstrap}
+#no dtrace
+%else
%dir %{_usr}/lib/dtrace
%{_usr}/lib/dtrace/node.d
%endif
commit 9eb87fbf58a8144df30a3bdf144ce9a5be79bfce
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Oct 6 22:50:11 2017 +0200
Update, use bcond macro
diff --git a/.gitignore b/.gitignore
index acb9286..9105bf5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -71,3 +71,4 @@
/node-v6.11.1-stripped.tar.gz
/node-v6.11.2-stripped.tar.gz
/node-v6.11.3-stripped.tar.gz
+/node-v6.11.4-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 4067296..452e510 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,7 +1,8 @@
%global with_debug 1
# bundle some dependencies missing in Modularity
-%{!?_with_bootstrap: %global bootstrap 1}
+#%{!?_with_bootstrap: %global bootstrap 1}
+%bcond_with bootstrap
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,17 +20,17 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 11
-%global nodejs_patch 3
+%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 107
+%global v8_patch 108
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -48,8 +49,8 @@
# libuv - from deps/uv/include/uv-version.h
%global libuv_major 1
-%global libuv_minor 14
-%global libuv_patch 1
+%global libuv_minor 11
+%global libuv_patch 0
%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
# punycode - from lib/punycode.js
@@ -109,14 +110,16 @@ BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
-%if ! 0%{?bootstrap}
+#%if ! 0%{?bootstrap}
+%if %{with bootstrap}
+Provides: bundled(http-parser) = %{http_parser_version}
+Provides: bundled(libuv) = %{libuv_version}
+%else
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
-%else
-Provides: bundled(http-parser) = %{http_parser_version}
-Provides: bundled(libuv) = %{libuv_version}
+
%endif
%if 0%{?fedora} > 25
@@ -168,15 +171,12 @@ Provides: bundled(c-ares) = %{c_ares_version}
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
Provides: bundled(v8) = %{v8_version}
-%if ! 0%{?bootstrap}
-# Make sure we keep NPM up to date when we update Node.js
%if 0%{?epel}
# EPEL doesn't support Recommends, so make it strict
Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%else
Recommends: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%endif
-%endif
%description
@@ -193,7 +193,10 @@ Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
-%if ! 0%{?bootstrap}
+#%if ! 0%{?bootstrap}
+%if %{with bootstrap}
+#deps are bundled
+%else
Requires: http-parser-devel%{?_isa}
Requires: libuv-devel%{?_isa}
%endif
@@ -264,20 +267,21 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
-%if ! 0%{?bootstrap}
+#%if ! 0%{?bootstrap}
+%if %{with bootstrap}
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
- --shared-libuv \
- --shared-http-parser \
- --with-dtrace \
+ --without-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
%else
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
- --without-dtrace \
+ --shared-libuv \
+ --shared-http-parser \
+ --with-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
%endif
@@ -388,7 +392,8 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
-%if ! 0%{?bootstrap}
+#%if ! 0%{?bootstrap}
+%if %{with bootstrap}
%dir %{_usr}/lib/dtrace
%{_usr}/lib/dtrace/node.d
%endif
@@ -427,6 +432,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Oct 06 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.4-1
+- Update to 6.11.4
+-
https://nodejs.org/en/blog/release/v6.11.3/
+- use bcond macro
+
* Thu Sep 21 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6:11.3-2
- Adjust spec for modularity
diff --git a/sources b/sources
index 4174557..3b66adf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.11.3-stripped.tar.gz) = 7e1e60d42d197c4634dd3d79888ea3cffa580bdbb8db1ec359a5d6277504bc013dd22b3a2c33cf957b4a858a3bcdc4e3752ab42b821e3c504887ade40286655a
+SHA512 (node-v6.11.4-stripped.tar.gz) = 94d4759744dd61288a3c352ca6050954c0716772c19cd281a927a9702f9e41fdbdbcf310183e43c734187192d97817cbb1f1c203f47b400c60550a5da78fead6
commit dd2b0067b83f8b87c804a36ee6c188f7b9a3258a
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Oct 6 09:36:28 2017 +0200
Use bcond
diff --git a/nodejs.spec b/nodejs.spec
index fcd1014..7a51291 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,7 +1,9 @@
%global with_debug 1
# bundle dependencies that are not available as Fedora modules
-%{!?_with_bootstrap: %global bootstrap 1}
+# %%{!?_with_bootstrap: %%global bootstrap 1}
+# use bcond for building modules
+%bcond_with bootstrap
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -23,7 +25,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -113,15 +115,16 @@ BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
BuildRequires: gcc-c++ >= 4.9.4
-%if ! 0%{?bootstrap}
+#%if ! 0%%{?bootstrap}
+%if %{with bootstrap}
+Provides: bundled(http-parser) = %{http_parser_version}
+Provides: bundled(libuv) = %{libuv_version}
+%else
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
Requires: http-parser >= 2.7.0
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
-%else
-Provides: bundled(http-parser) = %{http_parser_version}
-Provides: bundled(libuv) = %{libuv_version}
%endif
BuildRequires: (openssl-devel <= 1:1.1.0 or compat-openssl10-devel)
@@ -197,7 +200,10 @@ Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
-%if ! 0%{?bootstrap}
+#%if ! 0%%{?bootstrap}
+%if %{with bootstrap}
+# deps are bundled
+%else
Requires: http-parser-devel%{?_isa}
Requires: libuv-devel%{?_isa}
%endif
@@ -270,13 +276,12 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
-%if ! 0%{?bootstrap}
+#%if ! 0%%{?bootstrap}
+%if %{with bootstrap}
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
- --shared-libuv \
- --shared-http-parser \
- --with-dtrace \
+ --without-dtrace \
--with-intl=system-icu \
--debug-http2 \
--debug-nghttp2 \
@@ -285,7 +290,9 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
- --without-dtrace \
+ --shared-libuv \
+ --shared-http-parser \
+ --with-dtrace \
--with-intl=system-icu \
--debug-http2 \
--debug-nghttp2 \
@@ -398,7 +405,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
-%if ! 0%{?bootstrap}
+#%if ! 0%%{?bootstrap}
+%if %{with bootstrap}
+# no dtrace
+%else
%dir %{_usr}/lib/dtrace
%{_usr}/lib/dtrace/node.d
%endif
@@ -441,6 +451,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Oct 06 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+- Use bcond macro instead of bootstrap conditional
+
* Wed Sep 27 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
- Fix nghttp2 version
- Update to 8.6.0
commit 219617d9711f878e5bb5cbc74edc24f81c504773
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Sep 27 15:13:49 2017 +0200
Fix nghttp2 version
diff --git a/nodejs.spec b/nodejs.spec
index 607c86a..fcd1014 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -171,7 +171,7 @@ Provides: bundled(v8) = %{v8_version}
# As of v8.4.0, Node.js has http/2 support. They however don't provide --shared-<lib>
# option yet.
-Provides: bundled(nghttp2) = 1.22.0
+Provides: bundled(nghttp2) = 1.25.0
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?epel}
@@ -441,6 +441,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Sep 27 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+- Fix nghttp2 version
+- Update to 8.6.0
+-
https://nodejs.org/en/blog/release/v8.6.0/
+
* Wed Sep 20 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
- Build with bootstrap + bundle libuv for modularity
- backport patch for aarch64 debug build
commit 970976bb52000d0d1e422a66eb77fa07873854cc
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Sep 27 08:59:50 2017 -0400
Build with bootstrap + bundle libuv for modularity
backport patch for aarch64 debug build
diff --git a/.gitignore b/.gitignore
index 3dea7b0..3a9e10f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -76,3 +76,4 @@
/node-v8.3.0-stripped.tar.gz
/node-v8.4.0-stripped.tar.gz
/node-v8.5.0-stripped.tar.gz
+/node-v8.6.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 2bfdd57..607c86a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,11 +19,11 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 5
+%global nodejs_minor 6
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
diff --git a/sources b/sources
index 7590449..7868d60 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.5.0-stripped.tar.gz) = 3ea2f3d5d407c3d754776543eefc2f0da14d98df3e24718764c1bcfa3ef6c34e1d2a6417455e108e22b0a9abf57d28f4d794f8c455127e2400bbb1deb6138cdc
+SHA512 (node-v8.6.0-stripped.tar.gz) = d8154d917cc339e5bef115e2e1db2a821f6f1782aa686705e61394e342d1aba5a960bf7a66f1950c929dff15fb49c7955fb2ce6ebf8e972eee2a5a004c832224
commit 46c283bc0f9827c795b971ff23529cb31512c261
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Mon Sep 25 14:11:27 2017 +0200
Fix dependencies in bootstrap
diff --git a/nodejs.spec b/nodejs.spec
index 5000159..4067296 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -22,7 +22,7 @@
%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -103,25 +103,26 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
+BuildRequires: python2-devel
+BuildRequires: libicu-devel
+BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
%if ! 0%{?bootstrap}
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
-BuildRequires: libicu-devel
-BuildRequires: zlib-devel
-BuildRequires: python2-devel
-BuildRequires: compat-openssl10-devel >= 1:1.0.2
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
%else
Provides: bundled(http-parser) = %{http_parser_version}
Provides: bundled(libuv) = %{libuv_version}
-BuildRequires: python2
-BuildRequires: libicu
-BuildRequires: zlib
-BuildRequires: compat-openssl10
+%endif
+
+%if 0%{?fedora} > 25
+BuildRequires: compat-openssl10-devel >= 1:1.0.2
+%else
+BuildRequires: openssl-devel >= 1:1.0.2
%endif
# we need the system certificate store when Patch2 is applied
@@ -242,7 +243,6 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
rm -rf deps/icu-small \
- deps/uv \
deps/zlib
%build
commit d9fbecd59ec0c0237a9a0ceb9c61e2392b92c9ba
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Sep 21 10:57:40 2017 +0200
Adjust spec for MBS
diff --git a/nodejs.spec b/nodejs.spec
index 3d96d75..5000159 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,7 @@
%global with_debug 1
-%{!?_with_bootstrap: %global bootstrap 0}
+# bundle some dependencies missing in Modularity
+%{!?_with_bootstrap: %global bootstrap 1}
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -45,6 +46,12 @@
%global http_parser_patch 0
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
+# libuv - from deps/uv/include/uv-version.h
+%global libuv_major 1
+%global libuv_minor 14
+%global libuv_patch 1
+%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
+
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
# Note: this will be unmerged in v7 or v8
@@ -96,25 +103,25 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
-BuildRequires: python-devel
-BuildRequires: libuv-devel >= 1:1.9.1
-Requires: libuv >= 1:1.9.1
-BuildRequires: libicu-devel
-BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
%if ! 0%{?bootstrap}
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
-%else
-Provides: bundled(http-parser) = %{http_parser_version}
-%endif
-
-%if 0%{?fedora} > 25
+BuildRequires: libicu-devel
+BuildRequires: zlib-devel
+BuildRequires: python2-devel
BuildRequires: compat-openssl10-devel >= 1:1.0.2
+BuildRequires: libuv-devel >= 1:1.9.1
+Requires: libuv >= 1:1.9.1
%else
-BuildRequires: openssl-devel >= 1:1.0.2
+Provides: bundled(http-parser) = %{http_parser_version}
+Provides: bundled(libuv) = %{libuv_version}
+BuildRequires: python2
+BuildRequires: libicu
+BuildRequires: zlib
+BuildRequires: compat-openssl10
%endif
# we need the system certificate store when Patch2 is applied
@@ -160,6 +167,7 @@ Provides: bundled(c-ares) = %{c_ares_version}
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
Provides: bundled(v8) = %{v8_version}
+%if ! 0%{?bootstrap}
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?epel}
# EPEL doesn't support Recommends, so make it strict
@@ -167,6 +175,7 @@ Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%else
Recommends: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%endif
+%endif
%description
@@ -180,12 +189,12 @@ real-time applications that run across distributed devices.
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Requires: libuv-devel%{?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
%if ! 0%{?bootstrap}
Requires: http-parser-devel%{?_isa}
+Requires: libuv-devel%{?_isa}
%endif
%description devel
@@ -268,7 +277,6 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
- --shared-libuv \
--without-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
@@ -419,6 +427,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Sep 21 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6:11.3-2
+- Adjust spec for modularity
+
* Thu Sep 07 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.3-1
- Update to 6.11.3
-
https://nodejs.org/en/blog/release/v6.11.3/
commit d54471f55e45e94a25efd345ce15e6ef40a789b5
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Sep 20 13:11:54 2017 +0200
Fix typo
diff --git a/nodejs.spec b/nodejs.spec
index 1726421..2bfdd57 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -121,7 +121,7 @@ BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
%else
Provides: bundled(http-parser) = %{http_parser_version}
-Provides" bundled(libuv) = %{libuv_version}
+Provides: bundled(libuv) = %{libuv_version}
%endif
BuildRequires: (openssl-devel <= 1:1.1.0 or compat-openssl10-devel)
commit 6796d7797baa6512715b8882b3047e7b99093462
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Sep 20 13:10:05 2017 +0200
Bundle libuv, fix aarch64 debug build
diff --git a/0001-Fix-aarch64-debug.patch b/0001-Fix-aarch64-debug.patch
new file mode 100644
index 0000000..00bae49
--- /dev/null
+++ b/0001-Fix-aarch64-debug.patch
@@ -0,0 +1,34 @@
+From 058e4efd61c7c9ab4efd55bd9aa37e2184654050 Mon Sep 17 00:00:00 2001
+From: Zuzana Svetlikova
zsvetlik@redhat.com
+Date: Wed, 20 Sep 2017 13:05:01 +0200
+Subject: [PATCH] Fix aarch64 debug
+
+---
+ deps/v8/src/v8.gyp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/deps/v8/src/v8.gyp b/deps/v8/src/v8.gyp
+index c269f245aa..2ebbd393a9 100644
+--- a/deps/v8/src/v8.gyp
++++ b/deps/v8/src/v8.gyp
+@@ -348,7 +348,7 @@
+ '<(INTERMEDIATE_DIR)/snapshot.cc',
+ ],
+ 'variables': {
+- 'mksnapshot_flags': [],
++ 'mksnapshot_flags': ['--nodebug_code'],
+ 'conditions': [
+ ['v8_random_seed!=0', {
+ 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
+@@ -449,7 +449,7 @@
+ '<(mksnapshot_exec)',
+ ],
+ 'variables': {
+- 'mksnapshot_flags': [],
++ 'mksnapshot_flags': ['--nodebug_code'],
+ 'conditions': [
+ ['v8_random_seed!=0', {
+ 'mksnapshot_flags': ['--random-seed', '<(v8_random_seed)'],
+--
+2.14.1
+
diff --git a/nodejs.spec b/nodejs.spec
index f849b29..1726421 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,7 @@
%global with_debug 1
-%{!?_with_bootstrap: %global bootstrap 0}
+# bundle dependencies that are not available as Fedora modules
+%{!?_with_bootstrap: %global bootstrap 1}
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -8,7 +9,7 @@
# build the standard runtime until that gets sorted out.
#
https://github.com/nodejs/node/issues/15395
%ifarch aarch64
-%global with_debug 0
+%global with_debug 1
%endif
# == Node.js Version ==
@@ -22,7 +23,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -47,6 +48,12 @@
%global http_parser_patch 0
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
+# libuv - from deps/uv/include/uv-version.h
+%global libuv_major 1
+%global libuv_minor 14
+%global libuv_patch 1
+%global libuv_version %{libuv_major}.%{libuv_minor}.%{libuv_patch}
+
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
# Note: this will be unmerged in v7 or v8
@@ -98,9 +105,9 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
+Patch2: 0001-Fix-aarch64-debug.patch
+
BuildRequires: python2-devel
-BuildRequires: libuv-devel >= 1:1.9.1
-Requires: libuv >= 1:1.9.1
BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.9.4
@@ -110,8 +117,11 @@ BuildRequires: gcc-c++ >= 4.9.4
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
Requires: http-parser >= 2.7.0
+BuildRequires: libuv-devel >= 1:1.9.1
+Requires: libuv >= 1:1.9.1
%else
Provides: bundled(http-parser) = %{http_parser_version}
+Provides" bundled(libuv) = %{libuv_version}
%endif
BuildRequires: (openssl-devel <= 1:1.1.0 or compat-openssl10-devel)
@@ -183,13 +193,13 @@ real-time applications that run across distributed devices.
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
-Requires: libuv-devel%{?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
%if ! 0%{?bootstrap}
Requires: http-parser-devel%{?_isa}
+Requires: libuv-devel%{?_isa}
%endif
%description devel
@@ -237,9 +247,10 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
rm -rf deps/icu-small \
- deps/uv \
deps/zlib
+%patch2 -p1
+
%build
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
@@ -274,7 +285,6 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
- --shared-libuv \
--without-dtrace \
--with-intl=system-icu \
--debug-http2 \
@@ -431,6 +441,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Sep 20 2017 Zuzana Svetlikova
zsvetlik@redhat.com - -
+- Build with bootstrap + bundle libuv for modularity
+- backport patch for aarch64 debug build
+
* Wed Sep 13 2017 Stephen Gallagher
sgallagh@redhat.com - -
- Disable debug builds on aarch64 due to
https://github.com/nodejs/node/issues/15395
commit 6b6a25e47e02efc55c1da4ee09bdfc657af1d5b1
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Sep 13 13:11:48 2017 -0400
Disable debug builds on aarch64 due to
https://github.com/nodejs/node/issues/15395
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 57dd4ee..f849b29 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -4,10 +4,11 @@
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
-# ARM builds currently break on the Debug builds, so we'll just
+# ARM64 builds of 8.5.0 break on the Debug builds, so we'll just
# build the standard runtime until that gets sorted out.
-%ifarch %{arm} aarch64 %{power64}
-%global with_debug 1
+#
https://github.com/nodejs/node/issues/15395
+%ifarch aarch64
+%global with_debug 0
%endif
# == Node.js Version ==
@@ -21,7 +22,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -430,6 +431,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Sep 13 2017 Stephen Gallagher
sgallagh@redhat.com - -
+- Disable debug builds on aarch64 due to
https://github.com/nodejs/node/issues/15395
+
* Tue Sep 12 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.5.0-1
- Update to v8.5.0
-
https://nodejs.org/en/blog/release/v8.5.0/
commit 94903a9c6124566ac6a3f320906094658b9e9e17
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Sep 12 21:03:19 2017 -0400
Update bundled v8 version
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index e603754..57dd4ee 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -27,8 +27,8 @@
# v8 - from deps/v8/include/v8-version.h
%global v8_major 6
%global v8_minor 0
-%global v8_build 286
-%global v8_patch 52
+%global v8_build 287
+%global v8_patch 53
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
commit 45411df80a4395e46912894546f3f255c74994f0
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Sep 12 20:49:13 2017 -0400
Update to v8.5.0
https://nodejs.org/en/blog/release/v8.5.0/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 3b9d78e..3dea7b0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -75,3 +75,4 @@
/node-v8.2.1-stripped.tar.gz
/node-v8.3.0-stripped.tar.gz
/node-v8.4.0-stripped.tar.gz
+/node-v8.5.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 1f8f34b..e603754 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -17,11 +17,11 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 4
+%global nodejs_minor 5
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -430,6 +430,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Sep 12 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.5.0-1
+- Update to v8.5.0
+-
https://nodejs.org/en/blog/release/v8.5.0/
+
* Thu Sep 07 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.4.0-2
- Refactor openssl BR
diff --git a/sources b/sources
index 190d49b..7590449 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.4.0-stripped.tar.gz) = fb49b47427bb25e235c0a179f2d2b8060920eb2ea482ecf361f51b15f3b1e84e6f65b691abcc1e0ec79b99a0fed249e6cf7300ba2096fb526d47912e15a3552c
+SHA512 (node-v8.5.0-stripped.tar.gz) = 3ea2f3d5d407c3d754776543eefc2f0da14d98df3e24718764c1bcfa3ef6c34e1d2a6417455e108e22b0a9abf57d28f4d794f8c455127e2400bbb1deb6138cdc
commit dd07899571af92a59a9e83d317c80ab1ed67e02c
Merge: 001b20d 82f6204
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Sep 8 09:55:19 2017 -0400
Merge remote-tracking branch 'origin/f26' into epel7
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --cc nodejs.spec
index fae4b1c,3d96d75..f908ed9
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -247,9 -261,18 +264,18 @@@ export CXXFLAGS="$(echo ${CXXFLAGS} | t
--shared-zlib \
--shared-libuv \
--shared-http-parser \
- --with-dtrace \
+ --without-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
+ %else
+ ./configure --prefix=%{_prefix} \
+ --shared-openssl \
+ --shared-zlib \
+ --shared-libuv \
+ --without-dtrace \
+ --with-intl=system-icu \
+ --openssl-use-def-ca-store
+ %endif
%if %{?with_debug} == 1
# Setting BUILDTYPE=Debug builds both release and debug binaries
@@@ -390,35 -419,29 +416,40 @@@ NODE_PATH=%{buildroot}%{_prefix}/lib/no
%{_pkgdocdir}/npm/doc
%changelog
+ * Thu Sep 07 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.3-1
+ - Update to 6.11.3
+ -
https://nodejs.org/en/blog/release/v6.11.3/
+ - remove openssl 1.0.1 patches
+
-* Tue Aug 01 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1
+* Wed Aug 23 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.2-2
+- Move to requiring OpenSSL 1.0.2
+- Unbundle http-parser again
+
+* Tue Aug 22 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1.3
+- Run gyp on http-parser
+
+* Tue Aug 15 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.2-1.2
+- Add bundled Provides for http-parser
+
+* Tue Aug 15 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.2-1.1
+- Temporarily bundle http-parser
+- Resolves: RHBZ#1481470
+
+* Wed Aug 02 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1
- Update to 6.11.2
-
https://nodejs.org/en/blog/release/v6.11.2/
-- gcc 7 patch was backported in upstream
+- remove GCC 7 patch merged upstream
-* Fri Jul 14 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.1-1
+* Thu Jul 13 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.1-1
- Security update (
https://nodejs.org/en/blog/vulnerability/july-2017-security-releases/)
-* Fri Jun 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
-- Update to 6.11.0
-- remove system CA patch since it was merged upstream
--
https://github.com/nodejs/node/pull/8334
+* Thu Jun 29 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-2
+- Fix typo
-* Fri May 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-3
-- Require http-parser-devel when using system http-parser
-
-* Thu May 11 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-2
-- Provide bundled http-parser in case of boostraping
+* Thu Jun 29 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
+- Update to 6.11.0
+-
https://nodejs.org/en/blog/release/v6.10.3/
+- explicitly depend on http-parser (RHBZ#1457763)
* Wed May 10 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.3-1
- Update to 6.10.3 (LTS)
commit 673f149abf0ce6b400f9010a2866fa3155d042d0
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Sep 8 14:40:09 2017 +0200
Fix openssl version
diff --git a/nodejs.spec b/nodejs.spec
index e2cb40f..1f8f34b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -113,7 +113,7 @@ Requires: http-parser >= 2.7.0
Provides: bundled(http-parser) = %{http_parser_version}
%endif
-BuildRequires: (openssl-devel >= 1:1.0.2 or compat-openssl10-devel)
+BuildRequires: (openssl-devel <= 1:1.1.0 or compat-openssl10-devel)
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
commit 5afa09cef4db264217a3f9246e7446b3baa5eee2
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Sep 7 18:06:26 2017 +0200
Refactor openssl BR
diff --git a/nodejs.spec b/nodejs.spec
index c3a7869..e2cb40f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -113,15 +113,7 @@ Requires: http-parser >= 2.7.0
Provides: bundled(http-parser) = %{http_parser_version}
%endif
-%if 0%{?epel}
-BuildRequires: openssl-devel >= 1:1.0.1
-%else
-%if 0%{?fedora} > 25
-BuildRequires: compat-openssl10-devel >= 1:1.0.2
-%else
-BuildRequires: openssl-devel >= 1:1.0.2
-%endif
-%endif
+BuildRequires: (openssl-devel >= 1:1.0.2 or compat-openssl10-devel)
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -247,12 +239,6 @@ rm -rf deps/icu-small \
deps/uv \
deps/zlib
-%if 0%{?epel}
-%patch2 -p1
-%patch5 -p1
-%endif
-
-
%build
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
@@ -444,6 +430,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Sep 07 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.4.0-2
+- Refactor openssl BR
+
* Wed Aug 16 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.4.0-1
- Update to v8.4.0
-
https://nodejs.org/en/blog/release/v8.4.0/
commit 82f6204ba26debbed775b17f61696acaf0eb90b8
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Sep 7 16:13:03 2017 +0200
Update to v6.11.3, remove openssl 1.0.1 patches
diff --git a/.gitignore b/.gitignore
index a10250b..acb9286 100644
--- a/.gitignore
+++ b/.gitignore
@@ -70,3 +70,4 @@
/node-v6.11.0-stripped.tar.gz
/node-v6.11.1-stripped.tar.gz
/node-v6.11.2-stripped.tar.gz
+/node-v6.11.3-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-files-for-bundled-deps.patch
index fe9f854..a97a09a 100644
--- a/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -1,14 +1,14 @@
-From 54cb96f338bd162dcf1301b7d7a46eea2a56befb Mon Sep 17 00:00:00 2001
+From 8946146b37e4170c406fbdd7c60f1bbb79a9311a Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
-Date: Wed, 22 Mar 2017 19:13:10 +0100
-Subject: [PATCH] Disable running gyp files for bundled deps
+Date: Wed, 6 Sep 2017 14:17:21 +0200
+Subject: [PATCH] dont run gyp on shared deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index a2b64e63b4..7b0847d1d5 100644
+index 577d0e232a..bb47a1b95e 100644
--- a/Makefile
+++ b/Makefile
@@ -77,7 +77,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
@@ -21,5 +21,5 @@ index a2b64e63b4..7b0847d1d5 100644
config.gypi: configure
--
-2.12.0
+2.14.1
diff --git a/0002-Use-openssl-1.0.1.patch b/0002-Use-openssl-1.0.1.patch
deleted file mode 100644
index 4b90ade..0000000
--- a/0002-Use-openssl-1.0.1.patch
+++ /dev/null
@@ -1,648 +0,0 @@
-From 91d1a67b8cc249af59929cd1a76629a2614860bd Mon Sep 17 00:00:00 2001
-From: Haikel Guemar
hguemar@fedoraproject.org
-Date: Tue, 26 Jul 2016 22:50:22 +0200
-Subject: [PATCH 2/4] Use openssl 1.0.1
-
-Based on Solaris patches from upstream #2783
-
https://github.com/nodejs/node/issues/2783
----
- doc/api/tls.md | 6 ++
- src/node_constants.cc | 5 ++
- src/node_crypto.cc | 201 ++++++++++++++++++++++++++++++++++++++++++++++----
- src/node_crypto.h | 16 ++++
- src/tls_wrap.cc | 8 ++
- 5 files changed, 223 insertions(+), 13 deletions(-)
-
-diff --git a/doc/api/tls.md b/doc/api/tls.md
-index 3784210ba7b6c046b39d74b45e44538041d35ae2..3c9d72b8d5ef81d15773aed077bd00d2041c9e93 100644
---- a/doc/api/tls.md
-+++ b/doc/api/tls.md
-@@ -113,10 +113,16 @@ handshake extensions:
- * ALPN/NPN - Allows the use of one TLS server for multiple protocols (HTTP,
- SPDY, HTTP/2)
- * SNI - Allows the use of one TLS server for multiple hostnames with different
- SSL certificates.
-
-+ **NOTE**: dueto a design flaw in node **SNI cannot be
-+ used on the server side**, even so all parameters in related functions are
-+ accepted for compatibility reasons. And thus the related events will not
-+ fire unless one aranges this explicitly. This may change, when the OS
-+ provides OpenSSL v1.0.2 or better and node gets linked to this version.
-+
- *Note*: Use of ALPN is recommended over NPN. The NPN extension has never been
- formally defined or documented and generally not recommended for use.
-
- ### Client-initiated renegotiation attack mitigation
-
-diff --git a/src/node_constants.cc b/src/node_constants.cc
-index 2e6be8df37c345a383d8a78898daf2a147d90630..239eadbac8ea8e601745a63347a8bb301c22d1b1 100644
---- a/src/node_constants.cc
-+++ b/src/node_constants.cc
-@@ -12,11 +12,14 @@
- #include <signal.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-
- #if HAVE_OPENSSL
-+# include <openssl/opensslconf.h>
-+# ifndef OPENSSL_NO_EC
- # include <openssl/ec.h>
-+# endif
- # include <openssl/ssl.h>
- # ifndef OPENSSL_NO_ENGINE
- # include <openssl/engine.h>
- # endif // !OPENSSL_NO_ENGINE
- #endif
-@@ -974,16 +977,18 @@ void DefineOpenSSLConstants(Local<Object> target) {
- NODE_DEFINE_CONSTANT(target, RSA_PKCS1_PSS_PADDING);
- #endif
-
- #if HAVE_OPENSSL
- // NOTE: These are not defines
-+# ifndef OPENSSL_NO_EC
- NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_COMPRESSED);
-
- NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_UNCOMPRESSED);
-
- NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_HYBRID);
- #endif
-+#endif
- }
-
- void DefineSystemConstants(Local<Object> target) {
- // file access modes
- NODE_DEFINE_CONSTANT(target, O_RDONLY);
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f0324dbdb9d 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -22,10 +22,86 @@
- #include <limits.h> // INT_MAX
- #include <math.h>
- #include <stdlib.h>
- #include <string.h>
-
-+#ifndef SSL_get_server_tmp_key
-+/*
-+ 1.0.2 SSL_get_server_tmp_key(s, pk) "backport". BAD HACK!!!
-+ NOTE: This imports "foreign" knowledge and thus will break, when SESS_CERT
-+ or CERT_PKEY change, which is definitely the case for the later for
-+ all OpenSSL lib vers != 1.0.1. So don't try to bind to something else!
-+ */
-+# define SSL_PKEY_NUM 8
-+typedef struct cert_pkey_st {
-+ X509 *x509;
-+ EVP_PKEY *privatekey;
-+ /* Digest to use when signing */
-+ const EVP_MD *digest;
-+} CERT_PKEY;
-+
-+typedef struct sess_cert_st {
-+ STACK_OF(X509) *cert_chain; /* as received from peer (not for SSL2) */
-+ /* The 'peer_...' members are used only by clients. */
-+ int peer_cert_type;
-+ CERT_PKEY *peer_key; /* points to an element of peer_pkeys (never
-+ * NULL!) */
-+ CERT_PKEY peer_pkeys[SSL_PKEY_NUM];
-+ /*
-+ * Obviously we don't have the private keys of these, so maybe we
-+ * shouldn't even use the CERT_PKEY type here.
-+ */
-+# ifndef OPENSSL_NO_RSA
-+ RSA *peer_rsa_tmp; /* not used for SSL 2 */
-+# endif
-+# ifndef OPENSSL_NO_DH
-+ DH *peer_dh_tmp; /* not used for SSL 2 */
-+# endif
-+# ifndef OPENSSL_NO_ECDH
-+ EC_KEY *peer_ecdh_tmp;
-+# endif
-+ int references; /* actually always 1 at the moment */
-+} SESS_CERT;
-+
-+static long SSL_get_server_tmp_key(SSL *s, void *parg) {
-+ if (s->server || !s->session || !s->session->sess_cert)
-+ return 0;
-+ else {
-+ SESS_CERT *sc;
-+ EVP_PKEY *ptmp;
-+ int rv = 0;
-+ sc = s->session->sess_cert;
-+#if !defined(OPENSSL_NO_RSA) && !defined(OPENSSL_NO_DH) && !defined(OPENSSL_NO_EC) && !defined(OPENSSL_NO_ECDH)
-+ if (!sc->peer_rsa_tmp && !sc->peer_dh_tmp && !sc->peer_ecdh_tmp)
-+ return 0;
-+#endif
-+ ptmp = EVP_PKEY_new();
-+ if (!ptmp)
-+ return 0;
-+ if (0) ;
-+#ifndef OPENSSL_NO_RSA
-+ else if (sc->peer_rsa_tmp)
-+ rv = EVP_PKEY_set1_RSA(ptmp, sc->peer_rsa_tmp);
-+#endif
-+#ifndef OPENSSL_NO_DH
-+ else if (sc->peer_dh_tmp)
-+ rv = EVP_PKEY_set1_DH(ptmp, sc->peer_dh_tmp);
-+#endif
-+#ifndef OPENSSL_NO_ECDH
-+ else if (sc->peer_ecdh_tmp)
-+ rv = EVP_PKEY_set1_EC_KEY(ptmp, sc->peer_ecdh_tmp);
-+#endif
-+ if (rv) {
-+ *(EVP_PKEY **)parg = ptmp;
-+ return 1;
-+ }
-+ EVP_PKEY_free(ptmp);
-+ return 0;
-+ }
-+}
-+#endif /* SSL_get_server_tmp_key */
-+
- #define THROW_AND_RETURN_IF_NOT_STRING_OR_BUFFER(val, prefix) \
- do { \
- if (!Buffer::HasInstance(val) && !val->IsString()) { \
- return env->ThrowTypeError(prefix " must be a string or a buffer"); \
- } \
-@@ -161,11 +237,15 @@ template int SSLWrap<TLSWrap>::SelectNextProtoCallback(
- #ifdef NODE__HAVE_TLSEXT_STATUS_CB
- template int SSLWrap<TLSWrap>::TLSExtStatusCallback(SSL* s, void* arg);
- #endif
-
- template void SSLWrap<TLSWrap>::DestroySSL();
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- template int SSLWrap<TLSWrap>::SSLCertCallback(SSL* s, void* arg);
-+#else
-+template int SSLWrap<TLSWrap>::SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey);
-+#endif
- template void SSLWrap<TLSWrap>::WaitForCertCb(CertCb cb, void* arg);
-
- #ifdef TLSEXT_TYPE_application_layer_protocol_negotiation
- template int SSLWrap<TLSWrap>::SelectALPNCallback(
- SSL* s,
-@@ -281,12 +361,16 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
- env->SetProtoMethod(t, "setCert", SecureContext::SetCert);
- env->SetProtoMethod(t, "addCACert", SecureContext::AddCACert);
- env->SetProtoMethod(t, "addCRL", SecureContext::AddCRL);
- env->SetProtoMethod(t, "addRootCerts", SecureContext::AddRootCerts);
- env->SetProtoMethod(t, "setCiphers", SecureContext::SetCiphers);
-+#ifndef OPENSSL_NO_ECDH
- env->SetProtoMethod(t, "setECDHCurve", SecureContext::SetECDHCurve);
-+#endif
-+#ifndef OPENSSL_NO_DH
- env->SetProtoMethod(t, "setDHParam", SecureContext::SetDHParam);
-+#endif
- env->SetProtoMethod(t, "setOptions", SecureContext::SetOptions);
- env->SetProtoMethod(t, "setSessionIdContext",
- SecureContext::SetSessionIdContext);
- env->SetProtoMethod(t, "setSessionTimeout",
- SecureContext::SetSessionTimeout);
-@@ -514,12 +598,24 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
- SSL_CTX_clear_extra_chain_certs(ctx);
-
- for (int i = 0; i < sk_X509_num(extra_certs); i++) {
- X509* ca = sk_X509_value(extra_certs, i);
-
-- // NOTE: Increments reference count on `ca`
-- r = SSL_CTX_add1_chain_cert(ctx, ca);
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+ // If ctx->cert->key != NULL create ctx->cert->key->chain if not
-+ // already there, push 'ca' to this chain and finally increment the ca
-+ // reference count by 1 (this is the diff between *_add1_* and *_add0_*
-+ // - the later increments by 0 ;-)) and return 1. Otherwise or if
-+ // something fails in between, return 0.
-+ r = SSL_CTX_add1_chain_cert(ctx, ca);
-+#else
-+ // Create ctx->extra_certs if not already there, just push 'ca' to this
-+ // chain and return 1. If something fails, return 0.
-+ // NOTE: 1.0.1- does not support multiple certs having its own chain in
-+ // a single context. There is just one: extra_chain!
-+ r = SSL_CTX_add_extra_chain_cert(ctx, ca);
-+#endif
-
- if (!r) {
- ret = 0;
- *issuer = nullptr;
- goto end;
-@@ -868,10 +964,11 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
- const node::Utf8Value ciphers(args.GetIsolate(), args[0]);
- SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
- }
-
-
-+#ifndef OPENSSL_NO_ECDH
- void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
- ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
- Environment* env = sc->env();
-
-@@ -895,12 +992,14 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
- SSL_CTX_set_options(sc->ctx_, SSL_OP_SINGLE_ECDH_USE);
- SSL_CTX_set_tmp_ecdh(sc->ctx_, ecdh);
-
- EC_KEY_free(ecdh);
- }
-+#endif
-
-
-+#ifndef OPENSSL_NO_DH
- void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
- ASSIGN_OR_RETURN_UNWRAP(&sc, args.This());
- Environment* env = sc->env();
- ClearErrorOnReturn clear_error_on_return;
-@@ -935,10 +1034,11 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
- DH_free(dh);
-
- if (!r)
- return env->ThrowTypeError("Error setting temp DH parameter");
- }
-+#endif
-
-
- void SecureContext::SetOptions(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
- ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
-@@ -1952,10 +2052,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
- info->Set(env->type_string(),
- FIXED_ONE_BYTE_STRING(env->isolate(), "DH"));
- info->Set(env->size_string(),
- Integer::New(env->isolate(), EVP_PKEY_bits(key)));
- break;
-+#ifndef OPENSSL_NO_ECDH
- case EVP_PKEY_EC:
- {
- EC_KEY* ec = EVP_PKEY_get1_EC_KEY(key);
- int nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec));
- EC_KEY_free(ec);
-@@ -1964,10 +2065,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
- info->Set(env->name_string(),
- OneByteString(args.GetIsolate(), OBJ_nid2sn(nid)));
- info->Set(env->size_string(),
- Integer::New(env->isolate(), EVP_PKEY_bits(key)));
- }
-+#endif
- }
- EVP_PKEY_free(key);
- }
-
- return args.GetReturnValue().Set(info);
-@@ -2382,11 +2484,16 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
- cert_cb_arg_ = arg;
- }
-
-
- template <class Base>
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- int SSLWrap<Base>::SSLCertCallback(SSL* s, void* arg) {
-+#else
-+/* NOTE: For now this callback gets usually never called dueto design flaws */
-+int SSLWrap<Base>::SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey) {
-+#endif
- Base* w = static_cast<Base*>(SSL_get_app_data(s));
-
- if (!w->is_server())
- return 1;
-
-@@ -2451,23 +2558,57 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
- ASSIGN_OR_RETURN_UNWRAP(&sc, ctx.As<Object>());
- w->sni_context_.Reset();
- w->sni_context_.Reset(env->isolate(), ctx);
-
- int rv;
-+ X509* x509;
-+ EVP_PKEY* pkey;
-+ STACK_OF(X509)* chain;
-
- // NOTE: reference count is not increased by this API methods
-- X509* x509 = SSL_CTX_get0_certificate(sc->ctx_);
-- EVP_PKEY* pkey = SSL_CTX_get0_privatekey(sc->ctx_);
-- STACK_OF(X509)* chain;
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+ x509 = SSL_CTX_get0_certificate(sc->ctx_);
-+ pkey = SSL_CTX_get0_privatekey(sc->ctx_);
-+ rv = SSL_CTX_get0_chain_certs(sc->ctx_, &chain);
-+#else
-+ SSL *ssl = SSL_new(sc->ctx_);
-+ rv = SSL_CTX_get_extra_chain_certs(sc->ctx_, &chain);
-+ if (ssl) {
-+ SSL_set_connect_state(ssl); /* just cleanup/reset state - cheap */
-+ x509 = SSL_get_certificate(ssl);
-+ SSL_free(ssl);
-+ } else {
-+ x509 = NULL;
-+ pkey = NULL;
-+ }
-+#endif
-
-- rv = SSL_CTX_get0_chain_certs(sc->ctx_, &chain);
-- if (rv)
-- rv = SSL_use_certificate(w->ssl_, x509);
-- if (rv)
-- rv = SSL_use_PrivateKey(w->ssl_, pkey);
-- if (rv && chain != nullptr)
-- rv = SSL_set1_chain(w->ssl_, chain);
-+ if (rv)
-+ rv = SSL_use_certificate(w->ssl_, x509);
-+ if (rv)
-+ rv = SSL_use_PrivateKey(w->ssl_, pkey);
-+ if (rv && chain != nullptr) {
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+ // replaces w->ssl_->cert->key->chain with a copy of the given chain,
-+ // which is allowed to be NULL
-+ rv = SSL_set1_chain(w->ssl_, chain);
-+#else
-+ // just replace the extra chain with the given chain - 1.0.1- does not
-+ // support chain per cert
-+ SSL_CTX_clear_extra_chain_certs(w->ssl_->ctx);
-+ if (chain != NULL) {
-+ int i;
-+ SSL_CTX* ctx = w->ssl_->ctx;
-+ for (i = 0; i < sk_X509_num(chain); i++) {
-+ // can't do anything: however others might be ok and still
-+ // satisfy requirements
-+ SSL_CTX_add_extra_chain_cert(ctx, sk_X509_value(chain,i));
-+ }
-+ }
-+ rv = 1;
-+#endif
-+ }
- if (rv)
- rv = w->SetCACerts(sc);
- if (!rv) {
- unsigned long err = ERR_get_error(); // NOLINT(runtime/int)
- if (!err)
-@@ -2527,14 +2668,18 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
- }
-
-
- template <class Base>
- int SSLWrap<Base>::SetCACerts(SecureContext* sc) {
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- int err = SSL_set1_verify_cert_store(ssl_, SSL_CTX_get_cert_store(sc->ctx_));
- if (err != 1)
- return err;
--
-+#else
-+ // there is no ssl_->cert->verify_store in <= 1.0.1. So no need to: free the
-+ // old store, set the new one to it and increment its ref count.
-+#endif
- STACK_OF(X509_NAME)* list = SSL_dup_CA_list(
- SSL_CTX_get_client_CA_list(sc->ctx_));
-
- // NOTE: `SSL_set_client_CA_list` takes the ownership of `list`
- SSL_set_client_CA_list(ssl_, list);
-@@ -2808,11 +2953,15 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
-
- // Server does not need to check the whitelist.
- SSL* ssl = static_cast<SSL*>(
- X509_STORE_CTX_get_ex_data(ctx, SSL_get_ex_data_X509_STORE_CTX_idx()));
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- if (SSL_is_server(ssl))
-+#else
-+ if (ssl->server)
-+#endif
- return 1;
-
- // Client needs to check if the server cert is listed in the
- // whitelist when it is issued by the specific rootCAs.
- CheckResult ret = CheckWhitelistedServerCert(ctx);
-@@ -2891,11 +3040,25 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
- if (is_server)
- SSL_set_info_callback(conn->ssl_, SSLInfoCallback);
-
- InitNPN(sc);
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- SSL_set_cert_cb(conn->ssl_, SSLWrap<Connection>::SSLCertCallback, conn);
-+#else
-+ /* 1.0.1 and less have no general cert callback. The closest for a client is
-+ SSL_CTX_set_client_cert_cb(conn->ssl_->ctx, SSLWrap<Connection>::SSLCertCallback);
-+ but on the client it is not needed/used by this implementation. Since this
-+ the SSLCertCallback actually calls lib/_tls_wrap.js:oncertcb(), which in
-+ turn loadSNI() and this the actual SNICallback of the JSON object, sets
-+ the context and finally requestOCSP() and certCbDone(). Not sure, why
-+ the SNICallback of the JSON object, doesn't get invoked via
-+ SelectSNIContextCallback_() - design flaw because lets do 2 things at once
-+ (i.e. do SNICallback and attach the certs ca chain), however, this means
-+ no server side support for the SNI TLS/OCSP_state extension anymore.
-+ */
-+#endif
-
- #ifdef SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
- if (is_server) {
- SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
- } else if (args[2]->IsString()) {
-@@ -4476,10 +4639,11 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
- args.GetReturnValue().Set(vbuf);
- delete[] out_value;
- }
-
-
-+#ifndef OPENSSL_NO_DH
- void DiffieHellman::Initialize(Environment* env, Local<Object> target) {
- Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
-
- const PropertyAttribute attributes =
- static_cast<PropertyAttribute>(v8::ReadOnly | v8::DontDelete);
-@@ -4877,12 +5041,14 @@ bool DiffieHellman::VerifyContext() {
- if (!DH_check(dh, &codes))
- return false;
- verifyError_ = codes;
- return true;
- }
-+#endif
-
-
-+#ifndef OPENSSL_NO_ECDH
- void ECDH::Initialize(Environment* env, Local<Object> target) {
- HandleScope scope(env->isolate());
-
- Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
-
-@@ -5106,10 +5272,11 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
- return env->ThrowError("Failed to set generated public key");
- }
-
- EC_POINT_free(pub);
- }
-+#endif
-
-
- void ECDH::SetPublicKey(const FunctionCallbackInfo<Value>& args) {
- Environment* env = Environment::GetCurrent(args);
-
-@@ -5659,10 +5826,11 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
- EVP_MD_do_all_sorted(array_push_back<EVP_MD>, &ctx);
- args.GetReturnValue().Set(ctx.arr);
- }
-
-
-+# ifndef OPENSSL_NO_EC
- void GetCurves(const FunctionCallbackInfo<Value>& args) {
- Environment* env = Environment::GetCurrent(args);
- const size_t num_curves = EC_get_builtin_curves(nullptr, 0);
- Local<Array> arr = Array::New(env->isolate(), num_curves);
- EC_builtin_curve* curves;
-@@ -5683,10 +5851,11 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
- free(curves);
- }
-
- args.GetReturnValue().Set(arr);
- }
-+#endif
-
-
- bool VerifySpkac(const char* data, unsigned int len) {
- bool i = 0;
- EVP_PKEY* pkey = nullptr;
-@@ -5995,12 +6164,16 @@ void InitCrypto(Local<Object> target,
-
- Environment* env = Environment::GetCurrent(context);
- SecureContext::Initialize(env, target);
- Connection::Initialize(env, target);
- CipherBase::Initialize(env, target);
-+# ifndef OPENSSL_NO_EC
- DiffieHellman::Initialize(env, target);
-+#endif
-+#ifndef OPENSSL_NO_ECDH
- ECDH::Initialize(env, target);
-+#endif
- Hmac::Initialize(env, target);
- Hash::Initialize(env, target);
- Sign::Initialize(env, target);
- Verify::Initialize(env, target);
-
-@@ -6016,11 +6189,13 @@ void InitCrypto(Local<Object> target,
- env->SetMethod(target, "randomBytes", RandomBytes);
- env->SetMethod(target, "timingSafeEqual", TimingSafeEqual);
- env->SetMethod(target, "getSSLCiphers", GetSSLCiphers);
- env->SetMethod(target, "getCiphers", GetCiphers);
- env->SetMethod(target, "getHashes", GetHashes);
-+# ifndef OPENSSL_NO_EC
- env->SetMethod(target, "getCurves", GetCurves);
-+#endif
- env->SetMethod(target, "publicEncrypt",
- PublicKeyCipher::Cipher<PublicKeyCipher::kPublic,
- EVP_PKEY_encrypt_init,
- EVP_PKEY_encrypt>);
- env->SetMethod(target, "privateDecrypt",
-diff --git a/src/node_crypto.h b/src/node_crypto.h
-index 175206c40df58602b0c24d039b8b5a8bb6f56ba3..5ecc43b08d0b4d97311f09271a26f5a735a6e018 100644
---- a/src/node_crypto.h
-+++ b/src/node_crypto.h
-@@ -16,12 +16,16 @@
- #include "base-object-inl.h"
-
- #include "v8.h"
-
- #include <openssl/ssl.h>
-+# ifndef OPENSSL_NO_EC
- #include <openssl/ec.h>
-+# endif
-+# ifndef OPENSSL_NO_ECDH
- #include <openssl/ecdh.h>
-+# endif
- #ifndef OPENSSL_NO_ENGINE
- # include <openssl/engine.h>
- #endif // !OPENSSL_NO_ENGINE
- #include <openssl/err.h>
- #include <openssl/evp.h>
-@@ -100,12 +104,16 @@ class SecureContext : public BaseObject {
- static void SetCert(const v8::FunctionCallbackInfo
v8::Value& args);
- static void AddCACert(const v8::FunctionCallbackInfo
v8::Value& args);
- static void AddCRL(const v8::FunctionCallbackInfo
v8::Value& args);
- static void AddRootCerts(const v8::FunctionCallbackInfo
v8::Value& args);
- static void SetCiphers(const v8::FunctionCallbackInfo
v8::Value& args);
-+#ifndef OPENSSL_NO_ECDH
- static void SetECDHCurve(const v8::FunctionCallbackInfo
v8::Value& args);
-+#endif
-+# ifndef OPENSSL_NO_DH
- static void SetDHParam(const v8::FunctionCallbackInfo
v8::Value& args);
-+#endif
- static void SetOptions(const v8::FunctionCallbackInfo
v8::Value& args);
- static void SetSessionIdContext(
- const v8::FunctionCallbackInfo
v8::Value& args);
- static void SetSessionTimeout(
- const v8::FunctionCallbackInfo
v8::Value& args);
-@@ -273,11 +281,15 @@ class SSLWrap {
- unsigned char* outlen,
- const unsigned char* in,
- unsigned int inlen,
- void* arg);
- static int TLSExtStatusCallback(SSL* s, void* arg);
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- static int SSLCertCallback(SSL* s, void* arg);
-+#else
-+ static int SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey);
-+#endif
- static void SSLGetter(v8::Local
v8::String property,
- const v8::PropertyCallbackInfo
v8::Value& info);
-
- void DestroySSL();
- void WaitForCertCb(CertCb cb, void* arg);
-@@ -635,10 +647,11 @@ class PublicKeyCipher {
- EVP_PKEY_cipher_init_t EVP_PKEY_cipher_init,
- EVP_PKEY_cipher_t EVP_PKEY_cipher>
- static void Cipher(const v8::FunctionCallbackInfo
v8::Value& args);
- };
-
-+#ifndef OPENSSL_NO_DH
- class DiffieHellman : public BaseObject {
- public:
- ~DiffieHellman() override {
- if (dh != nullptr) {
- DH_free(dh);
-@@ -680,11 +693,13 @@ class DiffieHellman : public BaseObject {
-
- bool initialised_;
- int verifyError_;
- DH* dh;
- };
-+#endif
-
-+# ifndef OPENSSL_NO_ECDH
- class ECDH : public BaseObject {
- public:
- ~ECDH() override {
- if (key_ != nullptr)
- EC_KEY_free(key_);
-@@ -717,10 +732,11 @@ class ECDH : public BaseObject {
- bool IsKeyValidForCurve(const BIGNUM* private_key);
-
- EC_KEY* key_;
- const EC_GROUP* group_;
- };
-+#endif
-
- bool EntropySource(unsigned char* buffer, size_t length);
- #ifndef OPENSSL_NO_ENGINE
- void SetEngine(const v8::FunctionCallbackInfo
v8::Value& args);
- #endif // !OPENSSL_NO_ENGINE
-diff --git a/src/tls_wrap.cc b/src/tls_wrap.cc
-index d1b1aeccdd95b00b3fd0421c08fd7816cd70d182..a6e63d7c1ccc81e6f7d782dffe833234b003de15 100644
---- a/src/tls_wrap.cc
-+++ b/src/tls_wrap.cc
-@@ -140,11 +140,19 @@ void TLSWrap::InitSSL() {
- }
- #endif // SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
-
- InitNPN(sc_);
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- SSL_set_cert_cb(ssl_, SSLWrap<TLSWrap>::SSLCertCallback, this);
-+#else
-+ /* 1.0.1 and less have at most for the client side the function
-+ SSL_CTX_set_client_cert_cb(ssl_->ctx, SSLWrap<TLSWrap>::SSLCertCallback);
-+ but on the client it is not needed/used by this implementation.
-+ For more info see comments in src/node_crypto.cc Connection::New().
-+ */
-+#endif
-
- if (is_server()) {
- SSL_set_accept_state(ssl_);
- } else if (is_client()) {
- // Enough space for server response (hello, cert)
---
-2.12.0
-
diff --git a/0004-Fix-compatibility-with-GCC-7.patch b/0004-Fix-compatibility-with-GCC-7.patch
deleted file mode 100644
index 55427f7..0000000
--- a/0004-Fix-compatibility-with-GCC-7.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From a75f63218b84ee508c770391519a13bd400a5003 Mon Sep 17 00:00:00 2001
-From: Ben Noordhuis
info@bnoordhuis.nl
-Date: Thu, 13 Apr 2017 13:48:01 +0200
-Subject: [PATCH 4/4] v8: fix build errors with g++ 7
-
-This is a local patch because upstream fixed it differently by moving
-large chunks of code out of objects.h. We cannot easily back-port
-those changes due to their size and invasiveness.
-
-Fixes:
https://github.com/nodejs/node/issues/10388
-PR-URL:
https://github.com/nodejs/node/pull/12392
-Reviewed-By: Anna Henningsen
anna@addaleax.net
-Reviewed-By: Benjamin Gruenbaum
benjamingr@gmail.com
-Reviewed-By: Daniel Bevenius
daniel.bevenius@gmail.com
-Reviewed-By: James M Snell
jasnell@gmail.com
----
- deps/v8/src/objects-body-descriptors.h | 2 +-
- deps/v8/src/objects-inl.h | 21 +++++++++++++++++++++
- deps/v8/src/objects.h | 20 ++++----------------
- 3 files changed, 26 insertions(+), 17 deletions(-)
-
-diff --git a/deps/v8/src/objects-body-descriptors.h b/deps/v8/src/objects-body-descriptors.h
-index 91cb8883be88739eab2b10df71f6f0d08aab436e..a1c3634bd762d7e03b4c87d38aa14a9a3ce318e4 100644
---- a/deps/v8/src/objects-body-descriptors.h
-+++ b/deps/v8/src/objects-body-descriptors.h
-@@ -97,11 +97,11 @@ class FixedBodyDescriptor final : public BodyDescriptorBase {
- IterateBodyImpl<StaticVisitor>(heap, obj, start_offset, end_offset);
- }
-
- template <typename StaticVisitor>
- static inline void IterateBody(HeapObject* obj, int object_size) {
-- IterateBody(obj);
-+ IterateBody<StaticVisitor>(obj);
- }
- };
-
-
- // This class describes a body of an object of a variable size
-diff --git a/deps/v8/src/objects-inl.h b/deps/v8/src/objects-inl.h
-index 11f4d7498d7558f56037483004a3d5839154516b..72208c2f00f4a9ff47ae487fa9a42f8f82cf12ea 100644
---- a/deps/v8/src/objects-inl.h
-+++ b/deps/v8/src/objects-inl.h
-@@ -34,10 +34,31 @@
- #include "src/v8memory.h"
-
- namespace v8 {
- namespace internal {
-
-+template <typename Derived, typename Shape, typename Key>
-+uint32_t HashTable<Derived, Shape, Key>::Hash(Key key) {
-+ if (Shape::UsesSeed) {
-+ return Shape::SeededHash(key, GetHeap()->HashSeed());
-+ } else {
-+ return Shape::Hash(key);
-+ }
-+}
-+
-+
-+template <typename Derived, typename Shape, typename Key>
-+uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key,
-+ Object* object) {
-+ if (Shape::UsesSeed) {
-+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
-+ } else {
-+ return Shape::HashForObject(key, object);
-+ }
-+}
-+
-+
- PropertyDetails::PropertyDetails(Smi* smi) {
- value_ = smi->value();
- }
-
-
-diff --git a/deps/v8/src/objects.h b/deps/v8/src/objects.h
-index d1632c9deb298218faea31886ffdb0a8e0201cdc..47b02dadcff9658c9fcfe629e137667015e12079 100644
---- a/deps/v8/src/objects.h
-+++ b/deps/v8/src/objects.h
-@@ -3259,26 +3259,14 @@ class HashTableBase : public FixedArray {
-
-
- template <typename Derived, typename Shape, typename Key>
- class HashTable : public HashTableBase {
- public:
-- // Wrapper methods
-- inline uint32_t Hash(Key key) {
-- if (Shape::UsesSeed) {
-- return Shape::SeededHash(key, GetHeap()->HashSeed());
-- } else {
-- return Shape::Hash(key);
-- }
-- }
--
-- inline uint32_t HashForObject(Key key, Object* object) {
-- if (Shape::UsesSeed) {
-- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
-- } else {
-- return Shape::HashForObject(key, object);
-- }
-- }
-+ // Wrapper methods. Defined in src/objects-inl.h
-+ // to break a cycle with src/heap/heap.h.
-+ inline uint32_t Hash(Key key);
-+ inline uint32_t HashForObject(Key key, Object* object);
-
- // Returns a new HashTable object.
- MUST_USE_RESULT static Handle<Derived> New(
- Isolate* isolate, int at_least_space_for,
- MinimumCapacity capacity_option = USE_DEFAULT_MINIMUM_CAPACITY,
---
-2.12.2
-
diff --git a/EPEL01-openssl101-compat.patch b/EPEL01-openssl101-compat.patch
deleted file mode 100644
index f419f95..0000000
--- a/EPEL01-openssl101-compat.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -ru a/src/node_crypto.cc b/src/node_crypto.cc
---- a/src/node_crypto.cc 2017-03-31 22:39:56.483283868 +0200
-+++ b/src/node_crypto.cc 2017-03-31 22:45:36.250267750 +0200
-@@ -851,8 +851,6 @@
- }
- }
-
-- // Increment reference count so global store is not deleted along with CTX.
-- X509_STORE_up_ref(root_cert_store);
- SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
- }
-
-diff -ru a/src/node_crypto.h b/src/node_crypto.h
---- a/src/node_crypto.h 2017-03-21 20:43:33.000000000 +0100
-+++ b/src/node_crypto.h 2017-03-31 22:43:15.548183432 +0200
-@@ -145,6 +145,13 @@
- }
-
- env()->isolate()->AdjustAmountOfExternalAllocatedMemory(-kExternalSize);
-+ if (ctx_->cert_store == root_cert_store) {
-+ // SSL_CTX_free() will attempt to free the cert_store as well.
-+ // Since we want our root_cert_store to stay around forever
-+ // we just clear the field. Hopefully OpenSSL will not modify this
-+ // struct in future versions.
-+ ctx_->cert_store = nullptr;
-+ }
- SSL_CTX_free(ctx_);
- if (cert_ != nullptr)
- X509_free(cert_);
-
diff --git a/nodejs.spec b/nodejs.spec
index 3190437..3d96d75 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 11
-%global nodejs_patch 2
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -28,7 +28,7 @@
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 103
+%global v8_patch 107
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -96,13 +96,6 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
-# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
-Patch2: 0002-Use-openssl-1.0.1.patch
-
-# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
-# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
-Patch5: EPEL01-openssl101-compat.patch
-
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
@@ -118,15 +111,11 @@ BuildRequires: http-parser-devel >= 2.7.0
Provides: bundled(http-parser) = %{http_parser_version}
%endif
-%if 0%{?epel}
-BuildRequires: openssl-devel >= 1:1.0.1
-%else
%if 0%{?fedora} > 25
BuildRequires: compat-openssl10-devel >= 1:1.0.2
%else
BuildRequires: openssl-devel >= 1:1.0.2
%endif
-%endif
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -247,12 +236,6 @@ rm -rf deps/icu-small \
deps/uv \
deps/zlib
-%if 0%{?epel}
-%patch2 -p1
-%patch5 -p1
-%endif
-
-
%build
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
@@ -436,6 +419,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Sep 07 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.3-1
+- Update to 6.11.3
+-
https://nodejs.org/en/blog/release/v6.11.3/
+- remove openssl 1.0.1 patches
+
* Tue Aug 01 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1
- Update to 6.11.2
-
https://nodejs.org/en/blog/release/v6.11.2/
diff --git a/sources b/sources
index 2adcec3..4174557 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.11.2-stripped.tar.gz) = 037382205b38d1dd693bc40b9c3d2c66b6c9bf4e635b1caaa11e897eaf4411834ca2132fd9c2113833c67cec8fe0764c6475841b8dc3a7477f535bcf28bbf2dd
+SHA512 (node-v6.11.3-stripped.tar.gz) = 7e1e60d42d197c4634dd3d79888ea3cffa580bdbb8db1ec359a5d6277504bc013dd22b3a2c33cf957b4a858a3bcdc4e3752ab42b821e3c504887ade40286655a
commit 001b20df9c2b9c2e04d1bb995e6793d68b26b269
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Aug 23 12:00:54 2017 -0400
Move to requiring OpenSSL 1.0.2
Unbundle http-parser again.
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-files-for-bundled-deps.patch
index 2a506f5..287cd22 100644
--- a/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -1,25 +1,29 @@
-From 55269de7552aebc324cb0333d38d600897555b9c Mon Sep 17 00:00:00 2001
+From be1738c229765ad0796b97e842515b5d8834c894 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
-Date: Tue, 22 Aug 2017 13:11:56 +0200
-Subject: [PATCH] Disable gyp
+Date: Wed, 22 Mar 2017 19:13:10 +0100
+Subject: [PATCH] Disable running gyp files for bundled deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index cfbd426033..ee05b63f8f 100644
+index cfbd426033c7f2882f77cd60faaf3bb0277e6c57..8ca97d5552ebb328d8d6727531b13843864a6e86 100644
--- a/Makefile
+++ b/Makefile
-@@ -77,7 +77,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
+@@ -75,11 +75,11 @@ $(NODE_EXE): config.gypi out/Makefile
+
+ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
-out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
-+out/Makefile: common.gypi deps/http_parser/http_parser.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
++out/Makefile: common.gypi deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
+ $(error Missing or stale $@, please run ./$<)
+
--
-2.14.1
+2.13.5
diff --git a/0002-Use-openssl-1.0.1.patch b/0002-Use-openssl-1.0.1.patch
deleted file mode 100644
index b518363..0000000
--- a/0002-Use-openssl-1.0.1.patch
+++ /dev/null
@@ -1,648 +0,0 @@
-From 2411d250a2789675aa9c902aeea3f0c55b34a4e0 Mon Sep 17 00:00:00 2001
-From: Haikel Guemar
hguemar@fedoraproject.org
-Date: Tue, 26 Jul 2016 22:50:22 +0200
-Subject: [PATCH 2/3] Use openssl 1.0.1
-
-Based on Solaris patches from upstream #2783
-
https://github.com/nodejs/node/issues/2783
----
- doc/api/tls.md | 6 ++
- src/node_constants.cc | 5 ++
- src/node_crypto.cc | 201 ++++++++++++++++++++++++++++++++++++++++++++++----
- src/node_crypto.h | 16 ++++
- src/tls_wrap.cc | 8 ++
- 5 files changed, 223 insertions(+), 13 deletions(-)
-
-diff --git a/doc/api/tls.md b/doc/api/tls.md
-index b7e5c8f15e2bf4e8604cdd1bc95ea0e98a96b7d6..6b3069f9352ae44d0dab37b3e4b2eebdbc104609 100644
---- a/doc/api/tls.md
-+++ b/doc/api/tls.md
-@@ -113,10 +113,16 @@ handshake extensions:
- * ALPN/NPN - Allows the use of one TLS server for multiple protocols (HTTP,
- SPDY, HTTP/2)
- * SNI - Allows the use of one TLS server for multiple hostnames with different
- SSL certificates.
-
-+ **NOTE**: dueto a design flaw in node **SNI cannot be
-+ used on the server side**, even so all parameters in related functions are
-+ accepted for compatibility reasons. And thus the related events will not
-+ fire unless one aranges this explicitly. This may change, when the OS
-+ provides OpenSSL v1.0.2 or better and node gets linked to this version.
-+
- *Note*: Use of ALPN is recommended over NPN. The NPN extension has never been
- formally defined or documented and generally not recommended for use.
-
- ### Client-initiated renegotiation attack mitigation
-
-diff --git a/src/node_constants.cc b/src/node_constants.cc
-index 750df9c669bad38e0cc05158bd8ef1c90d810f74..d693851c4bb6c247cfda7436c5ea0baf5bebc886 100644
---- a/src/node_constants.cc
-+++ b/src/node_constants.cc
-@@ -12,11 +12,14 @@
- #include <signal.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-
- #if HAVE_OPENSSL
-+# include <openssl/opensslconf.h>
-+# ifndef OPENSSL_NO_EC
- # include <openssl/ec.h>
-+# endif
- # include <openssl/ssl.h>
- # ifndef OPENSSL_NO_ENGINE
- # include <openssl/engine.h>
- # endif // !OPENSSL_NO_ENGINE
- #endif
-@@ -974,16 +977,18 @@ void DefineOpenSSLConstants(Local<Object> target) {
- NODE_DEFINE_CONSTANT(target, RSA_PKCS1_PSS_PADDING);
- #endif
-
- #if HAVE_OPENSSL
- // NOTE: These are not defines
-+# ifndef OPENSSL_NO_EC
- NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_COMPRESSED);
-
- NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_UNCOMPRESSED);
-
- NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_HYBRID);
- #endif
-+#endif
- }
-
- void DefineSystemConstants(Local<Object> target) {
- // file access modes
- NODE_DEFINE_CONSTANT(target, O_RDONLY);
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index f654dcf60cb42479b06fcd2be96e5bda287606c7..7aaff07fb513945d6272f238814a4cd297da7b0e 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -26,10 +26,86 @@
- #include <limits.h> // INT_MAX
- #include <math.h>
- #include <stdlib.h>
- #include <string.h>
-
-+#ifndef SSL_get_server_tmp_key
-+/*
-+ 1.0.2 SSL_get_server_tmp_key(s, pk) "backport". BAD HACK!!!
-+ NOTE: This imports "foreign" knowledge and thus will break, when SESS_CERT
-+ or CERT_PKEY change, which is definitely the case for the later for
-+ all OpenSSL lib vers != 1.0.1. So don't try to bind to something else!
-+ */
-+# define SSL_PKEY_NUM 8
-+typedef struct cert_pkey_st {
-+ X509 *x509;
-+ EVP_PKEY *privatekey;
-+ /* Digest to use when signing */
-+ const EVP_MD *digest;
-+} CERT_PKEY;
-+
-+typedef struct sess_cert_st {
-+ STACK_OF(X509) *cert_chain; /* as received from peer (not for SSL2) */
-+ /* The 'peer_...' members are used only by clients. */
-+ int peer_cert_type;
-+ CERT_PKEY *peer_key; /* points to an element of peer_pkeys (never
-+ * NULL!) */
-+ CERT_PKEY peer_pkeys[SSL_PKEY_NUM];
-+ /*
-+ * Obviously we don't have the private keys of these, so maybe we
-+ * shouldn't even use the CERT_PKEY type here.
-+ */
-+# ifndef OPENSSL_NO_RSA
-+ RSA *peer_rsa_tmp; /* not used for SSL 2 */
-+# endif
-+# ifndef OPENSSL_NO_DH
-+ DH *peer_dh_tmp; /* not used for SSL 2 */
-+# endif
-+# ifndef OPENSSL_NO_ECDH
-+ EC_KEY *peer_ecdh_tmp;
-+# endif
-+ int references; /* actually always 1 at the moment */
-+} SESS_CERT;
-+
-+static long SSL_get_server_tmp_key(SSL *s, void *parg) {
-+ if (s->server || !s->session || !s->session->sess_cert)
-+ return 0;
-+ else {
-+ SESS_CERT *sc;
-+ EVP_PKEY *ptmp;
-+ int rv = 0;
-+ sc = s->session->sess_cert;
-+#if !defined(OPENSSL_NO_RSA) && !defined(OPENSSL_NO_DH) && !defined(OPENSSL_NO_EC) && !defined(OPENSSL_NO_ECDH)
-+ if (!sc->peer_rsa_tmp && !sc->peer_dh_tmp && !sc->peer_ecdh_tmp)
-+ return 0;
-+#endif
-+ ptmp = EVP_PKEY_new();
-+ if (!ptmp)
-+ return 0;
-+ if (0) ;
-+#ifndef OPENSSL_NO_RSA
-+ else if (sc->peer_rsa_tmp)
-+ rv = EVP_PKEY_set1_RSA(ptmp, sc->peer_rsa_tmp);
-+#endif
-+#ifndef OPENSSL_NO_DH
-+ else if (sc->peer_dh_tmp)
-+ rv = EVP_PKEY_set1_DH(ptmp, sc->peer_dh_tmp);
-+#endif
-+#ifndef OPENSSL_NO_ECDH
-+ else if (sc->peer_ecdh_tmp)
-+ rv = EVP_PKEY_set1_EC_KEY(ptmp, sc->peer_ecdh_tmp);
-+#endif
-+ if (rv) {
-+ *(EVP_PKEY **)parg = ptmp;
-+ return 1;
-+ }
-+ EVP_PKEY_free(ptmp);
-+ return 0;
-+ }
-+}
-+#endif /* SSL_get_server_tmp_key */
-+
- #define THROW_AND_RETURN_IF_NOT_STRING_OR_BUFFER(val, prefix) \
- do { \
- if (!Buffer::HasInstance(val) && !val->IsString()) { \
- return env->ThrowTypeError(prefix " must be a string or a buffer"); \
- } \
-@@ -165,11 +241,15 @@ template int SSLWrap<TLSWrap>::SelectNextProtoCallback(
- #ifdef NODE__HAVE_TLSEXT_STATUS_CB
- template int SSLWrap<TLSWrap>::TLSExtStatusCallback(SSL* s, void* arg);
- #endif
-
- template void SSLWrap<TLSWrap>::DestroySSL();
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- template int SSLWrap<TLSWrap>::SSLCertCallback(SSL* s, void* arg);
-+#else
-+template int SSLWrap<TLSWrap>::SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey);
-+#endif
- template void SSLWrap<TLSWrap>::WaitForCertCb(CertCb cb, void* arg);
-
- #ifdef TLSEXT_TYPE_application_layer_protocol_negotiation
- template int SSLWrap<TLSWrap>::SelectALPNCallback(
- SSL* s,
-@@ -295,12 +375,16 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
- env->SetProtoMethod(t, "setCert", SecureContext::SetCert);
- env->SetProtoMethod(t, "addCACert", SecureContext::AddCACert);
- env->SetProtoMethod(t, "addCRL", SecureContext::AddCRL);
- env->SetProtoMethod(t, "addRootCerts", SecureContext::AddRootCerts);
- env->SetProtoMethod(t, "setCiphers", SecureContext::SetCiphers);
-+#ifndef OPENSSL_NO_ECDH
- env->SetProtoMethod(t, "setECDHCurve", SecureContext::SetECDHCurve);
-+#endif
-+#ifndef OPENSSL_NO_DH
- env->SetProtoMethod(t, "setDHParam", SecureContext::SetDHParam);
-+#endif
- env->SetProtoMethod(t, "setOptions", SecureContext::SetOptions);
- env->SetProtoMethod(t, "setSessionIdContext",
- SecureContext::SetSessionIdContext);
- env->SetProtoMethod(t, "setSessionTimeout",
- SecureContext::SetSessionTimeout);
-@@ -531,12 +615,24 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
- SSL_CTX_clear_extra_chain_certs(ctx);
-
- for (int i = 0; i < sk_X509_num(extra_certs); i++) {
- X509* ca = sk_X509_value(extra_certs, i);
-
-- // NOTE: Increments reference count on `ca`
-- r = SSL_CTX_add1_chain_cert(ctx, ca);
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+ // If ctx->cert->key != NULL create ctx->cert->key->chain if not
-+ // already there, push 'ca' to this chain and finally increment the ca
-+ // reference count by 1 (this is the diff between *_add1_* and *_add0_*
-+ // - the later increments by 0 ;-)) and return 1. Otherwise or if
-+ // something fails in between, return 0.
-+ r = SSL_CTX_add1_chain_cert(ctx, ca);
-+#else
-+ // Create ctx->extra_certs if not already there, just push 'ca' to this
-+ // chain and return 1. If something fails, return 0.
-+ // NOTE: 1.0.1- does not support multiple certs having its own chain in
-+ // a single context. There is just one: extra_chain!
-+ r = SSL_CTX_add_extra_chain_cert(ctx, ca);
-+#endif
-
- if (!r) {
- ret = 0;
- *issuer = nullptr;
- goto end;
-@@ -887,10 +983,11 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
- const node::Utf8Value ciphers(args.GetIsolate(), args[0]);
- SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
- }
-
-
-+#ifndef OPENSSL_NO_ECDH
- void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
- ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
- Environment* env = sc->env();
-
-@@ -914,12 +1011,14 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
- SSL_CTX_set_options(sc->ctx_, SSL_OP_SINGLE_ECDH_USE);
- SSL_CTX_set_tmp_ecdh(sc->ctx_, ecdh);
-
- EC_KEY_free(ecdh);
- }
-+#endif
-
-
-+#ifndef OPENSSL_NO_DH
- void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
- ASSIGN_OR_RETURN_UNWRAP(&sc, args.This());
- Environment* env = sc->env();
- ClearErrorOnReturn clear_error_on_return;
-@@ -954,10 +1053,11 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
- DH_free(dh);
-
- if (!r)
- return env->ThrowTypeError("Error setting temp DH parameter");
- }
-+#endif
-
-
- void SecureContext::SetOptions(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
- ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
-@@ -1977,10 +2077,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
- info->Set(env->type_string(),
- FIXED_ONE_BYTE_STRING(env->isolate(), "DH"));
- info->Set(env->size_string(),
- Integer::New(env->isolate(), EVP_PKEY_bits(key)));
- break;
-+#ifndef OPENSSL_NO_ECDH
- case EVP_PKEY_EC:
- {
- EC_KEY* ec = EVP_PKEY_get1_EC_KEY(key);
- int nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec));
- EC_KEY_free(ec);
-@@ -1989,10 +2090,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
- info->Set(env->name_string(),
- OneByteString(args.GetIsolate(), OBJ_nid2sn(nid)));
- info->Set(env->size_string(),
- Integer::New(env->isolate(), EVP_PKEY_bits(key)));
- }
-+#endif
- }
- EVP_PKEY_free(key);
- }
-
- return args.GetReturnValue().Set(info);
-@@ -2407,11 +2509,16 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
- cert_cb_arg_ = arg;
- }
-
-
- template <class Base>
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- int SSLWrap<Base>::SSLCertCallback(SSL* s, void* arg) {
-+#else
-+/* NOTE: For now this callback gets usually never called dueto design flaws */
-+int SSLWrap<Base>::SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey) {
-+#endif
- Base* w = static_cast<Base*>(SSL_get_app_data(s));
-
- if (!w->is_server())
- return 1;
-
-@@ -2476,23 +2583,57 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
- ASSIGN_OR_RETURN_UNWRAP(&sc, ctx.As<Object>());
- w->sni_context_.Reset();
- w->sni_context_.Reset(env->isolate(), ctx);
-
- int rv;
-+ X509* x509;
-+ EVP_PKEY* pkey;
-+ STACK_OF(X509)* chain;
-
- // NOTE: reference count is not increased by this API methods
-- X509* x509 = SSL_CTX_get0_certificate(sc->ctx_);
-- EVP_PKEY* pkey = SSL_CTX_get0_privatekey(sc->ctx_);
-- STACK_OF(X509)* chain;
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+ x509 = SSL_CTX_get0_certificate(sc->ctx_);
-+ pkey = SSL_CTX_get0_privatekey(sc->ctx_);
-+ rv = SSL_CTX_get0_chain_certs(sc->ctx_, &chain);
-+#else
-+ SSL *ssl = SSL_new(sc->ctx_);
-+ rv = SSL_CTX_get_extra_chain_certs(sc->ctx_, &chain);
-+ if (ssl) {
-+ SSL_set_connect_state(ssl); /* just cleanup/reset state - cheap */
-+ x509 = SSL_get_certificate(ssl);
-+ SSL_free(ssl);
-+ } else {
-+ x509 = NULL;
-+ pkey = NULL;
-+ }
-+#endif
-
-- rv = SSL_CTX_get0_chain_certs(sc->ctx_, &chain);
-- if (rv)
-- rv = SSL_use_certificate(w->ssl_, x509);
-- if (rv)
-- rv = SSL_use_PrivateKey(w->ssl_, pkey);
-- if (rv && chain != nullptr)
-- rv = SSL_set1_chain(w->ssl_, chain);
-+ if (rv)
-+ rv = SSL_use_certificate(w->ssl_, x509);
-+ if (rv)
-+ rv = SSL_use_PrivateKey(w->ssl_, pkey);
-+ if (rv && chain != nullptr) {
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+ // replaces w->ssl_->cert->key->chain with a copy of the given chain,
-+ // which is allowed to be NULL
-+ rv = SSL_set1_chain(w->ssl_, chain);
-+#else
-+ // just replace the extra chain with the given chain - 1.0.1- does not
-+ // support chain per cert
-+ SSL_CTX_clear_extra_chain_certs(w->ssl_->ctx);
-+ if (chain != NULL) {
-+ int i;
-+ SSL_CTX* ctx = w->ssl_->ctx;
-+ for (i = 0; i < sk_X509_num(chain); i++) {
-+ // can't do anything: however others might be ok and still
-+ // satisfy requirements
-+ SSL_CTX_add_extra_chain_cert(ctx, sk_X509_value(chain,i));
-+ }
-+ }
-+ rv = 1;
-+#endif
-+ }
- if (rv)
- rv = w->SetCACerts(sc);
- if (!rv) {
- unsigned long err = ERR_get_error(); // NOLINT(runtime/int)
- if (!err)
-@@ -2552,14 +2693,18 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
- }
-
-
- template <class Base>
- int SSLWrap<Base>::SetCACerts(SecureContext* sc) {
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- int err = SSL_set1_verify_cert_store(ssl_, SSL_CTX_get_cert_store(sc->ctx_));
- if (err != 1)
- return err;
--
-+#else
-+ // there is no ssl_->cert->verify_store in <= 1.0.1. So no need to: free the
-+ // old store, set the new one to it and increment its ref count.
-+#endif
- STACK_OF(X509_NAME)* list = SSL_dup_CA_list(
- SSL_CTX_get_client_CA_list(sc->ctx_));
-
- // NOTE: `SSL_set_client_CA_list` takes the ownership of `list`
- SSL_set_client_CA_list(ssl_, list);
-@@ -2871,11 +3016,15 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
-
- // Server does not need to check the whitelist.
- SSL* ssl = static_cast<SSL*>(
- X509_STORE_CTX_get_ex_data(ctx, SSL_get_ex_data_X509_STORE_CTX_idx()));
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- if (SSL_is_server(ssl))
-+#else
-+ if (ssl->server)
-+#endif
- return CHECK_OK;
-
- // Client needs to check if the server cert is listed in the
- // whitelist when it is issued by the specific rootCAs.
- CheckResult ret = CheckWhitelistedServerCert(ctx);
-@@ -2954,11 +3103,25 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
- if (is_server)
- SSL_set_info_callback(conn->ssl_, SSLInfoCallback);
-
- InitNPN(sc);
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- SSL_set_cert_cb(conn->ssl_, SSLWrap<Connection>::SSLCertCallback, conn);
-+#else
-+ /* 1.0.1 and less have no general cert callback. The closest for a client is
-+ SSL_CTX_set_client_cert_cb(conn->ssl_->ctx, SSLWrap<Connection>::SSLCertCallback);
-+ but on the client it is not needed/used by this implementation. Since this
-+ the SSLCertCallback actually calls lib/_tls_wrap.js:oncertcb(), which in
-+ turn loadSNI() and this the actual SNICallback of the JSON object, sets
-+ the context and finally requestOCSP() and certCbDone(). Not sure, why
-+ the SNICallback of the JSON object, doesn't get invoked via
-+ SelectSNIContextCallback_() - design flaw because lets do 2 things at once
-+ (i.e. do SNICallback and attach the certs ca chain), however, this means
-+ no server side support for the SNI TLS/OCSP_state extension anymore.
-+ */
-+#endif
-
- #ifdef SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
- if (is_server) {
- SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
- } else if (args[2]->IsString()) {
-@@ -4541,10 +4704,11 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
- args.GetReturnValue().Set(vbuf);
- delete[] out_value;
- }
-
-
-+#ifndef OPENSSL_NO_DH
- void DiffieHellman::Initialize(Environment* env, Local<Object> target) {
- Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
-
- const PropertyAttribute attributes =
- static_cast<PropertyAttribute>(v8::ReadOnly | v8::DontDelete);
-@@ -4942,12 +5106,14 @@ bool DiffieHellman::VerifyContext() {
- if (!DH_check(dh, &codes))
- return false;
- verifyError_ = codes;
- return true;
- }
-+#endif
-
-
-+#ifndef OPENSSL_NO_ECDH
- void ECDH::Initialize(Environment* env, Local<Object> target) {
- HandleScope scope(env->isolate());
-
- Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
-
-@@ -5173,10 +5339,11 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
- return env->ThrowError("Failed to set generated public key");
- }
-
- EC_POINT_free(pub);
- }
-+#endif
-
-
- void ECDH::SetPublicKey(const FunctionCallbackInfo<Value>& args) {
- Environment* env = Environment::GetCurrent(args);
-
-@@ -5728,10 +5895,11 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
- EVP_MD_do_all_sorted(array_push_back<EVP_MD>, &ctx);
- args.GetReturnValue().Set(ctx.arr);
- }
-
-
-+# ifndef OPENSSL_NO_EC
- void GetCurves(const FunctionCallbackInfo<Value>& args) {
- Environment* env = Environment::GetCurrent(args);
- const size_t num_curves = EC_get_builtin_curves(nullptr, 0);
- Local<Array> arr = Array::New(env->isolate(), num_curves);
- EC_builtin_curve* curves;
-@@ -5752,10 +5920,11 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
- free(curves);
- }
-
- args.GetReturnValue().Set(arr);
- }
-+#endif
-
-
- bool VerifySpkac(const char* data, unsigned int len) {
- bool i = 0;
- EVP_PKEY* pkey = nullptr;
-@@ -6063,12 +6232,16 @@ void InitCrypto(Local<Object> target,
-
- Environment* env = Environment::GetCurrent(context);
- SecureContext::Initialize(env, target);
- Connection::Initialize(env, target);
- CipherBase::Initialize(env, target);
-+# ifndef OPENSSL_NO_EC
- DiffieHellman::Initialize(env, target);
-+#endif
-+#ifndef OPENSSL_NO_ECDH
- ECDH::Initialize(env, target);
-+#endif
- Hmac::Initialize(env, target);
- Hash::Initialize(env, target);
- Sign::Initialize(env, target);
- Verify::Initialize(env, target);
-
-@@ -6084,11 +6257,13 @@ void InitCrypto(Local<Object> target,
- env->SetMethod(target, "randomBytes", RandomBytes);
- env->SetMethod(target, "timingSafeEqual", TimingSafeEqual);
- env->SetMethod(target, "getSSLCiphers", GetSSLCiphers);
- env->SetMethod(target, "getCiphers", GetCiphers);
- env->SetMethod(target, "getHashes", GetHashes);
-+# ifndef OPENSSL_NO_EC
- env->SetMethod(target, "getCurves", GetCurves);
-+#endif
- env->SetMethod(target, "publicEncrypt",
- PublicKeyCipher::Cipher<PublicKeyCipher::kPublic,
- EVP_PKEY_encrypt_init,
- EVP_PKEY_encrypt>);
- env->SetMethod(target, "privateDecrypt",
-diff --git a/src/node_crypto.h b/src/node_crypto.h
-index 38f49ba5a05063438372471b4a58036190954cd3..8304e719719dae41757071b4463f8631cb1e442f 100644
---- a/src/node_crypto.h
-+++ b/src/node_crypto.h
-@@ -16,12 +16,16 @@
- #include "base-object-inl.h"
-
- #include "v8.h"
-
- #include <openssl/ssl.h>
-+# ifndef OPENSSL_NO_EC
- #include <openssl/ec.h>
-+# endif
-+# ifndef OPENSSL_NO_ECDH
- #include <openssl/ecdh.h>
-+# endif
- #ifndef OPENSSL_NO_ENGINE
- # include <openssl/engine.h>
- #endif // !OPENSSL_NO_ENGINE
- #include <openssl/err.h>
- #include <openssl/evp.h>
-@@ -100,12 +104,16 @@ class SecureContext : public BaseObject {
- static void SetCert(const v8::FunctionCallbackInfo
v8::Value& args);
- static void AddCACert(const v8::FunctionCallbackInfo
v8::Value& args);
- static void AddCRL(const v8::FunctionCallbackInfo
v8::Value& args);
- static void AddRootCerts(const v8::FunctionCallbackInfo
v8::Value& args);
- static void SetCiphers(const v8::FunctionCallbackInfo
v8::Value& args);
-+#ifndef OPENSSL_NO_ECDH
- static void SetECDHCurve(const v8::FunctionCallbackInfo
v8::Value& args);
-+#endif
-+# ifndef OPENSSL_NO_DH
- static void SetDHParam(const v8::FunctionCallbackInfo
v8::Value& args);
-+#endif
- static void SetOptions(const v8::FunctionCallbackInfo
v8::Value& args);
- static void SetSessionIdContext(
- const v8::FunctionCallbackInfo
v8::Value& args);
- static void SetSessionTimeout(
- const v8::FunctionCallbackInfo
v8::Value& args);
-@@ -273,11 +281,15 @@ class SSLWrap {
- unsigned char* outlen,
- const unsigned char* in,
- unsigned int inlen,
- void* arg);
- static int TLSExtStatusCallback(SSL* s, void* arg);
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- static int SSLCertCallback(SSL* s, void* arg);
-+#else
-+ static int SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey);
-+#endif
- static void SSLGetter(v8::Local
v8::String property,
- const v8::PropertyCallbackInfo
v8::Value& info);
-
- void DestroySSL();
- void WaitForCertCb(CertCb cb, void* arg);
-@@ -635,10 +647,11 @@ class PublicKeyCipher {
- EVP_PKEY_cipher_init_t EVP_PKEY_cipher_init,
- EVP_PKEY_cipher_t EVP_PKEY_cipher>
- static void Cipher(const v8::FunctionCallbackInfo
v8::Value& args);
- };
-
-+#ifndef OPENSSL_NO_DH
- class DiffieHellman : public BaseObject {
- public:
- ~DiffieHellman() override {
- if (dh != nullptr) {
- DH_free(dh);
-@@ -680,11 +693,13 @@ class DiffieHellman : public BaseObject {
-
- bool initialised_;
- int verifyError_;
- DH* dh;
- };
-+#endif
-
-+# ifndef OPENSSL_NO_ECDH
- class ECDH : public BaseObject {
- public:
- ~ECDH() override {
- if (key_ != nullptr)
- EC_KEY_free(key_);
-@@ -717,10 +732,11 @@ class ECDH : public BaseObject {
- bool IsKeyValidForCurve(const BIGNUM* private_key);
-
- EC_KEY* key_;
- const EC_GROUP* group_;
- };
-+#endif
-
- bool EntropySource(unsigned char* buffer, size_t length);
- #ifndef OPENSSL_NO_ENGINE
- void SetEngine(const v8::FunctionCallbackInfo
v8::Value& args);
- #endif // !OPENSSL_NO_ENGINE
-diff --git a/src/tls_wrap.cc b/src/tls_wrap.cc
-index 8eab962a66f61c3f3020c59f4db472f286856d97..5d741576720b9e3a0fbc50b08f8f3ebd715148dc 100644
---- a/src/tls_wrap.cc
-+++ b/src/tls_wrap.cc
-@@ -141,11 +141,19 @@ void TLSWrap::InitSSL() {
- }
- #endif // SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
-
- InitNPN(sc_);
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- SSL_set_cert_cb(ssl_, SSLWrap<TLSWrap>::SSLCertCallback, this);
-+#else
-+ /* 1.0.1 and less have at most for the client side the function
-+ SSL_CTX_set_client_cert_cb(ssl_->ctx, SSLWrap<TLSWrap>::SSLCertCallback);
-+ but on the client it is not needed/used by this implementation.
-+ For more info see comments in src/node_crypto.cc Connection::New().
-+ */
-+#endif
-
- if (is_server()) {
- SSL_set_accept_state(ssl_);
- } else if (is_client()) {
- // Enough space for server response (hello, cert)
---
-2.13.5
-
diff --git a/0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch b/0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
deleted file mode 100644
index 8c6db97..0000000
--- a/0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From f1a0660b9186c3f4d55d7c07219126e199c787f9 Mon Sep 17 00:00:00 2001
-From: Adam Majer
amajer@suse.de
-Date: Wed, 21 Dec 2016 11:16:38 +0100
-Subject: [PATCH 3/4] crypto: Use system CAs instead of using bundled ones
-
-NodeJS can already use an external, shared OpenSSL library. This
-library knows where to look for OS managed certificates. Allow
-a compile-time option to use this CA store by default instead of
-using bundled certificates.
-
-In case when using bundled OpenSSL, the paths are also valid for
-majority of Linux systems without additional intervention. If
-this is not set, we can use SSL_CERT_DIR to point it to correct
-location.
-
-Fixes:
https://github.com/nodejs/node/issues/3159
-PR-URL:
https://github.com/nodejs/node/pull/8334
-Reviewed-By: Sam Roberts
vieuxtech@gmail.com
-Reviewed-By: James M Snell
jasnell@gmail.com
-Reviewed-By: Fedor Indutny
fedor.indutny@gmail.com
----
- configure | 7 +++++++
- src/node_crypto.cc | 4 ++++
- 2 files changed, 11 insertions(+)
-
-diff --git a/configure b/configure
-index 821b8771bc8909d8453bc31e3c8d8dc65368c0e4..e64bad9a030693b726e0974f48aefa6e1ad87723 100755
---- a/configure
-+++ b/configure
-@@ -142,10 +142,15 @@ parser.add_option("--openssl-no-asm",
- parser.add_option('--openssl-fips',
- action='store',
- dest='openssl_fips',
- help='Build OpenSSL using FIPS canister .o file in supplied folder')
-
-+parser.add_option('--openssl-use-def-ca-store',
-+ action='store_true',
-+ dest='use_openssl_ca_store',
-+ help='Use OpenSSL supplied CA store instead of compiled-in Mozilla CA copy.')
-+
- shared_optgroup.add_option('--shared-http-parser',
- action='store_true',
- dest='shared_http_parser',
- help='link to a shared http_parser DLL instead of static linking')
-
-@@ -937,10 +942,12 @@ def configure_v8(o):
-
- def configure_openssl(o):
- o['variables']['node_use_openssl'] = b(not options.without_ssl)
- o['variables']['node_shared_openssl'] = b(options.shared_openssl)
- o['variables']['openssl_no_asm'] = 1 if options.openssl_no_asm else 0
-+ if options.use_openssl_ca_store:
-+ o['defines'] += ['NODE_OPENSSL_CERT_STORE']
- if options.openssl_fips:
- o['variables']['openssl_fips'] = options.openssl_fips
- fips_dir = os.path.join(root_dir, 'deps', 'openssl', 'fips')
- fips_ld = os.path.abspath(os.path.join(fips_dir, 'fipsld'))
- o['make_fips_settings'] = [
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index c5630f30d0bef75ced53b36062bb1f0324dbdb9d..873b37d71b51aa62c8ebd56ea5b182567675e2dd 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -803,14 +803,18 @@ static X509_STORE* NewRootCertStore() {
- root_certs_vector->push_back(x509);
- }
- }
-
- X509_STORE* store = X509_STORE_new();
-+#if defined(NODE_OPENSSL_CERT_STORE)
-+ X509_STORE_set_default_paths(store);
-+#else
- for (auto& cert : *root_certs_vector) {
- X509_up_ref(cert);
- X509_STORE_add_cert(store, cert);
- }
-+#endif
-
- return store;
- }
-
-
---
-2.12.0
-
diff --git a/0004-Fix-compatibility-with-GCC-7.patch b/0004-Fix-compatibility-with-GCC-7.patch
deleted file mode 100644
index 55427f7..0000000
--- a/0004-Fix-compatibility-with-GCC-7.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From a75f63218b84ee508c770391519a13bd400a5003 Mon Sep 17 00:00:00 2001
-From: Ben Noordhuis
info@bnoordhuis.nl
-Date: Thu, 13 Apr 2017 13:48:01 +0200
-Subject: [PATCH 4/4] v8: fix build errors with g++ 7
-
-This is a local patch because upstream fixed it differently by moving
-large chunks of code out of objects.h. We cannot easily back-port
-those changes due to their size and invasiveness.
-
-Fixes:
https://github.com/nodejs/node/issues/10388
-PR-URL:
https://github.com/nodejs/node/pull/12392
-Reviewed-By: Anna Henningsen
anna@addaleax.net
-Reviewed-By: Benjamin Gruenbaum
benjamingr@gmail.com
-Reviewed-By: Daniel Bevenius
daniel.bevenius@gmail.com
-Reviewed-By: James M Snell
jasnell@gmail.com
----
- deps/v8/src/objects-body-descriptors.h | 2 +-
- deps/v8/src/objects-inl.h | 21 +++++++++++++++++++++
- deps/v8/src/objects.h | 20 ++++----------------
- 3 files changed, 26 insertions(+), 17 deletions(-)
-
-diff --git a/deps/v8/src/objects-body-descriptors.h b/deps/v8/src/objects-body-descriptors.h
-index 91cb8883be88739eab2b10df71f6f0d08aab436e..a1c3634bd762d7e03b4c87d38aa14a9a3ce318e4 100644
---- a/deps/v8/src/objects-body-descriptors.h
-+++ b/deps/v8/src/objects-body-descriptors.h
-@@ -97,11 +97,11 @@ class FixedBodyDescriptor final : public BodyDescriptorBase {
- IterateBodyImpl<StaticVisitor>(heap, obj, start_offset, end_offset);
- }
-
- template <typename StaticVisitor>
- static inline void IterateBody(HeapObject* obj, int object_size) {
-- IterateBody(obj);
-+ IterateBody<StaticVisitor>(obj);
- }
- };
-
-
- // This class describes a body of an object of a variable size
-diff --git a/deps/v8/src/objects-inl.h b/deps/v8/src/objects-inl.h
-index 11f4d7498d7558f56037483004a3d5839154516b..72208c2f00f4a9ff47ae487fa9a42f8f82cf12ea 100644
---- a/deps/v8/src/objects-inl.h
-+++ b/deps/v8/src/objects-inl.h
-@@ -34,10 +34,31 @@
- #include "src/v8memory.h"
-
- namespace v8 {
- namespace internal {
-
-+template <typename Derived, typename Shape, typename Key>
-+uint32_t HashTable<Derived, Shape, Key>::Hash(Key key) {
-+ if (Shape::UsesSeed) {
-+ return Shape::SeededHash(key, GetHeap()->HashSeed());
-+ } else {
-+ return Shape::Hash(key);
-+ }
-+}
-+
-+
-+template <typename Derived, typename Shape, typename Key>
-+uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key,
-+ Object* object) {
-+ if (Shape::UsesSeed) {
-+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
-+ } else {
-+ return Shape::HashForObject(key, object);
-+ }
-+}
-+
-+
- PropertyDetails::PropertyDetails(Smi* smi) {
- value_ = smi->value();
- }
-
-
-diff --git a/deps/v8/src/objects.h b/deps/v8/src/objects.h
-index d1632c9deb298218faea31886ffdb0a8e0201cdc..47b02dadcff9658c9fcfe629e137667015e12079 100644
---- a/deps/v8/src/objects.h
-+++ b/deps/v8/src/objects.h
-@@ -3259,26 +3259,14 @@ class HashTableBase : public FixedArray {
-
-
- template <typename Derived, typename Shape, typename Key>
- class HashTable : public HashTableBase {
- public:
-- // Wrapper methods
-- inline uint32_t Hash(Key key) {
-- if (Shape::UsesSeed) {
-- return Shape::SeededHash(key, GetHeap()->HashSeed());
-- } else {
-- return Shape::Hash(key);
-- }
-- }
--
-- inline uint32_t HashForObject(Key key, Object* object) {
-- if (Shape::UsesSeed) {
-- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
-- } else {
-- return Shape::HashForObject(key, object);
-- }
-- }
-+ // Wrapper methods. Defined in src/objects-inl.h
-+ // to break a cycle with src/heap/heap.h.
-+ inline uint32_t Hash(Key key);
-+ inline uint32_t HashForObject(Key key, Object* object);
-
- // Returns a new HashTable object.
- MUST_USE_RESULT static Handle<Derived> New(
- Isolate* isolate, int at_least_space_for,
- MinimumCapacity capacity_option = USE_DEFAULT_MINIMUM_CAPACITY,
---
-2.12.2
-
diff --git a/nodejs.spec b/nodejs.spec
index 14ae4bb..fae4b1c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1.3
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -88,37 +88,23 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
-# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
-# RHEL 7.4 now has 1.0.2, but as of this writing, CentOS hasn't picked it up
-# yet. Drop the openssl 1.0.1 compatibility patches once this happens.
-Patch2: 0002-Use-openssl-1.0.1.patch
-
-# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
-# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
-Patch5: EPEL01-openssl101-compat.patch
-
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
-#Requires: http-parser >= 2.7.0
+Requires: http-parser >= 2.7.0
BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
-#BuildRequires: http-parser-devel >= 2.7.0
-Provides: bundled(http-parser) = 2.7.0
+BuildRequires: http-parser-devel >= 2.7.0
-%if 0%{?epel} || 0%{?rhel}
-BuildRequires: openssl-devel >= 1:1.0.1
-%else
%if 0%{?fedora} > 25
BuildRequires: compat-openssl10-devel >= 1:1.0.2
%else
BuildRequires: openssl-devel >= 1:1.0.2
%endif
-%endif
-# we need the system certificate store when Patch2 is applied
+# we need the system certificate store
Requires: ca-certificates
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
@@ -182,7 +168,7 @@ Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: libuv-devel%{?_isa}
-#Requires: http-parser-devel%{?_isa}
+Requires: http-parser-devel%{?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
@@ -231,15 +217,11 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/icu-small \
+rm -rf deps/http-parser \
+ deps/icu-small \
deps/uv \
deps/zlib
-%if 0%{?epel} || 0%{?rhel}
-%patch2 -p1
-%patch5 -p1
-%endif
-
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -264,6 +246,7 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--shared-openssl \
--shared-zlib \
--shared-libuv \
+ --shared-http-parser \
--without-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
@@ -407,6 +390,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Aug 23 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.2-2
+- Move to requiring OpenSSL 1.0.2
+- Unbundle http-parser again
+
* Tue Aug 22 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1.3
- Run gyp on http-parser
commit efe742cebca003105739176d0bb35e121b901771
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue Aug 22 13:15:38 2017 +0200
Fix gyp patch to include http-parser
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-files-for-bundled-deps.patch
index 8777f8e..2a506f5 100644
--- a/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -1,29 +1,25 @@
-From be1738c229765ad0796b97e842515b5d8834c894 Mon Sep 17 00:00:00 2001
+From 55269de7552aebc324cb0333d38d600897555b9c Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
-Date: Wed, 22 Mar 2017 19:13:10 +0100
-Subject: [PATCH 1/3] Disable running gyp files for bundled deps
+Date: Tue, 22 Aug 2017 13:11:56 +0200
+Subject: [PATCH] Disable gyp
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index cfbd426033c7f2882f77cd60faaf3bb0277e6c57..8ca97d5552ebb328d8d6727531b13843864a6e86 100644
+index cfbd426033..ee05b63f8f 100644
--- a/Makefile
+++ b/Makefile
-@@ -75,11 +75,11 @@ $(NODE_EXE): config.gypi out/Makefile
-
- $(NODE_G_EXE): config.gypi out/Makefile
+@@ -77,7 +77,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
-out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
-+out/Makefile: common.gypi deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
++out/Makefile: common.gypi deps/http_parser/http_parser.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
- $(error Missing or stale $@, please run ./$<)
-
--
-2.13.5
+2.14.1
diff --git a/nodejs.spec b/nodejs.spec
index 52cd741..14ae4bb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1.2
+%global nodejs_release 1.3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -407,6 +407,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Aug 22 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1.3
+- Run gyp on http-parser
+
* Tue Aug 15 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.2-1.2
- Add bundled Provides for http-parser
commit e8fe25864be885fd04e49cdbc368b7e8e42444a3
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Aug 16 15:36:43 2017 +0200
Update, remove old patches, add http2 support
diff --git a/.gitignore b/.gitignore
index 56dc32d..3b9d78e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -74,3 +74,4 @@
/node-v8.2.0-stripped.tar.gz
/node-v8.2.1-stripped.tar.gz
/node-v8.3.0-stripped.tar.gz
+/node-v8.4.0-stripped.tar.gz
diff --git a/0002-Use-openssl-1.0.1.patch b/0002-Use-openssl-1.0.1.patch
deleted file mode 100644
index 4b90ade..0000000
--- a/0002-Use-openssl-1.0.1.patch
+++ /dev/null
@@ -1,648 +0,0 @@
-From 91d1a67b8cc249af59929cd1a76629a2614860bd Mon Sep 17 00:00:00 2001
-From: Haikel Guemar
hguemar@fedoraproject.org
-Date: Tue, 26 Jul 2016 22:50:22 +0200
-Subject: [PATCH 2/4] Use openssl 1.0.1
-
-Based on Solaris patches from upstream #2783
-
https://github.com/nodejs/node/issues/2783
----
- doc/api/tls.md | 6 ++
- src/node_constants.cc | 5 ++
- src/node_crypto.cc | 201 ++++++++++++++++++++++++++++++++++++++++++++++----
- src/node_crypto.h | 16 ++++
- src/tls_wrap.cc | 8 ++
- 5 files changed, 223 insertions(+), 13 deletions(-)
-
-diff --git a/doc/api/tls.md b/doc/api/tls.md
-index 3784210ba7b6c046b39d74b45e44538041d35ae2..3c9d72b8d5ef81d15773aed077bd00d2041c9e93 100644
---- a/doc/api/tls.md
-+++ b/doc/api/tls.md
-@@ -113,10 +113,16 @@ handshake extensions:
- * ALPN/NPN - Allows the use of one TLS server for multiple protocols (HTTP,
- SPDY, HTTP/2)
- * SNI - Allows the use of one TLS server for multiple hostnames with different
- SSL certificates.
-
-+ **NOTE**: dueto a design flaw in node **SNI cannot be
-+ used on the server side**, even so all parameters in related functions are
-+ accepted for compatibility reasons. And thus the related events will not
-+ fire unless one aranges this explicitly. This may change, when the OS
-+ provides OpenSSL v1.0.2 or better and node gets linked to this version.
-+
- *Note*: Use of ALPN is recommended over NPN. The NPN extension has never been
- formally defined or documented and generally not recommended for use.
-
- ### Client-initiated renegotiation attack mitigation
-
-diff --git a/src/node_constants.cc b/src/node_constants.cc
-index 2e6be8df37c345a383d8a78898daf2a147d90630..239eadbac8ea8e601745a63347a8bb301c22d1b1 100644
---- a/src/node_constants.cc
-+++ b/src/node_constants.cc
-@@ -12,11 +12,14 @@
- #include <signal.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-
- #if HAVE_OPENSSL
-+# include <openssl/opensslconf.h>
-+# ifndef OPENSSL_NO_EC
- # include <openssl/ec.h>
-+# endif
- # include <openssl/ssl.h>
- # ifndef OPENSSL_NO_ENGINE
- # include <openssl/engine.h>
- # endif // !OPENSSL_NO_ENGINE
- #endif
-@@ -974,16 +977,18 @@ void DefineOpenSSLConstants(Local<Object> target) {
- NODE_DEFINE_CONSTANT(target, RSA_PKCS1_PSS_PADDING);
- #endif
-
- #if HAVE_OPENSSL
- // NOTE: These are not defines
-+# ifndef OPENSSL_NO_EC
- NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_COMPRESSED);
-
- NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_UNCOMPRESSED);
-
- NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_HYBRID);
- #endif
-+#endif
- }
-
- void DefineSystemConstants(Local<Object> target) {
- // file access modes
- NODE_DEFINE_CONSTANT(target, O_RDONLY);
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f0324dbdb9d 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -22,10 +22,86 @@
- #include <limits.h> // INT_MAX
- #include <math.h>
- #include <stdlib.h>
- #include <string.h>
-
-+#ifndef SSL_get_server_tmp_key
-+/*
-+ 1.0.2 SSL_get_server_tmp_key(s, pk) "backport". BAD HACK!!!
-+ NOTE: This imports "foreign" knowledge and thus will break, when SESS_CERT
-+ or CERT_PKEY change, which is definitely the case for the later for
-+ all OpenSSL lib vers != 1.0.1. So don't try to bind to something else!
-+ */
-+# define SSL_PKEY_NUM 8
-+typedef struct cert_pkey_st {
-+ X509 *x509;
-+ EVP_PKEY *privatekey;
-+ /* Digest to use when signing */
-+ const EVP_MD *digest;
-+} CERT_PKEY;
-+
-+typedef struct sess_cert_st {
-+ STACK_OF(X509) *cert_chain; /* as received from peer (not for SSL2) */
-+ /* The 'peer_...' members are used only by clients. */
-+ int peer_cert_type;
-+ CERT_PKEY *peer_key; /* points to an element of peer_pkeys (never
-+ * NULL!) */
-+ CERT_PKEY peer_pkeys[SSL_PKEY_NUM];
-+ /*
-+ * Obviously we don't have the private keys of these, so maybe we
-+ * shouldn't even use the CERT_PKEY type here.
-+ */
-+# ifndef OPENSSL_NO_RSA
-+ RSA *peer_rsa_tmp; /* not used for SSL 2 */
-+# endif
-+# ifndef OPENSSL_NO_DH
-+ DH *peer_dh_tmp; /* not used for SSL 2 */
-+# endif
-+# ifndef OPENSSL_NO_ECDH
-+ EC_KEY *peer_ecdh_tmp;
-+# endif
-+ int references; /* actually always 1 at the moment */
-+} SESS_CERT;
-+
-+static long SSL_get_server_tmp_key(SSL *s, void *parg) {
-+ if (s->server || !s->session || !s->session->sess_cert)
-+ return 0;
-+ else {
-+ SESS_CERT *sc;
-+ EVP_PKEY *ptmp;
-+ int rv = 0;
-+ sc = s->session->sess_cert;
-+#if !defined(OPENSSL_NO_RSA) && !defined(OPENSSL_NO_DH) && !defined(OPENSSL_NO_EC) && !defined(OPENSSL_NO_ECDH)
-+ if (!sc->peer_rsa_tmp && !sc->peer_dh_tmp && !sc->peer_ecdh_tmp)
-+ return 0;
-+#endif
-+ ptmp = EVP_PKEY_new();
-+ if (!ptmp)
-+ return 0;
-+ if (0) ;
-+#ifndef OPENSSL_NO_RSA
-+ else if (sc->peer_rsa_tmp)
-+ rv = EVP_PKEY_set1_RSA(ptmp, sc->peer_rsa_tmp);
-+#endif
-+#ifndef OPENSSL_NO_DH
-+ else if (sc->peer_dh_tmp)
-+ rv = EVP_PKEY_set1_DH(ptmp, sc->peer_dh_tmp);
-+#endif
-+#ifndef OPENSSL_NO_ECDH
-+ else if (sc->peer_ecdh_tmp)
-+ rv = EVP_PKEY_set1_EC_KEY(ptmp, sc->peer_ecdh_tmp);
-+#endif
-+ if (rv) {
-+ *(EVP_PKEY **)parg = ptmp;
-+ return 1;
-+ }
-+ EVP_PKEY_free(ptmp);
-+ return 0;
-+ }
-+}
-+#endif /* SSL_get_server_tmp_key */
-+
- #define THROW_AND_RETURN_IF_NOT_STRING_OR_BUFFER(val, prefix) \
- do { \
- if (!Buffer::HasInstance(val) && !val->IsString()) { \
- return env->ThrowTypeError(prefix " must be a string or a buffer"); \
- } \
-@@ -161,11 +237,15 @@ template int SSLWrap<TLSWrap>::SelectNextProtoCallback(
- #ifdef NODE__HAVE_TLSEXT_STATUS_CB
- template int SSLWrap<TLSWrap>::TLSExtStatusCallback(SSL* s, void* arg);
- #endif
-
- template void SSLWrap<TLSWrap>::DestroySSL();
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- template int SSLWrap<TLSWrap>::SSLCertCallback(SSL* s, void* arg);
-+#else
-+template int SSLWrap<TLSWrap>::SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey);
-+#endif
- template void SSLWrap<TLSWrap>::WaitForCertCb(CertCb cb, void* arg);
-
- #ifdef TLSEXT_TYPE_application_layer_protocol_negotiation
- template int SSLWrap<TLSWrap>::SelectALPNCallback(
- SSL* s,
-@@ -281,12 +361,16 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
- env->SetProtoMethod(t, "setCert", SecureContext::SetCert);
- env->SetProtoMethod(t, "addCACert", SecureContext::AddCACert);
- env->SetProtoMethod(t, "addCRL", SecureContext::AddCRL);
- env->SetProtoMethod(t, "addRootCerts", SecureContext::AddRootCerts);
- env->SetProtoMethod(t, "setCiphers", SecureContext::SetCiphers);
-+#ifndef OPENSSL_NO_ECDH
- env->SetProtoMethod(t, "setECDHCurve", SecureContext::SetECDHCurve);
-+#endif
-+#ifndef OPENSSL_NO_DH
- env->SetProtoMethod(t, "setDHParam", SecureContext::SetDHParam);
-+#endif
- env->SetProtoMethod(t, "setOptions", SecureContext::SetOptions);
- env->SetProtoMethod(t, "setSessionIdContext",
- SecureContext::SetSessionIdContext);
- env->SetProtoMethod(t, "setSessionTimeout",
- SecureContext::SetSessionTimeout);
-@@ -514,12 +598,24 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
- SSL_CTX_clear_extra_chain_certs(ctx);
-
- for (int i = 0; i < sk_X509_num(extra_certs); i++) {
- X509* ca = sk_X509_value(extra_certs, i);
-
-- // NOTE: Increments reference count on `ca`
-- r = SSL_CTX_add1_chain_cert(ctx, ca);
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+ // If ctx->cert->key != NULL create ctx->cert->key->chain if not
-+ // already there, push 'ca' to this chain and finally increment the ca
-+ // reference count by 1 (this is the diff between *_add1_* and *_add0_*
-+ // - the later increments by 0 ;-)) and return 1. Otherwise or if
-+ // something fails in between, return 0.
-+ r = SSL_CTX_add1_chain_cert(ctx, ca);
-+#else
-+ // Create ctx->extra_certs if not already there, just push 'ca' to this
-+ // chain and return 1. If something fails, return 0.
-+ // NOTE: 1.0.1- does not support multiple certs having its own chain in
-+ // a single context. There is just one: extra_chain!
-+ r = SSL_CTX_add_extra_chain_cert(ctx, ca);
-+#endif
-
- if (!r) {
- ret = 0;
- *issuer = nullptr;
- goto end;
-@@ -868,10 +964,11 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
- const node::Utf8Value ciphers(args.GetIsolate(), args[0]);
- SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
- }
-
-
-+#ifndef OPENSSL_NO_ECDH
- void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
- ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
- Environment* env = sc->env();
-
-@@ -895,12 +992,14 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
- SSL_CTX_set_options(sc->ctx_, SSL_OP_SINGLE_ECDH_USE);
- SSL_CTX_set_tmp_ecdh(sc->ctx_, ecdh);
-
- EC_KEY_free(ecdh);
- }
-+#endif
-
-
-+#ifndef OPENSSL_NO_DH
- void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
- ASSIGN_OR_RETURN_UNWRAP(&sc, args.This());
- Environment* env = sc->env();
- ClearErrorOnReturn clear_error_on_return;
-@@ -935,10 +1034,11 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
- DH_free(dh);
-
- if (!r)
- return env->ThrowTypeError("Error setting temp DH parameter");
- }
-+#endif
-
-
- void SecureContext::SetOptions(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
- ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
-@@ -1952,10 +2052,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
- info->Set(env->type_string(),
- FIXED_ONE_BYTE_STRING(env->isolate(), "DH"));
- info->Set(env->size_string(),
- Integer::New(env->isolate(), EVP_PKEY_bits(key)));
- break;
-+#ifndef OPENSSL_NO_ECDH
- case EVP_PKEY_EC:
- {
- EC_KEY* ec = EVP_PKEY_get1_EC_KEY(key);
- int nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec));
- EC_KEY_free(ec);
-@@ -1964,10 +2065,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
- info->Set(env->name_string(),
- OneByteString(args.GetIsolate(), OBJ_nid2sn(nid)));
- info->Set(env->size_string(),
- Integer::New(env->isolate(), EVP_PKEY_bits(key)));
- }
-+#endif
- }
- EVP_PKEY_free(key);
- }
-
- return args.GetReturnValue().Set(info);
-@@ -2382,11 +2484,16 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
- cert_cb_arg_ = arg;
- }
-
-
- template <class Base>
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- int SSLWrap<Base>::SSLCertCallback(SSL* s, void* arg) {
-+#else
-+/* NOTE: For now this callback gets usually never called dueto design flaws */
-+int SSLWrap<Base>::SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey) {
-+#endif
- Base* w = static_cast<Base*>(SSL_get_app_data(s));
-
- if (!w->is_server())
- return 1;
-
-@@ -2451,23 +2558,57 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
- ASSIGN_OR_RETURN_UNWRAP(&sc, ctx.As<Object>());
- w->sni_context_.Reset();
- w->sni_context_.Reset(env->isolate(), ctx);
-
- int rv;
-+ X509* x509;
-+ EVP_PKEY* pkey;
-+ STACK_OF(X509)* chain;
-
- // NOTE: reference count is not increased by this API methods
-- X509* x509 = SSL_CTX_get0_certificate(sc->ctx_);
-- EVP_PKEY* pkey = SSL_CTX_get0_privatekey(sc->ctx_);
-- STACK_OF(X509)* chain;
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+ x509 = SSL_CTX_get0_certificate(sc->ctx_);
-+ pkey = SSL_CTX_get0_privatekey(sc->ctx_);
-+ rv = SSL_CTX_get0_chain_certs(sc->ctx_, &chain);
-+#else
-+ SSL *ssl = SSL_new(sc->ctx_);
-+ rv = SSL_CTX_get_extra_chain_certs(sc->ctx_, &chain);
-+ if (ssl) {
-+ SSL_set_connect_state(ssl); /* just cleanup/reset state - cheap */
-+ x509 = SSL_get_certificate(ssl);
-+ SSL_free(ssl);
-+ } else {
-+ x509 = NULL;
-+ pkey = NULL;
-+ }
-+#endif
-
-- rv = SSL_CTX_get0_chain_certs(sc->ctx_, &chain);
-- if (rv)
-- rv = SSL_use_certificate(w->ssl_, x509);
-- if (rv)
-- rv = SSL_use_PrivateKey(w->ssl_, pkey);
-- if (rv && chain != nullptr)
-- rv = SSL_set1_chain(w->ssl_, chain);
-+ if (rv)
-+ rv = SSL_use_certificate(w->ssl_, x509);
-+ if (rv)
-+ rv = SSL_use_PrivateKey(w->ssl_, pkey);
-+ if (rv && chain != nullptr) {
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
-+ // replaces w->ssl_->cert->key->chain with a copy of the given chain,
-+ // which is allowed to be NULL
-+ rv = SSL_set1_chain(w->ssl_, chain);
-+#else
-+ // just replace the extra chain with the given chain - 1.0.1- does not
-+ // support chain per cert
-+ SSL_CTX_clear_extra_chain_certs(w->ssl_->ctx);
-+ if (chain != NULL) {
-+ int i;
-+ SSL_CTX* ctx = w->ssl_->ctx;
-+ for (i = 0; i < sk_X509_num(chain); i++) {
-+ // can't do anything: however others might be ok and still
-+ // satisfy requirements
-+ SSL_CTX_add_extra_chain_cert(ctx, sk_X509_value(chain,i));
-+ }
-+ }
-+ rv = 1;
-+#endif
-+ }
- if (rv)
- rv = w->SetCACerts(sc);
- if (!rv) {
- unsigned long err = ERR_get_error(); // NOLINT(runtime/int)
- if (!err)
-@@ -2527,14 +2668,18 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
- }
-
-
- template <class Base>
- int SSLWrap<Base>::SetCACerts(SecureContext* sc) {
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- int err = SSL_set1_verify_cert_store(ssl_, SSL_CTX_get_cert_store(sc->ctx_));
- if (err != 1)
- return err;
--
-+#else
-+ // there is no ssl_->cert->verify_store in <= 1.0.1. So no need to: free the
-+ // old store, set the new one to it and increment its ref count.
-+#endif
- STACK_OF(X509_NAME)* list = SSL_dup_CA_list(
- SSL_CTX_get_client_CA_list(sc->ctx_));
-
- // NOTE: `SSL_set_client_CA_list` takes the ownership of `list`
- SSL_set_client_CA_list(ssl_, list);
-@@ -2808,11 +2953,15 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
-
- // Server does not need to check the whitelist.
- SSL* ssl = static_cast<SSL*>(
- X509_STORE_CTX_get_ex_data(ctx, SSL_get_ex_data_X509_STORE_CTX_idx()));
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- if (SSL_is_server(ssl))
-+#else
-+ if (ssl->server)
-+#endif
- return 1;
-
- // Client needs to check if the server cert is listed in the
- // whitelist when it is issued by the specific rootCAs.
- CheckResult ret = CheckWhitelistedServerCert(ctx);
-@@ -2891,11 +3040,25 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
- if (is_server)
- SSL_set_info_callback(conn->ssl_, SSLInfoCallback);
-
- InitNPN(sc);
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- SSL_set_cert_cb(conn->ssl_, SSLWrap<Connection>::SSLCertCallback, conn);
-+#else
-+ /* 1.0.1 and less have no general cert callback. The closest for a client is
-+ SSL_CTX_set_client_cert_cb(conn->ssl_->ctx, SSLWrap<Connection>::SSLCertCallback);
-+ but on the client it is not needed/used by this implementation. Since this
-+ the SSLCertCallback actually calls lib/_tls_wrap.js:oncertcb(), which in
-+ turn loadSNI() and this the actual SNICallback of the JSON object, sets
-+ the context and finally requestOCSP() and certCbDone(). Not sure, why
-+ the SNICallback of the JSON object, doesn't get invoked via
-+ SelectSNIContextCallback_() - design flaw because lets do 2 things at once
-+ (i.e. do SNICallback and attach the certs ca chain), however, this means
-+ no server side support for the SNI TLS/OCSP_state extension anymore.
-+ */
-+#endif
-
- #ifdef SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
- if (is_server) {
- SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
- } else if (args[2]->IsString()) {
-@@ -4476,10 +4639,11 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
- args.GetReturnValue().Set(vbuf);
- delete[] out_value;
- }
-
-
-+#ifndef OPENSSL_NO_DH
- void DiffieHellman::Initialize(Environment* env, Local<Object> target) {
- Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
-
- const PropertyAttribute attributes =
- static_cast<PropertyAttribute>(v8::ReadOnly | v8::DontDelete);
-@@ -4877,12 +5041,14 @@ bool DiffieHellman::VerifyContext() {
- if (!DH_check(dh, &codes))
- return false;
- verifyError_ = codes;
- return true;
- }
-+#endif
-
-
-+#ifndef OPENSSL_NO_ECDH
- void ECDH::Initialize(Environment* env, Local<Object> target) {
- HandleScope scope(env->isolate());
-
- Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
-
-@@ -5106,10 +5272,11 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
- return env->ThrowError("Failed to set generated public key");
- }
-
- EC_POINT_free(pub);
- }
-+#endif
-
-
- void ECDH::SetPublicKey(const FunctionCallbackInfo<Value>& args) {
- Environment* env = Environment::GetCurrent(args);
-
-@@ -5659,10 +5826,11 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
- EVP_MD_do_all_sorted(array_push_back<EVP_MD>, &ctx);
- args.GetReturnValue().Set(ctx.arr);
- }
-
-
-+# ifndef OPENSSL_NO_EC
- void GetCurves(const FunctionCallbackInfo<Value>& args) {
- Environment* env = Environment::GetCurrent(args);
- const size_t num_curves = EC_get_builtin_curves(nullptr, 0);
- Local<Array> arr = Array::New(env->isolate(), num_curves);
- EC_builtin_curve* curves;
-@@ -5683,10 +5851,11 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
- free(curves);
- }
-
- args.GetReturnValue().Set(arr);
- }
-+#endif
-
-
- bool VerifySpkac(const char* data, unsigned int len) {
- bool i = 0;
- EVP_PKEY* pkey = nullptr;
-@@ -5995,12 +6164,16 @@ void InitCrypto(Local<Object> target,
-
- Environment* env = Environment::GetCurrent(context);
- SecureContext::Initialize(env, target);
- Connection::Initialize(env, target);
- CipherBase::Initialize(env, target);
-+# ifndef OPENSSL_NO_EC
- DiffieHellman::Initialize(env, target);
-+#endif
-+#ifndef OPENSSL_NO_ECDH
- ECDH::Initialize(env, target);
-+#endif
- Hmac::Initialize(env, target);
- Hash::Initialize(env, target);
- Sign::Initialize(env, target);
- Verify::Initialize(env, target);
-
-@@ -6016,11 +6189,13 @@ void InitCrypto(Local<Object> target,
- env->SetMethod(target, "randomBytes", RandomBytes);
- env->SetMethod(target, "timingSafeEqual", TimingSafeEqual);
- env->SetMethod(target, "getSSLCiphers", GetSSLCiphers);
- env->SetMethod(target, "getCiphers", GetCiphers);
- env->SetMethod(target, "getHashes", GetHashes);
-+# ifndef OPENSSL_NO_EC
- env->SetMethod(target, "getCurves", GetCurves);
-+#endif
- env->SetMethod(target, "publicEncrypt",
- PublicKeyCipher::Cipher<PublicKeyCipher::kPublic,
- EVP_PKEY_encrypt_init,
- EVP_PKEY_encrypt>);
- env->SetMethod(target, "privateDecrypt",
-diff --git a/src/node_crypto.h b/src/node_crypto.h
-index 175206c40df58602b0c24d039b8b5a8bb6f56ba3..5ecc43b08d0b4d97311f09271a26f5a735a6e018 100644
---- a/src/node_crypto.h
-+++ b/src/node_crypto.h
-@@ -16,12 +16,16 @@
- #include "base-object-inl.h"
-
- #include "v8.h"
-
- #include <openssl/ssl.h>
-+# ifndef OPENSSL_NO_EC
- #include <openssl/ec.h>
-+# endif
-+# ifndef OPENSSL_NO_ECDH
- #include <openssl/ecdh.h>
-+# endif
- #ifndef OPENSSL_NO_ENGINE
- # include <openssl/engine.h>
- #endif // !OPENSSL_NO_ENGINE
- #include <openssl/err.h>
- #include <openssl/evp.h>
-@@ -100,12 +104,16 @@ class SecureContext : public BaseObject {
- static void SetCert(const v8::FunctionCallbackInfo
v8::Value& args);
- static void AddCACert(const v8::FunctionCallbackInfo
v8::Value& args);
- static void AddCRL(const v8::FunctionCallbackInfo
v8::Value& args);
- static void AddRootCerts(const v8::FunctionCallbackInfo
v8::Value& args);
- static void SetCiphers(const v8::FunctionCallbackInfo
v8::Value& args);
-+#ifndef OPENSSL_NO_ECDH
- static void SetECDHCurve(const v8::FunctionCallbackInfo
v8::Value& args);
-+#endif
-+# ifndef OPENSSL_NO_DH
- static void SetDHParam(const v8::FunctionCallbackInfo
v8::Value& args);
-+#endif
- static void SetOptions(const v8::FunctionCallbackInfo
v8::Value& args);
- static void SetSessionIdContext(
- const v8::FunctionCallbackInfo
v8::Value& args);
- static void SetSessionTimeout(
- const v8::FunctionCallbackInfo
v8::Value& args);
-@@ -273,11 +281,15 @@ class SSLWrap {
- unsigned char* outlen,
- const unsigned char* in,
- unsigned int inlen,
- void* arg);
- static int TLSExtStatusCallback(SSL* s, void* arg);
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- static int SSLCertCallback(SSL* s, void* arg);
-+#else
-+ static int SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey);
-+#endif
- static void SSLGetter(v8::Local
v8::String property,
- const v8::PropertyCallbackInfo
v8::Value& info);
-
- void DestroySSL();
- void WaitForCertCb(CertCb cb, void* arg);
-@@ -635,10 +647,11 @@ class PublicKeyCipher {
- EVP_PKEY_cipher_init_t EVP_PKEY_cipher_init,
- EVP_PKEY_cipher_t EVP_PKEY_cipher>
- static void Cipher(const v8::FunctionCallbackInfo
v8::Value& args);
- };
-
-+#ifndef OPENSSL_NO_DH
- class DiffieHellman : public BaseObject {
- public:
- ~DiffieHellman() override {
- if (dh != nullptr) {
- DH_free(dh);
-@@ -680,11 +693,13 @@ class DiffieHellman : public BaseObject {
-
- bool initialised_;
- int verifyError_;
- DH* dh;
- };
-+#endif
-
-+# ifndef OPENSSL_NO_ECDH
- class ECDH : public BaseObject {
- public:
- ~ECDH() override {
- if (key_ != nullptr)
- EC_KEY_free(key_);
-@@ -717,10 +732,11 @@ class ECDH : public BaseObject {
- bool IsKeyValidForCurve(const BIGNUM* private_key);
-
- EC_KEY* key_;
- const EC_GROUP* group_;
- };
-+#endif
-
- bool EntropySource(unsigned char* buffer, size_t length);
- #ifndef OPENSSL_NO_ENGINE
- void SetEngine(const v8::FunctionCallbackInfo
v8::Value& args);
- #endif // !OPENSSL_NO_ENGINE
-diff --git a/src/tls_wrap.cc b/src/tls_wrap.cc
-index d1b1aeccdd95b00b3fd0421c08fd7816cd70d182..a6e63d7c1ccc81e6f7d782dffe833234b003de15 100644
---- a/src/tls_wrap.cc
-+++ b/src/tls_wrap.cc
-@@ -140,11 +140,19 @@ void TLSWrap::InitSSL() {
- }
- #endif // SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
-
- InitNPN(sc_);
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10002000L
- SSL_set_cert_cb(ssl_, SSLWrap<TLSWrap>::SSLCertCallback, this);
-+#else
-+ /* 1.0.1 and less have at most for the client side the function
-+ SSL_CTX_set_client_cert_cb(ssl_->ctx, SSLWrap<TLSWrap>::SSLCertCallback);
-+ but on the client it is not needed/used by this implementation.
-+ For more info see comments in src/node_crypto.cc Connection::New().
-+ */
-+#endif
-
- if (is_server()) {
- SSL_set_accept_state(ssl_);
- } else if (is_client()) {
- // Enough space for server response (hello, cert)
---
-2.12.0
-
diff --git a/0003-c-ares-NAPTR-parser-out-of-bounds-access.patch b/0003-c-ares-NAPTR-parser-out-of-bounds-access.patch
deleted file mode 100644
index 1a011bb..0000000
--- a/0003-c-ares-NAPTR-parser-out-of-bounds-access.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 15dfe22be278cb1f0194de0b0ab790ba9dc4fc33 Mon Sep 17 00:00:00 2001
-From: Zuzana Svetlikova
zsvetlik@redhat.com
-Date: Fri, 23 Jun 2017 23:11:28 +0200
-Subject: [PATCH] c-ares NAPTR parser out of bounds access
-
-CVE: CVE-2017-1000381
-Upstream bug:
https://c-ares.haxx.se/adv_20170620.html
----
- deps/cares/src/ares_parse_naptr_reply.c | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/deps/cares/src/ares_parse_naptr_reply.c b/deps/cares/src/ares_parse_naptr_reply.c
-index 11634df984..717d355778 100644
---- a/deps/cares/src/ares_parse_naptr_reply.c
-+++ b/deps/cares/src/ares_parse_naptr_reply.c
-@@ -110,6 +110,12 @@ ares_parse_naptr_reply (const unsigned char *abuf, int alen,
- status = ARES_EBADRESP;
- break;
- }
-+ /* RR must contain at least 7 bytes = 2 x int16 + 3 x name */
-+ if (rr_len < 7)
-+ {
-+ status = ARES_EBADRESP;
-+ break;
-+ }
-
- /* Check if we are really looking at a NAPTR record */
- if (rr_class == C_IN && rr_type == T_NAPTR)
-@@ -185,4 +191,3 @@ ares_parse_naptr_reply (const unsigned char *abuf, int alen,
-
- return ARES_SUCCESS;
- }
--
---
-2.13.1
-
diff --git a/0004-Fix-compatibility-with-GCC-7.patch b/0004-Fix-compatibility-with-GCC-7.patch
deleted file mode 100644
index 55427f7..0000000
--- a/0004-Fix-compatibility-with-GCC-7.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From a75f63218b84ee508c770391519a13bd400a5003 Mon Sep 17 00:00:00 2001
-From: Ben Noordhuis
info@bnoordhuis.nl
-Date: Thu, 13 Apr 2017 13:48:01 +0200
-Subject: [PATCH 4/4] v8: fix build errors with g++ 7
-
-This is a local patch because upstream fixed it differently by moving
-large chunks of code out of objects.h. We cannot easily back-port
-those changes due to their size and invasiveness.
-
-Fixes:
https://github.com/nodejs/node/issues/10388
-PR-URL:
https://github.com/nodejs/node/pull/12392
-Reviewed-By: Anna Henningsen
anna@addaleax.net
-Reviewed-By: Benjamin Gruenbaum
benjamingr@gmail.com
-Reviewed-By: Daniel Bevenius
daniel.bevenius@gmail.com
-Reviewed-By: James M Snell
jasnell@gmail.com
----
- deps/v8/src/objects-body-descriptors.h | 2 +-
- deps/v8/src/objects-inl.h | 21 +++++++++++++++++++++
- deps/v8/src/objects.h | 20 ++++----------------
- 3 files changed, 26 insertions(+), 17 deletions(-)
-
-diff --git a/deps/v8/src/objects-body-descriptors.h b/deps/v8/src/objects-body-descriptors.h
-index 91cb8883be88739eab2b10df71f6f0d08aab436e..a1c3634bd762d7e03b4c87d38aa14a9a3ce318e4 100644
---- a/deps/v8/src/objects-body-descriptors.h
-+++ b/deps/v8/src/objects-body-descriptors.h
-@@ -97,11 +97,11 @@ class FixedBodyDescriptor final : public BodyDescriptorBase {
- IterateBodyImpl<StaticVisitor>(heap, obj, start_offset, end_offset);
- }
-
- template <typename StaticVisitor>
- static inline void IterateBody(HeapObject* obj, int object_size) {
-- IterateBody(obj);
-+ IterateBody<StaticVisitor>(obj);
- }
- };
-
-
- // This class describes a body of an object of a variable size
-diff --git a/deps/v8/src/objects-inl.h b/deps/v8/src/objects-inl.h
-index 11f4d7498d7558f56037483004a3d5839154516b..72208c2f00f4a9ff47ae487fa9a42f8f82cf12ea 100644
---- a/deps/v8/src/objects-inl.h
-+++ b/deps/v8/src/objects-inl.h
-@@ -34,10 +34,31 @@
- #include "src/v8memory.h"
-
- namespace v8 {
- namespace internal {
-
-+template <typename Derived, typename Shape, typename Key>
-+uint32_t HashTable<Derived, Shape, Key>::Hash(Key key) {
-+ if (Shape::UsesSeed) {
-+ return Shape::SeededHash(key, GetHeap()->HashSeed());
-+ } else {
-+ return Shape::Hash(key);
-+ }
-+}
-+
-+
-+template <typename Derived, typename Shape, typename Key>
-+uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key,
-+ Object* object) {
-+ if (Shape::UsesSeed) {
-+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
-+ } else {
-+ return Shape::HashForObject(key, object);
-+ }
-+}
-+
-+
- PropertyDetails::PropertyDetails(Smi* smi) {
- value_ = smi->value();
- }
-
-
-diff --git a/deps/v8/src/objects.h b/deps/v8/src/objects.h
-index d1632c9deb298218faea31886ffdb0a8e0201cdc..47b02dadcff9658c9fcfe629e137667015e12079 100644
---- a/deps/v8/src/objects.h
-+++ b/deps/v8/src/objects.h
-@@ -3259,26 +3259,14 @@ class HashTableBase : public FixedArray {
-
-
- template <typename Derived, typename Shape, typename Key>
- class HashTable : public HashTableBase {
- public:
-- // Wrapper methods
-- inline uint32_t Hash(Key key) {
-- if (Shape::UsesSeed) {
-- return Shape::SeededHash(key, GetHeap()->HashSeed());
-- } else {
-- return Shape::Hash(key);
-- }
-- }
--
-- inline uint32_t HashForObject(Key key, Object* object) {
-- if (Shape::UsesSeed) {
-- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
-- } else {
-- return Shape::HashForObject(key, object);
-- }
-- }
-+ // Wrapper methods. Defined in src/objects-inl.h
-+ // to break a cycle with src/heap/heap.h.
-+ inline uint32_t Hash(Key key);
-+ inline uint32_t HashForObject(Key key, Object* object);
-
- // Returns a new HashTable object.
- MUST_USE_RESULT static Handle<Derived> New(
- Isolate* isolate, int at_least_space_for,
- MinimumCapacity capacity_option = USE_DEFAULT_MINIMUM_CAPACITY,
---
-2.12.2
-
diff --git a/EPEL01-openssl101-compat.patch b/EPEL01-openssl101-compat.patch
deleted file mode 100644
index f419f95..0000000
--- a/EPEL01-openssl101-compat.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -ru a/src/node_crypto.cc b/src/node_crypto.cc
---- a/src/node_crypto.cc 2017-03-31 22:39:56.483283868 +0200
-+++ b/src/node_crypto.cc 2017-03-31 22:45:36.250267750 +0200
-@@ -851,8 +851,6 @@
- }
- }
-
-- // Increment reference count so global store is not deleted along with CTX.
-- X509_STORE_up_ref(root_cert_store);
- SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
- }
-
-diff -ru a/src/node_crypto.h b/src/node_crypto.h
---- a/src/node_crypto.h 2017-03-21 20:43:33.000000000 +0100
-+++ b/src/node_crypto.h 2017-03-31 22:43:15.548183432 +0200
-@@ -145,6 +145,13 @@
- }
-
- env()->isolate()->AdjustAmountOfExternalAllocatedMemory(-kExternalSize);
-+ if (ctx_->cert_store == root_cert_store) {
-+ // SSL_CTX_free() will attempt to free the cert_store as well.
-+ // Since we want our root_cert_store to stay around forever
-+ // we just clear the field. Hopefully OpenSSL will not modify this
-+ // struct in future versions.
-+ ctx_->cert_store = nullptr;
-+ }
- SSL_CTX_free(ctx_);
- if (cert_ != nullptr)
- X509_free(cert_);
-
diff --git a/nodejs.spec b/nodejs.spec
index 223fdf4..c3a7869 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -17,7 +17,7 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 3
+%global nodejs_minor 4
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -97,13 +97,6 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
-# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
-Patch2: 0002-Use-openssl-1.0.1.patch
-
-# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
-# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
-Patch5: EPEL01-openssl101-compat.patch
-
BuildRequires: python2-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
@@ -173,6 +166,10 @@ Provides: bundled(c-ares) = %{c_ares_version}
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
Provides: bundled(v8) = %{v8_version}
+# As of v8.4.0, Node.js has http/2 support. They however don't provide --shared-<lib>
+# option yet.
+Provides: bundled(nghttp2) = 1.22.0
+
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?epel}
# EPEL doesn't support Recommends, so make it strict
@@ -283,6 +280,8 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--shared-http-parser \
--with-dtrace \
--with-intl=system-icu \
+ --debug-http2 \
+ --debug-nghttp2 \
--openssl-use-def-ca-store
%else
./configure --prefix=%{_prefix} \
@@ -291,6 +290,8 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--shared-libuv \
--without-dtrace \
--with-intl=system-icu \
+ --debug-http2 \
+ --debug-nghttp2 \
--openssl-use-def-ca-store
%endif
@@ -443,6 +444,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Aug 16 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.4.0-1
+- Update to v8.4.0
+-
https://nodejs.org/en/blog/release/v8.4.0/
+- http2 is now supported, add bundled nghttp2
+- remove openssl 1.0.1 patches, we won't be using them in fedora
+
* Thu Aug 10 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.3.0-1
- Update to v8.3.0
-
https://nodejs.org/en/blog/release/v8.3.0/
diff --git a/sources b/sources
index a3b2c84..190d49b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.3.0-stripped.tar.gz) = e1947f48966f5ddf0976f39e444ec6d4020a0a63aa935f19f5890ec96dc53f39f650c7651b26f8b2a9f3445ebcb1b85795e010b0bc14c48c8250a60652bf9d6d
+SHA512 (node-v8.4.0-stripped.tar.gz) = fb49b47427bb25e235c0a179f2d2b8060920eb2ea482ecf361f51b15f3b1e84e6f65b691abcc1e0ec79b99a0fed249e6cf7300ba2096fb526d47912e15a3552c
commit cbf962366198ca870794e3ce93c30f89739739f8
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Aug 15 09:51:47 2017 -0400
Add bundled Provides for http-parser
diff --git a/nodejs.spec b/nodejs.spec
index a8dce24..52cd741 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1.1
+%global nodejs_release 1.2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -106,6 +106,7 @@ BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
#BuildRequires: http-parser-devel >= 2.7.0
+Provides: bundled(http-parser) = 2.7.0
%if 0%{?epel} || 0%{?rhel}
BuildRequires: openssl-devel >= 1:1.0.1
@@ -406,6 +407,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Aug 15 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.2-1.2
+- Add bundled Provides for http-parser
+
* Tue Aug 15 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.2-1.1
- Temporarily bundle http-parser
- Resolves: RHBZ#1481470
commit dbd58f67405222f5a8eaa9b4a3e0145b1093357e
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Aug 15 09:39:45 2017 -0400
Temporarily bundle http-parser
Resolves: RHBZ#1481470
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-files-for-bundled-deps.patch
index fe9f854..8777f8e 100644
--- a/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -1,17 +1,19 @@
-From 54cb96f338bd162dcf1301b7d7a46eea2a56befb Mon Sep 17 00:00:00 2001
+From be1738c229765ad0796b97e842515b5d8834c894 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed, 22 Mar 2017 19:13:10 +0100
-Subject: [PATCH] Disable running gyp files for bundled deps
+Subject: [PATCH 1/3] Disable running gyp files for bundled deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index a2b64e63b4..7b0847d1d5 100644
+index cfbd426033c7f2882f77cd60faaf3bb0277e6c57..8ca97d5552ebb328d8d6727531b13843864a6e86 100644
--- a/Makefile
+++ b/Makefile
-@@ -77,7 +77,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
+@@ -75,11 +75,11 @@ $(NODE_EXE): config.gypi out/Makefile
+
+ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
@@ -20,6 +22,8 @@ index a2b64e63b4..7b0847d1d5 100644
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
+ $(error Missing or stale $@, please run ./$<)
+
--
-2.12.0
+2.13.5
diff --git a/0002-Use-openssl-1.0.1.patch b/0002-Use-openssl-1.0.1.patch
index 4b90ade..b518363 100644
--- a/0002-Use-openssl-1.0.1.patch
+++ b/0002-Use-openssl-1.0.1.patch
@@ -1,7 +1,7 @@
-From 91d1a67b8cc249af59929cd1a76629a2614860bd Mon Sep 17 00:00:00 2001
+From 2411d250a2789675aa9c902aeea3f0c55b34a4e0 Mon Sep 17 00:00:00 2001
From: Haikel Guemar
hguemar@fedoraproject.org
Date: Tue, 26 Jul 2016 22:50:22 +0200
-Subject: [PATCH 2/4] Use openssl 1.0.1
+Subject: [PATCH 2/3] Use openssl 1.0.1
Based on Solaris patches from upstream #2783
https://github.com/nodejs/node/issues/2783
@@ -14,7 +14,7 @@
https://github.com/nodejs/node/issues/2783
5 files changed, 223 insertions(+), 13 deletions(-)
diff --git a/doc/api/tls.md b/doc/api/tls.md
-index 3784210ba7b6c046b39d74b45e44538041d35ae2..3c9d72b8d5ef81d15773aed077bd00d2041c9e93 100644
+index b7e5c8f15e2bf4e8604cdd1bc95ea0e98a96b7d6..6b3069f9352ae44d0dab37b3e4b2eebdbc104609 100644
--- a/doc/api/tls.md
+++ b/doc/api/tls.md
@@ -113,10 +113,16 @@ handshake extensions:
@@ -35,7 +35,7 @@ index 3784210ba7b6c046b39d74b45e44538041d35ae2..3c9d72b8d5ef81d15773aed077bd00d2
### Client-initiated renegotiation attack mitigation
diff --git a/src/node_constants.cc b/src/node_constants.cc
-index 2e6be8df37c345a383d8a78898daf2a147d90630..239eadbac8ea8e601745a63347a8bb301c22d1b1 100644
+index 750df9c669bad38e0cc05158bd8ef1c90d810f74..d693851c4bb6c247cfda7436c5ea0baf5bebc886 100644
--- a/src/node_constants.cc
+++ b/src/node_constants.cc
@@ -12,11 +12,14 @@
@@ -73,10 +73,10 @@ index 2e6be8df37c345a383d8a78898daf2a147d90630..239eadbac8ea8e601745a63347a8bb30
// file access modes
NODE_DEFINE_CONSTANT(target, O_RDONLY);
diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f0324dbdb9d 100644
+index f654dcf60cb42479b06fcd2be96e5bda287606c7..7aaff07fb513945d6272f238814a4cd297da7b0e 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
-@@ -22,10 +22,86 @@
+@@ -26,10 +26,86 @@
#include <limits.h> // INT_MAX
#include <math.h>
#include <stdlib.h>
@@ -163,7 +163,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
if (!Buffer::HasInstance(val) && !val->IsString()) { \
return env->ThrowTypeError(prefix " must be a string or a buffer"); \
} \
-@@ -161,11 +237,15 @@ template int SSLWrap<TLSWrap>::SelectNextProtoCallback(
+@@ -165,11 +241,15 @@ template int SSLWrap<TLSWrap>::SelectNextProtoCallback(
#ifdef NODE__HAVE_TLSEXT_STATUS_CB
template int SSLWrap<TLSWrap>::TLSExtStatusCallback(SSL* s, void* arg);
#endif
@@ -179,7 +179,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
#ifdef TLSEXT_TYPE_application_layer_protocol_negotiation
template int SSLWrap<TLSWrap>::SelectALPNCallback(
SSL* s,
-@@ -281,12 +361,16 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
+@@ -295,12 +375,16 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
env->SetProtoMethod(t, "setCert", SecureContext::SetCert);
env->SetProtoMethod(t, "addCACert", SecureContext::AddCACert);
env->SetProtoMethod(t, "addCRL", SecureContext::AddCRL);
@@ -196,7 +196,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
SecureContext::SetSessionIdContext);
env->SetProtoMethod(t, "setSessionTimeout",
SecureContext::SetSessionTimeout);
-@@ -514,12 +598,24 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
+@@ -531,12 +615,24 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
SSL_CTX_clear_extra_chain_certs(ctx);
for (int i = 0; i < sk_X509_num(extra_certs); i++) {
@@ -223,7 +223,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
ret = 0;
*issuer = nullptr;
goto end;
-@@ -868,10 +964,11 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+@@ -887,10 +983,11 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
const node::Utf8Value ciphers(args.GetIsolate(), args[0]);
SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
}
@@ -235,7 +235,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
Environment* env = sc->env();
-@@ -895,12 +992,14 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
+@@ -914,12 +1011,14 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
SSL_CTX_set_options(sc->ctx_, SSL_OP_SINGLE_ECDH_USE);
SSL_CTX_set_tmp_ecdh(sc->ctx_, ecdh);
@@ -250,7 +250,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
ASSIGN_OR_RETURN_UNWRAP(&sc, args.This());
Environment* env = sc->env();
ClearErrorOnReturn clear_error_on_return;
-@@ -935,10 +1034,11 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
+@@ -954,10 +1053,11 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
DH_free(dh);
if (!r)
@@ -262,7 +262,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
void SecureContext::SetOptions(const FunctionCallbackInfo<Value>& args) {
SecureContext* sc;
ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
-@@ -1952,10 +2052,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+@@ -1977,10 +2077,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
info->Set(env->type_string(),
FIXED_ONE_BYTE_STRING(env->isolate(), "DH"));
info->Set(env->size_string(),
@@ -274,7 +274,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
EC_KEY* ec = EVP_PKEY_get1_EC_KEY(key);
int nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec));
EC_KEY_free(ec);
-@@ -1964,10 +2065,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+@@ -1989,10 +2090,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
info->Set(env->name_string(),
OneByteString(args.GetIsolate(), OBJ_nid2sn(nid)));
info->Set(env->size_string(),
@@ -286,7 +286,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
}
return args.GetReturnValue().Set(info);
-@@ -2382,11 +2484,16 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
+@@ -2407,11 +2509,16 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
cert_cb_arg_ = arg;
}
@@ -303,7 +303,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
if (!w->is_server())
return 1;
-@@ -2451,23 +2558,57 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
+@@ -2476,23 +2583,57 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
ASSIGN_OR_RETURN_UNWRAP(&sc, ctx.As<Object>());
w->sni_context_.Reset();
w->sni_context_.Reset(env->isolate(), ctx);
@@ -371,7 +371,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
if (!rv) {
unsigned long err = ERR_get_error(); // NOLINT(runtime/int)
if (!err)
-@@ -2527,14 +2668,18 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
+@@ -2552,14 +2693,18 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
}
@@ -391,7 +391,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
// NOTE: `SSL_set_client_CA_list` takes the ownership of `list`
SSL_set_client_CA_list(ssl_, list);
-@@ -2808,11 +2953,15 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
+@@ -2871,11 +3016,15 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
// Server does not need to check the whitelist.
SSL* ssl = static_cast<SSL*>(
@@ -402,12 +402,12 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
+#else
+ if (ssl->server)
+#endif
- return 1;
+ return CHECK_OK;
// Client needs to check if the server cert is listed in the
// whitelist when it is issued by the specific rootCAs.
CheckResult ret = CheckWhitelistedServerCert(ctx);
-@@ -2891,11 +3040,25 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
+@@ -2954,11 +3103,25 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
if (is_server)
SSL_set_info_callback(conn->ssl_, SSLInfoCallback);
@@ -433,7 +433,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
if (is_server) {
SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
} else if (args[2]->IsString()) {
-@@ -4476,10 +4639,11 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
+@@ -4541,10 +4704,11 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
args.GetReturnValue().Set(vbuf);
delete[] out_value;
}
@@ -445,7 +445,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
const PropertyAttribute attributes =
static_cast<PropertyAttribute>(v8::ReadOnly | v8::DontDelete);
-@@ -4877,12 +5041,14 @@ bool DiffieHellman::VerifyContext() {
+@@ -4942,12 +5106,14 @@ bool DiffieHellman::VerifyContext() {
if (!DH_check(dh, &codes))
return false;
verifyError_ = codes;
@@ -460,7 +460,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
-@@ -5106,10 +5272,11 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
+@@ -5173,10 +5339,11 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
return env->ThrowError("Failed to set generated public key");
}
@@ -472,7 +472,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
void ECDH::SetPublicKey(const FunctionCallbackInfo<Value>& args) {
Environment* env = Environment::GetCurrent(args);
-@@ -5659,10 +5826,11 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
+@@ -5728,10 +5895,11 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
EVP_MD_do_all_sorted(array_push_back<EVP_MD>, &ctx);
args.GetReturnValue().Set(ctx.arr);
}
@@ -484,7 +484,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
const size_t num_curves = EC_get_builtin_curves(nullptr, 0);
Local<Array> arr = Array::New(env->isolate(), num_curves);
EC_builtin_curve* curves;
-@@ -5683,10 +5851,11 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
+@@ -5752,10 +5920,11 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
free(curves);
}
@@ -496,7 +496,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
bool VerifySpkac(const char* data, unsigned int len) {
bool i = 0;
EVP_PKEY* pkey = nullptr;
-@@ -5995,12 +6164,16 @@ void InitCrypto(Local<Object> target,
+@@ -6063,12 +6232,16 @@ void InitCrypto(Local<Object> target,
Environment* env = Environment::GetCurrent(context);
SecureContext::Initialize(env, target);
@@ -513,7 +513,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
Sign::Initialize(env, target);
Verify::Initialize(env, target);
-@@ -6016,11 +6189,13 @@ void InitCrypto(Local<Object> target,
+@@ -6084,11 +6257,13 @@ void InitCrypto(Local<Object> target,
env->SetMethod(target, "randomBytes", RandomBytes);
env->SetMethod(target, "timingSafeEqual", TimingSafeEqual);
env->SetMethod(target, "getSSLCiphers", GetSSLCiphers);
@@ -528,7 +528,7 @@ index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f03
EVP_PKEY_encrypt>);
env->SetMethod(target, "privateDecrypt",
diff --git a/src/node_crypto.h b/src/node_crypto.h
-index 175206c40df58602b0c24d039b8b5a8bb6f56ba3..5ecc43b08d0b4d97311f09271a26f5a735a6e018 100644
+index 38f49ba5a05063438372471b4a58036190954cd3..8304e719719dae41757071b4463f8631cb1e442f 100644
--- a/src/node_crypto.h
+++ b/src/node_crypto.h
@@ -16,12 +16,16 @@
@@ -620,10 +620,10 @@ index 175206c40df58602b0c24d039b8b5a8bb6f56ba3..5ecc43b08d0b4d97311f09271a26f5a7
void SetEngine(const v8::FunctionCallbackInfo
v8::Value& args);
#endif // !OPENSSL_NO_ENGINE
diff --git a/src/tls_wrap.cc b/src/tls_wrap.cc
-index d1b1aeccdd95b00b3fd0421c08fd7816cd70d182..a6e63d7c1ccc81e6f7d782dffe833234b003de15 100644
+index 8eab962a66f61c3f3020c59f4db472f286856d97..5d741576720b9e3a0fbc50b08f8f3ebd715148dc 100644
--- a/src/tls_wrap.cc
+++ b/src/tls_wrap.cc
-@@ -140,11 +140,19 @@ void TLSWrap::InitSSL() {
+@@ -141,11 +141,19 @@ void TLSWrap::InitSSL() {
}
#endif // SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
@@ -644,5 +644,5 @@ index d1b1aeccdd95b00b3fd0421c08fd7816cd70d182..a6e63d7c1ccc81e6f7d782dffe833234
} else if (is_client()) {
// Enough space for server response (hello, cert)
--
-2.12.0
+2.13.5
diff --git a/EPEL01-openssl101-compat.patch b/EPEL01-openssl101-compat.patch
index f419f95..e35bd42 100644
--- a/EPEL01-openssl101-compat.patch
+++ b/EPEL01-openssl101-compat.patch
@@ -1,7 +1,20 @@
-diff -ru a/src/node_crypto.cc b/src/node_crypto.cc
---- a/src/node_crypto.cc 2017-03-31 22:39:56.483283868 +0200
-+++ b/src/node_crypto.cc 2017-03-31 22:45:36.250267750 +0200
-@@ -851,8 +851,6 @@
+From 655af65a132fe7cea8aeff4f8cbc9d06181f3d2e Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Tue, 15 Aug 2017 09:34:07 -0400
+Subject: [PATCH 3/3] EPEL openssl 1.0.1
+
+---
+ src/node_crypto.cc | 2 --
+ src/node_crypto.h | 7 +++++++
+ 2 files changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/src/node_crypto.cc b/src/node_crypto.cc
+index 7aaff07fb513945d6272f238814a4cd297da7b0e..b5fb547ce35b4c66e8a52de9324f83f9a25aff7a 100644
+--- a/src/node_crypto.cc
++++ b/src/node_crypto.cc
+@@ -959,12 +959,10 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+ ERR_error_string(err, nullptr));
+ }
}
}
@@ -10,10 +23,15 @@ diff -ru a/src/node_crypto.cc b/src/node_crypto.cc
SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
}
-diff -ru a/src/node_crypto.h b/src/node_crypto.h
---- a/src/node_crypto.h 2017-03-21 20:43:33.000000000 +0100
-+++ b/src/node_crypto.h 2017-03-31 22:43:15.548183432 +0200
-@@ -145,6 +145,13 @@
+
+ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+diff --git a/src/node_crypto.h b/src/node_crypto.h
+index 8304e719719dae41757071b4463f8631cb1e442f..a5161aa502e56a6ceb9522ce0ad9c8a677291081 100644
+--- a/src/node_crypto.h
++++ b/src/node_crypto.h
+@@ -151,10 +151,17 @@ class SecureContext : public BaseObject {
+ if (!ctx_) {
+ return;
}
env()->isolate()->AdjustAmountOfExternalAllocatedMemory(-kExternalSize);
@@ -27,4 +45,8 @@ diff -ru a/src/node_crypto.h b/src/node_crypto.h
SSL_CTX_free(ctx_);
if (cert_ != nullptr)
X509_free(cert_);
+ if (issuer_ != nullptr)
+ X509_free(issuer_);
+--
+2.13.5
diff --git a/nodejs.spec b/nodejs.spec
index 848538d..a8dce24 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 1.1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -89,6 +89,8 @@ Source7: nodejs_native.attr
Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
+# RHEL 7.4 now has 1.0.2, but as of this writing, CentOS hasn't picked it up
+# yet. Drop the openssl 1.0.1 compatibility patches once this happens.
Patch2: 0002-Use-openssl-1.0.1.patch
# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
@@ -98,12 +100,12 @@ Patch5: EPEL01-openssl101-compat.patch
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
-Requires: http-parser >= 2.7.0
+#Requires: http-parser >= 2.7.0
BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
-BuildRequires: http-parser-devel >= 2.7.0
+#BuildRequires: http-parser-devel >= 2.7.0
%if 0%{?epel} || 0%{?rhel}
BuildRequires: openssl-devel >= 1:1.0.1
@@ -179,7 +181,7 @@ Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: libuv-devel%{?_isa}
-Requires: http-parser-devel%{?_isa}
+#Requires: http-parser-devel%{?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
@@ -228,8 +230,7 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/http-parser \
- deps/icu-small \
+rm -rf deps/icu-small \
deps/uv \
deps/zlib
@@ -262,7 +263,6 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--shared-openssl \
--shared-zlib \
--shared-libuv \
- --shared-http-parser \
--without-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
@@ -406,6 +406,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Aug 15 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.11.2-1.1
+- Temporarily bundle http-parser
+- Resolves: RHBZ#1481470
+
* Wed Aug 02 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1
- Update to 6.11.2
-
https://nodejs.org/en/blog/release/v6.11.2/
commit 084cd602c31fa2ae53de70d879f526bc946ae324
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Aug 10 09:53:48 2017 +0200
Update to 8.3.0
diff --git a/.gitignore b/.gitignore
index be7604e..56dc32d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -73,3 +73,4 @@
/node-v8.1.4-stripped.tar.gz
/node-v8.2.0-stripped.tar.gz
/node-v8.2.1-stripped.tar.gz
+/node-v8.3.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 3999f3f..223fdf4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,7 +7,7 @@
# ARM builds currently break on the Debug builds, so we'll just
# build the standard runtime until that gets sorted out.
%ifarch %{arm} aarch64 %{power64}
-%global with_debug 0
+%global with_debug 1
%endif
# == Node.js Version ==
@@ -17,18 +17,18 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 2
-%global nodejs_patch 1
+%global nodejs_minor 3
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
-%global v8_major 5
-%global v8_minor 8
-%global v8_build 283
-%global v8_patch 41
+%global v8_major 6
+%global v8_minor 0
+%global v8_build 286
+%global v8_patch 52
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -109,8 +109,8 @@ BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
BuildRequires: libicu-devel
BuildRequires: zlib-devel
-BuildRequires: gcc >= 4.8.0
-BuildRequires: gcc-c++ >= 4.8.0
+BuildRequires: gcc >= 4.9.4
+BuildRequires: gcc-c++ >= 4.9.4
%if ! 0%{?bootstrap}
BuildRequires: systemtap-sdt-devel
@@ -443,7 +443,13 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Wed Aug 9 2017 Tom Hughes
tom@compton.nu - 1:8.2.1-2
+* Thu Aug 10 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.3.0-1
+- Update to v8.3.0
+-
https://nodejs.org/en/blog/release/v8.3.0/
+- update V8 to 6.0
+- update minimal gcc and g++ requirements to 4.9.4
+
+* Wed Aug 09 2017 Tom Hughes
tom@compton.nu - 1:8.2.1-2
- Bump release to fix broken dependencies
* Thu Aug 03 2017 Fedora Release Engineering
releng@fedoraproject.org - 1:8.2.1-1.2
diff --git a/sources b/sources
index 4dbbe0a..a3b2c84 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.2.1-stripped.tar.gz) = c5c880e50560b9eb174a50539b3c74c918dcc3e8ebe738a46f4907a1389eaf919abe2faa9a129ded53b54eb1428cfa5b573f31bf76535f1f79499675395c04a6
+SHA512 (node-v8.3.0-stripped.tar.gz) = e1947f48966f5ddf0976f39e444ec6d4020a0a63aa935f19f5890ec96dc53f39f650c7651b26f8b2a9f3445ebcb1b85795e010b0bc14c48c8250a60652bf9d6d
commit 64b3826c6dfd66c611378de9181ee7da5e16bb10
Author: Tom Hughes
tom@compton.nu
Date: Wed Aug 9 11:16:36 2017 +0100
Bump release to fix broken dependencies
diff --git a/nodejs.spec b/nodejs.spec
index 4f8754a..3999f3f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -75,7 +75,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}.2
+Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -443,6 +443,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Aug 9 2017 Tom Hughes
tom@compton.nu - 1:8.2.1-2
+- Bump release to fix broken dependencies
+
* Thu Aug 03 2017 Fedora Release Engineering
releng@fedoraproject.org - 1:8.2.1-1.2
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
commit dac9ecdec6f85f8d90c83097bc6c813739708e99
Author: Fedora Release Engineering
releng@fedoraproject.org
Date: Thu Aug 3 04:01:19 2017 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
diff --git a/nodejs.spec b/nodejs.spec
index 9ef6652..4f8754a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -75,7 +75,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}.1
+Release: %{nodejs_release}%{?dist}.2
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -209,7 +209,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.1
+Release: %{npm_release}%{?dist}.2
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -443,6 +443,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Aug 03 2017 Fedora Release Engineering
releng@fedoraproject.org - 1:8.2.1-1.2
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
* Wed Jul 26 2017 Fedora Release Engineering
releng@fedoraproject.org - 1:8.2.1-1.1
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
commit fa0911acb9b10bb378ec2b3f1f465b89db1b6bf0
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Aug 2 14:06:22 2017 +0200
Update to 6.11.2
diff --git a/.gitignore b/.gitignore
index 7739b68..a10250b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -69,3 +69,4 @@
/node-v6.10.3-stripped.tar.gz
/node-v6.11.0-stripped.tar.gz
/node-v6.11.1-stripped.tar.gz
+/node-v6.11.2-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index e56b21b..848538d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,7 +16,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 11
-%global nodejs_patch 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -91,15 +91,6 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
Patch2: 0002-Use-openssl-1.0.1.patch
-# use system certificates instead of the bundled ones
-# Backported from upstream 7.5.0+
-# merged in 6.11.0
-#Patch3: 0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
-
-# Backported upstream patch to allow building with GCC 7 from
-#
https://github.com/nodejs/node/commit/2bbee49e6f170a5d6628444a7c9a2235fe0dd9...
-Patch4: 0004-Fix-compatibility-with-GCC-7.patch
-
# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
Patch5: EPEL01-openssl101-compat.patch
@@ -242,12 +233,6 @@ rm -rf deps/http-parser \
deps/uv \
deps/zlib
-# Use system CA certificates
-#%patch3 -p1
-
-# Fix GCC7 build
-%patch4 -p1
-
%if 0%{?epel} || 0%{?rhel}
%patch2 -p1
%patch5 -p1
@@ -421,6 +406,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Aug 02 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1
+- Update to 6.11.2
+-
https://nodejs.org/en/blog/release/v6.11.2/
+- remove GCC 7 patch merged upstream
+
* Thu Jul 13 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.1-1
- Security update (
https://nodejs.org/en/blog/vulnerability/july-2017-security-releases/)
diff --git a/sources b/sources
index d1795c8..a2ec9ed 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.11.1-stripped.tar.gz) = c67b60a38b6deeb71ac7f18caf02a2ddd6d4f636c5241002d8e2dd3bcf486185a09cef37a5e5578ffa68ca180789bfa25e474dac1812e4200ec0be323343a39b
+SHA512 (node-v6.11.2-stripped.tar.gz) = f87b65626877ed102f101d095a50a162ca8f471474d6099af40ca27783c6a9da082de4f251325bb51e214395c714b894b22d6d6adb983916e3880c929865703c
commit 61a021e8a041af30a682a51a3fdc17086917752f
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue Aug 1 15:17:45 2017 +0200
Fix typo
diff --git a/nodejs.spec b/nodejs.spec
index 7481c14..3190437 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -436,7 +436,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Tue Aug 01 2917 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1
+* Tue Aug 01 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1
- Update to 6.11.2
-
https://nodejs.org/en/blog/release/v6.11.2/
- gcc 7 patch was backported in upstream
commit d246c5e67e8912d1a2076cf1403dee4eef4ea394
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue Aug 1 15:10:35 2017 +0200
Update to 6.11.2
diff --git a/.gitignore b/.gitignore
index 7739b68..a10250b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -69,3 +69,4 @@
/node-v6.10.3-stripped.tar.gz
/node-v6.11.0-stripped.tar.gz
/node-v6.11.1-stripped.tar.gz
+/node-v6.11.2-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index e8b4c8a..7481c14 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 11
-%global nodejs_patch 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -99,10 +99,6 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
Patch2: 0002-Use-openssl-1.0.1.patch
-# Backported upstream patch to allow building with GCC 7 from
-#
https://github.com/nodejs/node/commit/2bbee49e6f170a5d6628444a7c9a2235fe0dd9...
-Patch4: 0004-Fix-compatibility-with-GCC-7.patch
-
# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
Patch5: EPEL01-openssl101-compat.patch
@@ -251,9 +247,6 @@ rm -rf deps/icu-small \
deps/uv \
deps/zlib
-# Fix GCC7 build
-%patch4 -p1
-
%if 0%{?epel}
%patch2 -p1
%patch5 -p1
@@ -443,6 +436,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Aug 01 2917 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.2-1
+- Update to 6.11.2
+-
https://nodejs.org/en/blog/release/v6.11.2/
+- gcc 7 patch was backported in upstream
+
* Fri Jul 14 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.1-1
- Security update (
https://nodejs.org/en/blog/vulnerability/july-2017-security-releases/)
diff --git a/sources b/sources
index 2573d80..2adcec3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.11.1-stripped.tar.gz) = 5b539c43103422c059034f99cdef25dd6556cf0b08d85cea6e8bc74862c944d368455e6139680c8b00e602cbf807533bdabf2dfa43d714c9864ab8c79679b74e
+SHA512 (node-v6.11.2-stripped.tar.gz) = 037382205b38d1dd693bc40b9c3d2c66b6c9bf4e635b1caaa11e897eaf4411834ca2132fd9c2113833c67cec8fe0764c6475841b8dc3a7477f535bcf28bbf2dd
commit 7f615c7e471d3bb18717df1ae70535e54e6fff48
Author: Fedora Release Engineering
releng@fedoraproject.org
Date: Wed Jul 26 23:01:28 2017 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
diff --git a/nodejs.spec b/nodejs.spec
index d5ff98a..9ef6652 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -75,7 +75,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
+Release: %{nodejs_release}%{?dist}.1
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -209,7 +209,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}
+Release: %{npm_release}%{?dist}.1
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -443,6 +443,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Jul 26 2017 Fedora Release Engineering
releng@fedoraproject.org - 1:8.2.1-1.1
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
* Fri Jul 21 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.2.1-1
- Update to v8.2.1
-
https://nodejs.org/en/blog/release/v8.2.1/
commit cb6b02f3a51aaf7cf232cd79e070f20b46465ff2
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Jul 21 08:23:07 2017 -0400
Update to v8.2.1
https://nodejs.org/en/blog/release/v8.2.1/
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 7f8eb42..be7604e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -72,3 +72,4 @@
/node-v8.1.3-stripped.tar.gz
/node-v8.1.4-stripped.tar.gz
/node-v8.2.0-stripped.tar.gz
+/node-v8.2.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index ce22204..d5ff98a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
%global nodejs_epoch 1
%global nodejs_major 8
%global nodejs_minor 2
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -443,6 +443,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Jul 21 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.2.1-1
+- Update to v8.2.1
+-
https://nodejs.org/en/blog/release/v8.2.1/
+
* Thu Jul 20 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.2.0-1
- Update to v8.2.0
-
https://nodejs.org/en/blog/release/v8.2.0/
diff --git a/sources b/sources
index eabdc18..4dbbe0a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.2.0-stripped.tar.gz) = 51570911d2aa9bdd0f9cfd1a8daffce5cf5dfc0bc36878c44e092936592b14cd8b2a608f9f2ab8edde09253a8da0c224f5a0cb6d80525ed6cbd354ac42c036a0
+SHA512 (node-v8.2.1-stripped.tar.gz) = c5c880e50560b9eb174a50539b3c74c918dcc3e8ebe738a46f4907a1389eaf919abe2faa9a129ded53b54eb1428cfa5b573f31bf76535f1f79499675395c04a6
commit 3a319438fc7b49604766229a5ec5d1bbe3ee5fa2
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jul 20 12:29:26 2017 -0400
Update to v8.2.0
https://nodejs.org/en/blog/release/v8.2.0/
Update npm to 5.3.0
Adds npx command
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 624aec6..7f8eb42 100644
--- a/.gitignore
+++ b/.gitignore
@@ -71,3 +71,4 @@
/node-v8.1.2-stripped.tar.gz
/node-v8.1.3-stripped.tar.gz
/node-v8.1.4-stripped.tar.gz
+/node-v8.2.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index b4c67d7..ce22204 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -17,11 +17,11 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 8
-%global nodejs_minor 1
-%global nodejs_patch 4
+%global nodejs_minor 2
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -57,8 +57,8 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
%global npm_major 5
-%global npm_minor 0
-%global npm_patch 3
+%global npm_minor 3
+%global npm_patch 0
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -423,10 +423,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%files -n npm
%{_bindir}/npm
+%{_bindir}/npx
%{_prefix}/lib/node_modules/npm
%ghost %{_sysconfdir}/npmrc
%ghost %{_sysconfdir}/npmignore
%doc %{_mandir}/man*/npm*
+%doc %{_mandir}/man*/npx*
%doc %{_mandir}/man5/package.json.5*
%doc %{_mandir}/man5/package-lock.json.5*
%doc %{_mandir}/man7/removing-npm.7*
@@ -441,6 +443,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jul 20 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.2.0-1
+- Update to v8.2.0
+-
https://nodejs.org/en/blog/release/v8.2.0/
+- Update npm to 5.3.0
+- Adds npx command
+
* Tue Jul 18 2017 Igor Gnatenko
ignatenko@redhat.com - 1:8.1.4-3
- s/BuildRequires/Requires/ for http-parser-devel%%{?_isa}
diff --git a/sources b/sources
index a9c344f..eabdc18 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.1.4-stripped.tar.gz) = c7d4482df0185d75ad82b567576fcec34c387790f764f537ac9e66aae65807fac54fbddf24e9dd37fc58fa6258b6d1c2cbf753cb57137ca05cddd283b56a11e5
+SHA512 (node-v8.2.0-stripped.tar.gz) = 51570911d2aa9bdd0f9cfd1a8daffce5cf5dfc0bc36878c44e092936592b14cd8b2a608f9f2ab8edde09253a8da0c224f5a0cb6d80525ed6cbd354ac42c036a0
commit 30962f42edf387e4732d28828f6b0fb8a4884420
Author: Haikel Guemar
hguemar@fedoraproject.org
Date: Wed Jul 19 17:30:12 2017 +0200
Fix build on RHEL/CentOS (not EPEL)
diff --git a/nodejs.spec b/nodejs.spec
index 4cbd312..e56b21b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -114,7 +114,7 @@ BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
BuildRequires: http-parser-devel >= 2.7.0
-%if 0%{?epel}
+%if 0%{?epel} || 0%{?rhel}
BuildRequires: openssl-devel >= 1:1.0.1
%else
%if 0%{?fedora} > 25
@@ -168,7 +168,7 @@ Provides: bundled(c-ares) = %{c_ares_version}
Provides: bundled(v8) = %{v8_version}
# Make sure we keep NPM up to date when we update Node.js
-%if 0%{?epel}
+%if 0%{?epel} || 0%{?rhel}
# EPEL doesn't support Recommends, so make it strict
Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%else
@@ -248,7 +248,7 @@ rm -rf deps/http-parser \
# Fix GCC7 build
%patch4 -p1
-%if 0%{?epel}
+%if 0%{?epel} || 0%{?rhel}
%patch2 -p1
%patch5 -p1
%endif
commit 586335e630092f68788fcdbed5f5fb92d352d49c
Author: Igor Gnatenko
ignatenko@redhat.com
Date: Tue Jul 18 23:36:48 2017 +0200
fix typo in arched (Build)Requires
We don't need arched version of http-parser-devel for building -devel
subpackage. It is even prohibited by guidelines. But this is just typo.
Signed-off-by: Igor Gnatenko
ignatenko@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index e36cb92..b4c67d7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -199,7 +199,7 @@ Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
%if ! 0%{?bootstrap}
-BuildRequires: http-parser-devel%{?_isa}
+Requires: http-parser-devel%{?_isa}
%endif
%description devel
@@ -441,6 +441,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jul 18 2017 Igor Gnatenko
ignatenko@redhat.com - 1:8.1.4-3
+- s/BuildRequires/Requires/ for http-parser-devel%%{?_isa}
+
* Mon Jul 17 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.1.4-2
- Rename python-devel to python2-devel
- own %%{_pkgdocdir}/npm
commit 05515016946ba051ce479e0ac8a99f3dd53c9b5d
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Mon Jul 17 14:58:57 2017 +0200
Rename python dep, own docdir
diff --git a/nodejs.spec b/nodejs.spec
index 755e48a..e36cb92 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -104,7 +104,7 @@ Patch2: 0002-Use-openssl-1.0.1.patch
# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
Patch5: EPEL01-openssl101-compat.patch
-BuildRequires: python-devel
+BuildRequires: python2-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
BuildRequires: libicu-devel
@@ -436,10 +436,15 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
+%{_pkgdocdir}/npm*
%{_pkgdocdir}/npm/html
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Jul 17 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.1.4-2
+- Rename python-devel to python2-devel
+- own %%{_pkgdocdir}/npm
+
* Tue Jul 11 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.1.4-1
- Update to v8.1.4
-
https://nodejs.org/en/blog/release/v8.1.4/
commit c27e539f1fd9acde3cb3711aaa54d0b4e11a7014
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Jul 14 10:41:18 2017 +0200
Security update
diff --git a/.gitignore b/.gitignore
index 863b931..7739b68 100644
--- a/.gitignore
+++ b/.gitignore
@@ -68,3 +68,4 @@
/node-v6.10.2-stripped.tar.gz
/node-v6.10.3-stripped.tar.gz
/node-v6.11.0-stripped.tar.gz
+/node-v6.11.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 5c5adac..e8b4c8a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 11
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -28,7 +28,7 @@
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 102
+%global v8_patch 103
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -443,6 +443,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Jul 14 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.1-1
+- Security update (
https://nodejs.org/en/blog/vulnerability/july-2017-security-releases/)
+
* Fri Jun 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
- Update to 6.11.0
- remove system CA patch since it was merged upstream
diff --git a/sources b/sources
index 77400eb..2573d80 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.11.0-stripped.tar.gz) = a23e0d8461dcf87048555d2e4e62c0bacecf6d2a6a8d6d27ed08f6f0911ec31f9a7abc48ab45478eaf3ba6af593714e628a194340168581f2f9c3c8dbf0c7a1d
+SHA512 (node-v6.11.1-stripped.tar.gz) = 5b539c43103422c059034f99cdef25dd6556cf0b08d85cea6e8bc74862c944d368455e6139680c8b00e602cbf807533bdabf2dfa43d714c9864ab8c79679b74e
commit 40eee81a3b83e2031f99187a2e75efe2ec0ab11d
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Jul 13 10:13:16 2017 +0200
Update spec
diff --git a/nodejs.spec b/nodejs.spec
index 5006cf0..4cbd312 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,17 +16,17 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 11
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 102
+%global v8_patch 103
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -421,6 +421,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jul 13 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.1-1
+- Security update (
https://nodejs.org/en/blog/vulnerability/july-2017-security-releases/)
+
* Thu Jun 29 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-2
- Fix typo
commit 4719482336d115131f47f0e73e9e31b9e92b78c7
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Jul 13 10:11:04 2017 +0200
Security update
diff --git a/.gitignore b/.gitignore
index 863b931..7739b68 100644
--- a/.gitignore
+++ b/.gitignore
@@ -68,3 +68,4 @@
/node-v6.10.2-stripped.tar.gz
/node-v6.10.3-stripped.tar.gz
/node-v6.11.0-stripped.tar.gz
+/node-v6.11.1-stripped.tar.gz
diff --git a/sources b/sources
index faa059a..d1795c8 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.11.0-stripped.tar.gz) = ad7602bea476367ea2a202367e62ed5bdb67dfcd4b1515b4df618d33ceb31f1b88206c63623718f9b43d01d53033602c56ca34ac846e4143a3e4499f8e54a617
+SHA512 (node-v6.11.1-stripped.tar.gz) = c67b60a38b6deeb71ac7f18caf02a2ddd6d4f636c5241002d8e2dd3bcf486185a09cef37a5e5578ffa68ca180789bfa25e474dac1812e4200ec0be323343a39b
commit 455e6664264e890e58d6d76ad19dd7d2cd4a8482
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Jul 11 14:22:35 2017 -0400
Update to v8.1.4
https://nodejs.org/en/blog/release/v8.1.4/
Drop upstreamed c-ares patch
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 957fc1c..624aec6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -70,3 +70,4 @@
/node-v6.11.0-stripped.tar.gz
/node-v8.1.2-stripped.tar.gz
/node-v8.1.3-stripped.tar.gz
+/node-v8.1.4-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index b4cecd1..755e48a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
%global nodejs_epoch 1
%global nodejs_major 8
%global nodejs_minor 1
-%global nodejs_patch 3
+%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -100,9 +100,6 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
Patch2: 0002-Use-openssl-1.0.1.patch
-# Patch CVE-2017-1000381 until upstream updates to new version/merges patch
-Patch3: 0003-c-ares-NAPTR-parser-out-of-bounds-access.patch
-
# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
Patch5: EPEL01-openssl101-compat.patch
@@ -253,9 +250,6 @@ rm -rf deps/icu-small \
deps/uv \
deps/zlib
-# Patch CVE in c-ares
-%patch3 -p1
-
%if 0%{?epel}
%patch2 -p1
%patch5 -p1
@@ -446,6 +440,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jul 11 2017 Stephen Gallagher
sgallagh@redhat.com - 1:8.1.4-1
+- Update to v8.1.4
+-
https://nodejs.org/en/blog/release/v8.1.4/
+- Drop upstreamed c-ares patch
+
* Thu Jun 29 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.1.3-1
- Update to v8.1.3
-
https://nodejs.org/en/blog/release/v8.1.3/
diff --git a/sources b/sources
index 35188e1..a9c344f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.1.3-stripped.tar.gz) = 5703cafcca96ede1b3964a4ef80ce88bfe96df237b8426c35ac53eaa250be081f857feb3e1dc0f637b581a051b5ee7dcc987ee0b39b7ee874e1bacde4722fbe9
+SHA512 (node-v8.1.4-stripped.tar.gz) = c7d4482df0185d75ad82b567576fcec34c387790f764f537ac9e66aae65807fac54fbddf24e9dd37fc58fa6258b6d1c2cbf753cb57137ca05cddd283b56a11e5
commit 75424e32a84f76f0681fee3f04d21c28c1575aa5
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Mon Jul 10 12:02:33 2017 +0200
Fix typo
diff --git a/nodejs.spec b/nodejs.spec
index 65829e4..5006cf0 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -188,7 +188,7 @@ Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: libuv-devel%{?_isa}
-Requires: http-parser-devel${?_isa}
+Requires: http-parser-devel%{?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
@@ -421,6 +421,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jun 29 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-2
+- Fix typo
+
* Thu Jun 29 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
- Update to 6.11.0
-
https://nodejs.org/en/blog/release/v6.10.3/
commit c67f4dd54ff440d511e6248128aa3c72766af264
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Jun 29 14:05:16 2017 +0200
Update to v8.1.3
diff --git a/.gitignore b/.gitignore
index 2dac779..957fc1c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -69,3 +69,4 @@
/node-v6.10.3-stripped.tar.gz
/node-v6.11.0-stripped.tar.gz
/node-v8.1.2-stripped.tar.gz
+/node-v8.1.3-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 9167903..b4cecd1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,7 +18,7 @@
%global nodejs_epoch 1
%global nodejs_major 8
%global nodejs_minor 1
-%global nodejs_patch 2
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -446,6 +446,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jun 29 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.1.3-1
+- Update to v8.1.3
+-
https://nodejs.org/en/blog/release/v8.1.3/
+
* Wed Jun 28 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.1.2-1
- Update to v8.1.2
- remove GCC 7 patch, as it is now fixed in node >= 6.12
diff --git a/sources b/sources
index 5f9691c..35188e1 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v8.1.2-stripped.tar.gz) = ccfa858837236185d8e1118335d83a4a75cbfcff0029ccbdbda920f71920c8a18b122bbf5e5eed6e9549ae0e0fc79e50406ac508aedbfc3812469921036f3168
+SHA512 (node-v8.1.3-stripped.tar.gz) = 5703cafcca96ede1b3964a4ef80ce88bfe96df237b8426c35ac53eaa250be081f857feb3e1dc0f637b581a051b5ee7dcc987ee0b39b7ee874e1bacde4722fbe9
commit 573f204607a68d7dab56097adc53b9ad3ec7d54f
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Jun 29 13:17:05 2017 +0200
Update to 6.11.0
diff --git a/.gitignore b/.gitignore
index e92f336..863b931 100644
--- a/.gitignore
+++ b/.gitignore
@@ -67,3 +67,4 @@
/node-v6.10.1-stripped.tar.gz
/node-v6.10.2-stripped.tar.gz
/node-v6.10.3-stripped.tar.gz
+/node-v6.11.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 0c01718..65829e4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -15,8 +15,8 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 6
-%global nodejs_minor 10
-%global nodejs_patch 3
+%global nodejs_minor 11
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -26,7 +26,7 @@
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 101
+%global v8_patch 102
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -93,7 +93,8 @@ Patch2: 0002-Use-openssl-1.0.1.patch
# use system certificates instead of the bundled ones
# Backported from upstream 7.5.0+
-Patch3: 0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
+# merged in 6.11.0
+#Patch3: 0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
# Backported upstream patch to allow building with GCC 7 from
#
https://github.com/nodejs/node/commit/2bbee49e6f170a5d6628444a7c9a2235fe0dd9...
@@ -106,6 +107,7 @@ Patch5: EPEL01-openssl101-compat.patch
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
+Requires: http-parser >= 2.7.0
BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
@@ -186,6 +188,7 @@ Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: libuv-devel%{?_isa}
+Requires: http-parser-devel${?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
@@ -240,7 +243,7 @@ rm -rf deps/http-parser \
deps/zlib
# Use system CA certificates
-%patch3 -p1
+#%patch3 -p1
# Fix GCC7 build
%patch4 -p1
@@ -418,6 +421,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jun 29 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
+- Update to 6.11.0
+-
https://nodejs.org/en/blog/release/v6.10.3/
+- explicitly depend on http-parser (RHBZ#1457763)
+
* Wed May 10 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.3-1
- Update to 6.10.3 (LTS)
-
https://nodejs.org/en/blog/release/v6.10.3/
diff --git a/sources b/sources
index fee1521..faa059a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.10.3-stripped.tar.gz) = 0750e6c1597c2379df59fafb5945d3af7d59f371c7996c56394f0cac5361627cebde3f6e46468ef76b0eb6d242e77538ec0c8136f75b98c140f1c6235df596bd
+SHA512 (node-v6.11.0-stripped.tar.gz) = ad7602bea476367ea2a202367e62ed5bdb67dfcd4b1515b4df618d33ceb31f1b88206c63623718f9b43d01d53033602c56ca34ac846e4143a3e4499f8e54a617
commit 27f006aeeebbaa72bf2774070d46ef1a5f472477
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Jun 28 11:00:13 2017 +0200
Update to v8.1.2, npm@5.0.3, remove gcc7 patch
diff --git a/.gitignore b/.gitignore
index 863b931..2dac779 100644
--- a/.gitignore
+++ b/.gitignore
@@ -68,3 +68,4 @@
/node-v6.10.2-stripped.tar.gz
/node-v6.10.3-stripped.tar.gz
/node-v6.11.0-stripped.tar.gz
+/node-v8.1.2-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-files-for-bundled-deps.patch
index fe9f854..324a468 100644
--- a/0001-Disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -1,25 +1,29 @@
-From 54cb96f338bd162dcf1301b7d7a46eea2a56befb Mon Sep 17 00:00:00 2001
+From c2aff16cc196a61f4ab1cdae4a91c7926123c239 Mon Sep 17 00:00:00 2001
From: Zuzana Svetlikova
zsvetlik@redhat.com
-Date: Wed, 22 Mar 2017 19:13:10 +0100
-Subject: [PATCH] Disable running gyp files for bundled deps
+Date: Thu, 27 Apr 2017 14:25:42 +0200
+Subject: [PATCH] Disable running gyp on shared deps
---
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
+ Makefile | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/Makefile b/Makefile
-index a2b64e63b4..7b0847d1d5 100644
+index 0a217bd893..e1229ad07f 100644
--- a/Makefile
+++ b/Makefile
-@@ -77,7 +77,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
+@@ -79,10 +79,9 @@ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
--out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
-+out/Makefile: common.gypi deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
+-out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp \
+- deps/zlib/zlib.gyp deps/v8/gypfiles/toolchain.gypi \
+- deps/v8/gypfiles/features.gypi deps/v8/src/v8.gyp node.gyp \
+- config.gypi
++out/Makefile: common.gypi deps/http_parser/http_parser.gyp \
++ deps/v8/gypfiles/toolchain.gypi deps/v8/gypfiles/features.gypi \
++ deps/v8/src/v8.gyp node.gyp config.gypi
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
--
-2.12.0
-
+2.12.2
diff --git a/0003-c-ares-NAPTR-parser-out-of-bounds-access.patch b/0003-c-ares-NAPTR-parser-out-of-bounds-access.patch
new file mode 100644
index 0000000..1a011bb
--- /dev/null
+++ b/0003-c-ares-NAPTR-parser-out-of-bounds-access.patch
@@ -0,0 +1,36 @@
+From 15dfe22be278cb1f0194de0b0ab790ba9dc4fc33 Mon Sep 17 00:00:00 2001
+From: Zuzana Svetlikova
zsvetlik@redhat.com
+Date: Fri, 23 Jun 2017 23:11:28 +0200
+Subject: [PATCH] c-ares NAPTR parser out of bounds access
+
+CVE: CVE-2017-1000381
+Upstream bug:
https://c-ares.haxx.se/adv_20170620.html
+---
+ deps/cares/src/ares_parse_naptr_reply.c | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/deps/cares/src/ares_parse_naptr_reply.c b/deps/cares/src/ares_parse_naptr_reply.c
+index 11634df984..717d355778 100644
+--- a/deps/cares/src/ares_parse_naptr_reply.c
++++ b/deps/cares/src/ares_parse_naptr_reply.c
+@@ -110,6 +110,12 @@ ares_parse_naptr_reply (const unsigned char *abuf, int alen,
+ status = ARES_EBADRESP;
+ break;
+ }
++ /* RR must contain at least 7 bytes = 2 x int16 + 3 x name */
++ if (rr_len < 7)
++ {
++ status = ARES_EBADRESP;
++ break;
++ }
+
+ /* Check if we are really looking at a NAPTR record */
+ if (rr_class == C_IN && rr_type == T_NAPTR)
+@@ -185,4 +191,3 @@ ares_parse_naptr_reply (const unsigned char *abuf, int alen,
+
+ return ARES_SUCCESS;
+ }
+-
+--
+2.13.1
+
diff --git a/nodejs.spec b/nodejs.spec
index aa28b3f..9167903 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,9 +16,9 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_epoch 1
-%global nodejs_major 6
-%global nodejs_minor 11
-%global nodejs_patch 0
+%global nodejs_major 8
+%global nodejs_minor 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -26,14 +26,15 @@
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 5
-%global v8_minor 1
-%global v8_build 281
-%global v8_patch 102
+%global v8_minor 8
+%global v8_build 283
+%global v8_patch 41
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
# c-ares - from deps/cares/include/ares_version.h
+#
https://github.com/nodejs/node/pull/9332
%global c_ares_major 1
%global c_ares_minor 10
%global c_ares_patch 1
@@ -55,9 +56,9 @@
# npm - from deps/npm/package.json
%global npm_epoch 1
-%global npm_major 3
-%global npm_minor 10
-%global npm_patch 10
+%global npm_major 5
+%global npm_minor 0
+%global npm_patch 3
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -99,9 +100,8 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
Patch2: 0002-Use-openssl-1.0.1.patch
-# Backported upstream patch to allow building with GCC 7 from
-#
https://github.com/nodejs/node/commit/2bbee49e6f170a5d6628444a7c9a2235fe0dd9...
-Patch4: 0004-Fix-compatibility-with-GCC-7.patch
+# Patch CVE-2017-1000381 until upstream updates to new version/merges patch
+Patch3: 0003-c-ares-NAPTR-parser-out-of-bounds-access.patch
# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
@@ -118,6 +118,7 @@ BuildRequires: gcc-c++ >= 4.8.0
%if ! 0%{?bootstrap}
BuildRequires: systemtap-sdt-devel
BuildRequires: http-parser-devel >= 2.7.0
+Requires: http-parser >= 2.7.0
%else
Provides: bundled(http-parser) = %{http_parser_version}
%endif
@@ -200,6 +201,10 @@ Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
+%if ! 0%{?bootstrap}
+BuildRequires: http-parser-devel%{?_isa}
+%endif
+
%description devel
Development headers for the Node.js JavaScript runtime.
@@ -248,8 +253,8 @@ rm -rf deps/icu-small \
deps/uv \
deps/zlib
-# Fix GCC7 build
-%patch4 -p1
+# Patch CVE in c-ares
+%patch3 -p1
%if 0%{?epel}
%patch2 -p1
@@ -429,6 +434,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%ghost %{_sysconfdir}/npmignore
%doc %{_mandir}/man*/npm*
%doc %{_mandir}/man5/package.json.5*
+%doc %{_mandir}/man5/package-lock.json.5*
%doc %{_mandir}/man7/removing-npm.7*
%doc %{_mandir}/man7/semver.7*
@@ -440,6 +446,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Jun 28 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:8.1.2-1
+- Update to v8.1.2
+- remove GCC 7 patch, as it is now fixed in node >= 6.12
+
* Fri Jun 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
- Update to 6.11.0
- remove system CA patch since it was merged upstream
diff --git a/sources b/sources
index 77400eb..5f9691c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.11.0-stripped.tar.gz) = a23e0d8461dcf87048555d2e4e62c0bacecf6d2a6a8d6d27ed08f6f0911ec31f9a7abc48ab45478eaf3ba6af593714e628a194340168581f2f9c3c8dbf0c7a1d
+SHA512 (node-v8.1.2-stripped.tar.gz) = ccfa858837236185d8e1118335d83a4a75cbfcff0029ccbdbda920f71920c8a18b122bbf5e5eed6e9549ae0e0fc79e50406ac508aedbfc3812469921036f3168
commit 648f5bae1242957402be3f04c539a77de11312f0
Merge: 8951f32 12757ba
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Jun 9 16:46:25 2017 +0200
Update to 6.11.0
diff --cc nodejs.spec
index 503471e,aa28b3f..5c5adac
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -450,9 -440,13 +443,13 @@@ NODE_PATH=%{buildroot}%{_prefix}/lib/no
%{_pkgdocdir}/npm/doc
%changelog
- * Tue Jun 06 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-3
+ * Fri Jun 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
+ - Update to 6.11.0
+ - remove system CA patch since it was merged upstream
+ -
https://github.com/nodejs/node/pull/8334
+
+ * Fri May 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-3
-- Rebuild without bootstrap
+- Require http-parser-devel when using system http-parser
- - enable bootstraping
* Thu May 11 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-2
- Provide bundled http-parser in case of boostraping
commit 12757baada724c2ddb5f3092fcadac901f38911f
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Jun 9 14:51:29 2017 +0200
Fix spec
diff --git a/0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch b/0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
deleted file mode 100644
index 8c6db97..0000000
--- a/0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-From f1a0660b9186c3f4d55d7c07219126e199c787f9 Mon Sep 17 00:00:00 2001
-From: Adam Majer
amajer@suse.de
-Date: Wed, 21 Dec 2016 11:16:38 +0100
-Subject: [PATCH 3/4] crypto: Use system CAs instead of using bundled ones
-
-NodeJS can already use an external, shared OpenSSL library. This
-library knows where to look for OS managed certificates. Allow
-a compile-time option to use this CA store by default instead of
-using bundled certificates.
-
-In case when using bundled OpenSSL, the paths are also valid for
-majority of Linux systems without additional intervention. If
-this is not set, we can use SSL_CERT_DIR to point it to correct
-location.
-
-Fixes:
https://github.com/nodejs/node/issues/3159
-PR-URL:
https://github.com/nodejs/node/pull/8334
-Reviewed-By: Sam Roberts
vieuxtech@gmail.com
-Reviewed-By: James M Snell
jasnell@gmail.com
-Reviewed-By: Fedor Indutny
fedor.indutny@gmail.com
----
- configure | 7 +++++++
- src/node_crypto.cc | 4 ++++
- 2 files changed, 11 insertions(+)
-
-diff --git a/configure b/configure
-index 821b8771bc8909d8453bc31e3c8d8dc65368c0e4..e64bad9a030693b726e0974f48aefa6e1ad87723 100755
---- a/configure
-+++ b/configure
-@@ -142,10 +142,15 @@ parser.add_option("--openssl-no-asm",
- parser.add_option('--openssl-fips',
- action='store',
- dest='openssl_fips',
- help='Build OpenSSL using FIPS canister .o file in supplied folder')
-
-+parser.add_option('--openssl-use-def-ca-store',
-+ action='store_true',
-+ dest='use_openssl_ca_store',
-+ help='Use OpenSSL supplied CA store instead of compiled-in Mozilla CA copy.')
-+
- shared_optgroup.add_option('--shared-http-parser',
- action='store_true',
- dest='shared_http_parser',
- help='link to a shared http_parser DLL instead of static linking')
-
-@@ -937,10 +942,12 @@ def configure_v8(o):
-
- def configure_openssl(o):
- o['variables']['node_use_openssl'] = b(not options.without_ssl)
- o['variables']['node_shared_openssl'] = b(options.shared_openssl)
- o['variables']['openssl_no_asm'] = 1 if options.openssl_no_asm else 0
-+ if options.use_openssl_ca_store:
-+ o['defines'] += ['NODE_OPENSSL_CERT_STORE']
- if options.openssl_fips:
- o['variables']['openssl_fips'] = options.openssl_fips
- fips_dir = os.path.join(root_dir, 'deps', 'openssl', 'fips')
- fips_ld = os.path.abspath(os.path.join(fips_dir, 'fipsld'))
- o['make_fips_settings'] = [
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index c5630f30d0bef75ced53b36062bb1f0324dbdb9d..873b37d71b51aa62c8ebd56ea5b182567675e2dd 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -803,14 +803,18 @@ static X509_STORE* NewRootCertStore() {
- root_certs_vector->push_back(x509);
- }
- }
-
- X509_STORE* store = X509_STORE_new();
-+#if defined(NODE_OPENSSL_CERT_STORE)
-+ X509_STORE_set_default_paths(store);
-+#else
- for (auto& cert : *root_certs_vector) {
- X509_up_ref(cert);
- X509_STORE_add_cert(store, cert);
- }
-+#endif
-
- return store;
- }
-
-
---
-2.12.0
-
diff --git a/nodejs.spec b/nodejs.spec
index b2d14fb..aa28b3f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -440,7 +440,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Fri May 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
+* Fri Jun 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
- Update to 6.11.0
- remove system CA patch since it was merged upstream
-
https://github.com/nodejs/node/pull/8334
commit 8cf702090d039ca8fa20e5ff955f9008b7ff4c62
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Jun 9 12:59:25 2017 +0200
Update to 6.11.0, remove merged system CA patch
diff --git a/.gitignore b/.gitignore
index e92f336..863b931 100644
--- a/.gitignore
+++ b/.gitignore
@@ -67,3 +67,4 @@
/node-v6.10.1-stripped.tar.gz
/node-v6.10.2-stripped.tar.gz
/node-v6.10.3-stripped.tar.gz
+/node-v6.11.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 2383a44..b2d14fb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -17,18 +17,18 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 6
-%global nodejs_minor 10
-%global nodejs_patch 3
+%global nodejs_minor 11
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 101
+%global v8_patch 102
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -99,10 +99,6 @@ Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
Patch2: 0002-Use-openssl-1.0.1.patch
-# use system certificates instead of the bundled ones
-# Backported from upstream 7.5.0+
-Patch3: 0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
-
# Backported upstream patch to allow building with GCC 7 from
#
https://github.com/nodejs/node/commit/2bbee49e6f170a5d6628444a7c9a2235fe0dd9...
Patch4: 0004-Fix-compatibility-with-GCC-7.patch
@@ -252,9 +248,6 @@ rm -rf deps/icu-small \
deps/uv \
deps/zlib
-# Use system CA certificates
-%patch3 -p1
-
# Fix GCC7 build
%patch4 -p1
@@ -447,6 +440,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri May 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.11.0-1
+- Update to 6.11.0
+- remove system CA patch since it was merged upstream
+-
https://github.com/nodejs/node/pull/8334
+
* Fri May 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-3
- Rebuild without bootstrap
diff --git a/sources b/sources
index fee1521..77400eb 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.10.3-stripped.tar.gz) = 0750e6c1597c2379df59fafb5945d3af7d59f371c7996c56394f0cac5361627cebde3f6e46468ef76b0eb6d242e77538ec0c8136f75b98c140f1c6235df596bd
+SHA512 (node-v6.11.0-stripped.tar.gz) = a23e0d8461dcf87048555d2e4e62c0bacecf6d2a6a8d6d27ed08f6f0911ec31f9a7abc48ab45478eaf3ba6af593714e628a194340168581f2f9c3c8dbf0c7a1d
commit 8951f328666c0efea558c536758001088cf598dc
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue Jun 6 14:40:56 2017 +0200
Require http-parser-devel, enable bootstrap
diff --git a/nodejs.spec b/nodejs.spec
index 22129f7..503471e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
%global with_debug 1
-%{!?_with_bootstrap: %global bootstrap 0}
+%{!?_with_bootstrap: %global bootstrap 1}
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -21,7 +21,7 @@
%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -203,6 +203,9 @@ Requires: libuv-devel%{?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
+%if ! 0%{?bootstrap}
+Requires: http-parser-devel%{?_isa}
+%endif
%description devel
Development headers for the Node.js JavaScript runtime.
@@ -447,6 +450,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jun 06 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-3
+- Require http-parser-devel when using system http-parser
+- enable bootstraping
+
* Thu May 11 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-2
- Provide bundled http-parser in case of boostraping
commit 982c5528049512b62cee1567eedea2b37941528d
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri May 12 13:54:03 2017 +0200
Rebuild without bootstrap
diff --git a/nodejs.spec b/nodejs.spec
index 8debc37..2383a44 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
%global with_debug 1
-%{!?_with_bootstrap: %global bootstrap 1}
+%{!?_with_bootstrap: %global bootstrap 0}
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -21,7 +21,7 @@
%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -447,6 +447,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri May 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-3
+- Rebuild without bootstrap
+
* Thu May 11 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-2
- Provide bundled http-parser in case of boostraping
commit 67880f7f5a4b14cd46bb3f1888997a6548c749f6
Author: Tomas Tomecek
ttomecek@redhat.com
Date: Thu May 11 15:58:04 2017 +0200
move nodejs modulemd to modules/nodejs
Signed-off-by: Tomas Tomecek
ttomecek@redhat.com
diff --git a/nodejs.yaml b/nodejs.yaml
deleted file mode 100644
index 5eb4f61..0000000
--- a/nodejs.yaml
+++ /dev/null
@@ -1,66 +0,0 @@
-document: modulemd
-version: 1
-data:
- summary: Javascript runtime
- description: Node.js is a platform built on V8 JavaScript Engine for easily building fast, scalable network applications.
- license:
- module: GPLv3
- content:
- - MIT
- - ASL 2.0
- - ISC
- - BSD
- dependencies:
- buildrequires:
- base-runtime: f26
- common-build-dependencies: f26
- common-build-dependencies-bootstrap: f26
- shared-userspace: f26
- requires:
- base-runtime: master
- references:
- community:
https://fedoraproject.org/wiki/Modularity
- documentation:
https://fedoraproject.org/wiki/Fedora_Packaging_Guidelines_for_Modules
- tracker:
https://taiga.fedorainfracloud.org/project/modularity
- profiles:
- default:
- rpms:
- - nodejs
- - npm
- minimal:
- rpms:
- - nodejs
- components:
- rpms:
- nodejs:
- rationale: JavaScript runtime
- ref: f26
- buildorder: 0
- npm:
- rationale: npm package manager
- ref: f26
- buildorder: 1
- # python:
- # rationale: build dependency
- # ref: f26
- # openssl:
- # rationale: build dependency
- # ref: f25
- # #compat-openssl10: f26
- # icu:
- # rationale: build dependency
- # ref: f26
- # libuv:
- # rationale: build dependency
- # ref: f26
- # zlib:
- # rationale: build dependency
- # ref: f26
- # gcc:
- # rationale: build dependency
- # ref: f26
- # #gcc-c++:
- # #rationale: build dependency
- # #ref: f26
- # #systemtap-sdt-devel: f26
- # #ca-certificates: f26
commit b63fe8420be7c31cfa7d86732fbdb73164769020
Author: Tomas Tomecek
ttomecek@redhat.com
Date: Thu May 11 14:40:28 2017 +0200
turn bootstrapping off
Signed-off-by: Tomas Tomecek
ttomecek@redhat.com
diff --git a/nodejs.spec b/nodejs.spec
index 8debc37..22129f7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
%global with_debug 1
-%{!?_with_bootstrap: %global bootstrap 1}
+%{!?_with_bootstrap: %global bootstrap 0}
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
commit 35216d99851df20a1fcc7c0b6a2b77bbcdc2549a
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu May 11 12:40:45 2017 +0200
Commit yaml
diff --git a/nodejs.yaml b/nodejs.yaml
new file mode 100644
index 0000000..5eb4f61
--- /dev/null
+++ b/nodejs.yaml
@@ -0,0 +1,66 @@
+document: modulemd
+version: 1
+data:
+ summary: Javascript runtime
+ description: Node.js is a platform built on V8 JavaScript Engine for easily building fast, scalable network applications.
+ license:
+ module: GPLv3
+ content:
+ - MIT
+ - ASL 2.0
+ - ISC
+ - BSD
+ dependencies:
+ buildrequires:
+ base-runtime: f26
+ common-build-dependencies: f26
+ common-build-dependencies-bootstrap: f26
+ shared-userspace: f26
+ requires:
+ base-runtime: master
+ references:
+ community:
https://fedoraproject.org/wiki/Modularity
+ documentation:
https://fedoraproject.org/wiki/Fedora_Packaging_Guidelines_for_Modules
+ tracker:
https://taiga.fedorainfracloud.org/project/modularity
+ profiles:
+ default:
+ rpms:
+ - nodejs
+ - npm
+ minimal:
+ rpms:
+ - nodejs
+ components:
+ rpms:
+ nodejs:
+ rationale: JavaScript runtime
+ ref: f26
+ buildorder: 0
+ npm:
+ rationale: npm package manager
+ ref: f26
+ buildorder: 1
+ # python:
+ # rationale: build dependency
+ # ref: f26
+ # openssl:
+ # rationale: build dependency
+ # ref: f25
+ # #compat-openssl10: f26
+ # icu:
+ # rationale: build dependency
+ # ref: f26
+ # libuv:
+ # rationale: build dependency
+ # ref: f26
+ # zlib:
+ # rationale: build dependency
+ # ref: f26
+ # gcc:
+ # rationale: build dependency
+ # ref: f26
+ # #gcc-c++:
+ # #rationale: build dependency
+ # #ref: f26
+ # #systemtap-sdt-devel: f26
+ # #ca-certificates: f26
commit b0da67b00a92f2ad570d91d6f50fb9b1786650c9
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu May 11 10:31:50 2017 +0200
Remove shared-http-parser from bootstraped configure
diff --git a/nodejs.spec b/nodejs.spec
index 68cf04d..8debc37 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -297,7 +297,6 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--shared-openssl \
--shared-zlib \
--shared-libuv \
- --shared-http-parser \
--without-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
commit e289d3987f373147502fcc6bb74d500b0e4e0d68
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu May 11 09:48:09 2017 +0200
Bundle http-parser when bootstraping
diff --git a/nodejs.spec b/nodejs.spec
index 618ca89..68cf04d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,7 @@
%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -39,6 +39,12 @@
%global c_ares_patch 1
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
+# http-parser - from deps/http_parser/http_parser.h
+%global http_parser_major 2
+%global http_parser_minor 7
+%global http_parser_patch 0
+%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
+
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
# Note: this will be unmerged in v7 or v8
@@ -115,8 +121,10 @@ BuildRequires: gcc-c++ >= 4.8.0
%if ! 0%{?bootstrap}
BuildRequires: systemtap-sdt-devel
-%endif
BuildRequires: http-parser-devel >= 2.7.0
+%else
+Provides: bundled(http-parser) = %{http_parser_version}
+%endif
%if 0%{?epel}
BuildRequires: openssl-devel >= 1:1.0.1
@@ -240,8 +248,7 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/http-parser \
- deps/icu-small \
+rm -rf deps/icu-small \
deps/uv \
deps/zlib
@@ -441,6 +448,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu May 11 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.3-2
+- Provide bundled http-parser in case of boostraping
+
* Wed May 10 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.3-1
- Update to 6.10.3 (LTS)
-
https://nodejs.org/en/blog/release/v6.10.3/
commit a7ede8050ff54ec68f59e3c7f8c1ab366baa6857
Merge: 1be40b2 12cf557
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed May 10 09:46:30 2017 -0400
Merge branch 'master' into epel7
diff --cc nodejs.spec
index 0d04595,618ca89..0c01718
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -116,7 -112,11 +110,7 @@@ BuildRequires: libicu-deve
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
-
-%if ! 0%{?bootstrap}
--BuildRequires: systemtap-sdt-devel
-%endif
+ BuildRequires: http-parser-devel >= 2.7.0
%if 0%{?epel}
BuildRequires: openssl-devel >= 1:1.0.1
commit 12cf55706352c1c5b605e1eb20a8de36658a602b
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed May 10 09:16:52 2017 -0400
Update to 6.10.3
Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
diff --git a/.gitignore b/.gitignore
index 81f6db8..e92f336 100644
--- a/.gitignore
+++ b/.gitignore
@@ -66,3 +66,4 @@
/node-v6.10.0-stripped.tar.gz
/node-v6.10.1-stripped.tar.gz
/node-v6.10.2-stripped.tar.gz
+/node-v6.10.3-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 16d30ed..618ca89 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,17 +18,17 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 10
-%global nodejs_patch 2
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 98
+%global v8_patch 101
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -39,12 +39,6 @@
%global c_ares_patch 1
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
-# http-parser - from deps/http_parser/http_parser.h
-%global http_parser_major 2
-%global http_parser_minor 7
-%global http_parser_patch 0
-%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
-
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
# Note: this will be unmerged in v7 or v8
@@ -122,6 +116,7 @@ BuildRequires: gcc-c++ >= 4.8.0
%if ! 0%{?bootstrap}
BuildRequires: systemtap-sdt-devel
%endif
+BuildRequires: http-parser-devel >= 2.7.0
%if 0%{?epel}
BuildRequires: openssl-devel >= 1:1.0.1
@@ -176,10 +171,6 @@ Provides: bundled(c-ares) = %{c_ares_version}
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
Provides: bundled(v8) = %{v8_version}
-# Node.js and http-parser share an upstream. The http-parser upstream does not
-# do releases often and is almost always far behind the bundled version
-Provides: bundled(http-parser) = %{http_parser_version}
-
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?epel}
# EPEL doesn't support Recommends, so make it strict
@@ -249,7 +240,8 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/icu-small \
+rm -rf deps/http-parser \
+ deps/icu-small \
deps/uv \
deps/zlib
@@ -289,6 +281,7 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--shared-openssl \
--shared-zlib \
--shared-libuv \
+ --shared-http-parser \
--with-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
@@ -297,6 +290,7 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--shared-openssl \
--shared-zlib \
--shared-libuv \
+ --shared-http-parser \
--without-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
@@ -382,12 +376,17 @@ ln -sf %{_pkgdocdir} %{buildroot}%{_prefix}/lib/node_modules/npm/html
ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
+# Node tries to install some python files into a documentation directory
+# (and not the proper one). Remove them for now until we figure out what to
+# do with them.
+rm -f %{buildroot}/%{_defaultdocdir}/node/lldb_commands.py \
+ %{buildroot}/%{_defaultdocdir}/node/lldbinit
+
%check
# Fail the build if the versions don't match
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8, '%{v8_version}')"
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
-%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.http_parser, '%{http_parser_version}')"
# Ensure we have punycode and that the version matches
%{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
@@ -412,7 +411,6 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_rpmconfigdir}/nodejs_native.req
%license LICENSE
%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
-%doc ROADMAP.md WORKING_GROUPS.md
%doc %{_mandir}/man1/node.1*
@@ -443,6 +441,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed May 10 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.3-1
+- Update to 6.10.3 (LTS)
+-
https://nodejs.org/en/blog/release/v6.10.3/
+- Stop using the bundled http-parser now that there is an upstream
+ release with a new-enough version.
+
* Tue May 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.2-3
- Bootstrap systemtap-sdt-devel for modularity
diff --git a/sources b/sources
index d360d40..fee1521 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.10.2-stripped.tar.gz) = aee8ebc3a76d34e3b78a785ad2d9d642bcab7a64c53ce214b88269f360256f2b35566eec9484405588a0bd68247cd6ed0855025ed5e8a6405f7ba09c203b5a55
+SHA512 (node-v6.10.3-stripped.tar.gz) = 0750e6c1597c2379df59fafb5945d3af7d59f371c7996c56394f0cac5361627cebde3f6e46468ef76b0eb6d242e77538ec0c8136f75b98c140f1c6235df596bd
commit 7f7badf0adcb2672ff6375465ccf01b3a1575f3c
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed May 10 08:10:03 2017 +0200
Add if to %files too
diff --git a/nodejs.spec b/nodejs.spec
index dac0f97..16d30ed 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -402,8 +402,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%dir %{_datadir}/systemtap
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
+
+%if ! 0%{?bootstrap}
%dir %{_usr}/lib/dtrace
%{_usr}/lib/dtrace/node.d
+%endif
+
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
%license LICENSE
commit 8add2493d0c45aba76a6178c752e3d050eb5dd66
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue May 9 16:54:00 2017 +0200
Bootstrap systemtap-sdt-devel for modularity
diff --git a/nodejs.spec b/nodejs.spec
index 2758e7b..dac0f97 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,7 @@
%global with_debug 1
+%{!?_with_bootstrap: %global bootstrap 1}
+
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
# ARM builds currently break on the Debug builds, so we'll just
@@ -19,7 +21,7 @@
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -116,7 +118,10 @@ BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
+
+%if ! 0%{?bootstrap}
BuildRequires: systemtap-sdt-devel
+%endif
%if 0%{?epel}
BuildRequires: openssl-devel >= 1:1.0.1
@@ -279,6 +284,7 @@ export CXXFLAGS='%{optflags} -g \
export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
+%if ! 0%{?bootstrap}
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
@@ -286,6 +292,15 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--with-dtrace \
--with-intl=system-icu \
--openssl-use-def-ca-store
+%else
+./configure --prefix=%{_prefix} \
+ --shared-openssl \
+ --shared-zlib \
+ --shared-libuv \
+ --without-dtrace \
+ --with-intl=system-icu \
+ --openssl-use-def-ca-store
+%endif
%if %{?with_debug} == 1
# Setting BUILDTYPE=Debug builds both release and debug binaries
@@ -424,6 +439,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue May 09 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.2-3
+- Bootstrap systemtap-sdt-devel for modularity
+
* Wed Apr 19 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.2-2
- Switch to final upstream patch for GCC 7 compatibility
commit 69da18ab934a4c9062948cf17e22658fdccb5f9e
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Apr 19 07:28:42 2017 -0400
Switch to final upstream patch for GCC 7 compatibility
Also drop unused older version of the gyp file patch.
This commit makes no functional changes (the upstream patch is
identical except for the commit message), so we aren't building
this change.
diff --git a/0001-disable-running-gyp-files-for-bundled-deps.patch b/0001-disable-running-gyp-files-for-bundled-deps.patch
deleted file mode 100644
index 7dbeb1c..0000000
--- a/0001-disable-running-gyp-files-for-bundled-deps.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 061822759b37ab5bda659d74f9149cace5afe628 Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher
sgallagh@redhat.com
-Date: Tue, 1 Dec 2015 16:35:29 -0500
-Subject: [PATCH 1/4] disable running gyp files for bundled deps
-
----
- Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 719b855559383a8011c8f6f073ed69a1cf21aeee..31cd25452dccb0624809c0570a738c5b49cc782c 100644
---- a/Makefile
-+++ b/Makefile
-@@ -70,11 +70,11 @@ $(NODE_EXE): config.gypi out/Makefile
-
- $(NODE_G_EXE): config.gypi out/Makefile
- $(MAKE) -C out BUILDTYPE=Debug V=$(V)
- ln -fs out/Debug/$(NODE_EXE) $@
-
--out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
-+out/Makefile: common.gypi deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
- $(PYTHON) tools/gyp_node.py -f make
-
- config.gypi: configure
- $(error Missing or stale $@, please run ./$<)
-
---
-2.12.0
-
diff --git a/0004-Fix-compatibility-with-GCC-7.patch b/0004-Fix-compatibility-with-GCC-7.patch
index da90368..55427f7 100644
--- a/0004-Fix-compatibility-with-GCC-7.patch
+++ b/0004-Fix-compatibility-with-GCC-7.patch
@@ -1,9 +1,18 @@
-From fbb5821dc3d967e916a187ee009e955530d2ce8d Mon Sep 17 00:00:00 2001
+From a75f63218b84ee508c770391519a13bd400a5003 Mon Sep 17 00:00:00 2001
From: Ben Noordhuis
info@bnoordhuis.nl
-Date: Tue, 28 Feb 2017 13:56:40 -0500
-Subject: [PATCH 4/4] Fix compatibility with GCC 7
+Date: Thu, 13 Apr 2017 13:48:01 +0200
+Subject: [PATCH 4/4] v8: fix build errors with g++ 7
-Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
+This is a local patch because upstream fixed it differently by moving
+large chunks of code out of objects.h. We cannot easily back-port
+those changes due to their size and invasiveness.
+
+Fixes:
https://github.com/nodejs/node/issues/10388
+PR-URL:
https://github.com/nodejs/node/pull/12392
+Reviewed-By: Anna Henningsen
anna@addaleax.net
+Reviewed-By: Benjamin Gruenbaum
benjamingr@gmail.com
+Reviewed-By: Daniel Bevenius
daniel.bevenius@gmail.com
+Reviewed-By: James M Snell
jasnell@gmail.com
---
deps/v8/src/objects-body-descriptors.h | 2 +-
deps/v8/src/objects-inl.h | 21 +++++++++++++++++++++
@@ -99,5 +108,5 @@ index d1632c9deb298218faea31886ffdb0a8e0201cdc..47b02dadcff9658c9fcfe629e1376670
Isolate* isolate, int at_least_space_for,
MinimumCapacity capacity_option = USE_DEFAULT_MINIMUM_CAPACITY,
--
-2.12.0
+2.12.2
diff --git a/nodejs.spec b/nodejs.spec
index a2ab977..2758e7b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -101,8 +101,8 @@ Patch2: 0002-Use-openssl-1.0.1.patch
# Backported from upstream 7.5.0+
Patch3: 0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
-# Patch to allow building with GCC 7 from
-#
https://github.com/nodejs/node/issues/10388#issuecomment-283120731
+# Backported upstream patch to allow building with GCC 7 from
+#
https://github.com/nodejs/node/commit/2bbee49e6f170a5d6628444a7c9a2235fe0dd9...
Patch4: 0004-Fix-compatibility-with-GCC-7.patch
# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
@@ -424,6 +424,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Apr 19 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.2-2
+- Switch to final upstream patch for GCC 7 compatibility
+
* Wed Apr 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.2-1
- Update to 6.10.2
commit 1be40b2ee518c00f44805c2e5607f3fb334fe2cc
Merge: b30eb43 c522b08
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Apr 13 09:21:48 2017 -0400
Merge branch 'master' into epel7
commit c522b08552d4148de3e35559f3bb8951717a19e2
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Apr 12 16:10:42 2017 +0200
Update to v6.10.2
diff --git a/.gitignore b/.gitignore
index 19cacf2..81f6db8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -65,3 +65,4 @@
/node-v6.9.5-stripped.tar.gz
/node-v6.10.0-stripped.tar.gz
/node-v6.10.1-stripped.tar.gz
+/node-v6.10.2-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index a856e43..a2ab977 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,17 +16,17 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 10
-%global nodejs_patch 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 95
+%global v8_patch 98
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -424,9 +424,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Apr 12 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.2-1
+- Update to 6.10.2
+
* Mon Apr 03 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.1-3
- Move NPM manpages into the correct subpackage
-- Fixes: rhbx#1433403
+- Fixes: rhbz#1433403
* Mon Apr 03 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.1-2
- Revert upstream change that is incompatible with OpenSSL 1.0.1
diff --git a/sources b/sources
index c3a71b9..d360d40 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.10.1-stripped.tar.gz) = 365de1f96cb380fbc1a4693edcd5c2c1e48a2ab75378d741614f20ffc9f611e532b9af7273924af773339d852c2873fa77436d30a28580221e8eae8a785e6ce8
+SHA512 (node-v6.10.2-stripped.tar.gz) = aee8ebc3a76d34e3b78a785ad2d9d642bcab7a64c53ce214b88269f360256f2b35566eec9484405588a0bd68247cd6ed0855025ed5e8a6405f7ba09c203b5a55
commit b30eb436070aca77681bfdeee84cf109226a5ea3
Merge: 5585723 e61c90d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 3 14:15:56 2017 -0400
Merge branch 'master' into epel7
commit e61c90d79063bc34ee1033db85705b089a25c3c3
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 3 14:14:17 2017 -0400
Move NPM manpages into the correct subpackage
Fixes: rhbx#1433403
diff --git a/nodejs.spec b/nodejs.spec
index bb4f8c8..a856e43 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -394,7 +394,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%license LICENSE
%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
%doc ROADMAP.md WORKING_GROUPS.md
-%doc %{_mandir}/man*/*
+%doc %{_mandir}/man1/node.1*
%files devel
@@ -411,6 +411,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_prefix}/lib/node_modules/npm
%ghost %{_sysconfdir}/npmrc
%ghost %{_sysconfdir}/npmignore
+%doc %{_mandir}/man*/npm*
+%doc %{_mandir}/man5/package.json.5*
+%doc %{_mandir}/man7/removing-npm.7*
+%doc %{_mandir}/man7/semver.7*
+
%files docs
%dir %{_pkgdocdir}
@@ -419,6 +424,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Apr 03 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.1-3
+- Move NPM manpages into the correct subpackage
+- Fixes: rhbx#1433403
+
* Mon Apr 03 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.1-2
- Revert upstream change that is incompatible with OpenSSL 1.0.1
- Fixes: rhbz#1436445
commit 9f1c95f7944639d97e46eb1fd9f60ce792d19928
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 3 13:37:43 2017 -0400
Revert upstream change that is incompatible with OpenSSL 1.0.1
Fixes: rhbz#1436445
diff --git a/EPEL01-openssl101-compat.patch b/EPEL01-openssl101-compat.patch
new file mode 100644
index 0000000..f419f95
--- /dev/null
+++ b/EPEL01-openssl101-compat.patch
@@ -0,0 +1,30 @@
+diff -ru a/src/node_crypto.cc b/src/node_crypto.cc
+--- a/src/node_crypto.cc 2017-03-31 22:39:56.483283868 +0200
++++ b/src/node_crypto.cc 2017-03-31 22:45:36.250267750 +0200
+@@ -851,8 +851,6 @@
+ }
+ }
+
+- // Increment reference count so global store is not deleted along with CTX.
+- X509_STORE_up_ref(root_cert_store);
+ SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
+ }
+
+diff -ru a/src/node_crypto.h b/src/node_crypto.h
+--- a/src/node_crypto.h 2017-03-21 20:43:33.000000000 +0100
++++ b/src/node_crypto.h 2017-03-31 22:43:15.548183432 +0200
+@@ -145,6 +145,13 @@
+ }
+
+ env()->isolate()->AdjustAmountOfExternalAllocatedMemory(-kExternalSize);
++ if (ctx_->cert_store == root_cert_store) {
++ // SSL_CTX_free() will attempt to free the cert_store as well.
++ // Since we want our root_cert_store to stay around forever
++ // we just clear the field. Hopefully OpenSSL will not modify this
++ // struct in future versions.
++ ctx_->cert_store = nullptr;
++ }
+ SSL_CTX_free(ctx_);
+ if (cert_ != nullptr)
+ X509_free(cert_);
+
diff --git a/nodejs.spec b/nodejs.spec
index 8b73d68..bb4f8c8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -105,6 +105,10 @@ Patch3: 0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
#
https://github.com/nodejs/node/issues/10388#issuecomment-283120731
Patch4: 0004-Fix-compatibility-with-GCC-7.patch
+# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
+# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
+Patch5: EPEL01-openssl101-compat.patch
+
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
@@ -252,6 +256,7 @@ rm -rf deps/icu-small \
%if 0%{?epel}
%patch2 -p1
+%patch5 -p1
%endif
@@ -414,6 +419,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Apr 03 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.1-2
+- Revert upstream change that is incompatible with OpenSSL 1.0.1
+- Fixes: rhbz#1436445
+
* Wed Mar 22 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.1-1
- Update to 6.10.1
- remove small-icu from deps
commit 55857230369b2cdb264044845e004a58ebca5bf3
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 3 13:37:43 2017 -0400
Revert upstream change that is incompatible with OpenSSL 1.0.1
Fixes: rhbz#1436445
diff --git a/EPEL01-openssl101-compat.patch b/EPEL01-openssl101-compat.patch
new file mode 100644
index 0000000..f419f95
--- /dev/null
+++ b/EPEL01-openssl101-compat.patch
@@ -0,0 +1,30 @@
+diff -ru a/src/node_crypto.cc b/src/node_crypto.cc
+--- a/src/node_crypto.cc 2017-03-31 22:39:56.483283868 +0200
++++ b/src/node_crypto.cc 2017-03-31 22:45:36.250267750 +0200
+@@ -851,8 +851,6 @@
+ }
+ }
+
+- // Increment reference count so global store is not deleted along with CTX.
+- X509_STORE_up_ref(root_cert_store);
+ SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
+ }
+
+diff -ru a/src/node_crypto.h b/src/node_crypto.h
+--- a/src/node_crypto.h 2017-03-21 20:43:33.000000000 +0100
++++ b/src/node_crypto.h 2017-03-31 22:43:15.548183432 +0200
+@@ -145,6 +145,13 @@
+ }
+
+ env()->isolate()->AdjustAmountOfExternalAllocatedMemory(-kExternalSize);
++ if (ctx_->cert_store == root_cert_store) {
++ // SSL_CTX_free() will attempt to free the cert_store as well.
++ // Since we want our root_cert_store to stay around forever
++ // we just clear the field. Hopefully OpenSSL will not modify this
++ // struct in future versions.
++ ctx_->cert_store = nullptr;
++ }
+ SSL_CTX_free(ctx_);
+ if (cert_ != nullptr)
+ X509_free(cert_);
+
diff --git a/nodejs.spec b/nodejs.spec
index 8d0da96..94f6c09 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -105,6 +105,10 @@ Patch3: 0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
#
https://github.com/nodejs/node/issues/10388#issuecomment-283120731
Patch4: 0004-Fix-compatibility-with-GCC-7.patch
+# RHEL 7 still uses OpenSSL 1.0.1 for now, and it segfaults on SSL
+# Revert this upstream patch until RHEL 7 upgrades to 1.0.2
+Patch5: EPEL01-openssl101-compat.patch
+
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
@@ -252,6 +256,7 @@ rm -rf deps/icu-small \
%if 0%{?epel}
%patch2 -p1
+%patch5 -p1
%endif
@@ -412,6 +417,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Apr 03 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.1-2
+- Revert upstream change that is incompatible with OpenSSL 1.0.1
+- Fixes: rhbz#1436445
+
* Wed Mar 22 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.1-1
- Update to 6.10.1
- remove small-icu from deps
commit 1ef8904a34dfe70c0b6391dc35e2ef41d96e6155
Merge: e472845 41af04f
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Mar 23 15:56:43 2017 +0100
Merge branch 'master' into epel7
commit 41af04f2a3c050fb44628e91ac65fd225b927acb
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Mar 22 19:19:11 2017 +0100
Update to 6.10.1
diff --git a/.gitignore b/.gitignore
index 3fc8526..19cacf2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -64,3 +64,4 @@
/node-v6.9.4-stripped.tar.gz
/node-v6.9.5-stripped.tar.gz
/node-v6.10.0-stripped.tar.gz
+/node-v6.10.1-stripped.tar.gz
diff --git a/0001-Disable-running-gyp-files-for-bundled-deps.patch b/0001-Disable-running-gyp-files-for-bundled-deps.patch
new file mode 100644
index 0000000..fe9f854
--- /dev/null
+++ b/0001-Disable-running-gyp-files-for-bundled-deps.patch
@@ -0,0 +1,25 @@
+From 54cb96f338bd162dcf1301b7d7a46eea2a56befb Mon Sep 17 00:00:00 2001
+From: Zuzana Svetlikova
zsvetlik@redhat.com
+Date: Wed, 22 Mar 2017 19:13:10 +0100
+Subject: [PATCH] Disable running gyp files for bundled deps
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index a2b64e63b4..7b0847d1d5 100644
+--- a/Makefile
++++ b/Makefile
+@@ -77,7 +77,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
+ $(MAKE) -C out BUILDTYPE=Debug V=$(V)
+ if [ ! -r $@ -o ! -L $@ ]; then ln -fs out/Debug/$(NODE_EXE) $@; fi
+
+-out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
++out/Makefile: common.gypi deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
+ $(PYTHON) tools/gyp_node.py -f make
+
+ config.gypi: configure
+--
+2.12.0
+
diff --git a/nodejs.spec b/nodejs.spec
index 2bb558f..8b73d68 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,4 +1,4 @@
-%global with_debug 0
+%global with_debug 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -16,7 +16,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 10
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -26,7 +26,7 @@
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 93
+%global v8_patch 95
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -92,7 +92,7 @@ Source100: %{name}-tarball.sh
Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
-Patch1: 0001-disable-running-gyp-files-for-bundled-deps.patch
+Patch1: 0001-Disable-running-gyp-files-for-bundled-deps.patch
# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
Patch2: 0002-Use-openssl-1.0.1.patch
@@ -240,7 +240,8 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/uv \
+rm -rf deps/icu-small \
+ deps/uv \
deps/zlib
# Use system CA certificates
@@ -413,6 +414,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Mar 22 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.10.1-1
+- Update to 6.10.1
+- remove small-icu from deps
+
* Thu Mar 09 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.0-1
- Update to 6.10.0
-
https://nodejs.org/en/blog/release/v6.10.0/
diff --git a/sources b/sources
index 31d2fa7..c3a71b9 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.10.0-stripped.tar.gz) = 2da288352df3113d59e882aeb7007a956c4ae7d3fa74262f9492dd789c6c299ff299a355b9a55f999ed3e4e78dd3d7ad4e55fece5e93b9e9ef82da8e670d562e
+SHA512 (node-v6.10.1-stripped.tar.gz) = 365de1f96cb380fbc1a4693edcd5c2c1e48a2ab75378d741614f20ffc9f611e532b9af7273924af773339d852c2873fa77436d30a28580221e8eae8a785e6ce8
commit e47284563b28e970b1021f5b1fbff8bbc0cfa384
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 9 16:09:02 2017 -0500
Remove dtrace bits pulled in during merge from master
diff --git a/nodejs.spec b/nodejs.spec
index b33795e..706a01a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -381,8 +381,6 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%dir %{_datadir}/systemtap
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
-%dir %{_usr}/lib/dtrace
-%{_usr}/lib/dtrace/node.d
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
%license LICENSE
commit 79a6267572d5807b0ec2d65adc2ecec750c4960e
Merge: 37c8261 1b7255b
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 9 15:50:41 2017 -0500
Merge branch 'master' into epel7
diff --cc nodejs.spec
index 3461a50,2bb558f..b33795e
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -272,8 -277,9 +277,9 @@@ export CXXFLAGS="$(echo ${CXXFLAGS} | t
--shared-openssl \
--shared-zlib \
--shared-libuv \
-- --with-dtrace \
- --with-intl=system-icu
++ --without-dtrace \
+ --with-intl=system-icu \
+ --openssl-use-def-ca-store
%if %{?with_debug} == 1
# Setting BUILDTYPE=Debug builds both release and debug binaries
commit 1b7255bc99ddff65820cac15a98ad78b879c8ac9
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Mar 9 14:08:08 2017 -0500
Update to 6.10.0
https://nodejs.org/en/blog/release/v6.10.0/
New patch for handling system CA certificates
diff --git a/.gitignore b/.gitignore
index bd55c66..3fc8526 100644
--- a/.gitignore
+++ b/.gitignore
@@ -63,3 +63,4 @@
/node-v6.9.3-stripped.tar.gz
/node-v6.9.4-stripped.tar.gz
/node-v6.9.5-stripped.tar.gz
+/node-v6.10.0-stripped.tar.gz
diff --git a/0001-disable-running-gyp-files-for-bundled-deps.patch b/0001-disable-running-gyp-files-for-bundled-deps.patch
index 539e591..7dbeb1c 100644
--- a/0001-disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-disable-running-gyp-files-for-bundled-deps.patch
@@ -1,4 +1,4 @@
-From 71a2912f95f287519a3c695417655a0cae4e1bc0 Mon Sep 17 00:00:00 2001
+From 061822759b37ab5bda659d74f9149cace5afe628 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:35:29 -0500
Subject: [PATCH 1/4] disable running gyp files for bundled deps
@@ -25,5 +25,5 @@ index 719b855559383a8011c8f6f073ed69a1cf21aeee..31cd25452dccb0624809c0570a738c5b
$(error Missing or stale $@, please run ./$<)
--
-2.11.1
+2.12.0
diff --git a/0002-Use-openssl-1.0.1.patch b/0002-Use-openssl-1.0.1.patch
index 7988f1e..4b90ade 100644
--- a/0002-Use-openssl-1.0.1.patch
+++ b/0002-Use-openssl-1.0.1.patch
@@ -1,4 +1,4 @@
-From f614552e1698387dd4d245e07de6b75d9c023e65 Mon Sep 17 00:00:00 2001
+From 91d1a67b8cc249af59929cd1a76629a2614860bd Mon Sep 17 00:00:00 2001
From: Haikel Guemar
hguemar@fedoraproject.org
Date: Tue, 26 Jul 2016 22:50:22 +0200
Subject: [PATCH 2/4] Use openssl 1.0.1
@@ -14,10 +14,10 @@
https://github.com/nodejs/node/issues/2783
5 files changed, 223 insertions(+), 13 deletions(-)
diff --git a/doc/api/tls.md b/doc/api/tls.md
-index 488337a0764e4cc5e7c27bb8075c1b907696908b..292bbf26ddf5a8dd373cb15e97d220229b4cdcc1 100644
+index 3784210ba7b6c046b39d74b45e44538041d35ae2..3c9d72b8d5ef81d15773aed077bd00d2041c9e93 100644
--- a/doc/api/tls.md
+++ b/doc/api/tls.md
-@@ -112,10 +112,16 @@ handshake extensions:
+@@ -113,10 +113,16 @@ handshake extensions:
* ALPN/NPN - Allows the use of one TLS server for multiple protocols (HTTP,
SPDY, HTTP/2)
* SNI - Allows the use of one TLS server for multiple hostnames with different
@@ -73,7 +73,7 @@ index 2e6be8df37c345a383d8a78898daf2a147d90630..239eadbac8ea8e601745a63347a8bb30
// file access modes
NODE_DEFINE_CONSTANT(target, O_RDONLY);
diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66e6f49bf4 100644
+index 482ec230c0f4500b63b705d705a142e63ff179e5..c5630f30d0bef75ced53b36062bb1f0324dbdb9d 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
@@ -22,10 +22,86 @@
@@ -163,7 +163,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
if (!Buffer::HasInstance(val) && !val->IsString()) { \
return env->ThrowTypeError(prefix " must be a string or a buffer"); \
} \
-@@ -158,11 +234,15 @@ template int SSLWrap<TLSWrap>::SelectNextProtoCallback(
+@@ -161,11 +237,15 @@ template int SSLWrap<TLSWrap>::SelectNextProtoCallback(
#ifdef NODE__HAVE_TLSEXT_STATUS_CB
template int SSLWrap<TLSWrap>::TLSExtStatusCallback(SSL* s, void* arg);
#endif
@@ -179,7 +179,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
#ifdef TLSEXT_TYPE_application_layer_protocol_negotiation
template int SSLWrap<TLSWrap>::SelectALPNCallback(
SSL* s,
-@@ -278,12 +358,16 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
+@@ -281,12 +361,16 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
env->SetProtoMethod(t, "setCert", SecureContext::SetCert);
env->SetProtoMethod(t, "addCACert", SecureContext::AddCACert);
env->SetProtoMethod(t, "addCRL", SecureContext::AddCRL);
@@ -196,7 +196,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
SecureContext::SetSessionIdContext);
env->SetProtoMethod(t, "setSessionTimeout",
SecureContext::SetSessionTimeout);
-@@ -513,12 +597,24 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
+@@ -514,12 +598,24 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
SSL_CTX_clear_extra_chain_certs(ctx);
for (int i = 0; i < sk_X509_num(extra_certs); i++) {
@@ -223,7 +223,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
ret = 0;
*issuer = nullptr;
goto end;
-@@ -793,10 +889,11 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+@@ -868,10 +964,11 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
const node::Utf8Value ciphers(args.GetIsolate(), args[0]);
SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
}
@@ -235,7 +235,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
Environment* env = sc->env();
-@@ -820,12 +917,14 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
+@@ -895,12 +992,14 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
SSL_CTX_set_options(sc->ctx_, SSL_OP_SINGLE_ECDH_USE);
SSL_CTX_set_tmp_ecdh(sc->ctx_, ecdh);
@@ -250,7 +250,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
ASSIGN_OR_RETURN_UNWRAP(&sc, args.This());
Environment* env = sc->env();
ClearErrorOnReturn clear_error_on_return;
-@@ -860,10 +959,11 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
+@@ -935,10 +1034,11 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
DH_free(dh);
if (!r)
@@ -262,7 +262,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
void SecureContext::SetOptions(const FunctionCallbackInfo<Value>& args) {
SecureContext* sc;
ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
-@@ -1870,10 +1970,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+@@ -1952,10 +2052,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
info->Set(env->type_string(),
FIXED_ONE_BYTE_STRING(env->isolate(), "DH"));
info->Set(env->size_string(),
@@ -274,7 +274,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
EC_KEY* ec = EVP_PKEY_get1_EC_KEY(key);
int nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec));
EC_KEY_free(ec);
-@@ -1882,10 +1983,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+@@ -1964,10 +2065,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
info->Set(env->name_string(),
OneByteString(args.GetIsolate(), OBJ_nid2sn(nid)));
info->Set(env->size_string(),
@@ -286,7 +286,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
}
return args.GetReturnValue().Set(info);
-@@ -2300,11 +2402,16 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
+@@ -2382,11 +2484,16 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
cert_cb_arg_ = arg;
}
@@ -303,7 +303,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
if (!w->is_server())
return 1;
-@@ -2369,23 +2476,57 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
+@@ -2451,23 +2558,57 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
ASSIGN_OR_RETURN_UNWRAP(&sc, ctx.As<Object>());
w->sni_context_.Reset();
w->sni_context_.Reset(env->isolate(), ctx);
@@ -371,7 +371,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
if (!rv) {
unsigned long err = ERR_get_error(); // NOLINT(runtime/int)
if (!err)
-@@ -2445,14 +2586,18 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
+@@ -2527,14 +2668,18 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
}
@@ -391,7 +391,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
// NOTE: `SSL_set_client_CA_list` takes the ownership of `list`
SSL_set_client_CA_list(ssl_, list);
-@@ -2726,11 +2871,15 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
+@@ -2808,11 +2953,15 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
// Server does not need to check the whitelist.
SSL* ssl = static_cast<SSL*>(
@@ -407,7 +407,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
// Client needs to check if the server cert is listed in the
// whitelist when it is issued by the specific rootCAs.
CheckResult ret = CheckWhitelistedServerCert(ctx);
-@@ -2809,11 +2958,25 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
+@@ -2891,11 +3040,25 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
if (is_server)
SSL_set_info_callback(conn->ssl_, SSLInfoCallback);
@@ -433,7 +433,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
if (is_server) {
SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
} else if (args[2]->IsString()) {
-@@ -4394,10 +4557,11 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
+@@ -4476,10 +4639,11 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
args.GetReturnValue().Set(vbuf);
delete[] out_value;
}
@@ -445,7 +445,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
const PropertyAttribute attributes =
static_cast<PropertyAttribute>(v8::ReadOnly | v8::DontDelete);
-@@ -4795,12 +4959,14 @@ bool DiffieHellman::VerifyContext() {
+@@ -4877,12 +5041,14 @@ bool DiffieHellman::VerifyContext() {
if (!DH_check(dh, &codes))
return false;
verifyError_ = codes;
@@ -460,7 +460,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
-@@ -5024,10 +5190,11 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
+@@ -5106,10 +5272,11 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
return env->ThrowError("Failed to set generated public key");
}
@@ -472,7 +472,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
void ECDH::SetPublicKey(const FunctionCallbackInfo<Value>& args) {
Environment* env = Environment::GetCurrent(args);
-@@ -5577,10 +5744,11 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
+@@ -5659,10 +5826,11 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
EVP_MD_do_all_sorted(array_push_back<EVP_MD>, &ctx);
args.GetReturnValue().Set(ctx.arr);
}
@@ -484,7 +484,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
const size_t num_curves = EC_get_builtin_curves(nullptr, 0);
Local<Array> arr = Array::New(env->isolate(), num_curves);
EC_builtin_curve* curves;
-@@ -5601,10 +5769,11 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
+@@ -5683,10 +5851,11 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
free(curves);
}
@@ -496,7 +496,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
bool VerifySpkac(const char* data, unsigned int len) {
bool i = 0;
EVP_PKEY* pkey = nullptr;
-@@ -5913,12 +6082,16 @@ void InitCrypto(Local<Object> target,
+@@ -5995,12 +6164,16 @@ void InitCrypto(Local<Object> target,
Environment* env = Environment::GetCurrent(context);
SecureContext::Initialize(env, target);
@@ -513,7 +513,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
Sign::Initialize(env, target);
Verify::Initialize(env, target);
-@@ -5934,11 +6107,13 @@ void InitCrypto(Local<Object> target,
+@@ -6016,11 +6189,13 @@ void InitCrypto(Local<Object> target,
env->SetMethod(target, "randomBytes", RandomBytes);
env->SetMethod(target, "timingSafeEqual", TimingSafeEqual);
env->SetMethod(target, "getSSLCiphers", GetSSLCiphers);
@@ -528,7 +528,7 @@ index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66
EVP_PKEY_encrypt>);
env->SetMethod(target, "privateDecrypt",
diff --git a/src/node_crypto.h b/src/node_crypto.h
-index 24ac77365cf45578f2be359f18b8e9c347209531..2b1b6ae80f668149c0691c44aa4e295f21a82b8e 100644
+index 175206c40df58602b0c24d039b8b5a8bb6f56ba3..5ecc43b08d0b4d97311f09271a26f5a735a6e018 100644
--- a/src/node_crypto.h
+++ b/src/node_crypto.h
@@ -16,12 +16,16 @@
@@ -548,7 +548,7 @@ index 24ac77365cf45578f2be359f18b8e9c347209531..2b1b6ae80f668149c0691c44aa4e295f
#endif // !OPENSSL_NO_ENGINE
#include <openssl/err.h>
#include <openssl/evp.h>
-@@ -99,12 +103,16 @@ class SecureContext : public BaseObject {
+@@ -100,12 +104,16 @@ class SecureContext : public BaseObject {
static void SetCert(const v8::FunctionCallbackInfo
v8::Value& args);
static void AddCACert(const v8::FunctionCallbackInfo
v8::Value& args);
static void AddCRL(const v8::FunctionCallbackInfo
v8::Value& args);
@@ -565,7 +565,7 @@ index 24ac77365cf45578f2be359f18b8e9c347209531..2b1b6ae80f668149c0691c44aa4e295f
const v8::FunctionCallbackInfo
v8::Value& args);
static void SetSessionTimeout(
const v8::FunctionCallbackInfo
v8::Value& args);
-@@ -281,11 +289,15 @@ class SSLWrap {
+@@ -273,11 +281,15 @@ class SSLWrap {
unsigned char* outlen,
const unsigned char* in,
unsigned int inlen,
@@ -581,7 +581,7 @@ index 24ac77365cf45578f2be359f18b8e9c347209531..2b1b6ae80f668149c0691c44aa4e295f
void DestroySSL();
void WaitForCertCb(CertCb cb, void* arg);
-@@ -643,10 +655,11 @@ class PublicKeyCipher {
+@@ -635,10 +647,11 @@ class PublicKeyCipher {
EVP_PKEY_cipher_init_t EVP_PKEY_cipher_init,
EVP_PKEY_cipher_t EVP_PKEY_cipher>
static void Cipher(const v8::FunctionCallbackInfo
v8::Value& args);
@@ -593,7 +593,7 @@ index 24ac77365cf45578f2be359f18b8e9c347209531..2b1b6ae80f668149c0691c44aa4e295f
~DiffieHellman() override {
if (dh != nullptr) {
DH_free(dh);
-@@ -688,11 +701,13 @@ class DiffieHellman : public BaseObject {
+@@ -680,11 +693,13 @@ class DiffieHellman : public BaseObject {
bool initialised_;
int verifyError_;
@@ -607,7 +607,7 @@ index 24ac77365cf45578f2be359f18b8e9c347209531..2b1b6ae80f668149c0691c44aa4e295f
~ECDH() override {
if (key_ != nullptr)
EC_KEY_free(key_);
-@@ -725,10 +740,11 @@ class ECDH : public BaseObject {
+@@ -717,10 +732,11 @@ class ECDH : public BaseObject {
bool IsKeyValidForCurve(const BIGNUM* private_key);
EC_KEY* key_;
@@ -644,5 +644,5 @@ index d1b1aeccdd95b00b3fd0421c08fd7816cd70d182..a6e63d7c1ccc81e6f7d782dffe833234
} else if (is_client()) {
// Enough space for server response (hello, cert)
--
-2.11.1
+2.12.0
diff --git a/0003-CA-Certificates-are-provided-by-Fedora.patch b/0003-CA-Certificates-are-provided-by-Fedora.patch
deleted file mode 100644
index ab1121c..0000000
--- a/0003-CA-Certificates-are-provided-by-Fedora.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-From 4ea8ba0dcc7fe20c8fff7f574304e749bd37ecea Mon Sep 17 00:00:00 2001
-From: Haikel Guemar
hguemar@fedoraproject.org
-Date: Tue, 26 Jul 2016 22:00:25 +0200
-Subject: [PATCH 3/4] CA Certificates are provided by Fedora.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Forwarded: need some feedback before submitting the matter upstream
-Author: Jérémy Lal
kapouer@melix.org
-Last-Update: 2014-03-02
-
-Modified 2014-05-02 by T.C. Hollingsworth
tchollingsworth@gmail.com with the
-correct path for Fedora
-
-Modified 2015-12-01 by Stephen Gallagher
sgallagh@redhat.com to update for
-Node.js 4.2
-
-Modified 2016-03-04 by Stephen Gallagher
sgallagh@redhat.com to update for
-Node.js 5.4.1
-
-Modified 2016-07-26 by Haikel Guemar
hguemar@fedoraproject.org to update for
-Node.js 4.4.7
----
- src/node_crypto.cc | 30 +++++++++---------------------
- 1 file changed, 9 insertions(+), 21 deletions(-)
-
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 89cd651248361d4fff3c442d5e36cc66e6f49bf4..4fadc0a001422dea3aeade330f8f596c0dab36ee 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -190,12 +190,12 @@ static X509_NAME *cnnic_ev_name =
- d2i_X509_NAME(nullptr, &cnnic_ev_p,
- sizeof(CNNIC_EV_ROOT_CA_SUBJECT_DATA)-1);
-
- static Mutex* mutexes;
-
--const char* const root_certs[] = {
--#include "node_root_certs.h" // NOLINT(build/include_order)
-+const char* root_certs[] = {
-+ NULL
- };
-
- X509_STORE* root_cert_store;
-
- // Just to generate static methods
-@@ -845,33 +845,21 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
- (void) &clear_error_on_return; // Silence compiler warning.
-
- CHECK_EQ(sc->ca_store_, nullptr);
-
- if (!root_cert_store) {
-- root_cert_store = X509_STORE_new();
--
-- for (size_t i = 0; i < arraysize(root_certs); i++) {
-- BIO* bp = NodeBIO::NewFixed(root_certs[i], strlen(root_certs[i]));
-- if (bp == nullptr) {
-- return;
-- }
--
-- X509 *x509 = PEM_read_bio_X509(bp, nullptr, CryptoPemCallback, nullptr);
-- if (x509 == nullptr) {
-- BIO_free_all(bp);
-- return;
-- }
--
-- X509_STORE_add_cert(root_cert_store, x509);
--
-- BIO_free_all(bp);
-- X509_free(x509);
-+ if (SSL_CTX_load_verify_locations(sc->ctx_, "/etc/pki/tls/certs/ca-bundle.crt", NULL) == 1) {
-+ root_cert_store = SSL_CTX_get_cert_store(sc->ctx_);
-+ } else {
-+ // empty store
-+ root_cert_store = X509_STORE_new();
- }
-+ } else {
-+ SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
- }
-
- sc->ca_store_ = root_cert_store;
-- SSL_CTX_set_cert_store(sc->ctx_, sc->ca_store_);
- }
-
-
- void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc;
---
-2.11.1
-
diff --git a/0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch b/0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
new file mode 100644
index 0000000..8c6db97
--- /dev/null
+++ b/0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
@@ -0,0 +1,84 @@
+From f1a0660b9186c3f4d55d7c07219126e199c787f9 Mon Sep 17 00:00:00 2001
+From: Adam Majer
amajer@suse.de
+Date: Wed, 21 Dec 2016 11:16:38 +0100
+Subject: [PATCH 3/4] crypto: Use system CAs instead of using bundled ones
+
+NodeJS can already use an external, shared OpenSSL library. This
+library knows where to look for OS managed certificates. Allow
+a compile-time option to use this CA store by default instead of
+using bundled certificates.
+
+In case when using bundled OpenSSL, the paths are also valid for
+majority of Linux systems without additional intervention. If
+this is not set, we can use SSL_CERT_DIR to point it to correct
+location.
+
+Fixes:
https://github.com/nodejs/node/issues/3159
+PR-URL:
https://github.com/nodejs/node/pull/8334
+Reviewed-By: Sam Roberts
vieuxtech@gmail.com
+Reviewed-By: James M Snell
jasnell@gmail.com
+Reviewed-By: Fedor Indutny
fedor.indutny@gmail.com
+---
+ configure | 7 +++++++
+ src/node_crypto.cc | 4 ++++
+ 2 files changed, 11 insertions(+)
+
+diff --git a/configure b/configure
+index 821b8771bc8909d8453bc31e3c8d8dc65368c0e4..e64bad9a030693b726e0974f48aefa6e1ad87723 100755
+--- a/configure
++++ b/configure
+@@ -142,10 +142,15 @@ parser.add_option("--openssl-no-asm",
+ parser.add_option('--openssl-fips',
+ action='store',
+ dest='openssl_fips',
+ help='Build OpenSSL using FIPS canister .o file in supplied folder')
+
++parser.add_option('--openssl-use-def-ca-store',
++ action='store_true',
++ dest='use_openssl_ca_store',
++ help='Use OpenSSL supplied CA store instead of compiled-in Mozilla CA copy.')
++
+ shared_optgroup.add_option('--shared-http-parser',
+ action='store_true',
+ dest='shared_http_parser',
+ help='link to a shared http_parser DLL instead of static linking')
+
+@@ -937,10 +942,12 @@ def configure_v8(o):
+
+ def configure_openssl(o):
+ o['variables']['node_use_openssl'] = b(not options.without_ssl)
+ o['variables']['node_shared_openssl'] = b(options.shared_openssl)
+ o['variables']['openssl_no_asm'] = 1 if options.openssl_no_asm else 0
++ if options.use_openssl_ca_store:
++ o['defines'] += ['NODE_OPENSSL_CERT_STORE']
+ if options.openssl_fips:
+ o['variables']['openssl_fips'] = options.openssl_fips
+ fips_dir = os.path.join(root_dir, 'deps', 'openssl', 'fips')
+ fips_ld = os.path.abspath(os.path.join(fips_dir, 'fipsld'))
+ o['make_fips_settings'] = [
+diff --git a/src/node_crypto.cc b/src/node_crypto.cc
+index c5630f30d0bef75ced53b36062bb1f0324dbdb9d..873b37d71b51aa62c8ebd56ea5b182567675e2dd 100644
+--- a/src/node_crypto.cc
++++ b/src/node_crypto.cc
+@@ -803,14 +803,18 @@ static X509_STORE* NewRootCertStore() {
+ root_certs_vector->push_back(x509);
+ }
+ }
+
+ X509_STORE* store = X509_STORE_new();
++#if defined(NODE_OPENSSL_CERT_STORE)
++ X509_STORE_set_default_paths(store);
++#else
+ for (auto& cert : *root_certs_vector) {
+ X509_up_ref(cert);
+ X509_STORE_add_cert(store, cert);
+ }
++#endif
+
+ return store;
+ }
+
+
+--
+2.12.0
+
diff --git a/0004-Fix-compatibility-with-GCC-7.patch b/0004-Fix-compatibility-with-GCC-7.patch
index a7566c4..da90368 100644
--- a/0004-Fix-compatibility-with-GCC-7.patch
+++ b/0004-Fix-compatibility-with-GCC-7.patch
@@ -1,4 +1,4 @@
-From c5a932e20110008273acbde5066c4231293d3a54 Mon Sep 17 00:00:00 2001
+From fbb5821dc3d967e916a187ee009e955530d2ce8d Mon Sep 17 00:00:00 2001
From: Ben Noordhuis
info@bnoordhuis.nl
Date: Tue, 28 Feb 2017 13:56:40 -0500
Subject: [PATCH 4/4] Fix compatibility with GCC 7
@@ -28,7 +28,7 @@ index 91cb8883be88739eab2b10df71f6f0d08aab436e..a1c3634bd762d7e03b4c87d38aa14a9a
// This class describes a body of an object of a variable size
diff --git a/deps/v8/src/objects-inl.h b/deps/v8/src/objects-inl.h
-index b75dd1c969a498d66584143adf0f03140a69bbd6..690a338a023c25646863715466f777850bc7f437 100644
+index 11f4d7498d7558f56037483004a3d5839154516b..72208c2f00f4a9ff47ae487fa9a42f8f82cf12ea 100644
--- a/deps/v8/src/objects-inl.h
+++ b/deps/v8/src/objects-inl.h
@@ -34,10 +34,31 @@
@@ -64,7 +64,7 @@ index b75dd1c969a498d66584143adf0f03140a69bbd6..690a338a023c25646863715466f77785
diff --git a/deps/v8/src/objects.h b/deps/v8/src/objects.h
-index abced2d4bad50ca2e01373ac5ad3330cdbbdd682..e507dba665bfbd64f5ee5851b08a507de0a2519a 100644
+index d1632c9deb298218faea31886ffdb0a8e0201cdc..47b02dadcff9658c9fcfe629e137667015e12079 100644
--- a/deps/v8/src/objects.h
+++ b/deps/v8/src/objects.h
@@ -3259,26 +3259,14 @@ class HashTableBase : public FixedArray {
@@ -99,5 +99,5 @@ index abced2d4bad50ca2e01373ac5ad3330cdbbdd682..e507dba665bfbd64f5ee5851b08a507d
Isolate* isolate, int at_least_space_for,
MinimumCapacity capacity_option = USE_DEFAULT_MINIMUM_CAPACITY,
--
-2.11.1
+2.12.0
diff --git a/nodejs.spec b/nodejs.spec
index cf506d5..2bb558f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -15,18 +15,18 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 6
-%global nodejs_minor 9
-%global nodejs_patch 5
+%global nodejs_minor 10
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 89
+%global v8_patch 93
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -98,9 +98,8 @@ Patch1: 0001-disable-running-gyp-files-for-bundled-deps.patch
Patch2: 0002-Use-openssl-1.0.1.patch
# use system certificates instead of the bundled ones
-# modified version of Debian patch:
-#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
-Patch3: 0003-CA-Certificates-are-provided-by-Fedora.patch
+# Backported from upstream 7.5.0+
+Patch3: 0003-crypto-Use-system-CAs-instead-of-using-bundled-ones.patch
# Patch to allow building with GCC 7 from
#
https://github.com/nodejs/node/issues/10388#issuecomment-283120731
@@ -204,7 +203,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.1
+Release: %{npm_release}%{?dist}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -244,8 +243,7 @@ The API documentation for the Node.js JavaScript runtime.
rm -rf deps/uv \
deps/zlib
-# remove bundled CA certificates
-rm -f src/node_root_certs.h
+# Use system CA certificates
%patch3 -p1
# Fix GCC7 build
@@ -280,7 +278,8 @@ export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
--shared-zlib \
--shared-libuv \
--with-dtrace \
- --with-intl=system-icu
+ --with-intl=system-icu \
+ --openssl-use-def-ca-store
%if %{?with_debug} == 1
# Setting BUILDTYPE=Debug builds both release and debug binaries
@@ -414,7 +413,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Tue Feb 28 2017 Stephen Gallagher
sgallagh@redhat.com - -
+* Thu Mar 09 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.10.0-1
+- Update to 6.10.0
+-
https://nodejs.org/en/blog/release/v6.10.0/
+- New patch for handling system CA certificates
+
+* Tue Feb 28 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.5-2
- Fix FTBFS against GCC 7
- Resolves: RHBZ 1423991
diff --git a/sources b/sources
index 8b2794f..31d2fa7 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.9.5-stripped.tar.gz) = 1d10a60295fba32eddb5187a5986f8103f34115d2fe06895596a662c98191afc81bc9246100f8360d308a07db0bc7b8df9e37fe59d042ac136b42248582f4af2
+SHA512 (node-v6.10.0-stripped.tar.gz) = 2da288352df3113d59e882aeb7007a956c4ae7d3fa74262f9492dd789c6c299ff299a355b9a55f999ed3e4e78dd3d7ad4e55fece5e93b9e9ef82da8e670d562e
commit b22fc35f9a99b3e32b1454bb98999663335846d0
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Feb 28 14:03:17 2017 -0500
Fix FTBFS against GCC 7
Resolves: RHBZ 1423991
diff --git a/0001-disable-running-gyp-files-for-bundled-deps.patch b/0001-disable-running-gyp-files-for-bundled-deps.patch
index 4e46de4..539e591 100644
--- a/0001-disable-running-gyp-files-for-bundled-deps.patch
+++ b/0001-disable-running-gyp-files-for-bundled-deps.patch
@@ -1,17 +1,19 @@
-From da4ed485ddd52cd156406f939225146e8539cabb Mon Sep 17 00:00:00 2001
+From 71a2912f95f287519a3c695417655a0cae4e1bc0 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:35:29 -0500
-Subject: [PATCH 1/3] disable running gyp files for bundled deps
+Subject: [PATCH 1/4] disable running gyp files for bundled deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index a8870a5..f7fc4a9 100644
+index 719b855559383a8011c8f6f073ed69a1cf21aeee..31cd25452dccb0624809c0570a738c5b49cc782c 100644
--- a/Makefile
+++ b/Makefile
-@@ -70,7 +70,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
+@@ -70,11 +70,11 @@ $(NODE_EXE): config.gypi out/Makefile
+
+ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
ln -fs out/Debug/$(NODE_EXE) $@
@@ -20,6 +22,8 @@ index a8870a5..f7fc4a9 100644
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
+ $(error Missing or stale $@, please run ./$<)
+
--
-2.9.0
+2.11.1
diff --git a/0002-Use-openssl-1.0.1.patch b/0002-Use-openssl-1.0.1.patch
index 700e8fc..7988f1e 100644
--- a/0002-Use-openssl-1.0.1.patch
+++ b/0002-Use-openssl-1.0.1.patch
@@ -1,7 +1,7 @@
-From 6cf8243a70e26843c7770f7b29b1a33b822d1c26 Mon Sep 17 00:00:00 2001
+From f614552e1698387dd4d245e07de6b75d9c023e65 Mon Sep 17 00:00:00 2001
From: Haikel Guemar
hguemar@fedoraproject.org
Date: Tue, 26 Jul 2016 22:50:22 +0200
-Subject: [PATCH 2/3] Use openssl 1.0.1
+Subject: [PATCH 2/4] Use openssl 1.0.1
Based on Solaris patches from upstream #2783
https://github.com/nodejs/node/issues/2783
@@ -14,10 +14,12 @@
https://github.com/nodejs/node/issues/2783
5 files changed, 223 insertions(+), 13 deletions(-)
diff --git a/doc/api/tls.md b/doc/api/tls.md
-index 7feaff2..97ad7a5 100644
+index 488337a0764e4cc5e7c27bb8075c1b907696908b..292bbf26ddf5a8dd373cb15e97d220229b4cdcc1 100644
--- a/doc/api/tls.md
+++ b/doc/api/tls.md
-@@ -114,6 +114,12 @@ handshake extensions:
+@@ -112,10 +112,16 @@ handshake extensions:
+ * ALPN/NPN - Allows the use of one TLS server for multiple protocols (HTTP,
+ SPDY, HTTP/2)
* SNI - Allows the use of one TLS server for multiple hostnames with different
SSL certificates.
@@ -30,11 +32,15 @@ index 7feaff2..97ad7a5 100644
*Note*: Use of ALPN is recommended over NPN. The NPN extension has never been
formally defined or documented and generally not recommended for use.
+ ### Client-initiated renegotiation attack mitigation
+
diff --git a/src/node_constants.cc b/src/node_constants.cc
-index 2e6be8d..239eadb 100644
+index 2e6be8df37c345a383d8a78898daf2a147d90630..239eadbac8ea8e601745a63347a8bb301c22d1b1 100644
--- a/src/node_constants.cc
+++ b/src/node_constants.cc
-@@ -14,7 +14,10 @@
+@@ -12,11 +12,14 @@
+ #include <signal.h>
+ #include <sys/types.h>
#include <sys/stat.h>
#if HAVE_OPENSSL
@@ -45,7 +51,11 @@ index 2e6be8d..239eadb 100644
# include <openssl/ssl.h>
# ifndef OPENSSL_NO_ENGINE
# include <openssl/engine.h>
-@@ -976,12 +979,14 @@ void DefineOpenSSLConstants(Local<Object> target) {
+ # endif // !OPENSSL_NO_ENGINE
+ #endif
+@@ -974,16 +977,18 @@ void DefineOpenSSLConstants(Local<Object> target) {
+ NODE_DEFINE_CONSTANT(target, RSA_PKCS1_PSS_PADDING);
+ #endif
#if HAVE_OPENSSL
// NOTE: These are not defines
@@ -60,11 +70,15 @@ index 2e6be8d..239eadb 100644
}
void DefineSystemConstants(Local<Object> target) {
+ // file access modes
+ NODE_DEFINE_CONSTANT(target, O_RDONLY);
diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 9cf216f..888a0f8 100644
+index b83794a770d672d492a5b01aee9a46fcaa39be85..89cd651248361d4fff3c442d5e36cc66e6f49bf4 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
-@@ -24,6 +24,82 @@
+@@ -22,10 +22,86 @@
+ #include <limits.h> // INT_MAX
+ #include <math.h>
#include <stdlib.h>
#include <string.h>
@@ -147,7 +161,11 @@ index 9cf216f..888a0f8 100644
#define THROW_AND_RETURN_IF_NOT_STRING_OR_BUFFER(val, prefix) \
do { \
if (!Buffer::HasInstance(val) && !val->IsString()) { \
-@@ -160,7 +236,11 @@ template int SSLWrap<TLSWrap>::TLSExtStatusCallback(SSL* s, void* arg);
+ return env->ThrowTypeError(prefix " must be a string or a buffer"); \
+ } \
+@@ -158,11 +234,15 @@ template int SSLWrap<TLSWrap>::SelectNextProtoCallback(
+ #ifdef NODE__HAVE_TLSEXT_STATUS_CB
+ template int SSLWrap<TLSWrap>::TLSExtStatusCallback(SSL* s, void* arg);
#endif
template void SSLWrap<TLSWrap>::DestroySSL();
@@ -159,7 +177,11 @@ index 9cf216f..888a0f8 100644
template void SSLWrap<TLSWrap>::WaitForCertCb(CertCb cb, void* arg);
#ifdef TLSEXT_TYPE_application_layer_protocol_negotiation
-@@ -280,8 +360,12 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
+ template int SSLWrap<TLSWrap>::SelectALPNCallback(
+ SSL* s,
+@@ -278,12 +358,16 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
+ env->SetProtoMethod(t, "setCert", SecureContext::SetCert);
+ env->SetProtoMethod(t, "addCACert", SecureContext::AddCACert);
env->SetProtoMethod(t, "addCRL", SecureContext::AddCRL);
env->SetProtoMethod(t, "addRootCerts", SecureContext::AddRootCerts);
env->SetProtoMethod(t, "setCiphers", SecureContext::SetCiphers);
@@ -172,7 +194,11 @@ index 9cf216f..888a0f8 100644
env->SetProtoMethod(t, "setOptions", SecureContext::SetOptions);
env->SetProtoMethod(t, "setSessionIdContext",
SecureContext::SetSessionIdContext);
-@@ -515,8 +599,20 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
+ env->SetProtoMethod(t, "setSessionTimeout",
+ SecureContext::SetSessionTimeout);
+@@ -513,12 +597,24 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
+ SSL_CTX_clear_extra_chain_certs(ctx);
+
for (int i = 0; i < sk_X509_num(extra_certs); i++) {
X509* ca = sk_X509_value(extra_certs, i);
@@ -195,7 +221,11 @@ index 9cf216f..888a0f8 100644
if (!r) {
ret = 0;
-@@ -795,6 +891,7 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+ *issuer = nullptr;
+ goto end;
+@@ -793,10 +889,11 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+ const node::Utf8Value ciphers(args.GetIsolate(), args[0]);
+ SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
}
@@ -203,7 +233,11 @@ index 9cf216f..888a0f8 100644
void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
SecureContext* sc;
ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
-@@ -822,8 +919,10 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
+ Environment* env = sc->env();
+
+@@ -820,12 +917,14 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
+ SSL_CTX_set_options(sc->ctx_, SSL_OP_SINGLE_ECDH_USE);
+ SSL_CTX_set_tmp_ecdh(sc->ctx_, ecdh);
EC_KEY_free(ecdh);
}
@@ -214,7 +248,11 @@ index 9cf216f..888a0f8 100644
void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
SecureContext* sc;
ASSIGN_OR_RETURN_UNWRAP(&sc, args.This());
-@@ -862,6 +961,7 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
+ Environment* env = sc->env();
+ ClearErrorOnReturn clear_error_on_return;
+@@ -860,10 +959,11 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
+ DH_free(dh);
+
if (!r)
return env->ThrowTypeError("Error setting temp DH parameter");
}
@@ -222,7 +260,11 @@ index 9cf216f..888a0f8 100644
void SecureContext::SetOptions(const FunctionCallbackInfo<Value>& args) {
-@@ -1872,6 +1972,7 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+ SecureContext* sc;
+ ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
+@@ -1870,10 +1970,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+ info->Set(env->type_string(),
+ FIXED_ONE_BYTE_STRING(env->isolate(), "DH"));
info->Set(env->size_string(),
Integer::New(env->isolate(), EVP_PKEY_bits(key)));
break;
@@ -230,7 +272,11 @@ index 9cf216f..888a0f8 100644
case EVP_PKEY_EC:
{
EC_KEY* ec = EVP_PKEY_get1_EC_KEY(key);
-@@ -1884,6 +1985,7 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+ int nid = EC_GROUP_get_curve_name(EC_KEY_get0_group(ec));
+ EC_KEY_free(ec);
+@@ -1882,10 +1983,11 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+ info->Set(env->name_string(),
+ OneByteString(args.GetIsolate(), OBJ_nid2sn(nid)));
info->Set(env->size_string(),
Integer::New(env->isolate(), EVP_PKEY_bits(key)));
}
@@ -238,7 +284,11 @@ index 9cf216f..888a0f8 100644
}
EVP_PKEY_free(key);
}
-@@ -2301,7 +2403,12 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
+
+ return args.GetReturnValue().Set(info);
+@@ -2300,11 +2402,16 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
+ cert_cb_arg_ = arg;
+ }
template <class Base>
@@ -251,7 +301,11 @@ index 9cf216f..888a0f8 100644
Base* w = static_cast<Base*>(SSL_get_app_data(s));
if (!w->is_server())
-@@ -2375,19 +2482,53 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
+ return 1;
+
+@@ -2369,23 +2476,57 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
+ ASSIGN_OR_RETURN_UNWRAP(&sc, ctx.As<Object>());
+ w->sni_context_.Reset();
w->sni_context_.Reset(env->isolate(), ctx);
int rv;
@@ -315,7 +369,11 @@ index 9cf216f..888a0f8 100644
if (rv)
rv = w->SetCACerts(sc);
if (!rv) {
-@@ -2451,10 +2592,14 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
+ unsigned long err = ERR_get_error(); // NOLINT(runtime/int)
+ if (!err)
+@@ -2445,14 +2586,18 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
+ }
+
template <class Base>
int SSLWrap<Base>::SetCACerts(SecureContext* sc) {
@@ -331,7 +389,11 @@ index 9cf216f..888a0f8 100644
STACK_OF(X509_NAME)* list = SSL_dup_CA_list(
SSL_CTX_get_client_CA_list(sc->ctx_));
-@@ -2732,7 +2877,11 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
+ // NOTE: `SSL_set_client_CA_list` takes the ownership of `list`
+ SSL_set_client_CA_list(ssl_, list);
+@@ -2726,11 +2871,15 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
+
+ // Server does not need to check the whitelist.
SSL* ssl = static_cast<SSL*>(
X509_STORE_CTX_get_ex_data(ctx, SSL_get_ex_data_X509_STORE_CTX_idx()));
@@ -343,7 +405,11 @@ index 9cf216f..888a0f8 100644
return 1;
// Client needs to check if the server cert is listed in the
-@@ -2815,7 +2964,21 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
+ // whitelist when it is issued by the specific rootCAs.
+ CheckResult ret = CheckWhitelistedServerCert(ctx);
+@@ -2809,11 +2958,25 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
+ if (is_server)
+ SSL_set_info_callback(conn->ssl_, SSLInfoCallback);
InitNPN(sc);
@@ -365,7 +431,11 @@ index 9cf216f..888a0f8 100644
#ifdef SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
if (is_server) {
-@@ -4404,6 +4567,7 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
+ SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
+ } else if (args[2]->IsString()) {
+@@ -4394,10 +4557,11 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
+ args.GetReturnValue().Set(vbuf);
+ delete[] out_value;
}
@@ -373,7 +443,11 @@ index 9cf216f..888a0f8 100644
void DiffieHellman::Initialize(Environment* env, Local<Object> target) {
Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
-@@ -4805,8 +4969,10 @@ bool DiffieHellman::VerifyContext() {
+ const PropertyAttribute attributes =
+ static_cast<PropertyAttribute>(v8::ReadOnly | v8::DontDelete);
+@@ -4795,12 +4959,14 @@ bool DiffieHellman::VerifyContext() {
+ if (!DH_check(dh, &codes))
+ return false;
verifyError_ = codes;
return true;
}
@@ -384,7 +458,11 @@ index 9cf216f..888a0f8 100644
void ECDH::Initialize(Environment* env, Local<Object> target) {
HandleScope scope(env->isolate());
-@@ -5034,6 +5200,7 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
+ Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
+
+@@ -5024,10 +5190,11 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
+ return env->ThrowError("Failed to set generated public key");
+ }
EC_POINT_free(pub);
}
@@ -392,7 +470,11 @@ index 9cf216f..888a0f8 100644
void ECDH::SetPublicKey(const FunctionCallbackInfo<Value>& args) {
-@@ -5587,6 +5754,7 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
+ Environment* env = Environment::GetCurrent(args);
+
+@@ -5577,10 +5744,11 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
+ EVP_MD_do_all_sorted(array_push_back<EVP_MD>, &ctx);
+ args.GetReturnValue().Set(ctx.arr);
}
@@ -400,7 +482,11 @@ index 9cf216f..888a0f8 100644
void GetCurves(const FunctionCallbackInfo<Value>& args) {
Environment* env = Environment::GetCurrent(args);
const size_t num_curves = EC_get_builtin_curves(nullptr, 0);
-@@ -5611,6 +5779,7 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
+ Local<Array> arr = Array::New(env->isolate(), num_curves);
+ EC_builtin_curve* curves;
+@@ -5601,10 +5769,11 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
+ free(curves);
+ }
args.GetReturnValue().Set(arr);
}
@@ -408,7 +494,11 @@ index 9cf216f..888a0f8 100644
bool VerifySpkac(const char* data, unsigned int len) {
-@@ -5886,8 +6055,12 @@ void InitCrypto(Local<Object> target,
+ bool i = 0;
+ EVP_PKEY* pkey = nullptr;
+@@ -5913,12 +6082,16 @@ void InitCrypto(Local<Object> target,
+
+ Environment* env = Environment::GetCurrent(context);
SecureContext::Initialize(env, target);
Connection::Initialize(env, target);
CipherBase::Initialize(env, target);
@@ -421,7 +511,11 @@ index 9cf216f..888a0f8 100644
Hmac::Initialize(env, target);
Hash::Initialize(env, target);
Sign::Initialize(env, target);
-@@ -5906,7 +6079,9 @@ void InitCrypto(Local<Object> target,
+ Verify::Initialize(env, target);
+
+@@ -5934,11 +6107,13 @@ void InitCrypto(Local<Object> target,
+ env->SetMethod(target, "randomBytes", RandomBytes);
+ env->SetMethod(target, "timingSafeEqual", TimingSafeEqual);
env->SetMethod(target, "getSSLCiphers", GetSSLCiphers);
env->SetMethod(target, "getCiphers", GetCiphers);
env->SetMethod(target, "getHashes", GetHashes);
@@ -431,11 +525,15 @@ index 9cf216f..888a0f8 100644
env->SetMethod(target, "publicEncrypt",
PublicKeyCipher::Cipher<PublicKeyCipher::kPublic,
EVP_PKEY_encrypt_init,
+ EVP_PKEY_encrypt>);
+ env->SetMethod(target, "privateDecrypt",
diff --git a/src/node_crypto.h b/src/node_crypto.h
-index 24ac773..2b1b6ae 100644
+index 24ac77365cf45578f2be359f18b8e9c347209531..2b1b6ae80f668149c0691c44aa4e295f21a82b8e 100644
--- a/src/node_crypto.h
+++ b/src/node_crypto.h
-@@ -18,8 +18,12 @@
+@@ -16,12 +16,16 @@
+ #include "base-object-inl.h"
+
#include "v8.h"
#include <openssl/ssl.h>
@@ -448,7 +546,11 @@ index 24ac773..2b1b6ae 100644
#ifndef OPENSSL_NO_ENGINE
# include <openssl/engine.h>
#endif // !OPENSSL_NO_ENGINE
-@@ -101,8 +105,12 @@ class SecureContext : public BaseObject {
+ #include <openssl/err.h>
+ #include <openssl/evp.h>
+@@ -99,12 +103,16 @@ class SecureContext : public BaseObject {
+ static void SetCert(const v8::FunctionCallbackInfo
v8::Value& args);
+ static void AddCACert(const v8::FunctionCallbackInfo
v8::Value& args);
static void AddCRL(const v8::FunctionCallbackInfo
v8::Value& args);
static void AddRootCerts(const v8::FunctionCallbackInfo
v8::Value& args);
static void SetCiphers(const v8::FunctionCallbackInfo
v8::Value& args);
@@ -461,7 +563,11 @@ index 24ac773..2b1b6ae 100644
static void SetOptions(const v8::FunctionCallbackInfo
v8::Value& args);
static void SetSessionIdContext(
const v8::FunctionCallbackInfo
v8::Value& args);
-@@ -283,7 +291,11 @@ class SSLWrap {
+ static void SetSessionTimeout(
+ const v8::FunctionCallbackInfo
v8::Value& args);
+@@ -281,11 +289,15 @@ class SSLWrap {
+ unsigned char* outlen,
+ const unsigned char* in,
unsigned int inlen,
void* arg);
static int TLSExtStatusCallback(SSL* s, void* arg);
@@ -473,7 +579,11 @@ index 24ac773..2b1b6ae 100644
static void SSLGetter(v8::Local
v8::String property,
const v8::PropertyCallbackInfo
v8::Value& info);
-@@ -645,6 +657,7 @@ class PublicKeyCipher {
+ void DestroySSL();
+ void WaitForCertCb(CertCb cb, void* arg);
+@@ -643,10 +655,11 @@ class PublicKeyCipher {
+ EVP_PKEY_cipher_init_t EVP_PKEY_cipher_init,
+ EVP_PKEY_cipher_t EVP_PKEY_cipher>
static void Cipher(const v8::FunctionCallbackInfo
v8::Value& args);
};
@@ -481,7 +591,11 @@ index 24ac773..2b1b6ae 100644
class DiffieHellman : public BaseObject {
public:
~DiffieHellman() override {
-@@ -690,7 +703,9 @@ class DiffieHellman : public BaseObject {
+ if (dh != nullptr) {
+ DH_free(dh);
+@@ -688,11 +701,13 @@ class DiffieHellman : public BaseObject {
+
+ bool initialised_;
int verifyError_;
DH* dh;
};
@@ -491,7 +605,11 @@ index 24ac773..2b1b6ae 100644
class ECDH : public BaseObject {
public:
~ECDH() override {
-@@ -727,6 +742,7 @@ class ECDH : public BaseObject {
+ if (key_ != nullptr)
+ EC_KEY_free(key_);
+@@ -725,10 +740,11 @@ class ECDH : public BaseObject {
+ bool IsKeyValidForCurve(const BIGNUM* private_key);
+
EC_KEY* key_;
const EC_GROUP* group_;
};
@@ -499,11 +617,15 @@ index 24ac773..2b1b6ae 100644
bool EntropySource(unsigned char* buffer, size_t length);
#ifndef OPENSSL_NO_ENGINE
+ void SetEngine(const v8::FunctionCallbackInfo
v8::Value& args);
+ #endif // !OPENSSL_NO_ENGINE
diff --git a/src/tls_wrap.cc b/src/tls_wrap.cc
-index 7c5df11..3e06621 100644
+index d1b1aeccdd95b00b3fd0421c08fd7816cd70d182..a6e63d7c1ccc81e6f7d782dffe833234b003de15 100644
--- a/src/tls_wrap.cc
+++ b/src/tls_wrap.cc
-@@ -142,7 +142,15 @@ void TLSWrap::InitSSL() {
+@@ -140,11 +140,19 @@ void TLSWrap::InitSSL() {
+ }
+ #endif // SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
InitNPN(sc_);
@@ -519,6 +641,8 @@ index 7c5df11..3e06621 100644
if (is_server()) {
SSL_set_accept_state(ssl_);
+ } else if (is_client()) {
+ // Enough space for server response (hello, cert)
--
-2.9.0
+2.11.1
diff --git a/0003-CA-Certificates-are-provided-by-Fedora.patch b/0003-CA-Certificates-are-provided-by-Fedora.patch
index 1c82a0f..ab1121c 100644
--- a/0003-CA-Certificates-are-provided-by-Fedora.patch
+++ b/0003-CA-Certificates-are-provided-by-Fedora.patch
@@ -1,7 +1,7 @@
-From 08305ba6b7fddab1f35c59dc82a3c6b11ceceae3 Mon Sep 17 00:00:00 2001
+From 4ea8ba0dcc7fe20c8fff7f574304e749bd37ecea Mon Sep 17 00:00:00 2001
From: Haikel Guemar
hguemar@fedoraproject.org
Date: Tue, 26 Jul 2016 22:00:25 +0200
-Subject: [PATCH 3/3] CA Certificates are provided by Fedora.
+Subject: [PATCH 3/4] CA Certificates are provided by Fedora.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -26,10 +26,12 @@ Node.js 4.4.7
1 file changed, 9 insertions(+), 21 deletions(-)
diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 888a0f8..3feff0e 100644
+index 89cd651248361d4fff3c442d5e36cc66e6f49bf4..4fadc0a001422dea3aeade330f8f596c0dab36ee 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
-@@ -192,8 +192,8 @@ static X509_NAME *cnnic_ev_name =
+@@ -190,12 +190,12 @@ static X509_NAME *cnnic_ev_name =
+ d2i_X509_NAME(nullptr, &cnnic_ev_p,
+ sizeof(CNNIC_EV_ROOT_CA_SUBJECT_DATA)-1);
static Mutex* mutexes;
@@ -40,7 +42,11 @@ index 888a0f8..3feff0e 100644
};
X509_STORE* root_cert_store;
-@@ -847,29 +847,17 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+
+ // Just to generate static methods
+@@ -845,33 +845,21 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+ (void) &clear_error_on_return; // Silence compiler warning.
+
CHECK_EQ(sc->ca_store_, nullptr);
if (!root_cert_store) {
@@ -77,6 +83,8 @@ index 888a0f8..3feff0e 100644
}
+ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+ SecureContext* sc;
--
-2.9.0
+2.11.1
diff --git a/0004-Fix-compatibility-with-GCC-7.patch b/0004-Fix-compatibility-with-GCC-7.patch
new file mode 100644
index 0000000..a7566c4
--- /dev/null
+++ b/0004-Fix-compatibility-with-GCC-7.patch
@@ -0,0 +1,103 @@
+From c5a932e20110008273acbde5066c4231293d3a54 Mon Sep 17 00:00:00 2001
+From: Ben Noordhuis
info@bnoordhuis.nl
+Date: Tue, 28 Feb 2017 13:56:40 -0500
+Subject: [PATCH 4/4] Fix compatibility with GCC 7
+
+Signed-off-by: Stephen Gallagher
sgallagh@redhat.com
+---
+ deps/v8/src/objects-body-descriptors.h | 2 +-
+ deps/v8/src/objects-inl.h | 21 +++++++++++++++++++++
+ deps/v8/src/objects.h | 20 ++++----------------
+ 3 files changed, 26 insertions(+), 17 deletions(-)
+
+diff --git a/deps/v8/src/objects-body-descriptors.h b/deps/v8/src/objects-body-descriptors.h
+index 91cb8883be88739eab2b10df71f6f0d08aab436e..a1c3634bd762d7e03b4c87d38aa14a9a3ce318e4 100644
+--- a/deps/v8/src/objects-body-descriptors.h
++++ b/deps/v8/src/objects-body-descriptors.h
+@@ -97,11 +97,11 @@ class FixedBodyDescriptor final : public BodyDescriptorBase {
+ IterateBodyImpl<StaticVisitor>(heap, obj, start_offset, end_offset);
+ }
+
+ template <typename StaticVisitor>
+ static inline void IterateBody(HeapObject* obj, int object_size) {
+- IterateBody(obj);
++ IterateBody<StaticVisitor>(obj);
+ }
+ };
+
+
+ // This class describes a body of an object of a variable size
+diff --git a/deps/v8/src/objects-inl.h b/deps/v8/src/objects-inl.h
+index b75dd1c969a498d66584143adf0f03140a69bbd6..690a338a023c25646863715466f777850bc7f437 100644
+--- a/deps/v8/src/objects-inl.h
++++ b/deps/v8/src/objects-inl.h
+@@ -34,10 +34,31 @@
+ #include "src/v8memory.h"
+
+ namespace v8 {
+ namespace internal {
+
++template <typename Derived, typename Shape, typename Key>
++uint32_t HashTable<Derived, Shape, Key>::Hash(Key key) {
++ if (Shape::UsesSeed) {
++ return Shape::SeededHash(key, GetHeap()->HashSeed());
++ } else {
++ return Shape::Hash(key);
++ }
++}
++
++
++template <typename Derived, typename Shape, typename Key>
++uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key,
++ Object* object) {
++ if (Shape::UsesSeed) {
++ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
++ } else {
++ return Shape::HashForObject(key, object);
++ }
++}
++
++
+ PropertyDetails::PropertyDetails(Smi* smi) {
+ value_ = smi->value();
+ }
+
+
+diff --git a/deps/v8/src/objects.h b/deps/v8/src/objects.h
+index abced2d4bad50ca2e01373ac5ad3330cdbbdd682..e507dba665bfbd64f5ee5851b08a507de0a2519a 100644
+--- a/deps/v8/src/objects.h
++++ b/deps/v8/src/objects.h
+@@ -3259,26 +3259,14 @@ class HashTableBase : public FixedArray {
+
+
+ template <typename Derived, typename Shape, typename Key>
+ class HashTable : public HashTableBase {
+ public:
+- // Wrapper methods
+- inline uint32_t Hash(Key key) {
+- if (Shape::UsesSeed) {
+- return Shape::SeededHash(key, GetHeap()->HashSeed());
+- } else {
+- return Shape::Hash(key);
+- }
+- }
+-
+- inline uint32_t HashForObject(Key key, Object* object) {
+- if (Shape::UsesSeed) {
+- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
+- } else {
+- return Shape::HashForObject(key, object);
+- }
+- }
++ // Wrapper methods. Defined in src/objects-inl.h
++ // to break a cycle with src/heap/heap.h.
++ inline uint32_t Hash(Key key);
++ inline uint32_t HashForObject(Key key, Object* object);
+
+ // Returns a new HashTable object.
+ MUST_USE_RESULT static Handle<Derived> New(
+ Isolate* isolate, int at_least_space_for,
+ MinimumCapacity capacity_option = USE_DEFAULT_MINIMUM_CAPACITY,
+--
+2.11.1
+
diff --git a/nodejs.spec b/nodejs.spec
index 41e0397..cf506d5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 5
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -72,7 +72,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}.1
+Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -102,6 +102,10 @@ Patch2: 0002-Use-openssl-1.0.1.patch
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch3: 0003-CA-Certificates-are-provided-by-Fedora.patch
+# Patch to allow building with GCC 7 from
+#
https://github.com/nodejs/node/issues/10388#issuecomment-283120731
+Patch4: 0004-Fix-compatibility-with-GCC-7.patch
+
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
@@ -244,6 +248,9 @@ rm -rf deps/uv \
rm -f src/node_root_certs.h
%patch3 -p1
+# Fix GCC7 build
+%patch4 -p1
+
%if 0%{?epel}
%patch2 -p1
%endif
@@ -407,6 +414,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Feb 28 2017 Stephen Gallagher
sgallagh@redhat.com - -
+- Fix FTBFS against GCC 7
+- Resolves: RHBZ 1423991
+
* Fri Feb 10 2017 Fedora Release Engineering
releng@fedoraproject.org - 1:6.9.5-1.1
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
commit 37c82618a03f5004a3cdbe45a6e4b1aa35f1e165
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Feb 1 16:53:44 2017 +0100
Update to 6.9.5 (security)
diff --git a/.gitignore b/.gitignore
index 2f4b575..44a7b83 100644
--- a/.gitignore
+++ b/.gitignore
@@ -64,3 +64,4 @@
/node-v6.9.2-stripped.tar.gz
/node-v6.9.3-stripped.tar.gz
/node-v6.9.4-stripped.tar.gz
+/node-v6.9.5-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index db8006e..3461a50 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,10 +16,10 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 9
-%global nodejs_patch 4
+%global nodejs_patch 5
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -407,6 +407,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Feb 1 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.5-1
+- Update to v6.9.5(security)
+- Reenable debug mode (
https://github.com/nodejs/node/pull/10525)
+
* Tue Jan 17 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.4-2
- Enable DTrace support.
- Eliminate newlines from CFLAGS due to broken dtrace shim
diff --git a/sources b/sources
index c9867a2..8b2794f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.9.4-stripped.tar.gz) = e953b9a592cedb2b0e62e97bd042c005cf585c8d33dee7ff59f461234bd9379cf03183e5004f8964669f26a0d375ecbce90a4696ab8ed6accfc9b2f715973d5e
+SHA512 (node-v6.9.5-stripped.tar.gz) = 1d10a60295fba32eddb5187a5986f8103f34115d2fe06895596a662c98191afc81bc9246100f8360d308a07db0bc7b8df9e37fe59d042ac136b42248582f4af2
commit f40549b226f9d3e7672eda133bc23aea7e285eac
Author: Fedora Release Engineering
releng@fedoraproject.org
Date: Fri Feb 10 22:21:39 2017 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
diff --git a/nodejs.spec b/nodejs.spec
index 28690bd..41e0397 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -72,7 +72,7 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-Release: %{nodejs_release}%{?dist}
+Release: %{nodejs_release}%{?dist}.1
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -200,7 +200,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}
+Release: %{npm_release}%{?dist}.1
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -407,6 +407,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Feb 10 2017 Fedora Release Engineering
releng@fedoraproject.org - 1:6.9.5-1.1
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
* Wed Feb 1 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.5-1
- Update to v6.9.5(security)
- Reenable debug mode (
https://github.com/nodejs/node/pull/10525)
commit 9037187f05e7af9e5079680d0a7a295fd032b51f
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Wed Feb 1 16:53:44 2017 +0100
Update to 6.9.5 (security)
diff --git a/.gitignore b/.gitignore
index e33f382..bd55c66 100644
--- a/.gitignore
+++ b/.gitignore
@@ -62,3 +62,4 @@
/node-v6.9.2-stripped.tar.gz
/node-v6.9.3-stripped.tar.gz
/node-v6.9.4-stripped.tar.gz
+/node-v6.9.5-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 4fb77ea..28690bd 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,10 +16,10 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 9
-%global nodejs_patch 4
+%global nodejs_patch 5
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -407,6 +407,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Feb 1 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.5-1
+- Update to v6.9.5(security)
+- Reenable debug mode (
https://github.com/nodejs/node/pull/10525)
+
* Tue Jan 17 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.4-2
- Enable DTrace support.
- Eliminate newlines from CFLAGS due to broken dtrace shim
diff --git a/sources b/sources
index c9867a2..8b2794f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.9.4-stripped.tar.gz) = e953b9a592cedb2b0e62e97bd042c005cf585c8d33dee7ff59f461234bd9379cf03183e5004f8964669f26a0d375ecbce90a4696ab8ed6accfc9b2f715973d5e
+SHA512 (node-v6.9.5-stripped.tar.gz) = 1d10a60295fba32eddb5187a5986f8103f34115d2fe06895596a662c98191afc81bc9246100f8360d308a07db0bc7b8df9e37fe59d042ac136b42248582f4af2
commit cfe8ea4ac6a2fdf6533f74c9e101cf11f33fdb56
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 19 09:34:15 2017 -0500
Enable DTrace support.
Eliminate newlines from CFLAGS due to broken dtrace shim
https://sourceware.org/bugzilla/show_bug.cgi?id=21063
Thanks to Kinston Hughes for the fix.
diff --git a/nodejs.spec b/nodejs.spec
index 01e217e..db8006e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -109,6 +109,7 @@ BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
+BuildRequires: systemtap-sdt-devel
%if 0%{?epel}
BuildRequires: openssl-devel >= 1:1.0.1
@@ -263,11 +264,15 @@ export CXXFLAGS='%{optflags} -g \
-DZLIB_CONST \
-fno-delete-null-pointer-checks'
+# Explicit new lines in C(XX)FLAGS can break naive build scripts
+export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
+export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
+
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
--shared-libuv \
- --without-dtrace \
+ --with-dtrace \
--with-intl=system-icu
%if %{?with_debug} == 1
@@ -283,9 +288,6 @@ rm -rf %{buildroot}
./tools/install.py install %{buildroot} %{_prefix}
-# and remove dtrace file again
-rm -rf %{buildroot}/%{_prefix}/lib/dtrace
-
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
@@ -373,6 +375,8 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%dir %{_datadir}/systemtap
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
+%dir %{_usr}/lib/dtrace
+%{_usr}/lib/dtrace/node.d
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
%license LICENSE
@@ -403,6 +407,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jan 17 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.4-2
+- Enable DTrace support.
+- Eliminate newlines from CFLAGS due to broken dtrace shim
+
https://sourceware.org/bugzilla/show_bug.cgi?id=21063
+ Thanks to Kinston Hughes for the fix.
+
* Tue Jan 10 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.4-1
- Update to v6.9.4
commit 7ad8128083c8009f5eae1cb05ddc1842fbd9592f
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 19 09:34:15 2017 -0500
Enable DTrace support.
Eliminate newlines from CFLAGS due to broken dtrace shim
https://sourceware.org/bugzilla/show_bug.cgi?id=21063
Thanks to Kinston Hughes for the fix.
diff --git a/nodejs.spec b/nodejs.spec
index 5feca0e..4fb77ea 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -109,6 +109,7 @@ BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
+BuildRequires: systemtap-sdt-devel
%if 0%{?epel}
BuildRequires: openssl-devel >= 1:1.0.1
@@ -263,11 +264,15 @@ export CXXFLAGS='%{optflags} -g \
-DZLIB_CONST \
-fno-delete-null-pointer-checks'
+# Explicit new lines in C(XX)FLAGS can break naive build scripts
+export CFLAGS="$(echo ${CFLAGS} | tr '\n\' ' ')"
+export CXXFLAGS="$(echo ${CXXFLAGS} | tr '\n\' ' ')"
+
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
--shared-libuv \
- --without-dtrace \
+ --with-dtrace \
--with-intl=system-icu
%if %{?with_debug} == 1
@@ -283,9 +288,6 @@ rm -rf %{buildroot}
./tools/install.py install %{buildroot} %{_prefix}
-# and remove dtrace file again
-rm -rf %{buildroot}/%{_prefix}/lib/dtrace
-
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
@@ -373,6 +375,8 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%dir %{_datadir}/systemtap
%dir %{_datadir}/systemtap/tapset
%{_datadir}/systemtap/tapset/node.stp
+%dir %{_usr}/lib/dtrace
+%{_usr}/lib/dtrace/node.d
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
%license LICENSE
@@ -403,6 +407,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jan 17 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.4-2
+- Enable DTrace support.
+- Eliminate newlines from CFLAGS due to broken dtrace shim
+
https://sourceware.org/bugzilla/show_bug.cgi?id=21063
+ Thanks to Kinston Hughes for the fix.
+
* Tue Jan 10 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.4-1
- Update to v6.9.4
commit b122d754cdef304ab470c62a5d45966dfbb58275
Merge: cc22a96 c728088
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue Jan 10 15:36:38 2017 +0100
Merge branch 'master' into epel7
commit c728088ae27fb049cc3f0938202c1880e888c433
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue Jan 10 14:29:24 2017 +0100
Build without debug
diff --git a/nodejs.spec b/nodejs.spec
index efcbb0a..5feca0e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,4 +1,4 @@
-%global with_debug 1
+%global with_debug 0
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
commit b4e6b38092930a0ddef086fd9e3978795db00416
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue Jan 10 11:56:44 2017 +0100
Update to 6.9.4
diff --git a/.gitignore b/.gitignore
index 21a5a91..e33f382 100644
--- a/.gitignore
+++ b/.gitignore
@@ -61,3 +61,4 @@
/node-v6.9.1-stripped.tar.gz
/node-v6.9.2-stripped.tar.gz
/node-v6.9.3-stripped.tar.gz
+/node-v6.9.4-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 01787f3..efcbb0a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,4 +1,4 @@
-%global with_debug 0
+%global with_debug 1
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -16,10 +16,10 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 9
-%global nodejs_patch 3
+%global nodejs_patch 4
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -403,6 +403,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jan 10 2017 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.4-1
+- Update to v6.9.4
+
* Thu Jan 05 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.3-1
-
https://nodejs.org/en/blog/release/v6.9.3/
diff --git a/sources b/sources
index f619e35..c9867a2 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (node-v6.9.3-stripped.tar.gz) = 61dcd5c933f33821e94d97e218231181c93e5ef64fa3697c8e0be11ffa036247f8d46b026871f84ae63059fed3ab39e003e4b5403c1980fc35f0d60e1862ce04
+SHA512 (node-v6.9.4-stripped.tar.gz) = e953b9a592cedb2b0e62e97bd042c005cf585c8d33dee7ff59f461234bd9379cf03183e5004f8964669f26a0d375ecbce90a4696ab8ed6accfc9b2f715973d5e
commit cc22a965c2f358cbb5c709e57ea35a3852c34959
Merge: c44caa0 bdb3690
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 5 07:59:58 2017 -0500
Merge branch 'master' into epel7
commit bdb369058d50e38b4ffbb987a59a868714296e6d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 5 07:51:23 2017 -0500
https://nodejs.org/en/blog/release/v6.9.3/
diff --git a/.gitignore b/.gitignore
index 041c4f4..21a5a91 100644
--- a/.gitignore
+++ b/.gitignore
@@ -60,3 +60,4 @@
/node-v6.9.0-stripped.tar.gz
/node-v6.9.1-stripped.tar.gz
/node-v6.9.2-stripped.tar.gz
+/node-v6.9.3-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index a7d5bc3..01787f3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,7 +16,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 9
-%global nodejs_patch 2
+%global nodejs_patch 3
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 2
@@ -26,7 +26,7 @@
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 88
+%global v8_patch 89
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -55,7 +55,7 @@
%global npm_epoch 1
%global npm_major 3
%global npm_minor 10
-%global npm_patch 9
+%global npm_patch 10
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -403,6 +403,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Jan 05 2017 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.3-1
+-
https://nodejs.org/en/blog/release/v6.9.3/
+
* Wed Dec 21 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.2-2
- Debug builds are failing. Disable them.
diff --git a/sources b/sources
index f53dfb3..f619e35 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-8b4ce5ab5e6d1eec9b1b767c5e8a4dca node-v6.9.2-stripped.tar.gz
+SHA512 (node-v6.9.3-stripped.tar.gz) = 61dcd5c933f33821e94d97e218231181c93e5ef64fa3697c8e0be11ffa036247f8d46b026871f84ae63059fed3ab39e003e4b5403c1980fc35f0d60e1862ce04
commit c44caa0678b8b1d631f4faa9b7646f86e03cf34e
Merge: 174620e 997fcd9
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Dec 21 10:59:38 2016 -0500
Merge branch 'master' into epel7
commit 997fcd94aa4b19d0b5c414852517a8b44d187ab4
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Dec 21 10:25:58 2016 -0500
Debug builds are failing. Disable them.
diff --git a/nodejs.spec b/nodejs.spec
index 9ffff82..a7d5bc3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,4 +1,4 @@
-%global with_debug 1
+%global with_debug 0
%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
@@ -19,7 +19,7 @@
%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -403,6 +403,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Wed Dec 21 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.2-2
+- Debug builds are failing. Disable them.
+
* Thu Dec 08 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.2-1
- Update to v6.9.2
commit 174620ebdafbe0ff94df7acc8552e3f82098f22b
Merge: 505e35f e44c1ed
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Dec 16 12:05:44 2016 -0500
Merge branch 'master' into epel7
commit e44c1edddf309d1e3d1ea109d4765256f3e93c80
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Dec 16 11:46:37 2016 -0500
Fix incorrect NPM release number
diff --git a/nodejs.spec b/nodejs.spec
index 23ee310..9ffff82 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -199,7 +199,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}.1
+Release: %{npm_release}%{?dist}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
commit eca509f163c831358a30a7c556b9b091ad888259
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Dec 8 15:31:33 2016 +0100
Update to v6.9.2
diff --git a/.gitignore b/.gitignore
index 692fcea..041c4f4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -59,3 +59,4 @@
/node-v6.8.1-stripped.tar.gz
/node-v6.9.0-stripped.tar.gz
/node-v6.9.1-stripped.tar.gz
+/node-v6.9.2-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 7e0936e..23ee310 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,17 +16,17 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 9
-%global nodejs_patch 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 4
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 84
+%global v8_patch 88
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -55,7 +55,7 @@
%global npm_epoch 1
%global npm_major 3
%global npm_minor 10
-%global npm_patch 8
+%global npm_patch 9
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# In order to avoid needing to keep incrementing the release version for the
@@ -199,7 +199,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}%{?dist}
+Release: %{npm_release}%{?dist}.1
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -403,6 +403,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Dec 08 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.9.2-1
+- Update to v6.9.2
+
* Tue Nov 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-4
- Fix incorrect Conflicts for nodejs-docs
diff --git a/sources b/sources
index 6206d09..f53dfb3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-a2649b6bb0e100067817fde1bc17f826 node-v6.9.1-stripped.tar.gz
+8b4ce5ab5e6d1eec9b1b767c5e8a4dca node-v6.9.2-stripped.tar.gz
commit 505e35f2bdcb5ce0bc3408d9404efbc1cb6e71f2
Merge: 3b1f31f e7cfbb0
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Nov 8 17:07:05 2016 -0500
Merge branch 'master' into epel7
commit e7cfbb014beb388e696adb0ee8dd6710ac90570a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Nov 8 17:05:57 2016 -0500
Fix incorrect Conflicts for nodejs-docs
diff --git a/nodejs.spec b/nodejs.spec
index f0c2031..7e0936e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -144,7 +144,7 @@ Conflicts: node <= 0.3.2-12
# we don't need the seperate nodejs-punycode package, so we Provide it here so
# dependent packages don't need to override the dependency generator.
# See also: RHBZ#11511811
-# UPDATE: punycode will be deprecated and so we should unbundle it in Node v8
+# UPDATE: punycode will be deprecated and so we should unbundle it in Node v8
# and use upstream module instead
#
https://github.com/nodejs/node/commit/29e49fc286080215031a81effbd59eac092fff...
Provides: nodejs-punycode = %{punycode_version}
@@ -186,7 +186,7 @@ real-time applications that run across distributed devices.
%package devel
Summary: JavaScript runtime - development headers
Group: Development/Languages
-Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{release}
+Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
Requires: libuv-devel%{?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
@@ -224,8 +224,8 @@ BuildArch: noarch
# We don't require that the main package be installed to
# use the docs, but if it is installed, make sure the
# version always matches
-Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{nodejs_release}
-Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{nodejs_release}
+Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
+Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
%description docs
The API documentation for the Node.js JavaScript runtime.
commit 0665a4f9dc95d46435bc26a980a41c2d6cd0923a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Nov 8 17:01:26 2016 -0500
Fix incorrect Conflicts for nodejs-docs
diff --git a/nodejs.spec b/nodejs.spec
index 41f3a92..f0c2031 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 4
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -170,9 +170,9 @@ Provides: bundled(http-parser) = %{http_parser_version}
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?epel}
# EPEL doesn't support Recommends, so make it strict
-Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}
+Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%else
-Recommends: npm = %{npm_epoch}:%{npm_version}-%{npm_release}
+Recommends: npm = %{npm_epoch}:%{npm_version}-%{npm_release}%{?dist}
%endif
@@ -403,7 +403,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Tue Nov 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-3
+* Tue Nov 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-4
- Fix incorrect Conflicts for nodejs-docs
* Tue Nov 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-2
commit 8dc35e41e08d53c8ece112eeab41e8eb084d9228
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Nov 8 16:34:19 2016 -0500
Fix incorrect Conflicts for nodejs-docs
diff --git a/nodejs.spec b/nodejs.spec
index 43aa963..41f3a92 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -224,8 +224,8 @@ BuildArch: noarch
# We don't require that the main package be installed to
# use the docs, but if it is installed, make sure the
# version always matches
-Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{release}
-Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{release}
+Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{nodejs_release}
+Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{nodejs_release}
%description docs
The API documentation for the Node.js JavaScript runtime.
@@ -403,6 +403,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Nov 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-3
+- Fix incorrect Conflicts for nodejs-docs
+
* Tue Nov 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-2
- Bump revision and rebuild for s390x
commit 528c58d440c59da5491f0d19c42b65868ba5785e
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Nov 8 11:07:31 2016 -0500
Bump revision and rebuild for s390x
diff --git a/nodejs.spec b/nodejs.spec
index 9bd5cf1..43aa963 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -403,7 +403,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Thu Oct 20 2016 Stephen Gallagher
sgallagh@redhat.com - -
+* Tue Nov 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-2
+- Bump revision and rebuild for s390x
+
+* Thu Oct 20 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.9.1-1
- Update to 6.9.1 LTS release
- Fix a regression introduced in v6.8.0 in readable stream that caused unpipe
to remove the wrong stream
commit 3b1f31f30d4dd111829a1b6ecb0748fc2ef3f906
Merge: 64c064c 063f7fe
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Oct 20 08:36:49 2016 -0400
Merge branch 'master' into epel7
commit 063f7fefc5d9aed11a75b6b4c703c34002a1cd2a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Oct 20 08:36:04 2016 -0400
Update to 6.9.1 LTS release
- Fix a regression introduced in v6.8.0 in readable stream that caused unpipe
to remove the wrong stream
-
https://nodejs.org/en/blog/release/v6.9.1/
diff --git a/.gitignore b/.gitignore
index 96a20e7..692fcea 100644
--- a/.gitignore
+++ b/.gitignore
@@ -58,3 +58,4 @@
/node-v6.8.0-stripped.tar.gz
/node-v6.8.1-stripped.tar.gz
/node-v6.9.0-stripped.tar.gz
+/node-v6.9.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 6d945eb..9bd5cf1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -16,7 +16,7 @@
%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 9
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
%global nodejs_release 1
@@ -403,6 +403,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Oct 20 2016 Stephen Gallagher
sgallagh@redhat.com - -
+- Update to 6.9.1 LTS release
+- Fix a regression introduced in v6.8.0 in readable stream that caused unpipe
+ to remove the wrong stream
+-
https://nodejs.org/en/blog/release/v6.9.1/
+
* Tue Oct 18 2016 Stephen Gallagher
sgallagh@redhat.com - -
- Update to 6.9.0 LTS release
-
https://nodejs.org/en/blog/release/v6.9.0/
diff --git a/sources b/sources
index 2e2b2b9..6206d09 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-51582a2b398074662d49630879a9f6a3 node-v6.9.0-stripped.tar.gz
+a2649b6bb0e100067817fde1bc17f826 node-v6.9.1-stripped.tar.gz
commit 64c064c3b600057115e33eaf83796fd7dd3f61b7
Merge: 0b8f6f9 a4e2095
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Oct 18 15:24:43 2016 -0400
Merge branch 'master' into epel7
commit a4e2095b05be1438af1627a8664d8410bbd5f0bd
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Oct 18 15:23:57 2016 -0400
Update to 6.9.0 LTS release
-
https://nodejs.org/en/blog/release/v6.9.0/
diff --git a/.gitignore b/.gitignore
index 28636a0..96a20e7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -57,3 +57,4 @@
/node-v6.7.0-stripped.tar.gz
/node-v6.8.0-stripped.tar.gz
/node-v6.8.1-stripped.tar.gz
+/node-v6.9.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 24751a8..6d945eb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -15,11 +15,11 @@
# than a Fedora release lifecycle.
%global nodejs_epoch 1
%global nodejs_major 6
-%global nodejs_minor 8
-%global nodejs_patch 1
+%global nodejs_minor 9
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 5
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -403,6 +403,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Oct 18 2016 Stephen Gallagher
sgallagh@redhat.com - -
+- Update to 6.9.0 LTS release
+-
https://nodejs.org/en/blog/release/v6.9.0/
+
* Mon Oct 17 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-5
- Add dist tag to npm nodejs dependency
diff --git a/sources b/sources
index 53a9e88..2e2b2b9 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-cb4ac4b6882ddb53fb938c0f914c3877 node-v6.8.1-stripped.tar.gz
+51582a2b398074662d49630879a9f6a3 node-v6.9.0-stripped.tar.gz
commit 0b8f6f93e2f2b767fcca1098d2656eb87ec8554a
Merge: 0492eb1 fde0d7c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Oct 17 10:04:18 2016 -0400
Merge branch 'master' into epel7
commit fde0d7c8930a06eef67a1a9c7646a559308cfe49
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Oct 17 10:03:25 2016 -0400
Add dist tag to npm nodejs dependency
diff --git a/nodejs.spec b/nodejs.spec
index 4a6365e..24751a8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 4
+%global nodejs_release 5
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -206,7 +206,7 @@ Release: %{npm_release}%{?dist}
# now.
Obsoletes: npm < 0:3.5.4-6
Provides: npm = %{npm_epoch}:%{npm_version}
-Requires: nodejs = %{epoch}:%{nodejs_version}-%{nodejs_release}
+Requires: nodejs = %{epoch}:%{nodejs_version}-%{nodejs_release}%{?dist}
# Do not add epoch to the virtual NPM provides or it will break
# the automatic dependency-generation script.
@@ -224,8 +224,8 @@ BuildArch: noarch
# We don't require that the main package be installed to
# use the docs, but if it is installed, make sure the
# version always matches
-Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{nodejs_release}
-Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{nodejs_release}
+Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{release}
+Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{release}
%description docs
The API documentation for the Node.js JavaScript runtime.
@@ -403,6 +403,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Oct 17 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-5
+- Add dist tag to npm nodejs dependency
+
* Mon Oct 17 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-4
- Fix typo in npm nodejs dependency
commit 0492eb1d1626f8489ee54f267b1986d6c4a1f871
Merge: 86ca5c2 21ed17b
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Oct 17 08:02:46 2016 -0400
Merge branch 'master' into epel7
commit 21ed17b57ee69d12bd7dfae8562b224e2f46ae8d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Oct 17 07:57:10 2016 -0400
Fix typo in npm nodejs dependency
diff --git a/nodejs.spec b/nodejs.spec
index 7333930..4a6365e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 3
+%global nodejs_release 4
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -72,7 +72,6 @@
Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
-# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -207,7 +206,7 @@ Release: %{npm_release}%{?dist}
# now.
Obsoletes: npm < 0:3.5.4-6
Provides: npm = %{npm_epoch}:%{npm_version}
-Requires: nodejs = %{epoch}:%{nodejs_version}-%{release}
+Requires: nodejs = %{epoch}:%{nodejs_version}-%{nodejs_release}
# Do not add epoch to the virtual NPM provides or it will break
# the automatic dependency-generation script.
@@ -225,8 +224,8 @@ BuildArch: noarch
# We don't require that the main package be installed to
# use the docs, but if it is installed, make sure the
# version always matches
-Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{release}
-Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{release}
+Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{nodejs_release}
+Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{nodejs_release}
%description docs
The API documentation for the Node.js JavaScript runtime.
@@ -404,6 +403,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Oct 17 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-4
+- Fix typo in npm nodejs dependency
+
* Sat Oct 15 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-3
- Bump release version for tagging bug
commit 86ca5c2db27f2e6e43bc367a226c3cad377aeb61
Merge: 9912fff 4b506a0
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Sat Oct 15 16:41:26 2016 -0400
Merge branch 'master' into epel7
commit 4b506a02bdaf5ea778f68ec8848b97c7324ee95c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Sat Oct 15 16:40:31 2016 -0400
Bump release version for tagging bug
diff --git a/nodejs.spec b/nodejs.spec
index 6430049..7333930 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 2
+%global nodejs_release 3
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -200,7 +200,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
-Release: %{npm_release}
+Release: %{npm_release}%{?dist}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -404,7 +404,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Sat Oct 15 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-2
+* Sat Oct 15 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-3
- Bump release version for tagging bug
* Sat Oct 15 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-1
commit ddc9ab6a547674bbfe84ac84681c90c8cfd6d87a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Sat Oct 15 15:38:35 2016 -0400
Bump release version for tagging bug
diff --git a/nodejs.spec b/nodejs.spec
index 63bde26..6430049 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -19,7 +19,7 @@
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-%global nodejs_release 1
+%global nodejs_release 2
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -404,6 +404,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Sat Oct 15 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-2
+- Bump release version for tagging bug
+
* Sat Oct 15 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-1
- Update node to v6.8.0
- Fix FTBFS against non-bundled zlib
commit 9912fff68f0f1daa2760fa7f2cd4585fb40a3696
Merge: 72b41e3 8e62e68
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Sat Oct 15 13:49:02 2016 -0400
Merge branch 'master' into epel7
commit 8e62e68be69ee7ab05af79f50949af7bb414eef6
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Sat Oct 15 13:47:23 2016 -0400
Fix release number
diff --git a/nodejs.spec b/nodejs.spec
index 700a246..63bde26 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -73,7 +73,7 @@ Name: nodejs
Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: %{nodejs_release}%{?dist}.3
+Release: %{nodejs_release}%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
commit 60e0dc2b9401a92c0c2dacdba2b624627e218388
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Sat Oct 15 13:46:29 2016 -0400
Add sources
diff --git a/.gitignore b/.gitignore
index 786f8ca..28636a0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -56,3 +56,4 @@
/node-v6.6.0-stripped.tar.gz
/node-v6.7.0-stripped.tar.gz
/node-v6.8.0-stripped.tar.gz
+/node-v6.8.1-stripped.tar.gz
diff --git a/sources b/sources
index 8a3ed79..53a9e88 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-165d800d232b90371caf4df4bd0b05c4 node-v6.8.0-stripped.tar.gz
+cb4ac4b6882ddb53fb938c0f914c3877 node-v6.8.1-stripped.tar.gz
commit 72b41e366fc92405676330b2f4a91d173c011db6
Merge: f1befb7 e14437b
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Sat Oct 15 13:44:53 2016 -0400
Merge branch 'master' into epel7
commit e14437b345428924eaaf27b00cd69cc6f7c639e4
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Sat Oct 15 13:43:58 2016 -0400
Update node to v6.8.0
- Fix FTBFS against non-bundled zlib
diff --git a/nodejs.spec b/nodejs.spec
index 560e8f4..700a246 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -13,11 +13,13 @@
# to be major versions with even numbers). The odd-numbered versions are new
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
+%global nodejs_epoch 1
%global nodejs_major 6
%global nodejs_minor 8
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
+%global nodejs_release 1
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -56,16 +58,22 @@
%global npm_patch 8
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
+# In order to avoid needing to keep incrementing the release version for the
+# main package forever, we will just construct one for npm that is guaranteed
+# to increment safely. Changing this can only be done during an update when the
+# base npm version number is increasing.
+%global npm_release %{nodejs_epoch}.%{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}.%{nodejs_release}
+
# Filter out the NPM bundled dependencies so we aren't providing them
%global __provides_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
%global __requires_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
Name: nodejs
-Epoch: 1
+Epoch: %{nodejs_epoch}
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 108%{?dist}
+Release: %{nodejs_release}%{?dist}.3
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -106,8 +114,12 @@ BuildRequires: gcc-c++ >= 4.8.0
%if 0%{?epel}
BuildRequires: openssl-devel >= 1:1.0.1
%else
+%if 0%{?fedora} > 25
+BuildRequires: compat-openssl10-devel >= 1:1.0.2
+%else
BuildRequires: openssl-devel >= 1:1.0.2
%endif
+%endif
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -159,9 +171,9 @@ Provides: bundled(http-parser) = %{http_parser_version}
# Make sure we keep NPM up to date when we update Node.js
%if 0%{?epel}
# EPEL doesn't support Recommends, so make it strict
-Requires: npm = %{npm_epoch}:%{npm_version}-%{release}
+Requires: npm = %{npm_epoch}:%{npm_version}-%{npm_release}
%else
-Recommends: npm = %{npm_epoch}:%{npm_version}-%{release}
+Recommends: npm = %{npm_epoch}:%{npm_version}-%{npm_release}
%endif
@@ -188,6 +200,7 @@ Development headers for the Node.js JavaScript runtime.
Summary: Node.js Package Manager
Epoch: %{npm_epoch}
Version: %{npm_version}
+Release: %{npm_release}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
@@ -240,8 +253,16 @@ rm -f src/node_root_certs.h
# build with debugging symbols and add defines from libuv (#892601)
# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
# NULL objects. We need to pass -fno-delete-null-pointer-checks
-export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
-export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
+export CFLAGS='%{optflags} -g \
+ -D_LARGEFILE_SOURCE \
+ -D_FILE_OFFSET_BITS=64 \
+ -DZLIB_CONST \
+ -fno-delete-null-pointer-checks'
+export CXXFLAGS='%{optflags} -g \
+ -D_LARGEFILE_SOURCE \
+ -D_FILE_OFFSET_BITS=64 \
+ -DZLIB_CONST \
+ -fno-delete-null-pointer-checks'
./configure --prefix=%{_prefix} \
--shared-openssl \
@@ -383,6 +404,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Sat Oct 15 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.8.1-1
+- Update node to v6.8.0
+- Fix FTBFS against non-bundled zlib
+
* Thu Oct 13 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.8.0-108
- Update node to v6.8.0 and npm@3.10.8
commit ac5e246e3f7e198267750b5fe71d6bb2ad0d6c1e
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Oct 13 11:07:53 2016 +0200
Update node and npm
diff --git a/.gitignore b/.gitignore
index e3f41c3..786f8ca 100644
--- a/.gitignore
+++ b/.gitignore
@@ -55,3 +55,4 @@
/node-v6.5.0-stripped.tar.gz
/node-v6.6.0-stripped.tar.gz
/node-v6.7.0-stripped.tar.gz
+/node-v6.8.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 7faf620..560e8f4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -14,7 +14,7 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_major 6
-%global nodejs_minor 7
+%global nodejs_minor 8
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -24,7 +24,7 @@
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 83
+%global v8_patch 84
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -53,7 +53,7 @@
%global npm_epoch 1
%global npm_major 3
%global npm_minor 10
-%global npm_patch 3
+%global npm_patch 8
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# Filter out the NPM bundled dependencies so we aren't providing them
@@ -65,7 +65,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 107%{?dist}
+Release: 108%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -383,6 +383,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Oct 13 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.8.0-108
+- Update node to v6.8.0 and npm@3.10.8
+
* Tue Sep 27 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.7.0-107
- Update to 6.7.0
-
https://nodejs.org/en/blog/release/v6.7.0/
diff --git a/sources b/sources
index da7513b..8a3ed79 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-0c246b5769614c71d4f2b3a6ace4a843 node-v6.7.0-stripped.tar.gz
+165d800d232b90371caf4df4bd0b05c4 node-v6.8.0-stripped.tar.gz
commit f1befb75262c8deaa4ee8731be6428a574000bbf
Merge: 4fc1f11 1665155
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Sep 27 21:59:24 2016 -0400
Merge branch 'master' into epel7
commit 1665155f800f06a1b176f588b31ac84c8dc6bd58
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Sep 27 21:44:53 2016 -0400
Update to 6.7.0
-
https://nodejs.org/en/blog/release/v6.7.0/
diff --git a/.gitignore b/.gitignore
index 91de372..e3f41c3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -54,3 +54,4 @@
/node-v6.4.0-stripped.tar.gz
/node-v6.5.0-stripped.tar.gz
/node-v6.6.0-stripped.tar.gz
+/node-v6.7.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 895393f..7faf620 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -14,7 +14,7 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_major 6
-%global nodejs_minor 6
+%global nodejs_minor 7
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -65,7 +65,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 106%{?dist}
+Release: 107%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -383,6 +383,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Sep 27 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.7.0-107
+- Update to 6.7.0
+-
https://nodejs.org/en/blog/release/v6.7.0/
+
* Fri Sep 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.6.0-106
- Drop Conflicts: from main package.
It wasn't needed and was breaking upgrades in some cases.
diff --git a/sources b/sources
index 9fc6bc6..da7513b 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-1639577a3bb818c7cdc2ca95dd8407f7 node-v6.6.0-stripped.tar.gz
+0c246b5769614c71d4f2b3a6ace4a843 node-v6.7.0-stripped.tar.gz
commit 4fc1f1173f95a44fe5a3f9e969939225cb48c1e6
Merge: 30cdccf 32ad0b1
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Sep 16 14:34:38 2016 -0400
Merge branch 'master' into epel7
commit 32ad0b1e767396d9712b028f7b95961ebb7b597d
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Sep 16 14:33:18 2016 -0400
Drop Conflicts: from main package.
It wasn't needed and was breaking upgrades in some cases.
- Move npm support files into the npm package
- Mark manpages as %doc
diff --git a/nodejs.spec b/nodejs.spec
index 20b4624..895393f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -65,7 +65,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 105%{?dist}
+Release: 106%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -162,7 +162,6 @@ Provides: bundled(http-parser) = %{http_parser_version}
Requires: npm = %{npm_epoch}:%{npm_version}-%{release}
%else
Recommends: npm = %{npm_epoch}:%{npm_version}-%{release}
-Conflicts: npm < %{npm_epoch}:%{npm_version}-%{release}
%endif
@@ -359,10 +358,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%license LICENSE
%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
%doc ROADMAP.md WORKING_GROUPS.md
-%{_prefix}/lib/node_modules/npm
-%ghost %{_sysconfdir}/npmrc
-%ghost %{_sysconfdir}/npmignore
-%{_mandir}/man*/*
+%doc %{_mandir}/man*/*
%files devel
@@ -376,7 +372,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%files -n npm
%{_bindir}/npm
-
+%{_prefix}/lib/node_modules/npm
+%ghost %{_sysconfdir}/npmrc
+%ghost %{_sysconfdir}/npmignore
%files docs
%dir %{_pkgdocdir}
@@ -385,6 +383,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Sep 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.6.0-106
+- Drop Conflicts: from main package.
+ It wasn't needed and was breaking upgrades in some cases.
+- Move npm support files into the npm package
+- Mark manpages as %%doc
+
* Fri Sep 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.6.0-105
- Update to 6.6.0
-
https://github.com/nodejs/node/blob/v6.6.0/doc/changelogs/CHANGELOG_V6.md#6....
commit 30cdccf34a80dd23cfdf949f84649ee7bbe7cfd4
Merge: 8b99aed 72ef125
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Sep 16 11:52:41 2016 -0400
Merge branch 'master' into epel7
commit 72ef1257485b367ec94c898db378a66fe9cf0f4f
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Sep 16 11:51:55 2016 -0400
Fix release number
diff --git a/nodejs.spec b/nodejs.spec
index d5f45ce..20b4624 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -65,7 +65,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 104%{?dist}
+Release: 105%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -385,7 +385,7 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Fri Sep 16 2016 Stephen Gallagher
sgallagh@redhat.com - -104
+* Fri Sep 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.6.0-105
- Update to 6.6.0
-
https://github.com/nodejs/node/blob/v6.6.0/doc/changelogs/CHANGELOG_V6.md#6....
commit 8b99aedb3c14c9899cec82d2a82934d3ea580413
Merge: 4930b71 6e5b49a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Sep 16 10:50:56 2016 -0400
Merge branch 'master' into epel7
diff --cc nodejs.spec
index cee55f5,d5f45ce..0941133
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -385,8 -385,11 +385,12 @@@ NODE_PATH=%{buildroot}%{_prefix}/lib/no
%{_pkgdocdir}/npm/doc
%changelog
+ * Fri Sep 16 2016 Stephen Gallagher
sgallagh@redhat.com - -104
+ - Update to 6.6.0
+ -
https://github.com/nodejs/node/blob/v6.6.0/doc/changelogs/CHANGELOG_V6.md#6....
+
* Mon Sep 12 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.5.0-104
+- Update to 6.5.0
- Add support for building on EPEL 7 against OpenSSL 1.0.1
- Modify v8_abi autorequires to avoid unnecessary rebuilds
commit 6e5b49a8c9911b7baf98d205fff4d92b51d68a6c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Sep 16 10:49:47 2016 -0400
Update to 6.6.0
-
https://github.com/nodejs/node/blob/v6.6.0/doc/changelogs/CHANGELOG_V6.md#6....
diff --git a/.gitignore b/.gitignore
index cec6734..91de372 100644
--- a/.gitignore
+++ b/.gitignore
@@ -53,3 +53,4 @@
/node-v6.3.1-stripped.tar.gz
/node-v6.4.0-stripped.tar.gz
/node-v6.5.0-stripped.tar.gz
+/node-v6.6.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index ab15908..d5f45ce 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -14,7 +14,7 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_major 6
-%global nodejs_minor 5
+%global nodejs_minor 6
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -24,7 +24,7 @@
%global v8_major 5
%global v8_minor 1
%global v8_build 281
-%global v8_patch 81
+%global v8_patch 83
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -385,6 +385,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Sep 16 2016 Stephen Gallagher
sgallagh@redhat.com - -104
+- Update to 6.6.0
+-
https://github.com/nodejs/node/blob/v6.6.0/doc/changelogs/CHANGELOG_V6.md#6....
+
* Mon Sep 12 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.5.0-104
- Add support for building on EPEL 7 against OpenSSL 1.0.1
- Modify v8_abi autorequires to avoid unnecessary rebuilds
diff --git a/sources b/sources
index 7a5ef30..9fc6bc6 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-563d1513c33a047f0b5bb8bd82d8663f node-v6.5.0-stripped.tar.gz
+1639577a3bb818c7cdc2ca95dd8407f7 node-v6.6.0-stripped.tar.gz
commit 4930b71aac8e56276666c409118031fc09c6b216
Merge: 355661f 5d0271a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Sep 12 15:20:07 2016 -0400
Merge branch 'master' into epel7
diff --cc .gitignore
index cdcc8b5,cec6734..176bd6c
--- a/.gitignore
+++ b/.gitignore
@@@ -32,5 -32,24 +32,26 @@@
/node-v0.10.32-stripped.tar.gz
/node-v0.10.33-stripped.tar.gz
/node-v0.10.36-stripped.tar.gz
+/node-v0.10.42-stripped.tar.gz
+/node-v0.10.46-stripped.tar.gz
+ /node-v4.2.2-stripped.tar.gz
+ /node-v4.2.3-stripped.tar.gz
+ /node-v4.2.4-stripped.tar.gz
+ /node-v4.2.6-stripped.tar.gz
+ /node-v4.3.0-stripped.tar.gz
+ /node-v4.3.1-stripped.tar.gz
+ /node-v5.7.1-stripped.tar.gz
+ /node-v5.8.0-stripped.tar.gz
+ /node-v5.9.0.tar.gz
+ /node-v5.9.1-stripped.tar.gz
+ /node-v5.10.0-stripped.tar.gz
+ /node-v5.10.1-stripped.tar.gz
+ /node-v5.11.0-stripped.tar.gz
+ /node-v6.1.0-stripped.tar.gz
+ /node-v6.2.0-stripped.tar.gz
+ /node-v6.2.1-stripped.tar.gz
+ /node-v6.2.2-stripped.tar.gz
+ /node-v6.3.0-stripped.tar.gz
+ /node-v6.3.1-stripped.tar.gz
+ /node-v6.4.0-stripped.tar.gz
+ /node-v6.5.0-stripped.tar.gz
diff --cc nodejs.spec
index 873675f,ab15908..cee55f5
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -261,32 -381,145 +381,39 @@@ NODE_PATH=%{buildroot}%{_prefix}/lib/no
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
+ %{_pkgdocdir}/npm/html
+ %{_pkgdocdir}/npm/doc
%changelog
+ * Mon Sep 12 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.5.0-104
++- Update to 6.5.0
+ - Add support for building on EPEL 7 against OpenSSL 1.0.1
+ - Modify v8_abi autorequires to avoid unnecessary rebuilds
+
-* Mon Aug 29 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.5.0-103
-- Update to 6.5.0
-
-* Mon Aug 22 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-102
-- Bump release to 102 to fix broken npm dependency
-
-* Thu Aug 18 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-1
-- Update to 6.4.0
-
-* Tue Aug 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.1-101
-- Build Node.js with internationalization support
-
-* Thu Aug 04 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.1-100
-- Split npm into a subpackage
-
-* Mon Jul 25 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.1-1
-- Update to 6.3.1
-- comment out %%patch3
-
-* Mon Jul 18 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.0-3
-- Fix epoch version dependency on libuv
-
-* Tue Jul 12 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.0-2
-- Patch node.gyp to fix failing ./configure
-
-* Sun Jul 10 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.0-1
-- Update node to 6.3.0
-- update punycode to 2.0.0
-- add gcc and gcc-c++ as build dependencies
-- modified system-certs patch
-
-* Sat Jun 18 2016 Tom Hughes
tom@compton.nu - 1:6.2.2-1
-- Update to latest stable release 6.2.2
-- Add check on npm version
-
-* Tue Jun 7 2016 Tom Hughes
tom@compton.nu - 1:6.2.1-1
-- Update to latest stable release 6.2.1
-
-* Wed May 18 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.2.0-1
-- Update to latest stable release 6.2.0
--
https://github.com/nodejs/node/blob/v6.2.0/doc/changelogs/CHANGELOG_V6.md#6....
-
-* Mon May 09 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.1.0-1
-- Update to latest stable release 6.1.0
--
https://github.com/nodejs/node/blob/v6.1.0/CHANGELOG.md
-
-* Tue May 03 2016 Stephen Gallagher
sgallagh@redhat.com - 1:5.11.0-3
-- Drop the epoch on the virtual provides for npm
-
-* Thu Apr 28 2016 Stephen Gallagher
sgallagh@redhat.com - 1:5.11.0-2
-- Add epoch and rebuild to preserve upgrade path
-
-* Mon Apr 25 2016 Stephen Gallagher
sgallagh@redhat.com - 5.11.0-1
-- Update to latest stable release 5.11.0
--
https://github.com/nodejs/node/blob/v5.11.0/CHANGELOG.md
+* Fri Jun 24 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 0.10.46-1
+- Update to 0.10.46(security fix)
+-
https://github.com/nodejs/node/blob/v0.10.46/ChangeLog
+- Bump http-parser version
-* Mon Apr 11 2016 Stephen Gallagher
sgallagh@redhat.com - 5.10.0-1
-- Update to latest stable release 5.10.1
--
https://github.com/nodejs/node/blob/v5.10.1/CHANGELOG.md
-
-* Fri Apr 01 2016 Stephen Gallagher
sgallagh@redhat.com - 5.10.0-1
-- Update to latest security release (5.10.0)
-- Update bundled npm to 3.8.3
-- Fixes serious man-in-the-middle vulnerability with npm
-
-* Wed Mar 23 2016 Stephen Gallagher
sgallagh@redhat.com - 5.9.1-1
-- Update to latest stable release (5.9.1)
-- Bundle npm (3.7.3)
-
-* Wed Mar 23 2016 Stephen Gallagher
sgallagh@redhat.com - 4.4.1-1
-- Update to 4.4.1 upstream LTS release
-- Add more versatile ABI checking
-
-* Tue Feb 23 2016 Tom Hughes
tom@compton.nu - 4.3.1-1
-- Update to 4.3.1 upstream LTS release
-
-* Wed Feb 10 2016 Tom Hughes
tom@compton.nu - 4.3.0-3
+* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.43-4
- Verify that the built node reports the expected versions
-- Drop unneeded dep on http-parser-devel
-- Add version check for punycode
-
-* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-2
-- Fix nodejs-abi to be 4.3
-- Clean up bundled versions in spec file
-
-* Tue Feb 09 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-1
-- Update to 4.3.0 upstream LTS release
--
https://github.com/nodejs/node/blob/v4.3.0/CHANGELOG.md
-- Switch to the bundled http-parser
-- Build with -fno-delete-pointer-null-checks for GCC 6
-
-* Tue Feb 9 2016 Tom Hughes
tom@compton.nu - 4.2.6-1
-- Update to 4.2.6 upstream release
-
-* Thu Feb 04 2016 Fedora Release Engineering
releng@fedoraproject.org - 4.2.4-5
-- Rebuilt for
https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
-
-* Tue Jan 19 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-4
-- Force a depdendency on the correct version of http-parser
-
-* Tue Jan 19 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-3
-- Force a dependency on the correct version of libuv
-
-* Mon Jan 18 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-2
+- Properly Provides: http-parser
- Fix Provides: for punycode
-* Wed Jan 13 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-1
-- New upstream bugfix release 4.2.4
--
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
-
-* Fri Dec 04 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.3-2
-- Add %%with_debug variable to spec file
- The debug build is not supported on all architectures.
-
-* Fri Dec 04 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.3-1
-- New upstream security release 4.2.3
--
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
-- Fix incorrect v8 version
-
-* Wed Dec 2 2015 Peter Robinson
pbrobinson@fedoraproject.org 4.2.2-4
-- Use nodejs_arches macro for arch definition (add aarch64 and power64 platforms)
-
-* Wed Dec 02 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-3
-- Fix nodejs_abi version
-- Also ensure that we are building against the correct libuv
+* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.42-3
+- Remove duplicated content from spec file
-* Wed Dec 02 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-2
-- Disable debug build for ARMv7 since it fails to build
+* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.42-2
+- Re-enable debug builds on supported arches
-* Tue Dec 01 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-1
-- Upgrade to Node.js 4.2.2 (LTS)
+* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.42-1
+- Update to Node.js 0.10.42
+-
https://github.com/nodejs/node/blob/v0.10.42/ChangeLog
+- Bundle v8, c-ares and http-parser with Node.js
+- Drop patches that revert v8 UTF8 change
+- Resolves: RHBZ#1306203
+- Resolves: RHBZ#1306200
+- Resolves: RHBZ#1306207
* Wed Jun 17 2015 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.36-5
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
commit 5d0271a5297c526a0442dce181b9f94351753228
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Sep 12 14:21:14 2016 -0400
Prepare for EPEL 7 uplift
- Use %{?epel} tag to maintain a single specfile
- Relax openssl requirement to 1.0.1+ for EPEL 7
- Don't use weak dependencies in EPEL
- Update v8_abi processing to avoid extra rebuilds of dependents
diff --git a/nodejs-disable-gyp-deps.patch b/0001-disable-running-gyp-files-for-bundled-deps.patch
similarity index 63%
rename from nodejs-disable-gyp-deps.patch
rename to 0001-disable-running-gyp-files-for-bundled-deps.patch
index f1526c0..4e46de4 100644
--- a/nodejs-disable-gyp-deps.patch
+++ b/0001-disable-running-gyp-files-for-bundled-deps.patch
@@ -1,19 +1,17 @@
-From 9ed79cf3212bf7bba43c2a7f313628092c43daf5 Mon Sep 17 00:00:00 2001
+From da4ed485ddd52cd156406f939225146e8539cabb Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:35:29 -0500
-Subject: [PATCH 1/2] disable running gyp files for bundled deps
+Subject: [PATCH 1/3] disable running gyp files for bundled deps
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 4962bd4e47e447840cc9890ce465b786bb77ba26..30fa7fb2f621a320706a076724250421da373d1f 100644
+index a8870a5..f7fc4a9 100644
--- a/Makefile
+++ b/Makefile
-@@ -65,11 +65,11 @@ $(NODE_EXE): config.gypi out/Makefile
-
- $(NODE_G_EXE): config.gypi out/Makefile
+@@ -70,7 +70,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
ln -fs out/Debug/$(NODE_EXE) $@
@@ -22,8 +20,6 @@ index 4962bd4e47e447840cc9890ce465b786bb77ba26..30fa7fb2f621a320706a076724250421
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
- if [ -f $@ ]; then
- $(error Stale $@, please re-run ./configure)
--
-2.7.2
+2.9.0
diff --git a/0002-Use-openssl-1.0.1.patch b/0002-Use-openssl-1.0.1.patch
new file mode 100644
index 0000000..700e8fc
--- /dev/null
+++ b/0002-Use-openssl-1.0.1.patch
@@ -0,0 +1,524 @@
+From 6cf8243a70e26843c7770f7b29b1a33b822d1c26 Mon Sep 17 00:00:00 2001
+From: Haikel Guemar
hguemar@fedoraproject.org
+Date: Tue, 26 Jul 2016 22:50:22 +0200
+Subject: [PATCH 2/3] Use openssl 1.0.1
+
+Based on Solaris patches from upstream #2783
+
https://github.com/nodejs/node/issues/2783
+---
+ doc/api/tls.md | 6 ++
+ src/node_constants.cc | 5 ++
+ src/node_crypto.cc | 201 ++++++++++++++++++++++++++++++++++++++++++++++----
+ src/node_crypto.h | 16 ++++
+ src/tls_wrap.cc | 8 ++
+ 5 files changed, 223 insertions(+), 13 deletions(-)
+
+diff --git a/doc/api/tls.md b/doc/api/tls.md
+index 7feaff2..97ad7a5 100644
+--- a/doc/api/tls.md
++++ b/doc/api/tls.md
+@@ -114,6 +114,12 @@ handshake extensions:
+ * SNI - Allows the use of one TLS server for multiple hostnames with different
+ SSL certificates.
+
++ **NOTE**: dueto a design flaw in node **SNI cannot be
++ used on the server side**, even so all parameters in related functions are
++ accepted for compatibility reasons. And thus the related events will not
++ fire unless one aranges this explicitly. This may change, when the OS
++ provides OpenSSL v1.0.2 or better and node gets linked to this version.
++
+ *Note*: Use of ALPN is recommended over NPN. The NPN extension has never been
+ formally defined or documented and generally not recommended for use.
+
+diff --git a/src/node_constants.cc b/src/node_constants.cc
+index 2e6be8d..239eadb 100644
+--- a/src/node_constants.cc
++++ b/src/node_constants.cc
+@@ -14,7 +14,10 @@
+ #include <sys/stat.h>
+
+ #if HAVE_OPENSSL
++# include <openssl/opensslconf.h>
++# ifndef OPENSSL_NO_EC
+ # include <openssl/ec.h>
++# endif
+ # include <openssl/ssl.h>
+ # ifndef OPENSSL_NO_ENGINE
+ # include <openssl/engine.h>
+@@ -976,12 +979,14 @@ void DefineOpenSSLConstants(Local<Object> target) {
+
+ #if HAVE_OPENSSL
+ // NOTE: These are not defines
++# ifndef OPENSSL_NO_EC
+ NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_COMPRESSED);
+
+ NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_UNCOMPRESSED);
+
+ NODE_DEFINE_CONSTANT(target, POINT_CONVERSION_HYBRID);
+ #endif
++#endif
+ }
+
+ void DefineSystemConstants(Local<Object> target) {
+diff --git a/src/node_crypto.cc b/src/node_crypto.cc
+index 9cf216f..888a0f8 100644
+--- a/src/node_crypto.cc
++++ b/src/node_crypto.cc
+@@ -24,6 +24,82 @@
+ #include <stdlib.h>
+ #include <string.h>
+
++#ifndef SSL_get_server_tmp_key
++/*
++ 1.0.2 SSL_get_server_tmp_key(s, pk) "backport". BAD HACK!!!
++ NOTE: This imports "foreign" knowledge and thus will break, when SESS_CERT
++ or CERT_PKEY change, which is definitely the case for the later for
++ all OpenSSL lib vers != 1.0.1. So don't try to bind to something else!
++ */
++# define SSL_PKEY_NUM 8
++typedef struct cert_pkey_st {
++ X509 *x509;
++ EVP_PKEY *privatekey;
++ /* Digest to use when signing */
++ const EVP_MD *digest;
++} CERT_PKEY;
++
++typedef struct sess_cert_st {
++ STACK_OF(X509) *cert_chain; /* as received from peer (not for SSL2) */
++ /* The 'peer_...' members are used only by clients. */
++ int peer_cert_type;
++ CERT_PKEY *peer_key; /* points to an element of peer_pkeys (never
++ * NULL!) */
++ CERT_PKEY peer_pkeys[SSL_PKEY_NUM];
++ /*
++ * Obviously we don't have the private keys of these, so maybe we
++ * shouldn't even use the CERT_PKEY type here.
++ */
++# ifndef OPENSSL_NO_RSA
++ RSA *peer_rsa_tmp; /* not used for SSL 2 */
++# endif
++# ifndef OPENSSL_NO_DH
++ DH *peer_dh_tmp; /* not used for SSL 2 */
++# endif
++# ifndef OPENSSL_NO_ECDH
++ EC_KEY *peer_ecdh_tmp;
++# endif
++ int references; /* actually always 1 at the moment */
++} SESS_CERT;
++
++static long SSL_get_server_tmp_key(SSL *s, void *parg) {
++ if (s->server || !s->session || !s->session->sess_cert)
++ return 0;
++ else {
++ SESS_CERT *sc;
++ EVP_PKEY *ptmp;
++ int rv = 0;
++ sc = s->session->sess_cert;
++#if !defined(OPENSSL_NO_RSA) && !defined(OPENSSL_NO_DH) && !defined(OPENSSL_NO_EC) && !defined(OPENSSL_NO_ECDH)
++ if (!sc->peer_rsa_tmp && !sc->peer_dh_tmp && !sc->peer_ecdh_tmp)
++ return 0;
++#endif
++ ptmp = EVP_PKEY_new();
++ if (!ptmp)
++ return 0;
++ if (0) ;
++#ifndef OPENSSL_NO_RSA
++ else if (sc->peer_rsa_tmp)
++ rv = EVP_PKEY_set1_RSA(ptmp, sc->peer_rsa_tmp);
++#endif
++#ifndef OPENSSL_NO_DH
++ else if (sc->peer_dh_tmp)
++ rv = EVP_PKEY_set1_DH(ptmp, sc->peer_dh_tmp);
++#endif
++#ifndef OPENSSL_NO_ECDH
++ else if (sc->peer_ecdh_tmp)
++ rv = EVP_PKEY_set1_EC_KEY(ptmp, sc->peer_ecdh_tmp);
++#endif
++ if (rv) {
++ *(EVP_PKEY **)parg = ptmp;
++ return 1;
++ }
++ EVP_PKEY_free(ptmp);
++ return 0;
++ }
++}
++#endif /* SSL_get_server_tmp_key */
++
+ #define THROW_AND_RETURN_IF_NOT_STRING_OR_BUFFER(val, prefix) \
+ do { \
+ if (!Buffer::HasInstance(val) && !val->IsString()) { \
+@@ -160,7 +236,11 @@ template int SSLWrap<TLSWrap>::TLSExtStatusCallback(SSL* s, void* arg);
+ #endif
+
+ template void SSLWrap<TLSWrap>::DestroySSL();
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+ template int SSLWrap<TLSWrap>::SSLCertCallback(SSL* s, void* arg);
++#else
++template int SSLWrap<TLSWrap>::SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey);
++#endif
+ template void SSLWrap<TLSWrap>::WaitForCertCb(CertCb cb, void* arg);
+
+ #ifdef TLSEXT_TYPE_application_layer_protocol_negotiation
+@@ -280,8 +360,12 @@ void SecureContext::Initialize(Environment* env, Local<Object> target) {
+ env->SetProtoMethod(t, "addCRL", SecureContext::AddCRL);
+ env->SetProtoMethod(t, "addRootCerts", SecureContext::AddRootCerts);
+ env->SetProtoMethod(t, "setCiphers", SecureContext::SetCiphers);
++#ifndef OPENSSL_NO_ECDH
+ env->SetProtoMethod(t, "setECDHCurve", SecureContext::SetECDHCurve);
++#endif
++#ifndef OPENSSL_NO_DH
+ env->SetProtoMethod(t, "setDHParam", SecureContext::SetDHParam);
++#endif
+ env->SetProtoMethod(t, "setOptions", SecureContext::SetOptions);
+ env->SetProtoMethod(t, "setSessionIdContext",
+ SecureContext::SetSessionIdContext);
+@@ -515,8 +599,20 @@ int SSL_CTX_use_certificate_chain(SSL_CTX* ctx,
+ for (int i = 0; i < sk_X509_num(extra_certs); i++) {
+ X509* ca = sk_X509_value(extra_certs, i);
+
+- // NOTE: Increments reference count on `ca`
+- r = SSL_CTX_add1_chain_cert(ctx, ca);
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++ // If ctx->cert->key != NULL create ctx->cert->key->chain if not
++ // already there, push 'ca' to this chain and finally increment the ca
++ // reference count by 1 (this is the diff between *_add1_* and *_add0_*
++ // - the later increments by 0 ;-)) and return 1. Otherwise or if
++ // something fails in between, return 0.
++ r = SSL_CTX_add1_chain_cert(ctx, ca);
++#else
++ // Create ctx->extra_certs if not already there, just push 'ca' to this
++ // chain and return 1. If something fails, return 0.
++ // NOTE: 1.0.1- does not support multiple certs having its own chain in
++ // a single context. There is just one: extra_chain!
++ r = SSL_CTX_add_extra_chain_cert(ctx, ca);
++#endif
+
+ if (!r) {
+ ret = 0;
+@@ -795,6 +891,7 @@ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+ }
+
+
++#ifndef OPENSSL_NO_ECDH
+ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
+ SecureContext* sc;
+ ASSIGN_OR_RETURN_UNWRAP(&sc, args.Holder());
+@@ -822,8 +919,10 @@ void SecureContext::SetECDHCurve(const FunctionCallbackInfo<Value>& args) {
+
+ EC_KEY_free(ecdh);
+ }
++#endif
+
+
++#ifndef OPENSSL_NO_DH
+ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
+ SecureContext* sc;
+ ASSIGN_OR_RETURN_UNWRAP(&sc, args.This());
+@@ -862,6 +961,7 @@ void SecureContext::SetDHParam(const FunctionCallbackInfo<Value>& args) {
+ if (!r)
+ return env->ThrowTypeError("Error setting temp DH parameter");
+ }
++#endif
+
+
+ void SecureContext::SetOptions(const FunctionCallbackInfo<Value>& args) {
+@@ -1872,6 +1972,7 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+ info->Set(env->size_string(),
+ Integer::New(env->isolate(), EVP_PKEY_bits(key)));
+ break;
++#ifndef OPENSSL_NO_ECDH
+ case EVP_PKEY_EC:
+ {
+ EC_KEY* ec = EVP_PKEY_get1_EC_KEY(key);
+@@ -1884,6 +1985,7 @@ void SSLWrap<Base>::GetEphemeralKeyInfo(
+ info->Set(env->size_string(),
+ Integer::New(env->isolate(), EVP_PKEY_bits(key)));
+ }
++#endif
+ }
+ EVP_PKEY_free(key);
+ }
+@@ -2301,7 +2403,12 @@ void SSLWrap<Base>::WaitForCertCb(CertCb cb, void* arg) {
+
+
+ template <class Base>
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+ int SSLWrap<Base>::SSLCertCallback(SSL* s, void* arg) {
++#else
++/* NOTE: For now this callback gets usually never called dueto design flaws */
++int SSLWrap<Base>::SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey) {
++#endif
+ Base* w = static_cast<Base*>(SSL_get_app_data(s));
+
+ if (!w->is_server())
+@@ -2375,19 +2482,53 @@ void SSLWrap<Base>::CertCbDone(const FunctionCallbackInfo<Value>& args) {
+ w->sni_context_.Reset(env->isolate(), ctx);
+
+ int rv;
++ X509* x509;
++ EVP_PKEY* pkey;
++ STACK_OF(X509)* chain;
+
+ // NOTE: reference count is not increased by this API methods
+- X509* x509 = SSL_CTX_get0_certificate(sc->ctx_);
+- EVP_PKEY* pkey = SSL_CTX_get0_privatekey(sc->ctx_);
+- STACK_OF(X509)* chain;
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++ x509 = SSL_CTX_get0_certificate(sc->ctx_);
++ pkey = SSL_CTX_get0_privatekey(sc->ctx_);
++ rv = SSL_CTX_get0_chain_certs(sc->ctx_, &chain);
++#else
++ SSL *ssl = SSL_new(sc->ctx_);
++ rv = SSL_CTX_get_extra_chain_certs(sc->ctx_, &chain);
++ if (ssl) {
++ SSL_set_connect_state(ssl); /* just cleanup/reset state - cheap */
++ x509 = SSL_get_certificate(ssl);
++ SSL_free(ssl);
++ } else {
++ x509 = NULL;
++ pkey = NULL;
++ }
++#endif
+
+- rv = SSL_CTX_get0_chain_certs(sc->ctx_, &chain);
+- if (rv)
+- rv = SSL_use_certificate(w->ssl_, x509);
+- if (rv)
+- rv = SSL_use_PrivateKey(w->ssl_, pkey);
+- if (rv && chain != nullptr)
+- rv = SSL_set1_chain(w->ssl_, chain);
++ if (rv)
++ rv = SSL_use_certificate(w->ssl_, x509);
++ if (rv)
++ rv = SSL_use_PrivateKey(w->ssl_, pkey);
++ if (rv && chain != nullptr) {
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
++ // replaces w->ssl_->cert->key->chain with a copy of the given chain,
++ // which is allowed to be NULL
++ rv = SSL_set1_chain(w->ssl_, chain);
++#else
++ // just replace the extra chain with the given chain - 1.0.1- does not
++ // support chain per cert
++ SSL_CTX_clear_extra_chain_certs(w->ssl_->ctx);
++ if (chain != NULL) {
++ int i;
++ SSL_CTX* ctx = w->ssl_->ctx;
++ for (i = 0; i < sk_X509_num(chain); i++) {
++ // can't do anything: however others might be ok and still
++ // satisfy requirements
++ SSL_CTX_add_extra_chain_cert(ctx, sk_X509_value(chain,i));
++ }
++ }
++ rv = 1;
++#endif
++ }
+ if (rv)
+ rv = w->SetCACerts(sc);
+ if (!rv) {
+@@ -2451,10 +2592,14 @@ void SSLWrap<Base>::SetSNIContext(SecureContext* sc) {
+
+ template <class Base>
+ int SSLWrap<Base>::SetCACerts(SecureContext* sc) {
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+ int err = SSL_set1_verify_cert_store(ssl_, SSL_CTX_get_cert_store(sc->ctx_));
+ if (err != 1)
+ return err;
+-
++#else
++ // there is no ssl_->cert->verify_store in <= 1.0.1. So no need to: free the
++ // old store, set the new one to it and increment its ref count.
++#endif
+ STACK_OF(X509_NAME)* list = SSL_dup_CA_list(
+ SSL_CTX_get_client_CA_list(sc->ctx_));
+
+@@ -2732,7 +2877,11 @@ inline int VerifyCallback(int preverify_ok, X509_STORE_CTX* ctx) {
+ SSL* ssl = static_cast<SSL*>(
+ X509_STORE_CTX_get_ex_data(ctx, SSL_get_ex_data_X509_STORE_CTX_idx()));
+
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+ if (SSL_is_server(ssl))
++#else
++ if (ssl->server)
++#endif
+ return 1;
+
+ // Client needs to check if the server cert is listed in the
+@@ -2815,7 +2964,21 @@ void Connection::New(const FunctionCallbackInfo<Value>& args) {
+
+ InitNPN(sc);
+
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+ SSL_set_cert_cb(conn->ssl_, SSLWrap<Connection>::SSLCertCallback, conn);
++#else
++ /* 1.0.1 and less have no general cert callback. The closest for a client is
++ SSL_CTX_set_client_cert_cb(conn->ssl_->ctx, SSLWrap<Connection>::SSLCertCallback);
++ but on the client it is not needed/used by this implementation. Since this
++ the SSLCertCallback actually calls lib/_tls_wrap.js:oncertcb(), which in
++ turn loadSNI() and this the actual SNICallback of the JSON object, sets
++ the context and finally requestOCSP() and certCbDone(). Not sure, why
++ the SNICallback of the JSON object, doesn't get invoked via
++ SelectSNIContextCallback_() - design flaw because lets do 2 things at once
++ (i.e. do SNICallback and attach the certs ca chain), however, this means
++ no server side support for the SNI TLS/OCSP_state extension anymore.
++ */
++#endif
+
+ #ifdef SSL_CTRL_SET_TLSEXT_SERVERNAME_CB
+ if (is_server) {
+@@ -4404,6 +4567,7 @@ void PublicKeyCipher::Cipher(const FunctionCallbackInfo<Value>& args) {
+ }
+
+
++#ifndef OPENSSL_NO_DH
+ void DiffieHellman::Initialize(Environment* env, Local<Object> target) {
+ Local<FunctionTemplate> t = env->NewFunctionTemplate(New);
+
+@@ -4805,8 +4969,10 @@ bool DiffieHellman::VerifyContext() {
+ verifyError_ = codes;
+ return true;
+ }
++#endif
+
+
++#ifndef OPENSSL_NO_ECDH
+ void ECDH::Initialize(Environment* env, Local<Object> target) {
+ HandleScope scope(env->isolate());
+
+@@ -5034,6 +5200,7 @@ void ECDH::SetPrivateKey(const FunctionCallbackInfo<Value>& args) {
+
+ EC_POINT_free(pub);
+ }
++#endif
+
+
+ void ECDH::SetPublicKey(const FunctionCallbackInfo<Value>& args) {
+@@ -5587,6 +5754,7 @@ void GetHashes(const FunctionCallbackInfo<Value>& args) {
+ }
+
+
++# ifndef OPENSSL_NO_EC
+ void GetCurves(const FunctionCallbackInfo<Value>& args) {
+ Environment* env = Environment::GetCurrent(args);
+ const size_t num_curves = EC_get_builtin_curves(nullptr, 0);
+@@ -5611,6 +5779,7 @@ void GetCurves(const FunctionCallbackInfo<Value>& args) {
+
+ args.GetReturnValue().Set(arr);
+ }
++#endif
+
+
+ bool VerifySpkac(const char* data, unsigned int len) {
+@@ -5886,8 +6055,12 @@ void InitCrypto(Local<Object> target,
+ SecureContext::Initialize(env, target);
+ Connection::Initialize(env, target);
+ CipherBase::Initialize(env, target);
++# ifndef OPENSSL_NO_EC
+ DiffieHellman::Initialize(env, target);
++#endif
++#ifndef OPENSSL_NO_ECDH
+ ECDH::Initialize(env, target);
++#endif
+ Hmac::Initialize(env, target);
+ Hash::Initialize(env, target);
+ Sign::Initialize(env, target);
+@@ -5906,7 +6079,9 @@ void InitCrypto(Local<Object> target,
+ env->SetMethod(target, "getSSLCiphers", GetSSLCiphers);
+ env->SetMethod(target, "getCiphers", GetCiphers);
+ env->SetMethod(target, "getHashes", GetHashes);
++# ifndef OPENSSL_NO_EC
+ env->SetMethod(target, "getCurves", GetCurves);
++#endif
+ env->SetMethod(target, "publicEncrypt",
+ PublicKeyCipher::Cipher<PublicKeyCipher::kPublic,
+ EVP_PKEY_encrypt_init,
+diff --git a/src/node_crypto.h b/src/node_crypto.h
+index 24ac773..2b1b6ae 100644
+--- a/src/node_crypto.h
++++ b/src/node_crypto.h
+@@ -18,8 +18,12 @@
+ #include "v8.h"
+
+ #include <openssl/ssl.h>
++# ifndef OPENSSL_NO_EC
+ #include <openssl/ec.h>
++# endif
++# ifndef OPENSSL_NO_ECDH
+ #include <openssl/ecdh.h>
++# endif
+ #ifndef OPENSSL_NO_ENGINE
+ # include <openssl/engine.h>
+ #endif // !OPENSSL_NO_ENGINE
+@@ -101,8 +105,12 @@ class SecureContext : public BaseObject {
+ static void AddCRL(const v8::FunctionCallbackInfo
v8::Value& args);
+ static void AddRootCerts(const v8::FunctionCallbackInfo
v8::Value& args);
+ static void SetCiphers(const v8::FunctionCallbackInfo
v8::Value& args);
++#ifndef OPENSSL_NO_ECDH
+ static void SetECDHCurve(const v8::FunctionCallbackInfo
v8::Value& args);
++#endif
++# ifndef OPENSSL_NO_DH
+ static void SetDHParam(const v8::FunctionCallbackInfo
v8::Value& args);
++#endif
+ static void SetOptions(const v8::FunctionCallbackInfo
v8::Value& args);
+ static void SetSessionIdContext(
+ const v8::FunctionCallbackInfo
v8::Value& args);
+@@ -283,7 +291,11 @@ class SSLWrap {
+ unsigned int inlen,
+ void* arg);
+ static int TLSExtStatusCallback(SSL* s, void* arg);
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+ static int SSLCertCallback(SSL* s, void* arg);
++#else
++ static int SSLCertCallback(SSL* s, X509 **x509, EVP_PKEY **pkey);
++#endif
+ static void SSLGetter(v8::Local
v8::String property,
+ const v8::PropertyCallbackInfo
v8::Value& info);
+
+@@ -645,6 +657,7 @@ class PublicKeyCipher {
+ static void Cipher(const v8::FunctionCallbackInfo
v8::Value& args);
+ };
+
++#ifndef OPENSSL_NO_DH
+ class DiffieHellman : public BaseObject {
+ public:
+ ~DiffieHellman() override {
+@@ -690,7 +703,9 @@ class DiffieHellman : public BaseObject {
+ int verifyError_;
+ DH* dh;
+ };
++#endif
+
++# ifndef OPENSSL_NO_ECDH
+ class ECDH : public BaseObject {
+ public:
+ ~ECDH() override {
+@@ -727,6 +742,7 @@ class ECDH : public BaseObject {
+ EC_KEY* key_;
+ const EC_GROUP* group_;
+ };
++#endif
+
+ bool EntropySource(unsigned char* buffer, size_t length);
+ #ifndef OPENSSL_NO_ENGINE
+diff --git a/src/tls_wrap.cc b/src/tls_wrap.cc
+index 7c5df11..3e06621 100644
+--- a/src/tls_wrap.cc
++++ b/src/tls_wrap.cc
+@@ -142,7 +142,15 @@ void TLSWrap::InitSSL() {
+
+ InitNPN(sc_);
+
++#if OPENSSL_VERSION_NUMBER >= 0x10002000L
+ SSL_set_cert_cb(ssl_, SSLWrap<TLSWrap>::SSLCertCallback, this);
++#else
++ /* 1.0.1 and less have at most for the client side the function
++ SSL_CTX_set_client_cert_cb(ssl_->ctx, SSLWrap<TLSWrap>::SSLCertCallback);
++ but on the client it is not needed/used by this implementation.
++ For more info see comments in src/node_crypto.cc Connection::New().
++ */
++#endif
+
+ if (is_server()) {
+ SSL_set_accept_state(ssl_);
+--
+2.9.0
+
diff --git a/nodejs-use-system-certs.patch b/0003-CA-Certificates-are-provided-by-Fedora.patch
similarity index 62%
rename from nodejs-use-system-certs.patch
rename to 0003-CA-Certificates-are-provided-by-Fedora.patch
index 68ca37b..1c82a0f 100644
--- a/nodejs-use-system-certs.patch
+++ b/0003-CA-Certificates-are-provided-by-Fedora.patch
@@ -1,15 +1,13 @@
-From e51cf2ad2627af02e88df48287fe510e885ba1dc Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher
sgallagh@redhat.com
-Date: Tue, 1 Dec 2015 16:29:07 -0500
-Subject: [PATCH 2/2] Do not bundle CA Certificates
+From 08305ba6b7fddab1f35c59dc82a3c6b11ceceae3 Mon Sep 17 00:00:00 2001
+From: Haikel Guemar
hguemar@fedoraproject.org
+Date: Tue, 26 Jul 2016 22:00:25 +0200
+Subject: [PATCH 3/3] CA Certificates are provided by Fedora.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
-CA Certificates are provided by Fedora.
-
Forwarded: need some feedback before submitting the matter upstream
-Author: J?r?my Lal
kapouer@melix.org
+Author: Jérémy Lal
kapouer@melix.org
Last-Update: 2014-03-02
Modified 2014-05-02 by T.C. Hollingsworth
tchollingsworth@gmail.com with the
@@ -19,26 +17,30 @@ Modified 2015-12-01 by Stephen Gallagher
sgallagh@redhat.com to update for
Node.js 4.2
Modified 2016-03-04 by Stephen Gallagher
sgallagh@redhat.com to update for
-Node.js 5.7.1
-
-Modified 2016-04-25 by Joseph Wang
joequant@gmail.com to update for
-Node.js 5.11.0
+Node.js 5.4.1
-Modified 2016-07-10 by Zuzana Svetlikova
zsvetlik@redhat.com to update for
-Node.js 6.3.0
+Modified 2016-07-26 by Haikel Guemar
hguemar@fedoraproject.org to update for
+Node.js 4.4.7
+---
+ src/node_crypto.cc | 30 +++++++++---------------------
+ 1 file changed, 9 insertions(+), 21 deletions(-)
---- node/src/node_crypto.cc 2016-07-10 19:03:17.184502913 +0200
-+++ node_crypto.cc 2016-07-10 18:56:28.956440528 +0200
-@@ -118,7 +118,7 @@
+diff --git a/src/node_crypto.cc b/src/node_crypto.cc
+index 888a0f8..3feff0e 100644
+--- a/src/node_crypto.cc
++++ b/src/node_crypto.cc
+@@ -192,8 +192,8 @@ static X509_NAME *cnnic_ev_name =
+
static Mutex* mutexes;
- const char* const root_certs[] = {
+-const char* const root_certs[] = {
-#include "node_root_certs.h" // NOLINT(build/include_order)
-+ NULL
++const char* root_certs[] = {
++ NULL
};
X509_STORE* root_cert_store;
-@@ -752,29 +752,17 @@
+@@ -847,29 +847,17 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
CHECK_EQ(sc->ca_store_, nullptr);
if (!root_cert_store) {
@@ -67,7 +69,7 @@ Node.js 6.3.0
+ root_cert_store = X509_STORE_new();
}
+ } else {
-+ SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
++ SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
}
sc->ca_store_ = root_cert_store;
@@ -75,3 +77,6 @@ Node.js 6.3.0
}
+--
+2.9.0
+
diff --git a/nodejs-fix-nodegyp.patch b/nodejs-fix-nodegyp.patch
deleted file mode 100644
index 3289565..0000000
--- a/nodejs-fix-nodegyp.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- node/node.gyp 2016-07-11 16:30:06.367883998 +0200
-+++ node.gyp 2016-07-11 16:35:38.803059930 +0200
-@@ -831,9 +831,7 @@
- 'conditions': [
- ['v8_inspector=="true"', {
- 'dependencies': [
-- 'deps/openssl/openssl.gyp:openssl',
- 'deps/http_parser/http_parser.gyp:http_parser',
-- 'deps/uv/uv.gyp:libuv'
- ],
- 'sources': [
- 'src/inspector_socket.cc',
diff --git a/nodejs.spec b/nodejs.spec
index 4ad2912..ab15908 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,7 @@
%global with_debug 1
+%{?!_pkgdocdir:%global _pkgdocdir %{_docdir}/%{name}-%{version}}
+
# ARM builds currently break on the Debug builds, so we'll just
# build the standard runtime until that gets sorted out.
%ifarch %{arm} aarch64 %{power64}
@@ -63,7 +65,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 103%{?dist}
+Release: 104%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -83,17 +85,15 @@ Source100: %{name}-tarball.sh
Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
-Patch1: nodejs-disable-gyp-deps.patch
+Patch1: 0001-disable-running-gyp-files-for-bundled-deps.patch
+
+# EPEL only has OpenSSL 1.0.1, so we need to carry a patch on that platform
+Patch2: 0002-Use-openssl-1.0.1.patch
# use system certificates instead of the bundled ones
# modified version of Debian patch:
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
-Patch2: nodejs-use-system-certs.patch
-
-# build fails at configure when we build node v6.3.0 with shared libraries,
-# so we need to patch node.gyp too
-# this patch might be redundant in another release, since it seems to work with current upstream master
-#Patch3: nodejs-fix-nodegyp.patch
+Patch3: 0003-CA-Certificates-are-provided-by-Fedora.patch
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
@@ -102,8 +102,12 @@ BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
-# Node.js requires some features from openssl 1.0.1 for SPDY support
+
+%if 0%{?epel}
+BuildRequires: openssl-devel >= 1:1.0.1
+%else
BuildRequires: openssl-devel >= 1:1.0.2
+%endif
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -113,6 +117,7 @@ Requires: ca-certificates
Provides: nodejs(abi) = %{nodejs_abi}
Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
Provides: nodejs(v8-abi) = %{v8_abi}
+Provides: nodejs(v8-abi%{v8_major}) = %{v8_abi}
#this corresponds to the "engine" requirement in package.json
Provides: nodejs(engine) = %{nodejs_version}
@@ -152,8 +157,13 @@ Provides: bundled(v8) = %{v8_version}
Provides: bundled(http-parser) = %{http_parser_version}
# Make sure we keep NPM up to date when we update Node.js
-Recommends: npm = %{npm_epoch}:%{npm_version}
-Conflicts: npm < %{npm_epoch}:%{npm_version}
+%if 0%{?epel}
+# EPEL doesn't support Recommends, so make it strict
+Requires: npm = %{npm_epoch}:%{npm_version}-%{release}
+%else
+Recommends: npm = %{npm_epoch}:%{npm_version}-%{release}
+Conflicts: npm < %{npm_epoch}:%{npm_version}-%{release}
+%endif
%description
@@ -219,10 +229,13 @@ rm -rf deps/uv \
deps/zlib
# remove bundled CA certificates
-%patch2 -p1
rm -f src/node_root_certs.h
+%patch3 -p1
+
+%if 0%{?epel}
+%patch2 -p1
+%endif
-#%patch3 -p1
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -271,7 +284,7 @@ install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native
cat << EOF > %{buildroot}%{_rpmconfigdir}/nodejs_native.req
#!/bin/sh
echo 'nodejs(abi%{nodejs_major}) >= %nodejs_abi'
-echo 'nodejs(v8-abi) = %v8_abi'
+echo 'nodejs(v8-abi%{v8_major}) >= %v8_abi'
EOF
chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
@@ -372,6 +385,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Sep 12 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.5.0-104
+- Add support for building on EPEL 7 against OpenSSL 1.0.1
+- Modify v8_abi autorequires to avoid unnecessary rebuilds
+
* Mon Aug 29 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.5.0-103
- Update to 6.5.0
commit 74b97c6ec143919db0031a8d30f543f21b9a6f0c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Sep 9 08:16:32 2016 -0400
Revert "Prepare for EPEL 7 uplift"
This reverts commit b9ddd6c483c9033f2c2c898a7ba89a2fa0521a1c.
This was pushed accidentally
diff --git a/0001-Use-Fedora-OpenSSL-build-flags.patch b/0001-Use-Fedora-OpenSSL-build-flags.patch
deleted file mode 100644
index 61e9740..0000000
--- a/0001-Use-Fedora-OpenSSL-build-flags.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-From 6ecf32b36eab498da24a5e23d08713e19ab341a5 Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher
sgallagh@redhat.com
-Date: Thu, 8 Sep 2016 12:54:20 -0400
-Subject: [PATCH] Use Fedora OpenSSL build flags
-
----
- deps/openssl/config/Makefile | 5 ++++-
- deps/openssl/openssl.gypi | 9 ++++++---
- 2 files changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/deps/openssl/config/Makefile b/deps/openssl/config/Makefile
-index c8155b16d8dcfbc7ade7cd463248236d989b0599..7a319fd13b06b0520b3e118691381f27fdccf1a0 100644
---- a/deps/openssl/config/Makefile
-+++ b/deps/openssl/config/Makefile
-@@ -1,8 +1,11 @@
- PERL = perl
- CONFIGURE = ./Configure
--COPT = no-shared no-symlinks
-+COPT = no-shared no-symlinks \
-+ zlib sctp enable-camellia enable-seed enable-tlsext enable-rfc3779 \
-+ enable-cms enable-md2 enable-rc5 \
-+ no-mdc2 no-ec2m no-gost no-srp
-
- ARCHS = aix-gcc aix64-gcc BSD-x86 BSD-x86_64 VC-WIN32 \
- VC-WIN64A darwin64-x86_64-cc darwin-i386-cc linux-aarch64 \
- linux-armv4 linux-elf linux-x32 linux-x86_64 linux-ppc \
- linux-ppc64 linux32-s390x linux64-s390x solaris-x86-gcc \
-diff --git a/deps/openssl/openssl.gypi b/deps/openssl/openssl.gypi
-index 3620e45c41074647ef54f040a539c0d1c4f9b7d9..549e87348fb8c929f80ffd651df1bf6591b071d2 100644
---- a/deps/openssl/openssl.gypi
-+++ b/deps/openssl/openssl.gypi
-@@ -383,11 +383,10 @@
- 'openssl/crypto/evp/m_dss1.c',
- 'openssl/crypto/evp/m_ecdsa.c',
- 'openssl/crypto/evp/m_md2.c',
- 'openssl/crypto/evp/m_md4.c',
- 'openssl/crypto/evp/m_md5.c',
-- 'openssl/crypto/evp/m_mdc2.c',
- 'openssl/crypto/evp/m_null.c',
- 'openssl/crypto/evp/m_ripemd.c',
- 'openssl/crypto/evp/m_sha.c',
- 'openssl/crypto/evp/m_sha1.c',
- 'openssl/crypto/evp/m_sigver.c',
-@@ -420,12 +419,10 @@
- 'openssl/crypto/lhash/lhash.c',
- 'openssl/crypto/md4/md4_dgst.c',
- 'openssl/crypto/md4/md4_one.c',
- 'openssl/crypto/md5/md5_dgst.c',
- 'openssl/crypto/md5/md5_one.c',
-- 'openssl/crypto/mdc2/mdc2_one.c',
-- 'openssl/crypto/mdc2/mdc2dgst.c',
- 'openssl/crypto/mem.c',
- 'openssl/crypto/mem_dbg.c',
- 'openssl/crypto/modes/cbc128.c',
- 'openssl/crypto/modes/ccm128.c',
- 'openssl/crypto/modes/cfb128.c',
-@@ -1261,10 +1258,16 @@
- # Heartbeat is a TLS extension, that couldn't be turned off or
- # asked to be not advertised. Unfortunately this is unacceptable for
- # Microsoft's IIS, which seems to be ignoring whole ClientHello after
- # seeing this extension.
- 'OPENSSL_NO_HEARTBEATS',
-+
-+ # Taken from Fedora package:
-+ 'OPENSSL_NO_SRP',
-+ 'OPENSSL_NO_GOST',
-+ 'OPENSSL_NO_MDC2',
-+ 'OPENSSL_NO_EC2M',
- ],
- 'openssl_default_defines_win': [
- 'MK1MF_BUILD',
- 'WIN32_LEAN_AND_MEAN',
- 'OPENSSL_SYSNAME_WIN32',
---
-2.7.4
-
diff --git a/nodejs-openssl-fix-no-srp.patch b/nodejs-openssl-fix-no-srp.patch
deleted file mode 100644
index 50f1227..0000000
--- a/nodejs-openssl-fix-no-srp.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 249270c8047486892b64a169ff16567b506ec1cb Mon Sep 17 00:00:00 2001
-From: Richard Levitte
levitte@openssl.org
-Date: Fri, 22 Jul 2016 21:48:05 +0200
-Subject: [PATCH] Correct misspelt OPENSSL_NO_SRP
-
-RT#4619
----
- ssl/statem/statem_clnt.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c
-index b0f508c..5fb0080 100644
---- a/ssl/statem/statem_clnt.c
-+++ b/ssl/statem/statem_clnt.c
-@@ -2451,7 +2451,7 @@ static int tls_construct_cke_gost(SSL *s, unsigned char **p, int *len, int *al)
-
- static int tls_construct_cke_srp(SSL *s, unsigned char **p, int *len, int *al)
- {
--#ifndef OPENSSL_NO_SRT
-+#ifndef OPENSSL_NO_SRP
- if (s->srp_ctx.A != NULL) {
- /* send off the data */
- *len = BN_num_bytes(s->srp_ctx.A);
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index 947f7d6..e7e9613 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -1,35 +1,7 @@
#!/bin/sh
-SCRIPTROOT=$(pwd)
-version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
-
-if [ ! -e node-v${version}.tar.gz ]; then
- wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
-fi
+version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
+wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
tar -zxf node-v${version}.tar.gz
-rm -rf node-v${version}/deps/openssl/openssl
-
-rm -rf openssl
-fedpkg clone -a openssl
-pushd openssl
-fedpkg prep
-openssl_version=$(rpm -q --specfile --qf='%{version}\n' openssl.spec | head -n1)
-
-pushd openssl-${openssl_version}
-git init
-git add .
-git commit -m "Initial commit" --no-gpg-sign
-./config
-pushd include/openssl
-#../../../../copy_symlink.sh *.h
-popd # include/openssl
-
-git add include/ crypto/opensslconf.h
-git commit -m "Include headers" --no-gpg-sign
-git clean -f
-popd # openssl-${openssl_version}
-
-popd # openssl
-mv openssl/openssl-${openssl_version} node-v${version}/deps/openssl/openssl
-
-tar -zcf node-v${version}-hobbled.tar.gz node-v${version}
+rm -rf node-v${version}/deps/openssl
+tar -zcf node-v${version}-stripped.tar.gz node-v${version}
diff --git a/nodejs.spec b/nodejs.spec
index b2f68a9..4ad2912 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -63,9 +63,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-# Always increase this release, never reset it to 1 until and unless we
-# bump epoch again
-Release: 103%{?dist}.8
+Release: 103%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -74,9 +72,9 @@ URL:
http://nodejs.org/
ExclusiveArch: %{nodejs_arches}
# nodejs bundles openssl, but we use the system version in Fedora
-# because openssl contains prohibited code, we replace the bundled copy in the
-# tarball with the current latest Fedora version, using the script in Source100
-Source0: node-v%{nodejs_version}-hobbled.tar.gz
+# because openssl contains prohibited code, we remove openssl completely from
+# the tarball, using the script in Source100
+Source0: node-v%{nodejs_version}-stripped.tar.gz
Source100: %{name}-tarball.sh
# The native module Requires generator remains in the nodejs SRPM, so it knows
@@ -92,9 +90,6 @@ Patch1: nodejs-disable-gyp-deps.patch
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch2: nodejs-use-system-certs.patch
-# When building against the bundled OpenSSL, use the same flags as Fedora would
-Patch3: 0001-Use-Fedora-OpenSSL-build-flags.patch
-
# build fails at configure when we build node v6.3.0 with shared libraries,
# so we need to patch node.gyp too
# this patch might be redundant in another release, since it seems to work with current upstream master
@@ -107,14 +102,8 @@ BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
-
-%if 0%{?fedora}
-# Node.js requires some features from openssl 1.0.2
+# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.2
-%else
-# EPEL currently builds with the OpenSSL pulled from Fedora and
-# copied into the buildroot
-%endif
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -163,21 +152,10 @@ Provides: bundled(v8) = %{v8_version}
Provides: bundled(http-parser) = %{http_parser_version}
# Make sure we keep NPM up to date when we update Node.js
-%if 0%{?rhel}
-Requires: npm = %{npm_epoch}:%{npm_version}
-%else
Recommends: npm = %{npm_epoch}:%{npm_version}
-%endif
-
Conflicts: npm < %{npm_epoch}:%{npm_version}
-# On EPEL, we don't yet have a sufficiently-new version of OpenSSL, so
-# we have to carry it bundled
-%if 0%{?rhel}
-Provides: bundled(openssl) = 1.0.2h
-%endif
-
%description
Node.js is a platform built on Chrome's JavaScript runtime
for easily building fast, scalable network applications.
@@ -240,23 +218,11 @@ The API documentation for the Node.js JavaScript runtime.
rm -rf deps/uv \
deps/zlib
-%if 0%{?rhel}
-# On RHEL, we need to build the bundled (hobbled) OpenSSL
-pushd deps/openssl/openssl
-#./config
-popd
-%else
-# On Fedora, we link with the system version, so completely
-# delete the bundled openssl to be certain it doesn't get used.
-rm -rf deps/openssl
-%global CONFIGURE_OPENSSL --shared-openssl
-%endif
-
# remove bundled CA certificates
%patch2 -p1
rm -f src/node_root_certs.h
-%patch3 -p1
+#%patch3 -p1
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -266,7 +232,7 @@ export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-de
export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
./configure --prefix=%{_prefix} \
- %{?CONFIGURE_OPENSSL} \
+ --shared-openssl \
--shared-zlib \
--shared-libuv \
--without-dtrace \
@@ -406,11 +372,6 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Thu Sep 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.%.0-104
-- Prepare for EPEL 7 uplift
-- Use %%{?epel} tag to maintain a single specfile
-- Don't use weak dependencies in EPEL
-
* Mon Aug 29 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.5.0-103
- Update to 6.5.0
commit b9ddd6c483c9033f2c2c898a7ba89a2fa0521a1c
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Sep 8 08:45:11 2016 -0400
Prepare for EPEL 7 uplift
- Use %{?epel} tag to maintain a single specfile
- Relax openssl requirement to 1.0.1+ for EPEL 7
- Don't use weak dependencies in EPEL
diff --git a/0001-Use-Fedora-OpenSSL-build-flags.patch b/0001-Use-Fedora-OpenSSL-build-flags.patch
new file mode 100644
index 0000000..61e9740
--- /dev/null
+++ b/0001-Use-Fedora-OpenSSL-build-flags.patch
@@ -0,0 +1,76 @@
+From 6ecf32b36eab498da24a5e23d08713e19ab341a5 Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Thu, 8 Sep 2016 12:54:20 -0400
+Subject: [PATCH] Use Fedora OpenSSL build flags
+
+---
+ deps/openssl/config/Makefile | 5 ++++-
+ deps/openssl/openssl.gypi | 9 ++++++---
+ 2 files changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/deps/openssl/config/Makefile b/deps/openssl/config/Makefile
+index c8155b16d8dcfbc7ade7cd463248236d989b0599..7a319fd13b06b0520b3e118691381f27fdccf1a0 100644
+--- a/deps/openssl/config/Makefile
++++ b/deps/openssl/config/Makefile
+@@ -1,8 +1,11 @@
+ PERL = perl
+ CONFIGURE = ./Configure
+-COPT = no-shared no-symlinks
++COPT = no-shared no-symlinks \
++ zlib sctp enable-camellia enable-seed enable-tlsext enable-rfc3779 \
++ enable-cms enable-md2 enable-rc5 \
++ no-mdc2 no-ec2m no-gost no-srp
+
+ ARCHS = aix-gcc aix64-gcc BSD-x86 BSD-x86_64 VC-WIN32 \
+ VC-WIN64A darwin64-x86_64-cc darwin-i386-cc linux-aarch64 \
+ linux-armv4 linux-elf linux-x32 linux-x86_64 linux-ppc \
+ linux-ppc64 linux32-s390x linux64-s390x solaris-x86-gcc \
+diff --git a/deps/openssl/openssl.gypi b/deps/openssl/openssl.gypi
+index 3620e45c41074647ef54f040a539c0d1c4f9b7d9..549e87348fb8c929f80ffd651df1bf6591b071d2 100644
+--- a/deps/openssl/openssl.gypi
++++ b/deps/openssl/openssl.gypi
+@@ -383,11 +383,10 @@
+ 'openssl/crypto/evp/m_dss1.c',
+ 'openssl/crypto/evp/m_ecdsa.c',
+ 'openssl/crypto/evp/m_md2.c',
+ 'openssl/crypto/evp/m_md4.c',
+ 'openssl/crypto/evp/m_md5.c',
+- 'openssl/crypto/evp/m_mdc2.c',
+ 'openssl/crypto/evp/m_null.c',
+ 'openssl/crypto/evp/m_ripemd.c',
+ 'openssl/crypto/evp/m_sha.c',
+ 'openssl/crypto/evp/m_sha1.c',
+ 'openssl/crypto/evp/m_sigver.c',
+@@ -420,12 +419,10 @@
+ 'openssl/crypto/lhash/lhash.c',
+ 'openssl/crypto/md4/md4_dgst.c',
+ 'openssl/crypto/md4/md4_one.c',
+ 'openssl/crypto/md5/md5_dgst.c',
+ 'openssl/crypto/md5/md5_one.c',
+- 'openssl/crypto/mdc2/mdc2_one.c',
+- 'openssl/crypto/mdc2/mdc2dgst.c',
+ 'openssl/crypto/mem.c',
+ 'openssl/crypto/mem_dbg.c',
+ 'openssl/crypto/modes/cbc128.c',
+ 'openssl/crypto/modes/ccm128.c',
+ 'openssl/crypto/modes/cfb128.c',
+@@ -1261,10 +1258,16 @@
+ # Heartbeat is a TLS extension, that couldn't be turned off or
+ # asked to be not advertised. Unfortunately this is unacceptable for
+ # Microsoft's IIS, which seems to be ignoring whole ClientHello after
+ # seeing this extension.
+ 'OPENSSL_NO_HEARTBEATS',
++
++ # Taken from Fedora package:
++ 'OPENSSL_NO_SRP',
++ 'OPENSSL_NO_GOST',
++ 'OPENSSL_NO_MDC2',
++ 'OPENSSL_NO_EC2M',
+ ],
+ 'openssl_default_defines_win': [
+ 'MK1MF_BUILD',
+ 'WIN32_LEAN_AND_MEAN',
+ 'OPENSSL_SYSNAME_WIN32',
+--
+2.7.4
+
diff --git a/nodejs-openssl-fix-no-srp.patch b/nodejs-openssl-fix-no-srp.patch
new file mode 100644
index 0000000..50f1227
--- /dev/null
+++ b/nodejs-openssl-fix-no-srp.patch
@@ -0,0 +1,23 @@
+From 249270c8047486892b64a169ff16567b506ec1cb Mon Sep 17 00:00:00 2001
+From: Richard Levitte
levitte@openssl.org
+Date: Fri, 22 Jul 2016 21:48:05 +0200
+Subject: [PATCH] Correct misspelt OPENSSL_NO_SRP
+
+RT#4619
+---
+ ssl/statem/statem_clnt.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ssl/statem/statem_clnt.c b/ssl/statem/statem_clnt.c
+index b0f508c..5fb0080 100644
+--- a/ssl/statem/statem_clnt.c
++++ b/ssl/statem/statem_clnt.c
+@@ -2451,7 +2451,7 @@ static int tls_construct_cke_gost(SSL *s, unsigned char **p, int *len, int *al)
+
+ static int tls_construct_cke_srp(SSL *s, unsigned char **p, int *len, int *al)
+ {
+-#ifndef OPENSSL_NO_SRT
++#ifndef OPENSSL_NO_SRP
+ if (s->srp_ctx.A != NULL) {
+ /* send off the data */
+ *len = BN_num_bytes(s->srp_ctx.A);
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index e7e9613..947f7d6 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -1,7 +1,35 @@
#!/bin/sh
-
+SCRIPTROOT=$(pwd)
version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
-wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
+
+if [ ! -e node-v${version}.tar.gz ]; then
+ wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
+fi
+
tar -zxf node-v${version}.tar.gz
-rm -rf node-v${version}/deps/openssl
-tar -zcf node-v${version}-stripped.tar.gz node-v${version}
+rm -rf node-v${version}/deps/openssl/openssl
+
+rm -rf openssl
+fedpkg clone -a openssl
+pushd openssl
+fedpkg prep
+openssl_version=$(rpm -q --specfile --qf='%{version}\n' openssl.spec | head -n1)
+
+pushd openssl-${openssl_version}
+git init
+git add .
+git commit -m "Initial commit" --no-gpg-sign
+./config
+pushd include/openssl
+#../../../../copy_symlink.sh *.h
+popd # include/openssl
+
+git add include/ crypto/opensslconf.h
+git commit -m "Include headers" --no-gpg-sign
+git clean -f
+popd # openssl-${openssl_version}
+
+popd # openssl
+mv openssl/openssl-${openssl_version} node-v${version}/deps/openssl/openssl
+
+tar -zcf node-v${version}-hobbled.tar.gz node-v${version}
diff --git a/nodejs.spec b/nodejs.spec
index 4ad2912..b2f68a9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -63,7 +63,9 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 103%{?dist}
+# Always increase this release, never reset it to 1 until and unless we
+# bump epoch again
+Release: 103%{?dist}.8
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -72,9 +74,9 @@ URL:
http://nodejs.org/
ExclusiveArch: %{nodejs_arches}
# nodejs bundles openssl, but we use the system version in Fedora
-# because openssl contains prohibited code, we remove openssl completely from
-# the tarball, using the script in Source100
-Source0: node-v%{nodejs_version}-stripped.tar.gz
+# because openssl contains prohibited code, we replace the bundled copy in the
+# tarball with the current latest Fedora version, using the script in Source100
+Source0: node-v%{nodejs_version}-hobbled.tar.gz
Source100: %{name}-tarball.sh
# The native module Requires generator remains in the nodejs SRPM, so it knows
@@ -90,6 +92,9 @@ Patch1: nodejs-disable-gyp-deps.patch
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch2: nodejs-use-system-certs.patch
+# When building against the bundled OpenSSL, use the same flags as Fedora would
+Patch3: 0001-Use-Fedora-OpenSSL-build-flags.patch
+
# build fails at configure when we build node v6.3.0 with shared libraries,
# so we need to patch node.gyp too
# this patch might be redundant in another release, since it seems to work with current upstream master
@@ -102,8 +107,14 @@ BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
-# Node.js requires some features from openssl 1.0.1 for SPDY support
+
+%if 0%{?fedora}
+# Node.js requires some features from openssl 1.0.2
BuildRequires: openssl-devel >= 1:1.0.2
+%else
+# EPEL currently builds with the OpenSSL pulled from Fedora and
+# copied into the buildroot
+%endif
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -152,10 +163,21 @@ Provides: bundled(v8) = %{v8_version}
Provides: bundled(http-parser) = %{http_parser_version}
# Make sure we keep NPM up to date when we update Node.js
+%if 0%{?rhel}
+Requires: npm = %{npm_epoch}:%{npm_version}
+%else
Recommends: npm = %{npm_epoch}:%{npm_version}
+%endif
+
Conflicts: npm < %{npm_epoch}:%{npm_version}
+# On EPEL, we don't yet have a sufficiently-new version of OpenSSL, so
+# we have to carry it bundled
+%if 0%{?rhel}
+Provides: bundled(openssl) = 1.0.2h
+%endif
+
%description
Node.js is a platform built on Chrome's JavaScript runtime
for easily building fast, scalable network applications.
@@ -218,11 +240,23 @@ The API documentation for the Node.js JavaScript runtime.
rm -rf deps/uv \
deps/zlib
+%if 0%{?rhel}
+# On RHEL, we need to build the bundled (hobbled) OpenSSL
+pushd deps/openssl/openssl
+#./config
+popd
+%else
+# On Fedora, we link with the system version, so completely
+# delete the bundled openssl to be certain it doesn't get used.
+rm -rf deps/openssl
+%global CONFIGURE_OPENSSL --shared-openssl
+%endif
+
# remove bundled CA certificates
%patch2 -p1
rm -f src/node_root_certs.h
-#%patch3 -p1
+%patch3 -p1
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -232,7 +266,7 @@ export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-de
export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
./configure --prefix=%{_prefix} \
- --shared-openssl \
+ %{?CONFIGURE_OPENSSL} \
--shared-zlib \
--shared-libuv \
--without-dtrace \
@@ -372,6 +406,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Sep 08 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.%.0-104
+- Prepare for EPEL 7 uplift
+- Use %%{?epel} tag to maintain a single specfile
+- Don't use weak dependencies in EPEL
+
* Mon Aug 29 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.5.0-103
- Update to 6.5.0
commit 86c043c7a109f17cea5e2e7b3ad56c5535bab73f
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Mon Aug 29 17:14:02 2016 +0200
Update to 6.5.0
diff --git a/nodejs.spec b/nodejs.spec
index 3e53323..4ad2912 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,7 +12,7 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_major 6
-%global nodejs_minor 4
+%global nodejs_minor 5
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -20,9 +20,9 @@
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 5
-%global v8_minor 0
-%global v8_build 71
-%global v8_patch 60
+%global v8_minor 1
+%global v8_build 281
+%global v8_patch 81
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -63,7 +63,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 102%{?dist}
+Release: 103%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -372,6 +372,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Aug 29 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.5.0-103
+- Update to 6.5.0
+
* Mon Aug 22 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-102
- Bump release to 102 to fix broken npm dependency
commit 2b252644fbfb632ae541984cb66b3ecad66373fb
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Mon Aug 29 17:07:57 2016 +0200
Update sources file
diff --git a/.gitignore b/.gitignore
index d4a213c..cec6734 100644
--- a/.gitignore
+++ b/.gitignore
@@ -52,3 +52,4 @@
/node-v6.3.0-stripped.tar.gz
/node-v6.3.1-stripped.tar.gz
/node-v6.4.0-stripped.tar.gz
+/node-v6.5.0-stripped.tar.gz
diff --git a/sources b/sources
index 3991a87..7a5ef30 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-f1a51f14113d15f78c669f2975baec80 node-v6.4.0-stripped.tar.gz
+563d1513c33a047f0b5bb8bd82d8663f node-v6.5.0-stripped.tar.gz
commit 68898f84c9c85a9351d8e654a3ff02cbcbc7bdaa
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Mon Aug 22 12:30:58 2016 +0200
Bump to 102
diff --git a/nodejs.spec b/nodejs.spec
index 9020c94..3e53323 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -63,7 +63,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 101%{?dist}
+Release: 102%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -372,8 +372,8 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
-* Mon Aug 22 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-101
-- Bump release to 101 to fix broken npm dependency
+* Mon Aug 22 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-102
+- Bump release to 102 to fix broken npm dependency
* Thu Aug 18 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-1
- Update to 6.4.0
commit e36e4ee84bffe080ee56f0f8abe36a297fb70f3b
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Mon Aug 22 10:04:44 2016 +0200
Bump Release to 101 to fix broken npm dependency
diff --git a/nodejs.spec b/nodejs.spec
index 0b315da..9020c94 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -63,7 +63,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 1%{?dist}
+Release: 101%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -372,6 +372,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Aug 22 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-101
+- Bump release to 101 to fix broken npm dependency
+
* Thu Aug 18 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-1
- Update to 6.4.0
commit 58fd6a2fd60f7e56bc4af6b7106af00d8e2e7f5e
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Thu Aug 18 13:10:32 2016 +0200
Update to 6.4.0
diff --git a/.gitignore b/.gitignore
index 84de027..d4a213c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -51,3 +51,4 @@
/node-v6.2.2-stripped.tar.gz
/node-v6.3.0-stripped.tar.gz
/node-v6.3.1-stripped.tar.gz
+/node-v6.4.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index dca7ba8..0b315da 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,8 +12,8 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_major 6
-%global nodejs_minor 3
-%global nodejs_patch 1
+%global nodejs_minor 4
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -22,7 +22,7 @@
%global v8_major 5
%global v8_minor 0
%global v8_build 71
-%global v8_patch 57
+%global v8_patch 60
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -41,6 +41,7 @@
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
+# Note: this will be unmerged in v7 or v8
%global punycode_major 2
%global punycode_minor 0
%global punycode_patch 0
@@ -62,7 +63,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 101%{?dist}
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -371,6 +372,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Aug 18 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.4.0-1
+- Update to 6.4.0
+
* Tue Aug 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.1-101
- Build Node.js with internationalization support
diff --git a/sources b/sources
index 4cd663c..3991a87 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-676f94f9f3dcb702071b5057074a3cb8 node-v6.3.1-stripped.tar.gz
+f1a51f14113d15f78c669f2975baec80 node-v6.4.0-stripped.tar.gz
commit 3bb56860534bc65dd9f072ddf093f72bdfd7bbef
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Aug 16 13:49:57 2016 -0400
Build Node.js with internationalization support
diff --git a/nodejs.spec b/nodejs.spec
index 9e8911e..dca7ba8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -62,7 +62,7 @@ Name: nodejs
Epoch: 1
Version: %{nodejs_version}
# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
-Release: 100%{?dist}
+Release: 101%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -97,6 +97,7 @@ Patch2: nodejs-use-system-certs.patch
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
Requires: libuv >= 1:1.9.1
+BuildRequires: libicu-devel
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
@@ -233,7 +234,8 @@ export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-
--shared-openssl \
--shared-zlib \
--shared-libuv \
- --without-dtrace
+ --without-dtrace \
+ --with-intl=system-icu
%if %{?with_debug} == 1
# Setting BUILDTYPE=Debug builds both release and debug binaries
@@ -369,6 +371,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Aug 16 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.1-101
+- Build Node.js with internationalization support
+
* Thu Aug 04 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.1-100
- Split npm into a subpackage
commit d27b8e5edb24518fb5d801f4e4e7edad75325ffb
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Aug 12 17:26:06 2016 +0200
Reminder to unbundle punycode later
diff --git a/nodejs.spec b/nodejs.spec
index 31bec09..9e8911e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -126,6 +126,9 @@ Conflicts: node <= 0.3.2-12
# we don't need the seperate nodejs-punycode package, so we Provide it here so
# dependent packages don't need to override the dependency generator.
# See also: RHBZ#11511811
+# UPDATE: punycode will be deprecated and so we should unbundle it in Node v8
+# and use upstream module instead
+#
https://github.com/nodejs/node/commit/29e49fc286080215031a81effbd59eac092fff...
Provides: nodejs-punycode = %{punycode_version}
Provides: npm(punycode) = %{punycode_version}
commit 95b8d391e867be3581d867003322f41d3ba073ba
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Aug 10 14:10:54 2016 -0400
Remove npm binary from main package
diff --git a/nodejs.spec b/nodejs.spec
index f6c4c6b..31bec09 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -343,7 +343,6 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_prefix}/lib/node_modules/npm
%ghost %{_sysconfdir}/npmrc
%ghost %{_sysconfdir}/npmignore
-%{_bindir}/npm
%{_mandir}/man*/*
commit 4ae4aa6572a9f7e2b4f09f489fb84f8e7330c6bd
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Aug 10 09:08:48 2016 -0400
Split npm into a subpackage
diff --git a/nodejs.spec b/nodejs.spec
index 13703bf..f6c4c6b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -47,6 +47,7 @@
%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
# npm - from deps/npm/package.json
+%global npm_epoch 1
%global npm_major 3
%global npm_minor 10
%global npm_patch 3
@@ -60,7 +61,8 @@
Name: nodejs
Epoch: 1
Version: %{nodejs_version}
-Release: 1%{?dist}
+# Keep this release > 100 for F25+ due to a complicated npm upgrade bug
+Release: 100%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -71,7 +73,7 @@ ExclusiveArch: %{nodejs_arches}
# nodejs bundles openssl, but we use the system version in Fedora
# because openssl contains prohibited code, we remove openssl completely from
# the tarball, using the script in Source100
-Source0: node-v%{version}-stripped.tar.gz
+Source0: node-v%{nodejs_version}-stripped.tar.gz
Source100: %{name}-tarball.sh
# The native module Requires generator remains in the nodejs SRPM, so it knows
@@ -111,7 +113,7 @@ Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
Provides: nodejs(v8-abi) = %{v8_abi}
#this corresponds to the "engine" requirement in package.json
-Provides: nodejs(engine) = %{version}
+Provides: nodejs(engine) = %{nodejs_version}
# Node.js currently has a conflict with the 'node' package in Fedora
# The ham-radio group has agreed to rename their binary for us, but
@@ -144,15 +146,9 @@ Provides: bundled(v8) = %{v8_version}
# do releases often and is almost always far behind the bundled version
Provides: bundled(http-parser) = %{http_parser_version}
-# We used to ship npm separately, but it is so tightly integrated with Node.js
-# (and expected to be present on all Node.js systems) that we ship it bundled
-# now.
-Obsoletes: npm < 0:3.5.4-6
-Provides: npm = %{epoch}:%{npm_version}
-
-# Do not add epoch to the virtual NPM provides or it will break
-# the automatic dependency-generation script.
-Provides: npm(npm) = %{npm_version}
+# Make sure we keep NPM up to date when we update Node.js
+Recommends: npm = %{npm_epoch}:%{npm_version}
+Conflicts: npm < %{npm_epoch}:%{npm_version}
%description
@@ -165,7 +161,7 @@ real-time applications that run across distributed devices.
%package devel
Summary: JavaScript runtime - development headers
Group: Development/Languages
-Requires: %{name}%{?_isa} == %{epoch}:%{version}-%{release}
+Requires: %{name}%{?_isa} = %{epoch}:%{nodejs_version}-%{release}
Requires: libuv-devel%{?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
@@ -174,6 +170,26 @@ Requires: nodejs-packaging
%description devel
Development headers for the Node.js JavaScript runtime.
+%package -n npm
+Summary: Node.js Package Manager
+Epoch: %{npm_epoch}
+Version: %{npm_version}
+
+# We used to ship npm separately, but it is so tightly integrated with Node.js
+# (and expected to be present on all Node.js systems) that we ship it bundled
+# now.
+Obsoletes: npm < 0:3.5.4-6
+Provides: npm = %{npm_epoch}:%{npm_version}
+Requires: nodejs = %{epoch}:%{nodejs_version}-%{release}
+
+# Do not add epoch to the virtual NPM provides or it will break
+# the automatic dependency-generation script.
+Provides: npm(npm) = %{npm_version}
+
+%description -n npm
+npm is a package manager for node.js. You can use it to install and publish
+your node programs. It manages dependencies and does other cool stuff.
+
%package docs
Summary: Node.js API documentation
Group: Documentation
@@ -182,15 +198,15 @@ BuildArch: noarch
# We don't require that the main package be installed to
# use the docs, but if it is installed, make sure the
# version always matches
-Conflicts: %{name} > %{epoch}:%{version}-%{release}
-Conflicts: %{name} < %{epoch}:%{version}-%{release}
+Conflicts: %{name} > %{epoch}:%{nodejs_version}-%{release}
+Conflicts: %{name} < %{epoch}:%{nodejs_version}-%{release}
%description docs
The API documentation for the Node.js JavaScript runtime.
%prep
-%setup -q -n node-v%{version}
+%setup -q -n node-v%{nodejs_version}
# remove bundled dependencies that we aren't building
%patch1 -p1
@@ -205,7 +221,7 @@ rm -f src/node_root_certs.h
%build
# build with debugging symbols and add defines from libuv (#892601)
-# Node's v8 breaks with GCC 8 because of incorrect usage of methods on
+# Node's v8 breaks with GCC 6 because of incorrect usage of methods on
# NULL objects. We need to pass -fno-delete-null-pointer-checks
export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
@@ -339,6 +355,11 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_datadir}/node/common.gypi
%{_pkgdocdir}/gdbinit
+
+%files -n npm
+%{_bindir}/npm
+
+
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
@@ -346,6 +367,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Aug 04 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.1-100
+- Split npm into a subpackage
+
* Mon Jul 25 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.1-1
- Update to 6.3.1
- comment out %%patch3
commit 355661fd73b4fbf899ad82cf28e8b86368867078
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Fri Jun 24 16:02:36 2016 +0200
Update to 0.10.46, bump http-parser
diff --git a/.gitignore b/.gitignore
index 0e8b6d2..cdcc8b5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -33,3 +33,4 @@
/node-v0.10.33-stripped.tar.gz
/node-v0.10.36-stripped.tar.gz
/node-v0.10.42-stripped.tar.gz
+/node-v0.10.46-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 9d10f31..873675f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,7 +12,7 @@
# == Node.js Version ==
%global nodejs_major 0
%global nodejs_minor 10
-%global nodejs_patch 42
+%global nodejs_patch 46
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -34,7 +34,7 @@
# http-parser - from deps/http-parser/http_parser.h
%global http_parser_major 1
-%global http_parser_minor 1
+%global http_parser_minor 2
%global http_parser_version %{http_parser_major}.%{http_parser_minor}
# punycode - from lib/punycode.js
@@ -46,7 +46,7 @@
Name: nodejs
Version: %{nodejs_version}
-Release: 4%{?dist}
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -263,6 +263,11 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Fri Jun 24 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 0.10.46-1
+- Update to 0.10.46(security fix)
+-
https://github.com/nodejs/node/blob/v0.10.46/ChangeLog
+- Bump http-parser version
+
* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.43-4
- Verify that the built node reports the expected versions
- Properly Provides: http-parser
diff --git a/sources b/sources
index 00d25f8..18989dd 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-797349ff0cb1c9316d1800acf3d1394f node-v0.10.42-stripped.tar.gz
+af86e8807e760f348b58acaa9317226b node-v0.10.46-stripped.tar.gz
commit 69cb3cf333da6705dd0061fab459884b38a94ffd
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Mon Jul 25 08:50:06 2016 +0200
Update to 6.3.1
diff --git a/.gitignore b/.gitignore
index 7a5a1b1..84de027 100644
--- a/.gitignore
+++ b/.gitignore
@@ -50,3 +50,4 @@
/node-v6.2.1-stripped.tar.gz
/node-v6.2.2-stripped.tar.gz
/node-v6.3.0-stripped.tar.gz
+/node-v6.3.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 25e8426..13703bf 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -13,7 +13,7 @@
# than a Fedora release lifecycle.
%global nodejs_major 6
%global nodejs_minor 3
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -22,7 +22,7 @@
%global v8_major 5
%global v8_minor 0
%global v8_build 71
-%global v8_patch 52
+%global v8_patch 57
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -60,7 +60,7 @@
Name: nodejs
Epoch: 1
Version: %{nodejs_version}
-Release: 3%{?dist}
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -87,10 +87,10 @@ Patch1: nodejs-disable-gyp-deps.patch
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch2: nodejs-use-system-certs.patch
-# build fails at configure when we build it with shared libraries,
+# build fails at configure when we build node v6.3.0 with shared libraries,
# so we need to patch node.gyp too
# this patch might be redundant in another release, since it seems to work with current upstream master
-Patch3: nodejs-fix-nodegyp.patch
+#Patch3: nodejs-fix-nodegyp.patch
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1:1.9.1
@@ -201,7 +201,7 @@ rm -rf deps/uv \
%patch2 -p1
rm -f src/node_root_certs.h
-%patch3 -p1
+#%patch3 -p1
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -346,6 +346,10 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Jul 25 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.1-1
+- Update to 6.3.1
+- comment out %%patch3
+
* Mon Jul 18 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.0-3
- Fix epoch version dependency on libuv
diff --git a/sources b/sources
index ae332a5..4cd663c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-581470dcb25b5b5a689ddc76055eeabd node-v6.3.0-stripped.tar.gz
+676f94f9f3dcb702071b5057074a3cb8 node-v6.3.1-stripped.tar.gz
commit 128eb9674d3fa65e85dfe27419f9bcc47fb9d726
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Jul 18 16:38:50 2016 -0400
Fix epoch version dependency on libuv
diff --git a/nodejs.spec b/nodejs.spec
index a902dff..25e8426 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -60,7 +60,7 @@
Name: nodejs
Epoch: 1
Version: %{nodejs_version}
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -93,8 +93,8 @@ Patch2: nodejs-use-system-certs.patch
Patch3: nodejs-fix-nodegyp.patch
BuildRequires: python-devel
-BuildRequires: libuv-devel >= 1.9.0
-Requires: libuv >= 1.9.0
+BuildRequires: libuv-devel >= 1:1.9.1
+Requires: libuv >= 1:1.9.1
BuildRequires: zlib-devel
BuildRequires: gcc >= 4.8.0
BuildRequires: gcc-c++ >= 4.8.0
@@ -346,6 +346,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Jul 18 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.3.0-3
+- Fix epoch version dependency on libuv
+
* Tue Jul 12 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.0-2
- Patch node.gyp to fix failing ./configure
commit 83372470853d04c0c36f4be7f9c44939f9f566df
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue Jul 12 10:49:19 2016 +0200
Add patch
diff --git a/nodejs-fix-nodegyp.patch b/nodejs-fix-nodegyp.patch
new file mode 100644
index 0000000..3289565
--- /dev/null
+++ b/nodejs-fix-nodegyp.patch
@@ -0,0 +1,12 @@
+--- node/node.gyp 2016-07-11 16:30:06.367883998 +0200
++++ node.gyp 2016-07-11 16:35:38.803059930 +0200
+@@ -831,9 +831,7 @@
+ 'conditions': [
+ ['v8_inspector=="true"', {
+ 'dependencies': [
+- 'deps/openssl/openssl.gyp:openssl',
+ 'deps/http_parser/http_parser.gyp:http_parser',
+- 'deps/uv/uv.gyp:libuv'
+ ],
+ 'sources': [
+ 'src/inspector_socket.cc',
commit e2a3ffce8ca2622bc1648f521cb4f28041861eba
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Tue Jul 12 10:48:26 2016 +0200
Patch node.gyp
diff --git a/nodejs.spec b/nodejs.spec
index 87b8972..a902dff 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -60,7 +60,7 @@
Name: nodejs
Epoch: 1
Version: %{nodejs_version}
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -87,6 +87,11 @@ Patch1: nodejs-disable-gyp-deps.patch
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch2: nodejs-use-system-certs.patch
+# build fails at configure when we build it with shared libraries,
+# so we need to patch node.gyp too
+# this patch might be redundant in another release, since it seems to work with current upstream master
+Patch3: nodejs-fix-nodegyp.patch
+
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1.9.0
Requires: libuv >= 1.9.0
@@ -196,6 +201,7 @@ rm -rf deps/uv \
%patch2 -p1
rm -f src/node_root_certs.h
+%patch3 -p1
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -340,6 +346,9 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jul 12 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.0-2
+- Patch node.gyp to fix failing ./configure
+
* Sun Jul 10 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.0-1
- Update node to 6.3.0
- update punycode to 2.0.0
commit 1bf1b27726c9293f99fa47aa8ac8f96c7da5514b
Author: Zuzana Svetlikova
zsvetlik@redhat.com
Date: Sun Jul 10 20:03:45 2016 +0200
Update to 6.3.0
diff --git a/.gitignore b/.gitignore
index e7d7fce..7a5a1b1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -49,3 +49,4 @@
/node-v6.2.0-stripped.tar.gz
/node-v6.2.1-stripped.tar.gz
/node-v6.2.2-stripped.tar.gz
+/node-v6.3.0-stripped.tar.gz
diff --git a/nodejs-use-system-certs.patch b/nodejs-use-system-certs.patch
index 5fd3d8b..68ca37b 100644
--- a/nodejs-use-system-certs.patch
+++ b/nodejs-use-system-certs.patch
@@ -1,4 +1,4 @@
-From e0aac817a87c927f70a6f8edb63a4103a4109dfc Mon Sep 17 00:00:00 2001
+From e51cf2ad2627af02e88df48287fe510e885ba1dc Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:29:07 -0500
Subject: [PATCH 2/2] Do not bundle CA Certificates
@@ -9,7 +9,7 @@ Content-Transfer-Encoding: 8bit
CA Certificates are provided by Fedora.
Forwarded: need some feedback before submitting the matter upstream
-Author: Jérémy Lal
kapouer@melix.org
+Author: J?r?my Lal
kapouer@melix.org
Last-Update: 2014-03-02
Modified 2014-05-02 by T.C. Hollingsworth
tchollingsworth@gmail.com with the
@@ -23,21 +23,22 @@ Node.js 5.7.1
Modified 2016-04-25 by Joseph Wang
joequant@gmail.com to update for
Node.js 5.11.0
----
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 989110c..a55b69d 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -121,7 +121,7 @@ static X509_NAME *cnnic_ev_name =
- static uv_mutex_t* locks;
+
+Modified 2016-07-10 by Zuzana Svetlikova
zsvetlik@redhat.com to update for
+Node.js 6.3.0
+
+--- node/src/node_crypto.cc 2016-07-10 19:03:17.184502913 +0200
++++ node_crypto.cc 2016-07-10 18:56:28.956440528 +0200
+@@ -118,7 +118,7 @@
+ static Mutex* mutexes;
const char* const root_certs[] = {
-#include "node_root_certs.h" // NOLINT(build/include_order)
-+ NULL
++ NULL
};
X509_STORE* root_cert_store;
-@@ -750,29 +750,17 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+@@ -752,29 +752,17 @@
CHECK_EQ(sc->ca_store_, nullptr);
if (!root_cert_store) {
@@ -74,7 +75,3 @@ index 989110c..a55b69d 100644
}
-
---
-2.7.2
-
diff --git a/nodejs.spec b/nodejs.spec
index 8071e4e..87b8972 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,8 +12,8 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_major 6
-%global nodejs_minor 2
-%global nodejs_patch 2
+%global nodejs_minor 3
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -41,15 +41,15 @@
# punycode - from lib/punycode.js
# Note: this was merged into the mainline since 0.6.x
-%global punycode_major 1
-%global punycode_minor 3
-%global punycode_patch 2
+%global punycode_major 2
+%global punycode_minor 0
+%global punycode_patch 0
%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
# npm - from deps/npm/package.json
%global npm_major 3
-%global npm_minor 9
-%global npm_patch 5
+%global npm_minor 10
+%global npm_patch 3
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# Filter out the NPM bundled dependencies so we aren't providing them
@@ -91,6 +91,8 @@ BuildRequires: python-devel
BuildRequires: libuv-devel >= 1.9.0
Requires: libuv >= 1.9.0
BuildRequires: zlib-devel
+BuildRequires: gcc >= 4.8.0
+BuildRequires: gcc-c++ >= 4.8.0
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.2
@@ -338,6 +340,12 @@ NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -
%{_pkgdocdir}/npm/doc
%changelog
+* Sun Jul 10 2016 Zuzana Svetlikova
zsvetlik@redhat.com - 1:6.3.0-1
+- Update node to 6.3.0
+- update punycode to 2.0.0
+- add gcc and gcc-c++ as build dependencies
+- modified system-certs patch
+
* Sat Jun 18 2016 Tom Hughes
tom@compton.nu - 1:6.2.2-1
- Update to latest stable release 6.2.2
- Add check on npm version
diff --git a/sources b/sources
index c5b8b0e..ae332a5 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-c1821b44925235698f2f61607c945895 node-v6.2.2-stripped.tar.gz
+581470dcb25b5b5a689ddc76055eeabd node-v6.3.0-stripped.tar.gz
commit a51d9b439e0995876196f2ba55dcca4cf4ed7892
Author: Tom Hughes
tom@compton.nu
Date: Sat Jun 18 10:26:18 2016 +0100
Update to latest stable release 6.2.2
diff --git a/.gitignore b/.gitignore
index 53a73a8..e7d7fce 100644
--- a/.gitignore
+++ b/.gitignore
@@ -48,3 +48,4 @@
/node-v6.1.0-stripped.tar.gz
/node-v6.2.0-stripped.tar.gz
/node-v6.2.1-stripped.tar.gz
+/node-v6.2.2-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 05532d4..8071e4e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -13,7 +13,7 @@
# than a Fedora release lifecycle.
%global nodejs_major 6
%global nodejs_minor 2
-%global nodejs_patch 1
+%global nodejs_patch 2
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -49,7 +49,7 @@
# npm - from deps/npm/package.json
%global npm_major 3
%global npm_minor 9
-%global npm_patch 3
+%global npm_patch 5
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# Filter out the NPM bundled dependencies so we aren't providing them
@@ -301,6 +301,9 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
# Ensure we have punycode and that the version matches
%{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
+# Ensure we have npm and that the version matches
+NODE_PATH=%{buildroot}%{_prefix}/lib/node_modules %{buildroot}/%{_bindir}/node -e "require("assert").equal(require("npm").version, '%{npm_version}')"
+
%files
%{_bindir}/node
%dir %{_prefix}/lib/node_modules
@@ -335,6 +338,10 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
+* Sat Jun 18 2016 Tom Hughes
tom@compton.nu - 1:6.2.2-1
+- Update to latest stable release 6.2.2
+- Add check on npm version
+
* Tue Jun 7 2016 Tom Hughes
tom@compton.nu - 1:6.2.1-1
- Update to latest stable release 6.2.1
diff --git a/sources b/sources
index 16d1626..c5b8b0e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-564714a8c2883684bca67c5b13ee9c13 node-v6.2.1-stripped.tar.gz
+c1821b44925235698f2f61607c945895 node-v6.2.2-stripped.tar.gz
commit 13b34f8544adc9c0cfb708f521301d050e1160cb
Author: Tom Hughes
tom@compton.nu
Date: Tue Jun 7 18:38:42 2016 +0100
Update to latest stable release 6.2.1
diff --git a/.gitignore b/.gitignore
index 10af8ab..53a73a8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -47,3 +47,4 @@
/node-v5.11.0-stripped.tar.gz
/node-v6.1.0-stripped.tar.gz
/node-v6.2.0-stripped.tar.gz
+/node-v6.2.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 79101ee..05532d4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -13,7 +13,7 @@
# than a Fedora release lifecycle.
%global nodejs_major 6
%global nodejs_minor 2
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -22,7 +22,7 @@
%global v8_major 5
%global v8_minor 0
%global v8_build 71
-%global v8_patch 47
+%global v8_patch 52
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -48,8 +48,8 @@
# npm - from deps/npm/package.json
%global npm_major 3
-%global npm_minor 8
-%global npm_patch 9
+%global npm_minor 9
+%global npm_patch 3
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# Filter out the NPM bundled dependencies so we aren't providing them
@@ -335,6 +335,9 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
+* Tue Jun 7 2016 Tom Hughes
tom@compton.nu - 1:6.2.1-1
+- Update to latest stable release 6.2.1
+
* Wed May 18 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.2.0-1
- Update to latest stable release 6.2.0
-
https://github.com/nodejs/node/blob/v6.2.0/doc/changelogs/CHANGELOG_V6.md#6....
diff --git a/sources b/sources
index 5d9cc1c..16d1626 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-ec22375b409798bfb30129522674bbc9 node-v6.2.0-stripped.tar.gz
+564714a8c2883684bca67c5b13ee9c13 node-v6.2.1-stripped.tar.gz
commit dda0d8b328a9e880f06842f8d42b9f352d097717
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed May 18 08:29:25 2016 -0400
Update to latest stable release 6.2.0
-
https://github.com/nodejs/node/blob/v6.2.0/doc/changelogs/CHANGELOG_V6.md#6....
diff --git a/.gitignore b/.gitignore
index 95f8637..10af8ab 100644
--- a/.gitignore
+++ b/.gitignore
@@ -46,3 +46,4 @@
/node-v5.10.1-stripped.tar.gz
/node-v5.11.0-stripped.tar.gz
/node-v6.1.0-stripped.tar.gz
+/node-v6.2.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index bb08461..79101ee 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -12,7 +12,7 @@
# feature releases that are only supported for nine months, which is shorter
# than a Fedora release lifecycle.
%global nodejs_major 6
-%global nodejs_minor 1
+%global nodejs_minor 2
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -22,7 +22,7 @@
%global v8_major 5
%global v8_minor 0
%global v8_build 71
-%global v8_patch 35
+%global v8_patch 47
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -49,7 +49,7 @@
# npm - from deps/npm/package.json
%global npm_major 3
%global npm_minor 8
-%global npm_patch 6
+%global npm_patch 9
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# Filter out the NPM bundled dependencies so we aren't providing them
@@ -335,6 +335,10 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
+* Wed May 18 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.2.0-1
+- Update to latest stable release 6.2.0
+-
https://github.com/nodejs/node/blob/v6.2.0/doc/changelogs/CHANGELOG_V6.md#6....
+
* Mon May 09 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.1.0-1
- Update to latest stable release 6.1.0
-
https://github.com/nodejs/node/blob/v6.1.0/CHANGELOG.md
diff --git a/sources b/sources
index 42181b0..5d9cc1c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-6a3cd9d9db224a3ca52fa95205c315af node-v6.1.0-stripped.tar.gz
+ec22375b409798bfb30129522674bbc9 node-v6.2.0-stripped.tar.gz
commit 86719465d66b2f9bcff9ff4845d647633a322a67
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon May 9 08:39:49 2016 -0400
Update to latest stable release 6.1.0
-
https://github.com/nodejs/node/blob/v6.1.0/CHANGELOG.md
diff --git a/.gitignore b/.gitignore
index 04cb2d4..95f8637 100644
--- a/.gitignore
+++ b/.gitignore
@@ -45,3 +45,4 @@
/node-v5.10.0-stripped.tar.gz
/node-v5.10.1-stripped.tar.gz
/node-v5.11.0-stripped.tar.gz
+/node-v6.1.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index de874ea..bb08461 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,18 +7,22 @@
%endif
# == Node.js Version ==
-%global nodejs_major 5
-%global nodejs_minor 11
+# Note: Fedora should only ship LTS versions of Node.js (currently expected
+# to be major versions with even numbers). The odd-numbered versions are new
+# feature releases that are only supported for nine months, which is shorter
+# than a Fedora release lifecycle.
+%global nodejs_major 6
+%global nodejs_minor 1
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
-%global v8_major 4
-%global v8_minor 6
-%global v8_build 85
-%global v8_patch 31
+%global v8_major 5
+%global v8_minor 0
+%global v8_build 71
+%global v8_patch 35
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -56,7 +60,7 @@
Name: nodejs
Epoch: 1
Version: %{nodejs_version}
-Release: 3%{?dist}
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -84,8 +88,8 @@ Patch1: nodejs-disable-gyp-deps.patch
Patch2: nodejs-use-system-certs.patch
BuildRequires: python-devel
-BuildRequires: libuv-devel >= 1.8.0
-Requires: libuv >= 1.8.0
+BuildRequires: libuv-devel >= 1.9.0
+Requires: libuv >= 1.9.0
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.2
@@ -331,6 +335,10 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
+* Mon May 09 2016 Stephen Gallagher
sgallagh@redhat.com - 1:6.1.0-1
+- Update to latest stable release 6.1.0
+-
https://github.com/nodejs/node/blob/v6.1.0/CHANGELOG.md
+
* Tue May 03 2016 Stephen Gallagher
sgallagh@redhat.com - 1:5.11.0-3
- Drop the epoch on the virtual provides for npm
diff --git a/sources b/sources
index 5938ef0..42181b0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-d1aad83be4b8e26ab4d99b6d3c6d3e15 node-v5.11.0-stripped.tar.gz
+6a3cd9d9db224a3ca52fa95205c315af node-v6.1.0-stripped.tar.gz
commit bdc896c6d1fae99fe3fca184115f53f1f4b70b43
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon May 2 09:16:15 2016 -0400
Drop the epoch on the virtual provides for npm
diff --git a/nodejs.spec b/nodejs.spec
index d19074b..de874ea 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -56,7 +56,7 @@
Name: nodejs
Epoch: 1
Version: %{nodejs_version}
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -136,9 +136,13 @@ Provides: bundled(http-parser) = %{http_parser_version}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
# now.
-Provides: npm = %{epoch}:%{npm_version}
-Provides: npm(npm) = %{epoch}:%{npm_version}
Obsoletes: npm < 0:3.5.4-6
+Provides: npm = %{epoch}:%{npm_version}
+
+# Do not add epoch to the virtual NPM provides or it will break
+# the automatic dependency-generation script.
+Provides: npm(npm) = %{npm_version}
+
%description
Node.js is a platform built on Chrome's JavaScript runtime
@@ -282,6 +286,7 @@ rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/html \
ln -sf %{_pkgdocdir} %{buildroot}%{_prefix}/lib/node_modules/npm/html
ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
+
%check
# Fail the build if the versions don't match
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
@@ -310,6 +315,7 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_bindir}/npm
%{_mandir}/man*/*
+
%files devel
%if %{?with_debug} == 1
%{_bindir}/node_g
@@ -325,6 +331,9 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
+* Tue May 03 2016 Stephen Gallagher
sgallagh@redhat.com - 1:5.11.0-3
+- Drop the epoch on the virtual provides for npm
+
* Thu Apr 28 2016 Stephen Gallagher
sgallagh@redhat.com - 1:5.11.0-2
- Add epoch and rebuild to preserve upgrade path
commit 00c66ed4912400e9c47cd53562147d96e5d2c343
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Apr 28 08:37:29 2016 -0400
Add epoch and rebuild to preserve upgrade path
diff --git a/nodejs.spec b/nodejs.spec
index 6fa95cc..d19074b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -54,8 +54,9 @@
Name: nodejs
+Epoch: 1
Version: %{nodejs_version}
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -135,9 +136,9 @@ Provides: bundled(http-parser) = %{http_parser_version}
# We used to ship npm separately, but it is so tightly integrated with Node.js
# (and expected to be present on all Node.js systems) that we ship it bundled
# now.
-Provides: npm = %{npm_version}
-Provides: npm(npm) = %{npm_version}
-Obsoletes: npm < 3.5.4-6
+Provides: npm = %{epoch}:%{npm_version}
+Provides: npm(npm) = %{epoch}:%{npm_version}
+Obsoletes: npm < 0:3.5.4-6
%description
Node.js is a platform built on Chrome's JavaScript runtime
@@ -149,7 +150,7 @@ real-time applications that run across distributed devices.
%package devel
Summary: JavaScript runtime - development headers
Group: Development/Languages
-Requires: %{name}%{?_isa} == %{version}-%{release}
+Requires: %{name}%{?_isa} == %{epoch}:%{version}-%{release}
Requires: libuv-devel%{?_isa}
Requires: openssl-devel%{?_isa}
Requires: zlib-devel%{?_isa}
@@ -166,8 +167,8 @@ BuildArch: noarch
# We don't require that the main package be installed to
# use the docs, but if it is installed, make sure the
# version always matches
-Conflicts: %{name} > %{version}-%{release}
-Conflicts: %{name} < %{version}-%{release}
+Conflicts: %{name} > %{epoch}:%{version}-%{release}
+Conflicts: %{name} < %{epoch}:%{version}-%{release}
%description docs
The API documentation for the Node.js JavaScript runtime.
@@ -324,6 +325,9 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
+* Thu Apr 28 2016 Stephen Gallagher
sgallagh@redhat.com - 1:5.11.0-2
+- Add epoch and rebuild to preserve upgrade path
+
* Mon Apr 25 2016 Stephen Gallagher
sgallagh@redhat.com - 5.11.0-1
- Update to latest stable release 5.11.0
-
https://github.com/nodejs/node/blob/v5.11.0/CHANGELOG.md
commit ea7437c7e8651d9af44b0d848668d1f0e72e1878
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 25 14:21:27 2016 -0400
Fix changelog
diff --git a/nodejs.spec b/nodejs.spec
index 252ae26..6fa95cc 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -324,7 +324,7 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
-* Mon Apr 25 2016 Stephen Gallagher
sgallagh@redhat.com - %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}-1
+* Mon Apr 25 2016 Stephen Gallagher
sgallagh@redhat.com - 5.11.0-1
- Update to latest stable release 5.11.0
-
https://github.com/nodejs/node/blob/v5.11.0/CHANGELOG.md
commit 6e360a8b50797404ca053131d8491d0147016327
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 25 14:20:21 2016 -0400
Update to latest stable release 5.11.0
-
https://github.com/nodejs/node/blob/v5.11.0/CHANGELOG.md
diff --git a/.gitignore b/.gitignore
index 11e0f75..04cb2d4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -44,3 +44,4 @@
/node-v5.9.1-stripped.tar.gz
/node-v5.10.0-stripped.tar.gz
/node-v5.10.1-stripped.tar.gz
+/node-v5.11.0-stripped.tar.gz
diff --git a/nodejs-use-system-certs.patch b/nodejs-use-system-certs.patch
index e14347c..5fd3d8b 100644
--- a/nodejs-use-system-certs.patch
+++ b/nodejs-use-system-certs.patch
@@ -20,17 +20,15 @@ Node.js 4.2
Modified 2016-03-04 by Stephen Gallagher
sgallagh@redhat.com to update for
Node.js 5.7.1
----
- src/node_crypto.cc | 28 ++++++++--------------------
- 1 file changed, 8 insertions(+), 20 deletions(-)
+Modified 2016-04-25 by Joseph Wang
joequant@gmail.com to update for
+Node.js 5.11.0
+---
diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index acd83e9f2f41ade75ee9a3c8061acfa8b3dbf0f4..70ffe035f8be24b2eb6daf71185649d8ae7d579f 100644
+index 989110c..a55b69d 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
-@@ -119,11 +119,11 @@ static X509_NAME *cnnic_ev_name =
- sizeof(CNNIC_EV_ROOT_CA_SUBJECT_DATA)-1);
-
+@@ -121,7 +121,7 @@ static X509_NAME *cnnic_ev_name =
static uv_mutex_t* locks;
const char* const root_certs[] = {
@@ -39,17 +37,13 @@ index acd83e9f2f41ade75ee9a3c8061acfa8b3dbf0f4..70ffe035f8be24b2eb6daf71185649d8
};
X509_STORE* root_cert_store;
-
- // Just to generate static methods
-@@ -748,33 +748,21 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
- (void) &clear_error_on_return; // Silence compiler warning.
-
+@@ -750,29 +750,17 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
CHECK_EQ(sc->ca_store_, nullptr);
if (!root_cert_store) {
- root_cert_store = X509_STORE_new();
-
-- for (size_t i = 0; i < ARRAY_SIZE(root_certs); i++) {
+- for (size_t i = 0; i < arraysize(root_certs); i++) {
- BIO* bp = NodeBIO::NewFixed(root_certs[i], strlen(root_certs[i]));
- if (bp == nullptr) {
- return;
@@ -72,7 +66,7 @@ index acd83e9f2f41ade75ee9a3c8061acfa8b3dbf0f4..70ffe035f8be24b2eb6daf71185649d8
+ root_cert_store = X509_STORE_new();
}
+ } else {
-+ SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
++ SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
}
sc->ca_store_ = root_cert_store;
@@ -80,8 +74,7 @@ index acd83e9f2f41ade75ee9a3c8061acfa8b3dbf0f4..70ffe035f8be24b2eb6daf71185649d8
}
- void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc = Unwrap<SecureContext>(args.Holder());
+
--
2.7.2
diff --git a/nodejs.spec b/nodejs.spec
index 1f98949..252ae26 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,8 +8,8 @@
# == Node.js Version ==
%global nodejs_major 5
-%global nodejs_minor 10
-%global nodejs_patch 1
+%global nodejs_minor 11
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -31,8 +31,8 @@
# http-parser - from deps/http_parser/http_parser.h
%global http_parser_major 2
-%global http_parser_minor 6
-%global http_parser_patch 2
+%global http_parser_minor 7
+%global http_parser_patch 0
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
# punycode - from lib/punycode.js
@@ -45,7 +45,7 @@
# npm - from deps/npm/package.json
%global npm_major 3
%global npm_minor 8
-%global npm_patch 3
+%global npm_patch 6
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
# Filter out the NPM bundled dependencies so we aren't providing them
@@ -324,6 +324,10 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
+* Mon Apr 25 2016 Stephen Gallagher
sgallagh@redhat.com - %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}-1
+- Update to latest stable release 5.11.0
+-
https://github.com/nodejs/node/blob/v5.11.0/CHANGELOG.md
+
* Mon Apr 11 2016 Stephen Gallagher
sgallagh@redhat.com - 5.10.0-1
- Update to latest stable release 5.10.1
-
https://github.com/nodejs/node/blob/v5.10.1/CHANGELOG.md
diff --git a/sources b/sources
index 47ed98a..5938ef0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-adbe74296188f8b441c5d644058ea732 node-v5.10.1-stripped.tar.gz
+d1aad83be4b8e26ab4d99b6d3c6d3e15 node-v5.11.0-stripped.tar.gz
commit b4761abbbaf80bc1bdd027fbfd7f301e760dce48
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Apr 11 08:43:59 2016 -0400
Update to latest stable release 5.10.1
-
https://github.com/nodejs/node/blob/v5.10.1/CHANGELOG.md
diff --git a/.gitignore b/.gitignore
index 0d9f26f..11e0f75 100644
--- a/.gitignore
+++ b/.gitignore
@@ -43,3 +43,4 @@
/node-v5.9.0.tar.gz
/node-v5.9.1-stripped.tar.gz
/node-v5.10.0-stripped.tar.gz
+/node-v5.10.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 3799237..1f98949 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -9,7 +9,7 @@
# == Node.js Version ==
%global nodejs_major 5
%global nodejs_minor 10
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -324,7 +324,11 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
-* Fri Apr 01 2016 Stephen Gallagher
sgallagh@redhat.com - %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}-1
+* Mon Apr 11 2016 Stephen Gallagher
sgallagh@redhat.com - 5.10.0-1
+- Update to latest stable release 5.10.1
+-
https://github.com/nodejs/node/blob/v5.10.1/CHANGELOG.md
+
+* Fri Apr 01 2016 Stephen Gallagher
sgallagh@redhat.com - 5.10.0-1
- Update to latest security release (5.10.0)
- Update bundled npm to 3.8.3
- Fixes serious man-in-the-middle vulnerability with npm
diff --git a/sources b/sources
index f16b7f0..47ed98a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-4a2dbe52e4e1975a4b4a26f9af3acf11 node-v5.10.0-stripped.tar.gz
+adbe74296188f8b441c5d644058ea732 node-v5.10.1-stripped.tar.gz
commit 3e0de4b030467b3c54d1ab2287d02785cfe6f74b
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Apr 1 09:52:11 2016 -0400
Update to latest security release (5.10.0)
- Update bundled npm to 3.8.3
- Fixes serious man-in-the-middle vulnerability with npm
diff --git a/.gitignore b/.gitignore
index 1e59282..0d9f26f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -42,3 +42,4 @@
/node-v5.8.0-stripped.tar.gz
/node-v5.9.0.tar.gz
/node-v5.9.1-stripped.tar.gz
+/node-v5.10.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 1a93be4..3799237 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,8 +8,8 @@
# == Node.js Version ==
%global nodejs_major 5
-%global nodejs_minor 9
-%global nodejs_patch 1
+%global nodejs_minor 10
+%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -44,7 +44,7 @@
# npm - from deps/npm/package.json
%global npm_major 3
-%global npm_minor 7
+%global npm_minor 8
%global npm_patch 3
%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
@@ -324,6 +324,11 @@ ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%{_pkgdocdir}/npm/doc
%changelog
+* Fri Apr 01 2016 Stephen Gallagher
sgallagh@redhat.com - %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}-1
+- Update to latest security release (5.10.0)
+- Update bundled npm to 3.8.3
+- Fixes serious man-in-the-middle vulnerability with npm
+
* Wed Mar 23 2016 Stephen Gallagher
sgallagh@redhat.com - 5.9.1-1
- Update to latest stable release (5.9.1)
- Bundle npm (3.7.3)
diff --git a/sources b/sources
index 00338d5..f16b7f0 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-f71057ca5993899b569a75e891e7f871 node-v5.9.1-stripped.tar.gz
+4a2dbe52e4e1975a4b4a26f9af3acf11 node-v5.10.0-stripped.tar.gz
commit a16f88262ec3ebea2d449083cb920f32463027d9
Merge: 2a3d08c 0227455
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Mar 29 08:32:01 2016 -0400
Merge branch 'rawhide-stable'
diff --cc nodejs.spec
index 82ae8d8,b1d05b5..1a93be4
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -42,9 -42,20 +42,20 @@@
%global punycode_patch 2
%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
+ # npm - from deps/npm/package.json
+ %global npm_major 3
+ %global npm_minor 7
+ %global npm_patch 3
+ %global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
+
+ # Filter out the NPM bundled dependencies so we aren't providing them
+ %global __provides_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
+ %global __requires_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
+
+
Name: nodejs
Version: %{nodejs_version}
-Release: 0%{?dist}.20
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@@ -263,12 -320,14 +320,18 @@@ ln -sf %{_pkgdocdir}/npm/html %{buildro
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
+ %{_pkgdocdir}/npm/html
+ %{_pkgdocdir}/npm/doc
%changelog
+ * Wed Mar 23 2016 Stephen Gallagher
sgallagh@redhat.com - 5.9.1-1
+ - Update to latest stable release (5.9.1)
+ - Bundle npm (3.7.3)
+
+* Wed Mar 23 2016 Stephen Gallagher
sgallagh@redhat.com - 4.4.1-1
+- Update to 4.4.1 upstream LTS release
+- Add more versatile ABI checking
+
* Tue Feb 23 2016 Tom Hughes
tom@compton.nu - 4.3.1-1
- Update to 4.3.1 upstream LTS release
commit 0227455ec2f6d0f16b90b0d530b2e56aed1c5b88
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Mar 4 12:25:36 2016 -0500
Update to latest stable release (5.9.1)
diff --git a/.gitignore b/.gitignore
index e38429c..1e59282 100644
--- a/.gitignore
+++ b/.gitignore
@@ -38,3 +38,7 @@
/node-v4.2.6-stripped.tar.gz
/node-v4.3.0-stripped.tar.gz
/node-v4.3.1-stripped.tar.gz
+/node-v5.7.1-stripped.tar.gz
+/node-v5.8.0-stripped.tar.gz
+/node-v5.9.0.tar.gz
+/node-v5.9.1-stripped.tar.gz
diff --git a/nodejs-disable-gyp-deps.patch b/nodejs-disable-gyp-deps.patch
index 91f0f09..f1526c0 100644
--- a/nodejs-disable-gyp-deps.patch
+++ b/nodejs-disable-gyp-deps.patch
@@ -1,4 +1,4 @@
-From 8a53e16138f7fa4371eebde91d3bf216285e75a0 Mon Sep 17 00:00:00 2001
+From 9ed79cf3212bf7bba43c2a7f313628092c43daf5 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:35:29 -0500
Subject: [PATCH 1/2] disable running gyp files for bundled deps
@@ -8,10 +8,12 @@ Subject: [PATCH 1/2] disable running gyp files for bundled deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 94eb419..a2b682b 100644
+index 4962bd4e47e447840cc9890ce465b786bb77ba26..30fa7fb2f621a320706a076724250421da373d1f 100644
--- a/Makefile
+++ b/Makefile
-@@ -49,7 +49,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
+@@ -65,11 +65,11 @@ $(NODE_EXE): config.gypi out/Makefile
+
+ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
ln -fs out/Debug/$(NODE_EXE) $@
@@ -20,6 +22,8 @@ index 94eb419..a2b682b 100644
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
+ if [ -f $@ ]; then
+ $(error Stale $@, please re-run ./configure)
--
-2.5.0
+2.7.2
diff --git a/nodejs-use-system-certs.patch b/nodejs-use-system-certs.patch
index c273884..e14347c 100644
--- a/nodejs-use-system-certs.patch
+++ b/nodejs-use-system-certs.patch
@@ -1,4 +1,4 @@
-From 58c110a74377171587a6ef28a6d5dff1f29a7d52 Mon Sep 17 00:00:00 2001
+From e0aac817a87c927f70a6f8edb63a4103a4109dfc Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:29:07 -0500
Subject: [PATCH 2/2] Do not bundle CA Certificates
@@ -17,15 +17,20 @@ correct path for Fedora
Modified 2015-12-01 by Stephen Gallagher
sgallagh@redhat.com to update for
Node.js 4.2
+
+Modified 2016-03-04 by Stephen Gallagher
sgallagh@redhat.com to update for
+Node.js 5.7.1
---
- src/node_crypto.cc | 31 ++++++++-----------------------
- 1 file changed, 8 insertions(+), 23 deletions(-)
+ src/node_crypto.cc | 28 ++++++++--------------------
+ 1 file changed, 8 insertions(+), 20 deletions(-)
diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 7911ce9..60516ad 100644
+index acd83e9f2f41ade75ee9a3c8061acfa8b3dbf0f4..70ffe035f8be24b2eb6daf71185649d8ae7d579f 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
-@@ -119,7 +119,7 @@ static X509_NAME *cnnic_ev_name =
+@@ -119,11 +119,11 @@ static X509_NAME *cnnic_ev_name =
+ sizeof(CNNIC_EV_ROOT_CA_SUBJECT_DATA)-1);
+
static uv_mutex_t* locks;
const char* const root_certs[] = {
@@ -34,22 +39,23 @@ index 7911ce9..60516ad 100644
};
X509_STORE* root_cert_store;
-@@ -763,32 +763,17 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+
+ // Just to generate static methods
+@@ -748,33 +748,21 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+ (void) &clear_error_on_return; // Silence compiler warning.
+
CHECK_EQ(sc->ca_store_, nullptr);
if (!root_cert_store) {
- root_cert_store = X509_STORE_new();
-
- for (size_t i = 0; i < ARRAY_SIZE(root_certs); i++) {
-- BIO* bp = NodeBIO::New();
--
-- if (!BIO_write(bp, root_certs[i], strlen(root_certs[i]))) {
-- BIO_free_all(bp);
+- BIO* bp = NodeBIO::NewFixed(root_certs[i], strlen(root_certs[i]));
+- if (bp == nullptr) {
- return;
- }
-
- X509 *x509 = PEM_read_bio_X509(bp, nullptr, CryptoPemCallback, nullptr);
--
- if (x509 == nullptr) {
- BIO_free_all(bp);
- return;
@@ -74,6 +80,8 @@ index 7911ce9..60516ad 100644
}
+ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+ SecureContext* sc = Unwrap<SecureContext>(args.Holder());
--
-2.5.0
+2.7.2
diff --git a/nodejs.spec b/nodejs.spec
index 6fee5bd..b1d05b5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,8 +7,8 @@
%endif
# == Node.js Version ==
-%global nodejs_major 4
-%global nodejs_minor 3
+%global nodejs_major 5
+%global nodejs_minor 9
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -16,9 +16,9 @@
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
%global v8_major 4
-%global v8_minor 5
-%global v8_build 103
-%global v8_patch 35
+%global v8_minor 6
+%global v8_build 85
+%global v8_patch 31
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
@@ -29,9 +29,9 @@
%global c_ares_patch 1
%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
-# http-parser - from deps/http-parser/http_parser.h
+# http-parser - from deps/http_parser/http_parser.h
%global http_parser_major 2
-%global http_parser_minor 5
+%global http_parser_minor 6
%global http_parser_patch 2
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
@@ -42,9 +42,20 @@
%global punycode_patch 2
%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
+# npm - from deps/npm/package.json
+%global npm_major 3
+%global npm_minor 7
+%global npm_patch 3
+%global npm_version %{npm_major}.%{npm_minor}.%{npm_patch}
+
+# Filter out the NPM bundled dependencies so we aren't providing them
+%global __provides_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
+%global __requires_exclude_from ^%{_prefix}/lib/node_modules/npm/.*$
+
+
Name: nodejs
Version: %{nodejs_version}
-Release: 1%{?dist}
+Release: 0%{?dist}.20
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -72,8 +83,8 @@ Patch1: nodejs-disable-gyp-deps.patch
Patch2: nodejs-use-system-certs.patch
BuildRequires: python-devel
-BuildRequires: libuv-devel >= 1.7.5
-Requires: libuv >= 1.7.5
+BuildRequires: libuv-devel >= 1.8.0
+Requires: libuv >= 1.8.0
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.2
@@ -84,6 +95,7 @@ Requires: ca-certificates
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
#break when binary compatibility is broken
Provides: nodejs(abi) = %{nodejs_abi}
+Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
Provides: nodejs(v8-abi) = %{v8_abi}
#this corresponds to the "engine" requirement in package.json
@@ -120,6 +132,13 @@ Provides: bundled(v8) = %{v8_version}
# do releases often and is almost always far behind the bundled version
Provides: bundled(http-parser) = %{http_parser_version}
+# We used to ship npm separately, but it is so tightly integrated with Node.js
+# (and expected to be present on all Node.js systems) that we ship it bundled
+# now.
+Provides: npm = %{npm_version}
+Provides: npm(npm) = %{npm_version}
+Obsoletes: npm < 3.5.4-6
+
%description
Node.js is a platform built on Chrome's JavaScript runtime
for easily building fast, scalable network applications.
@@ -144,6 +163,12 @@ Summary: Node.js API documentation
Group: Documentation
BuildArch: noarch
+# We don't require that the main package be installed to
+# use the docs, but if it is installed, make sure the
+# version always matches
+Conflicts: %{name} > %{version}-%{release}
+Conflicts: %{name} < %{version}-%{release}
+
%description docs
The API documentation for the Node.js JavaScript runtime.
@@ -153,8 +178,7 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/npm \
- deps/uv \
+rm -rf deps/uv \
deps/zlib
# remove bundled CA certificates
@@ -173,7 +197,6 @@ export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-
--shared-openssl \
--shared-zlib \
--shared-libuv \
- --without-npm \
--without-dtrace
%if %{?with_debug} == 1
@@ -208,7 +231,7 @@ mkdir -p %{buildroot}%{_prefix}/lib/node_modules
install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native.attr
cat << EOF > %{buildroot}%{_rpmconfigdir}/nodejs_native.req
#!/bin/sh
-echo 'nodejs(abi) = %nodejs_abi'
+echo 'nodejs(abi%{nodejs_major}) >= %nodejs_abi'
echo 'nodejs(v8-abi) = %v8_abi'
EOF
chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
@@ -225,6 +248,38 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
# Install the GDB init tool into the documentation directory
mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
+# Since the old version of NPM was unbundled, there are a lot of symlinks in
+# it's node_modules directory. We need to keep these as symlinks to ensure we
+# can backtrack on this if we decide to.
+
+# Rename the npm node_modules directory to node_modules.bundled
+mv %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules \
+ %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules.bundled
+
+# Recreate all the symlinks
+mkdir -p %{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules
+FILES=%{buildroot}/%{_prefix}/lib/node_modules/npm/node_modules.bundled/*
+for f in $FILES
+do
+ module=`basename $f`
+ ln -s ../node_modules.bundled/$module %{buildroot}%{_prefix}/lib/node_modules/npm/node_modules/$module
+done
+
+# install NPM docs to mandir
+mkdir -p %{buildroot}%{_mandir} \
+ %{buildroot}%{_pkgdocdir}/npm
+
+cp -pr deps/npm/man/* %{buildroot}%{_mandir}/
+rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/man
+ln -sf %{_mandir} %{buildroot}%{_prefix}/lib/node_modules/npm/man
+
+# Install Markdown and HTML documentation to %{_pkgdocdir}
+cp -pr deps/npm/html deps/npm/doc %{buildroot}%{_pkgdocdir}/npm/
+rm -rf %{buildroot}%{_prefix}/lib/node_modules/npm/html \
+ %{buildroot}%{_prefix}/lib/node_modules/npm/doc
+
+ln -sf %{_pkgdocdir} %{buildroot}%{_prefix}/lib/node_modules/npm/html
+ln -sf %{_pkgdocdir}/npm/html %{buildroot}%{_prefix}/lib/node_modules/npm/doc
%check
# Fail the build if the versions don't match
@@ -238,7 +293,6 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%files
%{_bindir}/node
-%{_mandir}/man1/node.*
%dir %{_prefix}/lib/node_modules
%dir %{_datadir}/node
%dir %{_datadir}/systemtap
@@ -246,11 +300,15 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_datadir}/systemtap/tapset/node.stp
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
-%dir %{_pkgdocdir}
%license LICENSE
%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
%doc ROADMAP.md WORKING_GROUPS.md
-
+%{_prefix}/lib/node_modules/npm
+%ghost %{_sysconfdir}/npmrc
+%ghost %{_sysconfdir}/npmignore
+%{_bindir}/npm
+%{_mandir}/man*/*
+
%files devel
%if %{?with_debug} == 1
%{_bindir}/node_g
@@ -262,8 +320,14 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
+%{_pkgdocdir}/npm/html
+%{_pkgdocdir}/npm/doc
%changelog
+* Wed Mar 23 2016 Stephen Gallagher
sgallagh@redhat.com - 5.9.1-1
+- Update to latest stable release (5.9.1)
+- Bundle npm (3.7.3)
+
* Tue Feb 23 2016 Tom Hughes
tom@compton.nu - 4.3.1-1
- Update to 4.3.1 upstream LTS release
diff --git a/sources b/sources
index a5c6c2e..00338d5 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-0bda97bcbe9e93d11a85d6433d07bc9e node-v4.3.1-stripped.tar.gz
+f71057ca5993899b569a75e891e7f871 node-v5.9.1-stripped.tar.gz
commit 2a3d08c9638ade156dbc3b8f42ac6900ee807052
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Mar 23 10:12:03 2016 -0400
Update to 4.4.1 upstream LTS release
diff --git a/.gitignore b/.gitignore
index e38429c..06b6843 100644
--- a/.gitignore
+++ b/.gitignore
@@ -38,3 +38,4 @@
/node-v4.2.6-stripped.tar.gz
/node-v4.3.0-stripped.tar.gz
/node-v4.3.1-stripped.tar.gz
+/node-v4.4.1-stripped.tar.gz
diff --git a/nodejs-disable-gyp-deps.patch b/nodejs-disable-gyp-deps.patch
index 91f0f09..2743f4c 100644
--- a/nodejs-disable-gyp-deps.patch
+++ b/nodejs-disable-gyp-deps.patch
@@ -1,4 +1,4 @@
-From 8a53e16138f7fa4371eebde91d3bf216285e75a0 Mon Sep 17 00:00:00 2001
+From 08ee9476e138421b5f6c4fd928986b125fb82634 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:35:29 -0500
Subject: [PATCH 1/2] disable running gyp files for bundled deps
@@ -8,10 +8,12 @@ Subject: [PATCH 1/2] disable running gyp files for bundled deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 94eb419..a2b682b 100644
+index ff0098b70d7b2c2b76c6456534013d186ad44f0f..df64f3a90ecf57fb58963b717647d69ffa4fb391 100644
--- a/Makefile
+++ b/Makefile
-@@ -49,7 +49,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
+@@ -47,11 +47,11 @@ $(NODE_EXE): config.gypi out/Makefile
+
+ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
ln -fs out/Debug/$(NODE_EXE) $@
@@ -20,6 +22,8 @@ index 94eb419..a2b682b 100644
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
+ if [ -f $@ ]; then
+ $(error Stale $@, please re-run ./configure)
--
-2.5.0
+2.7.3
diff --git a/nodejs-use-system-certs.patch b/nodejs-use-system-certs.patch
index c273884..3ea5b9e 100644
--- a/nodejs-use-system-certs.patch
+++ b/nodejs-use-system-certs.patch
@@ -1,4 +1,4 @@
-From 58c110a74377171587a6ef28a6d5dff1f29a7d52 Mon Sep 17 00:00:00 2001
+From e51cf2ad2627af02e88df48287fe510e885ba1dc Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:29:07 -0500
Subject: [PATCH 2/2] Do not bundle CA Certificates
@@ -17,15 +17,20 @@ correct path for Fedora
Modified 2015-12-01 by Stephen Gallagher
sgallagh@redhat.com to update for
Node.js 4.2
+
+Modified 2016-03-04 by Stephen Gallagher
sgallagh@redhat.com to update for
+Node.js 5.4.1
---
- src/node_crypto.cc | 31 ++++++++-----------------------
- 1 file changed, 8 insertions(+), 23 deletions(-)
+ src/node_crypto.cc | 28 ++++++++--------------------
+ 1 file changed, 8 insertions(+), 20 deletions(-)
diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 7911ce9..60516ad 100644
+index 382a42f22727f878b9bf55459e0e3835ac885159..ee90a0fbce017a5af56e10f3f416f86bd27a9d66 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
-@@ -119,7 +119,7 @@ static X509_NAME *cnnic_ev_name =
+@@ -119,11 +119,11 @@ static X509_NAME *cnnic_ev_name =
+ sizeof(CNNIC_EV_ROOT_CA_SUBJECT_DATA)-1);
+
static uv_mutex_t* locks;
const char* const root_certs[] = {
@@ -34,22 +39,23 @@ index 7911ce9..60516ad 100644
};
X509_STORE* root_cert_store;
-@@ -763,32 +763,17 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+
+ // Just to generate static methods
+@@ -756,33 +756,21 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+ (void) &clear_error_on_return; // Silence compiler warning.
+
CHECK_EQ(sc->ca_store_, nullptr);
if (!root_cert_store) {
- root_cert_store = X509_STORE_new();
-
- for (size_t i = 0; i < ARRAY_SIZE(root_certs); i++) {
-- BIO* bp = NodeBIO::New();
--
-- if (!BIO_write(bp, root_certs[i], strlen(root_certs[i]))) {
-- BIO_free_all(bp);
+- BIO* bp = NodeBIO::NewFixed(root_certs[i], strlen(root_certs[i]));
+- if (bp == nullptr) {
- return;
- }
-
- X509 *x509 = PEM_read_bio_X509(bp, nullptr, CryptoPemCallback, nullptr);
--
- if (x509 == nullptr) {
- BIO_free_all(bp);
- return;
@@ -74,6 +80,8 @@ index 7911ce9..60516ad 100644
}
+ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+ SecureContext* sc = Unwrap<SecureContext>(args.Holder());
--
-2.5.0
+2.7.3
diff --git a/nodejs.spec b/nodejs.spec
index 6fee5bd..82ae8d8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
# == Node.js Version ==
%global nodejs_major 4
-%global nodejs_minor 3
+%global nodejs_minor 4
%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -84,6 +84,7 @@ Requires: ca-certificates
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
#break when binary compatibility is broken
Provides: nodejs(abi) = %{nodejs_abi}
+Provides: nodejs(abi%{nodejs_major}) = %{nodejs_abi}
Provides: nodejs(v8-abi) = %{v8_abi}
#this corresponds to the "engine" requirement in package.json
@@ -208,7 +209,7 @@ mkdir -p %{buildroot}%{_prefix}/lib/node_modules
install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native.attr
cat << EOF > %{buildroot}%{_rpmconfigdir}/nodejs_native.req
#!/bin/sh
-echo 'nodejs(abi) = %nodejs_abi'
+echo 'nodejs(abi%{nodejs_major}) >= %nodejs_abi'
echo 'nodejs(v8-abi) = %v8_abi'
EOF
chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
@@ -264,6 +265,10 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Wed Mar 23 2016 Stephen Gallagher
sgallagh@redhat.com - 4.4.1-1
+- Update to 4.4.1 upstream LTS release
+- Add more versatile ABI checking
+
* Tue Feb 23 2016 Tom Hughes
tom@compton.nu - 4.3.1-1
- Update to 4.3.1 upstream LTS release
diff --git a/sources b/sources
index a5c6c2e..da4bdf3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-0bda97bcbe9e93d11a85d6433d07bc9e node-v4.3.1-stripped.tar.gz
+531aa89a87526745fc3e9268fc4efea5 node-v4.4.1-stripped.tar.gz
commit c7bce4c5ec00bef5d4bb87f21c3d5cd1e902d6c6
Author: Tom Hughes
tom@compton.nu
Date: Tue Feb 23 12:32:20 2016 +0000
Update to 4.3.1 upstream LTS release
diff --git a/.gitignore b/.gitignore
index 4bd6efa..e38429c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -37,3 +37,4 @@
/node-v4.2.4-stripped.tar.gz
/node-v4.2.6-stripped.tar.gz
/node-v4.3.0-stripped.tar.gz
+/node-v4.3.1-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 4d887f9..6fee5bd 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -9,7 +9,7 @@
# == Node.js Version ==
%global nodejs_major 4
%global nodejs_minor 3
-%global nodejs_patch 0
+%global nodejs_patch 1
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
@@ -32,7 +32,7 @@
# http-parser - from deps/http-parser/http_parser.h
%global http_parser_major 2
%global http_parser_minor 5
-%global http_parser_patch 1
+%global http_parser_patch 2
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
# punycode - from lib/punycode.js
@@ -44,7 +44,7 @@
Name: nodejs
Version: %{nodejs_version}
-Release: 3%{?dist}
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -264,6 +264,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Tue Feb 23 2016 Tom Hughes
tom@compton.nu - 4.3.1-1
+- Update to 4.3.1 upstream LTS release
+
* Wed Feb 10 2016 Tom Hughes
tom@compton.nu - 4.3.0-3
- Verify that the built node reports the expected versions
- Drop unneeded dep on http-parser-devel
diff --git a/sources b/sources
index 2f4acd5..a5c6c2e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-675b21f124d85b42391e581d0071d92c node-v4.3.0-stripped.tar.gz
+0bda97bcbe9e93d11a85d6433d07bc9e node-v4.3.1-stripped.tar.gz
commit a614c90b55ab290b72688417ef669975f4e14695
Merge: 18de934 63933c0
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Feb 10 14:57:50 2016 -0500
Merge branch 'f23' into epel7
diff --cc nodejs.spec
index 9220d9c,1b45857..9d10f31
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -120,7 -132,7 +135,8 @@@ real-time applications that run across
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} == %{version}-%{release}
- Requires: libuv-devel%{?_isa} v8-devel%{?_isa}
-Requires: compat-libuv010-devel%{?_isa} v8-devel%{?_isa}
++Requires: libuv-devel%{?_isa}
++Requires: v8-devel%{?_isa}
Requires: openssl-devel%{?_isa} zlib-devel%{?_isa}
Requires: nodejs-packaging
commit 63933c02f8332b43934cc6c159a47b7b83ac9671
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Feb 10 14:11:56 2016 -0500
Verify that the built node reports the expected versions
- Properly Provides: http-parser
- Fix Provides: for punycode
diff --git a/nodejs.spec b/nodejs.spec
index c0ca236..1b45857 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -11,6 +11,7 @@
%global nodejs_minor 10
%global nodejs_patch 42
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
# == Bundled Dependency Versions ==
# v8 - from deps/v8/src/version.cc
@@ -20,19 +21,29 @@
%global v8_patch 9
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
+%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
# c-ares - from deps/cares/include/ares_version.h
%global c_ares_major 1
%global c_ares_minor 9
%global c_ares_patch 0
+%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
# http-parser - from deps/http-parser/http_parser.h
%global http_parser_major 1
%global http_parser_minor 1
+%global http_parser_version %{http_parser_major}.%{http_parser_minor}
+
+# punycode - from lib/punycode.js
+# Note: this was merged into the mainline since 0.6.x
+%global punycode_major 1
+%global punycode_minor 2
+%global punycode_patch 0
+%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
Name: nodejs
-Version: %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-Release: 3%{?dist}
+Version: %{nodejs_version}
+Release: 4%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -89,21 +100,25 @@ Conflicts: node <= 0.3.2-11
# we don't need the seperate nodejs-punycode package, so we Provide it here so
# dependent packages don't need to override the dependency generator.
# See also: RHBZ#11511811
-Provides: nodejs-punycode = 1.3.1
-Provides: npm(punycode) = 1.3.1
+Provides: nodejs-punycode = %{punycode_version}
+Provides: npm(punycode) = %{punycode_version}
# Node.js has forked c-ares from upstream in an incompatible way, so we need
# to carry the bundled version internally.
# See
https://github.com/nodejs/node/commit/766d063e0578c0f7758c3a965c971763f43fec...
# Keep this in sync with deps/cares/include/ares_version.h
-Provides: bundled(c-ares) = 1.9.0
+Provides: bundled(c-ares) = %{c_ares_version}
# Node.js is closely tied to the version of v8 that is used with it. It makes
# sense to use the bundled version because upstream consistently breaks ABI
# even in point releases. Node.js upstream has now removed the ability to build
# against a shared system version entirely.
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
-Provides: bundled(v8) = %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
+Provides: bundled(v8) = %{v8_version}
+
+# Node.js and http-parser share an upstream. The http-parser upstream does not
+# do releases often and is almost always far behind the bundled version
+Provides: bundled(http-parser) = %{http_parser_version}
%description
@@ -117,7 +132,7 @@ real-time applications that run across distributed devices.
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} == %{version}-%{release}
-Requires: compat-libuv010-devel%{?_isa} http-parser-devel%{?_isa} v8-devel%{?_isa}
+Requires: compat-libuv010-devel%{?_isa} v8-devel%{?_isa}
Requires: openssl-devel%{?_isa} zlib-devel%{?_isa}
Requires: nodejs-packaging
@@ -168,6 +183,7 @@ make BUILDTYPE=Debug %{?_smp_mflags}
make BUILDTYPE=Release %{?_smp_mflags}
%endif
+
%install
rm -rf %{buildroot}
@@ -208,6 +224,18 @@ cp -p ChangeLog LICENSE README.md AUTHORS %{buildroot}%{_pkgdocdir}
mkdir -p %{buildroot}%{_datadir}/node
cp -p common.gypi %{buildroot}%{_datadir}/node
+
+%check
+# Fail the build if the versions don't match
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8, '%{v8_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.http_parser, '%{http_parser_version}')"
+
+# Ensure we have punycode and that the version matches
+%{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
+
+
%files
%{_bindir}/node
%{_mandir}/man1/node.*
@@ -233,6 +261,11 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.43-4
+- Verify that the built node reports the expected versions
+- Properly Provides: http-parser
+- Fix Provides: for punycode
+
* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.42-3
- Remove duplicated content from spec file
commit 4a94b49f0171a8a37181e700deb91a01692d0012
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Feb 10 14:31:40 2016 -0500
Add version checks for punycode
diff --git a/nodejs.spec b/nodejs.spec
index b049686..4d887f9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -35,6 +35,13 @@
%global http_parser_patch 1
%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
+# punycode - from lib/punycode.js
+# Note: this was merged into the mainline since 0.6.x
+%global punycode_major 1
+%global punycode_minor 3
+%global punycode_patch 2
+%global punycode_version %{punycode_major}.%{punycode_minor}.%{punycode_patch}
+
Name: nodejs
Version: %{nodejs_version}
Release: 3%{?dist}
@@ -93,8 +100,8 @@ Conflicts: node <= 0.3.2-12
# we don't need the seperate nodejs-punycode package, so we Provide it here so
# dependent packages don't need to override the dependency generator.
# See also: RHBZ#11511811
-Provides: nodejs-punycode = 1.3.2
-Provides: npm(punycode) = 1.3.2
+Provides: nodejs-punycode = %{punycode_version}
+Provides: npm(punycode) = %{punycode_version}
# Node.js has forked c-ares from upstream in an incompatible way, so we need
@@ -226,6 +233,8 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.http_parser, '%{http_parser_version}')"
+# Ensure we have punycode and that the version matches
+%{buildroot}/%{_bindir}/node -e "require("assert").equal(require("punycode").version, '%{punycode_version}')"
%files
%{_bindir}/node
@@ -256,8 +265,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%changelog
* Wed Feb 10 2016 Tom Hughes
tom@compton.nu - 4.3.0-3
-- Verify that the built node reports the exepcted versions
+- Verify that the built node reports the expected versions
- Drop unneeded dep on http-parser-devel
+- Add version check for punycode
* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-2
- Fix nodejs-abi to be 4.3
commit c5341695ebfcd060593000167fb73b231054eed1
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Feb 10 14:05:57 2016 -0500
Drop unneeded dep on http-parser-devel
diff --git a/nodejs.spec b/nodejs.spec
index 6cec534..b049686 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -124,8 +124,9 @@ real-time applications that run across distributed devices.
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} == %{version}-%{release}
-Requires: libuv-devel%{?_isa} http-parser-devel%{?_isa}
-Requires: openssl-devel%{?_isa} zlib-devel%{?_isa}
+Requires: libuv-devel%{?_isa}
+Requires: openssl-devel%{?_isa}
+Requires: zlib-devel%{?_isa}
Requires: nodejs-packaging
%description devel
@@ -256,6 +257,7 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%changelog
* Wed Feb 10 2016 Tom Hughes
tom@compton.nu - 4.3.0-3
- Verify that the built node reports the exepcted versions
+- Drop unneeded dep on http-parser-devel
* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-2
- Fix nodejs-abi to be 4.3
commit 282860bb046db241d227bda6eb5c45e272129964
Author: Tom Hughes
tom@compton.nu
Date: Wed Feb 10 19:02:50 2016 +0000
Verify that the built node reports the exepcted versions
diff --git a/nodejs.spec b/nodejs.spec
index d917c3c..6cec534 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -11,6 +11,7 @@
%global nodejs_minor 3
%global nodejs_patch 0
%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+%global nodejs_version %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
# == Bundled Dependency Versions ==
# v8 - from deps/v8/include/v8-version.h
@@ -20,20 +21,23 @@
%global v8_patch 35
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
%global v8_abi %{v8_major}.%{v8_minor}
+%global v8_version %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
# c-ares - from deps/cares/include/ares_version.h
%global c_ares_major 1
%global c_ares_minor 10
%global c_ares_patch 1
+%global c_ares_version %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
# http-parser - from deps/http-parser/http_parser.h
%global http_parser_major 2
%global http_parser_minor 5
%global http_parser_patch 1
+%global http_parser_version %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
Name: nodejs
-Version: %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-Release: 2%{?dist}
+Version: %{nodejs_version}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -96,18 +100,18 @@ Provides: npm(punycode) = 1.3.2
# Node.js has forked c-ares from upstream in an incompatible way, so we need
# to carry the bundled version internally.
# See
https://github.com/nodejs/node/commit/766d063e0578c0f7758c3a965c971763f43fec...
-Provides: bundled(c-ares) = %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
+Provides: bundled(c-ares) = %{c_ares_version}
# Node.js is closely tied to the version of v8 that is used with it. It makes
# sense to use the bundled version because upstream consistently breaks ABI
# even in point releases. Node.js upstream has now removed the ability to build
# against a shared system version entirely.
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
-Provides: bundled(v8) = %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
+Provides: bundled(v8) = %{v8_version}
# Node.js and http-parser share an upstream. The http-parser upstream does not
# do releases often and is almost always far behind the bundled version
-Provides: bundled(http-parser) = %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
+Provides: bundled(http-parser) = %{http_parser_version}
%description
Node.js is a platform built on Chrome's JavaScript runtime
@@ -171,6 +175,7 @@ make BUILDTYPE=Debug %{?_smp_mflags}
make BUILDTYPE=Release %{?_smp_mflags}
%endif
+
%install
rm -rf %{buildroot}
@@ -212,6 +217,15 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
# Install the GDB init tool into the documentation directory
mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
+
+%check
+# Fail the build if the versions don't match
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.node, '%{nodejs_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.v8, '%{v8_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.ares.replace(/-DEV$/, ''), '%{c_ares_version}')"
+%{buildroot}/%{_bindir}/node -e "require('assert').equal(process.versions.http_parser, '%{http_parser_version}')"
+
+
%files
%{_bindir}/node
%{_mandir}/man1/node.*
@@ -240,6 +254,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Wed Feb 10 2016 Tom Hughes
tom@compton.nu - 4.3.0-3
+- Verify that the built node reports the exepcted versions
+
* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-2
- Fix nodejs-abi to be 4.3
- Clean up bundled versions in spec file
commit 18de93476bf38435e0b1041af8f2fe1cbbfa57cb
Merge: c8b7901 907bf61
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Feb 10 13:31:28 2016 -0500
Merge branch 'f23' into epel7
diff --cc nodejs.spec
index 5ebad5f,c0ca236..9220d9c
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -1,5 -1,37 +1,40 @@@
+ %global with_debug 1
+
++# We don't have pkgdocdir on EPEL6 (yet?)
++%global _pkgdocdir %{_docdir}/%{name}-%{version}
++
+ # ARM builds currently break on the Debug builds, so we'll just
+ # build the standard runtime until that gets sorted out.
+ %ifarch %{arm} aarch64 %{power64}
+ %global with_debug 0
+ %endif
+
+ # == Node.js Version ==
+ %global nodejs_major 0
+ %global nodejs_minor 10
+ %global nodejs_patch 42
+ %global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+
+ # == Bundled Dependency Versions ==
+ # v8 - from deps/v8/src/version.cc
+ %global v8_major 3
+ %global v8_minor 14
+ %global v8_build 5
+ %global v8_patch 9
+ # V8 presently breaks ABI at least every x.y release while never bumping SONAME
+ %global v8_abi %{v8_major}.%{v8_minor}
+
+ # c-ares - from deps/cares/include/ares_version.h
+ %global c_ares_major 1
+ %global c_ares_minor 9
+ %global c_ares_patch 0
+
+ # http-parser - from deps/http-parser/http_parser.h
+ %global http_parser_major 1
+ %global http_parser_minor 1
+
Name: nodejs
- Version: 0.10.36
+ Version: %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@@ -28,23 -60,8 +63,8 @@@ Patch1: nodejs-disable-gyp-deps.patc
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch2: nodejs-use-system-certs.patch
- # The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
- # be done in a stable distribution release. This build of nodejs will behave as
- # if NODE_INVALID_UTF8 was set. For more information on the implications, see:
- #
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
- Patch3: nodejs-revert-utf8-v8.patch
- Patch4: nodejs-revert-utf8-node.patch
-
- # V8 presently breaks ABI at least every x.y release while never bumping SONAME,
- # so we need to be more explicit until spot fixes that
- %global v8_ge 1:3.14.5.10-17
- %global v8_lt 1:3.15
- %global v8_abi 3.14
-
- BuildRequires: v8-devel >= %{v8_ge}
- BuildRequires: http-parser-devel >= 2.0
+ BuildRequires: python-devel
-BuildRequires: compat-libuv010-devel
+BuildRequires: libuv-devel
- BuildRequires: c-ares-devel
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
@@@ -90,8 -117,8 +120,8 @@@ real-time applications that run across
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} == %{version}-%{release}
- Requires: libuv-devel%{?_isa} http-parser-devel%{?_isa} v8-devel%{?_isa}
- Requires: openssl-devel%{?_isa} c-ares-devel%{?_isa} zlib-devel%{?_isa}
-Requires: compat-libuv010-devel%{?_isa} http-parser-devel%{?_isa} v8-devel%{?_isa}
++Requires: libuv-devel%{?_isa} v8-devel%{?_isa}
+ Requires: openssl-devel%{?_isa} zlib-devel%{?_isa}
Requires: nodejs-packaging
%description devel
@@@ -120,19 -149,15 +152,13 @@@ rm -f src/node_root_certs.
%build
# build with debugging symbols and add defines from libuv (#892601)
- export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
- export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
+ export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
+ export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
./configure --prefix=%{_prefix} \
- --shared-v8 \
--shared-openssl \
--shared-zlib \
- --shared-cares \
--shared-libuv \
- --shared-http-parser \
- --shared-libuv-libname=:libuv.so.0.10 \
- --shared-libuv-includes=%{_includedir}/compat-libuv010 \
--without-npm \
--without-dtrace
commit 907bf61ddb0a27848c70ac4553b4edbc2ac596a7
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Feb 10 13:27:15 2016 -0500
Remove duplicated content from spec file
diff --git a/nodejs.spec b/nodejs.spec
index 708c660..c0ca236 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -32,7 +32,7 @@
Name: nodejs
Version: %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -60,14 +60,6 @@ Patch1: nodejs-disable-gyp-deps.patch
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch2: nodejs-use-system-certs.patch
-# V8 presently breaks ABI at least every x.y release while never bumping SONAME
-# Make sure to keep this in sync with deps/v8/srv/version.cc
-%global v8_major 3
-%global v8_minor 14
-%global v8_build 5
-%global v8_patch 9
-%global v8_abi %{v8_major}.%{v8_minor}
-
BuildRequires: python-devel
BuildRequires: compat-libuv010-devel
BuildRequires: zlib-devel
@@ -241,6 +233,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.42-3
+- Remove duplicated content from spec file
+
* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.42-2
- Re-enable debug builds on supported arches
commit 2e4b635f3c88f052f36155c24e3a5c355dc13d15
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Feb 10 12:10:57 2016 -0500
Re-enable debug builds on supported arches
diff --git a/nodejs.spec b/nodejs.spec
index 4907ae8..708c660 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,4 +1,4 @@
-%global with_debug 0
+%global with_debug 1
# ARM builds currently break on the Debug builds, so we'll just
# build the standard runtime until that gets sorted out.
@@ -32,7 +32,7 @@
Name: nodejs
Version: %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -241,6 +241,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.42-2
+- Re-enable debug builds on supported arches
+
* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.42-1
- Update to Node.js 0.10.42
-
https://github.com/nodejs/node/blob/v0.10.42/ChangeLog
commit aab8ed173f88c964cba8a596b4e0bf2bfdb2a89e
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Feb 10 10:51:40 2016 -0500
Update to Node.js 0.10.42
-
https://github.com/nodejs/node/blob/v0.10.42/ChangeLog
- Bundle v8, c-ares and http-parser with Node.js
- Drop patches that revert v8 UTF8 change
- Resolves: RHBZ#1306203
- Resolves: RHBZ#1306200
- Resolves: RHBZ#1306207
diff --git a/.gitignore b/.gitignore
index 27559e5..0e8b6d2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -32,3 +32,4 @@
/node-v0.10.32-stripped.tar.gz
/node-v0.10.33-stripped.tar.gz
/node-v0.10.36-stripped.tar.gz
+/node-v0.10.42-stripped.tar.gz
diff --git a/nodejs-revert-utf8-node.patch b/nodejs-revert-utf8-node.patch
deleted file mode 100644
index a5a3d59..0000000
--- a/nodejs-revert-utf8-node.patch
+++ /dev/null
@@ -1,689 +0,0 @@
-From a9e60792a9c4044e29ec7bbb88419d9283044b86 Mon Sep 17 00:00:00 2001
-From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
-Date: Wed, 18 Jun 2014 23:19:19 -0700
-Subject: [PATCH] Revert "src: replace usage of String::Utf8Value"
-
-This reverts commit 535c7777ac674ba86cf93c44824e07b0e23ea8c4.
----
- src/cares_wrap.cc | 8 ++---
- src/fs_event_wrap.cc | 3 +-
- src/node.cc | 42 +++++++++++++-------------
- src/node_crypto.cc | 31 ++++++++++---------
- src/node_dtrace.cc | 6 ++--
- src/node_file.cc | 37 +++++++++++------------
- src/node_stat_watcher.cc | 3 +-
- src/process_wrap.cc | 9 +++---
- src/udp_wrap.cc | 9 +++---
- src/util.h | 78 ------------------------------------------------
- 10 files changed, 68 insertions(+), 158 deletions(-)
- delete mode 100644 src/util.h
-
-diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc
-index 321e144..b7ba828 100644
---- a/src/cares_wrap.cc
-+++ b/src/cares_wrap.cc
-@@ -741,7 +739,7 @@ static Handle<Value> Query(const Arguments& args) {
- // object reference, causing wrap->GetObject() to return undefined.
- Local<Object> object = Local<Object>::New(wrap->GetObject());
-
-- node::Utf8Value name(args[0]);
-+ String::Utf8Value name(args[0]);
-
- int r = wrap->Send(*name);
- if (r) {
-@@ -770,7 +768,7 @@ static Handle<Value> QueryWithFamily(const Arguments& args) {
- // object reference, causing wrap->GetObject() to return undefined.
- Local<Object> object = Local<Object>::New(wrap->GetObject());
-
-- node::Utf8Value name(args[0]);
-+ String::Utf8Value name(args[0]);
- int family = args[1]->Int32Value();
-
- int r = wrap->Send(*name, family);
-@@ -900,7 +898,7 @@ static Handle<Value> IsIP(const Arguments& args) {
- static Handle<Value> GetAddrInfo(const Arguments& args) {
- HandleScope scope;
-
-- node::Utf8Value hostname(args[0]);
-+ String::Utf8Value hostname(args[0]);
-
- int fam = AF_UNSPEC;
- if (args[1]->IsInt32()) {
-diff --git a/src/fs_event_wrap.cc b/src/fs_event_wrap.cc
-index fc54283..7e3eb8c 100644
---- a/src/fs_event_wrap.cc
-+++ b/src/fs_event_wrap.cc
-@@ -21,7 +21,6 @@
-
- #include "node.h"
- #include "handle_wrap.h"
--#include "util.h"
-
- #include <stdlib.h>
-
-@@ -98,7 +97,7 @@ Handle<Value> FSEventWrap::Start(const Arguments& args) {
- return ThrowException(Exception::TypeError(String::New("Bad arguments")));
- }
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- int r = uv_fs_event_init(uv_default_loop(), &wrap->handle_, *path, OnEvent, 0);
- if (r == 0) {
-diff --git a/src/node.cc b/src/node.cc
-index e9696cd..8257604 100644
---- a/src/node.cc
-+++ b/src/node.cc
-@@ -1102,7 +1100,7 @@ enum encoding ParseEncoding(Handle<Value> encoding_v, enum encoding _default) {
-
- if (!encoding_v->IsString()) return _default;
-
-- node::Utf8Value encoding(encoding_v);
-+ String::Utf8Value encoding(encoding_v);
-
- if (strcasecmp(*encoding, "utf8") == 0) {
- return UTF8;
-@@ -1202,12 +1200,12 @@ void DisplayExceptionLine (TryCatch &try_catch) {
-
- if (!message.IsEmpty()) {
- // Print (filename):(line number): (message).
-- node::Utf8Value filename(message->GetScriptResourceName());
-+ String::Utf8Value filename(message->GetScriptResourceName());
- const char* filename_string = *filename;
- int linenum = message->GetLineNumber();
- fprintf(stderr, "%s:%i\n", filename_string, linenum);
- // Print line of source code.
-- node::Utf8Value sourceline(message->GetSourceLine());
-+ String::Utf8Value sourceline(message->GetSourceLine());
- const char* sourceline_string = *sourceline;
-
- // Because of how node modules work, all scripts are wrapped with a
-@@ -1254,7 +1252,7 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
-
- if (show_line) DisplayExceptionLine(try_catch);
-
-- node::Utf8Value trace(try_catch.StackTrace());
-+ String::Utf8Value trace(try_catch.StackTrace());
-
- // range errors have a trace member set to undefined
- if (trace.length() > 0 && !try_catch.StackTrace()->IsUndefined()) {
-@@ -1269,11 +1267,11 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
- !(er->ToObject()->Get(String::New("name"))->IsUndefined());
-
- if (isErrorObject) {
-- node::Utf8Value name(er->ToObject()->Get(String::New("name")));
-+ String::Utf8Value name(er->ToObject()->Get(String::New("name")));
- fprintf(stderr, "%s: ", *name);
- }
-
-- node::Utf8Value msg(!isErrorObject ? er
-+ String::Utf8Value msg(!isErrorObject ? er
- : er->ToObject()->Get(String::New("message")));
- fprintf(stderr, "%s\n", *msg);
- }
-@@ -1355,7 +1353,7 @@ static Handle<Value> Chdir(const Arguments& args) {
- return ThrowException(Exception::Error(String::New("Bad argument.")));
- }
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- uv_err_t r = uv_chdir(*path);
-
-@@ -1406,7 +1404,7 @@ static Handle<Value> Umask(const Arguments& args) {
- oct = args[0]->Uint32Value();
- } else {
- oct = 0;
-- node::Utf8Value str(args[0]);
-+ String::Utf8Value str(args[0]);
-
- // Parse the octal string.
- for (int i = 0; i < str.length(); i++) {
-@@ -1512,7 +1510,7 @@ static uid_t uid_by_name(Handle<Value> value) {
- if (value->IsUint32()) {
- return static_cast<uid_t>(value->Uint32Value());
- } else {
-- node::Utf8Value name(value);
-+ String::Utf8Value name(value);
- return uid_by_name(*name);
- }
- }
-@@ -1522,7 +1520,7 @@ static gid_t gid_by_name(Handle<Value> value) {
- if (value->IsUint32()) {
- return static_cast<gid_t>(value->Uint32Value());
- } else {
-- node::Utf8Value name(value);
-+ String::Utf8Value name(value);
- return gid_by_name(*name);
- }
- }
-@@ -1665,7 +1663,7 @@ static Handle<Value> InitGroups(const Arguments& args) {
- return ThrowTypeError("argument 2 must be a number or a string");
- }
-
-- node::Utf8Value arg0(args[0]);
-+ String::Utf8Value arg0(args[0]);
- gid_t extra_group;
- bool must_free;
- char* user;
-@@ -1826,7 +1824,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
- }
-
- Local<Object> module = args[0]->ToObject(); // Cast
-- node::Utf8Value filename(args[1]); // Cast
-+ String::Utf8Value filename(args[1]); // Cast
-
- if (exports_symbol.IsEmpty()) {
- exports_symbol = NODE_PSYMBOL("exports");
-@@ -1842,7 +1840,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
- return ThrowException(Exception::Error(errmsg));
- }
-
-- node::Utf8Value path(args[1]);
-+ String::Utf8Value path(args[1]);
- base = *path;
-
- /* Find the shared library filename within the full path. */
-@@ -1961,7 +1959,7 @@ static Handle<Value> Binding(const Arguments& args) {
- HandleScope scope;
-
- Local<String> module = args[0]->ToString();
-- node::Utf8Value module_v(module);
-+ String::Utf8Value module_v(module);
- node_module_struct* modp;
-
- if (binding_cache.IsEmpty()) {
-@@ -2020,7 +2018,7 @@ static void ProcessTitleSetter(Local<String> property,
- Local<Value> value,
- const AccessorInfo& info) {
- HandleScope scope;
-- node::Utf8Value title(value);
-+ String::Utf8Value title(value);
- // TODO: protect with a lock
- uv_set_process_title(*title);
- }
-@@ -2030,7 +2028,7 @@ static Handle<Value> EnvGetter(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-+ String::Utf8Value key(property);
- const char* val = getenv(*key);
- if (val) {
- return scope.Close(String::New(val));
-@@ -2059,8 +2057,8 @@ static Handle<Value> EnvSetter(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-- node::Utf8Value val(value);
-+ String::Utf8Value key(property);
-+ String::Utf8Value val(value);
- setenv(*key, *val, 1);
- #else // _WIN32
- String::Value key(property);
-@@ -2080,7 +2078,7 @@ static Handle<Integer> EnvQuery(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-+ String::Utf8Value key(property);
- if (getenv(*key)) {
- return scope.Close(Integer::New(0));
- }
-@@ -2108,7 +2106,7 @@ static Handle<Boolean> EnvDeleter(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-+ String::Utf8Value key(property);
- if (!getenv(*key)) return False();
- unsetenv(*key); // can't check return value, it's void on some platforms
- return True();
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 46faba2..0ae1f8a 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -242,7 +241,7 @@ Handle<Value> SecureContext::Init(const Arguments& args) {
- OPENSSL_CONST SSL_METHOD *method = SSLv23_method();
-
- if (args.Length() == 1 && args[0]->IsString()) {
-- node::Utf8Value sslmethod(args[0]);
-+ String::Utf8Value sslmethod(args[0]);
-
- if (strcmp(*sslmethod, "SSLv2_method") == 0) {
- #ifndef OPENSSL_NO_SSL2
-@@ -362,7 +361,7 @@ static BIO* LoadBIO (Handle<Value> v) {
- int r = -1;
-
- if (v->IsString()) {
-- node::Utf8Value s(v);
-+ String::Utf8Value s(v);
- r = BIO_write(bio, *s, s.length());
- } else if (Buffer::HasInstance(v)) {
- char* buffer_data = Buffer::Data(v);
-@@ -414,7 +413,7 @@ Handle<Value> SecureContext::SetKey(const Arguments& args) {
- BIO *bio = LoadBIO(args[0]);
- if (!bio) return False();
-
-- node::Utf8Value passphrase(args[1]);
-+ String::Utf8Value passphrase(args[1]);
-
- EVP_PKEY* key = PEM_read_bio_PrivateKey(bio, NULL, NULL,
- len == 1 ? NULL : *passphrase);
-@@ -644,7 +643,7 @@ Handle<Value> SecureContext::SetCiphers(const Arguments& args) {
- return ThrowException(Exception::TypeError(String::New("Bad parameter")));
- }
-
-- node::Utf8Value ciphers(args[0]);
-+ String::Utf8Value ciphers(args[0]);
- SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
-
- return True();
-@@ -673,7 +672,7 @@ Handle<Value> SecureContext::SetSessionIdContext(const Arguments& args) {
- return ThrowException(Exception::TypeError(String::New("Bad parameter")));
- }
-
-- node::Utf8Value sessionIdContext(args[0]);
-+ String::Utf8Value sessionIdContext(args[0]);
- const unsigned char* sid_ctx = (const unsigned char*) *sessionIdContext;
- unsigned int sid_ctx_len = sessionIdContext.length();
-
-@@ -1281,7 +1280,7 @@ Handle<Value> Connection::New(const Arguments& args) {
- if (is_server) {
- SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
- } else {
-- node::Utf8Value servername(args[2]);
-+ String::Utf8Value servername(args[2]);
- SSL_set_tlsext_host_name(p->ssl_, *servername);
- }
- #endif
-@@ -2234,7 +2233,7 @@ class Cipher : public ObjectWrap {
- ssize_t key_written = DecodeWrite(key_buf, key_buf_len, args[1], BINARY);
- assert(key_written == key_buf_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->CipherInit(*cipherType, key_buf, key_buf_len);
-
-@@ -2285,7 +2284,7 @@ class Cipher : public ObjectWrap {
- ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
- assert(iv_written == iv_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->CipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
-
-@@ -2544,7 +2543,7 @@ class Decipher : public ObjectWrap {
- ssize_t key_written = DecodeWrite(key_buf, key_len, args[1], BINARY);
- assert(key_written == key_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->DecipherInit(*cipherType, key_buf,key_len);
-
-@@ -2595,7 +2594,7 @@ class Decipher : public ObjectWrap {
- ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
- assert(iv_written == iv_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->DecipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
-
-@@ -2776,7 +2775,7 @@ class Hmac : public ObjectWrap {
- return ThrowException(exception);
- }
-
-- node::Utf8Value hashType(args[0]);
-+ String::Utf8Value hashType(args[0]);
-
- bool r;
-
-@@ -2921,7 +2920,7 @@ class Hash : public ObjectWrap {
- "Must give hashtype string as argument")));
- }
-
-- node::Utf8Value hashType(args[0]);
-+ String::Utf8Value hashType(args[0]);
-
- Hash *hash = new Hash();
- if (!hash->HashInit(*hashType)) {
-@@ -3095,7 +3094,7 @@ class Sign : public ObjectWrap {
- "Must give signtype string as argument")));
- }
-
-- node::Utf8Value signType(args[0]);
-+ String::Utf8Value signType(args[0]);
-
- bool r = sign->SignInit(*signType);
-
-@@ -3328,7 +3327,7 @@ class Verify : public ObjectWrap {
- "Must give verifytype string as argument")));
- }
-
-- node::Utf8Value verifyType(args[0]);
-+ String::Utf8Value verifyType(args[0]);
-
- bool r = verify->VerifyInit(*verifyType);
-
-@@ -3511,7 +3510,7 @@ class DiffieHellman : public ObjectWrap {
- String::New("No group name given")));
- }
-
-- node::Utf8Value group_name(args[0]);
-+ String::Utf8Value group_name(args[0]);
-
- modp_group* it = modp_groups;
-
-diff --git a/src/node_dtrace.cc b/src/node_dtrace.cc
-index 0b2d0f4..4b851e3 100644
---- a/src/node_dtrace.cc
-+++ b/src/node_dtrace.cc
-@@ -68,7 +66,7 @@ using namespace v8;
- return (ThrowException(Exception::Error(String::New("expected " \
- "object for " #obj " to contain string member " #member)))); \
- } \
-- node::Utf8Value _##member(obj->Get(String::New(#member))); \
-+ String::Utf8Value _##member(obj->Get(String::New(#member))); \
- if ((*(const char **)valp = *_##member) == NULL) \
- *(const char **)valp = "<unknown>";
-
-@@ -243,7 +241,7 @@ Handle<Value> DTRACE_HTTP_SERVER_REQUEST(const Arguments& args) {
- "object for request to contain string member headers"))));
-
- Local<Value> strfwdfor = headers->Get(String::New("x-forwarded-for"));
-- node::Utf8Value fwdfor(strfwdfor);
-+ String::Utf8Value fwdfor(strfwdfor);
-
- if (!strfwdfor->IsString() || (req.forwardedFor = *fwdfor) == NULL)
- req.forwardedFor = const_cast<char*>("");
-diff --git a/src/node_file.cc b/src/node_file.cc
-index 3c35e0b..f665b19 100644
---- a/src/node_file.cc
-+++ b/src/node_file.cc
-@@ -404,7 +403,7 @@ static Handle<Value> Stat(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(stat, args[1], *path)
-@@ -421,7 +420,7 @@ static Handle<Value> LStat(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(lstat, args[1], *path)
-@@ -459,12 +458,12 @@ static Handle<Value> Symlink(const Arguments& args) {
- if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
- if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
-
-- node::Utf8Value dest(args[0]);
-- node::Utf8Value path(args[1]);
-+ String::Utf8Value dest(args[0]);
-+ String::Utf8Value path(args[1]);
- int flags = 0;
-
- if (args[2]->IsString()) {
-- node::Utf8Value mode(args[2]);
-+ String::Utf8Value mode(args[2]);
- if (strcmp(*mode, "dir") == 0) {
- flags |= UV_FS_SYMLINK_DIR;
- } else if (strcmp(*mode, "junction") == 0) {
-@@ -492,8 +491,8 @@ static Handle<Value> Link(const Arguments& args) {
- if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
- if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
-
-- node::Utf8Value orig_path(args[0]);
-- node::Utf8Value new_path(args[1]);
-+ String::Utf8Value orig_path(args[0]);
-+ String::Utf8Value new_path(args[1]);
-
- if (args[2]->IsFunction()) {
- ASYNC_DEST_CALL(link, args[2], *new_path, *orig_path, *new_path)
-@@ -509,7 +508,7 @@ static Handle<Value> ReadLink(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(readlink, args[1], *path)
-@@ -528,8 +527,8 @@ static Handle<Value> Rename(const Arguments& args) {
- if (!args[0]->IsString()) return TYPE_ERROR("old path must be a string");
- if (!args[1]->IsString()) return TYPE_ERROR("new path must be a string");
-
-- node::Utf8Value old_path(args[0]);
-- node::Utf8Value new_path(args[1]);
-+ String::Utf8Value old_path(args[0]);
-+ String::Utf8Value new_path(args[1]);
-
- if (args[2]->IsFunction()) {
- ASYNC_DEST_CALL(rename, args[2], *new_path, *old_path, *new_path)
-@@ -599,7 +598,7 @@ static Handle<Value> Unlink(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(unlink, args[1], *path)
-@@ -615,7 +614,7 @@ static Handle<Value> RMDir(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(rmdir, args[1], *path)
-@@ -632,7 +631,7 @@ static Handle<Value> MKDir(const Arguments& args) {
- return THROW_BAD_ARGS;
- }
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- int mode = static_cast<int>(args[1]->Int32Value());
-
- if (args[2]->IsFunction()) {
-@@ -649,7 +648,7 @@ static Handle<Value> ReadDir(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(readdir, args[1], *path, 0 /*flags*/)
-@@ -687,7 +686,7 @@ static Handle<Value> Open(const Arguments& args) {
- if (!args[1]->IsInt32()) return TYPE_ERROR("flags must be an int");
- if (!args[2]->IsInt32()) return TYPE_ERROR("mode must be an int");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- int flags = args[1]->Int32Value();
- int mode = static_cast<int>(args[2]->Int32Value());
-
-@@ -827,7 +826,7 @@ static Handle<Value> Chmod(const Arguments& args) {
- if(args.Length() < 2 || !args[0]->IsString() || !args[1]->IsInt32()) {
- return THROW_BAD_ARGS;
- }
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- int mode = static_cast<int>(args[1]->Int32Value());
-
- if(args[2]->IsFunction()) {
-@@ -874,7 +873,7 @@ static Handle<Value> Chown(const Arguments& args) {
- if (!args[1]->IsUint32()) return TYPE_ERROR("uid must be an unsigned int");
- if (!args[2]->IsUint32()) return TYPE_ERROR("gid must be an unsigned int");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- uv_uid_t uid = static_cast<uv_uid_t>(args[1]->Uint32Value());
- uv_gid_t gid = static_cast<uv_gid_t>(args[2]->Uint32Value());
-
-@@ -925,7 +924,7 @@ static Handle<Value> UTimes(const Arguments& args) {
- if (!args[1]->IsNumber()) return TYPE_ERROR("atime must be a number");
- if (!args[2]->IsNumber()) return TYPE_ERROR("mtime must be a number");
-
-- const node::Utf8Value path(args[0]);
-+ const String::Utf8Value path(args[0]);
- const double atime = static_cast<double>(args[1]->NumberValue());
- const double mtime = static_cast<double>(args[2]->NumberValue());
-
-diff --git a/src/node_stat_watcher.cc b/src/node_stat_watcher.cc
-index fd3e5d1..c3f668c 100644
---- a/src/node_stat_watcher.cc
-+++ b/src/node_stat_watcher.cc
-@@ -105,7 +104,7 @@ Handle<Value> StatWatcher::Start(const Arguments& args) {
- HandleScope scope;
-
- StatWatcher* wrap = ObjectWrap::Unwrap<StatWatcher>(args.Holder());
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- const bool persistent = args[1]->BooleanValue();
- const uint32_t interval = args[2]->Uint32Value();
-
-diff --git a/src/process_wrap.cc b/src/process_wrap.cc
-index ac63e4b..784300f 100644
---- a/src/process_wrap.cc
-+++ b/src/process_wrap.cc
-@@ -188,7 +187,7 @@ class ProcessWrap : public HandleWrap {
-
- // options.file
- Local<Value> file_v = js_options->Get(String::NewSymbol("file"));
-- node::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
-+ String::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
- if (file.length() > 0) {
- options.file = *file;
- } else {
-@@ -203,7 +202,7 @@ class ProcessWrap : public HandleWrap {
- // Heap allocate to detect errors. +1 is for NULL.
- options.args = new char*[argc + 1];
- for (int i = 0; i < argc; i++) {
-- node::Utf8Value arg(js_argv->Get(i));
-+ String::Utf8Value arg(js_argv->Get(i));
- options.args[i] = strdup(*arg);
- }
- options.args[argc] = NULL;
-@@ -211,7 +210,7 @@ class ProcessWrap : public HandleWrap {
-
- // options.cwd
- Local<Value> cwd_v = js_options->Get(String::NewSymbol("cwd"));
-- node::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
-+ String::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
- if (cwd.length() > 0) {
- options.cwd = *cwd;
- }
-@@ -223,7 +222,7 @@ class ProcessWrap : public HandleWrap {
- int envc = env->Length();
- options.env = new char*[envc + 1]; // Heap allocated to detect errors.
- for (int i = 0; i < envc; i++) {
-- node::Utf8Value pair(env->Get(i));
-+ String::Utf8Value pair(env->Get(i));
- options.env[i] = strdup(*pair);
- }
- options.env[envc] = NULL;
-diff --git a/src/udp_wrap.cc b/src/udp_wrap.cc
-index 31a4e78..b33f4e8 100644
---- a/src/udp_wrap.cc
-+++ b/src/udp_wrap.cc
-@@ -161,7 +160,7 @@ Handle<Value> UDPWrap::DoBind(const Arguments& args, int family) {
- // bind(ip, port, flags)
- assert(args.Length() == 3);
-
-- node::Utf8Value address(args[0]);
-+ String::Utf8Value address(args[0]);
- const int port = args[1]->Uint32Value();
- const int flags = args[2]->Uint32Value();
-
-@@ -220,8 +219,8 @@ Handle<Value> UDPWrap::SetMembership(const Arguments& args,
-
- assert(args.Length() == 2);
-
-- node::Utf8Value address(args[0]);
-- node::Utf8Value iface(args[1]);
-+ String::Utf8Value address(args[0]);
-+ String::Utf8Value iface(args[1]);
-
- const char* iface_cstr = *iface;
- if (args[1]->IsUndefined() || args[1]->IsNull()) {
-@@ -272,7 +271,7 @@ Handle<Value> UDPWrap::DoSend(const Arguments& args, int family) {
- length);
-
- const unsigned short port = args[3]->Uint32Value();
-- node::Utf8Value address(args[4]);
-+ String::Utf8Value address(args[4]);
-
- switch (family) {
- case AF_INET:
-diff --git a/src/util.h b/src/util.h
---- a/src/util.h
-+++ b/src/util.h
-@@ -41,52 +41,6 @@
- obj->Set(domain_symbol, domain);
- }
-
--class Utf8Value {
-- public:
-- explicit Utf8Value(v8::Handle
v8::Value value)
-- : length_(0), str_(NULL) {
-- if (value.IsEmpty())
-- return;
--
-- v8::Local
v8::String val_ = value->ToString();
--
-- // Allocate enough space to include the null terminator
-- size_t len = StringBytes::StorageSize(val_, UTF8) + 1;
--
-- char* str = static_cast<char*>(calloc(1, len));
--
-- int flags = WRITE_UTF8_FLAGS;
-- flags |= ~v8::String::NO_NULL_TERMINATION;
--
-- length_ = val_->WriteUtf8(str,
-- len,
-- 0,
-- flags);
--
-- str_ = reinterpret_cast<char*>(str);
-- }
--
-- ~Utf8Value() {
-- free(str_);
-- }
--
-- char* operator*() {
-- return str_;
-- };
--
-- const char* operator*() const {
-- return str_;
-- };
--
-- size_t length() const {
-- return length_;
-- };
--
-- private:
-- size_t length_;
-- char* str_;
--};
--
- } // namespace node
-
- #endif // SRC_UTIL_H_
---
-1.9.3
-
diff --git a/nodejs-revert-utf8-v8.patch b/nodejs-revert-utf8-v8.patch
deleted file mode 100644
index 6b16de6..0000000
--- a/nodejs-revert-utf8-v8.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From c7c934c66cd8712c9ff169f1ef4c5670d3ff99c8 Mon Sep 17 00:00:00 2001
-From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
-Date: Wed, 18 Jun 2014 23:09:03 -0700
-Subject: [PATCH] Revert "string_bytes: Guarantee valid utf-8 output"
-
-This reverts commit 0da4c671659cfbae12def127b2e94690b9d9b5e1.
----
- src/node.cc | 7 -------
- src/string_bytes.cc | 2 +-
- src/string_bytes.h | 2 --
- test/simple/test-buffer.js | 12 ------------
- 4 files changed, 1 insertion(+), 22 deletions(-)
-
-diff --git a/src/node.cc b/src/node.cc
-index 4223973..e9696cd 100644
---- a/src/node.cc
-+++ b/src/node.cc
-@@ -180,9 +180,6 @@ static uv_async_t dispatch_debug_messages_async;
- // Declared in node_internals.h
- Isolate* node_isolate = NULL;
-
--int WRITE_UTF8_FLAGS = v8::String::HINT_MANY_WRITES_EXPECTED |
-- v8::String::NO_NULL_TERMINATION;
--
- static void Spin(uv_idle_t* handle, int status) {
- assert((uv_idle_t*) handle == &tick_spinner);
- assert(status == 0);
-@@ -3077,11 +3074,6 @@ static char **copy_argv(int argc, char **argv) {
-
-
- int Start(int argc, char *argv[]) {
-- const char* replaceInvalid = getenv("NODE_INVALID_UTF8");
--
-- if (replaceInvalid == NULL)
-- WRITE_UTF8_FLAGS |= String::REPLACE_INVALID_UTF8;
--
- // Hack aroung with the argv pointer. Used for process.title = "blah".
- argv = uv_setup_args(argc, argv);
-
-diff --git a/src/string_bytes.cc b/src/string_bytes.cc
-index a7bab38..e4a34fe 100644
---- a/src/string_bytes.cc
-+++ b/src/string_bytes.cc
-@@ -199,7 +199,7 @@ size_t StringBytes::Write(char* buf,
- break;
-
- case UTF8:
-- len = str->WriteUtf8(buf, buflen, chars_written, WRITE_UTF8_FLAGS);
-+ len = str->WriteUtf8(buf, buflen, chars_written, flags);
- break;
-
- case UCS2:
-diff --git a/src/string_bytes.h b/src/string_bytes.h
-index 31f04bb..8071a49 100644
---- a/src/string_bytes.h
-+++ b/src/string_bytes.h
-@@ -29,8 +29,6 @@
-
- namespace node {
-
--extern int WRITE_UTF8_FLAGS;
--
- using v8::Handle;
- using v8::Local;
- using v8::String;
-diff --git a/test/simple/test-buffer.js b/test/simple/test-buffer.js
-index f8b2798..3026824 100644
---- a/test/simple/test-buffer.js
-+++ b/test/simple/test-buffer.js
-@@ -791,18 +791,6 @@ assert.equal(buf[3], 0xFF);
- assert.equal(buf[3], 0xFF);
- });
-
--// test unmatched surrogates not producing invalid utf8 output
--// ef bf bd = utf-8 representation of unicode replacement character
--// see
https://codereview.chromium.org/121173009/
--buf = new Buffer('ab\ud800cd', 'utf8');
--assert.equal(buf[0], 0x61);
--assert.equal(buf[1], 0x62);
--assert.equal(buf[2], 0xef);
--assert.equal(buf[3], 0xbf);
--assert.equal(buf[4], 0xbd);
--assert.equal(buf[5], 0x63);
--assert.equal(buf[6], 0x64);
--
- // test for buffer overrun
- buf = new Buffer([0, 0, 0, 0, 0]); // length: 5
- var sub = buf.slice(0, 4); // length: 4
---
-1.9.3
-
diff --git a/nodejs.spec b/nodejs.spec
index 15c81db..4907ae8 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,13 +1,45 @@
+%global with_debug 0
+
+# ARM builds currently break on the Debug builds, so we'll just
+# build the standard runtime until that gets sorted out.
+%ifarch %{arm} aarch64 %{power64}
+%global with_debug 0
+%endif
+
+# == Node.js Version ==
+%global nodejs_major 0
+%global nodejs_minor 10
+%global nodejs_patch 42
+%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+
+# == Bundled Dependency Versions ==
+# v8 - from deps/v8/src/version.cc
+%global v8_major 3
+%global v8_minor 14
+%global v8_build 5
+%global v8_patch 9
+# V8 presently breaks ABI at least every x.y release while never bumping SONAME
+%global v8_abi %{v8_major}.%{v8_minor}
+
+# c-ares - from deps/cares/include/ares_version.h
+%global c_ares_major 1
+%global c_ares_minor 9
+%global c_ares_patch 0
+
+# http-parser - from deps/http-parser/http_parser.h
+%global http_parser_major 1
+%global http_parser_minor 1
+
Name: nodejs
-Version: 0.10.36
-Release: 5%{?dist}
+Version: %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
URL:
http://nodejs.org/
# Exclusive archs must match v8
-ExclusiveArch: %{ix86} x86_64 %{arm}
+ExclusiveArch: %{nodejs_arches}
# nodejs bundles openssl, but we use the system version in Fedora
# because openssl contains prohibited code, we remove openssl completely from
@@ -28,30 +60,20 @@ Patch1: nodejs-disable-gyp-deps.patch
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch2: nodejs-use-system-certs.patch
-# The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
-# be done in a stable distribution release. This build of nodejs will behave as
-# if NODE_INVALID_UTF8 was set. For more information on the implications, see:
-#
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
-Patch3: nodejs-revert-utf8-v8.patch
-Patch4: nodejs-revert-utf8-node.patch
-
-# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
-# so we need to be more explicit until spot fixes that
-%global v8_ge 1:3.14.5.10-17
-%global v8_lt 1:3.15
-%global v8_abi 3.14
-
-BuildRequires: v8-devel >= %{v8_ge}
-BuildRequires: http-parser-devel >= 2.0
+# V8 presently breaks ABI at least every x.y release while never bumping SONAME
+# Make sure to keep this in sync with deps/v8/srv/version.cc
+%global v8_major 3
+%global v8_minor 14
+%global v8_build 5
+%global v8_patch 9
+%global v8_abi %{v8_major}.%{v8_minor}
+
+BuildRequires: python-devel
BuildRequires: compat-libuv010-devel
-BuildRequires: c-ares-devel
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
-Requires: v8%{?_isa} >= %{v8_ge}
-Requires: v8%{?_isa} < %{v8_lt}
-
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -78,6 +100,19 @@ Conflicts: node <= 0.3.2-11
Provides: nodejs-punycode = 1.3.1
Provides: npm(punycode) = 1.3.1
+# Node.js has forked c-ares from upstream in an incompatible way, so we need
+# to carry the bundled version internally.
+# See
https://github.com/nodejs/node/commit/766d063e0578c0f7758c3a965c971763f43fec...
+# Keep this in sync with deps/cares/include/ares_version.h
+Provides: bundled(c-ares) = 1.9.0
+
+# Node.js is closely tied to the version of v8 that is used with it. It makes
+# sense to use the bundled version because upstream consistently breaks ABI
+# even in point releases. Node.js upstream has now removed the ability to build
+# against a shared system version entirely.
+# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
+Provides: bundled(v8) = %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
+
%description
Node.js is a platform built on Chrome's JavaScript runtime
@@ -91,7 +126,7 @@ Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} == %{version}-%{release}
Requires: compat-libuv010-devel%{?_isa} http-parser-devel%{?_isa} v8-devel%{?_isa}
-Requires: openssl-devel%{?_isa} c-ares-devel%{?_isa} zlib-devel%{?_isa}
+Requires: openssl-devel%{?_isa} zlib-devel%{?_isa}
Requires: nodejs-packaging
%description devel
@@ -111,35 +146,35 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies
%patch1 -p1
-rm -rf deps
+rm -rf deps/npm \
+ deps/uv \
+ deps/zlib
# remove bundled CA certificates
%patch2 -p1
rm -f src/node_root_certs.h
-%patch3 -p1
-%patch4 -p1
-
%build
# build with debugging symbols and add defines from libuv (#892601)
-export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
-export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
+export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
+export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
./configure --prefix=%{_prefix} \
- --shared-v8 \
--shared-openssl \
--shared-zlib \
- --shared-cares \
--shared-libuv \
--shared-libuv-libname=:libuv.so.0.10 \
--shared-libuv-includes=%{_includedir}/compat-libuv010 \
- --shared-http-parser \
--without-npm \
--without-dtrace
+%if %{?with_debug} == 1
# Setting BUILDTYPE=Debug builds both release and debug binaries
make BUILDTYPE=Debug %{?_smp_mflags}
+%else
+make BUILDTYPE=Release %{?_smp_mflags}
+%endif
%install
rm -rf %{buildroot}
@@ -152,8 +187,10 @@ rm -rf %{buildroot}/%{_prefix}/lib/dtrace
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
+%if %{?with_debug} == 1
# Install the debug binary and set its permissions
install -Dpm0755 out/Debug/node %{buildroot}/%{_bindir}/node_g
+%endif
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
@@ -193,7 +230,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/AUTHORS
%files devel
+%if %{?with_debug} == 1
%{_bindir}/node_g
+%endif
%{_includedir}/node
%{_datadir}/node/common.gypi
@@ -202,6 +241,15 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 0.10.42-1
+- Update to Node.js 0.10.42
+-
https://github.com/nodejs/node/blob/v0.10.42/ChangeLog
+- Bundle v8, c-ares and http-parser with Node.js
+- Drop patches that revert v8 UTF8 change
+- Resolves: RHBZ#1306203
+- Resolves: RHBZ#1306200
+- Resolves: RHBZ#1306207
+
* Wed Jun 17 2015 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.36-5
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
diff --git a/sources b/sources
index e233927..00d25f8 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-f1a50d8a1f6e09659b5c2aad00867ae2 node-v0.10.36-stripped.tar.gz
+797349ff0cb1c9316d1800acf3d1394f node-v0.10.42-stripped.tar.gz
commit 6b9e50424cdaa5b57b5786a0800742173380c4f9
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Feb 10 10:12:55 2016 -0500
Fix nodejs-abi to be 4.3
- Clean up bundled versions in spec file
diff --git a/nodejs.spec b/nodejs.spec
index 8445cca..d917c3c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -6,9 +6,34 @@
%global with_debug 0
%endif
+# == Node.js Version ==
+%global nodejs_major 4
+%global nodejs_minor 3
+%global nodejs_patch 0
+%global nodejs_abi %{nodejs_major}.%{nodejs_minor}
+
+# == Bundled Dependency Versions ==
+# v8 - from deps/v8/include/v8-version.h
+%global v8_major 4
+%global v8_minor 5
+%global v8_build 103
+%global v8_patch 35
+# V8 presently breaks ABI at least every x.y release while never bumping SONAME
+%global v8_abi %{v8_major}.%{v8_minor}
+
+# c-ares - from deps/cares/include/ares_version.h
+%global c_ares_major 1
+%global c_ares_minor 10
+%global c_ares_patch 1
+
+# http-parser - from deps/http-parser/http_parser.h
+%global http_parser_major 2
+%global http_parser_minor 5
+%global http_parser_patch 1
+
Name: nodejs
-Version: 4.3.0
-Release: 1%{?dist}
+Version: %{nodejs_major}.%{nodejs_minor}.%{nodejs_patch}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -35,9 +60,6 @@ Patch1: nodejs-disable-gyp-deps.patch
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch2: nodejs-use-system-certs.patch
-# V8 presently breaks ABI at least every x.y release while never bumping SONAME
-%global v8_abi 4.5
-
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1.7.5
Requires: libuv >= 1.7.5
@@ -50,7 +72,6 @@ Requires: ca-certificates
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
#break when binary compatibility is broken
-%global nodejs_abi 4.2
Provides: nodejs(abi) = %{nodejs_abi}
Provides: nodejs(v8-abi) = %{v8_abi}
@@ -75,18 +96,18 @@ Provides: npm(punycode) = 1.3.2
# Node.js has forked c-ares from upstream in an incompatible way, so we need
# to carry the bundled version internally.
# See
https://github.com/nodejs/node/commit/766d063e0578c0f7758c3a965c971763f43fec...
-Provides: bundled(c-ares) = 1.10.1
+Provides: bundled(c-ares) = %{c_ares_major}.%{c_ares_minor}.%{c_ares_patch}
# Node.js is closely tied to the version of v8 that is used with it. It makes
# sense to use the bundled version because upstream consistently breaks ABI
# even in point releases. Node.js upstream has now removed the ability to build
# against a shared system version entirely.
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
-Provides: bundled(v8) = 4.5.103.35
+Provides: bundled(v8) = %{v8_major}.%{v8_minor}.%{v8_build}.%{v8_patch}
# Node.js and http-parser share an upstream. The http-parser upstream does not
# do releases often and is almost always far behind the bundled version
-Provides: bundled(http-parser) = 2.5.1
+Provides: bundled(http-parser) = %{http_parser_major}.%{http_parser_minor}.%{http_parser_patch}
%description
Node.js is a platform built on Chrome's JavaScript runtime
@@ -219,6 +240,10 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Wed Feb 10 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-2
+- Fix nodejs-abi to be 4.3
+- Clean up bundled versions in spec file
+
* Tue Feb 09 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-1
- Update to 4.3.0 upstream LTS release
-
https://github.com/nodejs/node/blob/v4.3.0/CHANGELOG.md
commit 55352656f04411f9301a5fa1b06fb0a34ced8706
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Feb 9 20:18:29 2016 -0500
Update to 4.3.0 upstream LTS release
-
https://github.com/nodejs/node/blob/v4.3.0/CHANGELOG.md
- Switch to the bundled http-parser
- Build with -fno-delete-pointer-null-checks for GCC 6
diff --git a/.gitignore b/.gitignore
index 0934c0b..4bd6efa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -36,3 +36,4 @@
/node-v4.2.3-stripped.tar.gz
/node-v4.2.4-stripped.tar.gz
/node-v4.2.6-stripped.tar.gz
+/node-v4.3.0-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index ad1b5d2..8445cca 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,7 +7,7 @@
%endif
Name: nodejs
-Version: 4.2.6
+Version: 4.3.0
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -41,8 +41,6 @@ Patch2: nodejs-use-system-certs.patch
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1.7.5
Requires: libuv >= 1.7.5
-BuildRequires: http-parser-devel >= 2.6
-Requires: http-parser >= 2.6
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.2
@@ -86,6 +84,10 @@ Provides: bundled(c-ares) = 1.10.1
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
Provides: bundled(v8) = 4.5.103.35
+# Node.js and http-parser share an upstream. The http-parser upstream does not
+# do releases often and is almost always far behind the bundled version
+Provides: bundled(http-parser) = 2.5.1
+
%description
Node.js is a platform built on Chrome's JavaScript runtime
for easily building fast, scalable network applications.
@@ -118,8 +120,7 @@ The API documentation for the Node.js JavaScript runtime.
# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps/http_parser \
- deps/npm \
+rm -rf deps/npm \
deps/uv \
deps/zlib
@@ -130,14 +131,15 @@ rm -f src/node_root_certs.h
%build
# build with debugging symbols and add defines from libuv (#892601)
-export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
-export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
+# Node's v8 breaks with GCC 8 because of incorrect usage of methods on
+# NULL objects. We need to pass -fno-delete-null-pointer-checks
+export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
+export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-delete-null-pointer-checks'
./configure --prefix=%{_prefix} \
--shared-openssl \
--shared-zlib \
--shared-libuv \
- --shared-http-parser \
--without-npm \
--without-dtrace
@@ -217,6 +219,12 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Tue Feb 09 2016 Stephen Gallagher
sgallagh@redhat.com - 4.3.0-1
+- Update to 4.3.0 upstream LTS release
+-
https://github.com/nodejs/node/blob/v4.3.0/CHANGELOG.md
+- Switch to the bundled http-parser
+- Build with -fno-delete-pointer-null-checks for GCC 6
+
* Tue Feb 9 2016 Tom Hughes
tom@compton.nu - 4.2.6-1
- Update to 4.2.6 upstream release
diff --git a/sources b/sources
index 8e2d5d2..2f4acd5 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-23a29533052de7204adba545ab64928f node-v4.2.6-stripped.tar.gz
+675b21f124d85b42391e581d0071d92c node-v4.3.0-stripped.tar.gz
commit b68d4ecbf76e8aabfcfde8a45562cd9065eb71a0
Author: Tom Hughes
tom@compton.nu
Date: Tue Feb 9 07:19:24 2016 +0000
Update to 4.2.6 upstream release
diff --git a/.gitignore b/.gitignore
index c073935..0934c0b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -35,3 +35,4 @@
/node-v4.2.2-stripped.tar.gz
/node-v4.2.3-stripped.tar.gz
/node-v4.2.4-stripped.tar.gz
+/node-v4.2.6-stripped.tar.gz
diff --git a/nodejs-disable-gyp-deps.patch b/nodejs-disable-gyp-deps.patch
index 676b360..91f0f09 100644
--- a/nodejs-disable-gyp-deps.patch
+++ b/nodejs-disable-gyp-deps.patch
@@ -1,4 +1,4 @@
-From e23b2803b886fb6d001ebcc70aa29713561f316f Mon Sep 17 00:00:00 2001
+From 8a53e16138f7fa4371eebde91d3bf216285e75a0 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:35:29 -0500
Subject: [PATCH 1/2] disable running gyp files for bundled deps
@@ -8,12 +8,10 @@ Subject: [PATCH 1/2] disable running gyp files for bundled deps
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 02619fac98ddd7bd90648f6493ccf49fcf22c47b..981c3ce4daa8724547979d7646117182399b22db 100644
+index 94eb419..a2b682b 100644
--- a/Makefile
+++ b/Makefile
-@@ -47,11 +47,11 @@ $(NODE_EXE): config.gypi out/Makefile
-
- $(NODE_G_EXE): config.gypi out/Makefile
+@@ -49,7 +49,7 @@ $(NODE_G_EXE): config.gypi out/Makefile
$(MAKE) -C out BUILDTYPE=Debug V=$(V)
ln -fs out/Debug/$(NODE_EXE) $@
@@ -22,8 +20,6 @@ index 02619fac98ddd7bd90648f6493ccf49fcf22c47b..981c3ce4daa8724547979d7646117182
$(PYTHON) tools/gyp_node.py -f make
config.gypi: configure
- if [ -f $@ ]; then
- $(error Stale $@, please re-run ./configure)
--
-2.7.0
+2.5.0
diff --git a/nodejs-use-system-certs.patch b/nodejs-use-system-certs.patch
index 4e68fc6..c273884 100644
--- a/nodejs-use-system-certs.patch
+++ b/nodejs-use-system-certs.patch
@@ -1,4 +1,4 @@
-From 515a1619d3b13a7af52d58dee9a43b981e45c2bb Mon Sep 17 00:00:00 2001
+From 58c110a74377171587a6ef28a6d5dff1f29a7d52 Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:29:07 -0500
Subject: [PATCH 2/2] Do not bundle CA Certificates
@@ -22,12 +22,10 @@ Node.js 4.2
1 file changed, 8 insertions(+), 23 deletions(-)
diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index b03e6444ff8a3b4209d1e7806380e80566da243c..331c155aebfa0a42277dbe48e03a0b866b98bd06 100644
+index 7911ce9..60516ad 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
-@@ -125,11 +125,11 @@ struct ClearErrorOnReturn {
- };
-
+@@ -119,7 +119,7 @@ static X509_NAME *cnnic_ev_name =
static uv_mutex_t* locks;
const char* const root_certs[] = {
@@ -36,11 +34,7 @@ index b03e6444ff8a3b4209d1e7806380e80566da243c..331c155aebfa0a42277dbe48e03a0b86
};
X509_STORE* root_cert_store;
-
- // Just to generate static methods
-@@ -704,36 +704,21 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
- (void) &clear_error_on_return; // Silence compiler warning.
-
+@@ -763,32 +763,17 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
CHECK_EQ(sc->ca_store_, nullptr);
if (!root_cert_store) {
@@ -80,8 +74,6 @@ index b03e6444ff8a3b4209d1e7806380e80566da243c..331c155aebfa0a42277dbe48e03a0b86
}
- void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
- SecureContext* sc = Unwrap<SecureContext>(args.Holder());
--
-2.7.0
+2.5.0
diff --git a/nodejs.spec b/nodejs.spec
index 4251dc5..ad1b5d2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,8 +7,8 @@
%endif
Name: nodejs
-Version: 4.2.4
-Release: 5%{?dist}
+Version: 4.2.6
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -217,6 +217,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Tue Feb 9 2016 Tom Hughes
tom@compton.nu - 4.2.6-1
+- Update to 4.2.6 upstream release
+
* Thu Feb 04 2016 Fedora Release Engineering
releng@fedoraproject.org - 4.2.4-5
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
diff --git a/sources b/sources
index eb3803c..8e2d5d2 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-12d2042dd79c39c5365e36d55527542e node-v4.2.4-stripped.tar.gz
+23a29533052de7204adba545ab64928f node-v4.2.6-stripped.tar.gz
commit 3b104874f3ba180702e69950c7e7f18d073b3d61
Author: Fedora Release Engineering
releng@fedoraproject.org
Date: Thu Feb 4 09:24:55 2016 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
diff --git a/nodejs.spec b/nodejs.spec
index a671388..4251dc5 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
Name: nodejs
Version: 4.2.4
-Release: 4%{?dist}
+Release: 5%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -217,6 +217,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Thu Feb 04 2016 Fedora Release Engineering
releng@fedoraproject.org - 4.2.4-5
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
* Tue Jan 19 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-4
- Force a depdendency on the correct version of http-parser
commit d9467351a35e925de0ded669c16fc7c5b441a9cf
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Jan 19 12:21:54 2016 -0500
Force a depdendency on the correct version of http-parser
diff --git a/nodejs.spec b/nodejs.spec
index 762166f..a671388 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
Name: nodejs
Version: 4.2.4
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -42,6 +42,7 @@ BuildRequires: python-devel
BuildRequires: libuv-devel >= 1.7.5
Requires: libuv >= 1.7.5
BuildRequires: http-parser-devel >= 2.6
+Requires: http-parser >= 2.6
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.2
@@ -216,6 +217,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Tue Jan 19 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-4
+- Force a depdendency on the correct version of http-parser
+
* Tue Jan 19 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-3
- Force a dependency on the correct version of libuv
commit 61bfbbdc789117a238d23555ef4b6f2a9f4a0121
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Jan 19 08:36:53 2016 -0500
Force a dependency on the correct version of libuv
diff --git a/nodejs.spec b/nodejs.spec
index de00920..762166f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
Name: nodejs
Version: 4.2.4
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -40,6 +40,7 @@ Patch2: nodejs-use-system-certs.patch
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1.7.5
+Requires: libuv >= 1.7.5
BuildRequires: http-parser-devel >= 2.6
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
@@ -215,6 +216,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Tue Jan 19 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-3
+- Force a dependency on the correct version of libuv
+
* Mon Jan 18 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-2
- Fix Provides: for punycode
commit 52decf43f41739d09e39c45fe573fe2c8cfb2ded
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Jan 18 14:02:29 2016 -0500
Fix Provides: for punycode
diff --git a/nodejs.spec b/nodejs.spec
index 2408ad2..de00920 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -8,7 +8,7 @@
Name: nodejs
Version: 4.2.4
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -43,7 +43,7 @@ BuildRequires: libuv-devel >= 1.7.5
BuildRequires: http-parser-devel >= 2.6
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
-BuildRequires: openssl-devel >= 1:1.0.1
+BuildRequires: openssl-devel >= 1:1.0.2
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -68,8 +68,8 @@ Conflicts: node <= 0.3.2-12
# we don't need the seperate nodejs-punycode package, so we Provide it here so
# dependent packages don't need to override the dependency generator.
# See also: RHBZ#11511811
-Provides: nodejs-punycode = 1.3.1
-Provides: npm(punycode) = 1.3.1
+Provides: nodejs-punycode = 1.3.2
+Provides: npm(punycode) = 1.3.2
# Node.js has forked c-ares from upstream in an incompatible way, so we need
@@ -215,6 +215,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Mon Jan 18 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-2
+- Fix Provides: for punycode
+
* Wed Jan 13 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-1
- New upstream bugfix release 4.2.4
-
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
commit 54b36861f75dc32ea667311a9ba8bbfbeaaeaa55
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Jan 13 10:09:41 2016 -0500
New upstream bugfix release 4.2.4
-
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
diff --git a/.gitignore b/.gitignore
index 68d500d..c073935 100644
--- a/.gitignore
+++ b/.gitignore
@@ -34,3 +34,4 @@
/node-v0.10.36-stripped.tar.gz
/node-v4.2.2-stripped.tar.gz
/node-v4.2.3-stripped.tar.gz
+/node-v4.2.4-stripped.tar.gz
diff --git a/nodejs-disable-gyp-deps.patch b/nodejs-disable-gyp-deps.patch
index 23fe9ee..676b360 100644
--- a/nodejs-disable-gyp-deps.patch
+++ b/nodejs-disable-gyp-deps.patch
@@ -1,4 +1,4 @@
-From 34a6454fc02ae79362cc03f501bb08fb95495a1b Mon Sep 17 00:00:00 2001
+From e23b2803b886fb6d001ebcc70aa29713561f316f Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:35:29 -0500
Subject: [PATCH 1/2] disable running gyp files for bundled deps
@@ -25,5 +25,5 @@ index 02619fac98ddd7bd90648f6493ccf49fcf22c47b..981c3ce4daa8724547979d7646117182
if [ -f $@ ]; then
$(error Stale $@, please re-run ./configure)
--
-2.5.0
+2.7.0
diff --git a/nodejs-use-system-certs.patch b/nodejs-use-system-certs.patch
index 344356f..4e68fc6 100644
--- a/nodejs-use-system-certs.patch
+++ b/nodejs-use-system-certs.patch
@@ -1,4 +1,4 @@
-From 8bdb9e5d7dcde463d9664fc6a999c11a3048a673 Mon Sep 17 00:00:00 2001
+From 515a1619d3b13a7af52d58dee9a43b981e45c2bb Mon Sep 17 00:00:00 2001
From: Stephen Gallagher
sgallagh@redhat.com
Date: Tue, 1 Dec 2015 16:29:07 -0500
Subject: [PATCH 2/2] Do not bundle CA Certificates
@@ -22,7 +22,7 @@ Node.js 4.2
1 file changed, 8 insertions(+), 23 deletions(-)
diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index bd7314c9db902c59035b60ee5e2ebb4dc99a9a9f..ddc6f081136dd327e35d6326ba9835df7f834e70 100644
+index b03e6444ff8a3b4209d1e7806380e80566da243c..331c155aebfa0a42277dbe48e03a0b866b98bd06 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
@@ -125,11 +125,11 @@ struct ClearErrorOnReturn {
@@ -38,7 +38,7 @@ index bd7314c9db902c59035b60ee5e2ebb4dc99a9a9f..ddc6f081136dd327e35d6326ba9835df
X509_STORE* root_cert_store;
// Just to generate static methods
-@@ -715,36 +715,21 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+@@ -704,36 +704,21 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
(void) &clear_error_on_return; // Silence compiler warning.
CHECK_EQ(sc->ca_store_, nullptr);
@@ -83,5 +83,5 @@ index bd7314c9db902c59035b60ee5e2ebb4dc99a9a9f..ddc6f081136dd327e35d6326ba9835df
void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
SecureContext* sc = Unwrap<SecureContext>(args.Holder());
--
-2.5.0
+2.7.0
diff --git a/nodejs.spec b/nodejs.spec
index 4c3e329..2408ad2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -7,8 +7,8 @@
%endif
Name: nodejs
-Version: 4.2.3
-Release: 2%{?dist}
+Version: 4.2.4
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -215,6 +215,10 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Wed Jan 13 2016 Stephen Gallagher
sgallagh@redhat.com - 4.2.4-1
+- New upstream bugfix release 4.2.4
+-
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
+
* Fri Dec 04 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.3-2
- Add %%with_debug variable to spec file
The debug build is not supported on all architectures.
diff --git a/sources b/sources
index 20fa923..eb3803c 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-2dad5363627c0059ce262edb91157e2b node-v4.2.3-stripped.tar.gz
+12d2042dd79c39c5365e36d55527542e node-v4.2.4-stripped.tar.gz
commit 34eeb41274450a3dfafb879e0002e2d98251052a
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Dec 4 11:31:37 2015 -0500
Add %with_debug variable to spec file
The debug build is not supported on all architectures.
diff --git a/nodejs.spec b/nodejs.spec
index 766c101..4c3e329 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,14 @@
+%global with_debug 1
+
+# ARM builds currently break on the Debug builds, so we'll just
+# build the standard runtime until that gets sorted out.
+%ifarch %{arm} aarch64 %{power64}
+%global with_debug 0
+%endif
+
Name: nodejs
Version: 4.2.3
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -131,12 +139,10 @@ export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
--without-npm \
--without-dtrace
-%ifnarch %{arm}
+%if %{?with_debug} == 1
# Setting BUILDTYPE=Debug builds both release and debug binaries
make BUILDTYPE=Debug %{?_smp_mflags}
%else
-# ARM builds currently break on the Debug builds, so we'll just
-# build the standard runtime until that gets sorted out.
make BUILDTYPE=Release %{?_smp_mflags}
%endif
@@ -151,7 +157,7 @@ rm -rf %{buildroot}/%{_prefix}/lib/dtrace
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
-%ifnarch %{arm}
+%if %{?with_debug} == 1
# Install the debug binary and set its permissions
install -Dpm0755 out/Debug/node %{buildroot}/%{_bindir}/node_g
%endif
@@ -197,7 +203,7 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%doc ROADMAP.md WORKING_GROUPS.md
%files devel
-%ifnarch %{arm}
+%if %{?with_debug} == 1
%{_bindir}/node_g
%endif
%{_includedir}/node
@@ -209,6 +215,10 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Fri Dec 04 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.3-2
+- Add %%with_debug variable to spec file
+ The debug build is not supported on all architectures.
+
* Fri Dec 04 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.3-1
- New upstream security release 4.2.3
-
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
commit 0b2b9b17d54bd1e8ff2c23346252742da3073d41
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Fri Dec 4 08:25:35 2015 -0500
New upstream security release 4.2.3
-
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
- Fix incorrect v8 version
diff --git a/.gitignore b/.gitignore
index cca4b28..68d500d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -33,3 +33,4 @@
/node-v0.10.33-stripped.tar.gz
/node-v0.10.36-stripped.tar.gz
/node-v4.2.2-stripped.tar.gz
+/node-v4.2.3-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index fd17b96..766c101 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
-Version: 4.2.2
-Release: 4%{?dist}
+Version: 4.2.3
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -28,7 +28,7 @@ Patch1: nodejs-disable-gyp-deps.patch
Patch2: nodejs-use-system-certs.patch
# V8 presently breaks ABI at least every x.y release while never bumping SONAME
-%global v8_abi 4.6
+%global v8_abi 4.5
BuildRequires: python-devel
BuildRequires: libuv-devel >= 1.7.5
@@ -74,7 +74,7 @@ Provides: bundled(c-ares) = 1.10.1
# even in point releases. Node.js upstream has now removed the ability to build
# against a shared system version entirely.
# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
-Provides: bundled(v8) = 4.6.85
+Provides: bundled(v8) = 4.5.103.35
%description
Node.js is a platform built on Chrome's JavaScript runtime
@@ -209,6 +209,11 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Fri Dec 04 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.3-1
+- New upstream security release 4.2.3
+-
https://github.com/nodejs/node/blob/v4.2.3/CHANGELOG.md
+- Fix incorrect v8 version
+
* Wed Dec 2 2015 Peter Robinson
pbrobinson@fedoraproject.org 4.2.2-4
- Use nodejs_arches macro for arch definition (add aarch64 and power64 platforms)
diff --git a/sources b/sources
index 78914f6..20fa923 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-32d052698f6059e64eee5f06532e27fd node-v4.2.2-stripped.tar.gz
+2dad5363627c0059ce262edb91157e2b node-v4.2.3-stripped.tar.gz
commit 74d1356567b291f1df3895c9a15ee8cf9e01ffc5
Author: Peter Robinson
pbrobinson@gmail.com
Date: Thu Dec 3 03:37:09 2015 +0000
Use nodejs_arches macro for arch definition (add aarch64 and power64 platforms)
diff --git a/nodejs.spec b/nodejs.spec
index 444a369..fd17b96 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,13 +1,12 @@
Name: nodejs
Version: 4.2.2
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
URL:
http://nodejs.org/
-# Exclusive archs must match v8
-ExclusiveArch: %{ix86} x86_64 %{arm}
+ExclusiveArch: %{nodejs_arches}
# nodejs bundles openssl, but we use the system version in Fedora
# because openssl contains prohibited code, we remove openssl completely from
@@ -210,6 +209,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Wed Dec 2 2015 Peter Robinson
pbrobinson@fedoraproject.org 4.2.2-4
+- Use nodejs_arches macro for arch definition (add aarch64 and power64 platforms)
+
* Wed Dec 02 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-3
- Fix nodejs_abi version
- Also ensure that we are building against the correct libuv
commit a6133be8993b9c30a1f95cadfdea1b4c0e87a214
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Dec 2 11:22:31 2015 -0500
Fix nodejs_abi version
- Also ensure that we are building against the correct libuv
diff --git a/nodejs.spec b/nodejs.spec
index 1442e06..444a369 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 4.2.2
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -43,7 +43,7 @@ Requires: ca-certificates
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
#break when binary compatibility is broken
-%global nodejs_abi 0.10
+%global nodejs_abi 4.2
Provides: nodejs(abi) = %{nodejs_abi}
Provides: nodejs(v8-abi) = %{v8_abi}
@@ -128,8 +128,6 @@ export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
--shared-openssl \
--shared-zlib \
--shared-libuv \
- --shared-libuv-libname=:libuv.so.0.10 \
- --shared-libuv-includes=%{_includedir}/compat-libuv010 \
--shared-http-parser \
--without-npm \
--without-dtrace
@@ -212,6 +210,10 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
+* Wed Dec 02 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-3
+- Fix nodejs_abi version
+- Also ensure that we are building against the correct libuv
+
* Wed Dec 02 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-2
- Disable debug build for ARMv7 since it fails to build
commit 64bb83cc8dae22c49108e9ff5ed1d662d6fcc841
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Wed Dec 2 09:45:45 2015 -0500
Disable debug build for ARMv7 since it fails to build
diff --git a/nodejs.spec b/nodejs.spec
index 5e02a86..1442e06 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 4.2.2
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -134,8 +134,14 @@ export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
--without-npm \
--without-dtrace
+%ifnarch %{arm}
# Setting BUILDTYPE=Debug builds both release and debug binaries
make BUILDTYPE=Debug %{?_smp_mflags}
+%else
+# ARM builds currently break on the Debug builds, so we'll just
+# build the standard runtime until that gets sorted out.
+make BUILDTYPE=Release %{?_smp_mflags}
+%endif
%install
rm -rf %{buildroot}
@@ -148,8 +154,10 @@ rm -rf %{buildroot}/%{_prefix}/lib/dtrace
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
+%ifnarch %{arm}
# Install the debug binary and set its permissions
install -Dpm0755 out/Debug/node %{buildroot}/%{_bindir}/node_g
+%endif
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
@@ -192,7 +200,9 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%doc ROADMAP.md WORKING_GROUPS.md
%files devel
+%ifnarch %{arm}
%{_bindir}/node_g
+%endif
%{_includedir}/node
%{_datadir}/node/common.gypi
%{_pkgdocdir}/gdbinit
@@ -202,7 +212,10 @@ mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
%{_pkgdocdir}/html
%changelog
-* Tue Dec 01 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-0.1
+* Wed Dec 02 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-2
+- Disable debug build for ARMv7 since it fails to build
+
+* Tue Dec 01 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-1
- Upgrade to Node.js 4.2.2 (LTS)
* Wed Jun 17 2015 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.36-5
commit f2c3b615ec3a500beb7ba272a4c2295dd2c187bc
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Dec 1 19:48:58 2015 -0500
Upgrade to Node.js 4.2.2 (LTS)
diff --git a/.gitignore b/.gitignore
index 27559e5..cca4b28 100644
--- a/.gitignore
+++ b/.gitignore
@@ -32,3 +32,4 @@
/node-v0.10.32-stripped.tar.gz
/node-v0.10.33-stripped.tar.gz
/node-v0.10.36-stripped.tar.gz
+/node-v4.2.2-stripped.tar.gz
diff --git a/nodejs-disable-gyp-deps.patch b/nodejs-disable-gyp-deps.patch
index ae48d24..23fe9ee 100644
--- a/nodejs-disable-gyp-deps.patch
+++ b/nodejs-disable-gyp-deps.patch
@@ -1,26 +1,29 @@
-From 4464455834276c845a63fede515cb62655afb2da Mon Sep 17 00:00:00 2001
-From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
-Date: Tue, 12 Nov 2013 14:51:03 -0700
-Subject: [PATCH] disable running gyp files for bundled deps
+From 34a6454fc02ae79362cc03f501bb08fb95495a1b Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Tue, 1 Dec 2015 16:35:29 -0500
+Subject: [PATCH 1/2] disable running gyp files for bundled deps
-these aren't used in Fedora
---
Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
-index 8177017..81d150f 100644
+index 02619fac98ddd7bd90648f6493ccf49fcf22c47b..981c3ce4daa8724547979d7646117182399b22db 100644
--- a/Makefile
+++ b/Makefile
-@@ -43,7 +43,7 @@ node_g: config.gypi out/Makefile
- ln -fs out/Debug/node $@
- endif
+@@ -47,11 +47,11 @@ $(NODE_EXE): config.gypi out/Makefile
--out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/common.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
-+out/Makefile: common.gypi node.gyp config.gypi
- ifeq ($(USE_NINJA),1)
- touch out/Makefile
- $(PYTHON) tools/gyp_node.py -f ninja
+ $(NODE_G_EXE): config.gypi out/Makefile
+ $(MAKE) -C out BUILDTYPE=Debug V=$(V)
+ ln -fs out/Debug/$(NODE_EXE) $@
+
+-out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
++out/Makefile: common.gypi deps/v8/build/toolchain.gypi deps/v8/build/features.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
+ $(PYTHON) tools/gyp_node.py -f make
+
+ config.gypi: configure
+ if [ -f $@ ]; then
+ $(error Stale $@, please re-run ./configure)
--
-1.8.4.2
+2.5.0
diff --git a/nodejs-revert-utf8-node.patch b/nodejs-revert-utf8-node.patch
deleted file mode 100644
index a5a3d59..0000000
--- a/nodejs-revert-utf8-node.patch
+++ /dev/null
@@ -1,689 +0,0 @@
-From a9e60792a9c4044e29ec7bbb88419d9283044b86 Mon Sep 17 00:00:00 2001
-From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
-Date: Wed, 18 Jun 2014 23:19:19 -0700
-Subject: [PATCH] Revert "src: replace usage of String::Utf8Value"
-
-This reverts commit 535c7777ac674ba86cf93c44824e07b0e23ea8c4.
----
- src/cares_wrap.cc | 8 ++---
- src/fs_event_wrap.cc | 3 +-
- src/node.cc | 42 +++++++++++++-------------
- src/node_crypto.cc | 31 ++++++++++---------
- src/node_dtrace.cc | 6 ++--
- src/node_file.cc | 37 +++++++++++------------
- src/node_stat_watcher.cc | 3 +-
- src/process_wrap.cc | 9 +++---
- src/udp_wrap.cc | 9 +++---
- src/util.h | 78 ------------------------------------------------
- 10 files changed, 68 insertions(+), 158 deletions(-)
- delete mode 100644 src/util.h
-
-diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc
-index 321e144..b7ba828 100644
---- a/src/cares_wrap.cc
-+++ b/src/cares_wrap.cc
-@@ -741,7 +739,7 @@ static Handle<Value> Query(const Arguments& args) {
- // object reference, causing wrap->GetObject() to return undefined.
- Local<Object> object = Local<Object>::New(wrap->GetObject());
-
-- node::Utf8Value name(args[0]);
-+ String::Utf8Value name(args[0]);
-
- int r = wrap->Send(*name);
- if (r) {
-@@ -770,7 +768,7 @@ static Handle<Value> QueryWithFamily(const Arguments& args) {
- // object reference, causing wrap->GetObject() to return undefined.
- Local<Object> object = Local<Object>::New(wrap->GetObject());
-
-- node::Utf8Value name(args[0]);
-+ String::Utf8Value name(args[0]);
- int family = args[1]->Int32Value();
-
- int r = wrap->Send(*name, family);
-@@ -900,7 +898,7 @@ static Handle<Value> IsIP(const Arguments& args) {
- static Handle<Value> GetAddrInfo(const Arguments& args) {
- HandleScope scope;
-
-- node::Utf8Value hostname(args[0]);
-+ String::Utf8Value hostname(args[0]);
-
- int fam = AF_UNSPEC;
- if (args[1]->IsInt32()) {
-diff --git a/src/fs_event_wrap.cc b/src/fs_event_wrap.cc
-index fc54283..7e3eb8c 100644
---- a/src/fs_event_wrap.cc
-+++ b/src/fs_event_wrap.cc
-@@ -21,7 +21,6 @@
-
- #include "node.h"
- #include "handle_wrap.h"
--#include "util.h"
-
- #include <stdlib.h>
-
-@@ -98,7 +97,7 @@ Handle<Value> FSEventWrap::Start(const Arguments& args) {
- return ThrowException(Exception::TypeError(String::New("Bad arguments")));
- }
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- int r = uv_fs_event_init(uv_default_loop(), &wrap->handle_, *path, OnEvent, 0);
- if (r == 0) {
-diff --git a/src/node.cc b/src/node.cc
-index e9696cd..8257604 100644
---- a/src/node.cc
-+++ b/src/node.cc
-@@ -1102,7 +1100,7 @@ enum encoding ParseEncoding(Handle<Value> encoding_v, enum encoding _default) {
-
- if (!encoding_v->IsString()) return _default;
-
-- node::Utf8Value encoding(encoding_v);
-+ String::Utf8Value encoding(encoding_v);
-
- if (strcasecmp(*encoding, "utf8") == 0) {
- return UTF8;
-@@ -1202,12 +1200,12 @@ void DisplayExceptionLine (TryCatch &try_catch) {
-
- if (!message.IsEmpty()) {
- // Print (filename):(line number): (message).
-- node::Utf8Value filename(message->GetScriptResourceName());
-+ String::Utf8Value filename(message->GetScriptResourceName());
- const char* filename_string = *filename;
- int linenum = message->GetLineNumber();
- fprintf(stderr, "%s:%i\n", filename_string, linenum);
- // Print line of source code.
-- node::Utf8Value sourceline(message->GetSourceLine());
-+ String::Utf8Value sourceline(message->GetSourceLine());
- const char* sourceline_string = *sourceline;
-
- // Because of how node modules work, all scripts are wrapped with a
-@@ -1254,7 +1252,7 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
-
- if (show_line) DisplayExceptionLine(try_catch);
-
-- node::Utf8Value trace(try_catch.StackTrace());
-+ String::Utf8Value trace(try_catch.StackTrace());
-
- // range errors have a trace member set to undefined
- if (trace.length() > 0 && !try_catch.StackTrace()->IsUndefined()) {
-@@ -1269,11 +1267,11 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
- !(er->ToObject()->Get(String::New("name"))->IsUndefined());
-
- if (isErrorObject) {
-- node::Utf8Value name(er->ToObject()->Get(String::New("name")));
-+ String::Utf8Value name(er->ToObject()->Get(String::New("name")));
- fprintf(stderr, "%s: ", *name);
- }
-
-- node::Utf8Value msg(!isErrorObject ? er
-+ String::Utf8Value msg(!isErrorObject ? er
- : er->ToObject()->Get(String::New("message")));
- fprintf(stderr, "%s\n", *msg);
- }
-@@ -1355,7 +1353,7 @@ static Handle<Value> Chdir(const Arguments& args) {
- return ThrowException(Exception::Error(String::New("Bad argument.")));
- }
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- uv_err_t r = uv_chdir(*path);
-
-@@ -1406,7 +1404,7 @@ static Handle<Value> Umask(const Arguments& args) {
- oct = args[0]->Uint32Value();
- } else {
- oct = 0;
-- node::Utf8Value str(args[0]);
-+ String::Utf8Value str(args[0]);
-
- // Parse the octal string.
- for (int i = 0; i < str.length(); i++) {
-@@ -1512,7 +1510,7 @@ static uid_t uid_by_name(Handle<Value> value) {
- if (value->IsUint32()) {
- return static_cast<uid_t>(value->Uint32Value());
- } else {
-- node::Utf8Value name(value);
-+ String::Utf8Value name(value);
- return uid_by_name(*name);
- }
- }
-@@ -1522,7 +1520,7 @@ static gid_t gid_by_name(Handle<Value> value) {
- if (value->IsUint32()) {
- return static_cast<gid_t>(value->Uint32Value());
- } else {
-- node::Utf8Value name(value);
-+ String::Utf8Value name(value);
- return gid_by_name(*name);
- }
- }
-@@ -1665,7 +1663,7 @@ static Handle<Value> InitGroups(const Arguments& args) {
- return ThrowTypeError("argument 2 must be a number or a string");
- }
-
-- node::Utf8Value arg0(args[0]);
-+ String::Utf8Value arg0(args[0]);
- gid_t extra_group;
- bool must_free;
- char* user;
-@@ -1826,7 +1824,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
- }
-
- Local<Object> module = args[0]->ToObject(); // Cast
-- node::Utf8Value filename(args[1]); // Cast
-+ String::Utf8Value filename(args[1]); // Cast
-
- if (exports_symbol.IsEmpty()) {
- exports_symbol = NODE_PSYMBOL("exports");
-@@ -1842,7 +1840,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
- return ThrowException(Exception::Error(errmsg));
- }
-
-- node::Utf8Value path(args[1]);
-+ String::Utf8Value path(args[1]);
- base = *path;
-
- /* Find the shared library filename within the full path. */
-@@ -1961,7 +1959,7 @@ static Handle<Value> Binding(const Arguments& args) {
- HandleScope scope;
-
- Local<String> module = args[0]->ToString();
-- node::Utf8Value module_v(module);
-+ String::Utf8Value module_v(module);
- node_module_struct* modp;
-
- if (binding_cache.IsEmpty()) {
-@@ -2020,7 +2018,7 @@ static void ProcessTitleSetter(Local<String> property,
- Local<Value> value,
- const AccessorInfo& info) {
- HandleScope scope;
-- node::Utf8Value title(value);
-+ String::Utf8Value title(value);
- // TODO: protect with a lock
- uv_set_process_title(*title);
- }
-@@ -2030,7 +2028,7 @@ static Handle<Value> EnvGetter(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-+ String::Utf8Value key(property);
- const char* val = getenv(*key);
- if (val) {
- return scope.Close(String::New(val));
-@@ -2059,8 +2057,8 @@ static Handle<Value> EnvSetter(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-- node::Utf8Value val(value);
-+ String::Utf8Value key(property);
-+ String::Utf8Value val(value);
- setenv(*key, *val, 1);
- #else // _WIN32
- String::Value key(property);
-@@ -2080,7 +2078,7 @@ static Handle<Integer> EnvQuery(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-+ String::Utf8Value key(property);
- if (getenv(*key)) {
- return scope.Close(Integer::New(0));
- }
-@@ -2108,7 +2106,7 @@ static Handle<Boolean> EnvDeleter(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-+ String::Utf8Value key(property);
- if (!getenv(*key)) return False();
- unsetenv(*key); // can't check return value, it's void on some platforms
- return True();
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 46faba2..0ae1f8a 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -242,7 +241,7 @@ Handle<Value> SecureContext::Init(const Arguments& args) {
- OPENSSL_CONST SSL_METHOD *method = SSLv23_method();
-
- if (args.Length() == 1 && args[0]->IsString()) {
-- node::Utf8Value sslmethod(args[0]);
-+ String::Utf8Value sslmethod(args[0]);
-
- if (strcmp(*sslmethod, "SSLv2_method") == 0) {
- #ifndef OPENSSL_NO_SSL2
-@@ -362,7 +361,7 @@ static BIO* LoadBIO (Handle<Value> v) {
- int r = -1;
-
- if (v->IsString()) {
-- node::Utf8Value s(v);
-+ String::Utf8Value s(v);
- r = BIO_write(bio, *s, s.length());
- } else if (Buffer::HasInstance(v)) {
- char* buffer_data = Buffer::Data(v);
-@@ -414,7 +413,7 @@ Handle<Value> SecureContext::SetKey(const Arguments& args) {
- BIO *bio = LoadBIO(args[0]);
- if (!bio) return False();
-
-- node::Utf8Value passphrase(args[1]);
-+ String::Utf8Value passphrase(args[1]);
-
- EVP_PKEY* key = PEM_read_bio_PrivateKey(bio, NULL, NULL,
- len == 1 ? NULL : *passphrase);
-@@ -644,7 +643,7 @@ Handle<Value> SecureContext::SetCiphers(const Arguments& args) {
- return ThrowException(Exception::TypeError(String::New("Bad parameter")));
- }
-
-- node::Utf8Value ciphers(args[0]);
-+ String::Utf8Value ciphers(args[0]);
- SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
-
- return True();
-@@ -673,7 +672,7 @@ Handle<Value> SecureContext::SetSessionIdContext(const Arguments& args) {
- return ThrowException(Exception::TypeError(String::New("Bad parameter")));
- }
-
-- node::Utf8Value sessionIdContext(args[0]);
-+ String::Utf8Value sessionIdContext(args[0]);
- const unsigned char* sid_ctx = (const unsigned char*) *sessionIdContext;
- unsigned int sid_ctx_len = sessionIdContext.length();
-
-@@ -1281,7 +1280,7 @@ Handle<Value> Connection::New(const Arguments& args) {
- if (is_server) {
- SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
- } else {
-- node::Utf8Value servername(args[2]);
-+ String::Utf8Value servername(args[2]);
- SSL_set_tlsext_host_name(p->ssl_, *servername);
- }
- #endif
-@@ -2234,7 +2233,7 @@ class Cipher : public ObjectWrap {
- ssize_t key_written = DecodeWrite(key_buf, key_buf_len, args[1], BINARY);
- assert(key_written == key_buf_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->CipherInit(*cipherType, key_buf, key_buf_len);
-
-@@ -2285,7 +2284,7 @@ class Cipher : public ObjectWrap {
- ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
- assert(iv_written == iv_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->CipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
-
-@@ -2544,7 +2543,7 @@ class Decipher : public ObjectWrap {
- ssize_t key_written = DecodeWrite(key_buf, key_len, args[1], BINARY);
- assert(key_written == key_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->DecipherInit(*cipherType, key_buf,key_len);
-
-@@ -2595,7 +2594,7 @@ class Decipher : public ObjectWrap {
- ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
- assert(iv_written == iv_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->DecipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
-
-@@ -2776,7 +2775,7 @@ class Hmac : public ObjectWrap {
- return ThrowException(exception);
- }
-
-- node::Utf8Value hashType(args[0]);
-+ String::Utf8Value hashType(args[0]);
-
- bool r;
-
-@@ -2921,7 +2920,7 @@ class Hash : public ObjectWrap {
- "Must give hashtype string as argument")));
- }
-
-- node::Utf8Value hashType(args[0]);
-+ String::Utf8Value hashType(args[0]);
-
- Hash *hash = new Hash();
- if (!hash->HashInit(*hashType)) {
-@@ -3095,7 +3094,7 @@ class Sign : public ObjectWrap {
- "Must give signtype string as argument")));
- }
-
-- node::Utf8Value signType(args[0]);
-+ String::Utf8Value signType(args[0]);
-
- bool r = sign->SignInit(*signType);
-
-@@ -3328,7 +3327,7 @@ class Verify : public ObjectWrap {
- "Must give verifytype string as argument")));
- }
-
-- node::Utf8Value verifyType(args[0]);
-+ String::Utf8Value verifyType(args[0]);
-
- bool r = verify->VerifyInit(*verifyType);
-
-@@ -3511,7 +3510,7 @@ class DiffieHellman : public ObjectWrap {
- String::New("No group name given")));
- }
-
-- node::Utf8Value group_name(args[0]);
-+ String::Utf8Value group_name(args[0]);
-
- modp_group* it = modp_groups;
-
-diff --git a/src/node_dtrace.cc b/src/node_dtrace.cc
-index 0b2d0f4..4b851e3 100644
---- a/src/node_dtrace.cc
-+++ b/src/node_dtrace.cc
-@@ -68,7 +66,7 @@ using namespace v8;
- return (ThrowException(Exception::Error(String::New("expected " \
- "object for " #obj " to contain string member " #member)))); \
- } \
-- node::Utf8Value _##member(obj->Get(String::New(#member))); \
-+ String::Utf8Value _##member(obj->Get(String::New(#member))); \
- if ((*(const char **)valp = *_##member) == NULL) \
- *(const char **)valp = "<unknown>";
-
-@@ -243,7 +241,7 @@ Handle<Value> DTRACE_HTTP_SERVER_REQUEST(const Arguments& args) {
- "object for request to contain string member headers"))));
-
- Local<Value> strfwdfor = headers->Get(String::New("x-forwarded-for"));
-- node::Utf8Value fwdfor(strfwdfor);
-+ String::Utf8Value fwdfor(strfwdfor);
-
- if (!strfwdfor->IsString() || (req.forwardedFor = *fwdfor) == NULL)
- req.forwardedFor = const_cast<char*>("");
-diff --git a/src/node_file.cc b/src/node_file.cc
-index 3c35e0b..f665b19 100644
---- a/src/node_file.cc
-+++ b/src/node_file.cc
-@@ -404,7 +403,7 @@ static Handle<Value> Stat(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(stat, args[1], *path)
-@@ -421,7 +420,7 @@ static Handle<Value> LStat(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(lstat, args[1], *path)
-@@ -459,12 +458,12 @@ static Handle<Value> Symlink(const Arguments& args) {
- if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
- if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
-
-- node::Utf8Value dest(args[0]);
-- node::Utf8Value path(args[1]);
-+ String::Utf8Value dest(args[0]);
-+ String::Utf8Value path(args[1]);
- int flags = 0;
-
- if (args[2]->IsString()) {
-- node::Utf8Value mode(args[2]);
-+ String::Utf8Value mode(args[2]);
- if (strcmp(*mode, "dir") == 0) {
- flags |= UV_FS_SYMLINK_DIR;
- } else if (strcmp(*mode, "junction") == 0) {
-@@ -492,8 +491,8 @@ static Handle<Value> Link(const Arguments& args) {
- if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
- if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
-
-- node::Utf8Value orig_path(args[0]);
-- node::Utf8Value new_path(args[1]);
-+ String::Utf8Value orig_path(args[0]);
-+ String::Utf8Value new_path(args[1]);
-
- if (args[2]->IsFunction()) {
- ASYNC_DEST_CALL(link, args[2], *new_path, *orig_path, *new_path)
-@@ -509,7 +508,7 @@ static Handle<Value> ReadLink(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(readlink, args[1], *path)
-@@ -528,8 +527,8 @@ static Handle<Value> Rename(const Arguments& args) {
- if (!args[0]->IsString()) return TYPE_ERROR("old path must be a string");
- if (!args[1]->IsString()) return TYPE_ERROR("new path must be a string");
-
-- node::Utf8Value old_path(args[0]);
-- node::Utf8Value new_path(args[1]);
-+ String::Utf8Value old_path(args[0]);
-+ String::Utf8Value new_path(args[1]);
-
- if (args[2]->IsFunction()) {
- ASYNC_DEST_CALL(rename, args[2], *new_path, *old_path, *new_path)
-@@ -599,7 +598,7 @@ static Handle<Value> Unlink(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(unlink, args[1], *path)
-@@ -615,7 +614,7 @@ static Handle<Value> RMDir(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(rmdir, args[1], *path)
-@@ -632,7 +631,7 @@ static Handle<Value> MKDir(const Arguments& args) {
- return THROW_BAD_ARGS;
- }
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- int mode = static_cast<int>(args[1]->Int32Value());
-
- if (args[2]->IsFunction()) {
-@@ -649,7 +648,7 @@ static Handle<Value> ReadDir(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(readdir, args[1], *path, 0 /*flags*/)
-@@ -687,7 +686,7 @@ static Handle<Value> Open(const Arguments& args) {
- if (!args[1]->IsInt32()) return TYPE_ERROR("flags must be an int");
- if (!args[2]->IsInt32()) return TYPE_ERROR("mode must be an int");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- int flags = args[1]->Int32Value();
- int mode = static_cast<int>(args[2]->Int32Value());
-
-@@ -827,7 +826,7 @@ static Handle<Value> Chmod(const Arguments& args) {
- if(args.Length() < 2 || !args[0]->IsString() || !args[1]->IsInt32()) {
- return THROW_BAD_ARGS;
- }
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- int mode = static_cast<int>(args[1]->Int32Value());
-
- if(args[2]->IsFunction()) {
-@@ -874,7 +873,7 @@ static Handle<Value> Chown(const Arguments& args) {
- if (!args[1]->IsUint32()) return TYPE_ERROR("uid must be an unsigned int");
- if (!args[2]->IsUint32()) return TYPE_ERROR("gid must be an unsigned int");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- uv_uid_t uid = static_cast<uv_uid_t>(args[1]->Uint32Value());
- uv_gid_t gid = static_cast<uv_gid_t>(args[2]->Uint32Value());
-
-@@ -925,7 +924,7 @@ static Handle<Value> UTimes(const Arguments& args) {
- if (!args[1]->IsNumber()) return TYPE_ERROR("atime must be a number");
- if (!args[2]->IsNumber()) return TYPE_ERROR("mtime must be a number");
-
-- const node::Utf8Value path(args[0]);
-+ const String::Utf8Value path(args[0]);
- const double atime = static_cast<double>(args[1]->NumberValue());
- const double mtime = static_cast<double>(args[2]->NumberValue());
-
-diff --git a/src/node_stat_watcher.cc b/src/node_stat_watcher.cc
-index fd3e5d1..c3f668c 100644
---- a/src/node_stat_watcher.cc
-+++ b/src/node_stat_watcher.cc
-@@ -105,7 +104,7 @@ Handle<Value> StatWatcher::Start(const Arguments& args) {
- HandleScope scope;
-
- StatWatcher* wrap = ObjectWrap::Unwrap<StatWatcher>(args.Holder());
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- const bool persistent = args[1]->BooleanValue();
- const uint32_t interval = args[2]->Uint32Value();
-
-diff --git a/src/process_wrap.cc b/src/process_wrap.cc
-index ac63e4b..784300f 100644
---- a/src/process_wrap.cc
-+++ b/src/process_wrap.cc
-@@ -188,7 +187,7 @@ class ProcessWrap : public HandleWrap {
-
- // options.file
- Local<Value> file_v = js_options->Get(String::NewSymbol("file"));
-- node::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
-+ String::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
- if (file.length() > 0) {
- options.file = *file;
- } else {
-@@ -203,7 +202,7 @@ class ProcessWrap : public HandleWrap {
- // Heap allocate to detect errors. +1 is for NULL.
- options.args = new char*[argc + 1];
- for (int i = 0; i < argc; i++) {
-- node::Utf8Value arg(js_argv->Get(i));
-+ String::Utf8Value arg(js_argv->Get(i));
- options.args[i] = strdup(*arg);
- }
- options.args[argc] = NULL;
-@@ -211,7 +210,7 @@ class ProcessWrap : public HandleWrap {
-
- // options.cwd
- Local<Value> cwd_v = js_options->Get(String::NewSymbol("cwd"));
-- node::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
-+ String::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
- if (cwd.length() > 0) {
- options.cwd = *cwd;
- }
-@@ -223,7 +222,7 @@ class ProcessWrap : public HandleWrap {
- int envc = env->Length();
- options.env = new char*[envc + 1]; // Heap allocated to detect errors.
- for (int i = 0; i < envc; i++) {
-- node::Utf8Value pair(env->Get(i));
-+ String::Utf8Value pair(env->Get(i));
- options.env[i] = strdup(*pair);
- }
- options.env[envc] = NULL;
-diff --git a/src/udp_wrap.cc b/src/udp_wrap.cc
-index 31a4e78..b33f4e8 100644
---- a/src/udp_wrap.cc
-+++ b/src/udp_wrap.cc
-@@ -161,7 +160,7 @@ Handle<Value> UDPWrap::DoBind(const Arguments& args, int family) {
- // bind(ip, port, flags)
- assert(args.Length() == 3);
-
-- node::Utf8Value address(args[0]);
-+ String::Utf8Value address(args[0]);
- const int port = args[1]->Uint32Value();
- const int flags = args[2]->Uint32Value();
-
-@@ -220,8 +219,8 @@ Handle<Value> UDPWrap::SetMembership(const Arguments& args,
-
- assert(args.Length() == 2);
-
-- node::Utf8Value address(args[0]);
-- node::Utf8Value iface(args[1]);
-+ String::Utf8Value address(args[0]);
-+ String::Utf8Value iface(args[1]);
-
- const char* iface_cstr = *iface;
- if (args[1]->IsUndefined() || args[1]->IsNull()) {
-@@ -272,7 +271,7 @@ Handle<Value> UDPWrap::DoSend(const Arguments& args, int family) {
- length);
-
- const unsigned short port = args[3]->Uint32Value();
-- node::Utf8Value address(args[4]);
-+ String::Utf8Value address(args[4]);
-
- switch (family) {
- case AF_INET:
-diff --git a/src/util.h b/src/util.h
---- a/src/util.h
-+++ b/src/util.h
-@@ -41,52 +41,6 @@
- obj->Set(domain_symbol, domain);
- }
-
--class Utf8Value {
-- public:
-- explicit Utf8Value(v8::Handle
v8::Value value)
-- : length_(0), str_(NULL) {
-- if (value.IsEmpty())
-- return;
--
-- v8::Local
v8::String val_ = value->ToString();
--
-- // Allocate enough space to include the null terminator
-- size_t len = StringBytes::StorageSize(val_, UTF8) + 1;
--
-- char* str = static_cast<char*>(calloc(1, len));
--
-- int flags = WRITE_UTF8_FLAGS;
-- flags |= ~v8::String::NO_NULL_TERMINATION;
--
-- length_ = val_->WriteUtf8(str,
-- len,
-- 0,
-- flags);
--
-- str_ = reinterpret_cast<char*>(str);
-- }
--
-- ~Utf8Value() {
-- free(str_);
-- }
--
-- char* operator*() {
-- return str_;
-- };
--
-- const char* operator*() const {
-- return str_;
-- };
--
-- size_t length() const {
-- return length_;
-- };
--
-- private:
-- size_t length_;
-- char* str_;
--};
--
- } // namespace node
-
- #endif // SRC_UTIL_H_
---
-1.9.3
-
diff --git a/nodejs-revert-utf8-v8.patch b/nodejs-revert-utf8-v8.patch
deleted file mode 100644
index 6b16de6..0000000
--- a/nodejs-revert-utf8-v8.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From c7c934c66cd8712c9ff169f1ef4c5670d3ff99c8 Mon Sep 17 00:00:00 2001
-From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
-Date: Wed, 18 Jun 2014 23:09:03 -0700
-Subject: [PATCH] Revert "string_bytes: Guarantee valid utf-8 output"
-
-This reverts commit 0da4c671659cfbae12def127b2e94690b9d9b5e1.
----
- src/node.cc | 7 -------
- src/string_bytes.cc | 2 +-
- src/string_bytes.h | 2 --
- test/simple/test-buffer.js | 12 ------------
- 4 files changed, 1 insertion(+), 22 deletions(-)
-
-diff --git a/src/node.cc b/src/node.cc
-index 4223973..e9696cd 100644
---- a/src/node.cc
-+++ b/src/node.cc
-@@ -180,9 +180,6 @@ static uv_async_t dispatch_debug_messages_async;
- // Declared in node_internals.h
- Isolate* node_isolate = NULL;
-
--int WRITE_UTF8_FLAGS = v8::String::HINT_MANY_WRITES_EXPECTED |
-- v8::String::NO_NULL_TERMINATION;
--
- static void Spin(uv_idle_t* handle, int status) {
- assert((uv_idle_t*) handle == &tick_spinner);
- assert(status == 0);
-@@ -3077,11 +3074,6 @@ static char **copy_argv(int argc, char **argv) {
-
-
- int Start(int argc, char *argv[]) {
-- const char* replaceInvalid = getenv("NODE_INVALID_UTF8");
--
-- if (replaceInvalid == NULL)
-- WRITE_UTF8_FLAGS |= String::REPLACE_INVALID_UTF8;
--
- // Hack aroung with the argv pointer. Used for process.title = "blah".
- argv = uv_setup_args(argc, argv);
-
-diff --git a/src/string_bytes.cc b/src/string_bytes.cc
-index a7bab38..e4a34fe 100644
---- a/src/string_bytes.cc
-+++ b/src/string_bytes.cc
-@@ -199,7 +199,7 @@ size_t StringBytes::Write(char* buf,
- break;
-
- case UTF8:
-- len = str->WriteUtf8(buf, buflen, chars_written, WRITE_UTF8_FLAGS);
-+ len = str->WriteUtf8(buf, buflen, chars_written, flags);
- break;
-
- case UCS2:
-diff --git a/src/string_bytes.h b/src/string_bytes.h
-index 31f04bb..8071a49 100644
---- a/src/string_bytes.h
-+++ b/src/string_bytes.h
-@@ -29,8 +29,6 @@
-
- namespace node {
-
--extern int WRITE_UTF8_FLAGS;
--
- using v8::Handle;
- using v8::Local;
- using v8::String;
-diff --git a/test/simple/test-buffer.js b/test/simple/test-buffer.js
-index f8b2798..3026824 100644
---- a/test/simple/test-buffer.js
-+++ b/test/simple/test-buffer.js
-@@ -791,18 +791,6 @@ assert.equal(buf[3], 0xFF);
- assert.equal(buf[3], 0xFF);
- });
-
--// test unmatched surrogates not producing invalid utf8 output
--// ef bf bd = utf-8 representation of unicode replacement character
--// see
https://codereview.chromium.org/121173009/
--buf = new Buffer('ab\ud800cd', 'utf8');
--assert.equal(buf[0], 0x61);
--assert.equal(buf[1], 0x62);
--assert.equal(buf[2], 0xef);
--assert.equal(buf[3], 0xbf);
--assert.equal(buf[4], 0xbd);
--assert.equal(buf[5], 0x63);
--assert.equal(buf[6], 0x64);
--
- // test for buffer overrun
- buf = new Buffer([0, 0, 0, 0, 0]); // length: 5
- var sub = buf.slice(0, 4); // length: 4
---
-1.9.3
-
diff --git a/nodejs-use-system-certs.patch b/nodejs-use-system-certs.patch
index fe2abab..344356f 100644
--- a/nodejs-use-system-certs.patch
+++ b/nodejs-use-system-certs.patch
@@ -1,45 +1,69 @@
-Description: do not bundle CA certificates, openssl on Debian have them
- As a consequence, nodejs must depend on ca-certificates.
+From 8bdb9e5d7dcde463d9664fc6a999c11a3048a673 Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Tue, 1 Dec 2015 16:29:07 -0500
+Subject: [PATCH 2/2] Do not bundle CA Certificates
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+CA Certificates are provided by Fedora.
+
Forwarded: need some feedback before submitting the matter upstream
Author: Jérémy Lal
kapouer@melix.org
Last-Update: 2014-03-02
Modified 2014-05-02 by T.C. Hollingsworth
tchollingsworth@gmail.com with the
correct path for Fedora
+
+Modified 2015-12-01 by Stephen Gallagher
sgallagh@redhat.com to update for
+Node.js 4.2
+---
+ src/node_crypto.cc | 31 ++++++++-----------------------
+ 1 file changed, 8 insertions(+), 23 deletions(-)
+
+diff --git a/src/node_crypto.cc b/src/node_crypto.cc
+index bd7314c9db902c59035b60ee5e2ebb4dc99a9a9f..ddc6f081136dd327e35d6326ba9835df7f834e70 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
-@@ -64,7 +64,6 @@
- namespace node {
+@@ -125,11 +125,11 @@ struct ClearErrorOnReturn {
+ };
+
+ static uv_mutex_t* locks;
- const char* root_certs[] = {
+ const char* const root_certs[] = {
-#include "node_root_certs.h" // NOLINT(build/include_order)
- NULL
++ NULL
};
-@@ -561,32 +560,16 @@
- assert(sc->ca_store_ == NULL);
+ X509_STORE* root_cert_store;
+
+ // Just to generate static methods
+@@ -715,36 +715,21 @@ void SecureContext::AddRootCerts(const FunctionCallbackInfo<Value>& args) {
+ (void) &clear_error_on_return; // Silence compiler warning.
+
+ CHECK_EQ(sc->ca_store_, nullptr);
if (!root_cert_store) {
- root_cert_store = X509_STORE_new();
-
-- for (int i = 0; root_certs[i]; i++) {
-- BIO *bp = BIO_new(BIO_s_mem());
+- for (size_t i = 0; i < ARRAY_SIZE(root_certs); i++) {
+- BIO* bp = NodeBIO::New();
-
- if (!BIO_write(bp, root_certs[i], strlen(root_certs[i]))) {
-- BIO_free(bp);
-- return False();
+- BIO_free_all(bp);
+- return;
- }
-
-- X509 *x509 = PEM_read_bio_X509(bp, NULL, NULL, NULL);
+- X509 *x509 = PEM_read_bio_X509(bp, nullptr, CryptoPemCallback, nullptr);
-
-- if (x509 == NULL) {
-- BIO_free(bp);
-- return False();
+- if (x509 == nullptr) {
+- BIO_free_all(bp);
+- return;
- }
-
- X509_STORE_add_cert(root_cert_store, x509);
-
-- BIO_free(bp);
+- BIO_free_all(bp);
- X509_free(x509);
+ if (SSL_CTX_load_verify_locations(sc->ctx_, "/etc/pki/tls/certs/ca-bundle.crt", NULL) == 1) {
+ root_cert_store = SSL_CTX_get_cert_store(sc->ctx_);
@@ -50,9 +74,14 @@ correct path for Fedora
+ } else {
+ SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
}
--
+
sc->ca_store_ = root_cert_store;
- SSL_CTX_set_cert_store(sc->ctx_, sc->ca_store_);
-
- return True();
}
+
+
+ void SecureContext::SetCiphers(const FunctionCallbackInfo<Value>& args) {
+ SecureContext* sc = Unwrap<SecureContext>(args.Holder());
+--
+2.5.0
+
diff --git a/nodejs.spec b/nodejs.spec
index 15c81db..5e02a86 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
-Version: 0.10.36
-Release: 5%{?dist}
+Version: 4.2.2
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -28,30 +28,16 @@ Patch1: nodejs-disable-gyp-deps.patch
#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
Patch2: nodejs-use-system-certs.patch
-# The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
-# be done in a stable distribution release. This build of nodejs will behave as
-# if NODE_INVALID_UTF8 was set. For more information on the implications, see:
-#
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
-Patch3: nodejs-revert-utf8-v8.patch
-Patch4: nodejs-revert-utf8-node.patch
-
-# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
-# so we need to be more explicit until spot fixes that
-%global v8_ge 1:3.14.5.10-17
-%global v8_lt 1:3.15
-%global v8_abi 3.14
-
-BuildRequires: v8-devel >= %{v8_ge}
-BuildRequires: http-parser-devel >= 2.0
-BuildRequires: compat-libuv010-devel
-BuildRequires: c-ares-devel
+# V8 presently breaks ABI at least every x.y release while never bumping SONAME
+%global v8_abi 4.6
+
+BuildRequires: python-devel
+BuildRequires: libuv-devel >= 1.7.5
+BuildRequires: http-parser-devel >= 2.6
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
-Requires: v8%{?_isa} >= %{v8_ge}
-Requires: v8%{?_isa} < %{v8_lt}
-
# we need the system certificate store when Patch2 is applied
Requires: ca-certificates
@@ -67,7 +53,7 @@ Provides: nodejs(engine) = %{version}
# Node.js currently has a conflict with the 'node' package in Fedora
# The ham-radio group has agreed to rename their binary for us, but
# in the meantime, we're setting an explicit Conflicts: here
-Conflicts: node <= 0.3.2-11
+Conflicts: node <= 0.3.2-12
# The punycode module was absorbed into the standard library in v0.6.
# It still exists as a seperate package for the benefit of users of older
@@ -79,6 +65,18 @@ Provides: nodejs-punycode = 1.3.1
Provides: npm(punycode) = 1.3.1
+# Node.js has forked c-ares from upstream in an incompatible way, so we need
+# to carry the bundled version internally.
+# See
https://github.com/nodejs/node/commit/766d063e0578c0f7758c3a965c971763f43fec...
+Provides: bundled(c-ares) = 1.10.1
+
+# Node.js is closely tied to the version of v8 that is used with it. It makes
+# sense to use the bundled version because upstream consistently breaks ABI
+# even in point releases. Node.js upstream has now removed the ability to build
+# against a shared system version entirely.
+# See
https://github.com/nodejs/node/commit/d726a177ed59c37cf5306983ed00ecd858cfbb...
+Provides: bundled(v8) = 4.6.85
+
%description
Node.js is a platform built on Chrome's JavaScript runtime
for easily building fast, scalable network applications.
@@ -90,8 +88,8 @@ real-time applications that run across distributed devices.
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} == %{version}-%{release}
-Requires: compat-libuv010-devel%{?_isa} http-parser-devel%{?_isa} v8-devel%{?_isa}
-Requires: openssl-devel%{?_isa} c-ares-devel%{?_isa} zlib-devel%{?_isa}
+Requires: libuv-devel%{?_isa} http-parser-devel%{?_isa}
+Requires: openssl-devel%{?_isa} zlib-devel%{?_isa}
Requires: nodejs-packaging
%description devel
@@ -109,17 +107,17 @@ The API documentation for the Node.js JavaScript runtime.
%prep
%setup -q -n node-v%{version}
-# remove bundled dependencies
+# remove bundled dependencies that we aren't building
%patch1 -p1
-rm -rf deps
+rm -rf deps/http_parser \
+ deps/npm \
+ deps/uv \
+ deps/zlib
# remove bundled CA certificates
%patch2 -p1
rm -f src/node_root_certs.h
-%patch3 -p1
-%patch4 -p1
-
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -127,10 +125,8 @@ export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
./configure --prefix=%{_prefix} \
- --shared-v8 \
--shared-openssl \
--shared-zlib \
- --shared-cares \
--shared-libuv \
--shared-libuv-libname=:libuv.so.0.10 \
--shared-libuv-includes=%{_includedir}/compat-libuv010 \
@@ -144,7 +140,7 @@ make BUILDTYPE=Debug %{?_smp_mflags}
%install
rm -rf %{buildroot}
-./tools/install.py install %{buildroot}
+./tools/install.py install %{buildroot} %{_prefix}
# and remove dtrace file again
rm -rf %{buildroot}/%{_prefix}/lib/dtrace
@@ -172,36 +168,43 @@ chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
mkdir -p %{buildroot}%{_pkgdocdir}/html
cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
-cp -p LICENSE %{buildroot}%{_pkgdocdir}/html
-cp -p ChangeLog LICENSE README.md AUTHORS %{buildroot}%{_pkgdocdir}
#node-gyp needs common.gypi too
mkdir -p %{buildroot}%{_datadir}/node
cp -p common.gypi %{buildroot}%{_datadir}/node
+# Install the GDB init tool into the documentation directory
+mv %{buildroot}/%{_datadir}/doc/node/gdbinit %{buildroot}/%{_pkgdocdir}/gdbinit
+
%files
%{_bindir}/node
%{_mandir}/man1/node.*
%dir %{_prefix}/lib/node_modules
%dir %{_datadir}/node
+%dir %{_datadir}/systemtap
+%dir %{_datadir}/systemtap/tapset
+%{_datadir}/systemtap/tapset/node.stp
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
%dir %{_pkgdocdir}
-%{_pkgdocdir}/ChangeLog
-%{_pkgdocdir}/LICENSE
-%{_pkgdocdir}/README.md
-%{_pkgdocdir}/AUTHORS
-
+%license LICENSE
+%doc AUTHORS CHANGELOG.md COLLABORATOR_GUIDE.md GOVERNANCE.md README.md
+%doc ROADMAP.md WORKING_GROUPS.md
+
%files devel
%{_bindir}/node_g
%{_includedir}/node
%{_datadir}/node/common.gypi
+%{_pkgdocdir}/gdbinit
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
%changelog
+* Tue Dec 01 2015 Stephen Gallagher
sgallagh@redhat.com 4.2.2-0.1
+- Upgrade to Node.js 4.2.2 (LTS)
+
* Wed Jun 17 2015 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.36-5
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
diff --git a/sources b/sources
index e233927..78914f6 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-f1a50d8a1f6e09659b5c2aad00867ae2 node-v0.10.36-stripped.tar.gz
+32d052698f6059e64eee5f06532e27fd node-v4.2.2-stripped.tar.gz
commit 20320bc6732c7de1f770e55674fe72efb3ed5a8f
Author: Dennis Gilmore
dennis@ausil.us
Date: Wed Jun 17 21:53:49 2015 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
diff --git a/nodejs.spec b/nodejs.spec
index c602511..15c81db 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.36
-Release: 4%{?dist}
+Release: 5%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -202,6 +202,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Wed Jun 17 2015 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.36-5
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
* Wed Apr 29 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-4
- fix incorrect Requires on libuv (RHBZ#1215719)
commit c156efd63d40dd5b4d5f48bf229a2d4d257fc257
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Apr 29 14:33:16 2015 -0700
fix incorrect Requires on libuv (RHBZ#1215719)
diff --git a/nodejs.spec b/nodejs.spec
index 1c2b463..c602511 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.36
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -90,7 +90,7 @@ real-time applications that run across distributed devices.
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name}%{?_isa} == %{version}-%{release}
-Requires: libuv-devel%{?_isa} http-parser-devel%{?_isa} v8-devel%{?_isa}
+Requires: compat-libuv010-devel%{?_isa} http-parser-devel%{?_isa} v8-devel%{?_isa}
Requires: openssl-devel%{?_isa} c-ares-devel%{?_isa} zlib-devel%{?_isa}
Requires: nodejs-packaging
@@ -202,6 +202,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Wed Apr 29 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-4
+- fix incorrect Requires on libuv (RHBZ#1215719)
+
* Tue Feb 24 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-3
- bump v8 requires (RHBZ#1195457)
commit c8b7901da604faee44e21cd98935048934d523c0
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Feb 24 16:20:59 2015 -0700
bump v8 requires (RHBZ#1195457)
diff --git a/nodejs.spec b/nodejs.spec
index 19a6601..5ebad5f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.36
-Release: 1%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -37,7 +37,7 @@ Patch4: nodejs-revert-utf8-node.patch
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
-%global v8_ge 1:3.14.5.7
+%global v8_ge 1:3.14.5.10-17
%global v8_lt 1:3.15
%global v8_abi 3.14
@@ -194,6 +194,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Tue Feb 24 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-3
+- bump v8 requires (RHBZ#1195457)
+
* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-1
- new upstream release 0.10.36
http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
commit a2ef738c4d87a296e32b021186b016b56f449415
Merge: e258ec6 6ec3dd9
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Feb 24 16:27:13 2015 -0700
Merge branch 'f21' into f22
Conflicts:
nodejs.spec
diff --cc nodejs.spec
index c81cfd6,6f55e03..1c2b463
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -202,9 -200,9 +202,12 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_pkgdocdir}/html
%changelog
+ * Tue Feb 24 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-3
+ - bump v8 requires (RHBZ#1195457)
+
+* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-2
+- build against compat-libuv010
+
* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-1
- new upstream release 0.10.36
http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
commit 6ec3dd98dfb00aca11b99a20f1fa5954711f2028
Merge: af15f26 09e94a2
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Feb 24 16:26:22 2015 -0700
Merge branch 'f20' into f21
commit 09e94a2e546ecc827ac6e6d3792b29a425759470
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Feb 24 16:20:59 2015 -0700
bump v8 requires (RHBZ#1195457)
diff --git a/nodejs.spec b/nodejs.spec
index 8568295..0b46420 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.36
-Release: 1%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -32,7 +32,7 @@ Patch4: nodejs-revert-utf8-node.patch
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
-%global v8_ge 1:3.14.5.7
+%global v8_ge 1:3.14.5.10-17
%global v8_lt 1:3.15
%global v8_abi 3.14
@@ -185,6 +185,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Tue Feb 24 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-3
+- bump v8 requires (RHBZ#1195457)
+
* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-1
- new upstream release 0.10.36
http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
commit e258ec634341042fa70731d07ccb4f3a9ddbeb31
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Feb 19 13:21:24 2015 -0700
build against compat-libuv010
diff --git a/nodejs.spec b/nodejs.spec
index a144a7f..c81cfd6 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.36
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -43,7 +43,7 @@ Patch4: nodejs-revert-utf8-node.patch
BuildRequires: v8-devel >= %{v8_ge}
BuildRequires: http-parser-devel >= 2.0
-BuildRequires: libuv-devel
+BuildRequires: compat-libuv010-devel
BuildRequires: c-ares-devel
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
@@ -132,6 +132,8 @@ export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
--shared-zlib \
--shared-cares \
--shared-libuv \
+ --shared-libuv-libname=:libuv.so.0.10 \
+ --shared-libuv-includes=%{_includedir}/compat-libuv010 \
--shared-http-parser \
--without-npm \
--without-dtrace
@@ -200,6 +202,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-2
+- build against compat-libuv010
+
* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-1
- new upstream release 0.10.36
http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
commit af15f26f567e8379aed3fa5e9b1538ac730f284f
Merge: 7827874 de20ac7
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Feb 19 01:02:16 2015 -0700
Merge branch 'f20' into f21
commit de20ac7b303cf520b1c19b03c1d35de97343009d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Feb 19 00:59:58 2015 -0700
new upstream release 0.10.36
http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
- Please note that several upstream releases were skipped due to regressions
reported in the upstream bug tracker. Please also review the 0.10.34 and
0.10.35 changelogs available at the above URL for a list of all changes.
diff --git a/.gitignore b/.gitignore
index d315600..27559e5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -31,3 +31,4 @@
/node-v0.10.30-stripped.tar.gz
/node-v0.10.32-stripped.tar.gz
/node-v0.10.33-stripped.tar.gz
+/node-v0.10.36-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index bc49545..8568295 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.33
+Version: 0.10.36
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -185,6 +185,13 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-1
+- new upstream release 0.10.36
+
http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
+- Please note that several upstream releases were skipped due to regressions
+ reported in the upstream bug tracker. Please also review the 0.10.34 and
+ 0.10.35 changelogs available at the above URL for a list of all changes.
+
* Wed Nov 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.33-1
- new upstream release 0.10.33
http://blog.nodejs.org/2014/10/23/node-v0-10-33-stable/
diff --git a/sources b/sources
index e2aeefa..e233927 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-f483a694949095884cf9159f2983c1e6 node-v0.10.33-stripped.tar.gz
+f1a50d8a1f6e09659b5c2aad00867ae2 node-v0.10.36-stripped.tar.gz
commit 5fbbcec11827f02e99ddeb5ee3c5412b9dbe41a8
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Feb 19 00:59:58 2015 -0700
new upstream release 0.10.36
http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
- Please note that several upstream releases were skipped due to regressions
reported in the upstream bug tracker. Please also review the 0.10.34 and
0.10.35 changelogs available at the above URL for a list of all changes.
diff --git a/.gitignore b/.gitignore
index d315600..27559e5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -31,3 +31,4 @@
/node-v0.10.30-stripped.tar.gz
/node-v0.10.32-stripped.tar.gz
/node-v0.10.33-stripped.tar.gz
+/node-v0.10.36-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index f77d6ca..19a6601 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.33
+Version: 0.10.36
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -194,6 +194,13 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Thu Feb 19 2015 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.36-1
+- new upstream release 0.10.36
+
http://blog.nodejs.org/2015/01/26/node-v0-10-36-stable/
+- Please note that several upstream releases were skipped due to regressions
+ reported in the upstream bug tracker. Please also review the 0.10.34 and
+ 0.10.35 changelogs available at the above URL for a list of all changes.
+
* Wed Nov 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.33-1
- new upstream release 0.10.33
http://blog.nodejs.org/2014/10/23/node-v0-10-33-stable/
diff --git a/sources b/sources
index e2aeefa..e233927 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-f483a694949095884cf9159f2983c1e6 node-v0.10.33-stripped.tar.gz
+f1a50d8a1f6e09659b5c2aad00867ae2 node-v0.10.36-stripped.tar.gz
commit d8b07cf129fb08060e958ee83036e0e9e14fd73f
Merge: 5c2c8da 72f5821
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 18 18:27:16 2014 -0700
Merge branch 'f19' into epel7
commit 7827874f19291aac76c33e3a1a1dad4ee637d11d
Merge: 9551fea 9f0d365
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 18 18:26:52 2014 -0700
Merge branch 'f20' into f21
commit 9f0d3654f0bd5135861e644343023630956b08e9
Merge: c59552d 72f5821
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 18 18:26:43 2014 -0700
Merge branch 'f19' into f20
commit 72f5821169c982ac5cb111e435c8bc9c86719dec
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 18 18:26:34 2014 -0700
add source
diff --git a/.gitignore b/.gitignore
index 8d98210..d315600 100644
--- a/.gitignore
+++ b/.gitignore
@@ -30,3 +30,4 @@
/node-v0.10.29-stripped.tar.gz
/node-v0.10.30-stripped.tar.gz
/node-v0.10.32-stripped.tar.gz
+/node-v0.10.33-stripped.tar.gz
diff --git a/sources b/sources
index d8b8872..e2aeefa 100644
--- a/sources
+++ b/sources
@@ -1,2 +1 @@
-69074384366b4bc8ccc25e8c434b6817 node-v0.10.30-stripped.tar.gz
-7e508cec9f98e41d2bcf1631795d33ee node-v0.10.32-stripped.tar.gz
+f483a694949095884cf9159f2983c1e6 node-v0.10.33-stripped.tar.gz
commit 5c2c8dac8708402de6e575d83bebbd7f5d87054a
Merge: 7b49ccf ee85520
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 18 18:24:43 2014 -0700
Merge branch 'f19' into epel7
commit 9551fea12b0927c7d4ff6aa8c30003aac73ad074
Merge: f0dfcde c59552d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 18 18:24:30 2014 -0700
Merge branch 'f20' into f21
commit c59552d1dbeebc241530d3832d90c17822cbe883
Merge: 29e8916 ee85520
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 18 18:24:22 2014 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 4c441c3,6dcd469..bc49545
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -181,10 -176,17 +181,18 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Wed Nov 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.33-1
+ - new upstream release 0.10.33
+
http://blog.nodejs.org/2014/10/23/node-v0-10-33-stable/
+ - This release disables SSLv3 to secure Node.js services against the POODLE
+ attack. (CVE-2014-3566; RHBZ#1152789) For more information or to learn how
+ to re-enable SSLv3 in order to support legacy clients, please see the upstream
+ release announcement linked above.
+
* Tue Oct 21 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-2
- add Provides nodejs-punycode (RHBZ#1151811)
commit ee855209425aaa882887a498c9e2c279bf79ba7c
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 18 18:22:09 2014 -0700
new upstream release 0.10.33
http://blog.nodejs.org/2014/10/23/node-v0-10-33-stable/
- This release disables SSLv3 to secure Node.js services against the POODLE
attack. (CVE-2014-3566; RHBZ#1152789) For more information or to learn how
to re-enable SSLv3 in order to support legacy clients, please see the upstream
release announcement linked above.
diff --git a/nodejs-revert-utf8-v8.patch b/nodejs-revert-utf8-v8.patch
index f617cf3..6b16de6 100644
--- a/nodejs-revert-utf8-v8.patch
+++ b/nodejs-revert-utf8-v8.patch
@@ -15,17 +15,18 @@ diff --git a/src/node.cc b/src/node.cc
index 4223973..e9696cd 100644
--- a/src/node.cc
+++ b/src/node.cc
-@@ -178,8 +178,6 @@ static uv_async_t dispatch_debug_messages_async;
+@@ -180,9 +180,6 @@ static uv_async_t dispatch_debug_messages_async;
// Declared in node_internals.h
Isolate* node_isolate = NULL;
-int WRITE_UTF8_FLAGS = v8::String::HINT_MANY_WRITES_EXPECTED |
- v8::String::NO_NULL_TERMINATION;
-
+-
static void Spin(uv_idle_t* handle, int status) {
assert((uv_idle_t*) handle == &tick_spinner);
-@@ -3046,11 +3044,6 @@ static char **copy_argv(int argc, char **argv) {
- }
+ assert(status == 0);
+@@ -3077,11 +3074,6 @@ static char **copy_argv(int argc, char **argv) {
+
int Start(int argc, char *argv[]) {
- const char* replaceInvalid = getenv("NODE_INVALID_UTF8");
diff --git a/nodejs.spec b/nodejs.spec
index 17e3b8e..6dcd469 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
-Version: 0.10.32
-Release: 2%{?dist}
+Version: 0.10.33
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -179,6 +179,14 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed Nov 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.33-1
+- new upstream release 0.10.33
+
http://blog.nodejs.org/2014/10/23/node-v0-10-33-stable/
+- This release disables SSLv3 to secure Node.js services against the POODLE
+ attack. (CVE-2014-3566; RHBZ#1152789) For more information or to learn how
+ to re-enable SSLv3 in order to support legacy clients, please see the upstream
+ release announcement linked above.
+
* Tue Oct 21 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-2
- add Provides nodejs-punycode (RHBZ#1151811)
commit 7b49ccf59bd42b212cf3160f19d289bc1a102b95
Merge: 6c4e5a3 f46f116
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Oct 21 12:13:51 2014 -0700
Merge branch 'f19' into epel7
commit f0dfcde1ad4689343e9bf3b96b136a7cf250e910
Merge: 26fd29e 29e8916
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Oct 21 12:13:23 2014 -0700
Merge branch 'f20' into f21
commit 29e891635d2759a7d01a9bf188178a58f4dc9676
Merge: a86df19 f46f116
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Oct 21 12:13:18 2014 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 2c00d28,17e3b8e..4c441c3
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -171,10 -176,12 +181,13 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Tue Oct 21 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-2
+ - add Provides nodejs-punycode (RHBZ#1151811)
+
* Thu Sep 18 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-1
- new upstream release 0.10.32
http://blog.nodejs.org/2014/08/19/node-v0-10-31-stable/
commit f46f1163b1dbbb889ac96ab2eaa89615f1b23911
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Oct 21 12:13:10 2014 -0700
add Provides nodejs-punycode (RHBZ#1151811)
diff --git a/nodejs.spec b/nodejs.spec
index bbe1b89..17e3b8e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.32
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -61,6 +61,16 @@ Provides: nodejs(engine) = %{version}
# in the meantime, we're setting an explicit Conflicts: here
Conflicts: node <= 0.3.2-11
+# The punycode module was absorbed into the standard library in v0.6.
+# It still exists as a seperate package for the benefit of users of older
+# versions. Since we've never shipped anything older than v0.10 in Fedora,
+# we don't need the seperate nodejs-punycode package, so we Provide it here so
+# dependent packages don't need to override the dependency generator.
+# See also: RHBZ#11511811
+Provides: nodejs-punycode = 1.3.1
+Provides: npm(punycode) = 1.3.1
+
+
%description
Node.js is a platform built on Chrome's JavaScript runtime
for easily building fast, scalable network applications.
@@ -169,6 +179,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Tue Oct 21 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-2
+- add Provides nodejs-punycode (RHBZ#1151811)
+
* Thu Sep 18 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-1
- new upstream release 0.10.32
http://blog.nodejs.org/2014/08/19/node-v0-10-31-stable/
commit 6c4e5a33d20f89eea5269b4fc6d3e8ed96c2a6ef
Merge: 20cbe92 d68cb2c
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Sep 17 21:23:47 2014 -0700
Merge branch 'f19' into epel7
commit 26fd29efb6b625e565bab9ea420b7d399c662119
Merge: 7e55d55 a86df19
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Sep 17 21:23:36 2014 -0700
Merge branch 'f20' into f21
commit a86df1924714db7f803c5f965b793d69a6269d5d
Merge: 2b2c732 d68cb2c
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Sep 17 21:23:22 2014 -0700
Merge branch 'f19' into f20
commit d68cb2c1b4dc2ab319db809a2b61445d616e69d8
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Sep 17 21:23:08 2014 -0700
refresh utf8 reversion patch
diff --git a/nodejs-revert-utf8-node.patch b/nodejs-revert-utf8-node.patch
index f8c8f37..a5a3d59 100644
--- a/nodejs-revert-utf8-node.patch
+++ b/nodejs-revert-utf8-node.patch
@@ -22,15 +22,6 @@ diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc
index 321e144..b7ba828 100644
--- a/src/cares_wrap.cc
+++ b/src/cares_wrap.cc
-@@ -31,8 +31,6 @@
- #include "tree.h"
- #include "uv.h"
-
--#include "util.h"
--
- #if defined(__OpenBSD__) || defined(__MINGW32__) || defined(_MSC_VER)
- # include <nameser.h>
- #else
@@ -741,7 +739,7 @@ static Handle<Value> Query(const Arguments& args) {
// object reference, causing wrap->GetObject() to return undefined.
Local<Object> object = Local<Object>::New(wrap->GetObject());
@@ -83,15 +74,6 @@ diff --git a/src/node.cc b/src/node.cc
index e9696cd..8257604 100644
--- a/src/node.cc
+++ b/src/node.cc
-@@ -82,8 +82,6 @@ typedef int mode_t;
- #include "node_script.h"
- #include "v8_typed_array.h"
-
--#include "util.h"
--
- using namespace v8;
-
- # ifdef __APPLE__
@@ -1102,7 +1100,7 @@ enum encoding ParseEncoding(Handle<Value> encoding_v, enum encoding _default) {
if (!encoding_v->IsString()) return _default;
@@ -262,14 +244,6 @@ diff --git a/src/node_crypto.cc b/src/node_crypto.cc
index 46faba2..0ae1f8a 100644
--- a/src/node_crypto.cc
+++ b/src/node_crypto.cc
-@@ -26,7 +26,6 @@
- #include "node.h"
- #include "node_buffer.h"
- #include "string_bytes.h"
--#include "util.h"
-
- #include <string.h>
- #ifdef _MSC_VER
@@ -242,7 +241,7 @@ Handle<Value> SecureContext::Init(const Arguments& args) {
OPENSSL_CONST SSL_METHOD *method = SSLv23_method();
@@ -409,15 +383,6 @@ diff --git a/src/node_dtrace.cc b/src/node_dtrace.cc
index 0b2d0f4..4b851e3 100644
--- a/src/node_dtrace.cc
+++ b/src/node_dtrace.cc
-@@ -20,8 +20,6 @@
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
--#include "util.h"
--
- #ifdef HAVE_DTRACE
- #include "node_dtrace.h"
- #include <string.h>
@@ -68,7 +66,7 @@ using namespace v8;
return (ThrowException(Exception::Error(String::New("expected " \
"object for " #obj " to contain string member " #member)))); \
@@ -440,14 +405,6 @@ diff --git a/src/node_file.cc b/src/node_file.cc
index 3c35e0b..f665b19 100644
--- a/src/node_file.cc
+++ b/src/node_file.cc
-@@ -24,7 +24,6 @@
- #include "node_buffer.h"
- #include "node_stat_watcher.h"
- #include "req_wrap.h"
--#include "util.h"
-
- #include <fcntl.h>
- #include <sys/types.h>
@@ -404,7 +403,7 @@ static Handle<Value> Stat(const Arguments& args) {
if (args.Length() < 1) return TYPE_ERROR("path required");
if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
@@ -589,14 +546,6 @@ diff --git a/src/node_stat_watcher.cc b/src/node_stat_watcher.cc
index fd3e5d1..c3f668c 100644
--- a/src/node_stat_watcher.cc
+++ b/src/node_stat_watcher.cc
-@@ -20,7 +20,6 @@
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
-
- #include "node_stat_watcher.h"
--#include "util.h"
-
- #include <assert.h>
- #include <string.h>
@@ -105,7 +104,7 @@ Handle<Value> StatWatcher::Start(const Arguments& args) {
HandleScope scope;
@@ -610,14 +559,6 @@ diff --git a/src/process_wrap.cc b/src/process_wrap.cc
index ac63e4b..784300f 100644
--- a/src/process_wrap.cc
+++ b/src/process_wrap.cc
-@@ -25,7 +25,6 @@
- #include "tty_wrap.h"
- #include "tcp_wrap.h"
- #include "udp_wrap.h"
--#include "util.h"
-
- #include <string.h>
- #include <stdlib.h>
@@ -188,7 +187,7 @@ class ProcessWrap : public HandleWrap {
// options.file
@@ -658,14 +599,6 @@ diff --git a/src/udp_wrap.cc b/src/udp_wrap.cc
index 31a4e78..b33f4e8 100644
--- a/src/udp_wrap.cc
+++ b/src/udp_wrap.cc
-@@ -25,7 +25,6 @@
- #include "req_wrap.h"
- #include "handle_wrap.h"
- #include "udp_wrap.h"
--#include "util.h"
-
- #include <stdlib.h>
-
@@ -161,7 +160,7 @@ Handle<Value> UDPWrap::DoBind(const Arguments& args, int family) {
// bind(ip, port, flags)
assert(args.Length() == 3);
@@ -696,40 +629,12 @@ index 31a4e78..b33f4e8 100644
switch (family) {
case AF_INET:
diff --git a/src/util.h b/src/util.h
-deleted file mode 100644
-index 0dbf7f4..0000000
--- a/src/util.h
-+++ /dev/null
-@@ -1,78 +0,0 @@
--// Copyright Joyent, Inc. and other Node contributors.
--//
--// Permission is hereby granted, free of charge, to any person obtaining a
--// copy of this software and associated documentation files (the
--// "Software"), to deal in the Software without restriction, including
--// without limitation the rights to use, copy, modify, merge, publish,
--// distribute, sublicense, and/or sell copies of the Software, and to permit
--// persons to whom the Software is furnished to do so, subject to the
--// following conditions:
--//
--// The above copyright notice and this permission notice shall be included
--// in all copies or substantial portions of the Software.
--//
--// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
--// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
--// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
--// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
--// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
--// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
--// USE OR OTHER DEALINGS IN THE SOFTWARE.
--
--#ifndef SRC_UTIL_H_
--#define SRC_UTIL_H_
--
--#include "v8.h"
--#include "string_bytes.h"
--
--namespace node {
--
++++ b/src/util.h
+@@ -41,52 +41,6 @@
+ obj->Set(domain_symbol, domain);
+ }
+
-class Utf8Value {
- public:
- explicit Utf8Value(v8::Handle
v8::Value value)
@@ -776,9 +681,9 @@ index 0dbf7f4..0000000
- char* str_;
-};
-
--} // namespace node
--
--#endif // SRC_UTIL_H_
+ } // namespace node
+
+ #endif // SRC_UTIL_H_
--
1.9.3
commit 7e55d552768000de3e3b17f2bf4a5d8560a6d901
Merge: b820453 2b2c732
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Sep 17 20:36:01 2014 -0700
Merge branch 'f20' into f21
Conflicts:
nodejs.spec
diff --cc nodejs.spec
index 4bc9fd7,2c00d28..1037ea1
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -190,9 -175,11 +190,14 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_pkgdocdir}/html
%changelog
+ * Thu Sep 18 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-1
+ - new upstream release 0.10.32
+
http://blog.nodejs.org/2014/08/19/node-v0-10-31-stable/
+
http://blog.nodejs.org/2014/09/16/node-v0-10-32-stable/
+
+* Sun Aug 17 2014 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.30-2
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
* Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
- new upstream release 0.10.30
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
commit 20cbe92e8bfe912ec2a00b1f9c7deafe30c6b909
Merge: b151db5 c9b274d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Sep 17 20:33:43 2014 -0700
Merge branch 'f19' into epel7
commit 2b2c732fe3afbde4998fde433cdb5a4f25897a7f
Merge: 8665ff1 c9b274d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Sep 17 20:33:23 2014 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 9d770e5,bbe1b89..2c00d28
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -171,10 -166,14 +171,15 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Thu Sep 18 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-1
+ - new upstream release 0.10.32
+
http://blog.nodejs.org/2014/08/19/node-v0-10-31-stable/
+
http://blog.nodejs.org/2014/09/16/node-v0-10-32-stable/
+
* Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
- new upstream release 0.10.30
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
commit c9b274dcea85e86305d2bd536df34475656d7a0d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Sep 17 20:33:19 2014 -0700
new upstream release 0.10.32
http://blog.nodejs.org/2014/08/19/node-v0-10-31-stable/
http://blog.nodejs.org/2014/09/16/node-v0-10-32-stable/
diff --git a/.gitignore b/.gitignore
index 87f329c..8d98210 100644
--- a/.gitignore
+++ b/.gitignore
@@ -29,3 +29,4 @@
/node-v0.10.28-stripped.tar.gz
/node-v0.10.29-stripped.tar.gz
/node-v0.10.30-stripped.tar.gz
+/node-v0.10.32-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 9d366d4..bbe1b89 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.30
+Version: 0.10.32
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -169,6 +169,11 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Thu Sep 18 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.32-1
+- new upstream release 0.10.32
+
http://blog.nodejs.org/2014/08/19/node-v0-10-31-stable/
+
http://blog.nodejs.org/2014/09/16/node-v0-10-32-stable/
+
* Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
- new upstream release 0.10.30
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
diff --git a/sources b/sources
index d50cbaf..d8b8872 100644
--- a/sources
+++ b/sources
@@ -1 +1,2 @@
69074384366b4bc8ccc25e8c434b6817 node-v0.10.30-stripped.tar.gz
+7e508cec9f98e41d2bcf1631795d33ee node-v0.10.32-stripped.tar.gz
commit b820453c7fda055f00ece242f35952eac9f24d3b
Author: Peter Robinson
pbrobinson@fedoraproject.org
Date: Sun Aug 17 12:01:52 2014 +0000
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
diff --git a/nodejs.spec b/nodejs.spec
index 63e4e94..4bc9fd7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.30
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -190,6 +190,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Sun Aug 17 2014 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.30-2
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
* Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
- new upstream release 0.10.30
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
commit 2fc863fbaad6f39804eaf29edc835e95a85be868
Merge: 5e9b116 b151db5
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 21:59:42 2014 -0700
Merge branch 'epel7' into f21
commit b151db5835a8760237c0776f301cc11e76a90915
Merge: 3a1ba2d 870eb6e
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 21:59:35 2014 -0700
Merge branch 'f19' into epel7
Conflicts:
nodejs.spec
diff --cc nodejs.spec
index fd43fba,9d366d4..f504803
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -23,11 -23,13 +23,18 @@@ Source7: nodejs_native.att
# Disable running gyp on bundled deps we don't use
Patch1: nodejs-disable-gyp-deps.patch
+# use system certificates instead of the bundled ones
+# modified version of Debian patch:
+#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
+Patch2: nodejs-use-system-certs.patch
+
+ # The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
+ # be done in a stable distribution release. This build of nodejs will behave as
+ # if NODE_INVALID_UTF8 was set. For more information on the implications, see:
+ #
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
+ Patch3: nodejs-revert-utf8-v8.patch
+ Patch4: nodejs-revert-utf8-node.patch
+
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 1:3.14.5.7
@@@ -91,15 -90,11 +98,18 @@@ The API documentation for the Node.js J
%prep
%setup -q -n node-v%{version}
+
+# remove bundled dependencies
%patch1 -p1
+rm -rf deps
+
+# remove bundled CA certificates
+%patch2 -p1
+rm -f src/node_root_certs.h
+
+ %patch3 -p1
+ %patch4 -p1
+
-rm -rf deps
%build
# build with debugging symbols and add defines from libuv (#892601)
commit 8665ff17bb6ae6a619523b8b662f432bad519aca
Merge: 28c8045 870eb6e
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 21:58:06 2014 -0700
Merge branch 'f19' into f20
commit 870eb6e41627986de37a3aac3784400f4c408790
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 21:56:53 2014 -0700
fix UTF-8 change reversion patch for v0.10.30
diff --git a/nodejs-revert-utf8-node.patch b/nodejs-revert-utf8-node.patch
index be1e972..f8c8f37 100644
--- a/nodejs-revert-utf8-node.patch
+++ b/nodejs-revert-utf8-node.patch
@@ -767,7 +767,7 @@ index 0dbf7f4..0000000
- return str_;
- };
-
-- size_t length() {
+- size_t length() const {
- return length_;
- };
-
commit ea65a91fc76e83a43f8ff7b7ef618488ed9ff69b
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 21:53:32 2014 -0700
Revert "allow UTF-8 change to happen"
Can't do this just yet. :-(
This reverts commit b7cebd90d15f3d83de1336bd9a9dfc5f13c34b18.
diff --git a/nodejs-revert-utf8-node.patch b/nodejs-revert-utf8-node.patch
new file mode 100644
index 0000000..be1e972
--- /dev/null
+++ b/nodejs-revert-utf8-node.patch
@@ -0,0 +1,784 @@
+From a9e60792a9c4044e29ec7bbb88419d9283044b86 Mon Sep 17 00:00:00 2001
+From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
+Date: Wed, 18 Jun 2014 23:19:19 -0700
+Subject: [PATCH] Revert "src: replace usage of String::Utf8Value"
+
+This reverts commit 535c7777ac674ba86cf93c44824e07b0e23ea8c4.
+---
+ src/cares_wrap.cc | 8 ++---
+ src/fs_event_wrap.cc | 3 +-
+ src/node.cc | 42 +++++++++++++-------------
+ src/node_crypto.cc | 31 ++++++++++---------
+ src/node_dtrace.cc | 6 ++--
+ src/node_file.cc | 37 +++++++++++------------
+ src/node_stat_watcher.cc | 3 +-
+ src/process_wrap.cc | 9 +++---
+ src/udp_wrap.cc | 9 +++---
+ src/util.h | 78 ------------------------------------------------
+ 10 files changed, 68 insertions(+), 158 deletions(-)
+ delete mode 100644 src/util.h
+
+diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc
+index 321e144..b7ba828 100644
+--- a/src/cares_wrap.cc
++++ b/src/cares_wrap.cc
+@@ -31,8 +31,6 @@
+ #include "tree.h"
+ #include "uv.h"
+
+-#include "util.h"
+-
+ #if defined(__OpenBSD__) || defined(__MINGW32__) || defined(_MSC_VER)
+ # include <nameser.h>
+ #else
+@@ -741,7 +739,7 @@ static Handle<Value> Query(const Arguments& args) {
+ // object reference, causing wrap->GetObject() to return undefined.
+ Local<Object> object = Local<Object>::New(wrap->GetObject());
+
+- node::Utf8Value name(args[0]);
++ String::Utf8Value name(args[0]);
+
+ int r = wrap->Send(*name);
+ if (r) {
+@@ -770,7 +768,7 @@ static Handle<Value> QueryWithFamily(const Arguments& args) {
+ // object reference, causing wrap->GetObject() to return undefined.
+ Local<Object> object = Local<Object>::New(wrap->GetObject());
+
+- node::Utf8Value name(args[0]);
++ String::Utf8Value name(args[0]);
+ int family = args[1]->Int32Value();
+
+ int r = wrap->Send(*name, family);
+@@ -900,7 +898,7 @@ static Handle<Value> IsIP(const Arguments& args) {
+ static Handle<Value> GetAddrInfo(const Arguments& args) {
+ HandleScope scope;
+
+- node::Utf8Value hostname(args[0]);
++ String::Utf8Value hostname(args[0]);
+
+ int fam = AF_UNSPEC;
+ if (args[1]->IsInt32()) {
+diff --git a/src/fs_event_wrap.cc b/src/fs_event_wrap.cc
+index fc54283..7e3eb8c 100644
+--- a/src/fs_event_wrap.cc
++++ b/src/fs_event_wrap.cc
+@@ -21,7 +21,6 @@
+
+ #include "node.h"
+ #include "handle_wrap.h"
+-#include "util.h"
+
+ #include <stdlib.h>
+
+@@ -98,7 +97,7 @@ Handle<Value> FSEventWrap::Start(const Arguments& args) {
+ return ThrowException(Exception::TypeError(String::New("Bad arguments")));
+ }
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ int r = uv_fs_event_init(uv_default_loop(), &wrap->handle_, *path, OnEvent, 0);
+ if (r == 0) {
+diff --git a/src/node.cc b/src/node.cc
+index e9696cd..8257604 100644
+--- a/src/node.cc
++++ b/src/node.cc
+@@ -82,8 +82,6 @@ typedef int mode_t;
+ #include "node_script.h"
+ #include "v8_typed_array.h"
+
+-#include "util.h"
+-
+ using namespace v8;
+
+ # ifdef __APPLE__
+@@ -1102,7 +1100,7 @@ enum encoding ParseEncoding(Handle<Value> encoding_v, enum encoding _default) {
+
+ if (!encoding_v->IsString()) return _default;
+
+- node::Utf8Value encoding(encoding_v);
++ String::Utf8Value encoding(encoding_v);
+
+ if (strcasecmp(*encoding, "utf8") == 0) {
+ return UTF8;
+@@ -1202,12 +1200,12 @@ void DisplayExceptionLine (TryCatch &try_catch) {
+
+ if (!message.IsEmpty()) {
+ // Print (filename):(line number): (message).
+- node::Utf8Value filename(message->GetScriptResourceName());
++ String::Utf8Value filename(message->GetScriptResourceName());
+ const char* filename_string = *filename;
+ int linenum = message->GetLineNumber();
+ fprintf(stderr, "%s:%i\n", filename_string, linenum);
+ // Print line of source code.
+- node::Utf8Value sourceline(message->GetSourceLine());
++ String::Utf8Value sourceline(message->GetSourceLine());
+ const char* sourceline_string = *sourceline;
+
+ // Because of how node modules work, all scripts are wrapped with a
+@@ -1254,7 +1252,7 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
+
+ if (show_line) DisplayExceptionLine(try_catch);
+
+- node::Utf8Value trace(try_catch.StackTrace());
++ String::Utf8Value trace(try_catch.StackTrace());
+
+ // range errors have a trace member set to undefined
+ if (trace.length() > 0 && !try_catch.StackTrace()->IsUndefined()) {
+@@ -1269,11 +1267,11 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
+ !(er->ToObject()->Get(String::New("name"))->IsUndefined());
+
+ if (isErrorObject) {
+- node::Utf8Value name(er->ToObject()->Get(String::New("name")));
++ String::Utf8Value name(er->ToObject()->Get(String::New("name")));
+ fprintf(stderr, "%s: ", *name);
+ }
+
+- node::Utf8Value msg(!isErrorObject ? er
++ String::Utf8Value msg(!isErrorObject ? er
+ : er->ToObject()->Get(String::New("message")));
+ fprintf(stderr, "%s\n", *msg);
+ }
+@@ -1355,7 +1353,7 @@ static Handle<Value> Chdir(const Arguments& args) {
+ return ThrowException(Exception::Error(String::New("Bad argument.")));
+ }
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ uv_err_t r = uv_chdir(*path);
+
+@@ -1406,7 +1404,7 @@ static Handle<Value> Umask(const Arguments& args) {
+ oct = args[0]->Uint32Value();
+ } else {
+ oct = 0;
+- node::Utf8Value str(args[0]);
++ String::Utf8Value str(args[0]);
+
+ // Parse the octal string.
+ for (int i = 0; i < str.length(); i++) {
+@@ -1512,7 +1510,7 @@ static uid_t uid_by_name(Handle<Value> value) {
+ if (value->IsUint32()) {
+ return static_cast<uid_t>(value->Uint32Value());
+ } else {
+- node::Utf8Value name(value);
++ String::Utf8Value name(value);
+ return uid_by_name(*name);
+ }
+ }
+@@ -1522,7 +1520,7 @@ static gid_t gid_by_name(Handle<Value> value) {
+ if (value->IsUint32()) {
+ return static_cast<gid_t>(value->Uint32Value());
+ } else {
+- node::Utf8Value name(value);
++ String::Utf8Value name(value);
+ return gid_by_name(*name);
+ }
+ }
+@@ -1665,7 +1663,7 @@ static Handle<Value> InitGroups(const Arguments& args) {
+ return ThrowTypeError("argument 2 must be a number or a string");
+ }
+
+- node::Utf8Value arg0(args[0]);
++ String::Utf8Value arg0(args[0]);
+ gid_t extra_group;
+ bool must_free;
+ char* user;
+@@ -1826,7 +1824,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
+ }
+
+ Local<Object> module = args[0]->ToObject(); // Cast
+- node::Utf8Value filename(args[1]); // Cast
++ String::Utf8Value filename(args[1]); // Cast
+
+ if (exports_symbol.IsEmpty()) {
+ exports_symbol = NODE_PSYMBOL("exports");
+@@ -1842,7 +1840,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
+ return ThrowException(Exception::Error(errmsg));
+ }
+
+- node::Utf8Value path(args[1]);
++ String::Utf8Value path(args[1]);
+ base = *path;
+
+ /* Find the shared library filename within the full path. */
+@@ -1961,7 +1959,7 @@ static Handle<Value> Binding(const Arguments& args) {
+ HandleScope scope;
+
+ Local<String> module = args[0]->ToString();
+- node::Utf8Value module_v(module);
++ String::Utf8Value module_v(module);
+ node_module_struct* modp;
+
+ if (binding_cache.IsEmpty()) {
+@@ -2020,7 +2018,7 @@ static void ProcessTitleSetter(Local<String> property,
+ Local<Value> value,
+ const AccessorInfo& info) {
+ HandleScope scope;
+- node::Utf8Value title(value);
++ String::Utf8Value title(value);
+ // TODO: protect with a lock
+ uv_set_process_title(*title);
+ }
+@@ -2030,7 +2028,7 @@ static Handle<Value> EnvGetter(Local<String> property,
+ const AccessorInfo& info) {
+ HandleScope scope;
+ #ifdef __POSIX__
+- node::Utf8Value key(property);
++ String::Utf8Value key(property);
+ const char* val = getenv(*key);
+ if (val) {
+ return scope.Close(String::New(val));
+@@ -2059,8 +2057,8 @@ static Handle<Value> EnvSetter(Local<String> property,
+ const AccessorInfo& info) {
+ HandleScope scope;
+ #ifdef __POSIX__
+- node::Utf8Value key(property);
+- node::Utf8Value val(value);
++ String::Utf8Value key(property);
++ String::Utf8Value val(value);
+ setenv(*key, *val, 1);
+ #else // _WIN32
+ String::Value key(property);
+@@ -2080,7 +2078,7 @@ static Handle<Integer> EnvQuery(Local<String> property,
+ const AccessorInfo& info) {
+ HandleScope scope;
+ #ifdef __POSIX__
+- node::Utf8Value key(property);
++ String::Utf8Value key(property);
+ if (getenv(*key)) {
+ return scope.Close(Integer::New(0));
+ }
+@@ -2108,7 +2106,7 @@ static Handle<Boolean> EnvDeleter(Local<String> property,
+ const AccessorInfo& info) {
+ HandleScope scope;
+ #ifdef __POSIX__
+- node::Utf8Value key(property);
++ String::Utf8Value key(property);
+ if (!getenv(*key)) return False();
+ unsetenv(*key); // can't check return value, it's void on some platforms
+ return True();
+diff --git a/src/node_crypto.cc b/src/node_crypto.cc
+index 46faba2..0ae1f8a 100644
+--- a/src/node_crypto.cc
++++ b/src/node_crypto.cc
+@@ -26,7 +26,6 @@
+ #include "node.h"
+ #include "node_buffer.h"
+ #include "string_bytes.h"
+-#include "util.h"
+
+ #include <string.h>
+ #ifdef _MSC_VER
+@@ -242,7 +241,7 @@ Handle<Value> SecureContext::Init(const Arguments& args) {
+ OPENSSL_CONST SSL_METHOD *method = SSLv23_method();
+
+ if (args.Length() == 1 && args[0]->IsString()) {
+- node::Utf8Value sslmethod(args[0]);
++ String::Utf8Value sslmethod(args[0]);
+
+ if (strcmp(*sslmethod, "SSLv2_method") == 0) {
+ #ifndef OPENSSL_NO_SSL2
+@@ -362,7 +361,7 @@ static BIO* LoadBIO (Handle<Value> v) {
+ int r = -1;
+
+ if (v->IsString()) {
+- node::Utf8Value s(v);
++ String::Utf8Value s(v);
+ r = BIO_write(bio, *s, s.length());
+ } else if (Buffer::HasInstance(v)) {
+ char* buffer_data = Buffer::Data(v);
+@@ -414,7 +413,7 @@ Handle<Value> SecureContext::SetKey(const Arguments& args) {
+ BIO *bio = LoadBIO(args[0]);
+ if (!bio) return False();
+
+- node::Utf8Value passphrase(args[1]);
++ String::Utf8Value passphrase(args[1]);
+
+ EVP_PKEY* key = PEM_read_bio_PrivateKey(bio, NULL, NULL,
+ len == 1 ? NULL : *passphrase);
+@@ -644,7 +643,7 @@ Handle<Value> SecureContext::SetCiphers(const Arguments& args) {
+ return ThrowException(Exception::TypeError(String::New("Bad parameter")));
+ }
+
+- node::Utf8Value ciphers(args[0]);
++ String::Utf8Value ciphers(args[0]);
+ SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
+
+ return True();
+@@ -673,7 +672,7 @@ Handle<Value> SecureContext::SetSessionIdContext(const Arguments& args) {
+ return ThrowException(Exception::TypeError(String::New("Bad parameter")));
+ }
+
+- node::Utf8Value sessionIdContext(args[0]);
++ String::Utf8Value sessionIdContext(args[0]);
+ const unsigned char* sid_ctx = (const unsigned char*) *sessionIdContext;
+ unsigned int sid_ctx_len = sessionIdContext.length();
+
+@@ -1281,7 +1280,7 @@ Handle<Value> Connection::New(const Arguments& args) {
+ if (is_server) {
+ SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
+ } else {
+- node::Utf8Value servername(args[2]);
++ String::Utf8Value servername(args[2]);
+ SSL_set_tlsext_host_name(p->ssl_, *servername);
+ }
+ #endif
+@@ -2234,7 +2233,7 @@ class Cipher : public ObjectWrap {
+ ssize_t key_written = DecodeWrite(key_buf, key_buf_len, args[1], BINARY);
+ assert(key_written == key_buf_len);
+
+- node::Utf8Value cipherType(args[0]);
++ String::Utf8Value cipherType(args[0]);
+
+ bool r = cipher->CipherInit(*cipherType, key_buf, key_buf_len);
+
+@@ -2285,7 +2284,7 @@ class Cipher : public ObjectWrap {
+ ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
+ assert(iv_written == iv_len);
+
+- node::Utf8Value cipherType(args[0]);
++ String::Utf8Value cipherType(args[0]);
+
+ bool r = cipher->CipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
+
+@@ -2544,7 +2543,7 @@ class Decipher : public ObjectWrap {
+ ssize_t key_written = DecodeWrite(key_buf, key_len, args[1], BINARY);
+ assert(key_written == key_len);
+
+- node::Utf8Value cipherType(args[0]);
++ String::Utf8Value cipherType(args[0]);
+
+ bool r = cipher->DecipherInit(*cipherType, key_buf,key_len);
+
+@@ -2595,7 +2594,7 @@ class Decipher : public ObjectWrap {
+ ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
+ assert(iv_written == iv_len);
+
+- node::Utf8Value cipherType(args[0]);
++ String::Utf8Value cipherType(args[0]);
+
+ bool r = cipher->DecipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
+
+@@ -2776,7 +2775,7 @@ class Hmac : public ObjectWrap {
+ return ThrowException(exception);
+ }
+
+- node::Utf8Value hashType(args[0]);
++ String::Utf8Value hashType(args[0]);
+
+ bool r;
+
+@@ -2921,7 +2920,7 @@ class Hash : public ObjectWrap {
+ "Must give hashtype string as argument")));
+ }
+
+- node::Utf8Value hashType(args[0]);
++ String::Utf8Value hashType(args[0]);
+
+ Hash *hash = new Hash();
+ if (!hash->HashInit(*hashType)) {
+@@ -3095,7 +3094,7 @@ class Sign : public ObjectWrap {
+ "Must give signtype string as argument")));
+ }
+
+- node::Utf8Value signType(args[0]);
++ String::Utf8Value signType(args[0]);
+
+ bool r = sign->SignInit(*signType);
+
+@@ -3328,7 +3327,7 @@ class Verify : public ObjectWrap {
+ "Must give verifytype string as argument")));
+ }
+
+- node::Utf8Value verifyType(args[0]);
++ String::Utf8Value verifyType(args[0]);
+
+ bool r = verify->VerifyInit(*verifyType);
+
+@@ -3511,7 +3510,7 @@ class DiffieHellman : public ObjectWrap {
+ String::New("No group name given")));
+ }
+
+- node::Utf8Value group_name(args[0]);
++ String::Utf8Value group_name(args[0]);
+
+ modp_group* it = modp_groups;
+
+diff --git a/src/node_dtrace.cc b/src/node_dtrace.cc
+index 0b2d0f4..4b851e3 100644
+--- a/src/node_dtrace.cc
++++ b/src/node_dtrace.cc
+@@ -20,8 +20,6 @@
+ // USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
+-#include "util.h"
+-
+ #ifdef HAVE_DTRACE
+ #include "node_dtrace.h"
+ #include <string.h>
+@@ -68,7 +66,7 @@ using namespace v8;
+ return (ThrowException(Exception::Error(String::New("expected " \
+ "object for " #obj " to contain string member " #member)))); \
+ } \
+- node::Utf8Value _##member(obj->Get(String::New(#member))); \
++ String::Utf8Value _##member(obj->Get(String::New(#member))); \
+ if ((*(const char **)valp = *_##member) == NULL) \
+ *(const char **)valp = "<unknown>";
+
+@@ -243,7 +241,7 @@ Handle<Value> DTRACE_HTTP_SERVER_REQUEST(const Arguments& args) {
+ "object for request to contain string member headers"))));
+
+ Local<Value> strfwdfor = headers->Get(String::New("x-forwarded-for"));
+- node::Utf8Value fwdfor(strfwdfor);
++ String::Utf8Value fwdfor(strfwdfor);
+
+ if (!strfwdfor->IsString() || (req.forwardedFor = *fwdfor) == NULL)
+ req.forwardedFor = const_cast<char*>("");
+diff --git a/src/node_file.cc b/src/node_file.cc
+index 3c35e0b..f665b19 100644
+--- a/src/node_file.cc
++++ b/src/node_file.cc
+@@ -24,7 +24,6 @@
+ #include "node_buffer.h"
+ #include "node_stat_watcher.h"
+ #include "req_wrap.h"
+-#include "util.h"
+
+ #include <fcntl.h>
+ #include <sys/types.h>
+@@ -404,7 +403,7 @@ static Handle<Value> Stat(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(stat, args[1], *path)
+@@ -421,7 +420,7 @@ static Handle<Value> LStat(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(lstat, args[1], *path)
+@@ -459,12 +458,12 @@ static Handle<Value> Symlink(const Arguments& args) {
+ if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
+ if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
+
+- node::Utf8Value dest(args[0]);
+- node::Utf8Value path(args[1]);
++ String::Utf8Value dest(args[0]);
++ String::Utf8Value path(args[1]);
+ int flags = 0;
+
+ if (args[2]->IsString()) {
+- node::Utf8Value mode(args[2]);
++ String::Utf8Value mode(args[2]);
+ if (strcmp(*mode, "dir") == 0) {
+ flags |= UV_FS_SYMLINK_DIR;
+ } else if (strcmp(*mode, "junction") == 0) {
+@@ -492,8 +491,8 @@ static Handle<Value> Link(const Arguments& args) {
+ if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
+ if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
+
+- node::Utf8Value orig_path(args[0]);
+- node::Utf8Value new_path(args[1]);
++ String::Utf8Value orig_path(args[0]);
++ String::Utf8Value new_path(args[1]);
+
+ if (args[2]->IsFunction()) {
+ ASYNC_DEST_CALL(link, args[2], *new_path, *orig_path, *new_path)
+@@ -509,7 +508,7 @@ static Handle<Value> ReadLink(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(readlink, args[1], *path)
+@@ -528,8 +527,8 @@ static Handle<Value> Rename(const Arguments& args) {
+ if (!args[0]->IsString()) return TYPE_ERROR("old path must be a string");
+ if (!args[1]->IsString()) return TYPE_ERROR("new path must be a string");
+
+- node::Utf8Value old_path(args[0]);
+- node::Utf8Value new_path(args[1]);
++ String::Utf8Value old_path(args[0]);
++ String::Utf8Value new_path(args[1]);
+
+ if (args[2]->IsFunction()) {
+ ASYNC_DEST_CALL(rename, args[2], *new_path, *old_path, *new_path)
+@@ -599,7 +598,7 @@ static Handle<Value> Unlink(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(unlink, args[1], *path)
+@@ -615,7 +614,7 @@ static Handle<Value> RMDir(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(rmdir, args[1], *path)
+@@ -632,7 +631,7 @@ static Handle<Value> MKDir(const Arguments& args) {
+ return THROW_BAD_ARGS;
+ }
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ int mode = static_cast<int>(args[1]->Int32Value());
+
+ if (args[2]->IsFunction()) {
+@@ -649,7 +648,7 @@ static Handle<Value> ReadDir(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(readdir, args[1], *path, 0 /*flags*/)
+@@ -687,7 +686,7 @@ static Handle<Value> Open(const Arguments& args) {
+ if (!args[1]->IsInt32()) return TYPE_ERROR("flags must be an int");
+ if (!args[2]->IsInt32()) return TYPE_ERROR("mode must be an int");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ int flags = args[1]->Int32Value();
+ int mode = static_cast<int>(args[2]->Int32Value());
+
+@@ -827,7 +826,7 @@ static Handle<Value> Chmod(const Arguments& args) {
+ if(args.Length() < 2 || !args[0]->IsString() || !args[1]->IsInt32()) {
+ return THROW_BAD_ARGS;
+ }
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ int mode = static_cast<int>(args[1]->Int32Value());
+
+ if(args[2]->IsFunction()) {
+@@ -874,7 +873,7 @@ static Handle<Value> Chown(const Arguments& args) {
+ if (!args[1]->IsUint32()) return TYPE_ERROR("uid must be an unsigned int");
+ if (!args[2]->IsUint32()) return TYPE_ERROR("gid must be an unsigned int");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ uv_uid_t uid = static_cast<uv_uid_t>(args[1]->Uint32Value());
+ uv_gid_t gid = static_cast<uv_gid_t>(args[2]->Uint32Value());
+
+@@ -925,7 +924,7 @@ static Handle<Value> UTimes(const Arguments& args) {
+ if (!args[1]->IsNumber()) return TYPE_ERROR("atime must be a number");
+ if (!args[2]->IsNumber()) return TYPE_ERROR("mtime must be a number");
+
+- const node::Utf8Value path(args[0]);
++ const String::Utf8Value path(args[0]);
+ const double atime = static_cast<double>(args[1]->NumberValue());
+ const double mtime = static_cast<double>(args[2]->NumberValue());
+
+diff --git a/src/node_stat_watcher.cc b/src/node_stat_watcher.cc
+index fd3e5d1..c3f668c 100644
+--- a/src/node_stat_watcher.cc
++++ b/src/node_stat_watcher.cc
+@@ -20,7 +20,6 @@
+ // USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ #include "node_stat_watcher.h"
+-#include "util.h"
+
+ #include <assert.h>
+ #include <string.h>
+@@ -105,7 +104,7 @@ Handle<Value> StatWatcher::Start(const Arguments& args) {
+ HandleScope scope;
+
+ StatWatcher* wrap = ObjectWrap::Unwrap<StatWatcher>(args.Holder());
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ const bool persistent = args[1]->BooleanValue();
+ const uint32_t interval = args[2]->Uint32Value();
+
+diff --git a/src/process_wrap.cc b/src/process_wrap.cc
+index ac63e4b..784300f 100644
+--- a/src/process_wrap.cc
++++ b/src/process_wrap.cc
+@@ -25,7 +25,6 @@
+ #include "tty_wrap.h"
+ #include "tcp_wrap.h"
+ #include "udp_wrap.h"
+-#include "util.h"
+
+ #include <string.h>
+ #include <stdlib.h>
+@@ -188,7 +187,7 @@ class ProcessWrap : public HandleWrap {
+
+ // options.file
+ Local<Value> file_v = js_options->Get(String::NewSymbol("file"));
+- node::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
++ String::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
+ if (file.length() > 0) {
+ options.file = *file;
+ } else {
+@@ -203,7 +202,7 @@ class ProcessWrap : public HandleWrap {
+ // Heap allocate to detect errors. +1 is for NULL.
+ options.args = new char*[argc + 1];
+ for (int i = 0; i < argc; i++) {
+- node::Utf8Value arg(js_argv->Get(i));
++ String::Utf8Value arg(js_argv->Get(i));
+ options.args[i] = strdup(*arg);
+ }
+ options.args[argc] = NULL;
+@@ -211,7 +210,7 @@ class ProcessWrap : public HandleWrap {
+
+ // options.cwd
+ Local<Value> cwd_v = js_options->Get(String::NewSymbol("cwd"));
+- node::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
++ String::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
+ if (cwd.length() > 0) {
+ options.cwd = *cwd;
+ }
+@@ -223,7 +222,7 @@ class ProcessWrap : public HandleWrap {
+ int envc = env->Length();
+ options.env = new char*[envc + 1]; // Heap allocated to detect errors.
+ for (int i = 0; i < envc; i++) {
+- node::Utf8Value pair(env->Get(i));
++ String::Utf8Value pair(env->Get(i));
+ options.env[i] = strdup(*pair);
+ }
+ options.env[envc] = NULL;
+diff --git a/src/udp_wrap.cc b/src/udp_wrap.cc
+index 31a4e78..b33f4e8 100644
+--- a/src/udp_wrap.cc
++++ b/src/udp_wrap.cc
+@@ -25,7 +25,6 @@
+ #include "req_wrap.h"
+ #include "handle_wrap.h"
+ #include "udp_wrap.h"
+-#include "util.h"
+
+ #include <stdlib.h>
+
+@@ -161,7 +160,7 @@ Handle<Value> UDPWrap::DoBind(const Arguments& args, int family) {
+ // bind(ip, port, flags)
+ assert(args.Length() == 3);
+
+- node::Utf8Value address(args[0]);
++ String::Utf8Value address(args[0]);
+ const int port = args[1]->Uint32Value();
+ const int flags = args[2]->Uint32Value();
+
+@@ -220,8 +219,8 @@ Handle<Value> UDPWrap::SetMembership(const Arguments& args,
+
+ assert(args.Length() == 2);
+
+- node::Utf8Value address(args[0]);
+- node::Utf8Value iface(args[1]);
++ String::Utf8Value address(args[0]);
++ String::Utf8Value iface(args[1]);
+
+ const char* iface_cstr = *iface;
+ if (args[1]->IsUndefined() || args[1]->IsNull()) {
+@@ -272,7 +271,7 @@ Handle<Value> UDPWrap::DoSend(const Arguments& args, int family) {
+ length);
+
+ const unsigned short port = args[3]->Uint32Value();
+- node::Utf8Value address(args[4]);
++ String::Utf8Value address(args[4]);
+
+ switch (family) {
+ case AF_INET:
+diff --git a/src/util.h b/src/util.h
+deleted file mode 100644
+index 0dbf7f4..0000000
+--- a/src/util.h
++++ /dev/null
+@@ -1,78 +0,0 @@
+-// Copyright Joyent, Inc. and other Node contributors.
+-//
+-// Permission is hereby granted, free of charge, to any person obtaining a
+-// copy of this software and associated documentation files (the
+-// "Software"), to deal in the Software without restriction, including
+-// without limitation the rights to use, copy, modify, merge, publish,
+-// distribute, sublicense, and/or sell copies of the Software, and to permit
+-// persons to whom the Software is furnished to do so, subject to the
+-// following conditions:
+-//
+-// The above copyright notice and this permission notice shall be included
+-// in all copies or substantial portions of the Software.
+-//
+-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
+-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
+-// USE OR OTHER DEALINGS IN THE SOFTWARE.
+-
+-#ifndef SRC_UTIL_H_
+-#define SRC_UTIL_H_
+-
+-#include "v8.h"
+-#include "string_bytes.h"
+-
+-namespace node {
+-
+-class Utf8Value {
+- public:
+- explicit Utf8Value(v8::Handle
v8::Value value)
+- : length_(0), str_(NULL) {
+- if (value.IsEmpty())
+- return;
+-
+- v8::Local
v8::String val_ = value->ToString();
+-
+- // Allocate enough space to include the null terminator
+- size_t len = StringBytes::StorageSize(val_, UTF8) + 1;
+-
+- char* str = static_cast<char*>(calloc(1, len));
+-
+- int flags = WRITE_UTF8_FLAGS;
+- flags |= ~v8::String::NO_NULL_TERMINATION;
+-
+- length_ = val_->WriteUtf8(str,
+- len,
+- 0,
+- flags);
+-
+- str_ = reinterpret_cast<char*>(str);
+- }
+-
+- ~Utf8Value() {
+- free(str_);
+- }
+-
+- char* operator*() {
+- return str_;
+- };
+-
+- const char* operator*() const {
+- return str_;
+- };
+-
+- size_t length() {
+- return length_;
+- };
+-
+- private:
+- size_t length_;
+- char* str_;
+-};
+-
+-} // namespace node
+-
+-#endif // SRC_UTIL_H_
+--
+1.9.3
+
diff --git a/nodejs-revert-utf8-v8.patch b/nodejs-revert-utf8-v8.patch
new file mode 100644
index 0000000..f617cf3
--- /dev/null
+++ b/nodejs-revert-utf8-v8.patch
@@ -0,0 +1,90 @@
+From c7c934c66cd8712c9ff169f1ef4c5670d3ff99c8 Mon Sep 17 00:00:00 2001
+From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
+Date: Wed, 18 Jun 2014 23:09:03 -0700
+Subject: [PATCH] Revert "string_bytes: Guarantee valid utf-8 output"
+
+This reverts commit 0da4c671659cfbae12def127b2e94690b9d9b5e1.
+---
+ src/node.cc | 7 -------
+ src/string_bytes.cc | 2 +-
+ src/string_bytes.h | 2 --
+ test/simple/test-buffer.js | 12 ------------
+ 4 files changed, 1 insertion(+), 22 deletions(-)
+
+diff --git a/src/node.cc b/src/node.cc
+index 4223973..e9696cd 100644
+--- a/src/node.cc
++++ b/src/node.cc
+@@ -178,8 +178,6 @@ static uv_async_t dispatch_debug_messages_async;
+ // Declared in node_internals.h
+ Isolate* node_isolate = NULL;
+
+-int WRITE_UTF8_FLAGS = v8::String::HINT_MANY_WRITES_EXPECTED |
+- v8::String::NO_NULL_TERMINATION;
+
+ static void Spin(uv_idle_t* handle, int status) {
+ assert((uv_idle_t*) handle == &tick_spinner);
+@@ -3046,11 +3044,6 @@ static char **copy_argv(int argc, char **argv) {
+ }
+
+ int Start(int argc, char *argv[]) {
+- const char* replaceInvalid = getenv("NODE_INVALID_UTF8");
+-
+- if (replaceInvalid == NULL)
+- WRITE_UTF8_FLAGS |= String::REPLACE_INVALID_UTF8;
+-
+ // Hack aroung with the argv pointer. Used for process.title = "blah".
+ argv = uv_setup_args(argc, argv);
+
+diff --git a/src/string_bytes.cc b/src/string_bytes.cc
+index a7bab38..e4a34fe 100644
+--- a/src/string_bytes.cc
++++ b/src/string_bytes.cc
+@@ -199,7 +199,7 @@ size_t StringBytes::Write(char* buf,
+ break;
+
+ case UTF8:
+- len = str->WriteUtf8(buf, buflen, chars_written, WRITE_UTF8_FLAGS);
++ len = str->WriteUtf8(buf, buflen, chars_written, flags);
+ break;
+
+ case UCS2:
+diff --git a/src/string_bytes.h b/src/string_bytes.h
+index 31f04bb..8071a49 100644
+--- a/src/string_bytes.h
++++ b/src/string_bytes.h
+@@ -29,8 +29,6 @@
+
+ namespace node {
+
+-extern int WRITE_UTF8_FLAGS;
+-
+ using v8::Handle;
+ using v8::Local;
+ using v8::String;
+diff --git a/test/simple/test-buffer.js b/test/simple/test-buffer.js
+index f8b2798..3026824 100644
+--- a/test/simple/test-buffer.js
++++ b/test/simple/test-buffer.js
+@@ -791,18 +791,6 @@ assert.equal(buf[3], 0xFF);
+ assert.equal(buf[3], 0xFF);
+ });
+
+-// test unmatched surrogates not producing invalid utf8 output
+-// ef bf bd = utf-8 representation of unicode replacement character
+-// see
https://codereview.chromium.org/121173009/
+-buf = new Buffer('ab\ud800cd', 'utf8');
+-assert.equal(buf[0], 0x61);
+-assert.equal(buf[1], 0x62);
+-assert.equal(buf[2], 0xef);
+-assert.equal(buf[3], 0xbf);
+-assert.equal(buf[4], 0xbd);
+-assert.equal(buf[5], 0x63);
+-assert.equal(buf[6], 0x64);
+-
+ // test for buffer overrun
+ buf = new Buffer([0, 0, 0, 0, 0]); // length: 5
+ var sub = buf.slice(0, 4); // length: 4
+--
+1.9.3
+
diff --git a/nodejs.spec b/nodejs.spec
index fcf741e..9d366d4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -23,6 +23,13 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: nodejs-disable-gyp-deps.patch
+# The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
+# be done in a stable distribution release. This build of nodejs will behave as
+# if NODE_INVALID_UTF8 was set. For more information on the implications, see:
+#
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
+Patch3: nodejs-revert-utf8-v8.patch
+Patch4: nodejs-revert-utf8-node.patch
+
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 1:3.14.5.7
@@ -84,6 +91,8 @@ The API documentation for the Node.js JavaScript runtime.
%prep
%setup -q -n node-v%{version}
%patch1 -p1
+%patch3 -p1
+%patch4 -p1
rm -rf deps
@@ -163,8 +172,6 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
- new upstream release 0.10.30
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
-- allow UTF8 change to happen:
-
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
* Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
- new upstream release 0.10.29
commit 5e9b11675ec7364fd619d6c5cbbf81c9a687d5eb
Merge: a63a79b 3a1ba2d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 17:45:12 2014 -0700
Merge branch 'epel7' into f21
commit 3a1ba2df078813e2f373a429ae12a6ae9d6d7562
Merge: 6c7a3c1 b7cebd9
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 17:45:04 2014 -0700
Merge branch 'f19' into epel7
Conflicts:
nodejs.spec
diff --cc nodejs.spec
index bc360de,fcf741e..fd43fba
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -23,18 -23,6 +23,11 @@@ Source7: nodejs_native.att
# Disable running gyp on bundled deps we don't use
Patch1: nodejs-disable-gyp-deps.patch
+# use system certificates instead of the bundled ones
+# modified version of Debian patch:
+#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
+Patch2: nodejs-use-system-certs.patch
+
- # The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
- # be done in a stable distribution release. This build of nodejs will behave as
- # if NODE_INVALID_UTF8 was set. For more information on the implications, see:
- #
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
- Patch3: nodejs-revert-utf8-v8.patch
- Patch4: nodejs-revert-utf8-node.patch
-
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 1:3.14.5.7
@@@ -98,18 -83,10 +91,16 @@@ The API documentation for the Node.js J
%prep
%setup -q -n node-v%{version}
-%patch1 -p1
+# remove bundled dependencies
+%patch1 -p1
rm -rf deps
+# remove bundled CA certificates
+%patch2 -p1
+rm -f src/node_root_certs.h
+
- %patch3 -p1
- %patch4 -p1
+
%build
# build with debugging symbols and add defines from libuv (#892601)
export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
commit 28c804583241099587176fca624294624c176194
Merge: 5f97a4a b7cebd9
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 17:43:38 2014 -0700
Merge branch 'f19' into f20
commit b7cebd90d15f3d83de1336bd9a9dfc5f13c34b18
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 17:42:33 2014 -0700
allow UTF-8 change to happen
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
I've looked into this further and I think Debian is being a bit
too pedantic; not worth fighting with this patch every release. ;-)
diff --git a/nodejs-revert-utf8-node.patch b/nodejs-revert-utf8-node.patch
deleted file mode 100644
index be1e972..0000000
--- a/nodejs-revert-utf8-node.patch
+++ /dev/null
@@ -1,784 +0,0 @@
-From a9e60792a9c4044e29ec7bbb88419d9283044b86 Mon Sep 17 00:00:00 2001
-From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
-Date: Wed, 18 Jun 2014 23:19:19 -0700
-Subject: [PATCH] Revert "src: replace usage of String::Utf8Value"
-
-This reverts commit 535c7777ac674ba86cf93c44824e07b0e23ea8c4.
----
- src/cares_wrap.cc | 8 ++---
- src/fs_event_wrap.cc | 3 +-
- src/node.cc | 42 +++++++++++++-------------
- src/node_crypto.cc | 31 ++++++++++---------
- src/node_dtrace.cc | 6 ++--
- src/node_file.cc | 37 +++++++++++------------
- src/node_stat_watcher.cc | 3 +-
- src/process_wrap.cc | 9 +++---
- src/udp_wrap.cc | 9 +++---
- src/util.h | 78 ------------------------------------------------
- 10 files changed, 68 insertions(+), 158 deletions(-)
- delete mode 100644 src/util.h
-
-diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc
-index 321e144..b7ba828 100644
---- a/src/cares_wrap.cc
-+++ b/src/cares_wrap.cc
-@@ -31,8 +31,6 @@
- #include "tree.h"
- #include "uv.h"
-
--#include "util.h"
--
- #if defined(__OpenBSD__) || defined(__MINGW32__) || defined(_MSC_VER)
- # include <nameser.h>
- #else
-@@ -741,7 +739,7 @@ static Handle<Value> Query(const Arguments& args) {
- // object reference, causing wrap->GetObject() to return undefined.
- Local<Object> object = Local<Object>::New(wrap->GetObject());
-
-- node::Utf8Value name(args[0]);
-+ String::Utf8Value name(args[0]);
-
- int r = wrap->Send(*name);
- if (r) {
-@@ -770,7 +768,7 @@ static Handle<Value> QueryWithFamily(const Arguments& args) {
- // object reference, causing wrap->GetObject() to return undefined.
- Local<Object> object = Local<Object>::New(wrap->GetObject());
-
-- node::Utf8Value name(args[0]);
-+ String::Utf8Value name(args[0]);
- int family = args[1]->Int32Value();
-
- int r = wrap->Send(*name, family);
-@@ -900,7 +898,7 @@ static Handle<Value> IsIP(const Arguments& args) {
- static Handle<Value> GetAddrInfo(const Arguments& args) {
- HandleScope scope;
-
-- node::Utf8Value hostname(args[0]);
-+ String::Utf8Value hostname(args[0]);
-
- int fam = AF_UNSPEC;
- if (args[1]->IsInt32()) {
-diff --git a/src/fs_event_wrap.cc b/src/fs_event_wrap.cc
-index fc54283..7e3eb8c 100644
---- a/src/fs_event_wrap.cc
-+++ b/src/fs_event_wrap.cc
-@@ -21,7 +21,6 @@
-
- #include "node.h"
- #include "handle_wrap.h"
--#include "util.h"
-
- #include <stdlib.h>
-
-@@ -98,7 +97,7 @@ Handle<Value> FSEventWrap::Start(const Arguments& args) {
- return ThrowException(Exception::TypeError(String::New("Bad arguments")));
- }
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- int r = uv_fs_event_init(uv_default_loop(), &wrap->handle_, *path, OnEvent, 0);
- if (r == 0) {
-diff --git a/src/node.cc b/src/node.cc
-index e9696cd..8257604 100644
---- a/src/node.cc
-+++ b/src/node.cc
-@@ -82,8 +82,6 @@ typedef int mode_t;
- #include "node_script.h"
- #include "v8_typed_array.h"
-
--#include "util.h"
--
- using namespace v8;
-
- # ifdef __APPLE__
-@@ -1102,7 +1100,7 @@ enum encoding ParseEncoding(Handle<Value> encoding_v, enum encoding _default) {
-
- if (!encoding_v->IsString()) return _default;
-
-- node::Utf8Value encoding(encoding_v);
-+ String::Utf8Value encoding(encoding_v);
-
- if (strcasecmp(*encoding, "utf8") == 0) {
- return UTF8;
-@@ -1202,12 +1200,12 @@ void DisplayExceptionLine (TryCatch &try_catch) {
-
- if (!message.IsEmpty()) {
- // Print (filename):(line number): (message).
-- node::Utf8Value filename(message->GetScriptResourceName());
-+ String::Utf8Value filename(message->GetScriptResourceName());
- const char* filename_string = *filename;
- int linenum = message->GetLineNumber();
- fprintf(stderr, "%s:%i\n", filename_string, linenum);
- // Print line of source code.
-- node::Utf8Value sourceline(message->GetSourceLine());
-+ String::Utf8Value sourceline(message->GetSourceLine());
- const char* sourceline_string = *sourceline;
-
- // Because of how node modules work, all scripts are wrapped with a
-@@ -1254,7 +1252,7 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
-
- if (show_line) DisplayExceptionLine(try_catch);
-
-- node::Utf8Value trace(try_catch.StackTrace());
-+ String::Utf8Value trace(try_catch.StackTrace());
-
- // range errors have a trace member set to undefined
- if (trace.length() > 0 && !try_catch.StackTrace()->IsUndefined()) {
-@@ -1269,11 +1267,11 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
- !(er->ToObject()->Get(String::New("name"))->IsUndefined());
-
- if (isErrorObject) {
-- node::Utf8Value name(er->ToObject()->Get(String::New("name")));
-+ String::Utf8Value name(er->ToObject()->Get(String::New("name")));
- fprintf(stderr, "%s: ", *name);
- }
-
-- node::Utf8Value msg(!isErrorObject ? er
-+ String::Utf8Value msg(!isErrorObject ? er
- : er->ToObject()->Get(String::New("message")));
- fprintf(stderr, "%s\n", *msg);
- }
-@@ -1355,7 +1353,7 @@ static Handle<Value> Chdir(const Arguments& args) {
- return ThrowException(Exception::Error(String::New("Bad argument.")));
- }
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- uv_err_t r = uv_chdir(*path);
-
-@@ -1406,7 +1404,7 @@ static Handle<Value> Umask(const Arguments& args) {
- oct = args[0]->Uint32Value();
- } else {
- oct = 0;
-- node::Utf8Value str(args[0]);
-+ String::Utf8Value str(args[0]);
-
- // Parse the octal string.
- for (int i = 0; i < str.length(); i++) {
-@@ -1512,7 +1510,7 @@ static uid_t uid_by_name(Handle<Value> value) {
- if (value->IsUint32()) {
- return static_cast<uid_t>(value->Uint32Value());
- } else {
-- node::Utf8Value name(value);
-+ String::Utf8Value name(value);
- return uid_by_name(*name);
- }
- }
-@@ -1522,7 +1520,7 @@ static gid_t gid_by_name(Handle<Value> value) {
- if (value->IsUint32()) {
- return static_cast<gid_t>(value->Uint32Value());
- } else {
-- node::Utf8Value name(value);
-+ String::Utf8Value name(value);
- return gid_by_name(*name);
- }
- }
-@@ -1665,7 +1663,7 @@ static Handle<Value> InitGroups(const Arguments& args) {
- return ThrowTypeError("argument 2 must be a number or a string");
- }
-
-- node::Utf8Value arg0(args[0]);
-+ String::Utf8Value arg0(args[0]);
- gid_t extra_group;
- bool must_free;
- char* user;
-@@ -1826,7 +1824,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
- }
-
- Local<Object> module = args[0]->ToObject(); // Cast
-- node::Utf8Value filename(args[1]); // Cast
-+ String::Utf8Value filename(args[1]); // Cast
-
- if (exports_symbol.IsEmpty()) {
- exports_symbol = NODE_PSYMBOL("exports");
-@@ -1842,7 +1840,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
- return ThrowException(Exception::Error(errmsg));
- }
-
-- node::Utf8Value path(args[1]);
-+ String::Utf8Value path(args[1]);
- base = *path;
-
- /* Find the shared library filename within the full path. */
-@@ -1961,7 +1959,7 @@ static Handle<Value> Binding(const Arguments& args) {
- HandleScope scope;
-
- Local<String> module = args[0]->ToString();
-- node::Utf8Value module_v(module);
-+ String::Utf8Value module_v(module);
- node_module_struct* modp;
-
- if (binding_cache.IsEmpty()) {
-@@ -2020,7 +2018,7 @@ static void ProcessTitleSetter(Local<String> property,
- Local<Value> value,
- const AccessorInfo& info) {
- HandleScope scope;
-- node::Utf8Value title(value);
-+ String::Utf8Value title(value);
- // TODO: protect with a lock
- uv_set_process_title(*title);
- }
-@@ -2030,7 +2028,7 @@ static Handle<Value> EnvGetter(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-+ String::Utf8Value key(property);
- const char* val = getenv(*key);
- if (val) {
- return scope.Close(String::New(val));
-@@ -2059,8 +2057,8 @@ static Handle<Value> EnvSetter(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-- node::Utf8Value val(value);
-+ String::Utf8Value key(property);
-+ String::Utf8Value val(value);
- setenv(*key, *val, 1);
- #else // _WIN32
- String::Value key(property);
-@@ -2080,7 +2078,7 @@ static Handle<Integer> EnvQuery(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-+ String::Utf8Value key(property);
- if (getenv(*key)) {
- return scope.Close(Integer::New(0));
- }
-@@ -2108,7 +2106,7 @@ static Handle<Boolean> EnvDeleter(Local<String> property,
- const AccessorInfo& info) {
- HandleScope scope;
- #ifdef __POSIX__
-- node::Utf8Value key(property);
-+ String::Utf8Value key(property);
- if (!getenv(*key)) return False();
- unsetenv(*key); // can't check return value, it's void on some platforms
- return True();
-diff --git a/src/node_crypto.cc b/src/node_crypto.cc
-index 46faba2..0ae1f8a 100644
---- a/src/node_crypto.cc
-+++ b/src/node_crypto.cc
-@@ -26,7 +26,6 @@
- #include "node.h"
- #include "node_buffer.h"
- #include "string_bytes.h"
--#include "util.h"
-
- #include <string.h>
- #ifdef _MSC_VER
-@@ -242,7 +241,7 @@ Handle<Value> SecureContext::Init(const Arguments& args) {
- OPENSSL_CONST SSL_METHOD *method = SSLv23_method();
-
- if (args.Length() == 1 && args[0]->IsString()) {
-- node::Utf8Value sslmethod(args[0]);
-+ String::Utf8Value sslmethod(args[0]);
-
- if (strcmp(*sslmethod, "SSLv2_method") == 0) {
- #ifndef OPENSSL_NO_SSL2
-@@ -362,7 +361,7 @@ static BIO* LoadBIO (Handle<Value> v) {
- int r = -1;
-
- if (v->IsString()) {
-- node::Utf8Value s(v);
-+ String::Utf8Value s(v);
- r = BIO_write(bio, *s, s.length());
- } else if (Buffer::HasInstance(v)) {
- char* buffer_data = Buffer::Data(v);
-@@ -414,7 +413,7 @@ Handle<Value> SecureContext::SetKey(const Arguments& args) {
- BIO *bio = LoadBIO(args[0]);
- if (!bio) return False();
-
-- node::Utf8Value passphrase(args[1]);
-+ String::Utf8Value passphrase(args[1]);
-
- EVP_PKEY* key = PEM_read_bio_PrivateKey(bio, NULL, NULL,
- len == 1 ? NULL : *passphrase);
-@@ -644,7 +643,7 @@ Handle<Value> SecureContext::SetCiphers(const Arguments& args) {
- return ThrowException(Exception::TypeError(String::New("Bad parameter")));
- }
-
-- node::Utf8Value ciphers(args[0]);
-+ String::Utf8Value ciphers(args[0]);
- SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
-
- return True();
-@@ -673,7 +672,7 @@ Handle<Value> SecureContext::SetSessionIdContext(const Arguments& args) {
- return ThrowException(Exception::TypeError(String::New("Bad parameter")));
- }
-
-- node::Utf8Value sessionIdContext(args[0]);
-+ String::Utf8Value sessionIdContext(args[0]);
- const unsigned char* sid_ctx = (const unsigned char*) *sessionIdContext;
- unsigned int sid_ctx_len = sessionIdContext.length();
-
-@@ -1281,7 +1280,7 @@ Handle<Value> Connection::New(const Arguments& args) {
- if (is_server) {
- SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
- } else {
-- node::Utf8Value servername(args[2]);
-+ String::Utf8Value servername(args[2]);
- SSL_set_tlsext_host_name(p->ssl_, *servername);
- }
- #endif
-@@ -2234,7 +2233,7 @@ class Cipher : public ObjectWrap {
- ssize_t key_written = DecodeWrite(key_buf, key_buf_len, args[1], BINARY);
- assert(key_written == key_buf_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->CipherInit(*cipherType, key_buf, key_buf_len);
-
-@@ -2285,7 +2284,7 @@ class Cipher : public ObjectWrap {
- ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
- assert(iv_written == iv_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->CipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
-
-@@ -2544,7 +2543,7 @@ class Decipher : public ObjectWrap {
- ssize_t key_written = DecodeWrite(key_buf, key_len, args[1], BINARY);
- assert(key_written == key_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->DecipherInit(*cipherType, key_buf,key_len);
-
-@@ -2595,7 +2594,7 @@ class Decipher : public ObjectWrap {
- ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
- assert(iv_written == iv_len);
-
-- node::Utf8Value cipherType(args[0]);
-+ String::Utf8Value cipherType(args[0]);
-
- bool r = cipher->DecipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
-
-@@ -2776,7 +2775,7 @@ class Hmac : public ObjectWrap {
- return ThrowException(exception);
- }
-
-- node::Utf8Value hashType(args[0]);
-+ String::Utf8Value hashType(args[0]);
-
- bool r;
-
-@@ -2921,7 +2920,7 @@ class Hash : public ObjectWrap {
- "Must give hashtype string as argument")));
- }
-
-- node::Utf8Value hashType(args[0]);
-+ String::Utf8Value hashType(args[0]);
-
- Hash *hash = new Hash();
- if (!hash->HashInit(*hashType)) {
-@@ -3095,7 +3094,7 @@ class Sign : public ObjectWrap {
- "Must give signtype string as argument")));
- }
-
-- node::Utf8Value signType(args[0]);
-+ String::Utf8Value signType(args[0]);
-
- bool r = sign->SignInit(*signType);
-
-@@ -3328,7 +3327,7 @@ class Verify : public ObjectWrap {
- "Must give verifytype string as argument")));
- }
-
-- node::Utf8Value verifyType(args[0]);
-+ String::Utf8Value verifyType(args[0]);
-
- bool r = verify->VerifyInit(*verifyType);
-
-@@ -3511,7 +3510,7 @@ class DiffieHellman : public ObjectWrap {
- String::New("No group name given")));
- }
-
-- node::Utf8Value group_name(args[0]);
-+ String::Utf8Value group_name(args[0]);
-
- modp_group* it = modp_groups;
-
-diff --git a/src/node_dtrace.cc b/src/node_dtrace.cc
-index 0b2d0f4..4b851e3 100644
---- a/src/node_dtrace.cc
-+++ b/src/node_dtrace.cc
-@@ -20,8 +20,6 @@
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-
--#include "util.h"
--
- #ifdef HAVE_DTRACE
- #include "node_dtrace.h"
- #include <string.h>
-@@ -68,7 +66,7 @@ using namespace v8;
- return (ThrowException(Exception::Error(String::New("expected " \
- "object for " #obj " to contain string member " #member)))); \
- } \
-- node::Utf8Value _##member(obj->Get(String::New(#member))); \
-+ String::Utf8Value _##member(obj->Get(String::New(#member))); \
- if ((*(const char **)valp = *_##member) == NULL) \
- *(const char **)valp = "<unknown>";
-
-@@ -243,7 +241,7 @@ Handle<Value> DTRACE_HTTP_SERVER_REQUEST(const Arguments& args) {
- "object for request to contain string member headers"))));
-
- Local<Value> strfwdfor = headers->Get(String::New("x-forwarded-for"));
-- node::Utf8Value fwdfor(strfwdfor);
-+ String::Utf8Value fwdfor(strfwdfor);
-
- if (!strfwdfor->IsString() || (req.forwardedFor = *fwdfor) == NULL)
- req.forwardedFor = const_cast<char*>("");
-diff --git a/src/node_file.cc b/src/node_file.cc
-index 3c35e0b..f665b19 100644
---- a/src/node_file.cc
-+++ b/src/node_file.cc
-@@ -24,7 +24,6 @@
- #include "node_buffer.h"
- #include "node_stat_watcher.h"
- #include "req_wrap.h"
--#include "util.h"
-
- #include <fcntl.h>
- #include <sys/types.h>
-@@ -404,7 +403,7 @@ static Handle<Value> Stat(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(stat, args[1], *path)
-@@ -421,7 +420,7 @@ static Handle<Value> LStat(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(lstat, args[1], *path)
-@@ -459,12 +458,12 @@ static Handle<Value> Symlink(const Arguments& args) {
- if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
- if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
-
-- node::Utf8Value dest(args[0]);
-- node::Utf8Value path(args[1]);
-+ String::Utf8Value dest(args[0]);
-+ String::Utf8Value path(args[1]);
- int flags = 0;
-
- if (args[2]->IsString()) {
-- node::Utf8Value mode(args[2]);
-+ String::Utf8Value mode(args[2]);
- if (strcmp(*mode, "dir") == 0) {
- flags |= UV_FS_SYMLINK_DIR;
- } else if (strcmp(*mode, "junction") == 0) {
-@@ -492,8 +491,8 @@ static Handle<Value> Link(const Arguments& args) {
- if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
- if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
-
-- node::Utf8Value orig_path(args[0]);
-- node::Utf8Value new_path(args[1]);
-+ String::Utf8Value orig_path(args[0]);
-+ String::Utf8Value new_path(args[1]);
-
- if (args[2]->IsFunction()) {
- ASYNC_DEST_CALL(link, args[2], *new_path, *orig_path, *new_path)
-@@ -509,7 +508,7 @@ static Handle<Value> ReadLink(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(readlink, args[1], *path)
-@@ -528,8 +527,8 @@ static Handle<Value> Rename(const Arguments& args) {
- if (!args[0]->IsString()) return TYPE_ERROR("old path must be a string");
- if (!args[1]->IsString()) return TYPE_ERROR("new path must be a string");
-
-- node::Utf8Value old_path(args[0]);
-- node::Utf8Value new_path(args[1]);
-+ String::Utf8Value old_path(args[0]);
-+ String::Utf8Value new_path(args[1]);
-
- if (args[2]->IsFunction()) {
- ASYNC_DEST_CALL(rename, args[2], *new_path, *old_path, *new_path)
-@@ -599,7 +598,7 @@ static Handle<Value> Unlink(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(unlink, args[1], *path)
-@@ -615,7 +614,7 @@ static Handle<Value> RMDir(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(rmdir, args[1], *path)
-@@ -632,7 +631,7 @@ static Handle<Value> MKDir(const Arguments& args) {
- return THROW_BAD_ARGS;
- }
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- int mode = static_cast<int>(args[1]->Int32Value());
-
- if (args[2]->IsFunction()) {
-@@ -649,7 +648,7 @@ static Handle<Value> ReadDir(const Arguments& args) {
- if (args.Length() < 1) return TYPE_ERROR("path required");
- if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
-
- if (args[1]->IsFunction()) {
- ASYNC_CALL(readdir, args[1], *path, 0 /*flags*/)
-@@ -687,7 +686,7 @@ static Handle<Value> Open(const Arguments& args) {
- if (!args[1]->IsInt32()) return TYPE_ERROR("flags must be an int");
- if (!args[2]->IsInt32()) return TYPE_ERROR("mode must be an int");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- int flags = args[1]->Int32Value();
- int mode = static_cast<int>(args[2]->Int32Value());
-
-@@ -827,7 +826,7 @@ static Handle<Value> Chmod(const Arguments& args) {
- if(args.Length() < 2 || !args[0]->IsString() || !args[1]->IsInt32()) {
- return THROW_BAD_ARGS;
- }
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- int mode = static_cast<int>(args[1]->Int32Value());
-
- if(args[2]->IsFunction()) {
-@@ -874,7 +873,7 @@ static Handle<Value> Chown(const Arguments& args) {
- if (!args[1]->IsUint32()) return TYPE_ERROR("uid must be an unsigned int");
- if (!args[2]->IsUint32()) return TYPE_ERROR("gid must be an unsigned int");
-
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- uv_uid_t uid = static_cast<uv_uid_t>(args[1]->Uint32Value());
- uv_gid_t gid = static_cast<uv_gid_t>(args[2]->Uint32Value());
-
-@@ -925,7 +924,7 @@ static Handle<Value> UTimes(const Arguments& args) {
- if (!args[1]->IsNumber()) return TYPE_ERROR("atime must be a number");
- if (!args[2]->IsNumber()) return TYPE_ERROR("mtime must be a number");
-
-- const node::Utf8Value path(args[0]);
-+ const String::Utf8Value path(args[0]);
- const double atime = static_cast<double>(args[1]->NumberValue());
- const double mtime = static_cast<double>(args[2]->NumberValue());
-
-diff --git a/src/node_stat_watcher.cc b/src/node_stat_watcher.cc
-index fd3e5d1..c3f668c 100644
---- a/src/node_stat_watcher.cc
-+++ b/src/node_stat_watcher.cc
-@@ -20,7 +20,6 @@
- // USE OR OTHER DEALINGS IN THE SOFTWARE.
-
- #include "node_stat_watcher.h"
--#include "util.h"
-
- #include <assert.h>
- #include <string.h>
-@@ -105,7 +104,7 @@ Handle<Value> StatWatcher::Start(const Arguments& args) {
- HandleScope scope;
-
- StatWatcher* wrap = ObjectWrap::Unwrap<StatWatcher>(args.Holder());
-- node::Utf8Value path(args[0]);
-+ String::Utf8Value path(args[0]);
- const bool persistent = args[1]->BooleanValue();
- const uint32_t interval = args[2]->Uint32Value();
-
-diff --git a/src/process_wrap.cc b/src/process_wrap.cc
-index ac63e4b..784300f 100644
---- a/src/process_wrap.cc
-+++ b/src/process_wrap.cc
-@@ -25,7 +25,6 @@
- #include "tty_wrap.h"
- #include "tcp_wrap.h"
- #include "udp_wrap.h"
--#include "util.h"
-
- #include <string.h>
- #include <stdlib.h>
-@@ -188,7 +187,7 @@ class ProcessWrap : public HandleWrap {
-
- // options.file
- Local<Value> file_v = js_options->Get(String::NewSymbol("file"));
-- node::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
-+ String::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
- if (file.length() > 0) {
- options.file = *file;
- } else {
-@@ -203,7 +202,7 @@ class ProcessWrap : public HandleWrap {
- // Heap allocate to detect errors. +1 is for NULL.
- options.args = new char*[argc + 1];
- for (int i = 0; i < argc; i++) {
-- node::Utf8Value arg(js_argv->Get(i));
-+ String::Utf8Value arg(js_argv->Get(i));
- options.args[i] = strdup(*arg);
- }
- options.args[argc] = NULL;
-@@ -211,7 +210,7 @@ class ProcessWrap : public HandleWrap {
-
- // options.cwd
- Local<Value> cwd_v = js_options->Get(String::NewSymbol("cwd"));
-- node::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
-+ String::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
- if (cwd.length() > 0) {
- options.cwd = *cwd;
- }
-@@ -223,7 +222,7 @@ class ProcessWrap : public HandleWrap {
- int envc = env->Length();
- options.env = new char*[envc + 1]; // Heap allocated to detect errors.
- for (int i = 0; i < envc; i++) {
-- node::Utf8Value pair(env->Get(i));
-+ String::Utf8Value pair(env->Get(i));
- options.env[i] = strdup(*pair);
- }
- options.env[envc] = NULL;
-diff --git a/src/udp_wrap.cc b/src/udp_wrap.cc
-index 31a4e78..b33f4e8 100644
---- a/src/udp_wrap.cc
-+++ b/src/udp_wrap.cc
-@@ -25,7 +25,6 @@
- #include "req_wrap.h"
- #include "handle_wrap.h"
- #include "udp_wrap.h"
--#include "util.h"
-
- #include <stdlib.h>
-
-@@ -161,7 +160,7 @@ Handle<Value> UDPWrap::DoBind(const Arguments& args, int family) {
- // bind(ip, port, flags)
- assert(args.Length() == 3);
-
-- node::Utf8Value address(args[0]);
-+ String::Utf8Value address(args[0]);
- const int port = args[1]->Uint32Value();
- const int flags = args[2]->Uint32Value();
-
-@@ -220,8 +219,8 @@ Handle<Value> UDPWrap::SetMembership(const Arguments& args,
-
- assert(args.Length() == 2);
-
-- node::Utf8Value address(args[0]);
-- node::Utf8Value iface(args[1]);
-+ String::Utf8Value address(args[0]);
-+ String::Utf8Value iface(args[1]);
-
- const char* iface_cstr = *iface;
- if (args[1]->IsUndefined() || args[1]->IsNull()) {
-@@ -272,7 +271,7 @@ Handle<Value> UDPWrap::DoSend(const Arguments& args, int family) {
- length);
-
- const unsigned short port = args[3]->Uint32Value();
-- node::Utf8Value address(args[4]);
-+ String::Utf8Value address(args[4]);
-
- switch (family) {
- case AF_INET:
-diff --git a/src/util.h b/src/util.h
-deleted file mode 100644
-index 0dbf7f4..0000000
---- a/src/util.h
-+++ /dev/null
-@@ -1,78 +0,0 @@
--// Copyright Joyent, Inc. and other Node contributors.
--//
--// Permission is hereby granted, free of charge, to any person obtaining a
--// copy of this software and associated documentation files (the
--// "Software"), to deal in the Software without restriction, including
--// without limitation the rights to use, copy, modify, merge, publish,
--// distribute, sublicense, and/or sell copies of the Software, and to permit
--// persons to whom the Software is furnished to do so, subject to the
--// following conditions:
--//
--// The above copyright notice and this permission notice shall be included
--// in all copies or substantial portions of the Software.
--//
--// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
--// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
--// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
--// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
--// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
--// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
--// USE OR OTHER DEALINGS IN THE SOFTWARE.
--
--#ifndef SRC_UTIL_H_
--#define SRC_UTIL_H_
--
--#include "v8.h"
--#include "string_bytes.h"
--
--namespace node {
--
--class Utf8Value {
-- public:
-- explicit Utf8Value(v8::Handle
v8::Value value)
-- : length_(0), str_(NULL) {
-- if (value.IsEmpty())
-- return;
--
-- v8::Local
v8::String val_ = value->ToString();
--
-- // Allocate enough space to include the null terminator
-- size_t len = StringBytes::StorageSize(val_, UTF8) + 1;
--
-- char* str = static_cast<char*>(calloc(1, len));
--
-- int flags = WRITE_UTF8_FLAGS;
-- flags |= ~v8::String::NO_NULL_TERMINATION;
--
-- length_ = val_->WriteUtf8(str,
-- len,
-- 0,
-- flags);
--
-- str_ = reinterpret_cast<char*>(str);
-- }
--
-- ~Utf8Value() {
-- free(str_);
-- }
--
-- char* operator*() {
-- return str_;
-- };
--
-- const char* operator*() const {
-- return str_;
-- };
--
-- size_t length() {
-- return length_;
-- };
--
-- private:
-- size_t length_;
-- char* str_;
--};
--
--} // namespace node
--
--#endif // SRC_UTIL_H_
---
-1.9.3
-
diff --git a/nodejs-revert-utf8-v8.patch b/nodejs-revert-utf8-v8.patch
deleted file mode 100644
index f617cf3..0000000
--- a/nodejs-revert-utf8-v8.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-From c7c934c66cd8712c9ff169f1ef4c5670d3ff99c8 Mon Sep 17 00:00:00 2001
-From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
-Date: Wed, 18 Jun 2014 23:09:03 -0700
-Subject: [PATCH] Revert "string_bytes: Guarantee valid utf-8 output"
-
-This reverts commit 0da4c671659cfbae12def127b2e94690b9d9b5e1.
----
- src/node.cc | 7 -------
- src/string_bytes.cc | 2 +-
- src/string_bytes.h | 2 --
- test/simple/test-buffer.js | 12 ------------
- 4 files changed, 1 insertion(+), 22 deletions(-)
-
-diff --git a/src/node.cc b/src/node.cc
-index 4223973..e9696cd 100644
---- a/src/node.cc
-+++ b/src/node.cc
-@@ -178,8 +178,6 @@ static uv_async_t dispatch_debug_messages_async;
- // Declared in node_internals.h
- Isolate* node_isolate = NULL;
-
--int WRITE_UTF8_FLAGS = v8::String::HINT_MANY_WRITES_EXPECTED |
-- v8::String::NO_NULL_TERMINATION;
-
- static void Spin(uv_idle_t* handle, int status) {
- assert((uv_idle_t*) handle == &tick_spinner);
-@@ -3046,11 +3044,6 @@ static char **copy_argv(int argc, char **argv) {
- }
-
- int Start(int argc, char *argv[]) {
-- const char* replaceInvalid = getenv("NODE_INVALID_UTF8");
--
-- if (replaceInvalid == NULL)
-- WRITE_UTF8_FLAGS |= String::REPLACE_INVALID_UTF8;
--
- // Hack aroung with the argv pointer. Used for process.title = "blah".
- argv = uv_setup_args(argc, argv);
-
-diff --git a/src/string_bytes.cc b/src/string_bytes.cc
-index a7bab38..e4a34fe 100644
---- a/src/string_bytes.cc
-+++ b/src/string_bytes.cc
-@@ -199,7 +199,7 @@ size_t StringBytes::Write(char* buf,
- break;
-
- case UTF8:
-- len = str->WriteUtf8(buf, buflen, chars_written, WRITE_UTF8_FLAGS);
-+ len = str->WriteUtf8(buf, buflen, chars_written, flags);
- break;
-
- case UCS2:
-diff --git a/src/string_bytes.h b/src/string_bytes.h
-index 31f04bb..8071a49 100644
---- a/src/string_bytes.h
-+++ b/src/string_bytes.h
-@@ -29,8 +29,6 @@
-
- namespace node {
-
--extern int WRITE_UTF8_FLAGS;
--
- using v8::Handle;
- using v8::Local;
- using v8::String;
-diff --git a/test/simple/test-buffer.js b/test/simple/test-buffer.js
-index f8b2798..3026824 100644
---- a/test/simple/test-buffer.js
-+++ b/test/simple/test-buffer.js
-@@ -791,18 +791,6 @@ assert.equal(buf[3], 0xFF);
- assert.equal(buf[3], 0xFF);
- });
-
--// test unmatched surrogates not producing invalid utf8 output
--// ef bf bd = utf-8 representation of unicode replacement character
--// see
https://codereview.chromium.org/121173009/
--buf = new Buffer('ab\ud800cd', 'utf8');
--assert.equal(buf[0], 0x61);
--assert.equal(buf[1], 0x62);
--assert.equal(buf[2], 0xef);
--assert.equal(buf[3], 0xbf);
--assert.equal(buf[4], 0xbd);
--assert.equal(buf[5], 0x63);
--assert.equal(buf[6], 0x64);
--
- // test for buffer overrun
- buf = new Buffer([0, 0, 0, 0, 0]); // length: 5
- var sub = buf.slice(0, 4); // length: 4
---
-1.9.3
-
diff --git a/nodejs.spec b/nodejs.spec
index 9d366d4..fcf741e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -23,13 +23,6 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: nodejs-disable-gyp-deps.patch
-# The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
-# be done in a stable distribution release. This build of nodejs will behave as
-# if NODE_INVALID_UTF8 was set. For more information on the implications, see:
-#
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
-Patch3: nodejs-revert-utf8-v8.patch
-Patch4: nodejs-revert-utf8-node.patch
-
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 1:3.14.5.7
@@ -91,8 +84,6 @@ The API documentation for the Node.js JavaScript runtime.
%prep
%setup -q -n node-v%{version}
%patch1 -p1
-%patch3 -p1
-%patch4 -p1
rm -rf deps
@@ -172,6 +163,8 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
- new upstream release 0.10.30
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
+- allow UTF8 change to happen:
+
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
* Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
- new upstream release 0.10.29
commit 5f97a4ada73657e55a5da65c76e45bd579f4083e
Merge: 846eb3e 677c42d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 17:27:50 2014 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index a194517,9d366d4..9d770e5
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -171,10 -166,13 +171,14 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
+ - new upstream release 0.10.30
+
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
+
* Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
- new upstream release 0.10.29
http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
commit a63a79be8213daf7a887c99539b75f68b1e7c52c
Merge: 5510978 6c7a3c1
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 17:25:54 2014 -0700
Merge branch 'epel7' into f21
diff --cc nodejs.spec
index ee5d4e7,bc360de..42ae111
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -185,10 -180,13 +185,14 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
+ - new upstream release 0.10.30
+
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
+
* Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
- new upstream release 0.10.29
http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
commit 6c7a3c1a4e823a82935170fd99480c42babdf5ba
Merge: 47160f8 677c42d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 17:25:25 2014 -0700
Merge branch 'f19' into epel7
commit 677c42d6ff5d68e1bc875e7e9b8d95b479783649
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 31 17:24:19 2014 -0700
new upstream release 0.10.30
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
diff --git a/.gitignore b/.gitignore
index 532eae4..87f329c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -28,3 +28,4 @@
/node-v0.10.26-stripped.tar.gz
/node-v0.10.28-stripped.tar.gz
/node-v0.10.29-stripped.tar.gz
+/node-v0.10.30-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 84f1b9b..9d366d4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.29
+Version: 0.10.30
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -169,6 +169,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Fri Aug 01 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.30-1
+- new upstream release 0.10.30
+
http://blog.nodejs.org/2014/07/31/node-v0-10-30-stable/
+
* Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
- new upstream release 0.10.29
http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
diff --git a/sources b/sources
index 06dffad..d50cbaf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-a78cf6c91b084915c0f02f6b81bfe0d1 node-v0.10.29-stripped.tar.gz
+69074384366b4bc8ccc25e8c434b6817 node-v0.10.30-stripped.tar.gz
commit 551097893b9aa62b995b0ce43fd58f581cc10458
Merge: 30de266 47160f8
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jun 18 23:49:14 2014 -0700
Merge branch 'epel7'
Conflicts:
nodejs.spec
diff --cc nodejs.spec
index b041cda,990fde3..ee5d4e7
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -175,13 -180,17 +185,21 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
+ - new upstream release 0.10.29
+
http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
+ - The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
+ be done in a stable distribution release. This build of nodejs will behave as
+ if NODE_INVALID_UTF8 was set. For more information on the implications, see:
+
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
+
+* Sat Jun 07 2014 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.28-3
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-2
- use the system certificate store instead of the bundled copy
both are based on the Mozilla CA list, so the only effect this should have is
commit 47160f8617c9b671fa6e713f94cf37d91d035009
Merge: e034863 50877fb
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jun 18 23:39:54 2014 -0700
Merge branch 'f19' into epel7
Conflicts:
nodejs.spec
diff --cc nodejs.spec
index cf01c5a,84f1b9b..990fde3
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -23,11 -23,13 +23,18 @@@ Source7: nodejs_native.att
# Disable running gyp on bundled deps we don't use
Patch1: nodejs-disable-gyp-deps.patch
+# use system certificates instead of the bundled ones
+# modified version of Debian patch:
+#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
+Patch2: nodejs-use-system-certs.patch
+
+ # The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
+ # be done in a stable distribution release. This build of nodejs will behave as
+ # if NODE_INVALID_UTF8 was set. For more information on the implications, see:
+ #
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
+ Patch3: nodejs-revert-utf8-v8.patch
+ Patch4: nodejs-revert-utf8-node.patch
+
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 1:3.14.5.7
@@@ -91,15 -90,12 +98,18 @@@ The API documentation for the Node.js J
%prep
%setup -q -n node-v%{version}
+
+# remove bundled dependencies
%patch1 -p1
+rm -rf deps
+
+# remove bundled CA certificates
+%patch2 -p1
+rm -f src/node_root_certs.h
+
+ %patch3 -p1
+ %patch4 -p1
+
-rm -rf deps
-
%build
# build with debugging symbols and add defines from libuv (#892601)
export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
@@@ -173,12 -169,14 +183,20 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+ * Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
+ - new upstream release 0.10.29
+
http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
+ - The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
+ be done in a stable distribution release. This build of nodejs will behave as
+ if NODE_INVALID_UTF8 was set. For more information on the implications, see:
+
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
+
+* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-2
+- use the system certificate store instead of the bundled copy
+ both are based on the Mozilla CA list, so the only effect this should have is
+ making additional certificates added by the system administrator available to
+ node
+
* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-1
- new upstream release 0.10.28
There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
commit 846eb3ec15153ad4ad8a32107cd98147c0d01711
Merge: d8dedef 50877fb
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jun 18 23:36:34 2014 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index a4ad836,84f1b9b..a194517
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -162,10 -166,17 +171,18 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
+ - new upstream release 0.10.29
+
http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
+ - The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
+ be done in a stable distribution release. This build of nodejs will behave as
+ if NODE_INVALID_UTF8 was set. For more information on the implications, see:
+
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
+
* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-1
- new upstream release 0.10.28
There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
commit 50877fbc3a84884aff735af8133a423a4410399a
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jun 18 23:34:48 2014 -0700
new upstream release 0.10.29
http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
- The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
be done in a stable distribution release. This build of nodejs will behave as
if NODE_INVALID_UTF8 was set. For more information on the implications, see:
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
diff --git a/.gitignore b/.gitignore
index b721d71..532eae4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -27,3 +27,4 @@
/node-v0.10.25-stripped.tar.gz
/node-v0.10.26-stripped.tar.gz
/node-v0.10.28-stripped.tar.gz
+/node-v0.10.29-stripped.tar.gz
diff --git a/nodejs-revert-utf8-node.patch b/nodejs-revert-utf8-node.patch
new file mode 100644
index 0000000..be1e972
--- /dev/null
+++ b/nodejs-revert-utf8-node.patch
@@ -0,0 +1,784 @@
+From a9e60792a9c4044e29ec7bbb88419d9283044b86 Mon Sep 17 00:00:00 2001
+From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
+Date: Wed, 18 Jun 2014 23:19:19 -0700
+Subject: [PATCH] Revert "src: replace usage of String::Utf8Value"
+
+This reverts commit 535c7777ac674ba86cf93c44824e07b0e23ea8c4.
+---
+ src/cares_wrap.cc | 8 ++---
+ src/fs_event_wrap.cc | 3 +-
+ src/node.cc | 42 +++++++++++++-------------
+ src/node_crypto.cc | 31 ++++++++++---------
+ src/node_dtrace.cc | 6 ++--
+ src/node_file.cc | 37 +++++++++++------------
+ src/node_stat_watcher.cc | 3 +-
+ src/process_wrap.cc | 9 +++---
+ src/udp_wrap.cc | 9 +++---
+ src/util.h | 78 ------------------------------------------------
+ 10 files changed, 68 insertions(+), 158 deletions(-)
+ delete mode 100644 src/util.h
+
+diff --git a/src/cares_wrap.cc b/src/cares_wrap.cc
+index 321e144..b7ba828 100644
+--- a/src/cares_wrap.cc
++++ b/src/cares_wrap.cc
+@@ -31,8 +31,6 @@
+ #include "tree.h"
+ #include "uv.h"
+
+-#include "util.h"
+-
+ #if defined(__OpenBSD__) || defined(__MINGW32__) || defined(_MSC_VER)
+ # include <nameser.h>
+ #else
+@@ -741,7 +739,7 @@ static Handle<Value> Query(const Arguments& args) {
+ // object reference, causing wrap->GetObject() to return undefined.
+ Local<Object> object = Local<Object>::New(wrap->GetObject());
+
+- node::Utf8Value name(args[0]);
++ String::Utf8Value name(args[0]);
+
+ int r = wrap->Send(*name);
+ if (r) {
+@@ -770,7 +768,7 @@ static Handle<Value> QueryWithFamily(const Arguments& args) {
+ // object reference, causing wrap->GetObject() to return undefined.
+ Local<Object> object = Local<Object>::New(wrap->GetObject());
+
+- node::Utf8Value name(args[0]);
++ String::Utf8Value name(args[0]);
+ int family = args[1]->Int32Value();
+
+ int r = wrap->Send(*name, family);
+@@ -900,7 +898,7 @@ static Handle<Value> IsIP(const Arguments& args) {
+ static Handle<Value> GetAddrInfo(const Arguments& args) {
+ HandleScope scope;
+
+- node::Utf8Value hostname(args[0]);
++ String::Utf8Value hostname(args[0]);
+
+ int fam = AF_UNSPEC;
+ if (args[1]->IsInt32()) {
+diff --git a/src/fs_event_wrap.cc b/src/fs_event_wrap.cc
+index fc54283..7e3eb8c 100644
+--- a/src/fs_event_wrap.cc
++++ b/src/fs_event_wrap.cc
+@@ -21,7 +21,6 @@
+
+ #include "node.h"
+ #include "handle_wrap.h"
+-#include "util.h"
+
+ #include <stdlib.h>
+
+@@ -98,7 +97,7 @@ Handle<Value> FSEventWrap::Start(const Arguments& args) {
+ return ThrowException(Exception::TypeError(String::New("Bad arguments")));
+ }
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ int r = uv_fs_event_init(uv_default_loop(), &wrap->handle_, *path, OnEvent, 0);
+ if (r == 0) {
+diff --git a/src/node.cc b/src/node.cc
+index e9696cd..8257604 100644
+--- a/src/node.cc
++++ b/src/node.cc
+@@ -82,8 +82,6 @@ typedef int mode_t;
+ #include "node_script.h"
+ #include "v8_typed_array.h"
+
+-#include "util.h"
+-
+ using namespace v8;
+
+ # ifdef __APPLE__
+@@ -1102,7 +1100,7 @@ enum encoding ParseEncoding(Handle<Value> encoding_v, enum encoding _default) {
+
+ if (!encoding_v->IsString()) return _default;
+
+- node::Utf8Value encoding(encoding_v);
++ String::Utf8Value encoding(encoding_v);
+
+ if (strcasecmp(*encoding, "utf8") == 0) {
+ return UTF8;
+@@ -1202,12 +1200,12 @@ void DisplayExceptionLine (TryCatch &try_catch) {
+
+ if (!message.IsEmpty()) {
+ // Print (filename):(line number): (message).
+- node::Utf8Value filename(message->GetScriptResourceName());
++ String::Utf8Value filename(message->GetScriptResourceName());
+ const char* filename_string = *filename;
+ int linenum = message->GetLineNumber();
+ fprintf(stderr, "%s:%i\n", filename_string, linenum);
+ // Print line of source code.
+- node::Utf8Value sourceline(message->GetSourceLine());
++ String::Utf8Value sourceline(message->GetSourceLine());
+ const char* sourceline_string = *sourceline;
+
+ // Because of how node modules work, all scripts are wrapped with a
+@@ -1254,7 +1252,7 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
+
+ if (show_line) DisplayExceptionLine(try_catch);
+
+- node::Utf8Value trace(try_catch.StackTrace());
++ String::Utf8Value trace(try_catch.StackTrace());
+
+ // range errors have a trace member set to undefined
+ if (trace.length() > 0 && !try_catch.StackTrace()->IsUndefined()) {
+@@ -1269,11 +1267,11 @@ static void ReportException(TryCatch &try_catch, bool show_line) {
+ !(er->ToObject()->Get(String::New("name"))->IsUndefined());
+
+ if (isErrorObject) {
+- node::Utf8Value name(er->ToObject()->Get(String::New("name")));
++ String::Utf8Value name(er->ToObject()->Get(String::New("name")));
+ fprintf(stderr, "%s: ", *name);
+ }
+
+- node::Utf8Value msg(!isErrorObject ? er
++ String::Utf8Value msg(!isErrorObject ? er
+ : er->ToObject()->Get(String::New("message")));
+ fprintf(stderr, "%s\n", *msg);
+ }
+@@ -1355,7 +1353,7 @@ static Handle<Value> Chdir(const Arguments& args) {
+ return ThrowException(Exception::Error(String::New("Bad argument.")));
+ }
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ uv_err_t r = uv_chdir(*path);
+
+@@ -1406,7 +1404,7 @@ static Handle<Value> Umask(const Arguments& args) {
+ oct = args[0]->Uint32Value();
+ } else {
+ oct = 0;
+- node::Utf8Value str(args[0]);
++ String::Utf8Value str(args[0]);
+
+ // Parse the octal string.
+ for (int i = 0; i < str.length(); i++) {
+@@ -1512,7 +1510,7 @@ static uid_t uid_by_name(Handle<Value> value) {
+ if (value->IsUint32()) {
+ return static_cast<uid_t>(value->Uint32Value());
+ } else {
+- node::Utf8Value name(value);
++ String::Utf8Value name(value);
+ return uid_by_name(*name);
+ }
+ }
+@@ -1522,7 +1520,7 @@ static gid_t gid_by_name(Handle<Value> value) {
+ if (value->IsUint32()) {
+ return static_cast<gid_t>(value->Uint32Value());
+ } else {
+- node::Utf8Value name(value);
++ String::Utf8Value name(value);
+ return gid_by_name(*name);
+ }
+ }
+@@ -1665,7 +1663,7 @@ static Handle<Value> InitGroups(const Arguments& args) {
+ return ThrowTypeError("argument 2 must be a number or a string");
+ }
+
+- node::Utf8Value arg0(args[0]);
++ String::Utf8Value arg0(args[0]);
+ gid_t extra_group;
+ bool must_free;
+ char* user;
+@@ -1826,7 +1824,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
+ }
+
+ Local<Object> module = args[0]->ToObject(); // Cast
+- node::Utf8Value filename(args[1]); // Cast
++ String::Utf8Value filename(args[1]); // Cast
+
+ if (exports_symbol.IsEmpty()) {
+ exports_symbol = NODE_PSYMBOL("exports");
+@@ -1842,7 +1840,7 @@ Handle<Value> DLOpen(const v8::Arguments& args) {
+ return ThrowException(Exception::Error(errmsg));
+ }
+
+- node::Utf8Value path(args[1]);
++ String::Utf8Value path(args[1]);
+ base = *path;
+
+ /* Find the shared library filename within the full path. */
+@@ -1961,7 +1959,7 @@ static Handle<Value> Binding(const Arguments& args) {
+ HandleScope scope;
+
+ Local<String> module = args[0]->ToString();
+- node::Utf8Value module_v(module);
++ String::Utf8Value module_v(module);
+ node_module_struct* modp;
+
+ if (binding_cache.IsEmpty()) {
+@@ -2020,7 +2018,7 @@ static void ProcessTitleSetter(Local<String> property,
+ Local<Value> value,
+ const AccessorInfo& info) {
+ HandleScope scope;
+- node::Utf8Value title(value);
++ String::Utf8Value title(value);
+ // TODO: protect with a lock
+ uv_set_process_title(*title);
+ }
+@@ -2030,7 +2028,7 @@ static Handle<Value> EnvGetter(Local<String> property,
+ const AccessorInfo& info) {
+ HandleScope scope;
+ #ifdef __POSIX__
+- node::Utf8Value key(property);
++ String::Utf8Value key(property);
+ const char* val = getenv(*key);
+ if (val) {
+ return scope.Close(String::New(val));
+@@ -2059,8 +2057,8 @@ static Handle<Value> EnvSetter(Local<String> property,
+ const AccessorInfo& info) {
+ HandleScope scope;
+ #ifdef __POSIX__
+- node::Utf8Value key(property);
+- node::Utf8Value val(value);
++ String::Utf8Value key(property);
++ String::Utf8Value val(value);
+ setenv(*key, *val, 1);
+ #else // _WIN32
+ String::Value key(property);
+@@ -2080,7 +2078,7 @@ static Handle<Integer> EnvQuery(Local<String> property,
+ const AccessorInfo& info) {
+ HandleScope scope;
+ #ifdef __POSIX__
+- node::Utf8Value key(property);
++ String::Utf8Value key(property);
+ if (getenv(*key)) {
+ return scope.Close(Integer::New(0));
+ }
+@@ -2108,7 +2106,7 @@ static Handle<Boolean> EnvDeleter(Local<String> property,
+ const AccessorInfo& info) {
+ HandleScope scope;
+ #ifdef __POSIX__
+- node::Utf8Value key(property);
++ String::Utf8Value key(property);
+ if (!getenv(*key)) return False();
+ unsetenv(*key); // can't check return value, it's void on some platforms
+ return True();
+diff --git a/src/node_crypto.cc b/src/node_crypto.cc
+index 46faba2..0ae1f8a 100644
+--- a/src/node_crypto.cc
++++ b/src/node_crypto.cc
+@@ -26,7 +26,6 @@
+ #include "node.h"
+ #include "node_buffer.h"
+ #include "string_bytes.h"
+-#include "util.h"
+
+ #include <string.h>
+ #ifdef _MSC_VER
+@@ -242,7 +241,7 @@ Handle<Value> SecureContext::Init(const Arguments& args) {
+ OPENSSL_CONST SSL_METHOD *method = SSLv23_method();
+
+ if (args.Length() == 1 && args[0]->IsString()) {
+- node::Utf8Value sslmethod(args[0]);
++ String::Utf8Value sslmethod(args[0]);
+
+ if (strcmp(*sslmethod, "SSLv2_method") == 0) {
+ #ifndef OPENSSL_NO_SSL2
+@@ -362,7 +361,7 @@ static BIO* LoadBIO (Handle<Value> v) {
+ int r = -1;
+
+ if (v->IsString()) {
+- node::Utf8Value s(v);
++ String::Utf8Value s(v);
+ r = BIO_write(bio, *s, s.length());
+ } else if (Buffer::HasInstance(v)) {
+ char* buffer_data = Buffer::Data(v);
+@@ -414,7 +413,7 @@ Handle<Value> SecureContext::SetKey(const Arguments& args) {
+ BIO *bio = LoadBIO(args[0]);
+ if (!bio) return False();
+
+- node::Utf8Value passphrase(args[1]);
++ String::Utf8Value passphrase(args[1]);
+
+ EVP_PKEY* key = PEM_read_bio_PrivateKey(bio, NULL, NULL,
+ len == 1 ? NULL : *passphrase);
+@@ -644,7 +643,7 @@ Handle<Value> SecureContext::SetCiphers(const Arguments& args) {
+ return ThrowException(Exception::TypeError(String::New("Bad parameter")));
+ }
+
+- node::Utf8Value ciphers(args[0]);
++ String::Utf8Value ciphers(args[0]);
+ SSL_CTX_set_cipher_list(sc->ctx_, *ciphers);
+
+ return True();
+@@ -673,7 +672,7 @@ Handle<Value> SecureContext::SetSessionIdContext(const Arguments& args) {
+ return ThrowException(Exception::TypeError(String::New("Bad parameter")));
+ }
+
+- node::Utf8Value sessionIdContext(args[0]);
++ String::Utf8Value sessionIdContext(args[0]);
+ const unsigned char* sid_ctx = (const unsigned char*) *sessionIdContext;
+ unsigned int sid_ctx_len = sessionIdContext.length();
+
+@@ -1281,7 +1280,7 @@ Handle<Value> Connection::New(const Arguments& args) {
+ if (is_server) {
+ SSL_CTX_set_tlsext_servername_callback(sc->ctx_, SelectSNIContextCallback_);
+ } else {
+- node::Utf8Value servername(args[2]);
++ String::Utf8Value servername(args[2]);
+ SSL_set_tlsext_host_name(p->ssl_, *servername);
+ }
+ #endif
+@@ -2234,7 +2233,7 @@ class Cipher : public ObjectWrap {
+ ssize_t key_written = DecodeWrite(key_buf, key_buf_len, args[1], BINARY);
+ assert(key_written == key_buf_len);
+
+- node::Utf8Value cipherType(args[0]);
++ String::Utf8Value cipherType(args[0]);
+
+ bool r = cipher->CipherInit(*cipherType, key_buf, key_buf_len);
+
+@@ -2285,7 +2284,7 @@ class Cipher : public ObjectWrap {
+ ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
+ assert(iv_written == iv_len);
+
+- node::Utf8Value cipherType(args[0]);
++ String::Utf8Value cipherType(args[0]);
+
+ bool r = cipher->CipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
+
+@@ -2544,7 +2543,7 @@ class Decipher : public ObjectWrap {
+ ssize_t key_written = DecodeWrite(key_buf, key_len, args[1], BINARY);
+ assert(key_written == key_len);
+
+- node::Utf8Value cipherType(args[0]);
++ String::Utf8Value cipherType(args[0]);
+
+ bool r = cipher->DecipherInit(*cipherType, key_buf,key_len);
+
+@@ -2595,7 +2594,7 @@ class Decipher : public ObjectWrap {
+ ssize_t iv_written = DecodeWrite(iv_buf, iv_len, args[2], BINARY);
+ assert(iv_written == iv_len);
+
+- node::Utf8Value cipherType(args[0]);
++ String::Utf8Value cipherType(args[0]);
+
+ bool r = cipher->DecipherInitIv(*cipherType, key_buf,key_len,iv_buf,iv_len);
+
+@@ -2776,7 +2775,7 @@ class Hmac : public ObjectWrap {
+ return ThrowException(exception);
+ }
+
+- node::Utf8Value hashType(args[0]);
++ String::Utf8Value hashType(args[0]);
+
+ bool r;
+
+@@ -2921,7 +2920,7 @@ class Hash : public ObjectWrap {
+ "Must give hashtype string as argument")));
+ }
+
+- node::Utf8Value hashType(args[0]);
++ String::Utf8Value hashType(args[0]);
+
+ Hash *hash = new Hash();
+ if (!hash->HashInit(*hashType)) {
+@@ -3095,7 +3094,7 @@ class Sign : public ObjectWrap {
+ "Must give signtype string as argument")));
+ }
+
+- node::Utf8Value signType(args[0]);
++ String::Utf8Value signType(args[0]);
+
+ bool r = sign->SignInit(*signType);
+
+@@ -3328,7 +3327,7 @@ class Verify : public ObjectWrap {
+ "Must give verifytype string as argument")));
+ }
+
+- node::Utf8Value verifyType(args[0]);
++ String::Utf8Value verifyType(args[0]);
+
+ bool r = verify->VerifyInit(*verifyType);
+
+@@ -3511,7 +3510,7 @@ class DiffieHellman : public ObjectWrap {
+ String::New("No group name given")));
+ }
+
+- node::Utf8Value group_name(args[0]);
++ String::Utf8Value group_name(args[0]);
+
+ modp_group* it = modp_groups;
+
+diff --git a/src/node_dtrace.cc b/src/node_dtrace.cc
+index 0b2d0f4..4b851e3 100644
+--- a/src/node_dtrace.cc
++++ b/src/node_dtrace.cc
+@@ -20,8 +20,6 @@
+ // USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+
+-#include "util.h"
+-
+ #ifdef HAVE_DTRACE
+ #include "node_dtrace.h"
+ #include <string.h>
+@@ -68,7 +66,7 @@ using namespace v8;
+ return (ThrowException(Exception::Error(String::New("expected " \
+ "object for " #obj " to contain string member " #member)))); \
+ } \
+- node::Utf8Value _##member(obj->Get(String::New(#member))); \
++ String::Utf8Value _##member(obj->Get(String::New(#member))); \
+ if ((*(const char **)valp = *_##member) == NULL) \
+ *(const char **)valp = "<unknown>";
+
+@@ -243,7 +241,7 @@ Handle<Value> DTRACE_HTTP_SERVER_REQUEST(const Arguments& args) {
+ "object for request to contain string member headers"))));
+
+ Local<Value> strfwdfor = headers->Get(String::New("x-forwarded-for"));
+- node::Utf8Value fwdfor(strfwdfor);
++ String::Utf8Value fwdfor(strfwdfor);
+
+ if (!strfwdfor->IsString() || (req.forwardedFor = *fwdfor) == NULL)
+ req.forwardedFor = const_cast<char*>("");
+diff --git a/src/node_file.cc b/src/node_file.cc
+index 3c35e0b..f665b19 100644
+--- a/src/node_file.cc
++++ b/src/node_file.cc
+@@ -24,7 +24,6 @@
+ #include "node_buffer.h"
+ #include "node_stat_watcher.h"
+ #include "req_wrap.h"
+-#include "util.h"
+
+ #include <fcntl.h>
+ #include <sys/types.h>
+@@ -404,7 +403,7 @@ static Handle<Value> Stat(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(stat, args[1], *path)
+@@ -421,7 +420,7 @@ static Handle<Value> LStat(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(lstat, args[1], *path)
+@@ -459,12 +458,12 @@ static Handle<Value> Symlink(const Arguments& args) {
+ if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
+ if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
+
+- node::Utf8Value dest(args[0]);
+- node::Utf8Value path(args[1]);
++ String::Utf8Value dest(args[0]);
++ String::Utf8Value path(args[1]);
+ int flags = 0;
+
+ if (args[2]->IsString()) {
+- node::Utf8Value mode(args[2]);
++ String::Utf8Value mode(args[2]);
+ if (strcmp(*mode, "dir") == 0) {
+ flags |= UV_FS_SYMLINK_DIR;
+ } else if (strcmp(*mode, "junction") == 0) {
+@@ -492,8 +491,8 @@ static Handle<Value> Link(const Arguments& args) {
+ if (!args[0]->IsString()) return TYPE_ERROR("dest path must be a string");
+ if (!args[1]->IsString()) return TYPE_ERROR("src path must be a string");
+
+- node::Utf8Value orig_path(args[0]);
+- node::Utf8Value new_path(args[1]);
++ String::Utf8Value orig_path(args[0]);
++ String::Utf8Value new_path(args[1]);
+
+ if (args[2]->IsFunction()) {
+ ASYNC_DEST_CALL(link, args[2], *new_path, *orig_path, *new_path)
+@@ -509,7 +508,7 @@ static Handle<Value> ReadLink(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(readlink, args[1], *path)
+@@ -528,8 +527,8 @@ static Handle<Value> Rename(const Arguments& args) {
+ if (!args[0]->IsString()) return TYPE_ERROR("old path must be a string");
+ if (!args[1]->IsString()) return TYPE_ERROR("new path must be a string");
+
+- node::Utf8Value old_path(args[0]);
+- node::Utf8Value new_path(args[1]);
++ String::Utf8Value old_path(args[0]);
++ String::Utf8Value new_path(args[1]);
+
+ if (args[2]->IsFunction()) {
+ ASYNC_DEST_CALL(rename, args[2], *new_path, *old_path, *new_path)
+@@ -599,7 +598,7 @@ static Handle<Value> Unlink(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(unlink, args[1], *path)
+@@ -615,7 +614,7 @@ static Handle<Value> RMDir(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(rmdir, args[1], *path)
+@@ -632,7 +631,7 @@ static Handle<Value> MKDir(const Arguments& args) {
+ return THROW_BAD_ARGS;
+ }
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ int mode = static_cast<int>(args[1]->Int32Value());
+
+ if (args[2]->IsFunction()) {
+@@ -649,7 +648,7 @@ static Handle<Value> ReadDir(const Arguments& args) {
+ if (args.Length() < 1) return TYPE_ERROR("path required");
+ if (!args[0]->IsString()) return TYPE_ERROR("path must be a string");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+
+ if (args[1]->IsFunction()) {
+ ASYNC_CALL(readdir, args[1], *path, 0 /*flags*/)
+@@ -687,7 +686,7 @@ static Handle<Value> Open(const Arguments& args) {
+ if (!args[1]->IsInt32()) return TYPE_ERROR("flags must be an int");
+ if (!args[2]->IsInt32()) return TYPE_ERROR("mode must be an int");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ int flags = args[1]->Int32Value();
+ int mode = static_cast<int>(args[2]->Int32Value());
+
+@@ -827,7 +826,7 @@ static Handle<Value> Chmod(const Arguments& args) {
+ if(args.Length() < 2 || !args[0]->IsString() || !args[1]->IsInt32()) {
+ return THROW_BAD_ARGS;
+ }
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ int mode = static_cast<int>(args[1]->Int32Value());
+
+ if(args[2]->IsFunction()) {
+@@ -874,7 +873,7 @@ static Handle<Value> Chown(const Arguments& args) {
+ if (!args[1]->IsUint32()) return TYPE_ERROR("uid must be an unsigned int");
+ if (!args[2]->IsUint32()) return TYPE_ERROR("gid must be an unsigned int");
+
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ uv_uid_t uid = static_cast<uv_uid_t>(args[1]->Uint32Value());
+ uv_gid_t gid = static_cast<uv_gid_t>(args[2]->Uint32Value());
+
+@@ -925,7 +924,7 @@ static Handle<Value> UTimes(const Arguments& args) {
+ if (!args[1]->IsNumber()) return TYPE_ERROR("atime must be a number");
+ if (!args[2]->IsNumber()) return TYPE_ERROR("mtime must be a number");
+
+- const node::Utf8Value path(args[0]);
++ const String::Utf8Value path(args[0]);
+ const double atime = static_cast<double>(args[1]->NumberValue());
+ const double mtime = static_cast<double>(args[2]->NumberValue());
+
+diff --git a/src/node_stat_watcher.cc b/src/node_stat_watcher.cc
+index fd3e5d1..c3f668c 100644
+--- a/src/node_stat_watcher.cc
++++ b/src/node_stat_watcher.cc
+@@ -20,7 +20,6 @@
+ // USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ #include "node_stat_watcher.h"
+-#include "util.h"
+
+ #include <assert.h>
+ #include <string.h>
+@@ -105,7 +104,7 @@ Handle<Value> StatWatcher::Start(const Arguments& args) {
+ HandleScope scope;
+
+ StatWatcher* wrap = ObjectWrap::Unwrap<StatWatcher>(args.Holder());
+- node::Utf8Value path(args[0]);
++ String::Utf8Value path(args[0]);
+ const bool persistent = args[1]->BooleanValue();
+ const uint32_t interval = args[2]->Uint32Value();
+
+diff --git a/src/process_wrap.cc b/src/process_wrap.cc
+index ac63e4b..784300f 100644
+--- a/src/process_wrap.cc
++++ b/src/process_wrap.cc
+@@ -25,7 +25,6 @@
+ #include "tty_wrap.h"
+ #include "tcp_wrap.h"
+ #include "udp_wrap.h"
+-#include "util.h"
+
+ #include <string.h>
+ #include <stdlib.h>
+@@ -188,7 +187,7 @@ class ProcessWrap : public HandleWrap {
+
+ // options.file
+ Local<Value> file_v = js_options->Get(String::NewSymbol("file"));
+- node::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
++ String::Utf8Value file(file_v->IsString() ? file_v : Local<Value>());
+ if (file.length() > 0) {
+ options.file = *file;
+ } else {
+@@ -203,7 +202,7 @@ class ProcessWrap : public HandleWrap {
+ // Heap allocate to detect errors. +1 is for NULL.
+ options.args = new char*[argc + 1];
+ for (int i = 0; i < argc; i++) {
+- node::Utf8Value arg(js_argv->Get(i));
++ String::Utf8Value arg(js_argv->Get(i));
+ options.args[i] = strdup(*arg);
+ }
+ options.args[argc] = NULL;
+@@ -211,7 +210,7 @@ class ProcessWrap : public HandleWrap {
+
+ // options.cwd
+ Local<Value> cwd_v = js_options->Get(String::NewSymbol("cwd"));
+- node::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
++ String::Utf8Value cwd(cwd_v->IsString() ? cwd_v : Local<Value>());
+ if (cwd.length() > 0) {
+ options.cwd = *cwd;
+ }
+@@ -223,7 +222,7 @@ class ProcessWrap : public HandleWrap {
+ int envc = env->Length();
+ options.env = new char*[envc + 1]; // Heap allocated to detect errors.
+ for (int i = 0; i < envc; i++) {
+- node::Utf8Value pair(env->Get(i));
++ String::Utf8Value pair(env->Get(i));
+ options.env[i] = strdup(*pair);
+ }
+ options.env[envc] = NULL;
+diff --git a/src/udp_wrap.cc b/src/udp_wrap.cc
+index 31a4e78..b33f4e8 100644
+--- a/src/udp_wrap.cc
++++ b/src/udp_wrap.cc
+@@ -25,7 +25,6 @@
+ #include "req_wrap.h"
+ #include "handle_wrap.h"
+ #include "udp_wrap.h"
+-#include "util.h"
+
+ #include <stdlib.h>
+
+@@ -161,7 +160,7 @@ Handle<Value> UDPWrap::DoBind(const Arguments& args, int family) {
+ // bind(ip, port, flags)
+ assert(args.Length() == 3);
+
+- node::Utf8Value address(args[0]);
++ String::Utf8Value address(args[0]);
+ const int port = args[1]->Uint32Value();
+ const int flags = args[2]->Uint32Value();
+
+@@ -220,8 +219,8 @@ Handle<Value> UDPWrap::SetMembership(const Arguments& args,
+
+ assert(args.Length() == 2);
+
+- node::Utf8Value address(args[0]);
+- node::Utf8Value iface(args[1]);
++ String::Utf8Value address(args[0]);
++ String::Utf8Value iface(args[1]);
+
+ const char* iface_cstr = *iface;
+ if (args[1]->IsUndefined() || args[1]->IsNull()) {
+@@ -272,7 +271,7 @@ Handle<Value> UDPWrap::DoSend(const Arguments& args, int family) {
+ length);
+
+ const unsigned short port = args[3]->Uint32Value();
+- node::Utf8Value address(args[4]);
++ String::Utf8Value address(args[4]);
+
+ switch (family) {
+ case AF_INET:
+diff --git a/src/util.h b/src/util.h
+deleted file mode 100644
+index 0dbf7f4..0000000
+--- a/src/util.h
++++ /dev/null
+@@ -1,78 +0,0 @@
+-// Copyright Joyent, Inc. and other Node contributors.
+-//
+-// Permission is hereby granted, free of charge, to any person obtaining a
+-// copy of this software and associated documentation files (the
+-// "Software"), to deal in the Software without restriction, including
+-// without limitation the rights to use, copy, modify, merge, publish,
+-// distribute, sublicense, and/or sell copies of the Software, and to permit
+-// persons to whom the Software is furnished to do so, subject to the
+-// following conditions:
+-//
+-// The above copyright notice and this permission notice shall be included
+-// in all copies or substantial portions of the Software.
+-//
+-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
+-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
+-// USE OR OTHER DEALINGS IN THE SOFTWARE.
+-
+-#ifndef SRC_UTIL_H_
+-#define SRC_UTIL_H_
+-
+-#include "v8.h"
+-#include "string_bytes.h"
+-
+-namespace node {
+-
+-class Utf8Value {
+- public:
+- explicit Utf8Value(v8::Handle
v8::Value value)
+- : length_(0), str_(NULL) {
+- if (value.IsEmpty())
+- return;
+-
+- v8::Local
v8::String val_ = value->ToString();
+-
+- // Allocate enough space to include the null terminator
+- size_t len = StringBytes::StorageSize(val_, UTF8) + 1;
+-
+- char* str = static_cast<char*>(calloc(1, len));
+-
+- int flags = WRITE_UTF8_FLAGS;
+- flags |= ~v8::String::NO_NULL_TERMINATION;
+-
+- length_ = val_->WriteUtf8(str,
+- len,
+- 0,
+- flags);
+-
+- str_ = reinterpret_cast<char*>(str);
+- }
+-
+- ~Utf8Value() {
+- free(str_);
+- }
+-
+- char* operator*() {
+- return str_;
+- };
+-
+- const char* operator*() const {
+- return str_;
+- };
+-
+- size_t length() {
+- return length_;
+- };
+-
+- private:
+- size_t length_;
+- char* str_;
+-};
+-
+-} // namespace node
+-
+-#endif // SRC_UTIL_H_
+--
+1.9.3
+
diff --git a/nodejs-revert-utf8-v8.patch b/nodejs-revert-utf8-v8.patch
new file mode 100644
index 0000000..f617cf3
--- /dev/null
+++ b/nodejs-revert-utf8-v8.patch
@@ -0,0 +1,90 @@
+From c7c934c66cd8712c9ff169f1ef4c5670d3ff99c8 Mon Sep 17 00:00:00 2001
+From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
+Date: Wed, 18 Jun 2014 23:09:03 -0700
+Subject: [PATCH] Revert "string_bytes: Guarantee valid utf-8 output"
+
+This reverts commit 0da4c671659cfbae12def127b2e94690b9d9b5e1.
+---
+ src/node.cc | 7 -------
+ src/string_bytes.cc | 2 +-
+ src/string_bytes.h | 2 --
+ test/simple/test-buffer.js | 12 ------------
+ 4 files changed, 1 insertion(+), 22 deletions(-)
+
+diff --git a/src/node.cc b/src/node.cc
+index 4223973..e9696cd 100644
+--- a/src/node.cc
++++ b/src/node.cc
+@@ -178,8 +178,6 @@ static uv_async_t dispatch_debug_messages_async;
+ // Declared in node_internals.h
+ Isolate* node_isolate = NULL;
+
+-int WRITE_UTF8_FLAGS = v8::String::HINT_MANY_WRITES_EXPECTED |
+- v8::String::NO_NULL_TERMINATION;
+
+ static void Spin(uv_idle_t* handle, int status) {
+ assert((uv_idle_t*) handle == &tick_spinner);
+@@ -3046,11 +3044,6 @@ static char **copy_argv(int argc, char **argv) {
+ }
+
+ int Start(int argc, char *argv[]) {
+- const char* replaceInvalid = getenv("NODE_INVALID_UTF8");
+-
+- if (replaceInvalid == NULL)
+- WRITE_UTF8_FLAGS |= String::REPLACE_INVALID_UTF8;
+-
+ // Hack aroung with the argv pointer. Used for process.title = "blah".
+ argv = uv_setup_args(argc, argv);
+
+diff --git a/src/string_bytes.cc b/src/string_bytes.cc
+index a7bab38..e4a34fe 100644
+--- a/src/string_bytes.cc
++++ b/src/string_bytes.cc
+@@ -199,7 +199,7 @@ size_t StringBytes::Write(char* buf,
+ break;
+
+ case UTF8:
+- len = str->WriteUtf8(buf, buflen, chars_written, WRITE_UTF8_FLAGS);
++ len = str->WriteUtf8(buf, buflen, chars_written, flags);
+ break;
+
+ case UCS2:
+diff --git a/src/string_bytes.h b/src/string_bytes.h
+index 31f04bb..8071a49 100644
+--- a/src/string_bytes.h
++++ b/src/string_bytes.h
+@@ -29,8 +29,6 @@
+
+ namespace node {
+
+-extern int WRITE_UTF8_FLAGS;
+-
+ using v8::Handle;
+ using v8::Local;
+ using v8::String;
+diff --git a/test/simple/test-buffer.js b/test/simple/test-buffer.js
+index f8b2798..3026824 100644
+--- a/test/simple/test-buffer.js
++++ b/test/simple/test-buffer.js
+@@ -791,18 +791,6 @@ assert.equal(buf[3], 0xFF);
+ assert.equal(buf[3], 0xFF);
+ });
+
+-// test unmatched surrogates not producing invalid utf8 output
+-// ef bf bd = utf-8 representation of unicode replacement character
+-// see
https://codereview.chromium.org/121173009/
+-buf = new Buffer('ab\ud800cd', 'utf8');
+-assert.equal(buf[0], 0x61);
+-assert.equal(buf[1], 0x62);
+-assert.equal(buf[2], 0xef);
+-assert.equal(buf[3], 0xbf);
+-assert.equal(buf[4], 0xbd);
+-assert.equal(buf[5], 0x63);
+-assert.equal(buf[6], 0x64);
+-
+ // test for buffer overrun
+ buf = new Buffer([0, 0, 0, 0, 0]); // length: 5
+ var sub = buf.slice(0, 4); // length: 4
+--
+1.9.3
+
diff --git a/nodejs.spec b/nodejs.spec
index 41fef8d..84f1b9b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.28
+Version: 0.10.29
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -23,6 +23,13 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: nodejs-disable-gyp-deps.patch
+# The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
+# be done in a stable distribution release. This build of nodejs will behave as
+# if NODE_INVALID_UTF8 was set. For more information on the implications, see:
+#
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
+Patch3: nodejs-revert-utf8-v8.patch
+Patch4: nodejs-revert-utf8-node.patch
+
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 1:3.14.5.7
@@ -84,6 +91,8 @@ The API documentation for the Node.js JavaScript runtime.
%prep
%setup -q -n node-v%{version}
%patch1 -p1
+%patch3 -p1
+%patch4 -p1
rm -rf deps
@@ -160,6 +169,14 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Thu Jun 19 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.29-1
+- new upstream release 0.10.29
+
http://blog.nodejs.org/2014/06/16/node-v0-10-29-stable/
+- The invalid UTF8 fix has been reverted since this breaks v8 API, which cannot
+ be done in a stable distribution release. This build of nodejs will behave as
+ if NODE_INVALID_UTF8 was set. For more information on the implications, see:
+
http://blog.nodejs.org/2014/06/16/openssl-and-breaking-utf-8-change/
+
* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-1
- new upstream release 0.10.28
There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
diff --git a/sources b/sources
index 8975423..06dffad 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-cedd0dabd359963dfd97c9d8dd77d8de node-v0.10.28-stripped.tar.gz
+a78cf6c91b084915c0f02f6b81bfe0d1 node-v0.10.29-stripped.tar.gz
commit 30de266c2170bbbe8dcff751370987835163e70f
Author: Dennis Gilmore
dennis@ausil.us
Date: Sat Jun 7 08:00:42 2014 -0500
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
diff --git a/nodejs.spec b/nodejs.spec
index 019bc72..b041cda 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.28
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -179,6 +179,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Sat Jun 07 2014 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.10.28-3
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-2
- use the system certificate store instead of the bundled copy
both are based on the Mozilla CA list, so the only effect this should have is
commit d281f417b7f97e13c0163512c8fc2a2ee47c9f88
Merge: d8dedef e034863
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri May 2 19:11:54 2014 -0700
Merge branch 'epel7'
diff --cc nodejs.spec
index a4ad836,cf01c5a..019bc72
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -162,10 -170,15 +175,16 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-2
+ - use the system certificate store instead of the bundled copy
+ both are based on the Mozilla CA list, so the only effect this should have is
+ making additional certificates added by the system administrator available to
+ node
+
* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-1
- new upstream release 0.10.28
There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
commit e0348637198b64daa13ebf159a3087e543470e6b
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri May 2 18:24:05 2014 -0700
use the system certificate store instead of the bundled copy
both are based on the Mozilla CA list, so the only effect this should have is
making additional certificates added by the system administrator available to
node
diff --git a/nodejs-use-system-certs.patch b/nodejs-use-system-certs.patch
new file mode 100644
index 0000000..fe2abab
--- /dev/null
+++ b/nodejs-use-system-certs.patch
@@ -0,0 +1,58 @@
+Description: do not bundle CA certificates, openssl on Debian have them
+ As a consequence, nodejs must depend on ca-certificates.
+Forwarded: need some feedback before submitting the matter upstream
+Author: Jérémy Lal
kapouer@melix.org
+Last-Update: 2014-03-02
+
+Modified 2014-05-02 by T.C. Hollingsworth
tchollingsworth@gmail.com with the
+correct path for Fedora
+--- a/src/node_crypto.cc
++++ b/src/node_crypto.cc
+@@ -64,7 +64,6 @@
+ namespace node {
+
+ const char* root_certs[] = {
+-#include "node_root_certs.h" // NOLINT(build/include_order)
+ NULL
+ };
+
+@@ -561,32 +560,16 @@
+ assert(sc->ca_store_ == NULL);
+
+ if (!root_cert_store) {
+- root_cert_store = X509_STORE_new();
+-
+- for (int i = 0; root_certs[i]; i++) {
+- BIO *bp = BIO_new(BIO_s_mem());
+-
+- if (!BIO_write(bp, root_certs[i], strlen(root_certs[i]))) {
+- BIO_free(bp);
+- return False();
+- }
+-
+- X509 *x509 = PEM_read_bio_X509(bp, NULL, NULL, NULL);
+-
+- if (x509 == NULL) {
+- BIO_free(bp);
+- return False();
+- }
+-
+- X509_STORE_add_cert(root_cert_store, x509);
+-
+- BIO_free(bp);
+- X509_free(x509);
++ if (SSL_CTX_load_verify_locations(sc->ctx_, "/etc/pki/tls/certs/ca-bundle.crt", NULL) == 1) {
++ root_cert_store = SSL_CTX_get_cert_store(sc->ctx_);
++ } else {
++ // empty store
++ root_cert_store = X509_STORE_new();
+ }
++ } else {
++ SSL_CTX_set_cert_store(sc->ctx_, root_cert_store);
+ }
+-
+ sc->ca_store_ = root_cert_store;
+- SSL_CTX_set_cert_store(sc->ctx_, sc->ca_store_);
+
+ return True();
+ }
diff --git a/nodejs.spec b/nodejs.spec
index 41fef8d..cf01c5a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.28
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -23,6 +23,11 @@ Source7: nodejs_native.attr
# Disable running gyp on bundled deps we don't use
Patch1: nodejs-disable-gyp-deps.patch
+# use system certificates instead of the bundled ones
+# modified version of Debian patch:
+#
http://patch-tracker.debian.org/patch/series/view/nodejs/0.10.26~dfsg1-1/201...
+Patch2: nodejs-use-system-certs.patch
+
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 1:3.14.5.7
@@ -40,6 +45,9 @@ BuildRequires: openssl-devel >= 1:1.0.1
Requires: v8%{?_isa} >= %{v8_ge}
Requires: v8%{?_isa} < %{v8_lt}
+# we need the system certificate store when Patch2 is applied
+Requires: ca-certificates
+
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
#break when binary compatibility is broken
%global nodejs_abi 0.10
@@ -83,10 +91,15 @@ The API documentation for the Node.js JavaScript runtime.
%prep
%setup -q -n node-v%{version}
-%patch1 -p1
+# remove bundled dependencies
+%patch1 -p1
rm -rf deps
+# remove bundled CA certificates
+%patch2 -p1
+rm -f src/node_root_certs.h
+
%build
# build with debugging symbols and add defines from libuv (#892601)
export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
@@ -160,6 +173,12 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-2
+- use the system certificate store instead of the bundled copy
+ both are based on the Mozilla CA list, so the only effect this should have is
+ making additional certificates added by the system administrator available to
+ node
+
* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-1
- new upstream release 0.10.28
There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
commit d8dedefd4f93c43c5a6eec57ad92c301dce1d4b8
Merge: c7d9c59 7269177
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri May 2 17:51:32 2014 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index f2fe5b5,41fef8d..a4ad836
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -162,17 -157,21 +162,25 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-1
+ - new upstream release 0.10.28
+ There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
+ thing updated was npm, which is shipped seperately. The latest was only
+ packaged to avoid confusion. Please see the v0.10.27 changelog for relevant
+ changes in this update:
+
http://blog.nodejs.org/2014/05/01/node-v0-10-27-stable/
+
* Thu Feb 20 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.26-1
- - new upstream release 0.10.25
+ - new upstream release 0.10.26
http://blog.nodejs.org/2014/02/18/node-v0-10-26-stable/
+* Fri Feb 14 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-2
+- rebuild for icu-53 (via v8)
+
* Mon Jan 27 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-1
- new upstream release 0.10.25
http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
commit 7269177e52db86477fda6a595f1d7d12d1ab2c74
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri May 2 17:51:14 2014 -0700
fix old changelog entry
diff --git a/nodejs.spec b/nodejs.spec
index 7686f67..41fef8d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -169,7 +169,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
http://blog.nodejs.org/2014/05/01/node-v0-10-27-stable/
* Thu Feb 20 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.26-1
-- new upstream release 0.10.25
+- new upstream release 0.10.26
http://blog.nodejs.org/2014/02/18/node-v0-10-26-stable/
* Mon Jan 27 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-1
commit a0beb2b8b286d4db0a0bb8df149020be441edca2
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri May 2 17:49:35 2014 -0700
new upstream release 0.10.28
There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
thing updated was npm, which is shipped seperately. The latest was only
packaged to avoid confusion. Please see the v0.10.27 changelog for relevant
changes in this update:
http://blog.nodejs.org/2014/05/01/node-v0-10-27-stable/
diff --git a/.gitignore b/.gitignore
index ffe5124..b721d71 100644
--- a/.gitignore
+++ b/.gitignore
@@ -26,3 +26,4 @@
/node-v0.10.24-stripped.tar.gz
/node-v0.10.25-stripped.tar.gz
/node-v0.10.26-stripped.tar.gz
+/node-v0.10.28-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 87e60c3..7686f67 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.26
+Version: 0.10.28
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -160,6 +160,14 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Sat May 03 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.28-1
+- new upstream release 0.10.28
+ There is no dfference between 0.10.27 and 0.10.28 for Fedora, as the only
+ thing updated was npm, which is shipped seperately. The latest was only
+ packaged to avoid confusion. Please see the v0.10.27 changelog for relevant
+ changes in this update:
+
http://blog.nodejs.org/2014/05/01/node-v0-10-27-stable/
+
* Thu Feb 20 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.26-1
- new upstream release 0.10.25
http://blog.nodejs.org/2014/02/18/node-v0-10-26-stable/
diff --git a/sources b/sources
index eca8dcd..8975423 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-ecfd516837ce3299ed3eabbb4a219f52 node-v0.10.26-stripped.tar.gz
+cedd0dabd359963dfd97c9d8dd77d8de node-v0.10.28-stripped.tar.gz
commit c7d9c59d376d58bc48e30d24226050228f5df1a4
Merge: 337d167 1e46137
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Feb 19 21:01:43 2014 -0700
Merge branch 'f19' into f20
Conflicts:
nodejs.spec
diff --cc nodejs.spec
index 5ee32f3,87e60c3..f2fe5b5
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -162,13 -157,13 +162,17 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Thu Feb 20 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.26-1
+ - new upstream release 0.10.25
+
http://blog.nodejs.org/2014/02/18/node-v0-10-26-stable/
+
+* Fri Feb 14 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-2
+- rebuild for icu-53 (via v8)
+
* Mon Jan 27 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-1
- new upstream release 0.10.25
http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
commit 1e461376913976dc02740d8a1cd46e56d13a7cf3
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Feb 19 20:59:43 2014 -0700
new upstream release 0.10.25
http://blog.nodejs.org/2014/02/18/node-v0-10-26-stable/
diff --git a/.gitignore b/.gitignore
index 22af98e..ffe5124 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,3 +25,4 @@
/node-v0.10.24.tar.gz
/node-v0.10.24-stripped.tar.gz
/node-v0.10.25-stripped.tar.gz
+/node-v0.10.26-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 0b67530..87e60c3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.25
+Version: 0.10.26
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -160,6 +160,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Thu Feb 20 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.26-1
+- new upstream release 0.10.25
+
http://blog.nodejs.org/2014/02/18/node-v0-10-26-stable/
+
* Mon Jan 27 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-1
- new upstream release 0.10.25
http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
diff --git a/sources b/sources
index 445767f..eca8dcd 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-0cb686d5644944b21d1ba0dd70e106d8 node-v0.10.25-stripped.tar.gz
+ecfd516837ce3299ed3eabbb4a219f52 node-v0.10.26-stripped.tar.gz
commit 337d16703bd08cc8994a741025b04c35fb5898b3
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Feb 13 17:48:49 2014 -0700
rebuild for icu-53 (via v8)
diff --git a/nodejs.spec b/nodejs.spec
index 042de90..5ee32f3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.25
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -166,6 +166,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_pkgdocdir}/html
%changelog
+* Fri Feb 14 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-2
+- rebuild for icu-53 (via v8)
+
* Mon Jan 27 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-1
- new upstream release 0.10.25
http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
commit 5b72a39ee50bb62fe1e54820a584197aa2805194
Merge: c5e2e94 25d1267
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Mon Jan 27 15:31:34 2014 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 9f42e49,0b67530..042de90
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -162,10 -157,13 +162,14 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Mon Jan 27 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-1
+ - new upstream release 0.10.25
+
http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
+
* Thu Dec 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.24-1
- new upstream release 0.10.24
http://blog.nodejs.org/2013/12/19/node-v0-10-24-stable/
commit 25d126753c91b67fefcff35805d366646cf68332
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Mon Jan 27 15:30:48 2014 -0700
new upstream release 0.10.25
http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
diff --git a/.gitignore b/.gitignore
index e7f1144..22af98e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -24,3 +24,4 @@
/node-v0.10.23-stripped.tar.gz
/node-v0.10.24.tar.gz
/node-v0.10.24-stripped.tar.gz
+/node-v0.10.25-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index ae2520a..0b67530 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.24
+Version: 0.10.25
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -160,6 +160,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Mon Jan 27 2014 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.25-1
+- new upstream release 0.10.25
+
http://blog.nodejs.org/2014/01/23/node-v0-10-25-stable/
+
* Thu Dec 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.24-1
- new upstream release 0.10.24
http://blog.nodejs.org/2013/12/19/node-v0-10-24-stable/
diff --git a/sources b/sources
index 156e044..445767f 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-d2a6eeabc7aed4026fd66c7d0b66cdf5 node-v0.10.24-stripped.tar.gz
+0cb686d5644944b21d1ba0dd70e106d8 node-v0.10.25-stripped.tar.gz
commit c5e2e9472ba43b74bd8ebece5aba9eb169228964
Merge: f6427d6 7379e62
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 19 11:39:45 2013 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 01abcbe,ae2520a..9f42e49
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -133,18 -133,11 +133,12 @@@ EO
chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
#install documentation
-mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
-cp -pr doc/* %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
-rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
-cp -p LICENSE %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/
+mkdir -p %{buildroot}%{_pkgdocdir}/html
+cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
+rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
+cp -p LICENSE %{buildroot}%{_pkgdocdir}/html
+cp -p ChangeLog LICENSE README.md AUTHORS %{buildroot}%{_pkgdocdir}
- #install development headers
- #FIXME: we probably don't really need *.h but node-gyp downloads the whole
- #freaking source tree so I can't be sure ATM
- mkdir -p %{buildroot}%{_includedir}/node
- cp -p src/*.h %{buildroot}%{_includedir}/node
-
#node-gyp needs common.gypi too
mkdir -p %{buildroot}%{_datadir}/node
cp -p common.gypi %{buildroot}%{_datadir}/node
@@@ -168,10 -157,14 +162,15 @@@
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Thu Dec 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.24-1
+ - new upstream release 0.10.24
+
http://blog.nodejs.org/2013/12/19/node-v0-10-24-stable/
+ - upstream install script installs the headers now
+
* Thu Dec 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.23-1
- new upstream release 0.10.23
http://blog.nodejs.org/2013/12/11/node-v0-10-23-stable/
commit 7379e62cbbe016db4397b0422d078b482569bb9f
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 19 11:39:02 2013 -0700
upstream install script installs the headers now
diff --git a/nodejs.spec b/nodejs.spec
index 6fe5227..ae2520a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -138,12 +138,6 @@ cp -pr doc/* %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
cp -p LICENSE %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/
-#install development headers
-#FIXME: we probably don't really need *.h but node-gyp downloads the whole
-#freaking source tree so I can't be sure ATM
-mkdir -p %{buildroot}%{_includedir}/node
-cp -p src/*.h %{buildroot}%{_includedir}/node
-
#node-gyp needs common.gypi too
mkdir -p %{buildroot}%{_datadir}/node
cp -p common.gypi %{buildroot}%{_datadir}/node
@@ -169,6 +163,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Thu Dec 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.24-1
- new upstream release 0.10.24
http://blog.nodejs.org/2013/12/19/node-v0-10-24-stable/
+- upstream install script installs the headers now
* Thu Dec 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.23-1
- new upstream release 0.10.23
commit 54cf0adca3139e61d66ccd809ac5a9363c7dfac1
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 19 11:26:54 2013 -0700
new upstream release 0.10.24
http://blog.nodejs.org/2013/12/19/node-v0-10-24-stable/
diff --git a/.gitignore b/.gitignore
index 0b3e2c3..e7f1144 100644
--- a/.gitignore
+++ b/.gitignore
@@ -22,3 +22,5 @@
/node-v0.10.21-stripped.tar.gz
/node-v0.10.22-stripped.tar.gz
/node-v0.10.23-stripped.tar.gz
+/node-v0.10.24.tar.gz
+/node-v0.10.24-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index f040f66..6fe5227 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.23
+Version: 0.10.24
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -166,6 +166,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Thu Dec 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.24-1
+- new upstream release 0.10.24
+
http://blog.nodejs.org/2013/12/19/node-v0-10-24-stable/
+
* Thu Dec 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.23-1
- new upstream release 0.10.23
http://blog.nodejs.org/2013/12/11/node-v0-10-23-stable/
diff --git a/sources b/sources
index d785c5a..156e044 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-3865d42776a7094771ccc631babed738 node-v0.10.23-stripped.tar.gz
+d2a6eeabc7aed4026fd66c7d0b66cdf5 node-v0.10.24-stripped.tar.gz
commit f6427d6182e38a2f558e81e0d70f8ce03456b75a
Merge: a60557c 79b29fc
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 12 11:03:04 2013 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 1defeca,f040f66..01abcbe
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -168,10 -163,13 +168,14 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Thu Dec 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.23-1
+ - new upstream release 0.10.23
+
http://blog.nodejs.org/2013/12/11/node-v0-10-23-stable/
+
* Tue Nov 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.22-1
- new upstream release 0.10.22
http://blog.nodejs.org/2013/11/12/node-v0-10-22-stable/
commit 79b29fceecbbf43af8645a1bdeb75331d57e6cef
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 12 11:02:53 2013 -0700
new upstream release 0.10.23
http://blog.nodejs.org/2013/12/11/node-v0-10-23-stable/
diff --git a/.gitignore b/.gitignore
index 48f0f6d..0b3e2c3 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,3 +21,4 @@
/node-v0.10.20-stripped.tar.gz
/node-v0.10.21-stripped.tar.gz
/node-v0.10.22-stripped.tar.gz
+/node-v0.10.23-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 2d12a02..f040f66 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.22
+Version: 0.10.23
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -166,6 +166,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Thu Dec 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.23-1
+- new upstream release 0.10.23
+
http://blog.nodejs.org/2013/12/11/node-v0-10-23-stable/
+
* Tue Nov 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.22-1
- new upstream release 0.10.22
http://blog.nodejs.org/2013/11/12/node-v0-10-22-stable/
diff --git a/sources b/sources
index 225e499..d785c5a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-60a9abb2608df8ba9806e7426a1def91 node-v0.10.22-stripped.tar.gz
+3865d42776a7094771ccc631babed738 node-v0.10.23-stripped.tar.gz
commit a60557c32b38f2f2f11637cd821c460045c0bf26
Merge: 026d6ad fb183ee
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 12 14:56:51 2013 -0700
Merge branch 'f19' into f20
commit fb183ee57baf494d5072984416bd0e6d1f91b70a
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 12 14:56:28 2013 -0700
refresh gyp bundled dep removal patch
diff --git a/nodejs-disable-gyp-deps.patch b/nodejs-disable-gyp-deps.patch
index 5be37d6..ae48d24 100644
--- a/nodejs-disable-gyp-deps.patch
+++ b/nodejs-disable-gyp-deps.patch
@@ -1,6 +1,18 @@
---- Makefile~ 2013-05-17 13:59:10.000000000 -0700
-+++ Makefile 2013-05-28 20:09:57.199250068 -0700
-@@ -43,7 +43,7 @@
+From 4464455834276c845a63fede515cb62655afb2da Mon Sep 17 00:00:00 2001
+From: "T.C. Hollingsworth"
tchollingsworth@gmail.com
+Date: Tue, 12 Nov 2013 14:51:03 -0700
+Subject: [PATCH] disable running gyp files for bundled deps
+
+these aren't used in Fedora
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 8177017..81d150f 100644
+--- a/Makefile
++++ b/Makefile
+@@ -43,7 +43,7 @@ node_g: config.gypi out/Makefile
ln -fs out/Debug/node $@
endif
@@ -8,4 +20,7 @@
+out/Makefile: common.gypi node.gyp config.gypi
ifeq ($(USE_NINJA),1)
touch out/Makefile
- $(PYTHON) tools/gyp_node -f ninja
+ $(PYTHON) tools/gyp_node.py -f ninja
+--
+1.8.4.2
+
diff --git a/nodejs.spec b/nodejs.spec
index f0e8439..2d12a02 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -83,7 +83,7 @@ The API documentation for the Node.js JavaScript runtime.
%prep
%setup -q -n node-v%{version}
-%patch1 -p0
+%patch1 -p1
rm -rf deps
commit 026d6ad95d1820c89fed54d10222a045f0b5b0d6
Merge: 57f0090 d21c6c8
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 12 14:31:17 2013 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 2c09356,f0e8439..c34b85d
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -168,10 -163,13 +168,14 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Tue Nov 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.22-1
+ - new upstream release 0.10.22
+
http://blog.nodejs.org/2013/11/12/node-v0-10-22-stable/
+
* Fri Oct 18 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.21-1
- new upstream release 0.10.21
http://blog.nodejs.org/2013/10/18/node-v0-10-21-stable/
commit d21c6c8b993222b98ac0689dda67643c70a2786c
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Nov 12 14:31:09 2013 -0700
new upstream release 0.10.22
http://blog.nodejs.org/2013/11/12/node-v0-10-22-stable/
diff --git a/.gitignore b/.gitignore
index 794ad06..48f0f6d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,3 +20,4 @@
/node-v0.10.19-stripped.tar.gz
/node-v0.10.20-stripped.tar.gz
/node-v0.10.21-stripped.tar.gz
+/node-v0.10.22-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index ab59144..f0e8439 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.21
+Version: 0.10.22
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -166,6 +166,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Tue Nov 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.22-1
+- new upstream release 0.10.22
+
http://blog.nodejs.org/2013/11/12/node-v0-10-22-stable/
+
* Fri Oct 18 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.21-1
- new upstream release 0.10.21
http://blog.nodejs.org/2013/10/18/node-v0-10-21-stable/
diff --git a/sources b/sources
index 8d0a82d..225e499 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-26bb21ec7b63b11d07fc6383836dd119 node-v0.10.21-stripped.tar.gz
+60a9abb2608df8ba9806e7426a1def91 node-v0.10.22-stripped.tar.gz
commit 57f00901dafbe051a2033c1a62963b46cc0731c9
Merge: 5b54d77 95269f1
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri Oct 18 16:13:31 2013 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 68f4ee9,ab59144..2c09356
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -168,10 -163,14 +168,15 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Fri Oct 18 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.21-1
+ - new upstream release 0.10.21
+
http://blog.nodejs.org/2013/10/18/node-v0-10-21-stable/
+ - resolves an undisclosed security vulnerability in the http module
+
* Tue Oct 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.20-1
- new upstream release 0.10.20
http://blog.nodejs.org/2013/09/30/node-v0-10-20-stable/
commit 95269f175979ad201e155bb887e28e7b86151338
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri Oct 18 16:12:25 2013 -0700
new upstream release 0.10.21
http://blog.nodejs.org/2013/10/18/node-v0-10-21-stable/
- resolves an undisclosed security vulnerability in the http module
diff --git a/.gitignore b/.gitignore
index 347eb45..794ad06 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,3 +19,4 @@
/node-v0.10.18-stripped.tar.gz
/node-v0.10.19-stripped.tar.gz
/node-v0.10.20-stripped.tar.gz
+/node-v0.10.21-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 437cbd1..ab59144 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.20
+Version: 0.10.21
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -166,6 +166,11 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Fri Oct 18 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.21-1
+- new upstream release 0.10.21
+
http://blog.nodejs.org/2013/10/18/node-v0-10-21-stable/
+- resolves an undisclosed security vulnerability in the http module
+
* Tue Oct 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.20-1
- new upstream release 0.10.20
http://blog.nodejs.org/2013/09/30/node-v0-10-20-stable/
diff --git a/sources b/sources
index 5dfdbb9..8d0a82d 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-acd2dfe42db77a1348360ee152245c39 node-v0.10.20-stripped.tar.gz
+26bb21ec7b63b11d07fc6383836dd119 node-v0.10.21-stripped.tar.gz
commit 5b54d773e52935f6159428ba0edfeb755f458494
Merge: 99f22d7 ded3260
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Mon Sep 30 17:18:43 2013 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index cbc390c,437cbd1..68f4ee9
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -168,10 -163,13 +168,14 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Tue Oct 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.20-1
+ - new upstream release 0.10.20
+
http://blog.nodejs.org/2013/09/30/node-v0-10-20-stable/
+
* Wed Sep 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.19-1
- new upstream release 0.10.19
http://blog.nodejs.org/2013/09/24/node-v0-10-19-stable/
commit ded32609baac2ee6b6dc42352b865c9c19e35d11
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Mon Sep 30 17:18:36 2013 -0700
new upstream release 0.10.20
http://blog.nodejs.org/2013/09/30/node-v0-10-20-stable/
diff --git a/.gitignore b/.gitignore
index f89cf73..347eb45 100644
--- a/.gitignore
+++ b/.gitignore
@@ -18,3 +18,4 @@
/node-v0.10.17-stripped.tar.gz
/node-v0.10.18-stripped.tar.gz
/node-v0.10.19-stripped.tar.gz
+/node-v0.10.20-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index d8c7bf9..437cbd1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.19
+Version: 0.10.20
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -166,6 +166,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Tue Oct 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.20-1
+- new upstream release 0.10.20
+
http://blog.nodejs.org/2013/09/30/node-v0-10-20-stable/
+
* Wed Sep 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.19-1
- new upstream release 0.10.19
http://blog.nodejs.org/2013/09/24/node-v0-10-19-stable/
diff --git a/sources b/sources
index dcafa59..5dfdbb9 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-41b285ee404a389e238e755181094c6e node-v0.10.19-stripped.tar.gz
+acd2dfe42db77a1348360ee152245c39 node-v0.10.20-stripped.tar.gz
commit 99f22d7753e7bab4f5fce299ea5ae8ea6835dddd
Merge: 7de7b5c 6f09c65
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Sep 24 17:30:34 2013 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 74262b6,d8c7bf9..cbc390c
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -168,10 -163,13 +168,14 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Wed Sep 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.19-1
+ - new upstream release 0.10.19
+
http://blog.nodejs.org/2013/09/24/node-v0-10-19-stable/
+
* Fri Sep 06 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.18-1
- new upstream release 0.10.18
http://blog.nodejs.org/2013/09/04/node-v0-10-18-stable/
commit 6f09c657d448ca5aa0f325da6a59a8c3ac83c490
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Sep 24 17:30:22 2013 -0700
new upstream release 0.10.19
http://blog.nodejs.org/2013/09/24/node-v0-10-19-stable/
diff --git a/.gitignore b/.gitignore
index 720ca55..f89cf73 100644
--- a/.gitignore
+++ b/.gitignore
@@ -17,3 +17,4 @@
/node-v0.10.16-stripped.tar.gz
/node-v0.10.17-stripped.tar.gz
/node-v0.10.18-stripped.tar.gz
+/node-v0.10.19-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 2731713..d8c7bf9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.18
+Version: 0.10.19
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -166,6 +166,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed Sep 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.19-1
+- new upstream release 0.10.19
+
http://blog.nodejs.org/2013/09/24/node-v0-10-19-stable/
+
* Fri Sep 06 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.18-1
- new upstream release 0.10.18
http://blog.nodejs.org/2013/09/04/node-v0-10-18-stable/
diff --git a/sources b/sources
index 2b8a945..dcafa59 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-71266043d872ee70218bd916a0e9c3a0 node-v0.10.18-stripped.tar.gz
+41b285ee404a389e238e755181094c6e node-v0.10.19-stripped.tar.gz
commit 7de7b5c17202ba5ea8bd6698227c9f3e99af64dd
Merge: 2dfcabe 793585c
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri Sep 6 15:24:55 2013 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index 908b850,2731713..74262b6
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -168,10 -163,13 +168,14 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
%changelog
+ * Fri Sep 06 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.18-1
+ - new upstream release 0.10.18
+
http://blog.nodejs.org/2013/09/04/node-v0-10-18-stable/
+
* Tue Aug 27 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.17-1
- new upstream release 0.10.17
http://blog.nodejs.org/2013/08/21/node-v0-10-17-stable/
commit 793585cd7d80116e5837b0b6c19f0364e0c0b2b3
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri Sep 6 15:24:49 2013 -0700
new upstream release 0.10.18
http://blog.nodejs.org/2013/09/04/node-v0-10-18-stable/
diff --git a/.gitignore b/.gitignore
index 4aff77e..720ca55 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,3 +16,4 @@
/node-v0.10.14-stripped.tar.gz
/node-v0.10.16-stripped.tar.gz
/node-v0.10.17-stripped.tar.gz
+/node-v0.10.18-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index cccb3c1..2731713 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.17
+Version: 0.10.18
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -166,6 +166,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Fri Sep 06 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.18-1
+- new upstream release 0.10.18
+
http://blog.nodejs.org/2013/09/04/node-v0-10-18-stable/
+
* Tue Aug 27 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.17-1
- new upstream release 0.10.17
http://blog.nodejs.org/2013/08/21/node-v0-10-17-stable/
diff --git a/sources b/sources
index 4ab9239..2b8a945 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-8d8eea23c0ee4d40699d65cf8e80930a node-v0.10.17-stripped.tar.gz
+71266043d872ee70218bd916a0e9c3a0 node-v0.10.18-stripped.tar.gz
commit 2dfcabecae92725903c29f08f2f3c1a6bbafb154
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Aug 27 01:57:07 2013 -0700
fix duplicated/conflicting documentation files (RHBZ#1001253)
diff --git a/nodejs.spec b/nodejs.spec
index fe1dec1..908b850 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -137,6 +137,7 @@ mkdir -p %{buildroot}%{_pkgdocdir}/html
cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
cp -p LICENSE %{buildroot}%{_pkgdocdir}/html
+cp -p ChangeLog LICENSE README.md AUTHORS %{buildroot}%{_pkgdocdir}
#install development headers
#FIXME: we probably don't really need *.h but node-gyp downloads the whole
@@ -149,13 +150,17 @@ mkdir -p %{buildroot}%{_datadir}/node
cp -p common.gypi %{buildroot}%{_datadir}/node
%files
-%doc ChangeLog LICENSE README.md AUTHORS
%{_bindir}/node
%{_mandir}/man1/node.*
%dir %{_prefix}/lib/node_modules
%dir %{_datadir}/node
%{_rpmconfigdir}/fileattrs/nodejs_native.attr
%{_rpmconfigdir}/nodejs_native.req
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/ChangeLog
+%{_pkgdocdir}/LICENSE
+%{_pkgdocdir}/README.md
+%{_pkgdocdir}/AUTHORS
%files devel
%{_bindir}/node_g
@@ -165,12 +170,12 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%files docs
%dir %{_pkgdocdir}
%{_pkgdocdir}/html
-%exclude %{_pkgdocdir}/(ChangeLog|LICENSE|README.md|AUTHORS)
%changelog
* Tue Aug 27 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.17-1
- new upstream release 0.10.17
http://blog.nodejs.org/2013/08/21/node-v0-10-17-stable/
+- fix duplicated/conflicting documentation files (RHBZ#1001253)
* Sat Aug 17 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.16-1
- new upstream release 0.10.16
commit cada6a6db21a5bfde8a0dbc489348dde1daff367
Merge: ff0f5ce 2f74c1f
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Aug 27 01:51:25 2013 -0700
Merge branch 'f19' into f20
diff --cc nodejs.spec
index aa63a8a,cccb3c1..fe1dec1
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -163,11 -163,13 +163,15 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
+%exclude %{_pkgdocdir}/(ChangeLog|LICENSE|README.md|AUTHORS)
%changelog
+ * Tue Aug 27 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.17-1
+ - new upstream release 0.10.17
+
http://blog.nodejs.org/2013/08/21/node-v0-10-17-stable/
+
* Sat Aug 17 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.16-1
- new upstream release 0.10.16
http://blog.nodejs.org/2013/08/16/node-v0-10-16-stable/
commit 2f74c1f47514a033e43d4bef94e618d4ccdd8ea3
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Aug 27 01:35:24 2013 -0700
new upstream release 0.10.17
http://blog.nodejs.org/2013/08/21/node-v0-10-17-stable/
diff --git a/.gitignore b/.gitignore
index 491b1db..4aff77e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -15,3 +15,4 @@
/node-v0.10.13-stripped.tar.gz
/node-v0.10.14-stripped.tar.gz
/node-v0.10.16-stripped.tar.gz
+/node-v0.10.17-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 4a60160..cccb3c1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.16
+Version: 0.10.17
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -166,6 +166,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Tue Aug 27 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.17-1
+- new upstream release 0.10.17
+
http://blog.nodejs.org/2013/08/21/node-v0-10-17-stable/
+
* Sat Aug 17 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.16-1
- new upstream release 0.10.16
http://blog.nodejs.org/2013/08/16/node-v0-10-16-stable/
diff --git a/sources b/sources
index 934ea81..4ab9239 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-bc44062e64767be1ecb04d12c19d31da node-v0.10.16-stripped.tar.gz
+8d8eea23c0ee4d40699d65cf8e80930a node-v0.10.17-stripped.tar.gz
commit ff0f5cef8b78a70e63741eeac481bfd25ade6e15
Merge: bb22b1a 980a4c5
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri Aug 16 20:18:15 2013 -0700
Merge branch 'f19'
diff --cc nodejs.spec
index 8389f15,4a60160..aa63a8a
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -162,11 -163,15 +163,17 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
+%exclude %{_pkgdocdir}/(ChangeLog|LICENSE|README.md|AUTHORS)
%changelog
+ * Sat Aug 17 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.16-1
+ - new upstream release 0.10.16
+
http://blog.nodejs.org/2013/08/16/node-v0-10-16-stable/
+ - add v8-devel to -devel Requires
+ - restrict -devel Requires to the same architecture
+
* Wed Aug 14 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-3
- fix typo in _isa macro in v8 Requires
commit 980a4c543964eff6cedb510ef72cdcf68ecb923f
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri Aug 16 20:17:28 2013 -0700
add v8-devel and %{?_isa} to -devel Requires
diff --git a/nodejs.spec b/nodejs.spec
index a69935e..4a60160 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -64,8 +64,9 @@ real-time applications that run across distributed devices.
%package devel
Summary: JavaScript runtime - development headers
Group: Development/Languages
-Requires: %{name} == %{version}-%{release}
-Requires: libuv-devel http-parser-devel openssl-devel c-ares-devel zlib-devel
+Requires: %{name}%{?_isa} == %{version}-%{release}
+Requires: libuv-devel%{?_isa} http-parser-devel%{?_isa} v8-devel%{?_isa}
+Requires: openssl-devel%{?_isa} c-ares-devel%{?_isa} zlib-devel%{?_isa}
Requires: nodejs-packaging
%description devel
@@ -168,6 +169,8 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Sat Aug 17 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.16-1
- new upstream release 0.10.16
http://blog.nodejs.org/2013/08/16/node-v0-10-16-stable/
+- add v8-devel to -devel Requires
+- restrict -devel Requires to the same architecture
* Wed Aug 14 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-3
- fix typo in _isa macro in v8 Requires
commit b9edecaefd25a788151ae75bd55b695b6bd843e8
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Fri Aug 16 20:15:05 2013 -0700
new upstream release 0.10.16
http://blog.nodejs.org/2013/08/16/node-v0-10-16-stable/
diff --git a/.gitignore b/.gitignore
index ca56a3e..491b1db 100644
--- a/.gitignore
+++ b/.gitignore
@@ -14,3 +14,4 @@
/node-v0.10.12-stripped.tar.gz
/node-v0.10.13-stripped.tar.gz
/node-v0.10.14-stripped.tar.gz
+/node-v0.10.16-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 5ee189b..a69935e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
-Version: 0.10.14
-Release: 3%{?dist}
+Version: 0.10.16
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -165,6 +165,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Sat Aug 17 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.16-1
+- new upstream release 0.10.16
+
http://blog.nodejs.org/2013/08/16/node-v0-10-16-stable/
+
* Wed Aug 14 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-3
- fix typo in _isa macro in v8 Requires
diff --git a/sources b/sources
index 21ccde2..934ea81 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-0d8d98fea39d17ea16761da3f5a4353c node-v0.10.14-stripped.tar.gz
+bc44062e64767be1ecb04d12c19d31da node-v0.10.16-stripped.tar.gz
commit bb22b1aff533903facd038dd4f51ac1dd973a976
Merge: 93798a9 e9f69b1
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Aug 14 02:08:33 2013 -0700
Merge branch 'f19'
Conflicts:
nodejs.spec
diff --cc nodejs.spec
index cf66e18,5ee189b..8389f15
--- a/nodejs.spec
+++ b/nodejs.spec
@@@ -162,16 -162,12 +162,19 @@@ cp -p common.gypi %{buildroot}%{_datadi
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
+%exclude %{_pkgdocdir}/(ChangeLog|LICENSE|README.md|AUTHORS)
%changelog
+ * Wed Aug 14 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-3
+ - fix typo in _isa macro in v8 Requires
+
+* Mon Aug 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-2
+- use unversioned docdir for -docs subpackage
+
https://fedoraproject.org/wiki/Changes/UnversionedDocdirs
+- use main package's docdir instead of a seperate -docs directory
+
* Thu Jul 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-1
- new upstream release 0.10.14
http://blog.nodejs.org/2013/07/25/node-v0-10-14-stable/
commit e9f69b1411df6b2fae5eedb180f448267f0ee9fc
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Aug 14 01:55:09 2013 -0700
fix typo in _isa macro in v8 Requires
v8.i686 still never got dragged in, thanks to the automatic soname-
based provides, but this makes yum attempt to do some crazy stuff [1]
and crash and burn when spot's conflicting chromium repo is installed.
[1]
https://lists.fedoraproject.org/pipermail/users/2013-August/439753.html
diff --git a/nodejs.spec b/nodejs.spec
index 412eb79..5ee189b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.14
-Release: 1%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -37,8 +37,8 @@ BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
-Requires: v8%{?isa} >= %{v8_ge}
-Requires: v8%{?isa} < %{v8_lt}
+Requires: v8%{?_isa} >= %{v8_ge}
+Requires: v8%{?_isa} < %{v8_lt}
#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
#break when binary compatibility is broken
@@ -165,6 +165,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed Aug 14 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-3
+- fix typo in _isa macro in v8 Requires
+
* Thu Jul 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-1
- new upstream release 0.10.14
http://blog.nodejs.org/2013/07/25/node-v0-10-14-stable/
commit 93798a9a798354712a482ab1e4d63a856e23c528
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sun Aug 4 20:32:28 2013 -0700
use unversioned docdir for -docs subpackage
https://fedoraproject.org/wiki/Changes/UnversionedDocdirs
- use main package's docdir instead of a seperate -docs directory
DO NOT BACKPORT THIS COMMIT TO PREVIOUS FEDORA RELEASES
diff --git a/nodejs.spec b/nodejs.spec
index 412eb79..cf66e18 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.14
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -132,10 +132,10 @@ EOF
chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
#install documentation
-mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
-cp -pr doc/* %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
-rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
-cp -p LICENSE %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/
+mkdir -p %{buildroot}%{_pkgdocdir}/html
+cp -pr doc/* %{buildroot}%{_pkgdocdir}/html
+rm -f %{buildroot}%{_pkgdocdir}/html/nodejs.1
+cp -p LICENSE %{buildroot}%{_pkgdocdir}/html
#install development headers
#FIXME: we probably don't really need *.h but node-gyp downloads the whole
@@ -162,9 +162,16 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_datadir}/node/common.gypi
%files docs
-%{_defaultdocdir}/%{name}-docs-%{version}
+%dir %{_pkgdocdir}
+%{_pkgdocdir}/html
+%exclude %{_pkgdocdir}/(ChangeLog|LICENSE|README.md|AUTHORS)
%changelog
+* Mon Aug 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-2
+- use unversioned docdir for -docs subpackage
+
https://fedoraproject.org/wiki/Changes/UnversionedDocdirs
+- use main package's docdir instead of a seperate -docs directory
+
* Thu Jul 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-1
- new upstream release 0.10.14
http://blog.nodejs.org/2013/07/25/node-v0-10-14-stable/
commit a22461bf51197e349e1897e78227080c7c9b4bc8
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jul 25 14:22:08 2013 -0700
new upstream release 0.10.14
http://blog.nodejs.org/2013/07/25/node-v0-10-14-stable/
diff --git a/.gitignore b/.gitignore
index 678af5f..ca56a3e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,3 +13,4 @@
/node-v0.10.9-stripped.tar.gz
/node-v0.10.12-stripped.tar.gz
/node-v0.10.13-stripped.tar.gz
+/node-v0.10.14-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 885ecb9..412eb79 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.13
+Version: 0.10.14
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -165,6 +165,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Thu Jul 25 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.14-1
+- new upstream release 0.10.14
+
http://blog.nodejs.org/2013/07/25/node-v0-10-14-stable/
+
* Wed Jul 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.13-1
- new upstream release 0.10.13
http://blog.nodejs.org/2013/07/09/node-v0-10-13-stable/
diff --git a/sources b/sources
index 15661c1..21ccde2 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-3c856815ac6f879f1c956e216668aa14 node-v0.10.13-stripped.tar.gz
+0d8d98fea39d17ea16761da3f5a4353c node-v0.10.14-stripped.tar.gz
commit 06ed0ee13fd2762e443b133d07a14248b4f50567
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jul 10 03:03:28 2013 -0700
remove RPM macros, etc. now that they've migrated to nodejs-packaging
diff --git a/multiver_modules b/multiver_modules
deleted file mode 100644
index 29857b1..0000000
--- a/multiver_modules
+++ /dev/null
@@ -1,2 +0,0 @@
-uglify-js
-inherits
\ No newline at end of file
diff --git a/nodejs-fixdep b/nodejs-fixdep
deleted file mode 100755
index 44e79f4..0000000
--- a/nodejs-fixdep
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/python
-
-"""Modify a dependency listed in a package.json file"""
-
-# Copyright 2013 T.C. Hollingsworth
tchollingsworth@gmail.com
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-
-import json
-import os
-import shutil
-import sys
-
-if not os.path.exists('package.json~'):
- shutil.copy2('package.json', 'package.json~')
-
-md = json.load(open('package.json'))
-
-if 'dependencies' not in md:
- md['dependencies'] = {}
-
-if sys.argv[1] == '-r':
- dep = sys.argv[2]
- del md['dependencies'][dep]
-else:
- dep = sys.argv[1]
-
- if len(sys.argv) > 2:
- ver = sys.argv[2]
- else:
- ver = '*'
-
- md['dependencies'][dep] = ver
-
-fh = open('package.json', 'w')
-data = json.JSONEncoder(indent=4).encode(md)
-fh.write(data)
-fh.close()
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
deleted file mode 100755
index 5bcb885..0000000
--- a/nodejs-symlink-deps
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/usr/bin/python
-
-"""Symlink a node module's dependencies into the node_modules directory so users
-can `npm link` RPM-installed modules into their personal projects."""
-
-# Copyright 2012, 2013 T.C. Hollingsworth
tchollingsworth@gmail.com
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-
-import json
-import os
-import sys
-
-#the %nodejs_symlink_deps macro passes %nodejs_sitelib as the first argument
-sitelib = sys.argv[1]
-
-#read in the list of mutiple-versioned packages
-mvpkgs = open('/usr/share/node/multiver_modules').read().split('\n')
-
-if '--check' in sys.argv:
- check = True
- modules = [os.getcwd()]
-else:
- check = False
- br_sitelib = os.path.join(os.environ['RPM_BUILD_ROOT'], sitelib.lstrip('/'))
- modules = [os.path.join(br_sitelib, module) for module in os.listdir(br_sitelib)]
-
-for path in modules:
- os.chdir(path)
- md = json.load(open('package.json'))
-
- if 'dependencies' in md or (check and 'devDependencies' in md):
- try:
- os.mkdir('node_modules')
- except OSError:
- sys.stderr.write('WARNING: node_modules already exists. Make sure you have ' +
- 'no bundled dependencies.\n')
-
- os.chdir('node_modules')
-
- if 'dependencies' in md:
- for dep, ver in md['dependencies'].iteritems():
- if dep in mvpkgs:
- depver = ver.lstrip('~').split('.')[0]
- target = os.path.join(sitelib, '{0}@{1}'.format(dep, depver))
- else:
- target = os.path.join(sitelib, dep)
-
- if not check or os.path.exists(target):
- os.symlink(target, dep)
-
- if check and '--no-devdeps' not in sys.argv and 'devDependencies' in md:
- for dep, ver in md['devDependencies'].iteritems():
- if dep in mvpkgs:
- depver = ver.lstrip('~').split('.')[0]
- target = os.path.join(sitelib, '{0}@{1}'.format(dep, depver))
- else:
- target = os.path.join(sitelib, dep)
-
- if os.path.exists(target):
- os.symlink(target, dep)
diff --git a/nodejs.attr b/nodejs.attr
deleted file mode 100644
index 832a4be..0000000
--- a/nodejs.attr
+++ /dev/null
@@ -1,3 +0,0 @@
-%__nodejs_provides %{_rpmconfigdir}/nodejs.prov
-%__nodejs_requires %{_rpmconfigdir}/nodejs.req
-%__nodejs_path ^/usr/lib.*/node_modules/.*/package\.json$
diff --git a/nodejs.prov b/nodejs.prov
deleted file mode 100755
index 7c8dac2..0000000
--- a/nodejs.prov
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/usr/bin/python
-
-"""
-Automatic provides generator for Node.js libraries.
-
-Taken from package.json. See `man npm-json` for details.
-"""
-# Copyright 2012 T.C. Hollingsworth
tchollingsworth@gmail.com
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-
-import json
-import sys
-
-paths = [path.rstrip() for path in sys.stdin.readlines()]
-
-for path in paths:
- if path.endswith('package.json'):
- fh = open(path)
- metadata = json.load(fh)
- fh.close()
-
- if 'name' in metadata and not ('private' in metadata and metadata['private']):
- print 'npm(' + metadata['name'] + ')',
-
- if 'version' in metadata:
- print '= ' + metadata['version']
- else:
- print
diff --git a/nodejs.req b/nodejs.req
deleted file mode 100755
index 8130276..0000000
--- a/nodejs.req
+++ /dev/null
@@ -1,148 +0,0 @@
-#!/usr/bin/python
-
-"""
-Automatic dependency generator for Node.js libraries.
-
-Parsed from package.json. See `man npm-json` for details.
-"""
-
-# Copyright 2012 T.C. Hollingsworth
tchollingsworth@gmail.com
-#
-# Permission is hereby granted, free of charge, to any person obtaining a copy
-# of this software and associated documentation files (the "Software"), to
-# deal in the Software without restriction, including without limitation the
-# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
-# sell copies of the Software, and to permit persons to whom the Software is
-# furnished to do so, subject to the following conditions:
-#
-# The above copyright notice and this permission notice shall be included in
-# all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
-# IN THE SOFTWARE.
-
-from __future__ import unicode_literals
-import json
-import re
-import sys
-
-RE_VERSION = re.compile(r'\s*v?([<>=~]{0,2})\s*([0-9][0-9.-]*)\s*')
-
-def main():
- #npm2rpm uses functions here to write BuildRequires so don't print anything
- #until the very end
- deps = []
-
- #it's highly unlikely that we'll ever get more than one file but we handle
- #this like all RPM automatic dependency generation scripts anyway
- paths = [path.rstrip() for path in sys.stdin.readlines()]
-
- for path in paths:
- if path.endswith('package.json'):
- fh = open(path)
- metadata = json.load(fh)
- fh.close()
-
- #write out the node.js interpreter dependency
- req = 'nodejs(engine)'
-
- if 'engines' in metadata and 'node' in metadata['engines']:
- deps += process_dep(req, metadata['engines']['node'])
- else:
- deps.append(req)
-
- if 'dependencies' in metadata:
- for name, version in metadata['dependencies'].iteritems():
- req = 'npm(' + name + ')'
- deps += process_dep(req, version)
-
- print '\n'.join(deps)
-
-def process_dep(req, version):
- """Converts an individual npm dependency into RPM dependencies"""
-
- deps = []
-
- #there's no way RPM can do anything like an OR dependency
- if '||' in version:
- sys.stderr.write("WARNING: The {0} dependency contains an ".format(req) +
- "OR (||) dependency: '{0}.\nPlease manually include ".format(version) +
- "a versioned dependency in your spec file if necessary")
- deps.append(req)
-
- elif ' - ' in version:
- gt, lt = version.split(' - ')
- deps.append(req + ' >= ' + gt)
- deps.append(req + ' <= ' + lt)
-
- else:
- m = re.match(RE_VERSION, version)
-
- if m:
- deps += convert_dep(req, m.group(1), m.group(2))
-
- #There could be up to two versions here (e.g.">1.0 <3.1")
- if len(version) > m.end():
- m = re.match(RE_VERSION, version[m.end():])
-
- if m:
- deps += convert_dep(req, m.group(1), m.group(2))
- else:
- deps.append(req)
-
- return deps
-
-def convert_dep(req, operator, version):
- """Converts one of the two possibly listed versions into an RPM dependency"""
-
- deps = []
-
- #any version will do
- if not version or version == '*':
- deps.append(req)
-
- #any prefix but ~ makes things dead simple
- elif operator in ['>', '<', '<=', '>=', '=']:
- deps.append(' '.join([req, operator, version]))
-
- #oh boy, here we go...
- else:
- #split the dotted portions into a list (handling trailing dots properly)
- parts = [part if part else 'x' for part in version.split('.')]
- parts = [int(part) if part != 'x' and not '-' in part
- else part for part in parts]
-
- # 1 or 1.x or 1.x.x or ~1
- if len(parts) == 1 or parts[1] == 'x':
- if parts[0] != 0:
- deps.append('{0} >= {1}'.format(req, parts[0]))
- deps.append('{0} < {1}'.format(req, parts[0]+1))
-
- # 1.2.3 or 1.2.3-4 or 1.2.x or ~1.2.3 or 1.2
- elif len(parts) == 3 or operator != '~':
- # 1.2.x or 1.2
- if len(parts) == 2 or parts[2] == 'x':
- deps.append('{0} >= {1}.{2}'.format(req, parts[0], parts[1]))
- deps.append('{0} < {1}.{2}'.format(req, parts[0], parts[1]+1))
- # ~1.2.3
- elif operator == '~':
- deps.append('{0} >= {1}'.format(req, version))
- deps.append('{0} < {1}.{2}'.format(req, parts[0], parts[1]+1))
- # 1.2.3 or 1.2.3-4
- else:
- deps.append('{0} = {1}'.format(req, version))
-
- # ~1.2
- else:
- deps.append('{0} >= {1}'.format(req, version))
- deps.append('{0} < {1}'.format(req, parts[0]+1))
-
- return deps
-
-if __name__ == '__main__':
- main()
diff --git a/nodejs.spec b/nodejs.spec
index 773bc5c..885ecb9 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -15,14 +15,10 @@ ExclusiveArch: %{ix86} x86_64 %{arm}
Source0: node-v%{version}-stripped.tar.gz
Source100: %{name}-tarball.sh
-Source1: macros.nodejs
-Source2: nodejs.attr
-Source3: nodejs.prov
-Source4: nodejs.req
-Source5: nodejs-symlink-deps
-Source6: nodejs-fixdep
+# The native module Requires generator remains in the nodejs SRPM, so it knows
+# the nodejs and v8 versions. The remainder has migrated to the
+# nodejs-packaging SRPM.
Source7: nodejs_native.attr
-Source8: multiver_modules
# Disable running gyp on bundled deps we don't use
Patch1: nodejs-disable-gyp-deps.patch
@@ -83,16 +79,6 @@ BuildArch: noarch
%description docs
The API documentation for the Node.js JavaScript runtime.
-%package packaging
-Summary: RPM macros and utilities for Node.js packaging
-Group: Development/Tools
-BuildArch: noarch
-Requires: %{name} = %{version}-%{release}
-
-%description packaging
-This package contains RPM macros and other utilities useful for packaging
-Node.js modules and applications in RPM-based distributions.
-
%prep
%setup -q -n node-v%{version}
@@ -135,18 +121,9 @@ install -Dpm0755 out/Debug/node %{buildroot}/%{_bindir}/node_g
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
-# install rpm magic
-install -Dpm0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/rpm/macros.nodejs
-install -Dpm0644 %{SOURCE2} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs.attr
-install -pm0755 %{SOURCE3} %{buildroot}%{_rpmconfigdir}/nodejs.prov
-install -pm0755 %{SOURCE4} %{buildroot}%{_rpmconfigdir}/nodejs.req
-install -pm0755 %{SOURCE5} %{buildroot}%{_rpmconfigdir}/nodejs-symlink-deps
-install -pm0755 %{SOURCE6} %{buildroot}%{_rpmconfigdir}/nodejs-fixdep
-install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native.attr
-install -Dpm0644 %{SOURCE8} %{buildroot}%{_datadir}/node/multiver_modules
-
# ensure Requires are added to every native module that match the Provides from
# the nodejs build in the buildroot
+install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native.attr
cat << EOF > %{buildroot}%{_rpmconfigdir}/nodejs_native.req
#!/bin/sh
echo 'nodejs(abi) = %nodejs_abi'
@@ -176,6 +153,8 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_mandir}/man1/node.*
%dir %{_prefix}/lib/node_modules
%dir %{_datadir}/node
+%{_rpmconfigdir}/fileattrs/nodejs_native.attr
+%{_rpmconfigdir}/nodejs_native.req
%files devel
%{_bindir}/node_g
@@ -185,16 +164,11 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%files docs
%{_defaultdocdir}/%{name}-docs-%{version}
-%files packaging
-%{_sysconfdir}/rpm/macros.nodejs
-%{_rpmconfigdir}/fileattrs/nodejs*.attr
-%{_rpmconfigdir}/nodejs*
-%{_datadir}/node/multiver_modules
-
%changelog
* Wed Jul 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.13-1
- new upstream release 0.10.13
http://blog.nodejs.org/2013/07/09/node-v0-10-13-stable/
+- remove RPM macros, etc. now that they've migrated to nodejs-packaging
* Wed Jun 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.12-1
- new upstream release 0.10.12
commit c10bc717a235267a50b0176297182aaba7be5f09
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jul 10 02:56:13 2013 -0700
new upstream release 0.10.13
http://blog.nodejs.org/2013/07/09/node-v0-10-13-stable/
diff --git a/.gitignore b/.gitignore
index 1822b20..678af5f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,3 +12,4 @@
/node-v0.10.8-stripped.tar.gz
/node-v0.10.9-stripped.tar.gz
/node-v0.10.12-stripped.tar.gz
+/node-v0.10.13-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 48833d0..773bc5c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.12
+Version: 0.10.13
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -192,6 +192,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_datadir}/node/multiver_modules
%changelog
+* Wed Jul 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.13-1
+- new upstream release 0.10.13
+
http://blog.nodejs.org/2013/07/09/node-v0-10-13-stable/
+
* Wed Jun 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.12-1
- new upstream release 0.10.12
http://blog.nodejs.org/2013/06/18/node-v0-10-12-stable/
diff --git a/sources b/sources
index 82a2e89..15661c1 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-367784ab0d90ae6fc7311ac354aa2cfd node-v0.10.12-stripped.tar.gz
+3c856815ac6f879f1c956e216668aa14 node-v0.10.13-stripped.tar.gz
commit b751ee7a547b5de8b54768510dfd45b6616c43cc
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jun 18 20:08:09 2013 -0700
copy mutiple versioned packages implementation from nodejs-packaging
diff --git a/multiver_modules b/multiver_modules
new file mode 100644
index 0000000..29857b1
--- /dev/null
+++ b/multiver_modules
@@ -0,0 +1,2 @@
+uglify-js
+inherits
\ No newline at end of file
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
index f7a872e..5bcb885 100755
--- a/nodejs-symlink-deps
+++ b/nodejs-symlink-deps
@@ -30,6 +30,9 @@ import sys
#the %nodejs_symlink_deps macro passes %nodejs_sitelib as the first argument
sitelib = sys.argv[1]
+#read in the list of mutiple-versioned packages
+mvpkgs = open('/usr/share/node/multiver_modules').read().split('\n')
+
if '--check' in sys.argv:
check = True
modules = [os.getcwd()]
@@ -52,15 +55,23 @@ for path in modules:
os.chdir('node_modules')
if 'dependencies' in md:
- for dep in md['dependencies'].iterkeys():
- target = os.path.join(sitelib, dep)
-
+ for dep, ver in md['dependencies'].iteritems():
+ if dep in mvpkgs:
+ depver = ver.lstrip('~').split('.')[0]
+ target = os.path.join(sitelib, '{0}@{1}'.format(dep, depver))
+ else:
+ target = os.path.join(sitelib, dep)
+
if not check or os.path.exists(target):
os.symlink(target, dep)
if check and '--no-devdeps' not in sys.argv and 'devDependencies' in md:
- for dep in md['devDependencies']:
- target = os.path.join(sitelib, dep)
-
+ for dep, ver in md['devDependencies'].iteritems():
+ if dep in mvpkgs:
+ depver = ver.lstrip('~').split('.')[0]
+ target = os.path.join(sitelib, '{0}@{1}'.format(dep, depver))
+ else:
+ target = os.path.join(sitelib, dep)
+
if os.path.exists(target):
os.symlink(target, dep)
diff --git a/nodejs.spec b/nodejs.spec
index cbb1a6b..48833d0 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -22,6 +22,7 @@ Source4: nodejs.req
Source5: nodejs-symlink-deps
Source6: nodejs-fixdep
Source7: nodejs_native.attr
+Source8: multiver_modules
# Disable running gyp on bundled deps we don't use
Patch1: nodejs-disable-gyp-deps.patch
@@ -142,7 +143,7 @@ install -pm0755 %{SOURCE4} %{buildroot}%{_rpmconfigdir}/nodejs.req
install -pm0755 %{SOURCE5} %{buildroot}%{_rpmconfigdir}/nodejs-symlink-deps
install -pm0755 %{SOURCE6} %{buildroot}%{_rpmconfigdir}/nodejs-fixdep
install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native.attr
-
+install -Dpm0644 %{SOURCE8} %{buildroot}%{_datadir}/node/multiver_modules
# ensure Requires are added to every native module that match the Provides from
# the nodejs build in the buildroot
@@ -174,11 +175,12 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_bindir}/node
%{_mandir}/man1/node.*
%dir %{_prefix}/lib/node_modules
+%dir %{_datadir}/node
%files devel
%{_bindir}/node_g
%{_includedir}/node
-%{_datadir}/node
+%{_datadir}/node/common.gypi
%files docs
%{_defaultdocdir}/%{name}-docs-%{version}
@@ -187,6 +189,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_sysconfdir}/rpm/macros.nodejs
%{_rpmconfigdir}/fileattrs/nodejs*.attr
%{_rpmconfigdir}/nodejs*
+%{_datadir}/node/multiver_modules
%changelog
* Wed Jun 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.12-1
@@ -194,6 +197,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
http://blog.nodejs.org/2013/06/18/node-v0-10-12-stable/
- split off a -packaging subpackage with RPM macros, etc.
- build -docs as noarch
+- copy mutiple version logic from nodejs-packaging SRPM for now
* Fri May 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.9-1
- new upstream release 0.10.9
commit 689af2fd683b8089ab84e2b37327a884b0c4690e
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jun 18 20:06:46 2013 -0700
build docs as noarch
sorry for not noticing this before
diff --git a/nodejs.spec b/nodejs.spec
index a41f773..cbb1a6b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -77,6 +77,7 @@ Development headers for the Node.js JavaScript runtime.
%package docs
Summary: Node.js API documentation
Group: Documentation
+BuildArch: noarch
%description docs
The API documentation for the Node.js JavaScript runtime.
@@ -192,6 +193,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
- new upstream release 0.10.12
http://blog.nodejs.org/2013/06/18/node-v0-10-12-stable/
- split off a -packaging subpackage with RPM macros, etc.
+- build -docs as noarch
* Fri May 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.9-1
- new upstream release 0.10.9
commit d46eff9f818d2efe8d936bd78cd74c302176f2c1
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jun 18 20:05:21 2013 -0700
split off a -packaging subpackage with RPM macros, etc.
This way nodejs-packaging can be approved and imported without
forcing a nodejs update at the same time.
diff --git a/nodejs.spec b/nodejs.spec
index 967e76f..a41f773 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -69,6 +69,7 @@ Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name} == %{version}-%{release}
Requires: libuv-devel http-parser-devel openssl-devel c-ares-devel zlib-devel
+Requires: nodejs-packaging
%description devel
Development headers for the Node.js JavaScript runtime.
@@ -80,6 +81,17 @@ Group: Documentation
%description docs
The API documentation for the Node.js JavaScript runtime.
+%package packaging
+Summary: RPM macros and utilities for Node.js packaging
+Group: Development/Tools
+BuildArch: noarch
+Requires: %{name} = %{version}-%{release}
+
+%description packaging
+This package contains RPM macros and other utilities useful for packaging
+Node.js modules and applications in RPM-based distributions.
+
+
%prep
%setup -q -n node-v%{version}
%patch1 -p0
@@ -166,17 +178,20 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_bindir}/node_g
%{_includedir}/node
%{_datadir}/node
-%{_sysconfdir}/rpm/macros.nodejs
-%{_rpmconfigdir}/fileattrs/nodejs*.attr
-%{_rpmconfigdir}/nodejs*
%files docs
%{_defaultdocdir}/%{name}-docs-%{version}
+%files packaging
+%{_sysconfdir}/rpm/macros.nodejs
+%{_rpmconfigdir}/fileattrs/nodejs*.attr
+%{_rpmconfigdir}/nodejs*
+
%changelog
* Wed Jun 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.12-1
- new upstream release 0.10.12
http://blog.nodejs.org/2013/06/18/node-v0-10-12-stable/
+- split off a -packaging subpackage with RPM macros, etc.
* Fri May 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.9-1
- new upstream release 0.10.9
commit 62a5b1000ebbd6b06c58d5fb781be6408cd03253
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jun 18 19:49:37 2013 -0700
new upstream release 0.10.12
http://blog.nodejs.org/2013/06/18/node-v0-10-12-stable/
diff --git a/.gitignore b/.gitignore
index ad42f26..1822b20 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,3 +11,4 @@
/node-v0.10.7-stripped.tar.gz
/node-v0.10.8-stripped.tar.gz
/node-v0.10.9-stripped.tar.gz
+/node-v0.10.12-stripped.tar.gz
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
index e8d3cdf..e7e9613 100755
--- a/nodejs-tarball.sh
+++ b/nodejs-tarball.sh
@@ -1,7 +1,7 @@
#!/bin/sh
version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
-#wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
+wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
tar -zxf node-v${version}.tar.gz
rm -rf node-v${version}/deps/openssl
tar -zcf node-v${version}-stripped.tar.gz node-v${version}
diff --git a/nodejs.spec b/nodejs.spec
index 9d1b03c..967e76f 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.9
+Version: 0.10.12
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -174,6 +174,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed Jun 19 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.12-1
+- new upstream release 0.10.12
+
http://blog.nodejs.org/2013/06/18/node-v0-10-12-stable/
+
* Fri May 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.9-1
- new upstream release 0.10.9
http://blog.nodejs.org/2013/05/30/node-v0-10-9-stable/
diff --git a/sources b/sources
index 55a2120..82a2e89 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-d93150d9cc278d2db6f7ab0f02eeb481 node-v0.10.9-stripped.tar.gz
+367784ab0d90ae6fc7311ac354aa2cfd node-v0.10.12-stripped.tar.gz
commit 30653ec3f2923ddc4f97a07f2dd359564866c0ce
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu May 30 19:52:24 2013 -0700
fill in missing changelog entries
diff --git a/nodejs.spec b/nodejs.spec
index a1fddb2..9d1b03c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -180,9 +180,11 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.8-1
- new upstream release 0.10.8
+
http://blog.nodejs.org/2013/05/24/node-v0-10-8-stable/
* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.7-1
- new upstream release 0.10.7
+
http://blog.nodejs.org/2013/05/17/node-v0-10-7-stable/
- strip openssl from the tarball; it contains prohibited code (RHBZ#967736)
- patch Makefile so we can just remove all bundled deps completely
commit aab18e605662f3c37d74445d7718b88df67b39e5
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu May 30 19:51:42 2013 -0700
new upstream release 0.10.9
http://blog.nodejs.org/2013/05/30/node-v0-10-9-stable/
diff --git a/.gitignore b/.gitignore
index 00b6f2f..ad42f26 100644
--- a/.gitignore
+++ b/.gitignore
@@ -10,3 +10,4 @@
/node-v0.10.6.tar.gz
/node-v0.10.7-stripped.tar.gz
/node-v0.10.8-stripped.tar.gz
+/node-v0.10.9-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index cea9f26..a1fddb2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.8
+Version: 0.10.9
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -174,6 +174,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Fri May 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.9-1
+- new upstream release 0.10.9
+
http://blog.nodejs.org/2013/05/30/node-v0-10-9-stable/
+
* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.8-1
- new upstream release 0.10.8
diff --git a/sources b/sources
index 210aeea..55a2120 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-d9a0bbc97eff282f3676fc770e0f84e8 node-v0.10.8-stripped.tar.gz
+d93150d9cc278d2db6f7ab0f02eeb481 node-v0.10.9-stripped.tar.gz
commit f7500b9771b9d3d221b931ccc7c30856dc7dc394
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue May 28 20:44:29 2013 -0700
new upstream release 0.10.8
diff --git a/.gitignore b/.gitignore
index 1033a3f..00b6f2f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -9,3 +9,4 @@
/node-v0.10.5.tar.gz
/node-v0.10.6.tar.gz
/node-v0.10.7-stripped.tar.gz
+/node-v0.10.8-stripped.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index fd757dc..cea9f26 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.7
+Version: 0.10.8
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -174,6 +174,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.8-1
+- new upstream release 0.10.8
+
* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.7-1
- new upstream release 0.10.7
- strip openssl from the tarball; it contains prohibited code (RHBZ#967736)
diff --git a/sources b/sources
index e27ebcf..210aeea 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-423b68616b60db6d0277bfb7195917a7 node-v0.10.7-stripped.tar.gz
+d9a0bbc97eff282f3676fc770e0f84e8 node-v0.10.8-stripped.tar.gz
commit 07d9fe983d958945296ea612d64746bfd635013d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue May 28 20:23:27 2013 -0700
add the tarball stripping script
diff --git a/nodejs-tarball.sh b/nodejs-tarball.sh
new file mode 100755
index 0000000..e8d3cdf
--- /dev/null
+++ b/nodejs-tarball.sh
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+version=$(rpm -q --specfile --qf='%{version}\n' nodejs.spec | head -n1)
+#wget
http://nodejs.org/dist/v$%7Bversion%7D/node-v$%7Bversion%7D.tar.gz
+tar -zxf node-v${version}.tar.gz
+rm -rf node-v${version}/deps/openssl
+tar -zcf node-v${version}-stripped.tar.gz node-v${version}
commit 9e89193903ac2693050f627bec497ed4c3d01758
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue May 28 20:17:30 2013 -0700
add the new stripped tarball to sources
sorry for the extra commit, `fedpkg new-sources` doesn't work with
`git rebase --interactive` :-(
diff --git a/.gitignore b/.gitignore
index 5e2a336..1033a3f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@
/node-v0.10.4.tar.gz
/node-v0.10.5.tar.gz
/node-v0.10.6.tar.gz
+/node-v0.10.7-stripped.tar.gz
diff --git a/sources b/sources
index 0a17fbd..e27ebcf 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-ea1e256b62fe8deb21cdf24efe0da0db node-v0.10.6.tar.gz
+423b68616b60db6d0277bfb7195917a7 node-v0.10.7-stripped.tar.gz
commit 3a54e91338923da84afe0575cb133c1dd9dc8d14
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue May 28 20:12:55 2013 -0700
patch Makefile so we can just remove all bundled deps completely
diff --git a/nodejs-disable-gyp-deps.patch b/nodejs-disable-gyp-deps.patch
new file mode 100644
index 0000000..5be37d6
--- /dev/null
+++ b/nodejs-disable-gyp-deps.patch
@@ -0,0 +1,11 @@
+--- Makefile~ 2013-05-17 13:59:10.000000000 -0700
++++ Makefile 2013-05-28 20:09:57.199250068 -0700
+@@ -43,7 +43,7 @@
+ ln -fs out/Debug/node $@
+ endif
+
+-out/Makefile: common.gypi deps/uv/uv.gyp deps/http_parser/http_parser.gyp deps/zlib/zlib.gyp deps/v8/build/common.gypi deps/v8/tools/gyp/v8.gyp node.gyp config.gypi
++out/Makefile: common.gypi node.gyp config.gypi
+ ifeq ($(USE_NINJA),1)
+ touch out/Makefile
+ $(PYTHON) tools/gyp_node -f ninja
diff --git a/nodejs.spec b/nodejs.spec
index e1a2a9a..fd757dc 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -23,6 +23,9 @@ Source5: nodejs-symlink-deps
Source6: nodejs-fixdep
Source7: nodejs_native.attr
+# Disable running gyp on bundled deps we don't use
+Patch1: nodejs-disable-gyp-deps.patch
+
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 1:3.14.5.7
@@ -79,28 +82,9 @@ The API documentation for the Node.js JavaScript runtime.
%prep
%setup -q -n node-v%{version}
+%patch1 -p0
-# Make sure nothing gets included from bundled deps:
-# We only delete the source and header files, because
-# the remaining build scripts are still used.
-
-find deps/cares -name "*.c" -exec rm -f {} ;
-find deps/cares -name "*.h" -exec rm -f {} ;
-
-find deps/npm -name "*.c" -exec rm -f {} ;
-find deps/npm -name "*.h" -exec rm -f {} ;
-
-find deps/zlib -name "*.c" -exec rm -f {} ;
-find deps/zlib -name "*.h" -exec rm -f {} ;
-
-find deps/v8 -name "*.c" -exec rm -f {} ;
-find deps/v8 -name "*.h" -exec rm -f {} ;
-
-find deps/http_parser -name "*.c" -exec rm -f {} ;
-find deps/http_parser -name "*.h" -exec rm -f {} ;
-
-find deps/uv -name "*.c" -exec rm -f {} ;
-find deps/uv -name "*.h" -exec rm -f {} ;
+rm -rf deps
%build
# build with debugging symbols and add defines from libuv (#892601)
@@ -193,6 +177,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.7-1
- new upstream release 0.10.7
- strip openssl from the tarball; it contains prohibited code (RHBZ#967736)
+- patch Makefile so we can just remove all bundled deps completely
* Wed May 15 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.6-1
- new upstream release 0.10.6
commit 44e85aef7e5f00728f10e287809b01d41e736fa4
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue May 28 20:08:10 2013 -0700
strip openssl from the tarball; it contains prohibited code (RHBZ#967736)
diff --git a/nodejs.spec b/nodejs.spec
index 8d5a42a..e1a2a9a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -9,7 +9,12 @@ URL:
http://nodejs.org/
# Exclusive archs must match v8
ExclusiveArch: %{ix86} x86_64 %{arm}
-Source0:
http://nodejs.org/dist/v%%7Bversion%7D/node-v%%7Bversion%7D.tar.gz
+# nodejs bundles openssl, but we use the system version in Fedora
+# because openssl contains prohibited code, we remove openssl completely from
+# the tarball, using the script in Source100
+Source0: node-v%{version}-stripped.tar.gz
+Source100: %{name}-tarball.sh
+
Source1: macros.nodejs
Source2: nodejs.attr
Source3: nodejs.prov
@@ -94,9 +99,6 @@ find deps/v8 -name "*.h" -exec rm -f {} ;
find deps/http_parser -name "*.c" -exec rm -f {} ;
find deps/http_parser -name "*.h" -exec rm -f {} ;
-find deps/openssl -name "*.c" -exec rm -f {} ;
-find deps/openssl -name "*.h" -exec rm -f {} ;
-
find deps/uv -name "*.c" -exec rm -f {} ;
find deps/uv -name "*.h" -exec rm -f {} ;
@@ -190,6 +192,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%changelog
* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.7-1
- new upstream release 0.10.7
+- strip openssl from the tarball; it contains prohibited code (RHBZ#967736)
* Wed May 15 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.6-1
- new upstream release 0.10.6
commit 0c69a9595adc8c2bafaab96210ebc041a962cdf1
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue May 28 19:55:25 2013 -0700
new upstream release 0.10.7
diff --git a/nodejs.spec b/nodejs.spec
index b2dc452..8d5a42a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.6
+Version: 0.10.7
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -188,6 +188,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed May 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.7-1
+- new upstream release 0.10.7
+
* Wed May 15 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.6-1
- new upstream release 0.10.6
http://blog.nodejs.org/2013/05/14/node-v0-10-6-stable/
commit 7db6e8f74bde2910183ea0c33bff933778aed028
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed May 15 12:28:06 2013 -0700
new upstream release 0.10.6
http://blog.nodejs.org/2013/05/14/node-v0-10-6-stable/
diff --git a/.gitignore b/.gitignore
index 1f19bdd..5e2a336 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,3 +7,4 @@
/node-v0.10.3.tar.gz
/node-v0.10.4.tar.gz
/node-v0.10.5.tar.gz
+/node-v0.10.6.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 255b7cb..b2dc452 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
-Version: 0.10.5
-Release: 3%{?dist}
+Version: 0.10.6
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -188,6 +188,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed May 15 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.6-1
+- new upstream release 0.10.6
+
http://blog.nodejs.org/2013/05/14/node-v0-10-6-stable/
+
* Mon May 06 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.5-3
- nodejs-fixdep: work properly when a package has no dependencies
diff --git a/sources b/sources
index 48d3be0..0a17fbd 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-f6b1c363f75185d57c8486cd63c42e14 node-v0.10.5.tar.gz
+ea1e256b62fe8deb21cdf24efe0da0db node-v0.10.6.tar.gz
commit d0c6d3a9e244d1c7199907dabf7089d5c0089480
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Mon May 6 14:34:09 2013 -0700
nodejs-fixdep: work properly when a package has no dependencies
diff --git a/nodejs-fixdep b/nodejs-fixdep
index 5f1ed40..44e79f4 100755
--- a/nodejs-fixdep
+++ b/nodejs-fixdep
@@ -32,7 +32,7 @@ if not os.path.exists('package.json~'):
md = json.load(open('package.json'))
-if not md['dependencies']:
+if 'dependencies' not in md:
md['dependencies'] = {}
if sys.argv[1] == '-r':
diff --git a/nodejs.spec b/nodejs.spec
index a1e4995..255b7cb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.5
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -188,6 +188,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Mon May 06 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.5-3
+- nodejs-fixdep: work properly when a package has no dependencies
+
* Mon Apr 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.5-2
- nodejs-symlink-deps: make it work when --check is used and just
devDependencies exist
commit e0f6b9832c326b7773704d1d984fe32224ba74a8
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Mon Apr 29 04:47:26 2013 -0700
nodejs-symlink-deps: make it work when --check is used and just
devDependencies exist
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
index 44b0348..f7a872e 100755
--- a/nodejs-symlink-deps
+++ b/nodejs-symlink-deps
@@ -42,7 +42,7 @@ for path in modules:
os.chdir(path)
md = json.load(open('package.json'))
- if 'dependencies' in md:
+ if 'dependencies' in md or (check and 'devDependencies' in md):
try:
os.mkdir('node_modules')
except OSError:
@@ -51,11 +51,12 @@ for path in modules:
os.chdir('node_modules')
- for dep in md['dependencies'].iterkeys():
- target = os.path.join(sitelib, dep)
-
- if not check or os.path.exists(target):
- os.symlink(target, dep)
+ if 'dependencies' in md:
+ for dep in md['dependencies'].iterkeys():
+ target = os.path.join(sitelib, dep)
+
+ if not check or os.path.exists(target):
+ os.symlink(target, dep)
if check and '--no-devdeps' not in sys.argv and 'devDependencies' in md:
for dep in md['devDependencies']:
diff --git a/nodejs.spec b/nodejs.spec
index eefe21b..a1e4995 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.5
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -188,6 +188,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Mon Apr 29 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.5-2
+- nodejs-symlink-deps: make it work when --check is used and just
+ devDependencies exist
+
* Wed Apr 24 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.5-1
- new upstream release 0.10.5
http://blog.nodejs.org/2013/04/23/node-v0-10-5-stable/
commit 8075b2b362d5037fefc4e14e2e6f1b53fb6279f7
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Apr 24 08:46:51 2013 -0700
new upstream release 0.10.5
http://blog.nodejs.org/2013/04/23/node-v0-10-5-stable/
diff --git a/.gitignore b/.gitignore
index 7b00f37..1f19bdd 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@
/node-v0.10.2.tar.gz
/node-v0.10.3.tar.gz
/node-v0.10.4.tar.gz
+/node-v0.10.5.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 2062852..eefe21b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.4
+Version: 0.10.5
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -188,6 +188,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed Apr 24 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.5-1
+- new upstream release 0.10.5
+
http://blog.nodejs.org/2013/04/23/node-v0-10-5-stable/
+
* Mon Apr 15 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.4-1
- new upstream release 0.10.4
http://blog.nodejs.org/2013/04/11/node-v0-10-4-stable/
diff --git a/sources b/sources
index 92f3911..48d3be0 100644
--- a/sources
+++ b/sources
@@ -1,2 +1 @@
-4daca92618515708a4631e98a8e8c779 node-v0.10.3.tar.gz
-a4554450864af89c4420c54349b62295 node-v0.10.4.tar.gz
+f6b1c363f75185d57c8486cd63c42e14 node-v0.10.5.tar.gz
commit 3c3551aba674165cc1c3a0d948e43a15347f2de4
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sun Apr 14 18:21:43 2013 -0700
add no-op macro to provide spec compatibility with EPEL
diff --git a/macros.nodejs b/macros.nodejs
index 6fd051c..468a30d 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -28,3 +28,6 @@
%nodejs_default_filter %{expand: \
%global __provides_exclude_from ^%{nodejs_sitearch}/.*\.node$
}
+
+# no-op macro to allow spec compatibility with EPEL
+%nodejs_find_provides_and_requires %{nil}
diff --git a/nodejs.spec b/nodejs.spec
index b8c2ef3..2062852 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -191,6 +191,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Mon Apr 15 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.4-1
- new upstream release 0.10.4
http://blog.nodejs.org/2013/04/11/node-v0-10-4-stable/
+- add no-op macro to permit spec compatibility with EPEL
* Thu Apr 04 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.3-2
- nodejs-symlink-deps: symlink unconditionally in the buildroot
commit 727d8ef2fd0781d914d96c7010305d750bc53e65
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sun Apr 14 18:19:38 2013 -0700
new upstream release 0.10.4
http://blog.nodejs.org/2013/04/11/node-v0-10-4-stable/
diff --git a/.gitignore b/.gitignore
index a9ac8ed..7b00f37 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,3 +5,4 @@
/node-v0.10.1.tar.gz
/node-v0.10.2.tar.gz
/node-v0.10.3.tar.gz
+/node-v0.10.4.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 50f3eeb..b8c2ef3 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
-Version: 0.10.3
-Release: 2%{?dist}
+Version: 0.10.4
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -188,6 +188,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Mon Apr 15 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.4-1
+- new upstream release 0.10.4
+
http://blog.nodejs.org/2013/04/11/node-v0-10-4-stable/
+
* Thu Apr 04 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.3-2
- nodejs-symlink-deps: symlink unconditionally in the buildroot
diff --git a/sources b/sources
index b274326..92f3911 100644
--- a/sources
+++ b/sources
@@ -1 +1,2 @@
4daca92618515708a4631e98a8e8c779 node-v0.10.3.tar.gz
+a4554450864af89c4420c54349b62295 node-v0.10.4.tar.gz
commit 63f157c85c3e2a8a70be2debd6ac66b621c15a92
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Apr 9 07:44:59 2013 -0400
Remove extra source tarball entries
No reason to force packagers to download anything but the one that
the spec file refers to.
diff --git a/sources b/sources
index f2698bb..b274326 100644
--- a/sources
+++ b/sources
@@ -1,4 +1 @@
-23df2c1aeb9dcf17284047f2530b0525 node-v0.10.0.tar.gz
-95bbb44ac6d753f923a7919c386f6264 node-v0.10.1.tar.gz
-d447905b919faacd8a5d74127702bec2 node-v0.10.2.tar.gz
4daca92618515708a4631e98a8e8c779 node-v0.10.3.tar.gz
commit f8a8f5bf6843ef1ecd8682de16000fcc014f9978
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Apr 3 19:34:39 2013 -0700
nodejs-symlink-deps: symlink unconditionally in the buildroot
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
index 258607c..44b0348 100755
--- a/nodejs-symlink-deps
+++ b/nodejs-symlink-deps
@@ -54,7 +54,7 @@ for path in modules:
for dep in md['dependencies'].iterkeys():
target = os.path.join(sitelib, dep)
- if os.path.exists(target):
+ if not check or os.path.exists(target):
os.symlink(target, dep)
if check and '--no-devdeps' not in sys.argv and 'devDependencies' in md:
diff --git a/nodejs.spec b/nodejs.spec
index 5725756..50f3eeb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.3
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -188,6 +188,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Thu Apr 04 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.3-2
+- nodejs-symlink-deps: symlink unconditionally in the buildroot
+
* Wed Apr 03 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.3-1
- new upstream release 0.10.3
http://blog.nodejs.org/2013/04/03/node-v0-10-3-stable/
commit d73ff2e5c0f1f5f429bb32ed4d7da9c152063ec7
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Apr 3 14:38:14 2013 -0700
update documentation in macros file
diff --git a/macros.nodejs b/macros.nodejs
index b252da7..6fd051c 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -13,7 +13,8 @@
# symlink dependencies so `npm link` works
# this should be run in every module's %%install section
-# pass the module name if the npm metadata is incorrect (e.g. multiple versions)
+# pass --check to work in the current directory instead of the buildroot
+# pass --no-devdeps to ignore devDependencies when --check is used
%nodejs_symlink_deps %{_rpmconfigdir}/nodejs-symlink-deps %{nodejs_sitelib}
# patch package.json to fix a dependency
commit af5d69509025f0fd39e86d418a33498a066033ba
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Apr 3 14:32:56 2013 -0700
nodejs-symlink-deps: symlink devDependencies when --check is used
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
index 6259c9b..258607c 100755
--- a/nodejs-symlink-deps
+++ b/nodejs-symlink-deps
@@ -56,3 +56,10 @@ for path in modules:
if os.path.exists(target):
os.symlink(target, dep)
+
+ if check and '--no-devdeps' not in sys.argv and 'devDependencies' in md:
+ for dep in md['devDependencies']:
+ target = os.path.join(sitelib, dep)
+
+ if os.path.exists(target):
+ os.symlink(target, dep)
diff --git a/nodejs.spec b/nodejs.spec
index bed8157..5725756 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -192,6 +192,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
- new upstream release 0.10.3
http://blog.nodejs.org/2013/04/03/node-v0-10-3-stable/
- nodejs-symlink-deps: only create symlink if target exists
+- nodejs-symlink-deps: symlink devDependencies when --check is used
* Sun Mar 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.2-1
- new upstream release 0.10.2
commit 5a2667dfb1f927ccf1dcb233d95092c85bbbfd29
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Apr 3 14:05:10 2013 -0700
nodejs-symlink-deps: only create symlink if target exists
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
index e53e8e5..6259c9b 100755
--- a/nodejs-symlink-deps
+++ b/nodejs-symlink-deps
@@ -52,4 +52,7 @@ for path in modules:
os.chdir('node_modules')
for dep in md['dependencies'].iterkeys():
- os.symlink(os.path.join(sitelib, dep), dep)
+ target = os.path.join(sitelib, dep)
+
+ if os.path.exists(target):
+ os.symlink(target, dep)
diff --git a/nodejs.spec b/nodejs.spec
index 7234424..bed8157 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -191,6 +191,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Wed Apr 03 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.3-1
- new upstream release 0.10.3
http://blog.nodejs.org/2013/04/03/node-v0-10-3-stable/
+- nodejs-symlink-deps: only create symlink if target exists
* Sun Mar 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.2-1
- new upstream release 0.10.2
commit ab6e60ba980e3cff7f12ea58327f617d69d46452
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Apr 3 12:40:15 2013 -0700
new upstream release 0.10.3
http://blog.nodejs.org/2013/04/03/node-v0-10-3-stable/
diff --git a/.gitignore b/.gitignore
index dd09a41..a9ac8ed 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,3 +4,4 @@
/node-v0.10.0.tar.gz
/node-v0.10.1.tar.gz
/node-v0.10.2.tar.gz
+/node-v0.10.3.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index dc76fc1..7234424 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.2
+Version: 0.10.3
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -188,6 +188,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed Apr 03 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.3-1
+- new upstream release 0.10.3
+
http://blog.nodejs.org/2013/04/03/node-v0-10-3-stable/
+
* Sun Mar 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.2-1
- new upstream release 0.10.2
http://blog.nodejs.org/2013/03/28/node-v0-10-2-stable/
diff --git a/sources b/sources
index b7eec22..f2698bb 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,4 @@
23df2c1aeb9dcf17284047f2530b0525 node-v0.10.0.tar.gz
95bbb44ac6d753f923a7919c386f6264 node-v0.10.1.tar.gz
d447905b919faacd8a5d74127702bec2 node-v0.10.2.tar.gz
+4daca92618515708a4631e98a8e8c779 node-v0.10.3.tar.gz
commit b22ee6fcc9fb0c4f48b777fb0f67cf46531e6678
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sun Mar 31 21:26:43 2013 -0700
%nodejs_symlink_deps improvements
-support installing multiple modules from the same SRPM
-drop name argument rendered useless by the above
-support a --check argument that works in the current working directory
instead of $RPM_BUILD_ROOT
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
index f5636bb..e53e8e5 100755
--- a/nodejs-symlink-deps
+++ b/nodejs-symlink-deps
@@ -3,7 +3,7 @@
"""Symlink a node module's dependencies into the node_modules directory so users
can `npm link` RPM-installed modules into their personal projects."""
-# Copyright 2012 T.C. Hollingsworth
tchollingsworth@gmail.com
+# Copyright 2012, 2013 T.C. Hollingsworth
tchollingsworth@gmail.com
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to
@@ -30,23 +30,26 @@ import sys
#the %nodejs_symlink_deps macro passes %nodejs_sitelib as the first argument
sitelib = sys.argv[1]
-metadata = json.load(open('package.json'))
-
-if len(sys.argv) > 2:
- name = sys.argv[2]
+if '--check' in sys.argv:
+ check = True
+ modules = [os.getcwd()]
else:
- name = metadata['name']
-
-os.chdir(os.path.join(os.environ['RPM_BUILD_ROOT'], sitelib.lstrip('/'), name))
-
-if 'dependencies' in metadata:
- try:
- os.mkdir('node_modules')
- except OSError:
- sys.stderr.write('WARNING: node_modules already exists. Make sure you have ' +
- 'no bundled dependencies.\n')
-
- os.chdir('node_modules')
-
- for dep in metadata['dependencies'].iterkeys():
- os.symlink(os.path.join(sitelib, dep), dep)
+ check = False
+ br_sitelib = os.path.join(os.environ['RPM_BUILD_ROOT'], sitelib.lstrip('/'))
+ modules = [os.path.join(br_sitelib, module) for module in os.listdir(br_sitelib)]
+
+for path in modules:
+ os.chdir(path)
+ md = json.load(open('package.json'))
+
+ if 'dependencies' in md:
+ try:
+ os.mkdir('node_modules')
+ except OSError:
+ sys.stderr.write('WARNING: node_modules already exists. Make sure you have ' +
+ 'no bundled dependencies.\n')
+
+ os.chdir('node_modules')
+
+ for dep in md['dependencies'].iterkeys():
+ os.symlink(os.path.join(sitelib, dep), dep)
diff --git a/nodejs.spec b/nodejs.spec
index daf9e31..dc76fc1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -194,6 +194,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
- remove %%nodejs_arches macro since it will only be useful if it is present in
the redhat-rpm-config package
- add default filtering macro to remove unwanted Provides from native modules
+- nodejs-symlink-deps now supports multiple modules in one SRPM properly
+- nodejs-symlink-deps also now supports a --check argument that works in the
+ current working directry instead of the buildroot
* Fri Mar 22 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.1-1
- new upstream release 0.10.1
commit 7cb1934a64fbbeb7b87820df182d3ed4835c538c
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sun Mar 31 17:03:32 2013 -0700
add %nodejs_default_filter macro to remove unwanted Provides from native module shared objects
diff --git a/macros.nodejs b/macros.nodejs
index 75393a6..b252da7 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -22,3 +22,8 @@
# `%%nodejs_fixdep frobber '>1.0'` requires frobber > 1.0
# `%%nodejs_fixdep -r frobber removes the frobber dep
%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
+
+# macro to filter unwanted provides from Node.js binary native modules
+%nodejs_default_filter %{expand: \
+%global __provides_exclude_from ^%{nodejs_sitearch}/.*\.node$
+}
diff --git a/nodejs.spec b/nodejs.spec
index 0d13f5c..daf9e31 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -193,6 +193,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
http://blog.nodejs.org/2013/03/28/node-v0-10-2-stable/
- remove %%nodejs_arches macro since it will only be useful if it is present in
the redhat-rpm-config package
+- add default filtering macro to remove unwanted Provides from native modules
* Fri Mar 22 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.1-1
- new upstream release 0.10.1
commit ab33fe1ceb76df6b084118379e92c2313e87d1aa
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sun Mar 31 16:49:55 2013 -0700
remove %%nodejs_arches macro
it will only be useful if it is present in the redhat-rpm-config package
diff --git a/macros.nodejs b/macros.nodejs
index 7ce47c7..75393a6 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -22,6 +22,3 @@
# `%%nodejs_fixdep frobber '>1.0'` requires frobber > 1.0
# `%%nodejs_fixdep -r frobber removes the frobber dep
%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
-
-# ExclusiveArch listing for dependent packages
-%nodejs_arches %{ix86} x86_64 %{arm}
diff --git a/nodejs.spec b/nodejs.spec
index cd65e18..0d13f5c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -191,6 +191,8 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Sun Mar 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.2-1
- new upstream release 0.10.2
http://blog.nodejs.org/2013/03/28/node-v0-10-2-stable/
+- remove %%nodejs_arches macro since it will only be useful if it is present in
+ the redhat-rpm-config package
* Fri Mar 22 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.1-1
- new upstream release 0.10.1
commit b57b5fed596f3716db758f93f34be2a3284c748a
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sun Mar 31 16:46:53 2013 -0700
new upstream release 0.10.2
http://blog.nodejs.org/2013/03/28/node-v0-10-2-stable/
diff --git a/.gitignore b/.gitignore
index 41139a7..dd09a41 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@
/node-v0.9.5.tar.gz
/node-v0.10.0.tar.gz
/node-v0.10.1.tar.gz
+/node-v0.10.2.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 1612d4e..cd65e18 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.10.1
+Version: 0.10.2
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -188,6 +188,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Sun Mar 31 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.2-1
+- new upstream release 0.10.2
+
http://blog.nodejs.org/2013/03/28/node-v0-10-2-stable/
+
* Fri Mar 22 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.1-1
- new upstream release 0.10.1
http://blog.nodejs.org/2013/03/21/node-v0-10-1-stable/
diff --git a/sources b/sources
index 7cc8b9b..b7eec22 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,3 @@
23df2c1aeb9dcf17284047f2530b0525 node-v0.10.0.tar.gz
95bbb44ac6d753f923a7919c386f6264 node-v0.10.1.tar.gz
+d447905b919faacd8a5d74127702bec2 node-v0.10.2.tar.gz
commit 321c2077f08d25829bc1ac1377c79ef01c600c8f
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Mar 21 18:12:03 2013 -0700
new upstream release 0.10.1
http://blog.nodejs.org/2013/03/21/node-v0-10-1-stable/
diff --git a/.gitignore b/.gitignore
index 8fde8b1..41139a7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@
/node-v0.9.4.tar.gz
/node-v0.9.5.tar.gz
/node-v0.10.0.tar.gz
+/node-v0.10.1.tar.gz
diff --git a/nodejs.spec b/nodejs.spec
index 347cf57..1612d4e 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
-Version: 0.10.0
-Release: 4%{?dist}
+Version: 0.10.1
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -188,6 +188,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Fri Mar 22 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.1-1
+- new upstream release 0.10.1
+
http://blog.nodejs.org/2013/03/21/node-v0-10-1-stable/
+
* Wed Mar 20 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.0-4
- fix escaping in dependency generator regular expressions (RHBZ#923941)
diff --git a/sources b/sources
index 8cc9f57..7cc8b9b 100644
--- a/sources
+++ b/sources
@@ -1 +1,2 @@
23df2c1aeb9dcf17284047f2530b0525 node-v0.10.0.tar.gz
+95bbb44ac6d753f923a7919c386f6264 node-v0.10.1.tar.gz
commit 5c6389687c2743a7787d3333d7c13fa8fa136af0
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Mar 20 13:23:18 2013 -0700
fix escaping in dependency generator regular expressions (RHBZ#923941)
diff --git a/nodejs.attr b/nodejs.attr
index ffeb484..832a4be 100644
--- a/nodejs.attr
+++ b/nodejs.attr
@@ -1,3 +1,3 @@
%__nodejs_provides %{_rpmconfigdir}/nodejs.prov
%__nodejs_requires %{_rpmconfigdir}/nodejs.req
-%__nodejs_path ^/usr/lib.*/node_modules/.*/package.json$
+%__nodejs_path ^/usr/lib.*/node_modules/.*/package\.json$
diff --git a/nodejs.spec b/nodejs.spec
index f248c36..347cf57 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.0
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -188,6 +188,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed Mar 20 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.0-4
+- fix escaping in dependency generator regular expressions (RHBZ#923941)
+
* Wed Mar 13 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.0-3
- add virtual ABI provides for node and v8 so binary module's deps break when
binary compatibility is broken
diff --git a/nodejs_native.attr b/nodejs_native.attr
index 2082363..0527af6 100644
--- a/nodejs_native.attr
+++ b/nodejs_native.attr
@@ -1,2 +1,2 @@
%__nodejs_native_requires %{_rpmconfigdir}/nodejs_native.req
-%__nodejs_native_path ^/usr/lib.*/node_modules/.*.node$
+%__nodejs_native_path ^/usr/lib.*/node_modules/.*\.node$
commit acc9dc4070b37cfc8d148d66c8be8ec2fc0f3391
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Mar 12 18:29:17 2013 -0700
improve native module handling
- add virtual ABI provides for node and v8 so binary module's deps break when
binary compatibility is broken
- automatically add matching Requires to nodejs binary modules
- add %%nodejs_arches macro to future-proof ExcluseArch stanza in dependent
packages
diff --git a/macros.nodejs b/macros.nodejs
index 75393a6..7ce47c7 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -22,3 +22,6 @@
# `%%nodejs_fixdep frobber '>1.0'` requires frobber > 1.0
# `%%nodejs_fixdep -r frobber removes the frobber dep
%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
+
+# ExclusiveArch listing for dependent packages
+%nodejs_arches %{ix86} x86_64 %{arm}
diff --git a/nodejs.spec b/nodejs.spec
index c1fbac7..f248c36 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.0
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -16,11 +16,13 @@ Source3: nodejs.prov
Source4: nodejs.req
Source5: nodejs-symlink-deps
Source6: nodejs-fixdep
+Source7: nodejs_native.attr
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 1:3.14.5.7
%global v8_lt 1:3.15
+%global v8_abi 3.14
BuildRequires: v8-devel >= %{v8_ge}
BuildRequires: http-parser-devel >= 2.0
@@ -33,7 +35,13 @@ BuildRequires: openssl-devel >= 1:1.0.1
Requires: v8%{?isa} >= %{v8_ge}
Requires: v8%{?isa} < %{v8_lt}
-#virtual provides for automatic depedency generation
+#we need ABI virtual provides where SONAMEs aren't enough/not present so deps
+#break when binary compatibility is broken
+%global nodejs_abi 0.10
+Provides: nodejs(abi) = %{nodejs_abi}
+Provides: nodejs(v8-abi) = %{v8_abi}
+
+#this corresponds to the "engine" requirement in package.json
Provides: nodejs(engine) = %{version}
# Node.js currently has a conflict with the 'node' package in Fedora
@@ -134,6 +142,17 @@ install -pm0755 %{SOURCE3} %{buildroot}%{_rpmconfigdir}/nodejs.prov
install -pm0755 %{SOURCE4} %{buildroot}%{_rpmconfigdir}/nodejs.req
install -pm0755 %{SOURCE5} %{buildroot}%{_rpmconfigdir}/nodejs-symlink-deps
install -pm0755 %{SOURCE6} %{buildroot}%{_rpmconfigdir}/nodejs-fixdep
+install -Dpm0644 %{SOURCE7} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs_native.attr
+
+
+# ensure Requires are added to every native module that match the Provides from
+# the nodejs build in the buildroot
+cat << EOF > %{buildroot}%{_rpmconfigdir}/nodejs_native.req
+#!/bin/sh
+echo 'nodejs(abi) = %nodejs_abi'
+echo 'nodejs(v8-abi) = %v8_abi'
+EOF
+chmod 0755 %{buildroot}%{_rpmconfigdir}/nodejs_native.req
#install documentation
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
@@ -162,13 +181,20 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%{_includedir}/node
%{_datadir}/node
%{_sysconfdir}/rpm/macros.nodejs
-%{_rpmconfigdir}/fileattrs/nodejs.attr
+%{_rpmconfigdir}/fileattrs/nodejs*.attr
%{_rpmconfigdir}/nodejs*
%files docs
%{_defaultdocdir}/%{name}-docs-%{version}
%changelog
+* Wed Mar 13 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.10.0-3
+- add virtual ABI provides for node and v8 so binary module's deps break when
+ binary compatibility is broken
+- automatically add matching Requires to nodejs binary modules
+- add %%nodejs_arches macro to future-proof ExcluseArch stanza in dependent
+ packages
+
* Tue Mar 12 2013 Stephen Gallagher
sgallagh@redhat.com - 0.10.0-2
- Fix up documentation subpackage
diff --git a/nodejs_native.attr b/nodejs_native.attr
new file mode 100644
index 0000000..2082363
--- /dev/null
+++ b/nodejs_native.attr
@@ -0,0 +1,2 @@
+%__nodejs_native_requires %{_rpmconfigdir}/nodejs_native.req
+%__nodejs_native_path ^/usr/lib.*/node_modules/.*.node$
commit fa0d205a4d445afff905a57a0ccfe1fa09188bf9
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Mar 12 11:33:44 2013 -0400
Fix up documentation subpackage
diff --git a/nodejs.spec b/nodejs.spec
index dadd3c7..c1fbac7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.10.0
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -139,6 +139,7 @@ install -pm0755 %{SOURCE6} %{buildroot}%{_rpmconfigdir}/nodejs-fixdep
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
cp -pr doc/* %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
+cp -p LICENSE %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/
#install development headers
#FIXME: we probably don't really need *.h but node-gyp downloads the whole
@@ -166,9 +167,11 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%files docs
%{_defaultdocdir}/%{name}-docs-%{version}
-%doc LICENSE
%changelog
+* Tue Mar 12 2013 Stephen Gallagher
sgallagh@redhat.com - 0.10.0-2
+- Fix up documentation subpackage
+
* Mon Mar 11 2013 Stephen Gallagher
sgallagh@redhat.com - 0.10.0-1
- Update to stable 0.10.0 release
-
https://raw.github.com/joyent/node/v0.10.0/ChangeLog
commit 1d4119d71fd0fc4181469cad1c9f9491b13355fc
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Mar 11 16:32:50 2013 -0400
Update sources
diff --git a/.gitignore b/.gitignore
index 0589717..8fde8b1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
/node-v0.9.3.tar.gz
/node-v0.9.4.tar.gz
/node-v0.9.5.tar.gz
+/node-v0.10.0.tar.gz
diff --git a/sources b/sources
index 07b2403..8cc9f57 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-50f1c8bc2390b47e7f3b8a5d59c25909 node-v0.9.5.tar.gz
+23df2c1aeb9dcf17284047f2530b0525 node-v0.10.0.tar.gz
commit a994bf6be9accfd142f692a3ac0d80317a4b6ae9
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Mar 11 16:32:15 2013 -0400
Include the updated source files
commit ff8ae92928b0baa6b2e8fd65bb1b950b4be623ad
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Mon Mar 11 16:20:39 2013 -0400
Update to stable 0.10.0 release
-
https://raw.github.com/joyent/node/v0.10.0/ChangeLog
diff --git a/nodejs.spec b/nodejs.spec
index 066bdcd..dadd3c7 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
-Version: 0.9.5
-Release: 11%{?dist}
+Version: 0.10.0
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -19,8 +19,8 @@ Source6: nodejs-fixdep
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
-%global v8_ge 1:3.13.7.5
-%global v8_lt 1:3.14
+%global v8_ge 1:3.14.5.7
+%global v8_lt 1:3.15
BuildRequires: v8-devel >= %{v8_ge}
BuildRequires: http-parser-devel >= 2.0
@@ -169,6 +169,10 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%doc LICENSE
%changelog
+* Mon Mar 11 2013 Stephen Gallagher
sgallagh@redhat.com - 0.10.0-1
+- Update to stable 0.10.0 release
+-
https://raw.github.com/joyent/node/v0.10.0/ChangeLog
+
* Thu Feb 14 2013 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.9.5-11
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
commit ba6adfac2cf3123d8ee152e271b83671edfdbe1d
Author: Dennis Gilmore
dennis@ausil.us
Date: Thu Feb 14 02:22:25 2013 -0600
- Rebuilt for
https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
diff --git a/nodejs.spec b/nodejs.spec
index 1cfb3b2..066bdcd 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 10%{?dist}
+Release: 11%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -169,6 +169,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%doc LICENSE
%changelog
+* Thu Feb 14 2013 Fedora Release Engineering
rel-eng@lists.fedoraproject.org - 0.9.5-11
+- Rebuilt for
https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
+
* Tue Jan 22 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-10
- minor bugfixes to RPM magic
- nodejs-symlink-deps: don't create an empty node_modules dir when a module
commit 1d441dbbce276698febcdaa521b692018b0defc9
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jan 30 16:46:47 2013 -0700
move RPM magic to nodejs-devel as requested by FPC
diff --git a/nodejs.spec b/nodejs.spec
index 138a0f2..1cfb3b2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -154,15 +154,15 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%doc ChangeLog LICENSE README.md AUTHORS
%{_bindir}/node
%{_mandir}/man1/node.*
-%{_sysconfdir}/rpm/macros.nodejs
-%{_rpmconfigdir}/fileattrs/nodejs.attr
-%{_rpmconfigdir}/nodejs*
%dir %{_prefix}/lib/node_modules
%files devel
%{_bindir}/node_g
%{_includedir}/node
%{_datadir}/node
+%{_sysconfdir}/rpm/macros.nodejs
+%{_rpmconfigdir}/fileattrs/nodejs.attr
+%{_rpmconfigdir}/nodejs*
%files docs
%{_defaultdocdir}/%{name}-docs-%{version}
@@ -177,6 +177,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
- Add the full set of headers usually bundled with node as deps to nodejs-devel.
This way `npm install` for native modules that assume the stuff bundled with
node exists will usually "just work".
+-move RPM magic to nodejs-devel as requested by FPC
* Sat Jan 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-9
- fix brown paper bag bug in requires generation script
commit a3faf37d42cb179738bdf967c6cb27988df88565
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jan 23 12:50:13 2013 -0700
revert to %{_rpmconfigdir} for RPM helper scripts
per discussion with wider FPC
diff --git a/macros.nodejs b/macros.nodejs
index f1762cb..75393a6 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -14,11 +14,11 @@
# symlink dependencies so `npm link` works
# this should be run in every module's %%install section
# pass the module name if the npm metadata is incorrect (e.g. multiple versions)
-%nodejs_symlink_deps %{_libexecdir}/nodejs/nodejs-symlink-deps %{nodejs_sitelib}
+%nodejs_symlink_deps %{_rpmconfigdir}/nodejs-symlink-deps %{nodejs_sitelib}
# patch package.json to fix a dependency
# see `man npm-json` for details on writing dependencies for package.json files
# e.g. `%%nodejs_fixdep frobber` makes any version of frobber do
# `%%nodejs_fixdep frobber '>1.0'` requires frobber > 1.0
# `%%nodejs_fixdep -r frobber removes the frobber dep
-%nodejs_fixdep %{_libexecdir}/nodejs/nodejs-fixdep
+%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
diff --git a/nodejs.spec b/nodejs.spec
index 40f84df..138a0f2 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -132,8 +132,8 @@ install -Dpm0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/rpm/macros.nodejs
install -Dpm0644 %{SOURCE2} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs.attr
install -pm0755 %{SOURCE3} %{buildroot}%{_rpmconfigdir}/nodejs.prov
install -pm0755 %{SOURCE4} %{buildroot}%{_rpmconfigdir}/nodejs.req
-install -Dpm0755 %{SOURCE5} %{buildroot}%{_libexecdir}/nodejs/nodejs-symlink-deps
-install -pm0755 %{SOURCE6} %{buildroot}%{_libexecdir}/nodejs/nodejs-fixdep
+install -pm0755 %{SOURCE5} %{buildroot}%{_rpmconfigdir}/nodejs-symlink-deps
+install -pm0755 %{SOURCE6} %{buildroot}%{_rpmconfigdir}/nodejs-fixdep
#install documentation
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
@@ -174,7 +174,6 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
- nodejs-symlink-deps: don't create an empty node_modules dir when a module
has no dependencies
- nodes-fixdep: support adding deps when none exist
-- use libexecdir for RPM helper scripts (per packaging guidelines discussion)
- Add the full set of headers usually bundled with node as deps to nodejs-devel.
This way `npm install` for native modules that assume the stuff bundled with
node exists will usually "just work".
commit 4e5a2f6e6700fb6007c20f36d750099da9f7c12f
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jan 22 13:46:01 2013 -0700
minor bugfixes to RPM magic
- nodejs-symlink-deps: don't create an empty node_modules dir when a module
has no dependencies
- nodes-fixdep: support adding deps when none exist
- use libexecdir for RPM helper scripts (per packaging guidelines discussion)
- Add the full set of headers usually bundled with node as deps to nodejs-devel.
This way `npm install` for native modules that assume the stuff bundled with
node exists will usually "just work".
diff --git a/macros.nodejs b/macros.nodejs
index 75393a6..f1762cb 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -14,11 +14,11 @@
# symlink dependencies so `npm link` works
# this should be run in every module's %%install section
# pass the module name if the npm metadata is incorrect (e.g. multiple versions)
-%nodejs_symlink_deps %{_rpmconfigdir}/nodejs-symlink-deps %{nodejs_sitelib}
+%nodejs_symlink_deps %{_libexecdir}/nodejs/nodejs-symlink-deps %{nodejs_sitelib}
# patch package.json to fix a dependency
# see `man npm-json` for details on writing dependencies for package.json files
# e.g. `%%nodejs_fixdep frobber` makes any version of frobber do
# `%%nodejs_fixdep frobber '>1.0'` requires frobber > 1.0
# `%%nodejs_fixdep -r frobber removes the frobber dep
-%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
+%nodejs_fixdep %{_libexecdir}/nodejs/nodejs-fixdep
diff --git a/nodejs-fixdep b/nodejs-fixdep
index 087cdf3..5f1ed40 100755
--- a/nodejs-fixdep
+++ b/nodejs-fixdep
@@ -27,14 +27,13 @@ import os
import shutil
import sys
-if not os.path.exists('package.json'):
+if not os.path.exists('package.json~'):
shutil.copy2('package.json', 'package.json~')
md = json.load(open('package.json'))
-if not 'dependencies':
- sys.stderr.write("No dependencies listed in this module's package.json\n")
- sys.exit(2)
+if not md['dependencies']:
+ md['dependencies'] = {}
if sys.argv[1] == '-r':
dep = sys.argv[2]
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
index 5571af4..f5636bb 100755
--- a/nodejs-symlink-deps
+++ b/nodejs-symlink-deps
@@ -39,14 +39,14 @@ else:
os.chdir(os.path.join(os.environ['RPM_BUILD_ROOT'], sitelib.lstrip('/'), name))
-try:
- os.mkdir('node_modules')
-except OSError:
- sys.stderr.write('WARNING: node_modules already exists. Make sure you have' +
- 'no bundled dependencies.\n')
+if 'dependencies' in metadata:
+ try:
+ os.mkdir('node_modules')
+ except OSError:
+ sys.stderr.write('WARNING: node_modules already exists. Make sure you have ' +
+ 'no bundled dependencies.\n')
-os.chdir('node_modules')
+ os.chdir('node_modules')
-if 'dependencies' in metadata:
for dep in metadata['dependencies'].iterkeys():
os.symlink(os.path.join(sitelib, dep), dep)
diff --git a/nodejs.spec b/nodejs.spec
index 050ed86..40f84df 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 9%{?dist}
+Release: 10%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -52,6 +52,7 @@ real-time applications that run across distributed devices.
Summary: JavaScript runtime - development headers
Group: Development/Languages
Requires: %{name} == %{version}-%{release}
+Requires: libuv-devel http-parser-devel openssl-devel c-ares-devel zlib-devel
%description devel
Development headers for the Node.js JavaScript runtime.
@@ -131,8 +132,8 @@ install -Dpm0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/rpm/macros.nodejs
install -Dpm0644 %{SOURCE2} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs.attr
install -pm0755 %{SOURCE3} %{buildroot}%{_rpmconfigdir}/nodejs.prov
install -pm0755 %{SOURCE4} %{buildroot}%{_rpmconfigdir}/nodejs.req
-install -pm0755 %{SOURCE5} %{buildroot}%{_rpmconfigdir}/nodejs-symlink-deps
-install -pm0755 %{SOURCE6} %{buildroot}%{_rpmconfigdir}/nodejs-fixdep
+install -Dpm0755 %{SOURCE5} %{buildroot}%{_libexecdir}/nodejs/nodejs-symlink-deps
+install -pm0755 %{SOURCE6} %{buildroot}%{_libexecdir}/nodejs/nodejs-fixdep
#install documentation
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
@@ -168,6 +169,16 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%doc LICENSE
%changelog
+* Tue Jan 22 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-10
+- minor bugfixes to RPM magic
+ - nodejs-symlink-deps: don't create an empty node_modules dir when a module
+ has no dependencies
+ - nodes-fixdep: support adding deps when none exist
+- use libexecdir for RPM helper scripts (per packaging guidelines discussion)
+- Add the full set of headers usually bundled with node as deps to nodejs-devel.
+ This way `npm install` for native modules that assume the stuff bundled with
+ node exists will usually "just work".
+
* Sat Jan 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-9
- fix brown paper bag bug in requires generation script
commit 7c60b0defb6448ee9a0043b7016c7b5e64ced1f9
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sat Jan 12 16:16:50 2013 -0700
fix brown paper bag bug in requires generation script
diff --git a/nodejs.req b/nodejs.req
index 14c59e5..8130276 100755
--- a/nodejs.req
+++ b/nodejs.req
@@ -54,7 +54,7 @@ def main():
if 'engines' in metadata and 'node' in metadata['engines']:
deps += process_dep(req, metadata['engines']['node'])
else:
- deps += req
+ deps.append(req)
if 'dependencies' in metadata:
for name, version in metadata['dependencies'].iteritems():
diff --git a/nodejs.spec b/nodejs.spec
index a7237bb..050ed86 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 8%{?dist}
+Release: 9%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -168,6 +168,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%doc LICENSE
%changelog
+* Sat Jan 12 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-9
+- fix brown paper bag bug in requires generation script
+
* Thu Jan 10 2013 Stephen Gallagher
sgallagh@redhat.com - 0.9.5-8
- Build debug binary and install it in the nodejs-devel subpackage
commit edee057172aa14784c5224af5b40295036b78737
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Thu Jan 10 08:03:49 2013 -0500
Build debug binary and install it in the nodejs-devel subpackage
diff --git a/nodejs.spec b/nodejs.spec
index ecd229a..a7237bb 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 7%{?dist}
+Release: 8%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -105,7 +105,9 @@ export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
--shared-http-parser \
--without-npm \
--without-dtrace
-make %{?_smp_mflags}
+
+# Setting BUILDTYPE=Debug builds both release and debug binaries
+make BUILDTYPE=Debug %{?_smp_mflags}
%install
rm -rf %{buildroot}
@@ -118,6 +120,9 @@ rm -rf %{buildroot}/%{_prefix}/lib/dtrace
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
+# Install the debug binary and set its permissions
+install -Dpm0755 out/Debug/node %{buildroot}/%{_bindir}/node_g
+
# own the sitelib directory
mkdir -p %{buildroot}%{_prefix}/lib/node_modules
@@ -154,6 +159,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%dir %{_prefix}/lib/node_modules
%files devel
+%{_bindir}/node_g
%{_includedir}/node
%{_datadir}/node
@@ -162,6 +168,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%doc LICENSE
%changelog
+* Thu Jan 10 2013 Stephen Gallagher
sgallagh@redhat.com - 0.9.5-8
+- Build debug binary and install it in the nodejs-devel subpackage
+
* Thu Jan 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-7
- don't use make install since it rebuilds everything
commit e31d02038d4b876ea1b1d201d976623a68bf1b0a
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jan 10 02:15:32 2013 -0700
missing arg to install script
diff --git a/nodejs.spec b/nodejs.spec
index b57d998..ecd229a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -110,7 +110,7 @@ make %{?_smp_mflags}
%install
rm -rf %{buildroot}
-./tools/install.py %{buildroot}
+./tools/install.py install %{buildroot}
# and remove dtrace file again
rm -rf %{buildroot}/%{_prefix}/lib/dtrace
commit 635c95957b9672363399c93e01850db718af6157
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jan 10 02:10:39 2013 -0700
don't use make install since it ends up rebuilding everything in %install
the INSTALL='install -p' thing was dropped too since the install script
uses python's shutil.copy2, which does the same thing
diff --git a/nodejs.spec b/nodejs.spec
index e9f23b1..b57d998 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 6%{?dist}
+Release: 7%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -110,7 +110,7 @@ make %{?_smp_mflags}
%install
rm -rf %{buildroot}
-%make_install INSTALL='install -p'
+./tools/install.py %{buildroot}
# and remove dtrace file again
rm -rf %{buildroot}/%{_prefix}/lib/dtrace
@@ -162,6 +162,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%doc LICENSE
%changelog
+* Thu Jan 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-7
+- don't use make install since it rebuilds everything
+
* Thu Jan 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-6
- add %%{?isa}, epoch to v8 deps
commit dfa700662292f0ef6e22095a577bbc89912e330d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Jan 10 01:25:01 2013 -0700
add missing %{?isa}, epoch to v8 deps
diff --git a/nodejs.spec b/nodejs.spec
index 49330ff..e9f23b1 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 5%{?dist}
+Release: 6%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -19,8 +19,8 @@ Source6: nodejs-fixdep
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
-%global v8_ge 3.13.7.5
-%global v8_lt 3.14
+%global v8_ge 1:3.13.7.5
+%global v8_lt 1:3.14
BuildRequires: v8-devel >= %{v8_ge}
BuildRequires: http-parser-devel >= 2.0
@@ -30,8 +30,8 @@ BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
-Requires: v8 >= %{v8_ge}
-Requires: v8 < %{v8_lt}
+Requires: v8%{?isa} >= %{v8_ge}
+Requires: v8%{?isa} < %{v8_lt}
#virtual provides for automatic depedency generation
Provides: nodejs(engine) = %{version}
@@ -162,6 +162,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%doc LICENSE
%changelog
+* Thu Jan 10 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-6
+- add %%{?isa}, epoch to v8 deps
+
* Wed Jan 09 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-5
- add defines to match libuv (#892601)
- make v8 dependency explicit (and thus more accurate)
commit 8792574c0ad0b328dbe11bac4360be89b8d89f49
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jan 9 18:44:46 2013 -0700
don't write pointless 'npm(foo) > 0' deps
diff --git a/nodejs.req b/nodejs.req
index fdb710f..14c59e5 100755
--- a/nodejs.req
+++ b/nodejs.req
@@ -54,7 +54,7 @@ def main():
if 'engines' in metadata and 'node' in metadata['engines']:
deps += process_dep(req, metadata['engines']['node'])
else:
- print req
+ deps += req
if 'dependencies' in metadata:
for name, version in metadata['dependencies'].iteritems():
@@ -119,7 +119,8 @@ def convert_dep(req, operator, version):
# 1 or 1.x or 1.x.x or ~1
if len(parts) == 1 or parts[1] == 'x':
- deps.append('{0} >= {1}'.format(req, parts[0]))
+ if parts[0] != 0:
+ deps.append('{0} >= {1}'.format(req, parts[0]))
deps.append('{0} < {1}'.format(req, parts[0]+1))
# 1.2.3 or 1.2.3-4 or 1.2.x or ~1.2.3 or 1.2
diff --git a/nodejs.spec b/nodejs.spec
index d4a6778..49330ff 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -166,6 +166,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
- add defines to match libuv (#892601)
- make v8 dependency explicit (and thus more accurate)
- add -g to $C(XX)FLAGS instead of patching configure to add it
+- don't write pointless 'npm(foo) > 0' deps
* Sat Jan 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-4
- install development headers
commit 5dd35b8cd5e57fbd31a80c008def0d419c21ae9f
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jan 9 18:12:46 2013 -0700
add -g to $C(XX)FLAGS instead of patching configure to add it
diff --git a/0004-Build-debugging-symbols-by-default.patch b/0004-Build-debugging-symbols-by-default.patch
deleted file mode 100644
index 796227e..0000000
--- a/0004-Build-debugging-symbols-by-default.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 93eb51852e0d9cdf5aebc6212eee5cb3273ddbc4 Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher
sgallagh@redhat.com
-Date: Fri, 14 Dec 2012 08:33:47 -0500
-Subject: [PATCH 4/4] Build debugging symbols by default
-
----
- configure | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index 9461d791ec63a63a7271dd3c99ebdf5456032187..ff3e75fd655ad4431dd402a200dbb810bc00eba2 100755
---- a/configure
-+++ b/configure
-@@ -550,7 +550,7 @@ output = {
- 'include_dirs': [],
- 'libraries': [],
- 'defines': [],
-- 'cflags': [],
-+ 'cflags': ['-g'],
- }
-
- configure_node(output)
---
-1.8.0.1
-
diff --git a/nodejs.spec b/nodejs.spec
index 599b88a..d4a6778 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -17,10 +17,6 @@ Source4: nodejs.req
Source5: nodejs-symlink-deps
Source6: nodejs-fixdep
-# This patch is Fedora-specific and allows building the release
-# binaries with debugging symbols
-Patch0004: 0004-Build-debugging-symbols-by-default.patch
-
# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
# so we need to be more explicit until spot fixes that
%global v8_ge 3.13.7.5
@@ -70,8 +66,6 @@ The API documentation for the Node.js JavaScript runtime.
%prep
%setup -q -n node-v%{version}
-%patch0004 -p1
-
# Make sure nothing gets included from bundled deps:
# We only delete the source and header files, because
# the remaining build scripts are still used.
@@ -98,8 +92,10 @@ find deps/uv -name "*.c" -exec rm -f {} ;
find deps/uv -name "*.h" -exec rm -f {} ;
%build
-export CFLAGS='%{optflags} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
-export CXXFLAGS='%{optflags} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
+# build with debugging symbols and add defines from libuv (#892601)
+export CFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
+export CXXFLAGS='%{optflags} -g -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
+
./configure --prefix=%{_prefix} \
--shared-v8 \
--shared-openssl \
@@ -111,7 +107,6 @@ export CXXFLAGS='%{optflags} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
--without-dtrace
make %{?_smp_mflags}
-
%install
rm -rf %{buildroot}
@@ -170,6 +165,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
* Wed Jan 09 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-5
- add defines to match libuv (#892601)
- make v8 dependency explicit (and thus more accurate)
+- add -g to $C(XX)FLAGS instead of patching configure to add it
* Sat Jan 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-4
- install development headers
commit af538fcc1b931afb02aa6b2d961cbf960fad86d1
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jan 9 18:01:49 2013 -0700
make v8 dependency explicit
v8 breaks ABI while never bumping SONAME so we need to be strict about it
diff --git a/nodejs.spec b/nodejs.spec
index f2c8177..599b88a 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,7 +21,12 @@ Source6: nodejs-fixdep
# binaries with debugging symbols
Patch0004: 0004-Build-debugging-symbols-by-default.patch
-BuildRequires: v8-devel
+# V8 presently breaks ABI at least every x.y release while never bumping SONAME,
+# so we need to be more explicit until spot fixes that
+%global v8_ge 3.13.7.5
+%global v8_lt 3.14
+
+BuildRequires: v8-devel >= %{v8_ge}
BuildRequires: http-parser-devel >= 2.0
BuildRequires: libuv-devel
BuildRequires: c-ares-devel
@@ -29,6 +34,9 @@ BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
+Requires: v8 >= %{v8_ge}
+Requires: v8 < %{v8_lt}
+
#virtual provides for automatic depedency generation
Provides: nodejs(engine) = %{version}
@@ -161,6 +169,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%changelog
* Wed Jan 09 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-5
- add defines to match libuv (#892601)
+- make v8 dependency explicit (and thus more accurate)
* Sat Jan 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-4
- install development headers
commit 7a602f802db658a71634a064d7fa46665d408c2b
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jan 9 17:54:20 2013 -0700
add some whitespace to the ever expanding header section
diff --git a/nodejs.spec b/nodejs.spec
index 0ea9372..f2c8177 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -5,6 +5,10 @@ Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
URL:
http://nodejs.org/
+
+# Exclusive archs must match v8
+ExclusiveArch: %{ix86} x86_64 %{arm}
+
Source0:
http://nodejs.org/dist/v%%7Bversion%7D/node-v%%7Bversion%7D.tar.gz
Source1: macros.nodejs
Source2: nodejs.attr
@@ -12,6 +16,11 @@ Source3: nodejs.prov
Source4: nodejs.req
Source5: nodejs-symlink-deps
Source6: nodejs-fixdep
+
+# This patch is Fedora-specific and allows building the release
+# binaries with debugging symbols
+Patch0004: 0004-Build-debugging-symbols-by-default.patch
+
BuildRequires: v8-devel
BuildRequires: http-parser-devel >= 2.0
BuildRequires: libuv-devel
@@ -19,23 +28,15 @@ BuildRequires: c-ares-devel
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
+
#virtual provides for automatic depedency generation
Provides: nodejs(engine) = %{version}
-# Exclusive archs must match v8
-ExclusiveArch: %{ix86} x86_64 %{arm}
-
# Node.js currently has a conflict with the 'node' package in Fedora
# The ham-radio group has agreed to rename their binary for us, but
# in the meantime, we're setting an explicit Conflicts: here
Conflicts: node <= 0.3.2-11
-# Patches
-
-# This patch is Fedora-specific and allows building the release
-# binaries with debugging symbols
-Patch0004: 0004-Build-debugging-symbols-by-default.patch
-
%description
Node.js is a platform built on Chrome's JavaScript runtime
for easily building fast, scalable network applications.
commit d42282e17a1a70d0b7d03a6ca7b429bfd35e1485
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jan 9 17:47:55 2013 -0700
add defines to match libuv (RHBZ#892601)
diff --git a/nodejs.spec b/nodejs.spec
index 63f2c45..0ea9372 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 4%{?dist}
+Release: 5%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -89,8 +89,8 @@ find deps/uv -name "*.c" -exec rm -f {} ;
find deps/uv -name "*.h" -exec rm -f {} ;
%build
-export CFLAGS='%{optflags}'
-export CXXFLAGS='%{optflags}'
+export CFLAGS='%{optflags} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
+export CXXFLAGS='%{optflags} -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'
./configure --prefix=%{_prefix} \
--shared-v8 \
--shared-openssl \
@@ -158,6 +158,9 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%doc LICENSE
%changelog
+* Wed Jan 09 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-5
+- add defines to match libuv (#892601)
+
* Sat Jan 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-4
- install development headers
- add nodejs_sitearch macro
commit c3da87ea074fde4f6ba7b7369fa9f26dc58f9664
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sat Jan 5 03:26:47 2013 -0700
add %nodejs_sitearch macro
diff --git a/macros.nodejs b/macros.nodejs
index da625a2..75393a6 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -4,6 +4,10 @@
# nodejs library directory
%nodejs_sitelib %{_prefix}/lib/node_modules
+#arch specific library directory
+#for future-proofing only; we don't do multilib
+%nodejs_sitearch %{nodejs_sitelib}
+
# currently installed nodejs version
%nodejs_version %(%{__nodejs} -v | sed s/v//)
@@ -17,4 +21,4 @@
# e.g. `%%nodejs_fixdep frobber` makes any version of frobber do
# `%%nodejs_fixdep frobber '>1.0'` requires frobber > 1.0
# `%%nodejs_fixdep -r frobber removes the frobber dep
-%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
\ No newline at end of file
+%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
diff --git a/nodejs.spec b/nodejs.spec
index cae3029..63f2c45 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -160,6 +160,7 @@ cp -p common.gypi %{buildroot}%{_datadir}/node
%changelog
* Sat Jan 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-4
- install development headers
+- add nodejs_sitearch macro
* Wed Jan 02 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-3
- make nodejs-symlink-deps actually work
commit 658010df73789301029407e8751e121618ad8a39
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sat Jan 5 03:19:17 2013 -0700
forgot %{buildroot}
diff --git a/nodejs.spec b/nodejs.spec
index db2157d..cae3029 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -137,8 +137,8 @@ mkdir -p %{buildroot}%{_includedir}/node
cp -p src/*.h %{buildroot}%{_includedir}/node
#node-gyp needs common.gypi too
-mkdir -p %{_datadir}/node
-cp -p common.gypi %{_datadir}/node
+mkdir -p %{buildroot}%{_datadir}/node
+cp -p common.gypi %{buildroot}%{_datadir}/node
%files
%doc ChangeLog LICENSE README.md AUTHORS
commit 48d6c59d89664b8319696acc6f7604e227b73573
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sat Jan 5 03:15:29 2013 -0700
need common.gypi too
diff --git a/nodejs.spec b/nodejs.spec
index bb4ba36..db2157d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -136,6 +136,10 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
mkdir -p %{buildroot}%{_includedir}/node
cp -p src/*.h %{buildroot}%{_includedir}/node
+#node-gyp needs common.gypi too
+mkdir -p %{_datadir}/node
+cp -p common.gypi %{_datadir}/node
+
%files
%doc ChangeLog LICENSE README.md AUTHORS
%{_bindir}/node
@@ -147,6 +151,7 @@ cp -p src/*.h %{buildroot}%{_includedir}/node
%files devel
%{_includedir}/node
+%{_datadir}/node
%files docs
%{_defaultdocdir}/%{name}-docs-%{version}
commit 3a234dfcc8319d21eb321ac9188e7e1679025cb9
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Sat Jan 5 02:55:51 2013 -0700
install development headers
diff --git a/nodejs.spec b/nodejs.spec
index 95ef14c..bb4ba36 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 3%{?dist}
+Release: 4%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -21,8 +21,6 @@ BuildRequires: zlib-devel
BuildRequires: openssl-devel >= 1:1.0.1
#virtual provides for automatic depedency generation
Provides: nodejs(engine) = %{version}
-#provide nodejs-devel until it comes back for real
-Provides: nodejs-devel = %{version}-%{release}
# Exclusive archs must match v8
ExclusiveArch: %{ix86} x86_64 %{arm}
@@ -45,6 +43,14 @@ Node.js uses an event-driven, non-blocking I/O model that
makes it lightweight and efficient, perfect for data-intensive
real-time applications that run across distributed devices.
+%package devel
+Summary: JavaScript runtime - development headers
+Group: Development/Languages
+Requires: %{name} == %{version}-%{release}
+
+%description devel
+Development headers for the Node.js JavaScript runtime.
+
%package docs
Summary: Node.js API documentation
Group: Documentation
@@ -124,6 +130,12 @@ mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
cp -pr doc/* %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
+#install development headers
+#FIXME: we probably don't really need *.h but node-gyp downloads the whole
+#freaking source tree so I can't be sure ATM
+mkdir -p %{buildroot}%{_includedir}/node
+cp -p src/*.h %{buildroot}%{_includedir}/node
+
%files
%doc ChangeLog LICENSE README.md AUTHORS
%{_bindir}/node
@@ -133,11 +145,17 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
%{_rpmconfigdir}/nodejs*
%dir %{_prefix}/lib/node_modules
+%files devel
+%{_includedir}/node
+
%files docs
%{_defaultdocdir}/%{name}-docs-%{version}
%doc LICENSE
%changelog
+* Sat Jan 05 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-4
+- install development headers
+
* Wed Jan 02 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-3
- make nodejs-symlink-deps actually work
@@ -159,6 +177,7 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
- include documentation in subpackage
- add RPM dependency generation and related magic
- guard libuv depedency so it always gets bumped when nodejs does
+- add -devel subpackage with enough to make node-gyp happy
* Wed Dec 19 2012 Dan Horák <dan[at]danny.cz> - 0.9.3-8
- set exclusive arch list to match v8
commit e69a9d539d189e1280f05b4c0d4aaa8bfea52eaf
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Jan 2 00:05:33 2013 -0700
make %nodejs_symlink_deps actually work
module packaging stuff is now complete (for pure-JS modules anyway)
and npm reviews will be filed shortly :-)
diff --git a/macros.nodejs b/macros.nodejs
index a7d431f..da625a2 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -9,6 +9,7 @@
# symlink dependencies so `npm link` works
# this should be run in every module's %%install section
+# pass the module name if the npm metadata is incorrect (e.g. multiple versions)
%nodejs_symlink_deps %{_rpmconfigdir}/nodejs-symlink-deps %{nodejs_sitelib}
# patch package.json to fix a dependency
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
index f33375e..5571af4 100755
--- a/nodejs-symlink-deps
+++ b/nodejs-symlink-deps
@@ -30,12 +30,20 @@ import sys
#the %nodejs_symlink_deps macro passes %nodejs_sitelib as the first argument
sitelib = sys.argv[1]
+metadata = json.load(open('package.json'))
+
+if len(sys.argv) > 2:
+ name = sys.argv[2]
+else:
+ name = metadata['name']
+
+os.chdir(os.path.join(os.environ['RPM_BUILD_ROOT'], sitelib.lstrip('/'), name))
+
try:
os.mkdir('node_modules')
except OSError:
- pass
-
-metadata = json.load(open('package.json'))
+ sys.stderr.write('WARNING: node_modules already exists. Make sure you have' +
+ 'no bundled dependencies.\n')
os.chdir('node_modules')
diff --git a/nodejs.spec b/nodejs.spec
index 1717aac..95ef14c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 2%{?dist}
+Release: 3%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -138,6 +138,9 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
%doc LICENSE
%changelog
+* Wed Jan 02 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-3
+- make nodejs-symlink-deps actually work
+
* Tue Jan 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-2
- provide nodejs-devel so modules can BuildRequire it (and be consistent
with other interpreted languages in the distro)
commit 37ced2c50e0ad3511f84ff3d3dfc72389b6cf34d
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jan 1 18:58:53 2013 -0700
forgot to bump release
diff --git a/nodejs.spec b/nodejs.spec
index 09e6b0c..1717aac 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.5
-Release: 1%{?dist}
+Release: 2%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
commit 3c627f306d0829f51d7ba0c61299a2e58688affb
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jan 1 18:54:12 2013 -0700
provide nodejs-devel
diff --git a/nodejs.spec b/nodejs.spec
index 1eccc0b..09e6b0c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -21,6 +21,8 @@ BuildRequires: zlib-devel
BuildRequires: openssl-devel >= 1:1.0.1
#virtual provides for automatic depedency generation
Provides: nodejs(engine) = %{version}
+#provide nodejs-devel until it comes back for real
+Provides: nodejs-devel = %{version}-%{release}
# Exclusive archs must match v8
ExclusiveArch: %{ix86} x86_64 %{arm}
@@ -136,6 +138,10 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
%doc LICENSE
%changelog
+* Tue Jan 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-2
+- provide nodejs-devel so modules can BuildRequire it (and be consistent
+ with other interpreted languages in the distro)
+
* Tue Jan 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-1
- new upstream release 0.9.5
- provide nodejs-devel for the moment
commit 19aa8a3c9a797413b1cef718f12ee28369e3a424
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jan 1 18:11:13 2013 -0700
drop version from libuv dependency
diff --git a/nodejs.spec b/nodejs.spec
index b47409c..1eccc0b 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -14,7 +14,7 @@ Source5: nodejs-symlink-deps
Source6: nodejs-fixdep
BuildRequires: v8-devel
BuildRequires: http-parser-devel >= 2.0
-BuildRequires: libuv-devel >= %{version}
+BuildRequires: libuv-devel
BuildRequires: c-ares-devel
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
commit 753bbecb1db015cbd418937f7036b5f3052980a3
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jan 1 18:01:34 2013 -0700
add %nodejs_fixdep macro
diff --git a/macros.nodejs b/macros.nodejs
index 9507ada..a7d431f 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -9,4 +9,11 @@
# symlink dependencies so `npm link` works
# this should be run in every module's %%install section
-%nodejs_symlink_deps %{_rpmconfigdir}/nodejs-symlink-deps %{nodejs_sitelib}
\ No newline at end of file
+%nodejs_symlink_deps %{_rpmconfigdir}/nodejs-symlink-deps %{nodejs_sitelib}
+
+# patch package.json to fix a dependency
+# see `man npm-json` for details on writing dependencies for package.json files
+# e.g. `%%nodejs_fixdep frobber` makes any version of frobber do
+# `%%nodejs_fixdep frobber '>1.0'` requires frobber > 1.0
+# `%%nodejs_fixdep -r frobber removes the frobber dep
+%nodejs_fixdep %{_rpmconfigdir}/nodejs-fixdep
\ No newline at end of file
diff --git a/nodejs-fixdep b/nodejs-fixdep
new file mode 100755
index 0000000..087cdf3
--- /dev/null
+++ b/nodejs-fixdep
@@ -0,0 +1,55 @@
+#!/usr/bin/python
+
+"""Modify a dependency listed in a package.json file"""
+
+# Copyright 2013 T.C. Hollingsworth
tchollingsworth@gmail.com
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+# IN THE SOFTWARE.
+
+import json
+import os
+import shutil
+import sys
+
+if not os.path.exists('package.json'):
+ shutil.copy2('package.json', 'package.json~')
+
+md = json.load(open('package.json'))
+
+if not 'dependencies':
+ sys.stderr.write("No dependencies listed in this module's package.json\n")
+ sys.exit(2)
+
+if sys.argv[1] == '-r':
+ dep = sys.argv[2]
+ del md['dependencies'][dep]
+else:
+ dep = sys.argv[1]
+
+ if len(sys.argv) > 2:
+ ver = sys.argv[2]
+ else:
+ ver = '*'
+
+ md['dependencies'][dep] = ver
+
+fh = open('package.json', 'w')
+data = json.JSONEncoder(indent=4).encode(md)
+fh.write(data)
+fh.close()
diff --git a/nodejs.spec b/nodejs.spec
index d22ff96..b47409c 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -11,6 +11,7 @@ Source2: nodejs.attr
Source3: nodejs.prov
Source4: nodejs.req
Source5: nodejs-symlink-deps
+Source6: nodejs-fixdep
BuildRequires: v8-devel
BuildRequires: http-parser-devel >= 2.0
BuildRequires: libuv-devel >= %{version}
@@ -114,6 +115,7 @@ install -Dpm0644 %{SOURCE2} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs.attr
install -pm0755 %{SOURCE3} %{buildroot}%{_rpmconfigdir}/nodejs.prov
install -pm0755 %{SOURCE4} %{buildroot}%{_rpmconfigdir}/nodejs.req
install -pm0755 %{SOURCE5} %{buildroot}%{_rpmconfigdir}/nodejs-symlink-deps
+install -pm0755 %{SOURCE6} %{buildroot}%{_rpmconfigdir}/nodejs-fixdep
#install documentation
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
@@ -138,6 +140,8 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
- new upstream release 0.9.5
- provide nodejs-devel for the moment
- fix minor bugs in RPM magic
+- add nodejs_fixdep macro so packagers can easily adjust dependencies in
+ package.json files
* Wed Dec 26 2012 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.4-1
- new upstream release 0.9.4
commit db8a0a99d84af79882280cf769440d1c8ee02236
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jan 1 17:46:31 2013 -0700
fix minor bugs in RPM magic
diff --git a/.gitignore b/.gitignore
index 7974d9b..0589717 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
/node-v0.9.3.tar.gz
/node-v0.9.4.tar.gz
+/node-v0.9.5.tar.gz
diff --git a/macros.nodejs b/macros.nodejs
index e6a1ff3..9507ada 100644
--- a/macros.nodejs
+++ b/macros.nodejs
@@ -9,4 +9,4 @@
# symlink dependencies so `npm link` works
# this should be run in every module's %%install section
-%nodejs_symlink_deps %{_rpmconfigdir}/nodejs_symlink_deps %{nodejs_sitelib}
\ No newline at end of file
+%nodejs_symlink_deps %{_rpmconfigdir}/nodejs-symlink-deps %{nodejs_sitelib}
\ No newline at end of file
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
index 4850cab..f33375e 100755
--- a/nodejs-symlink-deps
+++ b/nodejs-symlink-deps
@@ -39,5 +39,6 @@ metadata = json.load(open('package.json'))
os.chdir('node_modules')
-for dep in metadata['dependencies'].iterkeys():
- os.symlink(os.path.join(sitelib, dep), dep)
+if 'dependencies' in metadata:
+ for dep in metadata['dependencies'].iterkeys():
+ os.symlink(os.path.join(sitelib, dep), dep)
diff --git a/nodejs.req b/nodejs.req
index 71c3cc6..fdb710f 100755
--- a/nodejs.req
+++ b/nodejs.req
@@ -71,7 +71,7 @@ def process_dep(req, version):
#there's no way RPM can do anything like an OR dependency
if '||' in version:
sys.stderr.write("WARNING: The {0} dependency contains an ".format(req) +
- "OR (||) dependency: '{0}. Please manually include ".format(version) +
+ "OR (||) dependency: '{0}.\nPlease manually include ".format(version) +
"a versioned dependency in your spec file if necessary")
deps.append(req)
@@ -93,11 +93,6 @@ def process_dep(req, version):
if m:
deps += convert_dep(req, m.group(1), m.group(2))
else:
- #uh oh!
- sys.stderr.write('WARNING: the automatic dependency generator ' +
- 'couldn't parse the entry for {0}. '.format(req) +
- 'Please check to see if the package.json is valid. If so, file ' +
- 'a bug against the nodejs package in bugzilla.')
deps.append(req)
return deps
diff --git a/nodejs.spec b/nodejs.spec
index 6466916..d22ff96 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -136,6 +136,8 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
%changelog
* Tue Jan 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-1
- new upstream release 0.9.5
+- provide nodejs-devel for the moment
+- fix minor bugs in RPM magic
* Wed Dec 26 2012 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.4-1
- new upstream release 0.9.4
diff --git a/sources b/sources
index e69de29..07b2403 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+50f1c8bc2390b47e7f3b8a5d59c25909 node-v0.9.5.tar.gz
commit be1b4d93057bc8c20d97004072dc9d7104e52ee2
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Tue Jan 1 17:33:10 2013 -0700
new upstream release 0.9.5
diff --git a/nodejs.spec b/nodejs.spec
index 5ba3341..6466916 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,5 +1,5 @@
Name: nodejs
-Version: 0.9.4
+Version: 0.9.5
Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
@@ -134,6 +134,9 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
%doc LICENSE
%changelog
+* Tue Jan 01 2013 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.5-1
+- new upstream release 0.9.5
+
* Wed Dec 26 2012 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.4-1
- new upstream release 0.9.4
- system library patches are now upstream
diff --git a/sources b/sources
index cd8831a..e69de29 100644
--- a/sources
+++ b/sources
@@ -1 +0,0 @@
-4898a22b91362bf3cc9525cbc2efb509 node-v0.9.4.tar.gz
commit df8da1f8d67605b4f6cd76c3342f41133b3e526f
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 27 18:49:11 2012 -0700
add missing provides and %files entry
diff --git a/nodejs.spec b/nodejs.spec
index 49f0a29..5ba3341 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -18,6 +18,8 @@ BuildRequires: c-ares-devel
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
+#virtual provides for automatic depedency generation
+Provides: nodejs(engine) = %{version}
# Exclusive archs must match v8
ExclusiveArch: %{ix86} x86_64 %{arm}
@@ -122,6 +124,7 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
%doc ChangeLog LICENSE README.md AUTHORS
%{_bindir}/node
%{_mandir}/man1/node.*
+%{_sysconfdir}/rpm/macros.nodejs
%{_rpmconfigdir}/fileattrs/nodejs.attr
%{_rpmconfigdir}/nodejs*
%dir %{_prefix}/lib/node_modules
commit 086dcdb35d70a91e994b79e062eef4180fe58191
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 27 17:12:19 2012 -0700
typo fix
diff --git a/nodejs.spec b/nodejs.spec
index c1fa279..49f0a29 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -114,8 +114,8 @@ install -pm0755 %{SOURCE4} %{buildroot}%{_rpmconfigdir}/nodejs.req
install -pm0755 %{SOURCE5} %{buildroot}%{_rpmconfigdir}/nodejs-symlink-deps
#install documentation
-mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-doc-%{version}/html
-cp -pr doc/* %{buildroot}%{_defaultdocdir}/%{name}-doc-%{version}/html
+mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
+cp -pr doc/* %{buildroot}%{_defaultdocdir}/%{name}-docs-%{version}/html
rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
%files
commit 5517869d46b33ce5459bf3df85b412405f604197
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 27 17:01:35 2012 -0700
add missing macros file
diff --git a/macros.nodejs b/macros.nodejs
new file mode 100644
index 0000000..e6a1ff3
--- /dev/null
+++ b/macros.nodejs
@@ -0,0 +1,12 @@
+# nodejs binary
+%__nodejs %{_bindir}/node
+
+# nodejs library directory
+%nodejs_sitelib %{_prefix}/lib/node_modules
+
+# currently installed nodejs version
+%nodejs_version %(%{__nodejs} -v | sed s/v//)
+
+# symlink dependencies so `npm link` works
+# this should be run in every module's %%install section
+%nodejs_symlink_deps %{_rpmconfigdir}/nodejs_symlink_deps %{nodejs_sitelib}
\ No newline at end of file
commit 9eca3d7e00d8addfc6624320d48754675e60dabf
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 27 16:48:09 2012 -0700
guard libuv BuildRequires
that way I don't spend another half-hour chasing down a FTBFS that
happened only because it took awhile for the new libuv to make it
into the buildroot ;-)
diff --git a/nodejs.spec b/nodejs.spec
index 2eb1c62..c1fa279 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -13,7 +13,7 @@ Source4: nodejs.req
Source5: nodejs-symlink-deps
BuildRequires: v8-devel
BuildRequires: http-parser-devel >= 2.0
-BuildRequires: libuv-devel
+BuildRequires: libuv-devel >= %{version}
BuildRequires: c-ares-devel
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
@@ -137,6 +137,7 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
- respect optflags
- include documentation in subpackage
- add RPM dependency generation and related magic
+- guard libuv depedency so it always gets bumped when nodejs does
* Wed Dec 19 2012 Dan Horák <dan[at]danny.cz> - 0.9.3-8
- set exclusive arch list to match v8
commit d102ea1f9453bf68192cdbc26dedb6951ead154e
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Thu Dec 27 16:45:37 2012 -0700
add RPM magic
diff --git a/nodejs-symlink-deps b/nodejs-symlink-deps
new file mode 100755
index 0000000..4850cab
--- /dev/null
+++ b/nodejs-symlink-deps
@@ -0,0 +1,43 @@
+#!/usr/bin/python
+
+"""Symlink a node module's dependencies into the node_modules directory so users
+can `npm link` RPM-installed modules into their personal projects."""
+
+# Copyright 2012 T.C. Hollingsworth
tchollingsworth@gmail.com
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+# IN THE SOFTWARE.
+
+import json
+import os
+import sys
+
+#the %nodejs_symlink_deps macro passes %nodejs_sitelib as the first argument
+sitelib = sys.argv[1]
+
+try:
+ os.mkdir('node_modules')
+except OSError:
+ pass
+
+metadata = json.load(open('package.json'))
+
+os.chdir('node_modules')
+
+for dep in metadata['dependencies'].iterkeys():
+ os.symlink(os.path.join(sitelib, dep), dep)
diff --git a/nodejs.attr b/nodejs.attr
new file mode 100644
index 0000000..ffeb484
--- /dev/null
+++ b/nodejs.attr
@@ -0,0 +1,3 @@
+%__nodejs_provides %{_rpmconfigdir}/nodejs.prov
+%__nodejs_requires %{_rpmconfigdir}/nodejs.req
+%__nodejs_path ^/usr/lib.*/node_modules/.*/package.json$
diff --git a/nodejs.prov b/nodejs.prov
new file mode 100755
index 0000000..7c8dac2
--- /dev/null
+++ b/nodejs.prov
@@ -0,0 +1,45 @@
+#!/usr/bin/python
+
+"""
+Automatic provides generator for Node.js libraries.
+
+Taken from package.json. See `man npm-json` for details.
+"""
+# Copyright 2012 T.C. Hollingsworth
tchollingsworth@gmail.com
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+# IN THE SOFTWARE.
+
+import json
+import sys
+
+paths = [path.rstrip() for path in sys.stdin.readlines()]
+
+for path in paths:
+ if path.endswith('package.json'):
+ fh = open(path)
+ metadata = json.load(fh)
+ fh.close()
+
+ if 'name' in metadata and not ('private' in metadata and metadata['private']):
+ print 'npm(' + metadata['name'] + ')',
+
+ if 'version' in metadata:
+ print '= ' + metadata['version']
+ else:
+ print
diff --git a/nodejs.req b/nodejs.req
new file mode 100755
index 0000000..71c3cc6
--- /dev/null
+++ b/nodejs.req
@@ -0,0 +1,152 @@
+#!/usr/bin/python
+
+"""
+Automatic dependency generator for Node.js libraries.
+
+Parsed from package.json. See `man npm-json` for details.
+"""
+
+# Copyright 2012 T.C. Hollingsworth
tchollingsworth@gmail.com
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
+# IN THE SOFTWARE.
+
+from __future__ import unicode_literals
+import json
+import re
+import sys
+
+RE_VERSION = re.compile(r'\s*v?([<>=~]{0,2})\s*([0-9][0-9.-]*)\s*')
+
+def main():
+ #npm2rpm uses functions here to write BuildRequires so don't print anything
+ #until the very end
+ deps = []
+
+ #it's highly unlikely that we'll ever get more than one file but we handle
+ #this like all RPM automatic dependency generation scripts anyway
+ paths = [path.rstrip() for path in sys.stdin.readlines()]
+
+ for path in paths:
+ if path.endswith('package.json'):
+ fh = open(path)
+ metadata = json.load(fh)
+ fh.close()
+
+ #write out the node.js interpreter dependency
+ req = 'nodejs(engine)'
+
+ if 'engines' in metadata and 'node' in metadata['engines']:
+ deps += process_dep(req, metadata['engines']['node'])
+ else:
+ print req
+
+ if 'dependencies' in metadata:
+ for name, version in metadata['dependencies'].iteritems():
+ req = 'npm(' + name + ')'
+ deps += process_dep(req, version)
+
+ print '\n'.join(deps)
+
+def process_dep(req, version):
+ """Converts an individual npm dependency into RPM dependencies"""
+
+ deps = []
+
+ #there's no way RPM can do anything like an OR dependency
+ if '||' in version:
+ sys.stderr.write("WARNING: The {0} dependency contains an ".format(req) +
+ "OR (||) dependency: '{0}. Please manually include ".format(version) +
+ "a versioned dependency in your spec file if necessary")
+ deps.append(req)
+
+ elif ' - ' in version:
+ gt, lt = version.split(' - ')
+ deps.append(req + ' >= ' + gt)
+ deps.append(req + ' <= ' + lt)
+
+ else:
+ m = re.match(RE_VERSION, version)
+
+ if m:
+ deps += convert_dep(req, m.group(1), m.group(2))
+
+ #There could be up to two versions here (e.g.">1.0 <3.1")
+ if len(version) > m.end():
+ m = re.match(RE_VERSION, version[m.end():])
+
+ if m:
+ deps += convert_dep(req, m.group(1), m.group(2))
+ else:
+ #uh oh!
+ sys.stderr.write('WARNING: the automatic dependency generator ' +
+ 'couldn't parse the entry for {0}. '.format(req) +
+ 'Please check to see if the package.json is valid. If so, file ' +
+ 'a bug against the nodejs package in bugzilla.')
+ deps.append(req)
+
+ return deps
+
+def convert_dep(req, operator, version):
+ """Converts one of the two possibly listed versions into an RPM dependency"""
+
+ deps = []
+
+ #any version will do
+ if not version or version == '*':
+ deps.append(req)
+
+ #any prefix but ~ makes things dead simple
+ elif operator in ['>', '<', '<=', '>=', '=']:
+ deps.append(' '.join([req, operator, version]))
+
+ #oh boy, here we go...
+ else:
+ #split the dotted portions into a list (handling trailing dots properly)
+ parts = [part if part else 'x' for part in version.split('.')]
+ parts = [int(part) if part != 'x' and not '-' in part
+ else part for part in parts]
+
+ # 1 or 1.x or 1.x.x or ~1
+ if len(parts) == 1 or parts[1] == 'x':
+ deps.append('{0} >= {1}'.format(req, parts[0]))
+ deps.append('{0} < {1}'.format(req, parts[0]+1))
+
+ # 1.2.3 or 1.2.3-4 or 1.2.x or ~1.2.3 or 1.2
+ elif len(parts) == 3 or operator != '~':
+ # 1.2.x or 1.2
+ if len(parts) == 2 or parts[2] == 'x':
+ deps.append('{0} >= {1}.{2}'.format(req, parts[0], parts[1]))
+ deps.append('{0} < {1}.{2}'.format(req, parts[0], parts[1]+1))
+ # ~1.2.3
+ elif operator == '~':
+ deps.append('{0} >= {1}'.format(req, version))
+ deps.append('{0} < {1}.{2}'.format(req, parts[0], parts[1]+1))
+ # 1.2.3 or 1.2.3-4
+ else:
+ deps.append('{0} = {1}'.format(req, version))
+
+ # ~1.2
+ else:
+ deps.append('{0} >= {1}'.format(req, version))
+ deps.append('{0} < {1}'.format(req, parts[0]+1))
+
+ return deps
+
+if __name__ == '__main__':
+ main()
diff --git a/nodejs.spec b/nodejs.spec
index 7771a8d..2eb1c62 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -6,6 +6,11 @@ License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
URL:
http://nodejs.org/
Source0:
http://nodejs.org/dist/v%%7Bversion%7D/node-v%%7Bversion%7D.tar.gz
+Source1: macros.nodejs
+Source2: nodejs.attr
+Source3: nodejs.prov
+Source4: nodejs.req
+Source5: nodejs-symlink-deps
BuildRequires: v8-devel
BuildRequires: http-parser-devel >= 2.0
BuildRequires: libuv-devel
@@ -98,6 +103,16 @@ rm -rf %{buildroot}/%{_prefix}/lib/dtrace
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
+# own the sitelib directory
+mkdir -p %{buildroot}%{_prefix}/lib/node_modules
+
+# install rpm magic
+install -Dpm0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/rpm/macros.nodejs
+install -Dpm0644 %{SOURCE2} %{buildroot}%{_rpmconfigdir}/fileattrs/nodejs.attr
+install -pm0755 %{SOURCE3} %{buildroot}%{_rpmconfigdir}/nodejs.prov
+install -pm0755 %{SOURCE4} %{buildroot}%{_rpmconfigdir}/nodejs.req
+install -pm0755 %{SOURCE5} %{buildroot}%{_rpmconfigdir}/nodejs-symlink-deps
+
#install documentation
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-doc-%{version}/html
cp -pr doc/* %{buildroot}%{_defaultdocdir}/%{name}-doc-%{version}/html
@@ -107,6 +122,9 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
%doc ChangeLog LICENSE README.md AUTHORS
%{_bindir}/node
%{_mandir}/man1/node.*
+%{_rpmconfigdir}/fileattrs/nodejs.attr
+%{_rpmconfigdir}/nodejs*
+%dir %{_prefix}/lib/node_modules
%files docs
%{_defaultdocdir}/%{name}-docs-%{version}
@@ -118,6 +136,7 @@ rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
- system library patches are now upstream
- respect optflags
- include documentation in subpackage
+- add RPM dependency generation and related magic
* Wed Dec 19 2012 Dan Horák <dan[at]danny.cz> - 0.9.3-8
- set exclusive arch list to match v8
commit 1407a24b652bd3bd2b6c49610800acaf54c39ef8
Author: T.C. Hollingsworth
tchollingsworth@gmail.com
Date: Wed Dec 26 19:57:50 2012 -0700
new upstream release 0.9.4
- system library patches are now upstream
- respect optflags
- include documentation in subpackage
diff --git a/.gitignore b/.gitignore
index 114bd65..7974d9b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
/node-v0.9.3.tar.gz
+/node-v0.9.4.tar.gz
diff --git a/0001-build-allow-linking-against-system-http_parser.patch b/0001-build-allow-linking-against-system-http_parser.patch
deleted file mode 100644
index bd18367..0000000
--- a/0001-build-allow-linking-against-system-http_parser.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From 0fc5e8b88b7ac7e47deb689e866836434792224e Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher
sgallagh@redhat.com
-Date: Tue, 23 Oct 2012 09:01:26 -0400
-Subject: [PATCH 1/3] build: allow linking against system http_parser
-
----
- configure | 35 +++++++++++++++++++++++++++++++++++
- doc/api/process.markdown | 1 +
- node.gyp | 6 +++++-
- 3 files changed, 41 insertions(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index 1f1343441a5f5fb00bfab2b3b1ec6475820efa13..1fa522755de68a0eb182dde110b8c4a1a8f4aa7c 100755
---- a/configure
-+++ b/configure
-@@ -124,6 +124,26 @@ parser.add_option("--shared-zlib-libname",
- dest="shared_zlib_libname",
- help="Alternative lib name to link to (default: 'z')")
-
-+parser.add_option("--shared-http-parser",
-+ action="store_true",
-+ dest="shared_http_parser",
-+ help="Link to a shared http_parser DLL instead of static linking")
-+
-+parser.add_option("--shared-http-parser-includes",
-+ action="store",
-+ dest="shared_http_parser_includes",
-+ help="Directory containing http_parser header files")
-+
-+parser.add_option("--shared-http-parser-libpath",
-+ action="store",
-+ dest="shared_http_parser_libpath",
-+ help="A directory to search for the shared http_parser DLL")
-+
-+parser.add_option("--shared-http-parser-libname",
-+ action="store",
-+ dest="shared_http_parser_libname",
-+ help="Alternative lib name to link to (default: 'http_parser')")
-+
- parser.add_option("--with-dtrace",
- action="store_true",
- dest="with_dtrace",
-@@ -400,6 +420,20 @@ def configure_libz(o):
- o['include_dirs'] += [options.shared_zlib_includes]
-
-
-+def configure_http_parser(o):
-+ o['variables']['node_shared_http_parser'] = b(options.shared_http_parser)
-+
-+ # assume shared http_parser if one of these is set?
-+ if options.shared_http_parser_libpath:
-+ o['libraries'] += ['-L%s' % options.shared_http_parser_libpath]
-+ if options.shared_http_parser_libname:
-+ o['libraries'] += ['-l%s' % options.shared_http_parser_libname]
-+ elif options.shared_http_parser:
-+ o['libraries'] += ['-lhttp_parser']
-+ if options.shared_http_parser_includes:
-+ o['include_dirs'] += [options.shared_http_parser_includes]
-+
-+
- def configure_v8(o):
- o['variables']['v8_use_snapshot'] = b(not options.without_snapshot)
- o['variables']['node_shared_v8'] = b(options.shared_v8)
-@@ -453,6 +487,7 @@ output = {
-
- configure_node(output)
- configure_libz(output)
-+configure_http_parser(output)
- configure_v8(output)
- configure_openssl(output)
-
-diff --git a/doc/api/process.markdown b/doc/api/process.markdown
-index d8612600c6530b3febe9316b3230412d450a2ca5..41b163a15532f829a7d6c2b88ae9a9f31de0a9c8 100644
---- a/doc/api/process.markdown
-+++ b/doc/api/process.markdown
-@@ -299,6 +299,7 @@ An example of the possible output looks like:
- { host_arch: 'x64',
- node_install_npm: 'true',
- node_prefix: '',
-+ node_shared_http_parser: 'false',
- node_shared_v8: 'false',
- node_shared_zlib: 'false',
- node_use_dtrace: 'false',
-diff --git a/node.gyp b/node.gyp
-index 939870a56157ab4410cd668be36689d092894ca1..a9903cd1c42cab4295d79d452ef1187c7fa7dbe3 100644
---- a/node.gyp
-+++ b/node.gyp
-@@ -8,6 +8,7 @@
- 'node_use_etw%': 'false',
- 'node_shared_v8%': 'false',
- 'node_shared_zlib%': 'false',
-+ 'node_shared_http_parser%': 'false',
- 'node_use_openssl%': 'true',
- 'node_shared_openssl%': 'false',
- 'library_files': [
-@@ -58,7 +59,6 @@
-
- 'dependencies': [
- 'deps/cares/cares.gyp:cares',
-- 'deps/http_parser/http_parser.gyp:http_parser',
- 'deps/uv/uv.gyp:libuv',
- 'node_js2c#host',
- ],
-@@ -192,6 +192,10 @@
- 'dependencies': [ 'deps/zlib/zlib.gyp:zlib' ],
- }],
-
-+ [ 'node_shared_http_parser=="false"', {
-+ 'dependencies': [ 'deps/http_parser/http_parser.gyp:http_parser' ],
-+ }],
-+
- [ 'OS=="win"', {
- 'sources': [
- 'src/res/node.rc',
---
-1.8.0
-
diff --git a/0002-build-allow-linking-against-system-c-ares.patch b/0002-build-allow-linking-against-system-c-ares.patch
deleted file mode 100644
index 8e32945..0000000
--- a/0002-build-allow-linking-against-system-c-ares.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From a82e1d2bf3b5f2208ceddd1f5a51396a4997fb66 Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher
sgallagh@redhat.com
-Date: Tue, 23 Oct 2012 10:27:19 -0400
-Subject: [PATCH 2/3] build: allow linking against system c-ares
-
----
- configure | 35 +++++++++++++++++++++++++++++++++++
- doc/api/process.markdown | 1 +
- node.gyp | 6 +++++-
- 3 files changed, 41 insertions(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index 1fa522755de68a0eb182dde110b8c4a1a8f4aa7c..a23c04cb77fda65453e4cbe9c916d3d3f14f3d26 100755
---- a/configure
-+++ b/configure
-@@ -144,6 +144,26 @@ parser.add_option("--shared-http-parser-libname",
- dest="shared_http_parser_libname",
- help="Alternative lib name to link to (default: 'http_parser')")
-
-+parser.add_option("--shared-cares",
-+ action="store_true",
-+ dest="shared_cares",
-+ help="Link to a shared cares DLL instead of static linking")
-+
-+parser.add_option("--shared-cares-includes",
-+ action="store",
-+ dest="shared_cares_includes",
-+ help="Directory containing cares header files")
-+
-+parser.add_option("--shared-cares-libpath",
-+ action="store",
-+ dest="shared_cares_libpath",
-+ help="A directory to search for the shared cares DLL")
-+
-+parser.add_option("--shared-cares-libname",
-+ action="store",
-+ dest="shared_cares_libname",
-+ help="Alternative lib name to link to (default: 'cares')")
-+
- parser.add_option("--with-dtrace",
- action="store_true",
- dest="with_dtrace",
-@@ -434,6 +454,20 @@ def configure_http_parser(o):
- o['include_dirs'] += [options.shared_http_parser_includes]
-
-
-+def configure_cares(o):
-+ o['variables']['node_shared_cares'] = b(options.shared_cares)
-+
-+ # assume shared cares if one of these is set?
-+ if options.shared_cares_libpath:
-+ o['libraries'] += ['-L%s' % options.shared_cares_libpath]
-+ if options.shared_cares_libname:
-+ o['libraries'] += ['-l%s' % options.shared_cares_libname]
-+ elif options.shared_cares:
-+ o['libraries'] += ['-lcares']
-+ if options.shared_cares_includes:
-+ o['include_dirs'] += [options.shared_cares_includes]
-+
-+
- def configure_v8(o):
- o['variables']['v8_use_snapshot'] = b(not options.without_snapshot)
- o['variables']['node_shared_v8'] = b(options.shared_v8)
-@@ -488,6 +522,7 @@ output = {
- configure_node(output)
- configure_libz(output)
- configure_http_parser(output)
-+configure_cares(output)
- configure_v8(output)
- configure_openssl(output)
-
-diff --git a/doc/api/process.markdown b/doc/api/process.markdown
-index 41b163a15532f829a7d6c2b88ae9a9f31de0a9c8..1593eec879ff5141d13cee548df4675e9a18213c 100644
---- a/doc/api/process.markdown
-+++ b/doc/api/process.markdown
-@@ -299,6 +299,7 @@ An example of the possible output looks like:
- { host_arch: 'x64',
- node_install_npm: 'true',
- node_prefix: '',
-+ node_shared_cares: 'false',
- node_shared_http_parser: 'false',
- node_shared_v8: 'false',
- node_shared_zlib: 'false',
-diff --git a/node.gyp b/node.gyp
-index a9903cd1c42cab4295d79d452ef1187c7fa7dbe3..ca1a9f30503c40099fe4d1770887750fb681d5b9 100644
---- a/node.gyp
-+++ b/node.gyp
-@@ -9,6 +9,7 @@
- 'node_shared_v8%': 'false',
- 'node_shared_zlib%': 'false',
- 'node_shared_http_parser%': 'false',
-+ 'node_shared_cares%': 'false',
- 'node_use_openssl%': 'true',
- 'node_shared_openssl%': 'false',
- 'library_files': [
-@@ -58,7 +59,6 @@
- 'type': 'executable',
-
- 'dependencies': [
-- 'deps/cares/cares.gyp:cares',
- 'deps/uv/uv.gyp:libuv',
- 'node_js2c#host',
- ],
-@@ -196,6 +196,10 @@
- 'dependencies': [ 'deps/http_parser/http_parser.gyp:http_parser' ],
- }],
-
-+ [ 'node_shared_cares=="false"', {
-+ 'dependencies': [ 'deps/cares/cares.gyp:cares' ],
-+ }],
-+
- [ 'OS=="win"', {
- 'sources': [
- 'src/res/node.rc',
---
-1.8.0
-
diff --git a/0003-build-allow-linking-against-system-libuv.patch b/0003-build-allow-linking-against-system-libuv.patch
deleted file mode 100644
index 9e542cd..0000000
--- a/0003-build-allow-linking-against-system-libuv.patch
+++ /dev/null
@@ -1,117 +0,0 @@
-From c11c6c57eb3f87d32207bf5e86a2e53cbabc8a60 Mon Sep 17 00:00:00 2001
-From: Stephen Gallagher
sgallagh@redhat.com
-Date: Tue, 23 Oct 2012 19:54:22 -0400
-Subject: [PATCH 3/3] build: allow linking against system libuv
-
----
- configure | 35 +++++++++++++++++++++++++++++++++++
- doc/api/process.markdown | 1 +
- node.gyp | 6 +++++-
- 3 files changed, 41 insertions(+), 1 deletion(-)
-
-diff --git a/configure b/configure
-index a23c04cb77fda65453e4cbe9c916d3d3f14f3d26..9461d791ec63a63a7271dd3c99ebdf5456032187 100755
---- a/configure
-+++ b/configure
-@@ -164,6 +164,26 @@ parser.add_option("--shared-cares-libname",
- dest="shared_cares_libname",
- help="Alternative lib name to link to (default: 'cares')")
-
-+parser.add_option("--shared-libuv",
-+ action="store_true",
-+ dest="shared_libuv",
-+ help="Link to a shared libuv DLL instead of static linking")
-+
-+parser.add_option("--shared-libuv-includes",
-+ action="store",
-+ dest="shared_libuv_includes",
-+ help="Directory containing libuv header files")
-+
-+parser.add_option("--shared-libuv-libpath",
-+ action="store",
-+ dest="shared_libuv_libpath",
-+ help="A directory to search for the shared libuv DLL")
-+
-+parser.add_option("--shared-libuv-libname",
-+ action="store",
-+ dest="shared_libuv_libname",
-+ help="Alternative lib name to link to (default: 'uv')")
-+
- parser.add_option("--with-dtrace",
- action="store_true",
- dest="with_dtrace",
-@@ -468,6 +488,20 @@ def configure_cares(o):
- o['include_dirs'] += [options.shared_cares_includes]
-
-
-+def configure_libuv(o):
-+ o['variables']['node_shared_libuv'] = b(options.shared_libuv)
-+
-+ # assume shared libuv if one of these is set?
-+ if options.shared_libuv_libpath:
-+ o['libraries'] += ['-L%s' % options.shared_libuv_libpath]
-+ if options.shared_libuv_libname:
-+ o['libraries'] += ['-l%s' % options.shared_libuv_libname]
-+ elif options.shared_libuv:
-+ o['libraries'] += ['-luv']
-+ if options.shared_libuv_includes:
-+ o['include_dirs'] += [options.shared_libuv_includes]
-+
-+
- def configure_v8(o):
- o['variables']['v8_use_snapshot'] = b(not options.without_snapshot)
- o['variables']['node_shared_v8'] = b(options.shared_v8)
-@@ -523,6 +557,7 @@ configure_node(output)
- configure_libz(output)
- configure_http_parser(output)
- configure_cares(output)
-+configure_libuv(output)
- configure_v8(output)
- configure_openssl(output)
-
-diff --git a/doc/api/process.markdown b/doc/api/process.markdown
-index 1593eec879ff5141d13cee548df4675e9a18213c..d479238f197e67972ad00412b6ba39eb78e93fa5 100644
---- a/doc/api/process.markdown
-+++ b/doc/api/process.markdown
-@@ -301,6 +301,7 @@ An example of the possible output looks like:
- node_prefix: '',
- node_shared_cares: 'false',
- node_shared_http_parser: 'false',
-+ node_shared_libuv: 'false',
- node_shared_v8: 'false',
- node_shared_zlib: 'false',
- node_use_dtrace: 'false',
-diff --git a/node.gyp b/node.gyp
-index ca1a9f30503c40099fe4d1770887750fb681d5b9..3366535cc70751ca6d591a3428e1acdbb7e0d9c1 100644
---- a/node.gyp
-+++ b/node.gyp
-@@ -10,6 +10,7 @@
- 'node_shared_zlib%': 'false',
- 'node_shared_http_parser%': 'false',
- 'node_shared_cares%': 'false',
-+ 'node_shared_libuv%': 'false',
- 'node_use_openssl%': 'true',
- 'node_shared_openssl%': 'false',
- 'library_files': [
-@@ -59,7 +60,6 @@
- 'type': 'executable',
-
- 'dependencies': [
-- 'deps/uv/uv.gyp:libuv',
- 'node_js2c#host',
- ],
-
-@@ -200,6 +200,10 @@
- 'dependencies': [ 'deps/cares/cares.gyp:cares' ],
- }],
-
-+ [ 'node_shared_libuv=="false"', {
-+ 'dependencies': [ 'deps/uv/uv.gyp:libuv' ],
-+ }],
-+
- [ 'OS=="win"', {
- 'sources': [
- 'src/res/node.rc',
---
-1.8.0
-
diff --git a/nodejs.spec b/nodejs.spec
index 7dd0b82..7771a8d 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
-Version: 0.9.3
-Release: 8%{?dist}
+Version: 0.9.4
+Release: 1%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -24,12 +24,6 @@ Conflicts: node <= 0.3.2-11
# Patches
-# The following patches have been accepted upstream and can
-# be removed once node.js 0.9.4 is released
-Patch0001: 0001-build-allow-linking-against-system-http_parser.patch
-Patch0002: 0002-build-allow-linking-against-system-c-ares.patch
-Patch0003: 0003-build-allow-linking-against-system-libuv.patch
-
# This patch is Fedora-specific and allows building the release
# binaries with debugging symbols
Patch0004: 0004-Build-debugging-symbols-by-default.patch
@@ -41,13 +35,16 @@ Node.js uses an event-driven, non-blocking I/O model that
makes it lightweight and efficient, perfect for data-intensive
real-time applications that run across distributed devices.
+%package docs
+Summary: Node.js API documentation
+Group: Documentation
+
+%description docs
+The API documentation for the Node.js JavaScript runtime.
%prep
%setup -q -n node-v%{version}
-%patch0001 -p1
-%patch0002 -p1
-%patch0003 -p1
%patch0004 -p1
# Make sure nothing gets included from bundled deps:
@@ -76,6 +73,8 @@ find deps/uv -name "*.c" -exec rm -f {} ;
find deps/uv -name "*.h" -exec rm -f {} ;
%build
+export CFLAGS='%{optflags}'
+export CXXFLAGS='%{optflags}'
./configure --prefix=%{_prefix} \
--shared-v8 \
--shared-openssl \
@@ -99,12 +98,27 @@ rm -rf %{buildroot}/%{_prefix}/lib/dtrace
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
+#install documentation
+mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-doc-%{version}/html
+cp -pr doc/* %{buildroot}%{_defaultdocdir}/%{name}-doc-%{version}/html
+rm -f %{_defaultdocdir}/%{name}-docs-%{version}/html/nodejs.1
+
%files
%doc ChangeLog LICENSE README.md AUTHORS
%{_bindir}/node
%{_mandir}/man1/node.*
+%files docs
+%{_defaultdocdir}/%{name}-docs-%{version}
+%doc LICENSE
+
%changelog
+* Wed Dec 26 2012 T.C. Hollingsworth
tchollingsworth@gmail.com - 0.9.4-1
+- new upstream release 0.9.4
+- system library patches are now upstream
+- respect optflags
+- include documentation in subpackage
+
* Wed Dec 19 2012 Dan Horák <dan[at]danny.cz> - 0.9.3-8
- set exclusive arch list to match v8
diff --git a/sources b/sources
index 76ee3cf..cd8831a 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-4a7576567ddd8bb13b763d578d9481f0 node-v0.9.3.tar.gz
+4898a22b91362bf3cc9525cbc2efb509 node-v0.9.4.tar.gz
commit dade4889bb4ed32dbb46ca3a2ebf5d09e90a21af
Author: Dan Horák
dan@danny.cz
Date: Wed Dec 19 12:18:24 2012 +0100
set exclusive arch list to match v8
diff --git a/nodejs.spec b/nodejs.spec
index abac2a4..7dd0b82 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.3
-Release: 7%{?dist}
+Release: 8%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -14,6 +14,9 @@ BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
+# Exclusive archs must match v8
+ExclusiveArch: %{ix86} x86_64 %{arm}
+
# Node.js currently has a conflict with the 'node' package in Fedora
# The ham-radio group has agreed to rename their binary for us, but
# in the meantime, we're setting an explicit Conflicts: here
@@ -102,6 +105,9 @@ chmod 0755 %{buildroot}/%{_bindir}/node
%{_mandir}/man1/node.*
%changelog
+* Wed Dec 19 2012 Dan Horák <dan[at]danny.cz> - 0.9.3-8
+- set exclusive arch list to match v8
+
* Tue Dec 18 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-7
- Add remaining changes from code review
- Remove unnecessary BuildRequires on findutils
commit f7022ed210c7a866906828e2cb3d70133d22f115
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Dec 18 08:55:24 2012 -0500
Add remaining changes from code review
- Remove unnecessary BuildRequires on findutils
- Remove %clean section
diff --git a/nodejs.spec b/nodejs.spec
index 3593e12..abac2a4 100644
--- a/nodejs.spec
+++ b/nodejs.spec
@@ -1,6 +1,6 @@
Name: nodejs
Version: 0.9.3
-Release: 6%{?dist}
+Release: 7%{?dist}
Summary: JavaScript runtime
License: MIT and ASL 2.0 and ISC and BSD
Group: Development/Languages
@@ -10,7 +10,6 @@ BuildRequires: v8-devel
BuildRequires: http-parser-devel >= 2.0
BuildRequires: libuv-devel
BuildRequires: c-ares-devel
-BuildRequires: findutils
BuildRequires: zlib-devel
# Node.js requires some features from openssl 1.0.1 for SPDY support
BuildRequires: openssl-devel >= 1:1.0.1
@@ -97,17 +96,22 @@ rm -rf %{buildroot}/%{_prefix}/lib/dtrace
# Set the binary permissions properly
chmod 0755 %{buildroot}/%{_bindir}/node
-%clean
-rm -rf $RPM_BUILD_ROOT
-
%files
%doc ChangeLog LICENSE README.md AUTHORS
%{_bindir}/node
%{_mandir}/man1/node.*
%changelog
-* Fri Dec 14 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-6
+* Tue Dec 18 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-7
+- Add remaining changes from code review
+- Remove unnecessary BuildRequires on findutils
+- Remove %%clean section
+* Fri Dec 14 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-6
+- Fixes from code review
+- Fix executable permissions
+- Correct the License field
+- Build debuginfo properly
* Thu Dec 13 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-5
- Return back to using the standard binary name
commit cdb693ef29312b0bc0984a9137473e4d78f0e4cb
Author: Stephen Gallagher
sgallagh@redhat.com
Date: Tue Dec 18 08:51:29 2012 -0500
Initial import (#815018).
diff --git a/.gitignore b/.gitignore
index e69de29..114bd65 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/node-v0.9.3.tar.gz
diff --git a/0001-build-allow-linking-against-system-http_parser.patch b/0001-build-allow-linking-against-system-http_parser.patch
new file mode 100644
index 0000000..bd18367
--- /dev/null
+++ b/0001-build-allow-linking-against-system-http_parser.patch
@@ -0,0 +1,117 @@
+From 0fc5e8b88b7ac7e47deb689e866836434792224e Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Tue, 23 Oct 2012 09:01:26 -0400
+Subject: [PATCH 1/3] build: allow linking against system http_parser
+
+---
+ configure | 35 +++++++++++++++++++++++++++++++++++
+ doc/api/process.markdown | 1 +
+ node.gyp | 6 +++++-
+ 3 files changed, 41 insertions(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index 1f1343441a5f5fb00bfab2b3b1ec6475820efa13..1fa522755de68a0eb182dde110b8c4a1a8f4aa7c 100755
+--- a/configure
++++ b/configure
+@@ -124,6 +124,26 @@ parser.add_option("--shared-zlib-libname",
+ dest="shared_zlib_libname",
+ help="Alternative lib name to link to (default: 'z')")
+
++parser.add_option("--shared-http-parser",
++ action="store_true",
++ dest="shared_http_parser",
++ help="Link to a shared http_parser DLL instead of static linking")
++
++parser.add_option("--shared-http-parser-includes",
++ action="store",
++ dest="shared_http_parser_includes",
++ help="Directory containing http_parser header files")
++
++parser.add_option("--shared-http-parser-libpath",
++ action="store",
++ dest="shared_http_parser_libpath",
++ help="A directory to search for the shared http_parser DLL")
++
++parser.add_option("--shared-http-parser-libname",
++ action="store",
++ dest="shared_http_parser_libname",
++ help="Alternative lib name to link to (default: 'http_parser')")
++
+ parser.add_option("--with-dtrace",
+ action="store_true",
+ dest="with_dtrace",
+@@ -400,6 +420,20 @@ def configure_libz(o):
+ o['include_dirs'] += [options.shared_zlib_includes]
+
+
++def configure_http_parser(o):
++ o['variables']['node_shared_http_parser'] = b(options.shared_http_parser)
++
++ # assume shared http_parser if one of these is set?
++ if options.shared_http_parser_libpath:
++ o['libraries'] += ['-L%s' % options.shared_http_parser_libpath]
++ if options.shared_http_parser_libname:
++ o['libraries'] += ['-l%s' % options.shared_http_parser_libname]
++ elif options.shared_http_parser:
++ o['libraries'] += ['-lhttp_parser']
++ if options.shared_http_parser_includes:
++ o['include_dirs'] += [options.shared_http_parser_includes]
++
++
+ def configure_v8(o):
+ o['variables']['v8_use_snapshot'] = b(not options.without_snapshot)
+ o['variables']['node_shared_v8'] = b(options.shared_v8)
+@@ -453,6 +487,7 @@ output = {
+
+ configure_node(output)
+ configure_libz(output)
++configure_http_parser(output)
+ configure_v8(output)
+ configure_openssl(output)
+
+diff --git a/doc/api/process.markdown b/doc/api/process.markdown
+index d8612600c6530b3febe9316b3230412d450a2ca5..41b163a15532f829a7d6c2b88ae9a9f31de0a9c8 100644
+--- a/doc/api/process.markdown
++++ b/doc/api/process.markdown
+@@ -299,6 +299,7 @@ An example of the possible output looks like:
+ { host_arch: 'x64',
+ node_install_npm: 'true',
+ node_prefix: '',
++ node_shared_http_parser: 'false',
+ node_shared_v8: 'false',
+ node_shared_zlib: 'false',
+ node_use_dtrace: 'false',
+diff --git a/node.gyp b/node.gyp
+index 939870a56157ab4410cd668be36689d092894ca1..a9903cd1c42cab4295d79d452ef1187c7fa7dbe3 100644
+--- a/node.gyp
++++ b/node.gyp
+@@ -8,6 +8,7 @@
+ 'node_use_etw%': 'false',
+ 'node_shared_v8%': 'false',
+ 'node_shared_zlib%': 'false',
++ 'node_shared_http_parser%': 'false',
+ 'node_use_openssl%': 'true',
+ 'node_shared_openssl%': 'false',
+ 'library_files': [
+@@ -58,7 +59,6 @@
+
+ 'dependencies': [
+ 'deps/cares/cares.gyp:cares',
+- 'deps/http_parser/http_parser.gyp:http_parser',
+ 'deps/uv/uv.gyp:libuv',
+ 'node_js2c#host',
+ ],
+@@ -192,6 +192,10 @@
+ 'dependencies': [ 'deps/zlib/zlib.gyp:zlib' ],
+ }],
+
++ [ 'node_shared_http_parser=="false"', {
++ 'dependencies': [ 'deps/http_parser/http_parser.gyp:http_parser' ],
++ }],
++
+ [ 'OS=="win"', {
+ 'sources': [
+ 'src/res/node.rc',
+--
+1.8.0
+
diff --git a/0002-build-allow-linking-against-system-c-ares.patch b/0002-build-allow-linking-against-system-c-ares.patch
new file mode 100644
index 0000000..8e32945
--- /dev/null
+++ b/0002-build-allow-linking-against-system-c-ares.patch
@@ -0,0 +1,117 @@
+From a82e1d2bf3b5f2208ceddd1f5a51396a4997fb66 Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Tue, 23 Oct 2012 10:27:19 -0400
+Subject: [PATCH 2/3] build: allow linking against system c-ares
+
+---
+ configure | 35 +++++++++++++++++++++++++++++++++++
+ doc/api/process.markdown | 1 +
+ node.gyp | 6 +++++-
+ 3 files changed, 41 insertions(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index 1fa522755de68a0eb182dde110b8c4a1a8f4aa7c..a23c04cb77fda65453e4cbe9c916d3d3f14f3d26 100755
+--- a/configure
++++ b/configure
+@@ -144,6 +144,26 @@ parser.add_option("--shared-http-parser-libname",
+ dest="shared_http_parser_libname",
+ help="Alternative lib name to link to (default: 'http_parser')")
+
++parser.add_option("--shared-cares",
++ action="store_true",
++ dest="shared_cares",
++ help="Link to a shared cares DLL instead of static linking")
++
++parser.add_option("--shared-cares-includes",
++ action="store",
++ dest="shared_cares_includes",
++ help="Directory containing cares header files")
++
++parser.add_option("--shared-cares-libpath",
++ action="store",
++ dest="shared_cares_libpath",
++ help="A directory to search for the shared cares DLL")
++
++parser.add_option("--shared-cares-libname",
++ action="store",
++ dest="shared_cares_libname",
++ help="Alternative lib name to link to (default: 'cares')")
++
+ parser.add_option("--with-dtrace",
+ action="store_true",
+ dest="with_dtrace",
+@@ -434,6 +454,20 @@ def configure_http_parser(o):
+ o['include_dirs'] += [options.shared_http_parser_includes]
+
+
++def configure_cares(o):
++ o['variables']['node_shared_cares'] = b(options.shared_cares)
++
++ # assume shared cares if one of these is set?
++ if options.shared_cares_libpath:
++ o['libraries'] += ['-L%s' % options.shared_cares_libpath]
++ if options.shared_cares_libname:
++ o['libraries'] += ['-l%s' % options.shared_cares_libname]
++ elif options.shared_cares:
++ o['libraries'] += ['-lcares']
++ if options.shared_cares_includes:
++ o['include_dirs'] += [options.shared_cares_includes]
++
++
+ def configure_v8(o):
+ o['variables']['v8_use_snapshot'] = b(not options.without_snapshot)
+ o['variables']['node_shared_v8'] = b(options.shared_v8)
+@@ -488,6 +522,7 @@ output = {
+ configure_node(output)
+ configure_libz(output)
+ configure_http_parser(output)
++configure_cares(output)
+ configure_v8(output)
+ configure_openssl(output)
+
+diff --git a/doc/api/process.markdown b/doc/api/process.markdown
+index 41b163a15532f829a7d6c2b88ae9a9f31de0a9c8..1593eec879ff5141d13cee548df4675e9a18213c 100644
+--- a/doc/api/process.markdown
++++ b/doc/api/process.markdown
+@@ -299,6 +299,7 @@ An example of the possible output looks like:
+ { host_arch: 'x64',
+ node_install_npm: 'true',
+ node_prefix: '',
++ node_shared_cares: 'false',
+ node_shared_http_parser: 'false',
+ node_shared_v8: 'false',
+ node_shared_zlib: 'false',
+diff --git a/node.gyp b/node.gyp
+index a9903cd1c42cab4295d79d452ef1187c7fa7dbe3..ca1a9f30503c40099fe4d1770887750fb681d5b9 100644
+--- a/node.gyp
++++ b/node.gyp
+@@ -9,6 +9,7 @@
+ 'node_shared_v8%': 'false',
+ 'node_shared_zlib%': 'false',
+ 'node_shared_http_parser%': 'false',
++ 'node_shared_cares%': 'false',
+ 'node_use_openssl%': 'true',
+ 'node_shared_openssl%': 'false',
+ 'library_files': [
+@@ -58,7 +59,6 @@
+ 'type': 'executable',
+
+ 'dependencies': [
+- 'deps/cares/cares.gyp:cares',
+ 'deps/uv/uv.gyp:libuv',
+ 'node_js2c#host',
+ ],
+@@ -196,6 +196,10 @@
+ 'dependencies': [ 'deps/http_parser/http_parser.gyp:http_parser' ],
+ }],
+
++ [ 'node_shared_cares=="false"', {
++ 'dependencies': [ 'deps/cares/cares.gyp:cares' ],
++ }],
++
+ [ 'OS=="win"', {
+ 'sources': [
+ 'src/res/node.rc',
+--
+1.8.0
+
diff --git a/0003-build-allow-linking-against-system-libuv.patch b/0003-build-allow-linking-against-system-libuv.patch
new file mode 100644
index 0000000..9e542cd
--- /dev/null
+++ b/0003-build-allow-linking-against-system-libuv.patch
@@ -0,0 +1,117 @@
+From c11c6c57eb3f87d32207bf5e86a2e53cbabc8a60 Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Tue, 23 Oct 2012 19:54:22 -0400
+Subject: [PATCH 3/3] build: allow linking against system libuv
+
+---
+ configure | 35 +++++++++++++++++++++++++++++++++++
+ doc/api/process.markdown | 1 +
+ node.gyp | 6 +++++-
+ 3 files changed, 41 insertions(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index a23c04cb77fda65453e4cbe9c916d3d3f14f3d26..9461d791ec63a63a7271dd3c99ebdf5456032187 100755
+--- a/configure
++++ b/configure
+@@ -164,6 +164,26 @@ parser.add_option("--shared-cares-libname",
+ dest="shared_cares_libname",
+ help="Alternative lib name to link to (default: 'cares')")
+
++parser.add_option("--shared-libuv",
++ action="store_true",
++ dest="shared_libuv",
++ help="Link to a shared libuv DLL instead of static linking")
++
++parser.add_option("--shared-libuv-includes",
++ action="store",
++ dest="shared_libuv_includes",
++ help="Directory containing libuv header files")
++
++parser.add_option("--shared-libuv-libpath",
++ action="store",
++ dest="shared_libuv_libpath",
++ help="A directory to search for the shared libuv DLL")
++
++parser.add_option("--shared-libuv-libname",
++ action="store",
++ dest="shared_libuv_libname",
++ help="Alternative lib name to link to (default: 'uv')")
++
+ parser.add_option("--with-dtrace",
+ action="store_true",
+ dest="with_dtrace",
+@@ -468,6 +488,20 @@ def configure_cares(o):
+ o['include_dirs'] += [options.shared_cares_includes]
+
+
++def configure_libuv(o):
++ o['variables']['node_shared_libuv'] = b(options.shared_libuv)
++
++ # assume shared libuv if one of these is set?
++ if options.shared_libuv_libpath:
++ o['libraries'] += ['-L%s' % options.shared_libuv_libpath]
++ if options.shared_libuv_libname:
++ o['libraries'] += ['-l%s' % options.shared_libuv_libname]
++ elif options.shared_libuv:
++ o['libraries'] += ['-luv']
++ if options.shared_libuv_includes:
++ o['include_dirs'] += [options.shared_libuv_includes]
++
++
+ def configure_v8(o):
+ o['variables']['v8_use_snapshot'] = b(not options.without_snapshot)
+ o['variables']['node_shared_v8'] = b(options.shared_v8)
+@@ -523,6 +557,7 @@ configure_node(output)
+ configure_libz(output)
+ configure_http_parser(output)
+ configure_cares(output)
++configure_libuv(output)
+ configure_v8(output)
+ configure_openssl(output)
+
+diff --git a/doc/api/process.markdown b/doc/api/process.markdown
+index 1593eec879ff5141d13cee548df4675e9a18213c..d479238f197e67972ad00412b6ba39eb78e93fa5 100644
+--- a/doc/api/process.markdown
++++ b/doc/api/process.markdown
+@@ -301,6 +301,7 @@ An example of the possible output looks like:
+ node_prefix: '',
+ node_shared_cares: 'false',
+ node_shared_http_parser: 'false',
++ node_shared_libuv: 'false',
+ node_shared_v8: 'false',
+ node_shared_zlib: 'false',
+ node_use_dtrace: 'false',
+diff --git a/node.gyp b/node.gyp
+index ca1a9f30503c40099fe4d1770887750fb681d5b9..3366535cc70751ca6d591a3428e1acdbb7e0d9c1 100644
+--- a/node.gyp
++++ b/node.gyp
+@@ -10,6 +10,7 @@
+ 'node_shared_zlib%': 'false',
+ 'node_shared_http_parser%': 'false',
+ 'node_shared_cares%': 'false',
++ 'node_shared_libuv%': 'false',
+ 'node_use_openssl%': 'true',
+ 'node_shared_openssl%': 'false',
+ 'library_files': [
+@@ -59,7 +60,6 @@
+ 'type': 'executable',
+
+ 'dependencies': [
+- 'deps/uv/uv.gyp:libuv',
+ 'node_js2c#host',
+ ],
+
+@@ -200,6 +200,10 @@
+ 'dependencies': [ 'deps/cares/cares.gyp:cares' ],
+ }],
+
++ [ 'node_shared_libuv=="false"', {
++ 'dependencies': [ 'deps/uv/uv.gyp:libuv' ],
++ }],
++
+ [ 'OS=="win"', {
+ 'sources': [
+ 'src/res/node.rc',
+--
+1.8.0
+
diff --git a/0004-Build-debugging-symbols-by-default.patch b/0004-Build-debugging-symbols-by-default.patch
new file mode 100644
index 0000000..796227e
--- /dev/null
+++ b/0004-Build-debugging-symbols-by-default.patch
@@ -0,0 +1,25 @@
+From 93eb51852e0d9cdf5aebc6212eee5cb3273ddbc4 Mon Sep 17 00:00:00 2001
+From: Stephen Gallagher
sgallagh@redhat.com
+Date: Fri, 14 Dec 2012 08:33:47 -0500
+Subject: [PATCH 4/4] Build debugging symbols by default
+
+---
+ configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure b/configure
+index 9461d791ec63a63a7271dd3c99ebdf5456032187..ff3e75fd655ad4431dd402a200dbb810bc00eba2 100755
+--- a/configure
++++ b/configure
+@@ -550,7 +550,7 @@ output = {
+ 'include_dirs': [],
+ 'libraries': [],
+ 'defines': [],
+- 'cflags': [],
++ 'cflags': ['-g'],
+ }
+
+ configure_node(output)
+--
+1.8.0.1
+
diff --git a/nodejs.spec b/nodejs.spec
new file mode 100644
index 0000000..3593e12
--- /dev/null
+++ b/nodejs.spec
@@ -0,0 +1,129 @@
+Name: nodejs
+Version: 0.9.3
+Release: 6%{?dist}
+Summary: JavaScript runtime
+License: MIT and ASL 2.0 and ISC and BSD
+Group: Development/Languages
+URL:
http://nodejs.org/
+Source0:
http://nodejs.org/dist/v%%7Bversion%7D/node-v%%7Bversion%7D.tar.gz
+BuildRequires: v8-devel
+BuildRequires: http-parser-devel >= 2.0
+BuildRequires: libuv-devel
+BuildRequires: c-ares-devel
+BuildRequires: findutils
+BuildRequires: zlib-devel
+# Node.js requires some features from openssl 1.0.1 for SPDY support
+BuildRequires: openssl-devel >= 1:1.0.1
+
+# Node.js currently has a conflict with the 'node' package in Fedora
+# The ham-radio group has agreed to rename their binary for us, but
+# in the meantime, we're setting an explicit Conflicts: here
+Conflicts: node <= 0.3.2-11
+
+# Patches
+
+# The following patches have been accepted upstream and can
+# be removed once node.js 0.9.4 is released
+Patch0001: 0001-build-allow-linking-against-system-http_parser.patch
+Patch0002: 0002-build-allow-linking-against-system-c-ares.patch
+Patch0003: 0003-build-allow-linking-against-system-libuv.patch
+
+# This patch is Fedora-specific and allows building the release
+# binaries with debugging symbols
+Patch0004: 0004-Build-debugging-symbols-by-default.patch
+
+%description
+Node.js is a platform built on Chrome's JavaScript runtime
+for easily building fast, scalable network applications.
+Node.js uses an event-driven, non-blocking I/O model that
+makes it lightweight and efficient, perfect for data-intensive
+real-time applications that run across distributed devices.
+
+
+%prep
+%setup -q -n node-v%{version}
+
+%patch0001 -p1
+%patch0002 -p1
+%patch0003 -p1
+%patch0004 -p1
+
+# Make sure nothing gets included from bundled deps:
+# We only delete the source and header files, because
+# the remaining build scripts are still used.
+
+find deps/cares -name "*.c" -exec rm -f {} ;
+find deps/cares -name "*.h" -exec rm -f {} ;
+
+find deps/npm -name "*.c" -exec rm -f {} ;
+find deps/npm -name "*.h" -exec rm -f {} ;
+
+find deps/zlib -name "*.c" -exec rm -f {} ;
+find deps/zlib -name "*.h" -exec rm -f {} ;
+
+find deps/v8 -name "*.c" -exec rm -f {} ;
+find deps/v8 -name "*.h" -exec rm -f {} ;
+
+find deps/http_parser -name "*.c" -exec rm -f {} ;
+find deps/http_parser -name "*.h" -exec rm -f {} ;
+
+find deps/openssl -name "*.c" -exec rm -f {} ;
+find deps/openssl -name "*.h" -exec rm -f {} ;
+
+find deps/uv -name "*.c" -exec rm -f {} ;
+find deps/uv -name "*.h" -exec rm -f {} ;
+
+%build
+./configure --prefix=%{_prefix} \
+ --shared-v8 \
+ --shared-openssl \
+ --shared-zlib \
+ --shared-cares \
+ --shared-libuv \
+ --shared-http-parser \
+ --without-npm \
+ --without-dtrace
+make %{?_smp_mflags}
+
+
+%install
+rm -rf %{buildroot}
+
+%make_install INSTALL='install -p'
+
+# and remove dtrace file again
+rm -rf %{buildroot}/%{_prefix}/lib/dtrace
+
+# Set the binary permissions properly
+chmod 0755 %{buildroot}/%{_bindir}/node
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%files
+%doc ChangeLog LICENSE README.md AUTHORS
+%{_bindir}/node
+%{_mandir}/man1/node.*
+
+%changelog
+* Fri Dec 14 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-6
+
+
+* Thu Dec 13 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-5
+- Return back to using the standard binary name
+- Temporarily adding a conflict against the ham radio node package until they
+ complete an agreed rename of their binary.
+
+* Wed Nov 28 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-4
+- Rename binary and manpage to nodejs
+
+* Mon Nov 19 2012 Stephen Gallagher
sgallagh@redhat.com - 0.9.3-3
+- Update to latest upstream development release 0.9.3
+- Include upstreamed patches to unbundle dependent libraries
+
+* Tue Oct 23 2012 Adrian Alves
alvesadrian@fedoraproject.org 0.8.12-1
+- Fixes and Patches suggested by Matthias Runge
+
+* Mon Apr 09 2012 Adrian Alves
alvesadrian@fedoraproject.org 0.6.5
+- First build.
+
diff --git a/sources b/sources
index e69de29..76ee3cf 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+4a7576567ddd8bb13b763d578d9481f0 node-v0.9.3.tar.gz