renovate[bot]
1f0e33e07a
chore(deps): update dependency prometheus_postgres_exporter to v0.19.0-0
2026-02-05 06:36:55 +02:00
renovate[bot]
8f6ae1f734
chore(deps): update nginx docker tag to v1.29.5
2026-02-05 06:36:46 +02:00
renovate[bot]
2c0688334f
chore(deps): update dependency jitsi to v10741
2026-02-04 21:02:05 +02:00
renovate[bot]
d548f7ba8c
chore(deps): update docker.io/metio/matrix-alertmanager-receiver docker tag to v2026.2.4
2026-02-04 10:46:09 +02:00
Slavi Pantaleev
a7ddb189b5
Add missing license file for whoami_sync_worker_router.js.j2
2026-02-04 04:26:15 +02:00
Slavi Pantaleev
7d4536cf78
Upgrade baibot (v1.13.0 -> v1.14.0) and add built-in tools configuration support
2026-02-04 04:21:47 +02:00
Slavi Pantaleev
93f6264466
Add CHANGELOG entry for whoami-based sync worker routing
2026-02-04 04:06:59 +02:00
Slavi Pantaleev
45c855c853
Remove old map-based user identifier extraction for sync workers
...
The whoami-based approach is now the only implementation for sync worker routing.
It works with all token types (native Synapse, MAS, etc.) and is automatically
enabled when sync workers exist.
The old map-based approach only worked with native Synapse tokens (syt_<b64>_...)
and would give poor results with MAS or other auth systems.
2026-02-04 04:06:59 +02:00
Slavi Pantaleev
5cc69ca7eb
Add whoami-based sync worker routing for user-level sticky sessions
...
This adds a new routing mechanism for sync workers that resolves access tokens
to usernames via Synapse's whoami endpoint, enabling true user-level sticky
routing regardless of which device or token is used.
Previously, sticky routing relied on parsing the username from native Synapse
tokens (`syt_<base64 username>_...`), which only works with native Synapse auth
and provides device-level stickiness at best. This new approach works with any
auth system (native Synapse, MAS, etc.) because Synapse handles token validation
internally.
Implementation uses nginx's auth_request module with an njs script because:
- The whoami lookup requires an async HTTP subrequest (ngx.fetch)
- js_set handlers must return synchronously and don't support async operations
- auth_request allows the async lookup to complete, then captures the result
via response headers into nginx variables
The njs script:
- Extracts access tokens from Authorization header or query parameter
- Calls Synapse's whoami endpoint to resolve token -> username
- Caches results in a shared memory zone to minimize latency
- Returns the username via a `X-User-Identifier` header
The username is then used by nginx's upstream hash directive for consistent
worker selection. This leverages nginx's built-in health checking and failover.
2026-02-04 04:06:59 +02:00
Aine
81f815d19b
fix uid/gid vars for Synapse Admin
2026-02-03 21:40:11 +00:00
renovate[bot]
c63a0f984b
chore(deps): update dependency valkey to v9.0.2-0
2026-02-03 22:53:35 +02:00
Aine
6c4b9bb3d7
Merge pull request #4886 from spantaleev/synapse-admin-etke53
...
Synapse Admin v0.11.1-etke53
2026-02-03 20:40:34 +00:00
Slavi Pantaleev
76e13f8200
Add native Sliding Sync (MSC3575) endpoint to worker routing
...
The /_matrix/client/unstable/org.matrix.simplified_msc3575/sync endpoint
can be handled by generic workers, but Synapse's workers.md documentation
doesn't mention it. The code confirms it's worker-compatible:
- SlidingSyncRestServlet is registered via sync.register_servlets:
https://github.com/element-hq/synapse/blob/0dfcffab0f/synapse/rest/client/sync.py#L1128-L1131
- sync.register_servlets is NOT in the worker exclusion list:
https://github.com/element-hq/synapse/blob/0dfcffab0f/synapse/rest/__init__.py#L180-L194
- GenericWorkerStore includes SlidingSyncStore:
https://github.com/element-hq/synapse/blob/0dfcffab0f/synapse/app/generic_worker.py#L168
This adds the endpoint to both:
- matrix_synapse_workers_sync_worker_client_server_endpoints (for specialized sync workers with sticky routing)
- matrix_synapse_workers_generic_worker_endpoints (documenting generic worker capability)
2026-02-02 15:59:00 +02:00
renovate[bot]
aeea016e3c
chore(deps): update dependency babel to v2.18.0
2026-02-01 19:25:08 +02:00
Aine
5bbb1930cb
Synapse Admin i18n menu
2026-01-31 23:55:47 +00:00
renovate[bot]
2f66b7df94
chore(deps): update docker.io/metio/matrix-alertmanager-receiver docker tag to v2026.1.31
2026-01-31 12:58:55 +02:00
Aine
f621eb8018
Synapse Admin v0.11.1-etke53
2026-01-30 22:39:12 +00:00
renovate[bot]
3f0ff4c510
chore(deps): update halfshot/matrix-hookshot docker tag to v7.3.2
2026-01-30 21:15:05 +02:00
Slavi Pantaleev
b9631aea1c
Upgrade ntfy (v2.16.0-0 -> v2.16.0-1)
2026-01-30 21:14:11 +02:00
Thom Wiggers
b1ff71266b
Update matrix-appservice-irc to 4.0.0 with authenticated media proxy support
...
- Upgrade from 1.0.1 to 4.0.0
- Add ircService.mediaProxy configuration for authenticated Matrix media
- Add Traefik integration for media proxy endpoint
- Generate signing key for authenticated media
Closes #3512
Co-authored-by: Jade Ellis <jade@ellis.link >
Co-authored-by: Slavi Pantaleev <slavi@devture.com >
2026-01-29 12:08:59 +02:00
renovate[bot]
72d522b9f1
chore(deps): update dependency backup_borg to v1.4.3-2.1.1-0
2026-01-29 05:26:29 +02:00
renovate[bot]
67e650b5f9
chore(deps): update coturn/coturn docker tag to v4.8.0
2026-01-27 22:46:31 +02:00
Slavi Pantaleev
18b11eea3b
Try versioning=loose for the Coturn container image definition for Renovate
...
Ref: https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/4880#issuecomment-3807433691
2026-01-27 22:40:47 +02:00
Sid Manat
fd6f72382d
Upgrade Coturn (4.6.2-r11 -> 4.8.0-r0)
2026-01-27 22:24:54 +02:00
Slavi Pantaleev
460d46999f
Make Synapse's enable_local_media_storage configurable
...
Ref:
- https://github.com/spantaleev/matrix-docker-ansible-deploy/pull/4882
- https://github.com/element-hq/synapse/pull/19204
- https://element-hq.github.io/synapse/latest/usage/configuration/config_documentation.html#enable_local_media_storage
We default it to `true`, keeping up with upstream and the old behavior.
s3-storage-provider users may set `matrix_synapse_enable_local_media_storage` to `false`
to disable local file caching.
This likely comes at the expense of some performance.
For matrix-media-repo users, it likely doesn't matter what this is set to,
as for a matrix-media-repo setup, all media-related API endpoints are
captured and forwarded to matrix-media-repo (before reaching Synapse).
2026-01-27 22:11:06 +02:00
renovate[bot]
93d110e61e
chore(deps): update ghcr.io/element-hq/synapse docker tag to v1.146.0
2026-01-27 22:10:25 +02:00
renovate[bot]
6629867235
chore(deps): update ghcr.io/element-hq/matrix-authentication-service docker tag to v1.10.0
2026-01-27 21:18:40 +02:00
renovate[bot]
8a3c75b7bd
chore(deps): update ghcr.io/element-hq/element-web docker tag to v1.12.9
2026-01-27 16:55:38 +02:00
renovate[bot]
b6bf91c150
chore(deps): update dependency etherpad to v2.6.1-0
2026-01-27 12:53:38 +02:00
renovate[bot]
b0e70f419f
chore(deps): update dependency setuptools to v80.10.2
2026-01-26 08:15:49 +02:00
renovate[bot]
692c34ad9b
chore(deps): update halfshot/matrix-hookshot docker tag to v7.3.1
2026-01-24 20:07:34 +02:00
Slavi Pantaleev
97c2915034
Upgrade baibot (v1.12.0 -> v1.13.0)
2026-01-23 00:52:36 +02:00
renovate[bot]
292397234a
chore(deps): update dependency packaging to v26
2026-01-22 07:52:37 +02:00
renovate[bot]
82d6f3de2c
chore(deps): update dependency setuptools to v80.10.1
2026-01-21 15:49:57 +02:00
renovate[bot]
cc9234d3ba
chore(deps): update ghcr.io/etkecc/fluffychat-web docker tag to v2.4.0
2026-01-21 15:49:48 +02:00
renovate[bot]
47322a8d52
chore(deps): update docker.io/metio/matrix-alertmanager-receiver docker tag to v2026.1.21
2026-01-21 08:35:31 +02:00
Slavi Pantaleev
911031e2cf
Add support for Hookshot static connections (new in v7.3.0)
...
This adds the matrix_hookshot_connections variable for configuring
static webhook connections via the config file.
See: https://github.com/matrix-org/matrix-hookshot/pull/1102
2026-01-20 16:10:30 +02:00
renovate[bot]
e01a79865c
chore(deps): update halfshot/matrix-hookshot docker tag to v7.3.0
2026-01-20 15:38:23 +02:00
renovate[bot]
ab97b94245
chore(deps): update dependency ntfy to v2.16.0-0
2026-01-20 11:56:58 +02:00
renovate[bot]
c8fc504470
chore(deps): update dock.mau.dev/mautrix/whatsapp docker tag to v0.2601.0
2026-01-16 22:28:12 +02:00
renovate[bot]
a6c447ade3
chore(deps): update dock.mau.dev/mautrix/gmessages docker tag to v0.2601.0
2026-01-16 22:26:58 +02:00
renovate[bot]
aa69069627
chore(deps): update dock.mau.dev/mautrix/signal docker tag to v0.2601.0
2026-01-16 22:26:48 +02:00
renovate[bot]
fa22053bf1
chore(deps): update ansible/ansible-lint action to v26.1.1
2026-01-16 14:32:56 +02:00
renovate[bot]
a3ef7109b6
chore(deps): update dependency docker to v8
2026-01-15 21:29:26 +02:00
renovate[bot]
7c8a28d590
chore(deps): update ghcr.io/element-hq/lk-jwt-service docker tag to v0.4.1
2026-01-15 20:30:02 +02:00
renovate[bot]
28af19a1a7
chore(deps): update dependency myst-parser to v5
2026-01-15 14:44:50 +02:00
renovate[bot]
ea4b467cd3
chore(deps): update dependency livekit_server to v1.9.11-0
2026-01-15 14:43:30 +02:00
Slavi Pantaleev
bd6202eb65
Upgrade Traefik (v3.6.6-0 -> v3.6.7-1) and remove all (now-unnecessary) encodedCharacters_* setting overrides
...
All these `encodedCharacters_*` settings default to `true` in Traefik v3.6.7,
so we don't need to override their values.
Ref: https://doc.traefik.io/traefik/v3.6/migrate/v3/#v367
Closes https://github.com/spantaleev/matrix-docker-ansible-deploy/issues/4835
2026-01-15 14:40:38 +02:00
Aine
4d0cf32151
grafana: add /tmp tmpfs
2026-01-15 09:12:17 +00:00
renovate[bot]
1890f3a01a
chore(deps): update dependency jitsi to v10710
2026-01-14 16:52:49 +02:00