From 021cf912084005f4ecd7db06e0bad75353067a46 Mon Sep 17 00:00:00 2001 From: Paolo Insogna Date: Sat, 30 Mar 2024 16:23:30 +0100 Subject: [PATCH] tools: allow local updates for llhttp PR-URL: https://github.com/nodejs/node/pull/52085 Reviewed-By: Michael Dawson Reviewed-By: Rafael Gonzaga Reviewed-By: Marco Ippolito --- tools/dep_updaters/update-llhttp.sh | 40 +++++++++++++++++++--------- tools/dep_updaters/update-openssl.sh | 2 ++ 2 files changed, 30 insertions(+), 12 deletions(-) diff --git a/tools/dep_updaters/update-llhttp.sh b/tools/dep_updaters/update-llhttp.sh index 739819e1a45b69..2f53b0957f46a5 100755 --- a/tools/dep_updaters/update-llhttp.sh +++ b/tools/dep_updaters/update-llhttp.sh @@ -12,18 +12,22 @@ DEPS_DIR="${BASE_DIR}/deps" # shellcheck disable=SC1091 . "$BASE_DIR/tools/dep_updaters/utils.sh" -NEW_VERSION="$("$NODE" --input-type=module <<'EOF' -const res = await fetch('https://api.github.com/repos/nodejs/llhttp/releases/latest', - process.env.GITHUB_TOKEN && { - headers: { - "Authorization": `Bearer ${process.env.GITHUB_TOKEN}` - }, - }); -if (!res.ok) throw new Error(`FetchError: ${res.status} ${res.statusText}`, { cause: res }); -const { tag_name } = await res.json(); -console.log(tag_name.replace('release/v', '')); +if [ -n "$LOCAL_COPY" ]; then + NEW_VERSION=$(node -e "console.log(JSON.parse(require('fs').readFileSync('$LOCAL_COPY/package.json', 'utf-8')).version)") +else + NEW_VERSION="$("$NODE" --input-type=module <<'EOF' + const res = await fetch('https://api.github.com/repos/nodejs/llhttp/releases/latest', + process.env.GITHUB_TOKEN && { + headers: { + "Authorization": `Bearer ${process.env.GITHUB_TOKEN}` + }, + }); + if (!res.ok) throw new Error(`FetchError: ${res.status} ${res.statusText}`, { cause: res }); + const { tag_name } = await res.json(); + console.log(tag_name.replace('release/v', '')); EOF )" +fi CURRENT_MAJOR_VERSION=$(grep "#define LLHTTP_VERSION_MAJOR" ./deps/llhttp/include/llhttp.h | sed -n "s/^.*MAJOR \(.*\)/\1/p") CURRENT_MINOR_VERSION=$(grep "#define LLHTTP_VERSION_MINOR" ./deps/llhttp/include/llhttp.h | sed -n "s/^.*MINOR \(.*\)/\1/p") @@ -48,7 +52,19 @@ cd "$WORKSPACE" echo "Replacing existing llhttp (except GYP and GN build files)" mv "$DEPS_DIR/llhttp/"*.gn "$DEPS_DIR/llhttp/"*.gni "$WORKSPACE/" -if echo "$NEW_VERSION" | grep -qs "/" ; then # Download a release +if [ -n "$LOCAL_COPY" ]; then + echo "Copying llhttp release from $LOCAL_COPY ..." + + echo "Building llhttp ..." + cd "$BASE_DIR" + cd "$LOCAL_COPY" + npm install + RELEASE=$NEW_VERSION make release + + echo "Copying llhttp release ..." + rm -rf "$DEPS_DIR/llhttp" + cp -a release "$DEPS_DIR/llhttp" +elif echo "$NEW_VERSION" | grep -qs "/" ; then # Download a release REPO="git@github.com:$NEW_VERSION.git" BRANCH=$2 [ -z "$BRANCH" ] && BRANCH=main @@ -61,7 +77,7 @@ if echo "$NEW_VERSION" | grep -qs "/" ; then # Download a release echo "Building llhttp ..." npm install - make release + RELEASE=$NEW_VERSION make release echo "Copying llhttp release ..." rm -rf "$DEPS_DIR/llhttp" diff --git a/tools/dep_updaters/update-openssl.sh b/tools/dep_updaters/update-openssl.sh index 1437e9e8b940bd..1cb1d04b5f4ecf 100755 --- a/tools/dep_updaters/update-openssl.sh +++ b/tools/dep_updaters/update-openssl.sh @@ -120,6 +120,8 @@ main() { * ) echo "unknown command: $1" help 1 + + # shellcheck disable=SC2317 exit 1 ;; esac