Commit Graph

310 Commits

Author SHA1 Message Date
Quentin Gliech
44b6777f1b Merge remote-tracking branch 'origin/main' into quenting/compat-device-id 2025-03-04 13:33:09 +01:00
Quentin Gliech
004119dbce Pass the MasWriter as owned to the various migration functions (#4120) 2025-03-04 12:37:23 +01:00
Quentin Gliech
588a04b0ba Allow configuring the connection to the homeserver to be read-only. 2025-03-03 17:24:15 +01:00
Quentin Gliech
df5de81c92 Remove generic error type & always use an Arc on the HS connection
This should help us write other implementations of HomeserverConnection
2025-03-03 15:43:13 +01:00
Quentin Gliech
347e37ad28 Pass the MasWriter as owned to the various migration functions 2025-02-27 09:51:56 +01:00
Quentin Gliech
2a202cc6b0 Upgrade OpenTelemetry to 0.28 2025-02-24 10:44:08 +01:00
Quentin Gliech
eca6955f07 Remove explicit imports of std::future::Future, as it is now in the prelude 2025-02-21 16:24:53 +01:00
Quentin Gliech
6fcdad6b26 Convert a few closures + async move to async closures 2025-02-21 16:22:21 +01:00
Quentin Gliech
56d9c7e63b Upgrade to Rust 1.85 and edition 2024 2025-02-21 16:15:02 +01:00
matrixbot
c905ab5b55 Automatic merge back to main (#4070) 2025-02-20 09:04:08 +01:00
Quentin Gliech
f3d4e59b23 Fix a crash on startup when a listener has an empty prefix 2025-02-20 08:31:11 +01:00
Quentin Gliech
a3f22ae5f6 Allow compat session devices to have spaces 2025-02-19 17:55:18 +01:00
Quentin Gliech
1ff506d624 Convert IPv6-mapped IPv4 addresses to IPv4 addresses 2025-02-19 15:33:37 +01:00
Quentin Gliech
b40fcdd712 Experimental feature to timeout inactive sessions 2025-02-12 17:31:21 +01:00
Quentin Gliech
c6fdd82432 Encapsulate migration state in a single structure 2025-02-07 15:02:30 +01:00
Quentin Gliech
260834bc01 Make the MAS connection owned in the locked database struct 2025-02-07 12:53:51 +01:00
Quentin Gliech
9fbb1e73df 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
73ccecf8e8 Add MasWriter support for compat refresh tokens + some migration progress 2025-02-05 11:38:50 +01:00
Quentin Gliech
45c70ec839 Fetch the upstream OIDC metadata in the background on startup 2025-01-30 15:24:45 +01:00
reivilibre
13cf5a5617 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
f7f06e8469 Don't prevent starting up if the mail backend is unavailable 2025-01-29 15:45:50 +01:00
Quentin Gliech
3cf7d89543 Fix crash if the watchdog is not set 2025-01-29 14:56:25 +01:00
Quentin Gliech
56c31e9e46 Run reload handlers in parallel 2025-01-28 14:29:33 +01:00
Quentin Gliech
133072bc55 Advertise the main PID through sd_notify on startup 2025-01-28 14:29:33 +01:00
Quentin Gliech
4d67a89919 Rename ShutdownManager to LifecycleManager 2025-01-28 14:29:33 +01:00
Quentin Gliech
d93e936f4e Send notifications about the state of the service to systemd 2025-01-28 14:16:56 +01:00
Quentin Gliech
48ee785a40 Handle SIGHUPs as part of the shutdown manager 2025-01-28 13:29:12 +01:00
Quentin Gliech
00613280e8 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
1dc172dcf7 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
163b9e8849 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
dd0299fa40 Foundation of new syn2mas tool (#3636) 2025-01-27 18:01:46 +00:00
reivilibre
87009be7e6 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
418e257061 Upgrade axum to 0.8 2025-01-27 15:11:10 +01:00
Quentin Gliech
153c5e56d7 Merge remote-tracking branch 'origin/main' into quenting/optional-email 2025-01-23 18:28:33 +01:00
Quentin Gliech
4451cbfe86 Upgrade Rust to 1.84 and fix new clippy lints 2025-01-23 17:55:22 +01:00
Quentin Gliech
9db14f6743 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
077a55fd5d Remove the primary email address concept 2025-01-13 17:00:30 +01:00
Quentin Gliech
28480e40af Make the rate limiter available to the GraphQL API handlers 2025-01-13 16:58:42 +01:00
Quentin Gliech
17430c21c5 Additional fields in the GraphQL API for upstream providers 2025-01-06 11:59:43 +01:00
Quentin Gliech
1e3d838c99 Allow longer & shorter usernames, complying with the MXID length spec 2025-01-06 10:15:08 +01:00
Mathieu Velten
33e1cdbf16 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
f563daf822 Make the issue optional on upstream OAuth 2.0 providers 2024-12-17 13:40:34 +01:00
Mathieu Velten
75ee9a1e58 Add id_token_signed_response_alg and userinfo_signed_response_alg (#3664) 2024-12-17 11:54:16 +01:00
Quentin Gliech
1c6a8000f0 Shutdown the server if any of the tasks crashes (#3672) 2024-12-17 09:11:08 +00:00
Quentin Gliech
f4a3a8bf64 Report version from git describe in metrics & CLI 2024-12-12 17:59:35 +01:00
Quentin Gliech
0435fa848d Move all the OTEL meters to crate-level statics 2024-12-12 16:04:48 +01:00
Quentin Gliech
8c358efd88 Update the rest of the OTEL deps and use the new APIs 2024-12-12 16:04:48 +01:00
Quentin Gliech
703bd743d6 Schedule jobs through the new queue 2024-12-06 16:24:26 +01:00
Quentin Gliech
b82483f936 Move the jobs types in the queue module 2024-12-06 16:24:26 +01:00
Quentin Gliech
312640605d Graceful shutdown 2024-12-06 16:24:26 +01:00