-
v0.5.0-rc.7
All checks were successfulDocumentation / Build and Deploy Documentation (push) Successful in 38sRelease Docker Image / define-variables (push) Successful in 2sChecks / Rust / Format (push) Successful in 49sRelease Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Successful in 14m19sRelease Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Successful in 14m17sRelease Docker Image / merge (push) Successful in 10sChecks / Prefligit / prefligit (push) Successful in 10sChecks / Rust / Clippy (push) Successful in 3m14sChecks / Rust / Cargo Test (push) Successful in 3m44sreleased this
2025-07-25 14:51:23 +00:00 | 2 commits to main since this releaseContinuwuity is a community-driven Matrix homeserver written entirely in Rust. Today we're sharing over a month's worth of work with 177 commits, 35 pull requests and 11 contributors as
v0.5.0-rc.7
.Our main room also reached 300 members, and from our janky measurements, we discovered around 150 publicly federated deployments of Continuwuity. In addition, our GitHub mirror also recently surpassed 60 stars! We can’t thank everyone enough for the support ❤️
Features
Policy Server Features
- Policy server following: Continuwuity now checks events against a room's policy server (if configured) to prevent spam reaching your timeline #857 (@nex)
- Soft-fail redactions: Redactions for soft-failed events are now soft-failed - spam is much less likely to wipe out your timeline (@nex)
User Management
- User suspension system: New admin commands to suspend/unsuspend users #876 (@nex)
- Suspended users cannot send events, create rooms, join rooms, or change profiles
- Suspension metadata is recorded (@Jade)
- Admin users cannot be suspended
- Suspend new users on registration option
- User reporting: Implementation of Matrix user reporting functionality #882 (@nex)
- Report messages include intentional mentions
- Suspended users are forbidden from sending reports
- ReCaptcha registration flow: Implementation of ReCaptcha for user registration #900 (@nex)
- Allows making open-registration servers slightly less risky and prone to bots
Matrix Protocol Support
- Room summary API: Stabilized support for MSC3266 (room summary API) #881 (@nex)
- Space upgrades (MSC4168): Update Spaces on room upgrade, and vice versa #907 (@nex)
- Redact on ban (MSC4293): Support for passing through
redact_events
#877 (@nex) - MSC4307: Improved validation #901 (@nex)
- Advertise support for Matrix spec versions 1.8, 1.12, 1.13, and 1.14 #884 (@nex)
Administration & Monitoring
- Long admin command responses: Upload files for admin commands that are too long #902 (@nex)
- Journald logging: Support for logging to systemd journal with tracing-journald #892 (@Jade)
- State forcing: Allow overriding "most recent event" when forcing state download #853 (@nex)
- Added
/_continuwuity/
API paths #904 (@n)
Configuration Options
- Typing & Read Receipts: Options to disable local typing and read receipts #898 (@oddlid)
- New configuration option for federation connection timeouts #909 (@rooot)
Performance Improvements
- parking_lot: Replaced all
std::Mutex
andstd::RwLock
withparking_lot
equivalents #908 (@Jade)- Enables hardware lock elision for better performance, and deadlock detection
Bugfixes
- Fixed server-level room bans preventing federated leaves #886 (@nex)
- Fixed handling of empty state events in room upgrades #907 (@nex)
- Only load children of nested spaces when appropriate #870 (@Aranjedeath)
- Fixed membership handling when room is disconnected #875 (@nex)
- Always calculate state diff IDs in syncv3, reducing times when room state fails to be sent down sync #840 (@nex)
- Additional soundness checks when creating PDUs #871 (@nex)
- Fixed an off-by-one error in a check #873 (@jason)
- Corrected project brand references (@Jade)
Dependencies
- Rust 1.87: Updated to Rust 1.87 with newer LLVM #860 (@Jade)
- RocksDB: Upgrade from 9.11.1 to 10.4.2 #911 (@Jade)
- Updated multiple dependencies to latest versions (@Jade)
Documentation
-
Admin command documentation: Automatic generation of admin command documentation #892 (@Jade)
-
Better grammar in deployment and Debian package documentation (@Jade)
-
Updated Docker and generic deployment instructions (@Jade)
-
Updated and improved NixOS installation instructions (@Jade)
-
Code style guide: Added comprehensive code style guide #888 (@Jade)
-
Contributing guide: Updated contributing documentation #864 (@Jade)
-
TURN testing: Added section for testing TURN servers (@Jade)
-
Updated Arch Linux deployment documentation #856 (Kimiblock)
-
Use credentials to load configuration in systemd service #867 (Kimiblock)
-
Better logging and comments throughout the codebase (@Jade, @nex)
Infrastructure & CI
- Binary artefacts: CI now uploads binaries as build artefacts (@Jade)
- Registry mirroring: Docker images are now mirrored to GitLab, with more registries to come #894 (@Jade)
- Nix fixes: Updated toolchain, cleaned up unused assets, fix issues #885 (@Shuroii, @transgwender)
- Conventional commits: Enforced conventional commit message format #868 (@Jade)
- Repository validation checks, including typo detection and formatting (@Jade)
- All features are now tested in CI and documentation builds (@Jade)
- Fixed Docker tags not being in the expected format (@Jade)
- Build fixes for Element Web (https://element.continuwuity.org) (@tcpipuk)
- Fixes to documentation deployment (@Jade)
Thanks to all our contributors:
- @Jade - Project maintenance, performance improvements, build system, documentation, CI improvements
- @nex - Policy server implementation, user management, Matrix protocol support and more
- @rooot - Federation configuration improvements
- @oddlid - Typing and read receipts configuration options
- @Shuroii - Nix and RocksDB build system improvements
- @n - API endpoint additions
- @Aranjedeath - Space handling fixes
- @tcpipuk - Element Web build fixes
- @Kimiblock - Systemd and documentation improvements
- @transgwender - Nix fixes
- nyabinary - NixOS package
If you are currently running the original conduwuit, you can migrate your existing installation to Continuwuity - just like the last two releases. It's a completely drop-in replacement!
A Docker image is available at
forgejo.ellis.link/continuwuation/continuwuity:v0.5.0-rc.7
. You can always get the latest release with thelatest
tag. We're also now mirroring to GitLab atregistry.gitlab.com/continuwuity/continuwuity
!You can also find binaries and packages attached to this release.
Caution
You'll notice that they're named differently from the last release - we've been having some issues getting static binaries built in time, so we've uploaded dynamic binaries in the meantime. You need to install liburing and have glibc available to run these binaries - we'll get static binaries (and .debs) up soon! When we do, we'll post in the announcements room.
Matrix Rooms
Join our Matrix room and space to chat with us about the project!
If you run your own continuwuity server, you should also join the announcements room, as important announcements are sent there (and may not be mirrored to the main room).
You can boost this post on the Fediverse
or on Bluesky, and give us a star on GitHub!Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
1 download
-
conduwuit-base-linux-amd64-gnu-release
11 downloads · 72 MiB
-
conduwuit-base-linux-arm64-gnu-release
4 downloads · 62 MiB
-
conduwuit-haswell-linux-amd64-gnu-release
6 downloads · 73 MiB