Last update unexpectedly broke Etherpad (due to old plugins)
-
So, something broke the Etherpad Instance on my Cloudron. Looks like the last update introduced a breaking change...
Updated to express 5.0.0. This is a major update to express that brings a lot of improvements and fixes. Please update all your plugins to the latest version to ensure compatibility. A lot changed in the route matching, and thus old plugins will throw errors and crash Etherpad.
Currently identifying what plugins are at fault.
Did nobody else run into this? I have not seen any announcement upfront that there will be breaking changes. Did I miss them?
-
So, Im trying to follow the Troubleshoot guide in the Etherpad Cloudron docs https://docs.cloudron.io/packages/etherpad/#troubleshooting
But it seems I cant uninstall packages like I should. Any ideas?
root@f0afb254-3680-4818-a073-b7a69bdf5357:/app/code# npm ls 2> /dev/null | grep ep_ └── ep_etherpad-lite@2.5.1 invalid: "workspace:./src" from the root project -> ./src root@f0afb254-3680-4818-a073-b7a69bdf5357:/app/code# cd src/ root@f0afb254-3680-4818-a073-b7a69bdf5357:/app/code/src# npm ls 2> /dev/null | grep ep_ ep_etherpad-lite@2.5.1 /app/code/src ├── ep_align@10.0.2 extraneous -> ./plugin_packages/.versions/ep_align@10.0.2 ├── ep_comments_page@10.0.4 extraneous -> ./plugin_packages/.versions/ep_comments_page@10.0.4 ├── ep_embedded_hyperlinks2@1.2.4 extraneous -> ./plugin_packages/.versions/ep_embedded_hyperlinks2@1.2.4 ├── ep_font_color@0.0.89 extraneous -> ./plugin_packages/.versions/ep_font_color@0.0.89 ├── ep_guest@1.0.37 extraneous -> ./plugin_packages/.versions/ep_guest@1.0.37 ├── ep_headings2@0.2.68 extraneous -> ./plugin_packages/.versions/ep_headings2@0.2.68 ├── ep_markdown@10.0.1 extraneous -> ./plugin_packages/.versions/ep_markdown@10.0.1 ├── ep_openid_connect@3.0.13 extraneous -> ./plugin_packages/.versions/ep_openid_connect@3.0.13 ├── ep_stable_authorid@1.0.5 extraneous -> ./plugin_packages/.versions/ep_stable_authorid@1.0.5 ├── ep_user_displayname@1.0.7 extraneous -> ./plugin_packages/.versions/ep_user_displayname@1.0.7 root@f0afb254-3680-4818-a073-b7a69bdf5357:/app/code/src# npm rm ep_markdown npm error code 127 npm error path /app/code/node_modules/.pnpm/jsdom@27.0.0_postcss@8.5.6/node_modules/jsdom npm error command failed npm error command sh -c npm-run-all prepare:* npm error sh: 1: npm-run-all: not found npm error A complete log of this run can be found in: /root/.npm/_logs/2025-10-20T15_30_26_128Z-debug-0.log -
So, the actual fix was to update the version numbers in /app/data/data/installed_plugins.json through the File Manager. These were the offending versions.
ep_markdown now at 10.0.1 (was 1.0.2)
ep_comments_page now at 10.0.4 (was 1.0.38)
ep_etherpad-lite now at 2.5.1 (was 2.3.0)Claude was quite helpful with everything

/ticket
-
This should have been fixed with 4.4.1 where we now pin all shipped plugins https://git.cloudron.io/packages/etherpad-lite-app/-/blob/master/start.sh?ref_type=heads#L77
Unfortunately we had an intermediate 4.4.0 release, which is by now reverted, but maybe your app is/was on that one?
-
Yes, so with the plugin version pinning we can at least ensure etherpad and plugins work fine together since they are baked into the app package during build time.