From 6acbdedc34dab0d0d50c8495e85db7dfca308f4c Mon Sep 17 00:00:00 2001 From: John McLear Date: Sun, 5 Apr 2026 16:18:46 +0100 Subject: [PATCH 1/2] fix: use pnpm instead of npm in updatePlugins.sh The script used npm outdated which doesn't work with pnpm workspaces, and pnpm install which doesn't update existing packages. Changed to pnpm outdated and pnpm update respectively. Fixes #6670 Co-Authored-By: Claude Opus 4.6 (1M context) --- bin/updatePlugins.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/updatePlugins.sh b/bin/updatePlugins.sh index 8d0f43fd5cc..ebedc65c5bc 100755 --- a/bin/updatePlugins.sh +++ b/bin/updatePlugins.sh @@ -2,10 +2,10 @@ set -e mydir=$(cd "${0%/*}" && pwd -P) || exit 1 cd "${mydir}"/.. -OUTDATED=$(npm outdated --depth=0 | awk '{print $1}' | grep '^ep_') || { +OUTDATED=$(pnpm outdated --depth=0 | awk '{print $1}' | grep '^ep_') || { echo "All plugins are up-to-date" exit 0 } set -- ${OUTDATED} echo "Updating plugins: $*" -exec pnpm install "$@" +exec pnpm update "$@" From fce4d05c2f20b84c7b34f70761c8ce93feff4c5b Mon Sep 17 00:00:00 2001 From: John McLear Date: Mon, 6 Apr 2026 10:43:35 +0100 Subject: [PATCH 2/2] fix: scope plugin updates to ep_etherpad-lite and exclude core package - Use --filter ep_etherpad-lite so pnpm operates on the right workspace - Exclude ep_etherpad-lite from the plugin list - Handle pnpm outdated exit codes correctly (returns 1 when outdated) Co-Authored-By: Claude Opus 4.6 (1M context) --- bin/updatePlugins.sh | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/bin/updatePlugins.sh b/bin/updatePlugins.sh index ebedc65c5bc..a2b30ca3d34 100755 --- a/bin/updatePlugins.sh +++ b/bin/updatePlugins.sh @@ -2,10 +2,12 @@ set -e mydir=$(cd "${0%/*}" && pwd -P) || exit 1 cd "${mydir}"/.. -OUTDATED=$(pnpm outdated --depth=0 | awk '{print $1}' | grep '^ep_') || { +outdated_raw=$(pnpm --filter ep_etherpad-lite outdated --depth=0 2>&1) || true +OUTDATED=$(printf '%s\n' "$outdated_raw" | awk '{print $1}' | grep '^ep_' | grep -v '^ep_etherpad-lite$') || true +if [ -z "$OUTDATED" ]; then echo "All plugins are up-to-date" exit 0 -} +fi set -- ${OUTDATED} echo "Updating plugins: $*" -exec pnpm update "$@" +exec pnpm --filter ep_etherpad-lite update "$@"