Quentin Gliech
51e1c11df9
Order the OAuth providers in the UI by their order in the config file ( #4199 )
2025-03-12 12:12:39 +01:00
reivilibre
8553efdab4
syn2mas: better performance, output tweaks, tracing tweaks, access token fixes ( #4175 )
2025-03-12 10:56:56 +00:00
Quentin Gliech
c4f7cad172
Update test snapshots
2025-03-12 11:47:07 +01:00
Quentin Gliech
bf496e8d81
syn2mas: import the deactivation and locked status independently
2025-03-11 17:35:13 +01:00
Quentin Gliech
d2f3b56cd0
Better report errors when a writing task fails
2025-03-10 13:53:36 +00:00
Quentin Gliech
8ee4e68d6d
Read and write users in different tasks
2025-03-10 13:53:36 +00:00
Quentin Gliech
c45500be72
Use rustc' FxHasher instead of the std one
2025-03-10 13:36:12 +00:00
Quentin Gliech
0b9036601a
Better tracing during the migration
2025-03-10 13:36:12 +00:00
Quentin Gliech
32071e1833
Make sure tracing spans are propagated in tokio::task::spawn
2025-03-10 13:36:11 +00:00
Olivier 'reivilibre
07dd9cd9ec
Log timings of migrations and index/constraint rebuilds
2025-03-10 13:25:59 +00:00
Olivier 'reivilibre
8c1a8dd8a1
Add spans for the constraint/index drop operations
2025-03-10 13:23:59 +00:00
Olivier 'reivilibre
6fdfb263b5
Don't include access tokens where the referenced device has vanished
2025-03-10 13:23:59 +00:00
Olivier 'reivilibre
eff33289a5
Don't read refresh tokens that don't have associated access tokens
...
These appear to be accidental and should not be migrated.
2025-03-10 13:23:59 +00:00
Olivier 'reivilibre
4f4fe822d9
For performance, switch to a row count estimate for users and devices
2025-03-10 13:23:59 +00:00
Olivier 'reivilibre
b0c958007f
Replace panic on unfinished buffers with an error
...
This doesn't get clobbered by the progress bar
2025-03-10 13:23:55 +00:00
Olivier 'reivilibre
bfcd0f8209
Downgrade presence of guests and unsupported 3pids to warnings
...
Since migration is supported, but the data won't be used
2025-03-10 13:20:46 +00:00
Olivier 'reivilibre
155b4f31d2
Remove obsolete OIDC provider warning
...
We now produce an error for unmapped OIDC providers!
2025-03-10 13:20:46 +00:00
Quentin Gliech
6e65db5aca
Handle AS users with invalid localparts edge case
2025-03-04 12:38:51 +01:00
Quentin Gliech
9dc1b39fa1
Properly ignore devices, threepids and access tokens from AS users ( #4122 )
2025-03-04 12:38:14 +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
fa38879558
syn2mas: use NonNilUuid for MAS user IDs
2025-03-04 11:55:59 +01:00
Quentin Gliech
435911bb85
Revert "Ignore colons in localparts when importing users"
...
This reverts commit bd0b04ae4d .
2025-03-03 13:52:25 +01:00
Quentin Gliech
8e7322f0e8
Actualy read appservice users, but don't insert them
2025-02-27 14:11:42 +01:00
Quentin Gliech
500f3530e3
Ignore 'guest_devices' in synapse
2025-02-27 14:07:23 +01:00
Quentin Gliech
2d90e25077
Ignore '-' as ip on devices
2025-02-27 14:07:23 +01:00
Quentin Gliech
bd0b04ae4d
Ignore colons in localparts when importing users
2025-02-27 14:07:22 +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
56d9c7e63b
Upgrade to Rust 1.85 and edition 2024
2025-02-21 16:15:02 +01:00
Quentin Gliech
ad48e89aa6
Pass the migration state as owned to the various stages
2025-02-10 10:14:20 +01:00
Quentin Gliech
c6fdd82432
Encapsulate migration state in a single structure
2025-02-07 15:02:30 +01:00
Quentin Gliech
d1d73af3ce
Remove the lifetime parameter from MasWriter
2025-02-07 12:57:21 +01:00
Quentin Gliech
260834bc01
Make the MAS connection owned in the locked database struct
2025-02-07 12:53:51 +01:00
Olivier 'reivilibre
dacfa9045d
Don't return errors when finding rows dependent upon appservice users
2025-02-05 11:42:04 +01:00
Olivier 'reivilibre
ac58b4f326
Support reading and writing guests
2025-02-05 11:41:52 +01:00
Olivier 'reivilibre
dc305ddc40
Split access tokens between refreshable and unrefreshable ones
2025-02-05 11:41:45 +01:00
Olivier 'reivilibre
73ccecf8e8
Add MasWriter support for compat refresh tokens + some migration progress
2025-02-05 11:38:50 +01:00
Olivier 'reivilibre
900413cc43
Add MasWriter support for compat access tokens
2025-02-05 11:38:06 +01:00
Olivier 'reivilibre
0cd8106624
Add MasWriter support for compat sessions
2025-02-05 11:37:59 +01:00
Olivier 'reivilibre
719681f3e7
Add SynapseReader support for devices
2025-02-05 11:36:46 +01:00
Olivier 'reivilibre
c1493a6521
Add stubs for migrating devices, access tokens and refresh tokens
2025-02-05 11:36:42 +01:00
Olivier 'reivilibre
09e619e9a0
Add SynapseReader support for access tokens and refresh tokens
2025-02-05 11:36:16 +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
reivilibre
072b25a95b
syn2mas: Add tests for reading and writing threepids ( #3907 )
...
* Add `MasWriter` test for e-mail and unsupported threepids
* Add `SynapseReader` test for e-mail and unsupported threepids
2025-01-29 14:15:58 +00: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
Olivier 'reivilibre
5179d41214
Add a test for the syn2mas SynapseReader
2025-01-27 18:01:46 +00:00
Olivier 'reivilibre
2e64377afb
Add TODO for Synapse config merge
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
759750ed01
Add some tests for the syn2mas MasWriter ( #3800 )
2025-01-27 18:01:46 +00:00
reivilibre
dd0299fa40
Foundation of new syn2mas tool ( #3636 )
2025-01-27 18:01:46 +00:00