711 Commits
Author SHA1 Message Date
b1a9061e5c feat(helm-deps): update chart common 29.6.0 → 29.7.1 (#49740)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `29.6.0` →
`29.7.1` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC96d2F2ZWpzMm1xdHQiLCJhdXRvbWVyZ2UiLCJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-07-02 09:11:49 +02:00
21581d92d5 feat(helm-deps): update chart common 29.5.3 → 29.6.0 (#49561)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `29.5.3` →
`29.6.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC96d2F2ZWpzMm1xdHQiLCJhdXRvbWVyZ2UiLCJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-06-27 14:33:38 +02:00
TrueCharts BotandGitHub ac8abbc8a5 fix(etherpad): update image ghcr.io/ether/etherpad 3.3.1 → 3.3.2 (#49348)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/ether/etherpad](https://redirect.github.com/ether/etherpad) |
patch | `c4bcd4b` → `044e5b5` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

Add the preset `:preserveSemverRanges` to your config if you don't want
to pin your dependencies.

---

### Release Notes

<details>
<summary>ether/etherpad (ghcr.io/ether/etherpad)</summary>

###
[`v3.3.2`](https://redirect.github.com/ether/etherpad/blob/HEAD/CHANGELOG.md#332)

[Compare
Source](https://redirect.github.com/ether/etherpad/compare/3.3.1...3.3.2)

3.3.2 is a bug-fix and dependency-hardening follow-up to 3.3.1. It
rounds out the pad-deletion UX rework (suppressing the recovery token
for durable identities, keeping the token-less Delete button reachable,
and closing a read-only deletion hole), restores the saved-revision
markers that went missing from in-pad history mode in 3.3.x, and adds
env-var overrides so air-gapped installs can switch off Etherpad's
outbound calls without editing the image. It also fixes the `migrateDB`
/ `importSqlFile` / `migrateDirtyDBtoRealDB` CLI scripts against the
promise-based ueberdb2 API, rejects unreachable `.`/`..` pad ids, and
clears a batch of dependency security advisories (including
CVE-2026-54285). On the CI side it unblocks the installer smoke test
(which had been hanging the full 6-hour job ceiling since 3.2.0) and
pins ueberdb2 past a startup-exit regression in the packaged boot.

##### Security

- **Force `@opentelemetry/core` ≥ 2.8.0 (GHSA-8988-4f7v-96qf /
CVE-2026-54285,
[#&#8203;7975](https://redirect.github.com/ether/etherpad/issues/7975)).**
The transitive dep (pulled in via `@elastic/elasticsearch` →
`@elastic/transport`) had a `W3CBaggagePropagator.extract()` that did
not enforce W3C size limits on inbound baggage headers, allowing
unbounded memory allocation. Pinned via a `pnpm-workspace.yaml`
override; satisfies the existing `2.x` range with no parent bump.
- **Resolve open Dependabot security alerts
([#&#8203;7967](https://redirect.github.com/ether/etherpad/issues/7967)).**
Refreshes stale override floors and adds new ones via `pnpm-workspace`
overrides: `form-data` ≥ 4.0.6, `ws` ≥ 8.21.0, `esbuild` ≥ 0.28.1,
`basic-ftp` ≥ 5.3.1 (capped `<6.0.0` to avoid a surprise major on the
plugin-install path), `tar` ≥ 7.5.16, `js-yaml` ≥ 4.2.0, `qs` ≥ 6.15.2,
`ip-address` ≥ 10.1.1, and `@babel/core` ≥ 7.29.6.
- **Reject read-only deletion via token-less paths (part of
[#&#8203;7959](https://redirect.github.com/ether/etherpad/issues/7959) /
[#&#8203;7960](https://redirect.github.com/ether/etherpad/issues/7960)).**
Under `allowPadDeletionByAllUsers` a read-only viewer was granted
`canDeletePad=true`, and the server's `flagOk`/`creatorOk` branches
never checked `session.readonly` — so a read-only link holder could
delete a pad without a token. Read-only sessions are now excluded from
both the client var and the server's token-less authorization paths; a
valid recovery token stays sufficient regardless of session mode.

##### Notable enhancements

- **Pad deletion — suppress the recovery token for durable identities
and relabel the action
([#&#8203;7926](https://redirect.github.com/ether/etherpad/issues/7926)
/
[#&#8203;7930](https://redirect.github.com/ether/etherpad/issues/7930)).**
Building on the `allowPadDeletionByAllUsers` suppression, a creator's
deletion token is now also withheld when they have a *durable* identity
— authenticated (`req.session.user` with a username) **and** the
deployment pins that identity to a stable `authorID` via a `getAuthorId`
hook — since only then does the creator survive a cookie clear or a
different device, making the token redundant. This tightens the previous
"require authentication ⇒ always suppress" rule: without `getAuthorId`
the authorID still comes from the per-browser cookie, so an
authenticated user on a second device is *not* the creator and keeps
getting a token. A new `canDeleteWithoutToken` client var hides the
whole recovery-token disclosure (label, field, submit) when no token is
needed, and the recovery form now renders for all sessions (hidden by
default) so an authenticated creator without a durable mapping still has
UI to enter their token. `API.createPad` returns a `null`
`deletionToken` under `allowPadDeletionByAllUsers`, matching the
socket/UI path.
- **Offline/air-gapped installs — env-var overrides for the update
check, plugin catalog, and updater
([#&#8203;7917](https://redirect.github.com/ether/etherpad/issues/7917),
addresses
[#&#8203;7911](https://redirect.github.com/ether/etherpad/issues/7911)).**
Firewalled deployments could not disable Etherpad's outbound calls
without editing `settings.json` inside the image. The relevant keys are
now wired through the `${ENV:default}` substitution in
`settings.json.docker` and `settings.json.template`:
`PRIVACY_UPDATE_CHECK`, `PRIVACY_PLUGIN_CATALOG`, `UPDATES_TIER` (`off`
= no calls), `UPDATE_SERVER`, plus the docker-only `UPDATES_SOURCE` /
`UPDATES_CHANNEL` / `UPDATES_CHECK_INTERVAL_HOURS` /
`UPDATES_GITHUB_REPO` / `UPDATES_REQUIRE_ADMIN_FOR_STATUS`. A new
"Updates & privacy" section in `doc/docker.md` documents the set;
backend tests parse the shipped configs and fail if the `${ENV}`
placeholders are dropped. Config, docs, and tests only — no runtime code
change.

##### Notable fixes

- **Pad — keep the token-less Delete button reachable without pad-wide
settings
([#&#8203;7959](https://redirect.github.com/ether/etherpad/issues/7959)
/
[#&#8203;7960](https://redirect.github.com/ether/etherpad/issues/7960)).**
The token-less `#delete-pad` button was nested inside the
`enablePadWideSettings`-gated section, so disabling pad-wide settings
removed the only no-token deletion path — and combined with
[#&#8203;7926](https://redirect.github.com/ether/etherpad/issues/7926)
hiding the token disclosure when no token is needed, a user allowed to
delete could be left with no deletion UI at all. The button is now
always rendered (hidden by default) and driven by a `canDeletePad`
client var (creator or `allowPadDeletionByAllUsers`, excluding read-only
sessions), so the plain button and the recovery-token disclosure are
mutually coherent and neither depends on pad-wide settings.
- **History mode — restore the saved-revision markers
([#&#8203;7946](https://redirect.github.com/ether/etherpad/issues/7946)
/
[#&#8203;7948](https://redirect.github.com/ether/etherpad/issues/7948)).**
When
[#&#8203;7659](https://redirect.github.com/ether/etherpad/issues/7659)
moved the timeslider into the pad as an embedded iframe, the user-facing
control became the outer `#history-slider-input`, but the saved-revision
stars were still drawn into the now-hidden iframe `#ui-slider-bar`, so
"Save Revision" appeared to do nothing in in-pad history mode (a 3.3.x
regression). `pad_mode.ts` now bridges the embedded slider's saved
revisions onto the outer slider as percentage-positioned, aria-hidden
star markers (with click-to-seek for mouse users), and the server's
`SAVE_REVISION` handler broadcasts `NEW_SAVEDREV` to the pad room so a
revision saved by a collaborator appears live on an already-open history
slider. A single revision saved at rev 0 now renders too. Adds
Playwright coverage for both the single-client and two-client live
paths.
- **Import dialog — correct the outdated "no converter" help message
([#&#8203;7988](https://redirect.github.com/ether/etherpad/issues/7988)
/
[#&#8203;7989](https://redirect.github.com/ether/etherpad/issues/7989)).**
The notice claimed only plain text and HTML could be imported and linked
to the legacy AbiWord wiki, prompting LibreOffice installs for formats
that already work natively. Etherpad imports `.txt`, `.html`, `.docx`
(via mammoth) and `.etherpad` without LibreOffice; only
`.pdf`/`.odt`/`.doc`/`.rtf` still need it. The message now says so and
points at the documentation site.
- **PadManager — reject unreachable `.` and `..` pad ids
([#&#8203;7962](https://redirect.github.com/ether/etherpad/issues/7962)).**
`isValidPadId` accepted ids consisting only of URL dot-segments, but per
the WHATWG URL standard a browser normalises `/p/.` to `/p/` and `/p/..`
to `/`, so such a pad could be created in the database yet never opened
or exported. These ids are now rejected, and the admin `deletePad`
handler falls back to a raw key purge when `getPad()` throws so any
legacy `.`/`..` pad can still be removed.

##### Internal / contributor-facing

- **CLI — fix the database migration/import scripts against the ueberdb2
promise API
([#&#8203;7982](https://redirect.github.com/ether/etherpad/issues/7982)
/
[#&#8203;7983](https://redirect.github.com/ether/etherpad/issues/7983)).**
`migrateDB.ts` opened source and target databases, copied all keys, then
resolved without closing either — so under ueberdb2 6.1.x the keep-alive
timer kept the process hanging after "Done syncing dbs", and buffered
target writes were only guaranteed flushed on `close()`. It now closes
both databases (flushing writes, clearing the timer) on success and
error paths and exits with an explicit status. `importSqlFile.ts` and
`migrateDirtyDBtoRealDB.ts` were ported off the pre-v6 callback API to
`await db.init()` / `db.set(k, v)` / `db.close()`, removing two
`@ts-ignore`s that hid broken calls and fixing an undefined `length` in
a progress log; `tsc --noEmit` on the bin package is now clean.
- **CI — stop the installer smoke test hanging the 6-hour job ceiling
([#&#8203;7981](https://redirect.github.com/ether/etherpad/issues/7981)).**
The "Installer test" had hung on every ubuntu/macOS run since 3.2.0:
`pnpm run prod` is a nested launcher, so `kill "$PID"; wait "$PID"` only
signalled the outer pnpm and blocked forever if the node server didn't
exit on SIGTERM. Teardown now runs the launcher in its own process
group, kills the whole group (SIGTERM then SIGKILL), drops the blocking
`wait`, and adds an 8-minute `timeout-minutes` backstop to both smoke
steps.
- **CI — run the Debian-package smoke test on PRs
([#&#8203;7969](https://redirect.github.com/ether/etherpad/issues/7969)).**
The packaged-boot smoke test previously ran only on push to `develop` —
i.e. after merge — which is why the ueberdb2 startup-exit regression
turned `develop` red instead of being blocked at PR time. A
`pull_request` trigger (scoped to production-footprint paths) now runs
the build+smoke job on PRs; the release/apt-publish jobs stay
tag-guarded.
- **Release — park the non-functional `ep_etherpad` npm publish
([#&#8203;7922](https://redirect.github.com/ether/etherpad/issues/7922)).**
The `releaseEtherpad` workflow republished `./src` as `ep_etherpad`, a
package with zero dependents that nothing in the repo or any deployment
path consumes, and it had been failing with E404 (no OIDC trusted
publisher configured). The job is now gated behind an explicit `confirm:
true` dispatch input so a stray run fails fast with a clear message,
with the status documented in the workflow header and `AGENTS.MD`.
- **Tests — port the orphaned legacy timeslider specs to Playwright
([#&#8203;7949](https://redirect.github.com/ether/etherpad/issues/7949)).**
The `src/tests/frontend/specs/` mocha suite is run by no CI workflow, so
its timeslider coverage was dead — which is how the
[#&#8203;7946](https://redirect.github.com/ether/etherpad/issues/7946)
history-mode regression reached a release. The still-meaningful cases
(revision labels, export links, deep-link entry) were ported to
`frontend-new` Playwright specs re-targeted at the real in-pad UI, and
the three now-ported legacy specs were deleted.

##### Dependencies

- `ueberdb2` pinned to `6.1.13`. 6.1.10 rewrote the cache/buffer layer
to lazily arm an `.unref()`'d flush timer only when there are dirty
keys, so on a fresh empty dirty DB nothing anchored Node's event loop
and the packaged (.deb/systemd) boot could exit cleanly (code 0) before
`server.listen()` bound the port — failing the Debian-package health
check. The dep was pinned back to the last green release (6.1.9,
[#&#8203;7969](https://redirect.github.com/ether/etherpad/issues/7969))
and then rolled forward to the now-fixed `6.1.13`
([#&#8203;7979](https://redirect.github.com/ether/etherpad/issues/7979)),
pinned exactly rather than with a caret.
- `nodemailer` 8.x → 9.0.1
([#&#8203;7965](https://redirect.github.com/ether/etherpad/issues/7965)
/ [#&#8203;7950](https://redirect.github.com/ether/etherpad/issues/7950)
/
[#&#8203;7976](https://redirect.github.com/ether/etherpad/issues/7976)),
`mongodb` 7.1.1 → 7.3.0
([#&#8203;7941](https://redirect.github.com/ether/etherpad/issues/7941)),
`pg` 8.21.0 → 8.22.0
([#&#8203;7985](https://redirect.github.com/ether/etherpad/issues/7985)),
`undici` → 8.5.0
([#&#8203;7980](https://redirect.github.com/ether/etherpad/issues/7980)
etc.), `oidc-provider` 9.8.4 → 9.8.5
([#&#8203;7973](https://redirect.github.com/ether/etherpad/issues/7973)),
`pdfkit` 0.19.0 → 0.19.1
([#&#8203;7945](https://redirect.github.com/ether/etherpad/issues/7945)),
`semver` 7.8.3 → 7.8.4
([#&#8203;7943](https://redirect.github.com/ether/etherpad/issues/7943)),
and `@radix-ui/react-switch` 1.3.0 → 1.3.1
([#&#8203;7974](https://redirect.github.com/ether/etherpad/issues/7974)).
- Dev/build dependency group updates
([#&#8203;7964](https://redirect.github.com/ether/etherpad/issues/7964),
[#&#8203;7970](https://redirect.github.com/ether/etherpad/issues/7970),
[#&#8203;7978](https://redirect.github.com/ether/etherpad/issues/7978),
[#&#8203;7987](https://redirect.github.com/ether/etherpad/issues/7987),
[#&#8203;7944](https://redirect.github.com/ether/etherpad/issues/7944),
[#&#8203;7951](https://redirect.github.com/ether/etherpad/issues/7951),
[#&#8203;7952](https://redirect.github.com/ether/etherpad/issues/7952),
and others), including `@types/node` 25 → 26, `esbuild` 0.28.0 → 0.28.1,
`eslint` 10.4.1 → 10.5.0, `@playwright/test` 1.60 → 1.61, `vitest` 4.1.8
→ 4.1.9, and `actions/checkout` 6 → 7
([#&#8203;7977](https://redirect.github.com/ether/etherpad/issues/7977)).

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC9ldGhlcnBhZCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvcGF0Y2giXX0=-->
2026-06-22 00:44:56 +00:00
9394df1989 feat(helm-deps): update chart common 29.3.4 → 29.5.3 (#48994)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `29.3.4` →
`29.5.3` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC96d2F2ZWpzMm1xdHQiLCJhdXRvbWVyZ2UiLCJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-06-11 05:24:51 +02:00
TrueCharts BotandGitHub 158b4aa056 fix(etherpad): update image ghcr.io/ether/etherpad 3.3.0 → 3.3.1 (#48988)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/ether/etherpad](https://redirect.github.com/ether/etherpad) |
patch | `e966c52` → `c4bcd4b` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

Add the preset `:preserveSemverRanges` to your config if you don't want
to pin your dependencies.

---

### Release Notes

<details>
<summary>ether/etherpad (ghcr.io/ether/etherpad)</summary>

###
[`v3.3.1`](https://redirect.github.com/ether/etherpad/blob/HEAD/CHANGELOG.md#331)

[Compare
Source](https://redirect.github.com/ether/etherpad/compare/3.3.0...3.3.1)

3.3.1 is a small bug-fix and hardening follow-up to 3.3.0. It closes a
stored-XSS vector in the numbered-list `start` attribute, hardens the
database layer so a dropped connection to PostgreSQL / Redis / RethinkDB
no longer crashes the process (via ueberdb2 6.1.9), and fixes a handful
of pad and admin regressions — the iOS dark-mode status bar, the
settings language dropdown, the pad-deletion modal under
`allowPadDeletionByAllUsers`, and a single unreadable pad blanking the
admin Manage-pads list.

##### Security

- **Pad editor — escape and integer-coerce the numbered-list `start`
attribute (GHSA-f7h5-v9hm-548j,
[#&#8203;7937](https://redirect.github.com/ether/etherpad/issues/7937)).**
A crafted `<ol start>` value flowed unescaped into `domline.ts`, a
distinct client-side sink from the export-path fix in 3.3.0's
[#&#8203;7905](https://redirect.github.com/ether/etherpad/issues/7905).
The value is now integer-coerced and HTML-escaped before it reaches the
DOM. A jsdom regression test covers the sink.

##### Notable fixes

- **Skin — paint the root canvas so iOS dark mode has no white status
bar
([#&#8203;7606](https://redirect.github.com/ether/etherpad/issues/7606)
/
[#&#8203;7931](https://redirect.github.com/ether/etherpad/issues/7931)).**
iOS Safari paints the top safe area from the `html` root background,
which `theme-color` (an Android address-bar hint) does not affect, so
dark-mode pads showed a white status-bar strip on iOS. Colibris now sets
the root background and `color-scheme` so the safe area matches the
editor.
- **Settings — show the detected language in the dropdown
([#&#8203;7925](https://redirect.github.com/ether/etherpad/issues/7925)
/
[#&#8203;7928](https://redirect.github.com/ether/etherpad/issues/7928)).**
The settings language `<select>` did not reflect the language Etherpad
had actually auto-detected; it now shows the active selection.
- **Pad — don't issue a deletion token (or show its modal) when
`allowPadDeletionByAllUsers` is on
([#&#8203;7929](https://redirect.github.com/ether/etherpad/issues/7929)).**
With pad deletion open to all users the client still minted a deletion
token and surfaced the confirm modal; both are now suppressed in that
configuration.
- **Admin — one unreadable pad no longer empties the Manage-pads list
([#&#8203;7935](https://redirect.github.com/ether/etherpad/issues/7935)
/
[#&#8203;7938](https://redirect.github.com/ether/etherpad/issues/7938)).**
A single pad that failed to read could throw out of the list-hydration
path and blank the entire admin Manage-pads view; the read is now
guarded per-pad so the rest of the list still renders.

##### Internal / contributor-facing

- **CI — downstream client compatibility gate
([#&#8203;7923](https://redirect.github.com/ether/etherpad/issues/7923)
/ [#&#8203;7924](https://redirect.github.com/ether/etherpad/issues/7924)
/
[#&#8203;7927](https://redirect.github.com/ether/etherpad/issues/7927)).**
A new gate smoke-tests the published `etherpad-pad`, `etherpad-cli`, and
`etherpad-desktop` clients against the server build (Phase 1 + Phase 2),
with robust per-client error handling in `run-clients.sh` so one
client's failure is reported rather than masking the others.
- **CI — verify Etherpad boots offline
([#&#8203;7936](https://redirect.github.com/ether/etherpad/issues/7936)).**
Adds a test step that confirms a built Etherpad starts with no network
access.

##### Dependencies

- `ueberdb2` 6.1.8 → 6.1.9 — PostgreSQL pool errors are now handled and
TCP keep-alive is enabled (fixes
[#&#8203;7878](https://redirect.github.com/ether/etherpad/issues/7878)),
and the Redis and RethinkDB drivers attach connection-error handlers so
a dropped database connection no longer crashes the Etherpad process.
- `semver` 7.8.2 → 7.8.3
([#&#8203;7933](https://redirect.github.com/ether/etherpad/issues/7933)),
`rate-limiter-flexible` 11.1.1 → 11.2.0
([#&#8203;7934](https://redirect.github.com/ether/etherpad/issues/7934)),
plus a dev-dependencies group update
([#&#8203;7932](https://redirect.github.com/ether/etherpad/issues/7932)).

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC9ldGhlcnBhZCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvcGF0Y2giXX0=-->
2026-06-10 15:46:14 +02:00
TrueCharts BotandGitHub eefad039d5 feat(etherpad): update image ghcr.io/ether/etherpad 3.2.0 → 3.3.0 (#48933)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/ether/etherpad](https://redirect.github.com/ether/etherpad) |
minor | `ba06bc0` → `e966c52` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

Add the preset `:preserveSemverRanges` to your config if you don't want
to pin your dependencies.

---

### Release Notes

<details>
<summary>ether/etherpad (ghcr.io/ether/etherpad)</summary>

###
[`v3.3.0`](https://redirect.github.com/ether/etherpad/blob/HEAD/CHANGELOG.md#330)

[Compare
Source](https://redirect.github.com/ether/etherpad/compare/3.2.0...3.3.0)

3.3 is primarily a security-hardening release. A defence-in-depth pass
tightens the HTTP API entry points, switches random-id generation to a
CSPRNG, escapes exported `data-*` attributes, and flips the shipped
Docker deployment defaults so a fresh install no longer boots with
implicit credentials or a trusting proxy. Alongside that, the `ep_*`
pad-options passthrough that shipped opt-in in 3.0.0 is now on by
default, the in-pad timeslider learns to honour the editor's view
settings (authorship colours, font family, line numbers), and a long
tail of pad-editor layout, RTL, and URL-encoding fixes lands. The
release also carries the root-cause fix for the long-standing Windows
backend-test "silent ELIFECYCLE" flake.

##### Notable enhancements

- **Plugin pad options on by default — `settings.enablePluginPadOptions`
now defaults to `true`
([#&#8203;7841](https://redirect.github.com/ether/etherpad/issues/7841)).**
The flag that gates the `ep_*` passthrough on pad options (shipped
opt-in in 3.0.0,
[#&#8203;7698](https://redirect.github.com/ether/etherpad/issues/7698))
is flipped to default-on, so plugins such as `ep_plugin_helpers`'
`padToggle` / `padSelect` ride the existing broadcast/persist rail out
of the box. This closes `ep_comments_page#422` — stock 3.x deployments
`console.warn`ed on every pad load because the helper detected
`enablePluginPadOptions === false`. The `settings.json.template` env-var
default is flipped to match, so Docker/supervisor configs without an
explicit value get the new behaviour. Existing deployments with an
explicit `"enablePluginPadOptions": false` keep that value — no
migration needed — and the protocol shape is unchanged for older
clients.
- **Timeslider — honour the editor's view settings
([#&#8203;7899](https://redirect.github.com/ether/etherpad/issues/7899)).**
The in-pad timeslider now respects `showAuthorshipColors`,
`padFontFamily`, and line-numbers, bridged from the pad-settings
checkboxes into the embedded timeslider iframe so the two views agree.
`nice-select.ts` dispatches a native `change` event after the jQuery
trigger so the `addEventListener`-based bridge in `pad_mode.ts` fires
(jQuery 3.7.1's `trigger()` does not dispatch native DOM events), and
the font-family reset is fixed for jQuery 3 (which ignores a `null` css
value). The five ad-hoc listener stores in `pad_mode.ts` are
consolidated into one `bindOuter()` path and the three view-setting
bridges into a single data-driven `bridgeView()` (refactor only).
- **Admin settings — explain env-var substitution and surface auth
errors
([#&#8203;7819](https://redirect.github.com/ether/etherpad/issues/7819)
/
[#&#8203;7826](https://redirect.github.com/ether/etherpad/issues/7826)).**
Three env-var-only UX improvements driven by
[#&#8203;7819](https://redirect.github.com/ether/etherpad/issues/7819)
(a Docker operator saved an `ep_oauth` block in the Raw view and
reported it "disappeared", not realising `settings.json` on disk is a
*template*, not the effective config): a banner above the editor
explaining the template/substitution model (rendered only when the
loaded file contains a `${VAR}` placeholder); a read-only **Effective**
tab exposing the redacted runtime settings the backend already emitted
as `resolved` (also gated on `${VAR}`); and an `admin_auth_error` event
so a misrouted Traefik+SSO session that isn't admin gets a clear toast
instead of a silent "save did nothing". A reconnect-loop guard
suppresses the SPA's auto-reconnect once an auth error has been
received. No behaviour change for installs without `${VAR}`
placeholders.

##### Security hardening

A defence-in-depth pass across the API, token, export, and deployment
surfaces:

- **HTTP API request handling, random IDs, and plugin loading
([#&#8203;7906](https://redirect.github.com/ether/etherpad/issues/7906)).**
`pad_utils.randomString` now generates random IDs via
`crypto.getRandomValues` (CSPRNG) instead of `Math.random`.
`OAuth2Provider` compares passwords with `crypto.timingSafeEqual` on the
raw UTF-8 bytes (resolving the CodeQL "insufficient computational
effort" alert) behind a uniform failure delay, and looks users up via
own-property access only. `API.appendChatMessage` throws `padID does not
exist` rather than creating the pad, consistent with the other content
API methods. The `/api/2` REST router forwards only the `authorization`
header (not the full request header set) and falls back to it whenever
the field is falsy, matching the `openapi.ts` handler so both routers
authenticate identically. `LinkInstaller` validates plugin dependency
names before building filesystem paths from them, and the admin file
server returns a generic error while logging details server-side.
- **Escape exported `data-*` attributes; warn on default/placeholder
credentials
([#&#8203;7905](https://redirect.github.com/ether/etherpad/issues/7905)).**
`ExportHtml` now escapes the name and value of attributes emitted by the
`exportHtmlAdditionalTagsWithData` hook, consistent with the URL/text
escaping already applied to exported HTML. `Settings` logs a warning
(error level under `NODE_ENV=production`) when an account uses a
default/placeholder password from the shipped config, and the check is
extended to cover `sso.clients[].client_secret` so enabling SSO without
setting `ADMIN_SECRET` / `USER_SECRET` is flagged the same way.
- **Docker deployment defaults — require explicit credentials, default
`TRUST_PROXY` off
([#&#8203;7907](https://redirect.github.com/ether/etherpad/issues/7907)).**
The shipped `docker-compose` now requires `ADMIN_PASSWORD` and the
database password to be provided explicitly (no implicit fallback) and
defaults `TRUST_PROXY` to `false`. Operators relying on the previous
implicit defaults must now set these values explicitly.

##### Notable fixes

- **History mode — lay the timeslider iframe in the editor's flex slot
([#&#8203;7903](https://redirect.github.com/ether/etherpad/issues/7903)).**
In-pad history mode positioned `#history-frame-mount` as an `inset:0`
absolute overlay over `#editorcontainerbox`, which took the iframe out
of flow and hid any in-flow side panel (e.g. `ep_webrtc`'s `#rtcbox`
video column) beneath it — so history mode and live mode disagreed. The
iframe now occupies the same in-flow flex slot the live editor uses, and
a latent specificity bug (the `body.history-mode #editorcontainer {
display: none }` hide rule was outranked by the two-id layout rule, so
the live editor was only ever painted over) is fixed by giving the hide
rule matching specificity. Adds a `padmode.spec.ts` regression test.
- **Pad editor — restore URL wrapping
([#&#8203;7894](https://redirect.github.com/ether/etherpad/issues/7894)
/
[#&#8203;7896](https://redirect.github.com/ether/etherpad/issues/7896)).**
Long URLs in the pad editor overflowed instead of wrapping because the
global `a { white-space: nowrap }` rule overrode the wrapping properties
on `#innerdocbody`. Explicit `white-space` / `word-wrap` /
`overflow-wrap` on `#innerdocbody a` restores wrapping inside the editor
while preserving no-wrap for links elsewhere in the UI.
- **RTL content option no longer flips the whole page
([#&#8203;7900](https://redirect.github.com/ether/etherpad/issues/7900)
/
[#&#8203;7901](https://redirect.github.com/ether/etherpad/issues/7901)).**
The per-pad RTL content option (`rtlIsTrue`) wrote the direction to the
top-level `document.documentElement`, flipping the entire page — toolbar
and chrome included. The content direction is now applied to the inner
editor document (`targetDoc.documentElement`); page direction stays
owned by the UI language (`l10n.ts`). Adds a frontend test asserting the
inner editor flips while the top-level `<html>` dir is unchanged.
- **Pad-wide view settings apply to the creator's own view
([#&#8203;7900](https://redirect.github.com/ether/etherpad/issues/7900)
/
[#&#8203;7902](https://redirect.github.com/ether/etherpad/issues/7902)).**
Because a creator is never "enforced upon themselves", a stale personal
view-override cookie (e.g. `rtlIsTrue=false` from an earlier toggle)
silently masked the pad-wide value they later set, so the control
appeared to do nothing on their own screen. Changing a pad-wide view
option now syncs the creator's personal pref to the chosen value; the
precedence model is unchanged (the creator can still override afterwards
via "My view").
- **URL view-option params lost to a `padeditor.init` race
([#&#8203;7840](https://redirect.github.com/ether/etherpad/issues/7840)
/
[#&#8203;7843](https://redirect.github.com/ether/etherpad/issues/7843)).**
`?showLineNumbers=false` and `?useMonospaceFont=true` were silently
clobbered shortly after load — the same race
[#&#8203;7464](https://redirect.github.com/ether/etherpad/issues/7464)
fixed for `?rtl=false`, but the neighbouring `showLineNumbers` /
`noColors` / `useMonospaceFontGlobal` blocks were left at the
synchronous-tail site. The fix is generalised to all three (moved into
`postAceInit`). Mostly observable in cross-context iframe embeds that
start with no `prefs` cookie. Adds `url_view_options.spec.ts`.
- **Default welcome text attributed to the system author
([#&#8203;7885](https://redirect.github.com/ether/etherpad/issues/7885)
/
[#&#8203;7887](https://redirect.github.com/ether/etherpad/issues/7887)).**
Auto-generated default pad content (`settings.defaultPadText` /
`padDefaultContent` hook) carried the creating user's `author` attribute
and rendered in their authorship colour, even though they never wrote
it. The welcome text's `author` *attribute* is now
`Pad.SYSTEM_AUTHOR_ID`, while revision 0's `meta.author` stays the real
creator so ownership (pad-wide settings gate, deletion token) is
preserved. Explicitly provided text (e.g. HTTP API `createPad` with text
+ author) keeps the real author.
- **URL-encode pad names in the admin 'Open' button and recent pads
([#&#8203;7865](https://redirect.github.com/ether/etherpad/issues/7865)
/
[#&#8203;7895](https://redirect.github.com/ether/etherpad/issues/7895)).**
Pad names are `encodeURIComponent`-d in the admin `PadPage` Open href
and the colibris recent-pads href, and `decodeURIComponent`-d when read
back from the URL pathname; legacy URL-encoded recent-pads names are
normalised before re-encoding to prevent double-encoding (`%2F` →
`%252F`). The admin Open `window.open` gains `noopener,noreferrer`.
- **OIDC — fix broken `OIDCAdapter` flows
([#&#8203;7837](https://redirect.github.com/ether/etherpad/issues/7837)).**
Repairs the adapter flows and widens the storage type to include
`string` for the `userCode` index; adds regression tests.
- **Accessibility — dialog titles/descriptions and a missing l10n key
([#&#8203;7835](https://redirect.github.com/ether/etherpad/issues/7835)
/
[#&#8203;7836](https://redirect.github.com/ether/etherpad/issues/7836)).**
Adds the `index.code` key referenced by `index.html` but never defined
(which produced a "Couldn't find translation key" console error on the
landing page), and gives every admin `@radix-ui/react-dialog`
`Dialog.Content` a `Dialog.Title` and `Dialog.Description` (visually
hidden where there's no visible heading), silencing Radix's a11y
warnings. A new backend spec fails CI if any `data-l10n-id` in
`src/templates/*.html` is missing from `en.json`.
- **Offline/air-gapped Docker boot — stop pnpm self-provisioning a
pinned version (issue
[#&#8203;7911](https://redirect.github.com/ether/etherpad/issues/7911)).**
The official image installs pnpm directly (corepack was dropped for Node
25+). Because the image's pnpm intentionally lags the `packageManager`
pin in `package.json` (pnpm 11.1.x enforces a minimum-release-age policy
the frozen-lockfile build can't satisfy), pnpm treated every call —
including the informational `pnpm --version` probe Etherpad runs at
startup — as a request to download the pinned build. Behind a firewall
that download failed (`Failed to get pnpm version: … Command exited with
code 1`), breaking startup. The Dockerfile now sets
`pnpm_config_pm_on_fail=ignore`, and the startup probe plus the
updater's pnpm-on-PATH checks run with the same flag, so pnpm uses the
installed version instead of reaching for the network (without changing
which pnpm runs the build-time install). A backend spec fails CI if that
guard is dropped while a version gap exists.
- **Firefox authorship colours — tag early keystrokes with the right
author
([#&#8203;7910](https://redirect.github.com/ether/etherpad/issues/7910)).**
The inner editor's `thisAuthor` starts empty and is only populated when
collab\_client's queued `setProperty('userAuthor', userId)` reaches the
iframe (applied asynchronously via `pendingInit`). Under Firefox timing
the first keystrokes could beat it, so freshly typed text — and early
line-attribute changes (lists, headings, alignment) — were tagged
`author=''`, which canonicalises to an unattributed insert that the
server's pad-corruption guard rejects, dropping the whole change and
losing authorship (the intermittent `clear_authorship_color` flake,
where undo couldn't restore the author colour). A `getLocalAuthor()`
helper now falls back to `clientVars.userId` (the same id, available
synchronously) whenever `thisAuthor` is still empty, applied at the
text-insert sites and to seed `documentAttributeManager.author`; the
intentional clear-authorship path and the server-side guard are
unchanged.
- **Dark mode — fix the white address bar and the light-flash on load
([#&#8203;7909](https://redirect.github.com/ether/etherpad/issues/7909),
issue
[#&#8203;7606](https://redirect.github.com/ether/etherpad/issues/7606)).**
Dark-mode users still saw a white mobile address bar above the dark
toolbar, and the whole page flashed light before going dark. Both came
from rendering the light state server-side and switching to dark only
after the JS bundle ran: iOS Safari reads `theme-color` at parse time
and doesn't reliably repaint on a later JS mutation, and the page
painted light before the bundle applied the dark skin classes. The
server now emits a `prefers-color-scheme`-scoped `theme-color` pair so
the address bar is correct at first paint, plus a small blocking
`<head>` script that applies the dark skin classes before the stylesheet
paints. Both are gated on `enableDarkMode` (default on) and the colibris
skin; `pad.ts` still runs on init to wire up the `#options-darkmode`
toggle (which now updates every `theme-color` meta) and theme the editor
iframes. Applies to the pad and timeslider views.

##### Internal / contributor-facing

- **Root-caused and fixed the Windows backend-test "silent ELIFECYCLE"
flake
([#&#8203;7866](https://redirect.github.com/ether/etherpad/issues/7866)).**
The \~22% Windows flake — rotating across random spec files, no mocha
summary, no JS trace — was diagnosed from a full-memory dump as two
distinct causes. (1) A timing-fragile test abandoned by mocha keeps
running and later throws an *orphan* unhandled rejection; `server.ts`'s
process-global `uncaughtException`/`unhandledRejection` handlers
(correct for a real Etherpad process) escalated that into a clean
`process.exit`. They are now gated behind `require.main === module`, and
the backend-test bootstraps (`common.ts`, `diagnostics.ts`) log orphan
rejections instead of rethrowing. (2) A stack-buffer overrun in Node
24.x's bundled libuv Windows TCP-connect path (`uv__tcp_connect`)
corrupts memory under the suite's localhost-connection churn; CI pins
the Windows backend job to Node **24.16.0** (libuv 1.52.1, the bisected
fix), referencing upstream `nodejs/node#63620`. Linux stays on Node 24
LTS.
- **Removed the now-unneeded ELIFECYCLE diagnostic scaffolding
([#&#8203;7846](https://redirect.github.com/ether/etherpad/issues/7846)
/ [#&#8203;7838](https://redirect.github.com/ether/etherpad/issues/7838)
/ [#&#8203;7842](https://redirect.github.com/ether/etherpad/issues/7842)
/
[#&#8203;7868](https://redirect.github.com/ether/etherpad/issues/7868)).**
The OS-level sidecar watcher, the diagnostics heartbeat/running-test
pointer, and the mid-test snapshot — added to chase the flake above —
are removed now that the cause is known.
- **Docs — document the Docker `settings.json` writable-layer and
env-var-vs-file semantics
([#&#8203;7819](https://redirect.github.com/ether/etherpad/issues/7819)
/
[#&#8203;7827](https://redirect.github.com/ether/etherpad/issues/7827)).**
Two operator-facing gaps surfaced by
[#&#8203;7819](https://redirect.github.com/ether/etherpad/issues/7819):
that the on-disk `settings.json` is a template (env substitution happens
in memory at load time), and that the default compose puts
`settings.json` in the container's writable layer with no host mount, so
admin edits are lost on `down`/`pull`/watchtower but survive a plain
`restart`. Adds prose + a recreate-vs-restart table to `doc/docker.md`
and a commented-out opt-in bind mount to the compose files.
- **Docs refresh for 3.2.0
([#&#8203;7888](https://redirect.github.com/ether/etherpad/issues/7888))**,
**dropped three redundant top-level files
([#&#8203;7839](https://redirect.github.com/ether/etherpad/issues/7839))**,
**dropped a fragile viewport assertion in the enter test
([#&#8203;7845](https://redirect.github.com/ether/etherpad/issues/7845))**,
and a backend-test fix-up.

##### Dependencies

- Two major bumps: `redis` 5.12.1 → 6.0.0
([#&#8203;7869](https://redirect.github.com/ether/etherpad/issues/7869))
and `ejs` 5.0.2 → 6.0.1
([#&#8203;7860](https://redirect.github.com/ether/etherpad/issues/7860)).
- `ueberdb2` 6.1.2 → 6.1.8, `mssql` 12.5.3 → 12.5.5, `nodemailer` 8.0.7
→ 8.0.10, `mysql2` 3.22.3 → 3.22.5
([#&#8203;7915](https://redirect.github.com/ether/etherpad/issues/7915)),
`undici` 8.3.0 → 8.4.1
([#&#8203;7914](https://redirect.github.com/ether/etherpad/issues/7914)),
`pdfkit` 0.18.0 → 0.19.0
([#&#8203;7916](https://redirect.github.com/ether/etherpad/issues/7916)),
`oidc-provider` 9.8.3 → 9.8.4, `@elastic/elasticsearch` 9.4.1 → 9.4.2,
`lru-cache` 11.5.0 → 11.5.1, `rate-limiter-flexible` 11.1.0 → 11.1.1,
`semver` 7.8.1 → 7.8.2, `js-cookie` 3.0.7 → 3.0.8, `tsx` 4.22.3 →
4.22.4, `@radix-ui/react-switch` 1.2.6 → 1.3.0
([#&#8203;7913](https://redirect.github.com/ether/etherpad/issues/7913)),
`@tanstack/react-query` 5.100.11 → 5.101.0 (+ devtools), plus `i18next`,
`react-router-dom`, and several dev-dependency group bumps
([#&#8203;7912](https://redirect.github.com/ether/etherpad/issues/7912)).

##### Localisation

- Multiple updates from translatewiki.net.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC9ldGhlcnBhZCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=-->
2026-06-09 14:44:12 +02:00
TrueCharts BotandGitHub 8d20d91147 feat(etherpad): update image ghcr.io/ether/etherpad 3.1.0 → 3.2.0 (#48459)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/ether/etherpad](https://redirect.github.com/ether/etherpad) |
minor | `7bae8bd` → `ba06bc0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

Add the preset `:preserveSemverRanges` to your config if you don't want
to pin your dependencies.

---

### Release Notes

<details>
<summary>ether/etherpad (ghcr.io/ether/etherpad)</summary>

###
[`v3.2.0`](https://redirect.github.com/ether/etherpad/blob/HEAD/CHANGELOG.md#320)

[Compare
Source](https://redirect.github.com/ether/etherpad/compare/3.1.0...3.2.0)

3.2 adds first-class reverse-proxy / ingress support —
`X-Forwarded-Prefix` and `X-Ingress-Path` are now honoured under
`trustProxy`, so Etherpad can live under a subpath (Traefik, Nginx,
Kubernetes Ingress) without breaking the PWA manifest, social-meta URLs,
or any of the bootstrap asset links. The admin settings page learns to
show *resolved* runtime values next to `${VAR:default}` placeholders,
the v3.1.0 admin pad-list filter chips now apply server-side (so "show
empty pads" no longer returns 0–12 of hundreds), and the v3.1.0
redesigned outdated-version gritter actually fires in production now
(the session-based author lookup it shipped with always returned null
for pad visitors).

##### Notable enhancements

- **HTTP — accept `X-Forwarded-Prefix` and `X-Ingress-Path` under
`trustProxy`
([#&#8203;7802](https://redirect.github.com/ether/etherpad/issues/7802)
/
[#&#8203;7806](https://redirect.github.com/ether/etherpad/issues/7806)).**
With `trustProxy: true`, Etherpad now honours `X-Forwarded-Prefix`
(de-facto Traefik / Spring) and `X-Ingress-Path` (Kubernetes Ingress) in
addition to the prefix it already inferred from the request path. The
shared `sanitizeProxyPath` helper added in 3.1.0 (defence-in-depth:
`[A-Za-z0-9_./-]` only, `//+` collapsed, `..` traversal rejected) is
extended to the new headers and applied consistently across
`/manifest.json`, `socialMeta` `og:url` / `og:image`, and the
`index.html` / `pad.html` / `timeslider.html` / `export_html.html`
templates (manifest links, jslicense links, reconnect URLs). A
pre-existing `..` segment-count miscalculation in `pad.html` /
`timeslider.html` that broke the manifest link when served from a deep
subpath is also fixed in passing. New end-to-end suite covers the
prefix-applied / prefix-ignored matrix under `trustProxy=true|false` for
both header names. `settings.json.template` documents the new headers
alongside the existing `trustProxy` notes.
- **Admin settings — resolved runtime values surface on env-pill chips
([#&#8203;7803](https://redirect.github.com/ether/etherpad/issues/7803)
/
[#&#8203;7807](https://redirect.github.com/ether/etherpad/issues/7807)).**
The `/admin/settings` socket payload now carries a new `resolved` field
alongside the existing raw-file `results` blob, carrying the actual
in-memory settings module run through a new redactor
(`AdminSettingsRedact`) that replaces known-sensitive paths
(`users.*.password`, `dbSettings.password`,
`sso.clients[*].client_secret`, `sessionKey`, …) with `[REDACTED]`. The
admin SPA's `EnvPill` renders a `→ active value` chip when the path is
resolved, or `→ ••••••` with a redacted tooltip when the server returned
the sentinel — so `port: ${PORT:9001}` now shows `→ 9001` (or whatever
the live value is) instead of silently falling back to the template
default. Old admin SPAs that don't read `resolved` continue to work; the
save round-trip is unchanged so `${VAR:default}` literals are still
preserved verbatim on disk. The admin test script glob picks up
`.test.tsx` alongside `.test.ts` so the new `EnvPill` and
`resolveByPath` tests run under `tsx --test`.

##### Notable fixes

- **Admin pads — filter chip now applies server-side, before pagination
([#&#8203;7798](https://redirect.github.com/ether/etherpad/issues/7798)).**
The 3.1.0 admin pad-list filter chips (`active` / `recent` / `empty` /
`stale`) ran on the client *after* the 12-row page slice had already
arrived. On a deployment with hundreds of pads, clicking "empty pads" on
page 1 only matched the 0–12 empties that happened to land in the
current page, with the pagination footer reporting nonsense totals
(reported on a 3.1.0 deployment). The filter is now part of the
`padLoad` socket query — pattern filter on names runs first (cheap),
metadata hydration for the matching pad universe is gated on a non-`all`
filter or a non-`padName` sort and runs under a 16-way concurrency cap
(was unbounded `Promise.all`, which fanned out to thousands of in-flight
`padManager.getPad()` reads on busy deployments), then the filter chip,
then sort + slice. `total` reflects the filtered universe so the footer
makes sense. Older admin clients that don't send `filter` keep working —
the server defaults to `all`. The `if/else if` ladder that duplicated
the hydrate-and-sort loop per `sortBy` is folded into one pipeline with
a single comparator switch.
- **Pad outdated notice — author now resolved from token cookie, not
session (Qodo
[#&#8203;7804](https://redirect.github.com/ether/etherpad/issues/7804) /
[#&#8203;7805](https://redirect.github.com/ether/etherpad/issues/7805)).**
The 3.1.0 redesigned outdated-version gritter never fired in production.
`resolveRequestAuthor()` looked for an `authorID` on `req.session.user`,
which Etherpad does not populate for pad visitors (express-session only
carries the admin-login user), so `computeOutdated()` always returned
EMPTY. The lookup now mirrors how the socket.io handshake resolves
pad-visitor identity — read the HttpOnly `token` (or `<prefix>token`)
cookie and call `authorManager.getAuthorId(token, user)` via a dynamic
import (same circular-init guard pattern the file already uses for
`PadManager`). The admin OpenAPI document gains a `description` note
clarifying that `/api/version-status` is a public pad-side endpoint that
lives in the admin doc only because it shares the same internal route
registration.
- **Localisation — silence spurious "could not translate element
content" warning
([#&#8203;7797](https://redirect.github.com/ether/etherpad/issues/7797)).**
`<select data-l10n-id="…">` with `<option>` element children — the
pattern used by `ep_headings2`, `ep_align`, `ep_font_size`,
`ep_font_family`, … — used to drop into the textContent branch of
`html10n.translateNode`, hunt for a text-node child to overwrite, find
none, and emit `Unexpected error: could not translate element content
for key …` on every pad load. The `SELECT` / `INPUT` / `TEXTAREA`
aria-label fallback already lived inside the same else-branch *after*
the warning, so the accessible name landed correctly but the noisy
console line still fired. Form-control elements now short-circuit into
the aria-label path *before* the text-node hunt — aria-label is the only
sensible localization target for these elements (a `<select>`'s text is
its `<option>` labels, not its own name). Closes the console warning
reported on Etherpad 3.1.0.

##### Internal / contributor-facing

- **CI — swap archived `ep_readonly_guest` for `ep_guest` in the plugin
matrix
([#&#8203;7795](https://redirect.github.com/ether/etherpad/issues/7795)
/
[#&#8203;7808](https://redirect.github.com/ether/etherpad/issues/7808)).**
`ep_readonly_guest` is archived (read-only on GitHub) and its
`authenticate` hook unconditionally swapped `req.session.user` with a
read-only guest, *even when the request carried an HTTP Authorization
header*. That silently demoted admin login attempts and stalled the
`anonymizeAuthorSocket` tests for 14 min/run on every with-plugins CI
matrix. The pre-fix theory from 3.1.0
([#&#8203;7796](https://redirect.github.com/ether/etherpad/issues/7796))
blamed `ep_hash_auth.handleMessage`; that was a red herring —
`handleMessage` only fires on the `/pad` namespace, never on
`/settings`. `ep_guest` is the maintained successor (same authors, same
purpose); 1.0.72 on npm already defers to basic auth / admin paths.
Swapping the matrix unblocks the `anonymizeAuthorSocket` suite on Linux,
Windows, and the upgrade-from-latest-release workflow. The runtime probe
added in
[#&#8203;7796](https://redirect.github.com/ether/etherpad/issues/7796)
stays — it still catches any other authenticate-hook plugin that rejects
the test's plain-text credentials (e.g. a future hashed-only plugin).
- **Tests — admin `saveSettings` round-trip + cross-restart persistence
([#&#8203;7819](https://redirect.github.com/ether/etherpad/issues/7819)
/ [#&#8203;7820](https://redirect.github.com/ether/etherpad/issues/7820)
/
[#&#8203;7821](https://redirect.github.com/ether/etherpad/issues/7821)).**
The admin `saveSettings` socket had zero direct backend coverage and the
existing e2e "restart works" test only checked that the page renders
after a restart, neither of which catches a deployment that resets
`settings.json` on restart, nor the user-visible workflow that triggered
[#&#8203;7819](https://redirect.github.com/ether/etherpad/issues/7819)
(add a top-level plugin block via Raw, save, watch it disappear). Three
new backend specs (`adminSettingsSave.ts`) verify byte-for-byte write,
top-level-block augmentation round-tripping through the next `load`, and
`/* */` comments surviving the write path. A new e2e spec mirrors the
[#&#8203;7819](https://redirect.github.com/ether/etherpad/issues/7819)
user workflow — open Raw, prepend an `ep_oauth`-shaped top-level block,
save, `restartEtherpad()`, re-login, confirm the block is still in Raw
and surfaces as its own Form-view section (`Ep oauth` from
`humanize()`). A separate `docker.yml` job (`adminSettings_7819.ts`)
authenticates via `POST /admin-auth/` (always-requireAdmin, regardless
of `settings.requireAuthentication`), saves a hand-built
minimal-but-viable settings document containing a marker block, `docker
exec test grep`s for it, `docker restart`s the container, waits for the
health probe, and re-greps. Both checks must pass.
- **Bug report template** now asks contributors whether the abstraction
in their proposed fix matches the rest of the codebase, to head off
premature-generalisation fixes earlier in review.

##### Dependencies

- `ueberdb2` 6.0.3 → 6.1.2 (two patch releases of cleanup on top of the
6.1.0 `findKeysPaged` API that the 3.1.0 sessionstorage OOM fix relies
on).
- `semver` 7.8.0 → 7.8.1, `lru-cache` 11.3.6 → 11.5.0,
`@elastic/elasticsearch` 9.4.0 → 9.4.1, `pg` 8.20.0 → 8.21.0,
`openapi-backend` 5.16.1 → 5.17.0, `tsx` 4.22.0 → 4.22.3,
`@tanstack/react-query` 5.100.10 → 5.100.11 +
`@tanstack/react-query-devtools`, `js-cookie` 3.0.6 → 3.0.7, plus two
dev-dependency group bumps.

##### Localisation

- Multiple updates from translatewiki.net.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC9ldGhlcnBhZCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=-->
2026-05-27 07:19:58 +02:00
TrueCharts BotandGitHub 52ec91d7d8 feat(etherpad): update image ghcr.io/ether/etherpad 3.0.0 → 3.1.0 (#48307)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/ether/etherpad](https://redirect.github.com/ether/etherpad) |
minor | `037ce33` → `7bae8bd` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

Add the preset `:preserveSemverRanges` to your config if you don't want
to pin your dependencies.

---

### Release Notes

<details>
<summary>ether/etherpad (ghcr.io/ether/etherpad)</summary>

###
[`v3.1.0`](https://redirect.github.com/ether/etherpad/blob/HEAD/CHANGELOG.md#310)

[Compare
Source](https://redirect.github.com/ether/etherpad/compare/3.0.0...3.1.0)

3.1 ships the self-update programme's **Tier 4 — autonomous in a
maintenance window** for real (the v3.0.0 notes documented the design;
this is the release the code actually lands in), adds first-class SMTP
delivery so update failures email the admin, and bundles a
defence-in-depth pass across the HTTP/API entry points. Two new
admin-facing escape hatches arrive: a preflight check that aborts an
update *before* it mutates the working tree when the target tag's
`engines.node` doesn't match the running runtime, and email
notifications for every auto-rollback / preflight outcome (not just the
terminal `rollback-failed` state).

##### Notable enhancements

- **Self-update — Tier 4 (autonomous in a maintenance window).** Set
`updates.tier: "autonomous"` together with `updates.maintenanceWindow:
{"start":"HH:MM","end":"HH:MM","tz":"local"|"utc"}` to constrain
autonomous updates to a nightly window. The scheduler snaps
`scheduledFor` forward to the next window opening when grace would
otherwise land outside the window, and defers the fire when the window
has closed by the timer callback. Cross-midnight windows (`end < start`)
are supported; DST transitions are absorbed by host wall-clock
arithmetic. A missing or malformed window degrades the policy to Tier 3
with an explicit `policy.reason` of `maintenance-window-missing` /
`maintenance-window-invalid`; an admin banner surfaces the
misconfiguration so autonomous behaviour is not silently disabled. The
admin update page shows a "Maintenance window" section with the parsed
window summary, the next opening, and a "deferred until <iso>" subtitle
on the scheduled panel when the timer has been snapped forward. Closes
[#&#8203;7607](https://redirect.github.com/ether/etherpad/issues/7607)
([#&#8203;7753](https://redirect.github.com/ether/etherpad/issues/7753)).
- **Updater — real SMTP via nodemailer (new top-level `mail.*` block).**
Replaces the "(would send email)" stub. New settings: `mail.host`,
`mail.port`, `mail.secure`, `mail.from`, `mail.auth.{user,pass}`.
`mail.host=null` keeps the legacy log-only behaviour. The `nodemailer`
dependency is lazy-imported on first send so installs that don't
configure mail pay no runtime cost; the transport is cached on the full
SMTP options tuple so a `reloadSettings()` change to
host/port/credentials invalidates the cache. `settings.json.docker`
reads `MAIL_HOST` / `MAIL_FROM` / `MAIL_PORT` / `MAIL_SECURE` from env.
Send errors are logged warn and swallowed so a transient SMTP failure
can never poison the updater state machine.
- **Updater — preflight against the target tag's `engines.node`.**
Before mutating the working tree, `runPreflight` now runs `git show
<tag>:package.json` and verifies `process.versions.node` satisfies the
target's `engines.node`. A mismatch fails cleanly at `preflight-failed`
with the detail `target requires Node >=X, running Y` — no drain, no
restart, no rollback. The check runs *after* signature verification so
we only trust signed `package.json`. New `PreflightReason:
'node-engine-mismatch'`.
- **Updater — email admin on rollback / preflight-failed (not just
`rollback-failed`).** Before this release only the terminal
`rollback-failed` state emailed. Auto-recovered failures
(`rolled-back-install-failed`, `rolled-back-build-failed`,
`rolled-back-health-check`, `rolled-back-crash-loop`) and
`preflight-failed` now also fire one email per `<outcome>:<targetTag>`
(dedupe key in `EmailSendLog.lastFailureKey`). A 3am autonomous update
that rolls back because of, say, a Node engine bump now lands in the
admin inbox at 3am instead of staying invisible until the next admin
login. Boot-path catch-up covers cases where the failure preceded a
clean process exit (timer-fired health-check rollback, crash-loop forced
rollback, preflight-failed that didn't get to email before exit).
- **API — `listAuthorsOfPad` filters the synthetic system author.**
`Pad.SYSTEM_AUTHOR_ID` (`a.etherpad-system`) is the placeholder Etherpad
attributes to when the HTTP API receives a call without an `authorId`
(setText, setHTML, appendText, server-side import). It was leaking
through `listAuthorsOfPad`, making pads with only API-driven content
appear to have one "real" author. The synthetic id is now filtered at
that API surface only — `getAllAuthors()` and downstream callers (copy,
anonymize, atext verification) still see it. Fixes
[#&#8203;7785](https://redirect.github.com/ether/etherpad/issues/7785) /
[#&#8203;7790](https://redirect.github.com/ether/etherpad/issues/7790)
([#&#8203;7793](https://redirect.github.com/ether/etherpad/issues/7793)).

##### Notable fixes

- **Export HTML — ordered-list counter no longer poisoned by a sibling
unordered list.** When an ordered-list level was the only consumer of
`olItemCounts`, closing *any* list at that depth (including a `<ul>`
that happened to share the level) reset the counter to 0. A subsequent
unrelated `<ol>` at the same depth then took the "counter exists but is
0" branch and emitted `<ol class="...">` without the `start=` attribute.
The reset is now gated on `line.listTypeName === 'number'` so closing an
unordered list never touches the ol bookkeeping. Fixes
[#&#8203;7786](https://redirect.github.com/ether/etherpad/issues/7786) /
[#&#8203;7787](https://redirect.github.com/ether/etherpad/issues/7787)
([#&#8203;7791](https://redirect.github.com/ether/etherpad/issues/7791)).
- **Export — bad `:rev` returns a meaningful 500 body, not Express's
HTML error page.** A non-numeric `:rev` (e.g. `/p/foo/test1/export/txt`)
reached `checkValidRev` which throws `CustomError('rev is not a number',
'apierror')`; the message fell through `.catch(next)` and Express's
default renderer returned an HTML 500 page. The route handler now
catches the apierror and emits `err.message` as a deterministic
`text/plain` 500. As a follow-up, `checkValidRev` runs *before*
`res.attachment()` so an invalid rev no longer leaves a
`Content-Disposition` header in place (browsers were offering to save
the error message as a file), and unrelated export failures (conversion,
fs, soffice) are surfaced as text/plain rather than the HTML stack page.
Fixes
[#&#8203;7788](https://redirect.github.com/ether/etherpad/issues/7788)
([#&#8203;7792](https://redirect.github.com/ether/etherpad/issues/7792)).

##### Security hardening

A bundle of defence-in-depth tightening picked up during an internal
audit pass
([#&#8203;7784](https://redirect.github.com/ether/etherpad/issues/7784)):

- **HTTP API — OAuth JWT path.** Verify the signature *before* reading
any claim off the payload; require `admin: true` strictly (presence is
no longer sufficient). The apikey comparison switches to
`crypto.timingSafeEqual`.
- **Import/Export temp-file path tokens.** Derived from
`crypto.randomBytes(16)` instead of `Math.random()`.
- **Token transfer.** Records now have a 5-minute TTL and are single-use
(removed from the store before responding). The author token is no
longer in the redemption response body — the `HttpOnly` cookie is the
only delivery channel.
- **`x-proxy-path` header sanitiser (new
`src/node/utils/sanitizeProxyPath.ts`).** Shared by `admin.ts` and
`specialpages.ts`. Strips characters outside `[A-Za-z0-9_./-]`,
collapses leading `//+` to a single `/`, rejects `..` traversal.
`admin.ts` also emits `Vary: x-proxy-path` and `Cache-Control: private,
no-store` so a poisoned response can never be reused for another origin.
- **`Pad.appendRevision` insert-op author invariant.** Centralises the
"every insert op carries an `author` attribute" rule the socket handler
already enforced, so non-wire callers (`setText`, `setHTML`,
`restoreRevision`, plugin paths) get the same check. `Pad.init` and
`setPadHTML` substitute `SYSTEM_AUTHOR_ID` when no author is supplied —
same pattern `setText` / `spliceText` already used.
- **`setPadRaw` legacy-import rewrite.** Bulk-import bypasses
`appendRevision`, so a hand-crafted `.etherpad` file could persist
non-conforming records that any subsequent `setText` / `setHTML` would
refuse to extend. A pre-pass now walks revs in order, sanitises each
changeset's `+` ops against the cumulative pad pool (substituting
`SYSTEM_AUTHOR_ID` where needed), and re-applies each changeset to a
running atext so the head atext and key-rev `meta.atext` / `meta.pool`
snapshots stay in lock-step. Conforming payloads round-trip unchanged.

##### Internal / contributor-facing

- **Backend tests — `tests/backend/specs/{api,admin}/*` un-skipped.**
The pnpm test script's glob (`tests/backend/specs/**.ts`) only matched
depth-1 files. Every spec under `api/` (14 files) and `admin/` (2 files)
has been silently skipped by CI. Switched to `--extension ts
--recursive` so mocha walks the tree as documented. A new vitest
regression check reads the pnpm script, hands mocha the same arguments
under `--dry-run --list-files`, and asserts representative specs from
both subdirectories appear in the discovered list
([#&#8203;7789](https://redirect.github.com/ether/etherpad/issues/7789)).
- **CI — Windows `npx ENOENT` in the glob-discovery regression check.**
`execFileSync('npx', ...)` doesn't pick up `npx.cmd` on Windows runners.
Resolved by running `mocha`'s JS entry directly via `require.resolve`
under the current node process. Path normalisation now goes through
`path.relative` + `replace([\\/])` so mixed-separator / drive-letter
casing on Windows mocha output still matches the POSIX-relative
assertions
([#&#8203;7794](https://redirect.github.com/ether/etherpad/issues/7794)).
- **CI — `anonymizeAuthorSocket` suite gated on admin-socket health when
`ep_hash_auth` is installed.** Un-hiding the suite in
[#&#8203;7789](https://redirect.github.com/ether/etherpad/issues/7789)
surfaced a 14-minute stall on every with-plugins matrix run because
`ep_hash_auth`'s `handleMessage` hook fires for every socket message
regardless of namespace and reads from the deprecated `client` context
(undefined for non-pad namespaces). Until the root cause lands (tracked
in
[#&#8203;7795](https://redirect.github.com/ether/etherpad/issues/7795)),
the suite skips itself when an application-level probe shows the admin
`/settings` namespace isn't responding — keeps the no-plugin matrix
covered and stops burning \~14 minutes per with-plugins run
([#&#8203;7796](https://redirect.github.com/ether/etherpad/issues/7796)).

##### Localisation

- Multiple updates from translatewiki.net.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC9ldGhlcnBhZCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=-->
2026-05-17 18:59:19 +02:00
TrueCharts BotandGitHub 6e7041faa8 BREAKING CHANGE(etherpad): Update image ghcr.io/ether/etherpad 2.7.2 → 3.0.0 (#48299)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/ether/etherpad](https://redirect.github.com/ether/etherpad) |
major | `b723fe5` → `037ce33` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

Add the preset `:preserveSemverRanges` to your config if you don't want
to pin your dependencies.

---

### Release Notes

<details>
<summary>ether/etherpad (ghcr.io/ether/etherpad)</summary>

###
[`v3.0.0`](https://redirect.github.com/ether/etherpad/blob/HEAD/CHANGELOG.md#300)

[Compare
Source](https://redirect.github.com/ether/etherpad/compare/2.7.3...3.0.0)

3.0 is a feature-heavy release that closes out the self-update programme
(Tiers 2 and 3 land alongside Tier 1 from 2.7.3), removes the last
identified upstream telemetry vector, and ships a parsed JSONC settings
editor, native DOCX export, in-place pad history scrubbing, and an admin
UI for GDPR author erasure. It also marks the start of the broader
Etherpad app ecosystem (see *Companion apps* below).

##### Breaking changes

- **Minimum required Node.js version is now 24.** Node.js 22 is no
longer supported. Node 25 was briefly the floor mid-cycle but was rolled
back to **24 LTS (Krypton, supported through \~May 2028)** because Node
25 reached end-of-life on 2026-04-10 (see
[#&#8203;7779](https://redirect.github.com/ether/etherpad/issues/7779) /
[#&#8203;7781](https://redirect.github.com/ether/etherpad/issues/7781)).
The CI matrix targets Node 24 and 26. Node 24 still ships Corepack, so
existing `bin/installer.sh` / `bin/installer.ps1` flows continue to work
unchanged; the global `pnpm` install fallback added for the Node 25
detour is kept for forward-compatibility.
- **`pnpm` floor raised to `pnpm@11.1.2`.** `packageManager` is now
pinned to `pnpm@11.1.2` and `engines.pnpm` requires `>=11.1.2`. The
Dockerfile, snap, .deb and all GitHub workflows are aligned.
- **`swagger-ui-express` removed.** `/api-docs` now serves a vendored,
telemetry-free copy of
[Scalar](https://redirect.github.com/scalar/scalar) (see the privacy
item below). The route, the OpenAPI document, and the rendered output
are unchanged for downstream consumers, but anything that introspected
`swagger-ui-express` internals will need updating.
- **Debian package depends on `nodejs (>= 24)`.** The signed apt
repository at `etherpad.org/apt` is rebuilt against this floor; older
Node packages are no longer acceptable as a dependency
([#&#8203;7754](https://redirect.github.com/ether/etherpad/issues/7754)).

##### Companion apps

This release coincides with the launch of two ecosystem projects, both
maintained under the [`ether` org](https://redirect.github.com/ether)
and able to talk to any 3.x Etherpad server over its existing HTTP /
WebSocket API:

-
**[`ether/etherpad-desktop`](https://redirect.github.com/ether/etherpad-desktop)**
— a native desktop wrapper around Etherpad for macOS, Windows and Linux.
Single-window editor experience, system-tray indicator, and an optional
embedded server for fully offline pads.
- **[`ether/pad`](https://redirect.github.com/ether/pad)** — a portable
cross-target client: an Android and iOS app for editing pads on the go,
and a `nano`-style terminal client for headless / SSH workflows. Shares
the same realtime client transport as the browser editor so changes
propagate live across desktop, mobile, terminal and the web UI.

Both clients hit the **stable 3.x API surface**, so server operators
don't need to enable anything extra to support them — the OpenAPI
clean-up landed in this release (see *Notable enhancements*) is what
makes the shared client code generators viable.

##### Notable enhancements

- **Self-update subsystem — Tier 2 (manual click).**
- Admins on a git install can click "Apply update" at `/admin/update`.
Etherpad runs a 60s session drain (with T-60 / T-30 / T-10 broadcasts to
every pad), `git fetch / checkout / pnpm install --frozen-lockfile /
pnpm run build:ui`, and exits with code 75 so a process supervisor
restarts it on the new version. The next boot runs a 60s health check;
if `/health` doesn't come up the previous SHA + lockfile are restored
automatically.
- Crash-loop guard: if the new version reboots more than twice without
the health check completing, RollbackHandler forces a rollback
regardless of the timer.
- Terminal `rollback-failed` state surfaces a strong banner; the admin
clicks Acknowledge once they've manually recovered to clear the lock and
re-allow Tier 2 attempts.
- New settings under `updates.*`: `preApplyGraceMinutes`,
`drainSeconds`, `rollbackHealthCheckSeconds`, `diskSpaceMinMB`,
`requireSignature`, `trustedKeysPath`. Tag signature verification is
opt-in (default `false`) — see `doc/admin/updates.md` for the keyring
setup.
- **A process supervisor (systemd / pm2 / docker
`--restart=unless-stopped`) is required to apply updates.** Without one,
exit 75 leaves the instance down.
- **Self-update subsystem — Tier 3 (auto with grace window).**
- On a git install, set `updates.tier: "auto"` to have new releases
applied automatically after `preApplyGraceMinutes`. During the grace
window, `/admin/update` shows a live countdown plus Cancel and Apply now
buttons. Schedules are persisted to `var/update-state.json`, so an
Etherpad restart during the grace window rehydrates the timer instead of
losing the schedule. A new release tag detected mid-grace re-arms the
timer; if `adminEmail` is set, a one-shot `grace-start` notification
fires per scheduled tag (issue
[#&#8203;7607](https://redirect.github.com/ether/etherpad/issues/7607)).
- The terminal `rollback-failed` state continues to disable
auto/autonomous attempts globally until acknowledged; manual click stays
available because an admin click *is* the intervention the terminal
state requires.
- Tier 4 (autonomous in a maintenance window) remains designed but
unimplemented and will land in a subsequent release.
- **Privacy — drop swagger-ui telemetry, document phone-homes, add
opt-outs.**
- Dropped `swagger-ui-express` because upstream injects a Scarf
analytics pixel that cannot be disabled at install or runtime (see
[swagger-api/swagger-ui#10573](https://redirect.github.com/swagger-api/swagger-ui/issues/10573)).
`/api-docs` now serves a vendored copy of
[Scalar](https://redirect.github.com/scalar/scalar) (MIT) configured
with `withDefaultFonts: false` and `telemetry: false` so no outbound
calls are made.
- New `privacy.updateCheck` (default `true`) — set to `false` to disable
the hourly `UpdateCheck.ts` request to `${updateServer}/info.json`.
- New `privacy.pluginCatalog` (default `true`) — set to `false` to
disable the admin plugins page fetch of `${updateServer}/plugins.json`.
CLI install-by-name still works.
- New [`PRIVACY.md`](PRIVACY.md) at repo root documenting both outbound
calls, what they send, and how to turn each off.
- `bin/plugins/stalePlugins.ts` now reads `settings.updateServer` (was
hardcoded to `static.etherpad.org`) and honours the new flag.
- Closes
[#&#8203;7524](https://redirect.github.com/ether/etherpad/issues/7524).
- **Parsed JSONC settings editor in `/admin`.** The settings page now
parses `settings.json` as JSONC (with comments and trailing commas
preserved), validates edits in-browser, and writes the file back without
clobbering comment blocks
([#&#8203;7709](https://redirect.github.com/ether/etherpad/issues/7709),
closes
[#&#8203;7603](https://redirect.github.com/ether/etherpad/issues/7603),
takes over
[#&#8203;7666](https://redirect.github.com/ether/etherpad/issues/7666)).
- **GDPR — admin UI for author erasure.** Builds on the 2.7.3
author-erasure API: admins can now find an author by id or name in
`/admin` and run a confirmed erasure flow from the UI
([#&#8203;7667](https://redirect.github.com/ether/etherpad/issues/7667),
follow-up to
[#&#8203;7550](https://redirect.github.com/ether/etherpad/issues/7550)).
- **Pad-wide settings on by default.** `padOptions`-style settings can
now be edited from the in-pad cog without flipping a flag, and the modal
title no longer misleads about scope
([#&#8203;7679](https://redirect.github.com/ether/etherpad/issues/7679)).
Plugin-namespaced `ep_*` keys also flow through `applyPadSettings` so
plugins can register their own pad-wide options
([#&#8203;7698](https://redirect.github.com/ether/etherpad/issues/7698)).
- **Scrub history in-place on the pad URL.** A long-edited pad can now
have its history rewritten in place (e.g. for compliance or to drop
accidentally-pasted secrets), without changing the pad URL or breaking
deep-links
([#&#8203;7710](https://redirect.github.com/ether/etherpad/issues/7710),
closes
[#&#8203;7659](https://redirect.github.com/ether/etherpad/issues/7659)).
- **`bin/compactStalePads` — staleness-gated bulk compaction.**
Companion to the 2.7.3 `compactAllPads` CLI: targets only pads not
edited in the last `--older-than N` days, so hot pads in active
timeslider use are left alone. Same `--keep` / `--dry-run` shape as
`compactAllPads`
([#&#8203;7708](https://redirect.github.com/ether/etherpad/issues/7708),
issue
[#&#8203;7642](https://redirect.github.com/ether/etherpad/issues/7642)).
- **Native DOCX export (opt-in).** A `html-to-docx`-based exporter lands
as an alternative to the LibreOffice path, so installs that don't want
`soffice` on the host can still produce `.docx`. `soffice` is now
documented as optional for `.docx` and `.pdf`
([#&#8203;7568](https://redirect.github.com/ether/etherpad/issues/7568)
/
[#&#8203;7707](https://redirect.github.com/ether/etherpad/issues/7707),
issue
[#&#8203;7538](https://redirect.github.com/ether/etherpad/issues/7538)).
- **Editor / UI.**
- Settings popup is now scrollable on short viewports so the lower
controls stay reachable on small laptops
([#&#8203;7703](https://redirect.github.com/ether/etherpad/issues/7703),
issue
[#&#8203;7696](https://redirect.github.com/ether/etherpad/issues/7696)).
- Admin design pass cleans up the rework introduced in 2.7.3
([#&#8203;7716](https://redirect.github.com/ether/etherpad/issues/7716)).
- `theme-color` meta now follows the client-side dark-mode switch
instead of locking to the boot-time value
([#&#8203;7690](https://redirect.github.com/ether/etherpad/issues/7690),
issue
[#&#8203;7606](https://redirect.github.com/ether/etherpad/issues/7606)).
- `menu_right` stays visible on readonly pads by default; operators that
prefer the slimmer chrome can still opt in via `showMenuRight`
([#&#8203;7783](https://redirect.github.com/ether/etherpad/issues/7783)).
- Social meta: new `settings.socialMeta.description` override
([#&#8203;7691](https://redirect.github.com/ether/etherpad/issues/7691))
plus a fix for numeric / boolean override values that were silently
being dropped during coercion
([#&#8203;7692](https://redirect.github.com/ether/etherpad/issues/7692)).
- **Admin / API surface.**
- The published OpenAPI spec is cleaned up for downstream codegens —
duplicate operationIds removed, response schemas filled in, `nullable` ⟶
`oneOf null` migrated for OpenAPI 3.1
([#&#8203;7714](https://redirect.github.com/ether/etherpad/issues/7714)).
The companion apps above consume this directly.
- Admin endpoints (`/admin/*` JSON APIs) are now documented in the
OpenAPI spec
([#&#8203;7693](https://redirect.github.com/ether/etherpad/issues/7693)
/
[#&#8203;7705](https://redirect.github.com/ether/etherpad/issues/7705))
and called from a typesafe TanStack Query client in the admin SPA
([#&#8203;7638](https://redirect.github.com/ether/etherpad/issues/7638)
/
[#&#8203;7695](https://redirect.github.com/ether/etherpad/issues/7695)).
- "Requires newer Etherpad" message in the plugin browser when an
`ep.json` declares an `engines.etherpad` higher than the running
version, instead of failing with a generic install error
([#&#8203;7763](https://redirect.github.com/ether/etherpad/issues/7763)
/
[#&#8203;7771](https://redirect.github.com/ether/etherpad/issues/7771)).
- **Security hardening.**
- Reject `USER_CHANGES` inserts that arrive without an author attribute,
closing a server-side trust gap where unattributed changes could be
applied to a pad
([#&#8203;7773](https://redirect.github.com/ether/etherpad/issues/7773)).
- Integrator-issued `sessionID` cookies can now be marked `HttpOnly` via
the new option, matching the 2.7.3 author-token hardening
([#&#8203;7045](https://redirect.github.com/ether/etherpad/issues/7045)
/
[#&#8203;7755](https://redirect.github.com/ether/etherpad/issues/7755)).
- **Observability — Prometheus counters.** Three new counters surface
scaling-relevant events (`pad_load_total`, `socket_connect_total`,
`changeset_apply_total`) so operators can drive horizontal-scaling
decisions off the existing `/metrics` endpoint without a custom exporter
([#&#8203;7756](https://redirect.github.com/ether/etherpad/issues/7756)
/
[#&#8203;7762](https://redirect.github.com/ether/etherpad/issues/7762)).
- **Accessibility (continuation of the 2.7.2 / 2.7.3 pass).**
- Skip-to-content link plus hiding line-number gutters from screen
readers
([#&#8203;7255](https://redirect.github.com/ether/etherpad/issues/7255)
/
[#&#8203;7758](https://redirect.github.com/ether/etherpad/issues/7758)).
- Named `role="toolbar"` regions and `linemetricsdiv` hidden from
assistive tech
([#&#8203;7255](https://redirect.github.com/ether/etherpad/issues/7255)
/
[#&#8203;7777](https://redirect.github.com/ether/etherpad/issues/7777)).
- Localized `aria-label` on form controls (`<select>`, `<input>`,
`<textarea>`) and on export-as links
([#&#8203;7697](https://redirect.github.com/ether/etherpad/issues/7697)
/
[#&#8203;7713](https://redirect.github.com/ether/etherpad/issues/7713)).
- Removed `role="textbox"` / `aria-multiline` from `innerdocbody` where
they no longer matched the editor's real semantics
([#&#8203;7778](https://redirect.github.com/ether/etherpad/issues/7778)
/
[#&#8203;7782](https://redirect.github.com/ether/etherpad/issues/7782)).

##### Notable fixes

- **Docker — pnpm at runtime.** Bypass `pnpm` at container start so the
entrypoint no longer triggers a spurious `deps-status` reinstall on
every restart
([#&#8203;7718](https://redirect.github.com/ether/etherpad/issues/7718)
/
[#&#8203;7727](https://redirect.github.com/ether/etherpad/issues/7727)).
The Corepack cache is now shared so the unprivileged `etherpad` user can
resolve `pnpm`
([#&#8203;7689](https://redirect.github.com/ether/etherpad/issues/7689)).
- **Debian — `plugin_packages` stays in-tree.** The `.deb` now keeps
`plugin_packages/` under the install root so plugins installed at
runtime can still resolve `ep_etherpad-lite`
([#&#8203;7750](https://redirect.github.com/ether/etherpad/issues/7750)).
- **Admin — restore search and sort.** `SearchField` and the column-sort
helpers used by the authors page were lost during the admin rework;
they're restored
([#&#8203;7746](https://redirect.github.com/ether/etherpad/issues/7746)).
- **Admin — German strings hardcoded in error paths.** A handful of
leftover German strings from the rework are replaced with i18n keys
([#&#8203;7735](https://redirect.github.com/ether/etherpad/issues/7735)
/
[#&#8203;7736](https://redirect.github.com/ether/etherpad/issues/7736)).
- **Settings — `username: false` / `malformed color: false`
regression.** Legacy `settings.json` files that used `false` to disable
a feature no longer surface as `'false'` username or `'malformed color:
false'` errors
([#&#8203;7688](https://redirect.github.com/ether/etherpad/issues/7688),
issue
[#&#8203;7686](https://redirect.github.com/ether/etherpad/issues/7686)).

##### Internal / contributor-facing

- **Database driver — `ueberdb2` 5 → 6.** Major-version bump to
`ueberdb2@&#8203;^6.0.3`
([#&#8203;7734](https://redirect.github.com/ether/etherpad/issues/7734)).
Drivers are pinned through the lockfile; the schema-level changes are
documented in the `ueberdb2` 6.0 release notes.
- **CI / tests.**
- Windows + Node 24 backend-test flake fixed; native crashes are now
captured for diagnosis
([#&#8203;7748](https://redirect.github.com/ether/etherpad/issues/7748)).
- `updater-integration` rmdir-retry to clear the long-standing Windows
`EBUSY` flake
([#&#8203;7728](https://redirect.github.com/ether/etherpad/issues/7728)).
- `lowerCasePadIds` spec closes its socket.io clients on teardown
([#&#8203;7722](https://redirect.github.com/ether/etherpad/issues/7722)).
- Admin tests realigned to the typesafe API client + plugin row count
fixes
([#&#8203;7712](https://redirect.github.com/ether/etherpad/issues/7712)).
- Rate-limit test waits for Etherpad readiness before running, instead
of racing the boot sequence
([#&#8203;7726](https://redirect.github.com/ether/etherpad/issues/7726)).
- README link fixes and tidy-up
([#&#8203;7723](https://redirect.github.com/ether/etherpad/issues/7723)
/ [#&#8203;7724](https://redirect.github.com/ether/etherpad/issues/7724)
/
[#&#8203;7725](https://redirect.github.com/ether/etherpad/issues/7725)).
- Several dependency-group bumps across the dev and runtime trees:
`undici` 7.25 → 8.3, `semver` 7.7.4 → 7.8, `tsx` 4.21 → 4.22, `mssql`
12.5.2 → 12.5.3, `js-cookie` 3.0.5 → 3.0.6, `@tanstack/react-query`
5.100.9 → 5.100.10, `actions/dependency-review-action` 4 → 5, plus the
usual Dependabot dev-group rollups.

##### Localisation

- Multiple updates from translatewiki.net.

###
[`v2.7.3`](https://redirect.github.com/ether/etherpad/blob/HEAD/CHANGELOG.md#273)

[Compare
Source](https://redirect.github.com/ether/etherpad/compare/2.7.2...2.7.3)

##### Breaking changes

- **Minimum required Node.js version is now 22.13.** Node.js 20 is
reaching end-of-life (see
<https://nodejs.org/en/about/previous-releases>) and pnpm 11
hard-rejects Node releases older than 22.13. The CI matrix targets Node
22, 24, and 25. Upgrading should be straightforward — install a current
Node.js release before updating Etherpad.
- **The official Docker image no longer ships `curl`, `npm`, or `npx`.**
These were dropped to remove transitive CVEs (curl/libcurl SMB
advisories, npm's bundled picomatch 4.0.3 and brace-expansion 2.0.2).
The container's healthcheck now uses `wget` (busybox built-in, always
present), and Etherpad provisions `pnpm` via `corepack` for all runtime
package operations. If you exec into the container and rely on `curl` or
`npm` for ad-hoc tasks, install them on demand with `apk add curl` or
use the busybox `wget` / `pnpm` already present.

##### Notable enhancements

- **GDPR / privacy controls.** A multi-PR series adds the building
blocks operators need to satisfy data-subject requests:
  - Pad deletion controls (admin-driven and self-service).
  - IP / privacy audit pass across the codebase.
- Author-token cookies are now `HttpOnly`, removing them from JavaScript
reach.
  - Configurable privacy banner shown on first visit.
- Author erasure: an authenticated path for purging an individual
author's identity and contributions.
- **Self-update subsystem (Tier 1: notify).**
- Periodic check against the GitHub Releases API for the configured repo
(default `ether/etherpad`). Configurable via the new `updates.*`
settings block, default tier `"notify"`. Set `updates.tier` to `"off"`
to disable entirely.
- The admin UI shows a banner and a dedicated "Etherpad updates" page
with the current version, latest version, install method, and changelog.
- Pad users see a discreet footer badge **only** when the running
version is severely outdated (one or more major versions behind) or
flagged as vulnerable in a recent release manifest. The public endpoint
that drives this never leaks the version string itself.
- New top-level `adminEmail` setting. When set, the updater emails the
admin on first detection of severe / vulnerable status, with escalating
cadence (weekly while vulnerable, monthly while severely outdated). PR 1
ships the dedupe + cadence logic; real SMTP wiring lands in a follow-up
PR.
- Tier 1 ships in this release. Tiers 2 (manual click), 3 (auto with
grace window) and 4 (autonomous in maintenance window) are designed and
will land in subsequent releases.
  - See `doc/admin/updates.md` for full configuration.
- **Pad compaction.** New `compactPad` HTTP API plus `bin/compactPad`
and `bin/compactAllPads` CLIs to reclaim database space on long-lived
pads with heavy edit history (issue
[#&#8203;6194](https://redirect.github.com/ether/etherpad/issues/6194)).
`--keep N` retains the last N revisions; `--dry-run` previews per-pad
rev counts before writing. Per-pad failures don't stop the bulk run.
- `bin/compactStalePads` (issue
[#&#8203;7642](https://redirect.github.com/ether/etherpad/issues/7642))
targets only pads not edited in the last `--older-than N` days, so hot
pads in active timeslider use are left alone. Same `--keep` /
`--dry-run` shape as `bin/compactAllPads`. Targeting is deliberately a
CLI concern — the `compactPad` API surface stays unchanged.
- **New packaging targets.**
  - Etherpad is now published as a **Snap** package.
- **Debian (.deb)** packages are built via nfpm with a systemd unit, and
a signed apt repository is published to `etherpad.org/apt`.
- **Editor enhancements.**
- IDE-style line operations: keyboard shortcuts to duplicate or delete
the current line.
- New `showMenuRight` URL parameter to hide the right-side toolbar —
useful for embeds that need slimmer chrome.
- Click a user in the userlist to open chat with `@<name>` prefilled,
making mentions discoverable.
- New `padOptions.fadeInactiveAuthorColors` setting plus a toolbar UI to
fade the background colors of authors who have left the pad.
- **Color contrast.** Author colors now pick the WCAG-higher-contrast
text color for readability.
- **Social / mobile metadata.** Pad, timeslider, and home views now emit
Open Graph and Twitter Card tags (closes
[#&#8203;7599](https://redirect.github.com/ether/etherpad/issues/7599))
and a `theme-color` meta that matches the toolbar on mobile.
- **Plugin admin UX.** The `/admin` plugin browser surfaces each
plugin's `ep.json` `disables` declarations, so operators can see what a
plugin will turn off before installing.

##### Notable fixes

- **Socket.io: don't kick authenticated duplicate-author sessions.** A
regression where two tabs from the same authenticated author could evict
each other has been fixed
([#&#8203;7656](https://redirect.github.com/ether/etherpad/issues/7656)
/
[#&#8203;7678](https://redirect.github.com/ether/etherpad/issues/7678)).
- **Anchor scrolling.** Anchor-link navigation now waits for layout to
settle, so jumping to a deep link no longer overshoots.
- **Plugin updater.** `bin/updatePlugins.sh` actually updates installed
plugins again (closes
[#&#8203;6670](https://redirect.github.com/ether/etherpad/issues/6670)).
- **Settings: stable per-release version string.** `randomVersionString`
is now derived from the release identity rather than regenerated on each
boot, so caches behave correctly across restarts of the same version.

##### Internal / contributor-facing

- The HTTP client in the backend has been migrated from `axios` to the
built-in `fetch` API, dropping a dependency now that Node 22 ships a
stable fetch.
- `admin/` and `ui/` workspaces moved from `rolldown-vite` to upstream
**Vite 8**.
- Build and CI moved to **pnpm 11** (`packageManager: "pnpm@11.1.2"`);
the `Dockerfile`, snap, and all GitHub workflows are aligned. pnpm
overrides have been migrated from `package.json` to
`pnpm-workspace.yaml` to match pnpm 11's expectations.
- All client modules have been converted to ESM.
- The CI matrix tests Node 22, 24, and 25; on PRs the matrix is reduced
to a single Node version to keep feedback fast.
- Frontend Playwright tests now run against the `/ether` plugin set,
with feature-tag based skips so plugin-incompatible specs are excluded
automatically.
- Build hardening: signed apt repo publishing, frozen lockfile installs
across CI, Node setup pinned in every workflow, and a Docker-image CVE
sweep that bumps `npm`, `pnpm`, and `uuid`.

##### Localisation

- Multiple updates from translatewiki.net.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC9ldGhlcnBhZCIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWFqb3IiXX0=-->
2026-05-17 13:33:59 +02:00
3a669055d6 feat(helm-deps): update chart common 29.2.8 → 29.3.4 (#48099)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `29.2.8` →
`29.3.4` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC96d2F2ZWpzMm1xdHQiLCJhdXRvbWVyZ2UiLCJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-05-11 05:34:10 +02:00
8ef3aa184c feat(helm-deps): update chart common 29.1.6 → 29.2.8 (#47769)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `29.1.6` →
`29.2.8` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC96d2F2ZWpzMm1xdHQiLCJhdXRvbWVyZ2UiLCJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL21pbm9yIl19-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-05-01 20:17:18 +02:00
TrueCharts BotandGitHub 0b57605a54 fix(etherpad): update image ghcr.io/ether/etherpad 2.7.1 → 2.7.2 (#47564)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [ghcr.io/ether/etherpad](https://redirect.github.com/ether/etherpad) |
patch | `27230a7` → `b723fe5` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

Add the preset `:preserveSemverRanges` to your config if you don't want
to pin your dependencies.

---

### Release Notes

<details>
<summary>ether/etherpad (ghcr.io/ether/etherpad)</summary>

###
[`v2.7.2`](https://redirect.github.com/ether/etherpad/blob/HEAD/CHANGELOG.md#272)

[Compare
Source](https://redirect.github.com/ether/etherpad/compare/2.7.1...2.7.2)

##### Notable enhancements and fixes

- Accessibility pass: corrected dialog semantics, improved focus
management, added missing icon labels, and set the `html lang` attribute
correctly.
- Chat: clicking the chat icon works again, disabled toggles render
properly, and the username layout no longer overflows.
- `/export/etherpad` now honors the `:rev` URL segment, so
revision-specific exports return the requested revision instead of the
latest.
- Undo / redo now scrolls the viewport to follow the caret, so reverted
edits stay in view.
- Page Down / Page Up now scrolls by viewport height instead of a fixed
line count, matching standard editor behavior on tall and short windows
alike.
- Editbar: caret is restored to the pad after changing a toolbar select,
so typing continues in the document instead of falling through to the
toolbar.
- Admin: i18n is restored on `/admin` so the admin UI is translated
again.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC9ldGhlcnBhZCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvcGF0Y2giXX0=-->
2026-04-26 12:47:53 +02:00
TrueCharts BotandGitHub 4adf120170 fix(etherpad): update image ghcr.io/ether/etherpad 2.7.0 → 2.7.1 (#47439)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[ghcr.io/ether/etherpad](https://redirect.github.com/ether/etherpad-lite)
| patch | `6d8bcfd` → `27230a7` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

Add the preset `:preserveSemverRanges` to your config if you don't want
to pin your dependencies.

---

### Release Notes

<details>
<summary>ether/etherpad-lite (ghcr.io/ether/etherpad)</summary>

###
[`v2.7.1`](https://redirect.github.com/ether/etherpad-lite/blob/HEAD/CHANGELOG.md#271)

[Compare
Source](https://redirect.github.com/ether/etherpad-lite/compare/2.7.0...2.7.1)

##### Notable enhancements and fixes

- fixed stop harcoding lang=en, letting the client auto detect locale
- Stop mutating the shared plugin registry during sanitization
- Preserve non-breaking space

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC9ldGhlcnBhZCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvcGF0Y2giXX0=-->
2026-04-24 01:43:55 +02:00
7be5b7277c fix(helm-deps): update chart common 29.1.0 → 29.1.6 (#47400)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `29.1.0` →
`29.1.6` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC96d2F2ZWpzMm1xdHQiLCJhdXRvbWVyZ2UiLCJyZW5vdmF0ZS9jb250YWluZXIiLCJ0eXBlL3BhdGNoIl19-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-04-22 20:58:48 +02:00
TrueCharts BotandGitHub 652d00bdc1 feat(etherpad): update image ghcr.io/ether/etherpad 2.6.1 → 2.7.0 (#47392)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[ghcr.io/ether/etherpad](https://redirect.github.com/ether/etherpad-lite)
| minor | `69a697f` → `6d8bcfd` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

Add the preset `:preserveSemverRanges` to your config if you don't want
to pin your dependencies.

---

### Release Notes

<details>
<summary>ether/etherpad-lite (ghcr.io/ether/etherpad)</summary>

###
[`v2.7.0`](https://redirect.github.com/ether/etherpad-lite/blob/HEAD/CHANGELOG.md#270)

[Compare
Source](https://redirect.github.com/ether/etherpad-lite/compare/2.6.1...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.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMzAuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEzMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImFwcC9ldGhlcnBhZCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=-->
2026-04-22 13:26:05 +02:00
Alfred GöppelandGitHub 49f9262181 fix(etherpad): Update etherpad to ghcr image (#47306)
**Description**
<!--
Please include a summary of the change and which issue is fixed. Please
also include relevant motivation and context. List any dependencies that
are required for this change.
-->
⚒️ Fixes  # <!--(issue)-->

**⚙️ Type of change**

- [ ] ⚙️ Feature/App addition
- [x] 🪛 Bugfix
- [ ] ⚠️ Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] 🔃 Refactor of current code
- [ ] 📜 Documentation Changes

**🧪 How Has This Been Tested?**
<!--
Please describe the tests that you ran to verify your changes. Provide
instructions so we can reproduce. Please also list any relevant details
for your test configuration
-->

**📃 Notes:**
<!-- Please enter any other relevant information here -->

**✔️ Checklist:**

- [x] ⚖️ My code follows the style guidelines of this project
- [x] 👀 I have performed a self-review of my own code
- [ ] #️⃣ I have commented my code, particularly in hard-to-understand
areas
- [ ] 📄 I have made changes to the documentation
- [ ] 🧪 I have added tests to this description that prove my fix is
effective or that my feature works
- [x] ⬆️ I increased versions for any altered app according to semantic
versioning
- [x] I made sure the title starts with `feat(chart-name):`,
`fix(chart-name):`, `chore(chart-name):`, `docs(chart-name):` or
`fix(docs):`

** App addition**

If this PR is an app addition please make sure you have done the
following.

- [ ] 🖼️ I have added an icon in the Chart's root directory called
`icon.png`

---

_Please don't blindly check all the boxes. Read them and only check
those that apply.
Those checkboxes are there for the reviewer to see what is this all
about and
the status of this PR with a quick glance._
2026-04-21 17:33:35 +02:00
TrueCharts-Bot e0feb4afdb Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-04-20 00:25:55 +00:00
ffc13416f5 feat(helm-deps): update chart common 29.0.15 → 29.1.0 (#47224)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://truecharts.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `29.0.15` →
`29.1.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-04-19 11:20:31 +02:00
TrueCharts-Bot 91642136a2 Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-04-18 00:24:44 +00:00
Kjeld Schouten fcbe54ccf4 more fixes 2026-04-17 22:06:12 +02:00
TrueCharts-Bot ce6c266331 Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-04-17 18:06:06 +00:00
509cd59e0a fix(helm-deps): update chart common 29.0.10 → 29.0.15 (#47022)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `29.0.10` →
`29.0.15` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9wYXRjaCJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-04-15 13:43:44 +02:00
d53ffcaf79 fix(helm-deps): update chart common 29.0.0 → 29.0.10 (#46661)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `29.0.0` →
`29.0.10` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9wYXRjaCJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-04-02 02:00:45 +02:00
d2925c98de BREAKING CHANGE(helm-deps): Update chart common 28.33.4 → 29.0.0 (#46224)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | major | `28.33.4` →
`29.0.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9tYWpvciJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-03-19 17:38:03 +01:00
TrueCharts-Bot 6c96fb9c0f Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-03-18 00:20:43 +00:00
Alfred GöppelandGitHub ec199707c1 fix(charts): fix chart.yaml annotations for all charts (#46134)
**Description**
<!--
Please include a summary of the change and which issue is fixed. Please
also include relevant motivation and context. List any dependencies that
are required for this change.
-->
⚒️ Fixes  # <!--(issue)-->

**⚙️ Type of change**

- [ ] ⚙️ Feature/App addition
- [ ] 🪛 Bugfix
- [ ] ⚠️ Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [x] 🔃 Refactor of current code
- [ ] 📜 Documentation Changes

**🧪 How Has This Been Tested?**
<!--
Please describe the tests that you ran to verify your changes. Provide
instructions so we can reproduce. Please also list any relevant details
for your test configuration
-->

**📃 Notes:**
<!-- Please enter any other relevant information here -->

**✔️ Checklist:**

- [x] ⚖️ My code follows the style guidelines of this project
- [x] 👀 I have performed a self-review of my own code
- [ ] #️⃣ I have commented my code, particularly in hard-to-understand
areas
- [ ] 📄 I have made changes to the documentation
- [ ] 🧪 I have added tests to this description that prove my fix is
effective or that my feature works
- [ ] ⬆️ I increased versions for any altered app according to semantic
versioning
- [x] I made sure the title starts with `feat(chart-name):`,
`fix(chart-name):`, `chore(chart-name):`, `docs(chart-name):` or
`fix(docs):`

** App addition**

If this PR is an app addition please make sure you have done the
following.

- [ ] 🖼️ I have added an icon in the Chart's root directory called
`icon.png`

---

_Please don't blindly check all the boxes. Read them and only check
those that apply.
Those checkboxes are there for the reviewer to see what is this all
about and
the status of this PR with a quick glance._
2026-03-17 11:40:04 +01:00
TrueCharts BotandGitHub 465db91ac6 fix(helm-deps): update chart common 28.33.3 → 28.33.4 (#45987)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.33.3` →
`28.33.4` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9wYXRjaCJdfQ==-->
2026-03-12 21:15:56 +01:00
77276072da fix(helm-deps): update chart common 28.33.0 → 28.33.3 (#45974)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.33.0` →
`28.33.3` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9wYXRjaCJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-03-12 15:06:57 +01:00
TrueCharts-Bot 35a06650d9 Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-03-06 00:23:07 +00:00
c685ddd8cf feat(helm-deps): update chart common 28.32.5 → 28.33.0 (#45682)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `28.32.5` →
`28.33.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-03-01 11:04:58 +01:00
772ec1b1b4 fix(helm-deps): update chart common 28.32.2 → 28.32.5 (#45514)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.32.2` →
`28.32.5` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9wYXRjaCJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-02-24 21:16:35 +01:00
d828cf193b feat(helm-deps): update chart common 28.31.19 → 28.32.2 (#45462)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `28.31.19`
→ `28.32.2` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-02-24 05:37:48 +01:00
71711148d4 feat(helm-deps): update chart common 28.30.2 → 28.31.19 (#45418)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `28.30.2` →
`28.31.19` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the [Dependency
Dashboard](../issues/18710) for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yOS4yIiwidXBkYXRlZEluVmVyIjoiNDMuMjkuMiIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-02-23 05:37:11 +01:00
02dac97d45 fix(helm-deps): update chart common 28.30.0 → 28.30.2 (#45040)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.30.0` →
`28.30.2` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My44LjUiLCJ1cGRhdGVkSW5WZXIiOiI0My44LjUiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIiLCJsYWJlbHMiOlsiYXBwL3p3YXZlanMybXF0dCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvcGF0Y2giXX0=-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-02-16 13:13:23 +01:00
507412860e feat(helm-deps): update chart common 28.29.59 → 28.30.0 (#45031)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `28.29.59`
→ `28.30.0` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My44LjUiLCJ1cGRhdGVkSW5WZXIiOiI0My44LjUiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIiLCJsYWJlbHMiOlsiYXBwL3p3YXZlanMybXF0dCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvbWlub3IiXX0=-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-02-15 23:04:15 +01:00
TrueCharts-Bot fe6ee7ee60 Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-02-15 11:30:36 +00:00
3d99f5804a fix(helm-deps): update chart common 28.29.49 → 28.29.59 (#44970)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.29.49`
→ `28.29.59` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My44LjUiLCJ1cGRhdGVkSW5WZXIiOiI0My44LjUiLCJ0YXJnZXRCcmFuY2giOiJtYXN0ZXIiLCJsYWJlbHMiOlsiYXBwL3p3YXZlanMybXF0dCIsImF1dG9tZXJnZSIsInJlbm92YXRlL2NvbnRhaW5lciIsInR5cGUvcGF0Y2giXX0=-->

Signed-off-by: Kjeld Schouten <info@kjeldschouten.nl>
Co-authored-by: Kjeld Schouten <info@kjeldschouten.nl>
2026-02-15 11:33:44 +01:00
Kjeld Schouten d05c0a6e71 port yaml-language-server logic from common2026 2026-02-14 22:35:03 +01:00
TrueCharts-Bot bafc468832 Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-02-03 00:19:06 +00:00
32a5df0fda feat(helm-deps): update chart common to v28.29.49 (#44431)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.29.40`
-> `28.29.49` |
|
[common](https://trueforge.org/truetech/truecharts/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | minor | `28.26.4`
-> `28.29.49` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xNy4wIiwidXBkYXRlZEluVmVyIjoiNDIuMTcuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9taW5vciIsInR5cGUvcGF0Y2giXX0=-->

Signed-off-by: Kjeld Schouten <info@kjeldschouten.nl>
Co-authored-by: Kjeld Schouten <info@kjeldschouten.nl>
2026-02-02 22:19:33 +01:00
TrueCharts-Bot bf152c8e74 Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-02-01 15:24:18 +00:00
TrueCharts-Bot f8c1ee7bdf Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-01-31 19:20:09 +00:00
Alfred GöppelandGitHub a802ce64e9 fix(all-charts): Fix chart.yaml & add missing icons (#44393)
**Description**
<!--
Please include a summary of the change and which issue is fixed. Please
also include relevant motivation and context. List any dependencies that
are required for this change.
-->
⚒️ Fixes  # <!--(issue)-->

**⚙️ Type of change**

- [ ] ⚙️ Feature/App addition
- [ ] 🪛 Bugfix
- [ ] ⚠️ Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] 🔃 Refactor of current code
- [ ] 📜 Documentation Changes

**🧪 How Has This Been Tested?**
<!--
Please describe the tests that you ran to verify your changes. Provide
instructions so we can reproduce. Please also list any relevant details
for your test configuration
-->

**📃 Notes:**
<!-- Please enter any other relevant information here -->

**✔️ Checklist:**

- [ ] ⚖️ My code follows the style guidelines of this project
- [ ] 👀 I have performed a self-review of my own code
- [ ] #️⃣ I have commented my code, particularly in hard-to-understand
areas
- [ ] 📄 I have made changes to the documentation
- [ ] 🧪 I have added tests to this description that prove my fix is
effective or that my feature works
- [ ] ⬆️ I increased versions for any altered app according to semantic
versioning
- [ ] I made sure the title starts with `feat(chart-name):`,
`fix(chart-name):`, `chore(chart-name):`, `docs(chart-name):` or
`fix(docs):`

** App addition**

If this PR is an app addition please make sure you have done the
following.

- [ ] 🖼️ I have added an icon in the Chart's root directory called
`icon.png`

---

_Please don't blindly check all the boxes. Read them and only check
those that apply.
Those checkboxes are there for the reviewer to see what is this all
about and
the status of this PR with a quick glance._
2026-01-31 20:18:46 +01:00
TrueCharts-Bot 5aef95e6ad Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-01-31 18:06:18 +00:00
Alfred GöppelandGitHub a855dd67f7 fix(charts): remove old annotations & add proper category (#44376)
**Description**
<!--
Please include a summary of the change and which issue is fixed. Please
also include relevant motivation and context. List any dependencies that
are required for this change.
-->
⚒️ Fixes  # <!--(issue)-->

**⚙️ Type of change**

- [ ] ⚙️ Feature/App addition
- [ ] 🪛 Bugfix
- [ ] ⚠️ Breaking change (fix or feature that would cause existing
functionality to not work as expected)
- [ ] 🔃 Refactor of current code
- [ ] 📜 Documentation Changes

**🧪 How Has This Been Tested?**
<!--
Please describe the tests that you ran to verify your changes. Provide
instructions so we can reproduce. Please also list any relevant details
for your test configuration
-->

**📃 Notes:**
<!-- Please enter any other relevant information here -->

**✔️ Checklist:**

- [ ] ⚖️ My code follows the style guidelines of this project
- [ ] 👀 I have performed a self-review of my own code
- [ ] #️⃣ I have commented my code, particularly in hard-to-understand
areas
- [ ] 📄 I have made changes to the documentation
- [ ] 🧪 I have added tests to this description that prove my fix is
effective or that my feature works
- [ ] ⬆️ I increased versions for any altered app according to semantic
versioning
- [ ] I made sure the title starts with `feat(chart-name):`,
`fix(chart-name):`, `chore(chart-name):`, `docs(chart-name):` or
`fix(docs):`

** App addition**

If this PR is an app addition please make sure you have done the
following.

- [ ] 🖼️ I have added an icon in the Chart's root directory called
`icon.png`

---

_Please don't blindly check all the boxes. Read them and only check
those that apply.
Those checkboxes are there for the reviewer to see what is this all
about and
the status of this PR with a quick glance._

---------

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-01-31 14:45:57 +01:00
TrueCharts-Bot d2de50f17e Commit daily changes
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
2026-01-31 00:17:02 +00:00
TrueCharts BotandGitHub 09e7d81949 fix(helm-deps): update chart common 28.29.37 → 28.29.40 (#44167)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.29.37`
-> `28.29.40` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xNy4wIiwidXBkYXRlZEluVmVyIjoiNDIuMTcuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9wYXRjaCJdfQ==-->
2026-01-27 11:38:33 +01:00
TrueCharts BotandGitHub 6fef4f5378 fix(helm-deps): update chart common 28.29.36 → 28.29.37 (#44120)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.29.36`
-> `28.29.37` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xNy4wIiwidXBkYXRlZEluVmVyIjoiNDIuMTcuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9wYXRjaCJdfQ==-->
2026-01-26 20:43:14 +01:00
e5dbc41f1d fix(helm-deps): update chart common 28.29.35 → 28.29.36 (#44059)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.29.35`
-> `28.29.36` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xNy4wIiwidXBkYXRlZEluVmVyIjoiNDIuMTcuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9wYXRjaCJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-01-24 11:39:54 +01:00
b2f0b22973 fix(helm-deps): update chart common 28.29.30 → 28.29.35 (#43970)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [common](https://truecharts.org/charts/library/common)
([source](https://ghcr.io/cloudnative-pg/postgis)) | patch | `28.29.30`
-> `28.29.35` |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency
Dashboard for more information.

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi4xNy4wIiwidXBkYXRlZEluVmVyIjoiNDIuMTcuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6WyJhcHAvendhdmVqczJtcXR0IiwiYXV0b21lcmdlIiwicmVub3ZhdGUvY29udGFpbmVyIiwidHlwZS9wYXRjaCJdfQ==-->

Signed-off-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
Co-authored-by: Alfred Göppel <43101280+alfi0812@users.noreply.github.com>
2026-01-23 16:34:04 +01:00