From 220ae82086bc9c9584fdf0124fd44d658a561dee Mon Sep 17 00:00:00 2001 From: John McLear Date: Mon, 6 Apr 2026 11:21:21 +0100 Subject: [PATCH] fix: use pnpm instead of npm in updatePlugins.sh (#7468) * 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) * 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) --------- 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 8d0f43fd5..a2b30ca3d 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=$(npm 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 install "$@" +exec pnpm --filter ep_etherpad-lite update "$@"