• v26.7.1 83cf15bccb

    v26.7.1
    All checks were successful
    Checks / Prek / Check changed files (push) Successful in 6s
    Checks / Prek / Pre-commit & Formatting (push) Successful in 59s
    Build / Debian DEB / build (amd64, debian-latest) (push) Successful in 9m6s
    Build / Debian DEB / build (amd64, debian-oldstable) (push) Successful in 9m29s
    Build / Debian DEB / build (amd64, ubuntu-latest) (push) Successful in 9m38s
    Build / Debian DEB / build (amd64, ubuntu-previous) (push) Successful in 9m41s
    Build / Debian DEB / build (arm64, debian-latest) (push) Successful in 10m0s
    Build / Debian DEB / build (arm64, debian-oldstable) (push) Successful in 11m8s
    Build / Debian DEB / build (arm64, ubuntu-latest) (push) Successful in 10m18s
    Build / Debian DEB / build (arm64, ubuntu-previous) (push) Successful in 10m46s
    Build / Static via Nix / Build conduwuit-linux-static-arm64 Binary (push) Successful in 27m56s
    Documentation / Build and Deploy Documentation (push) Successful in 1m45s
    Build / Static via Nix / Build conduwuit-linux-static-amd64 Binary (push) Successful in 31m42s
    Build / Static via Nix / Build conduwuit-linux-static-arm64-maxperf Binary (push) Successful in 30m25s
    Build / Static via Nix / Build conduwuit-haswell-linux-static-amd64-maxperf Binary (push) Successful in 42m45s
    Build / Static via Nix / Release Binaries (push) Successful in 36s
    Checks / Prek / Clippy and Cargo Tests (push) Successful in 9m22s
    Release Docker Image / Build linux-arm64 (max-perf) (push) Successful in 33m5s
    Release Docker Image / Build linux-amd64 (release) (push) Successful in 15m57s
    Release Docker Image / Build linux-arm64 (release) (push) Successful in 13m52s
    Release Docker Image / Create Multi-arch Release Manifest (push) Successful in 20s
    Release Docker Image / Build linux-amd64 (max-perf) (push) Successful in 34m3s
    Release Docker Image / Release Binaries (push) Successful in 24s
    Release Docker Image / Create Max-Perf Manifest (push) Successful in 28s
    Release Docker Image / Mirror Images (push) Successful in 4m16s
    Stable

    ginger released this 2026-07-27 20:37:24 +00:00 | 0 commits to main since this release

    Signed by ginger
    SSH key fingerprint: SHA256:euWU/YvKXZwtOOQmT9KPiMSOJI3gOcPfujywaadW+ok

    Continuwuity 26.7.1

    Continuwuity is a community-driven Matrix chat server, designed to be efficient and easy to run

    now I just need to figure out how you've broken the laws of mathematics on a friday evening

    Hello friends! We've got another release for you all, incorporating loads of bugfixes since 26.6.0 released earlier this month. Legacy sync has gotten a fresh coat of paint, including a mitigation for the infamous bug known as !779 that caused newly joined rooms to fail to sync to clients. Various issues with appservice masquerading have been fixed as well, so E2EE-compatible appservices should work properly again. Finally, we now have official ARM64 Debian and Ubuntu packages available in our repository -- check the documentation to learn more.

    The team would like to extend special thanks to everyone who updated to 26.6.0 and its patch releases, reported bugs, and help us polish everything up. Your support is critical to keeping the project together 💜

    Note

    26.7.1 is a retag of 26.7.0 to fix an issue with the new ARM64 deb workflow. The releases have identical code and identical binaries.

    Features

    • Build and publish arm64 .deb packages alongside amd64 for all supported Debian and Ubuntu releases. (#1235)
    • Dehydrated devices are now visible in the account panel. Contributed by @ginger. (#1970)
    • Introduce accepted_ip_sources as a multiple options variant of request_ip_source, allowing for more advanced deployments and making fallbacks an explicit choice. Contributed by @Omar007 (#1985)
    • Added an admin command to issue an access token for a bot account, to allow legacy bots to function while legacy authentication is disabled. Contributed by @ginger (#2044)
    • Added support for the OAuth2 device authorization flow. Contributed by @ginger
    • Added support for the stable mutual rooms query endpoint. Contributed by @ginger

    Bugfixes

    • Fix joining restricted rooms over federation failing with signature verification error. (fix-federation-signature)
    • Fixed the client space hierarchy endpoint returning a 500 "Space hierarchy is unreasonably large" error for cyclic space graphs (e.g. a space containing itself). Rooms are now deduplicated during traversal as required by the spec, and the traversal depth is bounded even when the client does not specify max_depth. (space-hierarchy-cycle)
    • Fixed simplified sliding sync holding account data for up to 30 seconds, which made encryption setup and cross-signing resets appear to hang. (sss-account-data-longpoll)
    • Fixed local invites and invite acceptances not being reflected in sync promptly. Contributed by @eleboucher (wake-local-member-sync)
    • Fixed the deeplink redirect for deleting devices. Contributed by @koen (#1965)
    • Fix status code for oauth registration. Contributed by @n00byking (#1984)
    • Exempt m.room.create from auth_events check. Contributed by @eleboucher (#1987)
    • Fixed create being returned as a supported prompt value regardless of if registration is enabled or not. Contributed by @ginger (#1994)
    • Fixed high CPU usage when multiple clients from the same account were connected at once. Each sync woke the account's other sync loops, causing them to wake each other in a loop. (#2006)
    • Fixed MSC4190 appservice device creation registering a random device ID instead of the requested one (and dropping the requested display name), which prevented encrypted mautrix bridges from starting on OIDC-enabled servers and leaked an orphan device on the bridge bot per startup attempt. (#2015)
    • Deactivated users and appservice puppets are no longer counted by /_continuwuity/local_user_count. Contributed by @ginger. (#2040)
    • Re-introduced admin room registration alerts that were accidentally removed in the OAuth2 update. (#2057)
    • Appservices are now properly able to create devices for E2EE.
    • Appservices may now specify both the unstable and stable device_id query parameters in a request. The stable parameter will take priority. Contributed by @ginger.
    • Fixed roomuserid_lastnotificationread being aliased to the highlight count table, which clobbered highlight counts when setting a read marker. Contributed by @eleboucher
    • Fixed freshly left room failing to sync.
    • Fixed newly created rooms failing to sync properly in clients using legacy sync.
    • Fixed newly joined rooms failing to sync their full state (including the room name) to clients using legacy sync.
    • Fixed requests returning 500 Internal Server Error when the header selected by request_ip_source is absent, duplicated, or malformed (for example Envoy omitting X-Envoy-External-Address on internal requests). The client IP now falls back to the connection peer address instead of failing the request. Contributed by @eleboucher
    • Resolve alias service by correct name for auto-join. Contributed by @eleboucher

    Improved Documentation

    • Updated an out-of-date statement about Oracle Linux release cadences. (#1999)

    Get Continuwuity

    Docker Images

    • Forgejo: forgejo.ellis.link/continuwuation/continuwuity:v26.7.1

    Mirrors (may be outdated):

    • Docker Hub: docker.io/jadedblueeyes/continuwuity:v26.7.1
    • GitHub: ghcr.io/continuwuity/continuwuity:v26.7.1
    • GitLab: registry.gitlab.com/continuwuity/continuwuity:v26.7.1

    You can also use the latest tag for the most recent release.

    First-party Packages

    Community Packages

    Packaging status

    Binaries

    Plain binaries are distributed below. They require glibc and liburing to work - most distributions already have these installed.

    Static binaries are built with musl, and will work on any Linux distribution.

    From Source

    See our deployment documentation for instructions on building from source.

    Downloads