Repository navigation
1.1.0-alpha.4
Pre-release
Pre-release
This release focuses on a simpler pad creation flow, shared templates, clearer administration, more reliable protected-pad handling, and broader automated compatibility testing.
New features
- Instance-wide pad templates: Administrators can upload and manage shared
.padtemplates. They appear in Nextcloud's template picker for all users and always create a fresh Etherpad pad. - Unified pad creation: The separate entries for protected, public, and external pads in Nextcloud's New menu have been replaced by a single New pad entry. The pad type and shared templates are now selected through Nextcloud's native template picker.
- Configurable pad types: Administrators can independently enable or disable protected and public pads. Existing pads remain usable even when their type is disabled. External pads continue to use their own setting.
- Italian translations: Italian joins German, Spanish, and French as a maintained translation.
Admin settings and diagnostics
- Reorganised the administration page into clearer sections and revised the descriptions to make configuration easier to understand.
- Improved the Etherpad connection test with separate results for the API, API key, browser-facing Etherpad URL, and protected-pad session-cookie setup.
- Unified the session-cookie-domain calculation used by the settings page, diagnostics, and runtime.
- Added clearer, field-specific guidance when a setting needs attention.
Reliability and security
- Session cookie changes. The Etherpad session cookie is now
SameSite=Laxinstead ofNone, so a foreign page that frames a pad URL no longer receives it. From Etherpad 3.0 the cookie is alsoHttpOnly; up to 2.7.3 the pad app reads it in the browser, where that would prevent protected pads from opening. The release is detected from Etherpad's/healthendpoint. Two app settings exist for deployments that need to override either:etherpad_session_cookie_samesiteandetherpad_http_only_session_cookie. - Multiple protected pads can now remain open in different browser tabs without replacing each other's Etherpad session.
- Deleting a protected pad now removes its complete Etherpad group and associated sessions instead of leaving group resources behind.
- Strengthened cleanup and rollback handling when pad creation, binding, restoration, or deletion only partially succeeds.
- Pad opening by file ID is now more reliable for group folders, shares, external storage, and files whose path has changed.
- Hardened legacy Ownpad migration against forged group-pad identifiers.
- Improved concurrent file creation and filename handling, including names containing special characters.
- Fixed restoring
.padfiles from the trash on Nextcloud 31. - Added numerous smaller error-handling and compatibility fixes across pad creation, opening, templates, snapshots, and lifecycle operations.
Testing and maintenance
- Added a disposable Docker-based end-to-end test environment containing Nextcloud, Etherpad, PostgreSQL, and TLS.
- The Playwright suite now runs automatically against Nextcloud 31, 32, and 33 as well as Etherpad 2 and 3.
- Expanded browser and unit coverage for pad creation, templates, shares, protected sessions, trash and restore, lifecycle cleanup, and security-sensitive flows.
- Improved test cleanup so automated runs do not leave files in the Nextcloud trash.
- Updated DOMPurify and rebuilt the distributed frontend bundles with the patched version.
- Cleaned the release archive and excluded development-only Playwright artifacts.
Upgrading
No manual steps. Existing pads, bindings and settings are carried over.
Administrators running a cross-site embed of the /embed/by-id routes should read the SameSite section in docs/etherpad-integration.md before upgrading: the cookie is same-site by default now, and a cross-site embed needs etherpad_session_cookie_samesite=none together with authentication that does not travel in a cookie.