Commit Graph

300 Commits

Author SHA1 Message Date
matrixbot 84766e3c30 Automatic merge back to main (#4070) 2025-02-20 09:04:08 +01:00
Quentin Gliech 9d4d09f7c1 Fix a crash on startup when a listener has an empty prefix 2025-02-20 08:31:11 +01:00
Quentin Gliech a1694acdd2 Convert IPv6-mapped IPv4 addresses to IPv4 addresses 2025-02-19 15:33:37 +01:00
Quentin Gliech 935400d87b Experimental feature to timeout inactive sessions 2025-02-12 17:31:21 +01:00
Quentin Gliech 8e9919b381 Encapsulate migration state in a single structure 2025-02-07 15:02:30 +01:00
Quentin Gliech e46cd724f4 Make the MAS connection owned in the locked database struct 2025-02-07 12:53:51 +01:00
Quentin Gliech f0e14ee6af Merge pull request #3926 from element-hq/rei/syn2mas_8_atrtdevs
syn2mas: migrate access tokens, refresh tokens and devices
2025-02-05 11:57:59 +01:00
Olivier 'reivilibre ca32c5ebff Add MasWriter support for compat refresh tokens + some migration progress 2025-02-05 11:38:50 +01:00
Quentin Gliech 453fdcf9b6 Fetch the upstream OIDC metadata in the background on startup 2025-01-30 15:24:45 +01:00
reivilibre fec4efd9d8 syn2mas: Support migrating external IDs as upstream OAuth2 providers (#3917)
* Add `SynapseReader` support and test for external IDs

* Run database migrations and do a config sync before syn2mas

* FullUserId: implement Display

* Add `MasWriter` support and test for upstream OAuth provider links

* Remove special-purpose write buffers and use only the generic one

* Build the provider ID mapping
2025-01-30 10:34:20 +00:00
Quentin Gliech 3f494a61e7 Don't prevent starting up if the mail backend is unavailable 2025-01-29 15:45:50 +01:00
Quentin Gliech d57552ce66 Fix crash if the watchdog is not set 2025-01-29 14:56:25 +01:00
Quentin Gliech e3e6537fe7 Run reload handlers in parallel 2025-01-28 14:29:33 +01:00
Quentin Gliech 6aa2e366cc Advertise the main PID through sd_notify on startup 2025-01-28 14:29:33 +01:00
Quentin Gliech 88de377b42 Rename ShutdownManager to LifecycleManager 2025-01-28 14:29:33 +01:00
Quentin Gliech 0b7042b809 Send notifications about the state of the service to systemd 2025-01-28 14:16:56 +01:00
Quentin Gliech c86746fd1f Handle SIGHUPs as part of the shutdown manager 2025-01-28 13:29:12 +01:00
Quentin Gliech 879eb6a3ec Merge pull request #3893 from element-hq/quenting/axum-0.8
Upgrade axum to 0.8
2025-01-28 09:47:49 +01:00
reivilibre c3767905e4 syn2mas: Migrate threepids to MAS (#3878)
* Add a table to hold unsupported threepids

* Migrate threepids from Synapse to MAS
2025-01-27 18:01:46 +00:00
reivilibre e5b6e1e8c2 Add pre-migration checks to syn2mas (#3805)
This matches or exceeds `advisor.mts` from the old tool.

Co-authored-by: Quentin Gliech <quenting@element.io>
2025-01-27 18:01:46 +00:00
reivilibre fb8a60b7f1 Foundation of new syn2mas tool (#3636) 2025-01-27 18:01:46 +00:00
reivilibre 0c26dd859a Support compatibility sessions that do not have devices (#3801)
Co-authored-by: Quentin Gliech <quenting@element.io>
2025-01-27 14:50:31 +00:00
Quentin Gliech 11b5355590 Upgrade axum to 0.8 2025-01-27 15:11:10 +01:00
Quentin Gliech 244ec18898 Merge remote-tracking branch 'origin/main' into quenting/optional-email 2025-01-23 18:28:33 +01:00
Quentin Gliech 154e42af6b Upgrade Rust to 1.84 and fix new clippy lints 2025-01-23 17:55:22 +01:00
Quentin Gliech 0513f198d8 Rip out the email verification codes
This considers all user_emails as confirmed, and removes the verification code.
It will be replaced by a new email authentication code flow
2025-01-14 15:46:45 +01:00
Quentin Gliech ee33e9c0fb Remove the primary email address concept 2025-01-13 17:00:30 +01:00
Quentin Gliech 5cbb576f94 Make the rate limiter available to the GraphQL API handlers 2025-01-13 16:58:42 +01:00
Quentin Gliech b5940b969f Additional fields in the GraphQL API for upstream providers 2025-01-06 11:59:43 +01:00
Quentin Gliech 2820794c8d Allow longer & shorter usernames, complying with the MXID length spec 2025-01-06 10:15:08 +01:00
Mathieu Velten af1282b510 Allow response_mode to be null and if so do not add the query param (#3700) 2024-12-18 18:18:39 +01:00
Quentin Gliech a97d2daa3d Make the issue optional on upstream OAuth 2.0 providers 2024-12-17 13:40:34 +01:00
Mathieu Velten 80903ed629 Add id_token_signed_response_alg and userinfo_signed_response_alg (#3664) 2024-12-17 11:54:16 +01:00
Quentin Gliech 88fb4ed025 Shutdown the server if any of the tasks crashes (#3672) 2024-12-17 09:11:08 +00:00
Quentin Gliech f2221d309e Report version from git describe in metrics & CLI 2024-12-12 17:59:35 +01:00
Quentin Gliech 773c4d656d Move all the OTEL meters to crate-level statics 2024-12-12 16:04:48 +01:00
Quentin Gliech b5155cc8e4 Update the rest of the OTEL deps and use the new APIs 2024-12-12 16:04:48 +01:00
Quentin Gliech b689554909 Schedule jobs through the new queue 2024-12-06 16:24:26 +01:00
Quentin Gliech 1bcfd3b8f8 Move the jobs types in the queue module 2024-12-06 16:24:26 +01:00
Quentin Gliech 15f589a22a Graceful shutdown 2024-12-06 16:24:26 +01:00
Quentin Gliech 2e3b8bdd86 Allow setting an explicit upstream account name (#3600) 2024-11-29 12:30:18 +01:00
Quentin Gliech 2c01b439bd Make the id_token optional on upstream OAuth 2.0 providers
This makes it possible to use non-OIDC providers as upstream OAuth 2.0 providers, like GitHub.
2024-11-29 10:31:50 +01:00
Quentin Gliech 24be677a06 Concatenate arrays in the config when loading multiple files 2024-11-28 17:03:42 +01:00
Mathieu Velten 56edcb4e52 Add fetch_userinfo to upstream SSO provider (#3363) 2024-11-26 15:01:03 +00:00
Quentin Gliech 6efe8bf45a Allow setting the response_mode on upstream OAuth 2.0 providers 2024-11-22 08:48:00 +01:00
Quentin Gliech ab4f438464 Support Sign in with Apple 2024-11-22 08:48:00 +01:00
Quentin Gliech 14948c35cb Replace all the manual HTTP clients with reqwest 2024-10-28 13:46:38 +01:00
Quentin Gliech b3b9a872d6 Replace HTTP client in oidc-client with reqwest 2024-10-28 13:46:38 +01:00
Quentin Gliech b137470609 Better error when the email addresses in the config are invalid 2024-10-22 16:19:43 +02:00
Quentin Gliech 63e039d8f5 Add a CLI tool to add an email address to a user 2024-10-22 16:19:26 +02:00