Skip to content

Releases: ether/etherpad

v2.7.0

22 Apr 07:13

Choose a tag to compare

�[34mINFO�[0m Using node as runtime
�[34mINFO�[0m node version to use: v25.2.1
�[34mINFO�[0m node version v25.2.1 already exists in cache
�[34mINFO�[0m Package Manager detected: pnpm
�[34mINFO�[0m pnpm version * is already installed in /home/runner/.local/share/gnpm/_gnpm/pnpm-10.22.0
�[34mINFO�[0m Get all paths to link to: /home/runner/.local/share/gnpm/_gnpm/pnpm
�[34mINFO�[0m Package manager pnpm installed at [/home/runner/.local/share/gnpm/_gnpm/pnpm]
�[34mINFO�[0m Running command with package manager: pnpm

bin@2.7.0 generateChangelog /home/runner/work/etherpad/etherpad/bin
node --import tsx generateReleaseNotes.ts refs/tags/v2.7.0

2.7.0

Breaking changes

  • Abiword has been replaced with LibreOffice for document import/export. If you were using Abiword for DOCX/ODT/PDF conversion, update your settings.json to point soffice at your LibreOffice binary. DOCX export is now supported out of the box.

Notable enhancements

  • Added line numbers to the timeslider so you can follow along with specific lines while replaying a pad's history.
  • Added a playback speed setting to the timeslider — you can now scrub through history faster (or slower) than real time.
  • Creator-owned pad settings defaults: the user who creates a pad now seeds its default settings, giving pad creators more control over initial configuration.
  • Cookie names are now configurable via a prefix setting. Useful when running multiple Etherpads on the same domain and you need to keep their session cookies from colliding.
  • Added a new aceRegisterLineAttributes hook so plugins can preserve custom line attributes across Enter / line-split operations. Documentation for the hook is included.
  • Added a one-line installer script for getting Etherpad running quickly on a fresh machine.
  • Docker images are now published to GitHub Container Registry (GHCR) in addition to Docker Hub.
  • npm publishing of core and plugins has been migrated to OIDC trusted publishing for stronger supply-chain security.

Notable fixes

  • Database drivers are now bundled with Etherpad again, so fresh installs no longer fail to connect to Postgres, MySQL, and friends out of the box. A regression test has been added to prevent this from breaking again.
  • Pending changesets are now flushed immediately after a reconnect instead of being silently dropped, and users are warned when a pending edit is not accepted by the server.
  • Head revision and atext are now captured atomically, preventing the occasional "mismatched apply" errors on busy pads.
  • Clearing authorship colors can now be undone without forcing a client disconnect.
  • Added periodic cleanup of expired/stale sessions from the database, and fixed a race condition in the session cleanup timeout.
  • Error messages returned to clients are now sanitized by default with deduplication, so internal details no longer leak through error responses.
  • Raised the maximum socket.io message size to 10 MB so large pastes no longer get rejected.
  • Dev mode entrypoint paths now respect the x-proxy-path header, fixing reverse-proxy setups in development.
  • Numerous list-related fixes: numbered list wrapped lines now indent correctly, ordered list numbering is preserved across bullet interruptions during export, consecutive numbering survives indented sub-bullets, switching from unordered to ordered resets numbering, and line attributes are preserved across drag-and-drop.
  • Bold (and other) formatting is now retained after copy-paste.
  • Dead-key / compose-key input no longer eats the preceding space.
  • POST API requests with a JSON body no longer time out.
  • appendText now correctly attributes the new text to the specified author.
  • createDiffHTML no longer fails with Not a changeset: undefined.
  • Added padId to the padUpdate / padCreate hook context.
  • Fixed numConnectedUsers to include the joining user in its count.
  • Accessibility improvements: keyboard trap fix, better screen reader support, and aria-live announcements.
  • RTL URL parameter rtl=false now correctly disables RTL mode.
  • Language dropdown is now sorted alphabetically by native name.
  • PageDown now advances the caret by a full page of lines.
  • ESM/CJS interop issues in the Settings module that had been breaking plugin compatibility have been resolved, with setters added to the CJS compatibility layer and regression tests in place.
  • Several Docker build fixes: git submodule handling, hardlink package-import-method for ZFS, and production-only workspace config.

Other

  • Many occurrences of "etherpad-lite" have been renamed to "etherpad" across the codebase and documentation.
  • Pinned 33 transitive dependencies to patched versions to clear out Dependabot security alerts.
  • Restricted GITHUB_TOKEN permissions in the update-plugins workflow.

v2.6.1

26 Jan 21:28

Choose a tag to compare

2.6.1

For those wondering where the new updates are and why it was very quite throughout the last 1 1/2 years – I've been working on a new implementation of Etherpad from scratch in Go. It's called Etherpad-Go and you can find it here: https://github.com/ether/etherpad-go
and a short FAQ about it here: https://github.com/ether/etherpad-go/wiki/FAQ . I'd love to hear your feedback about it either on Discord or issue tracker. There is a README.md that explains how to get started and try it out and also the FAQ can be quite fruitful. Latest release can be found here: https://github.com/ether/etherpad-go/releases/tag/v0.0.4

Notable enhancements and fixes of this release

  • Minor fixes and improvements to the session transfer feature introduced in 2.6.0
  • Dependencies upgrades

v2.6.0

28 Dec 17:25

Choose a tag to compare

2.6.0

Notable enhancements and fixes

  • Added native option to transfer your Etherpad session between browsers. If you use multiple browsers or different PC for Etherpad they are different sessions. Meaning typing on one PC and then switching to another one in the same pad will result in different authorship colors. With this new feature you can now transfer your session to another browser or PC. To do so, open the home page and click on the wheel icon in the top right corner. After that click through the first dialog prompting you to copy a code to your clipboard. On your second browser open the same dialog and switch to "Receive Session" tab. There you can paste the code you copied before and click on "Receive Session". After that your session is transferred, and you can continue editing with the same authorship color as before. Just be aware that you can't have two active sessions at once in a pad.
  • Updated to oidc provider v2.6.0 after resolving compatibility issues.

🎉 For all the people celebrating: Have a happy and awesome new year! 🎉 There is something big on the horizon for Etherpad in 2026. Stay tuned!

v2.5.3

05 Nov 21:23

Choose a tag to compare

Notable enhancements and fixes

  • Fixed an issue with the release script that caused the release to not be created correctly.

v2.5.2

02 Nov 15:06

Choose a tag to compare

Notable enhancements and fixes

  • Fixes the no skin theme having an overlapping
  • Adds a new setting to disable recent pads to be shown. By setting showRecentPads to false in the settings.json file you can disable the recent pads feature on the home screen.
  • Sets the oidc-provider version to 9.5.1 as 9.5.2 crashes Etherpad on startup.

v2.5.1

10 Oct 11:01

Choose a tag to compare

2.5.1

Notable enhancements and fixes

  • Added endpoint for prometheus scraping. You can now scrape the metrics endpoint with prometheus. It is available at /stats/prometheus if you have enableMetrics set to true in your settings.json

  • fixed exposeVersion causing the pad panel to not load correctly

  • fixed admin manage pad url to also take the base path into account

v2.5.0

24 Aug 20:41

Choose a tag to compare

bin@2.5.0 generateChangelog D:\a\etherpad-lite\etherpad-lite\bin
node --import tsx generateReleaseNotes.ts "refs/tags/v2.5.0"

2.5.0

Notable enhancements and fixes

  • 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.
  • Fixed an issue with the no-skin theme with cookie recentPadList feature
  • Fixed layout issues with the no-skin theme

Breaking changes:

  • The api of settings has been changed to use esm. So require is now changed to import. Everything works the same as before.

v2.4.2

03 Aug 14:13

Choose a tag to compare

bin@2.4.2 generateChangelog D:\a\etherpad-lite\etherpad-lite\bin
node --import tsx generateReleaseNotes.ts "refs/tags/v2.4.2"

2.4.2

Notable enhancements and fixes

  • Fixed a german translation in the english translation file.

v2.4.1

02 Aug 12:00

Choose a tag to compare

bin@2.4.1 generateChangelog D:\a\etherpad-lite\etherpad-lite\bin
node --import tsx generateReleaseNotes.ts "refs/tags/v2.4.1"

2.4.1

Notable enhancements and fixes

  • Added generating release through ci cd pipeline.
  • Readded temporarily disabled workflows after release generation works again

v2.3.2

25 Jun 21:02
v2.3.2

Choose a tag to compare

bin@2.3.2 generateChangelog D:\a\etherpad-lite\etherpad-lite\bin
node --import tsx generateReleaseNotes.ts "refs/tags/v2.3.2"

2.3.2

Notable enhancements and fixes

  • Fixed admin ui displaying incorrect text