Commit Graph
168 Commits
Author SHA1 Message Date
Erwan Leboucher 8c720e5427 fix: Store to-device messages before syncs can read their count 2026-11-05 15:17:36 +00:00
Erwan Leboucher fb389cb6f9 fix: Record device list changes before syncs can read their count
Signed-off-by: Erwan Leboucher <erwanleboucher@gmail.com>
2026-11-05 15:17:23 +00:00
Bardi Harborow 4d0ccd998f fix: Return M_PROFILE_TOO_LARGE for oversize profiles
Profile updates that would push the profile over 64 KiB were rejected
with an untyped error, producing a 500. The spec requires 400
M_PROFILE_TOO_LARGE, which ruma now provides.
2026-11-04 19:32:17 +00:00
Bardi Harborow 42609eab02 fix: Return M_KEY_TOO_LARGE for oversize profile keys
Profile keys longer than 255 bytes were rejected with 413 M_TOO_LARGE.
The spec requires 400 M_KEY_TOO_LARGE, which ruma now provides.
2026-11-04 19:32:17 +00:00
Jade Ellis 24b1e2ebe8 refactor(service): Use SyncRwLock and SyncMutex for in-memory services
Convert in-memory data structures in appservice, rooms::typing, and sync
wakers to use SyncRwLock and SyncMutex. Drop appservice locks before
making outbound network requests in room alias queries and federation
invites.
2026-10-28 21:48:22 +00:00
Jade Ellis 1e34bd2ed9 style: Run formatting 2026-10-05 00:27:12 +01:00
timedout 935ddf1d0f style: Change Allow to Default etc
`ExplicitAllow` -> `Allow`
2026-10-02 18:10:18 +01:00
timedout 495eeedd24 style: Don't return Allow in an else block 2026-10-02 18:10:17 +01:00
timedout 63294f8775 fix: Inverted check 2026-10-02 18:10:17 +01:00
timedout 43ee11bb00 feat: Support MSC4494 2026-10-02 18:10:17 +01:00
Ginger 4ea4e15edb chore: Reformat with latest nightly 2026-09-24 09:53:59 -04:00
Ginger 9fbabe2210 chore: Reformat with latest nightly 2026-09-01 12:55:05 -04:00
timedout 6919f9681e fix: Remove OTKs and fallback keys when deleting a device 2026-08-29 14:51:19 +01:00
Ginger eadcea8034 chore: Clippy fixes 2026-08-25 12:37:13 -04:00
Jacob Taylor 4146e0f1da fix: Resolve membership service by correct name for auto-join 2026-08-01 22:32:25 -07:00
timedout 399005abc6 chore: Move registration notice logic 2026-07-27 16:46:36 +01:00
Ginger 9a3496ae70 feat: Add admin command to issue access tokens 2026-07-27 14:21:38 +00:00
timedout 8b3be67860 feat: Increase access token length
Reviewed-By: ginger <ginger@gingershaped.computer>
2026-07-19 15:06:23 +01:00
Erwan Leboucher b1632ee60b fix(register): Resolve alias service by correct name for auto-join 2026-07-17 17:57:51 +00:00
Erwan Leboucher e2eb980b5e fix(sync): Stop waking sync loops when removing to-device events 2026-07-16 22:15:27 +02:00
Ginger 1f5e178c3f fix: Properly handle appservice device creation 2026-07-13 08:50:48 -04:00
Ginger ad4f7973cb refactor: Remove list_local_users function 2026-07-07 11:33:47 -04:00
Ginger 6f76b0a593 fix: Don't bail out when changing profile data if membership cache is wrong 2026-07-05 10:51:36 -04:00
Ginger 3467dffd94 fix: Adjust sync watcher logic to be more explicit 2026-07-05 00:42:44 +00:00
Ginger 3282ba8eab fix: Miscellaneous fixes 2026-07-02 16:34:38 -04:00
Ginger 06afe4f1a3 feat: Add support for importing profile data from claims 2026-07-02 16:34:38 -04:00
Ginger 53d6887b86 refactor: Move profile field setting logic into users service 2026-07-02 16:34:38 -04:00
Ginger 58a6e1232c feat: Implement !admin oidc unlink 2026-07-02 16:34:38 -04:00
Ginger c0cb4afd8a feat: Initial implementation of OIDC 2026-07-02 16:34:38 -04:00
Ginger 69163b5391 refactor: Split remote and deactivated users into their own columns 2026-07-02 16:24:07 -04:00
Ginger 52026bb0f1 chore: Formatting 2026-06-29 09:41:59 -04:00
Ginger 138ec05cf2 feat: Implement support for prompt=create in the authorization code flow 2026-06-29 09:35:50 -04:00
Ginger e8d6fa565e feat: Add support for registering accounts with the web UI 2026-06-29 09:35:50 -04:00
Ginger b37480d6b2 fix: Return the correct error code for expired access tokens 2026-06-29 09:35:48 -04:00
Ginger df3f646c92 feat: Implement oauth auth code and refresh token flows 2026-06-29 09:35:48 -04:00
timedout 967e2cc54f refactor: Split the users service into several modules
Also resolvers several lints, including needless async on create_user
2026-06-27 18:37:33 +01:00
timedout 17cff1fb36 style: Document & refactor users service 2026-06-27 18:36:44 +01:00
timedout b6baf66399 feat: Support MSC4380 invite blocking
fix: Re-add silently dropped support for MSC4155
2026-06-24 18:59:49 +01:00
timedout 62b58e1a6a fix: SEC16 2026-06-20 16:03:37 +01:00
Ginger ba2c123e82 feat: Remove support for server-side blurhashing 2026-05-14 13:22:17 +00:00
Ginger 39a882c4a1 chore: Clippy fixes 2026-05-08 12:41:57 -04:00
Ginger f091d3a732 fix: Correctly check for local users' existence 2026-05-08 11:48:20 -04:00
Ginger e212c91ebf fix: Address review comments 2026-05-05 13:35:35 -04:00
Ginger 8c2cf67783 refactor: Remove support for guest user registration 2026-05-05 09:09:48 -04:00
new-years-eve 833216256b feat: Add support for fallback keys
Fallback keys can be provided by client devices to be used in case the
supply of one-time keys run out. The server will store one fallback key
per user, per device, per algorithm. The server will keep track of
whether this fallback key has been used or not.

The  /keys/claim endpoint now provides a fallback key
if no one-time key is found

The /keys/upload endpoint now accepts fallback keys

The /sync endpoint now informs the client of the algorithms for which it
has an unused fallback key in stock.
2026-05-04 20:05:26 +00:00
Ginger 52d1ed24a9 refactor: Remove LDAP support 2026-05-04 11:27:47 -04:00
Ginger e70004c98f chore: Clippy fixes 2026-04-28 09:16:56 -04:00
Ginger 1bf6d2a117 refactor: Fix errors in api/client/profile.rs and api/client/unstable.rs 2026-04-28 09:16:52 -04:00
Jade Ellis a4e64383b7 refactor: Ruma upstraming, bake a little more 2026-04-28 09:16:51 -04:00
GingerandJade Ellis 204bc1367e refactor: Ruma upstreaming, half-baked edition
Co-authored-by: Jade Ellis <jade@ellis.link>
2026-04-28 09:16:51 -04:00