Quentin Gliech
58fd6ab4c1
Allow disabling registrations ( #2553 )
2024-04-03 09:27:14 +02:00
Kévin Commaille
d3d11594f3
Create the AccountManagementError enum
...
Otherwise it forces dependant crates to add serde_urlencoded as a dependency
just to be able to forward the error type.
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr >
2024-04-02 16:26:24 +02:00
Quentin Gliech
a03728743b
Bump most frontend dependencies
2024-03-29 19:28:30 +01:00
Quentin Gliech
8e7bb26a51
Simplify ConfigurationSection trait & skip default values when serializing
...
This removes the `test` and `generate` methods from the
`ConfigurationSection` trait, as they did not really had a reason to
exist in the trait itself.
2024-03-22 13:33:09 +01:00
Quentin Gliech
fc7489c5f8
Flatten the upstream_oauth2 config section
2024-03-22 13:33:09 +01:00
Quentin Gliech
aa6178abe6
Flatten the telemetry config section
2024-03-22 13:33:09 +01:00
Quentin Gliech
809fe16d29
Flatten the secrets config section
2024-03-22 13:33:09 +01:00
Quentin Gliech
156dc08280
Clean up the default policy config data
2024-03-22 13:33:09 +01:00
Quentin Gliech
f5b34b5b18
Flatten the passwords config section
2024-03-22 13:33:09 +01:00
Quentin Gliech
8bc35f63d8
Flatten the http config
...
Also properly remove the `spa` resource
2024-03-22 13:33:09 +01:00
Quentin Gliech
6d77d0ed25
Flatten the email config
2024-03-22 13:33:09 +01:00
Quentin Gliech
bf50469da1
Flatten the database config
2024-03-22 13:33:09 +01:00
Quentin Gliech
cba431d20e
Flatten the clients config
2024-03-22 13:33:09 +01:00
Quentin Gliech
48b6013c4f
Move the sub-configuration path to an associated constant
2024-03-22 13:33:09 +01:00
Quentin Gliech
1cf283337b
Load the configuration from a common Figment instance
...
This should avoid loading the same files multiple times.
It should also make it easier to do post-processing on the
configuration, like validation.
This does deprecate one undocumented feature: the ability to override
some fields during the configuration generation using environment
variables.
2024-03-22 13:33:09 +01:00
Quentin Gliech
dde907758e
Use OTEL semantic conventions constants for most attributes
2024-03-19 17:15:14 +01:00
Quentin Gliech
7e30daf83e
Replace parse-display with manual Display/FromStr impls
2024-03-19 16:38:46 +01:00
Kévin Commaille
4eeedbef31
Add account management URL for clients
...
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr >
2024-03-19 15:05:27 +01:00
Quentin Gliech
d8f5fdaf5c
Moved some dependencies in the workspace and upgrade some dependencies
2024-03-19 14:54:35 +01:00
Kévin Commaille
099eabd137
Put match variant behind feature flag
...
Without the keystore feature, this variant is not available.
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr >
2024-03-19 12:25:35 +01:00
dependabot[bot]
34d8132114
build(deps): bump wasmtime from 17.0.0 to 18.0.3
...
Bumps [wasmtime](https://github.com/bytecodealliance/wasmtime ) from 17.0.0 to 18.0.3.
- [Release notes](https://github.com/bytecodealliance/wasmtime/releases )
- [Changelog](https://github.com/bytecodealliance/wasmtime/blob/main/docs/WASI-some-possible-changes.md )
- [Commits](https://github.com/bytecodealliance/wasmtime/compare/v17.0.0...v18.0.3 )
---
updated-dependencies:
- dependency-name: wasmtime
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-03-19 12:02:37 +01:00
dependabot[bot]
5dc8e73f7e
build(deps): bump serde_with from 3.6.0 to 3.7.0
...
Bumps [serde_with](https://github.com/jonasbb/serde_with ) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/jonasbb/serde_with/releases )
- [Commits](https://github.com/jonasbb/serde_with/compare/v3.6.0...v3.7.0 )
---
updated-dependencies:
- dependency-name: serde_with
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-03-19 10:40:19 +01:00
dependabot[bot]
880462560b
build(deps): bump figment from 0.10.14 to 0.10.15
...
Bumps [figment](https://github.com/SergioBenitez/Figment ) from 0.10.14 to 0.10.15.
- [Commits](https://github.com/SergioBenitez/Figment/compare/v0.10.14...v0.10.15 )
---
updated-dependencies:
- dependency-name: figment
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-03-19 07:34:37 +01:00
dependabot[bot]
5b5346ebb7
build(deps): bump parse-display from 0.8.2 to 0.9.0
...
Bumps [parse-display](https://github.com/frozenlib/parse-display ) from 0.8.2 to 0.9.0.
- [Changelog](https://github.com/frozenlib/parse-display/blob/master/CHANGELOG.md )
- [Commits](https://github.com/frozenlib/parse-display/compare/v0.8.2...v0.9.0 )
---
updated-dependencies:
- dependency-name: parse-display
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-03-18 18:44:10 +01:00
Michael Telatynski
70d688913f
Add Electron user-agent parsing for Element Desktop/Nightly ( #2461 )
2024-03-18 18:42:31 +01:00
Michael Telatynski
894602bca1
Render browser icon for compat & browser sessions ( #2478 )
...
* Render browser icon for compat & browser sessions
* Use PNGs
* Add support for png resources
2024-03-18 18:41:40 +01:00
Quentin Gliech
eb950151af
Upgrade OTEL and remove support for Jaeger and Zipkin exporters
2024-03-18 17:26:40 +01:00
Quentin Gliech
61a69f5af4
Upgrade chrono and replace deprecated methods usage
2024-03-18 17:26:40 +01:00
Kévin Commaille
39a6132ea8
Do not expose error type from mas-keystore in mas-oidc-client
...
The mas-keystore crate is an optional dependency so
setting "default-features" to false
results in a compilation error.
Since the enum is exhaustive, the corresponding error variant
cannot be behind a cargo feature.
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr >
2024-03-18 12:12:23 +01:00
Quentin Gliech
e4cf2cdaf5
Make the mas-cli manage verify-email
mark the email as primary
2024-03-08 17:25:39 +01:00
Quentin Gliech
6eb6209bd8
Use rustls-platform-verifier for cert validation
...
This simplifies by removing the mutually exclusive `native-roots` and
`webpki-roots` features with something that is suitable for all
platforms.
2024-03-06 14:03:59 +01:00
Quentin Gliech
c0a9d27e34
Automatically sync the configuration on server startup
2024-03-01 18:14:05 +01:00
dependabot[bot]
1c19bc6e54
build(deps): bump time from 0.3.32 to 0.3.34
...
Bumps [time](https://github.com/time-rs/time ) from 0.3.32 to 0.3.34.
- [Release notes](https://github.com/time-rs/time/releases )
- [Changelog](https://github.com/time-rs/time/blob/main/CHANGELOG.md )
- [Commits](https://github.com/time-rs/time/compare/v0.3.32...v0.3.34 )
---
updated-dependencies:
- dependency-name: time
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-03-01 15:51:42 +01:00
Quentin Gliech
3251c5896c
Append additional parameters to the OAuth2 authorize endpoint
2024-03-01 14:36:37 +01:00
Quentin Gliech
25fbbf96b9
Load the additional OAuth parameters from the config
2024-03-01 14:36:37 +01:00
Quentin Gliech
1821136e3f
Additional parameters from upstream OAuth2 providers in the data model
2024-03-01 14:36:37 +01:00
Quentin Gliech
46c565cc89
Move schemars to workspace dependencies
...
Also enables the `preserve_order` feature, hence the big schema output diff.
2024-03-01 14:36:37 +01:00
Quentin Gliech
183f7bad40
Test the addUser GraphQL mutation with the new behaviour
2024-02-29 11:21:24 +01:00
Quentin Gliech
35929d48fd
Test the user registration form
2024-02-29 11:21:24 +01:00
Quentin Gliech
896ed3f024
Check for username availability upon registration
2024-02-29 11:21:24 +01:00
Quentin Gliech
452f4c17f5
graphql: check that the username is available when creating them
...
This calls the HS to make sure the username isn't reserved.
This check can be bypassed using the `skipHomeserverCheck` flag on the
`addUser` mutation.
2024-02-29 11:21:24 +01:00
Quentin Gliech
4aeb446061
Make the HomeserverConnection available in handlers
2024-02-29 11:21:24 +01:00
Quentin Gliech
20dd5ca311
Add API to check localpart availability
2024-02-29 11:21:24 +01:00
Quentin Gliech
2c9b8a446d
Bump Clippy to 1.75 and Rust to 1.76
2024-02-27 16:58:43 +01:00
dependabot[bot]
4e1ec08915
build(deps): bump pest from 2.7.6 to 2.7.7
...
Bumps [pest](https://github.com/pest-parser/pest ) from 2.7.6 to 2.7.7.
- [Release notes](https://github.com/pest-parser/pest/releases )
- [Commits](https://github.com/pest-parser/pest/compare/v2.7.6...v2.7.7 )
---
updated-dependencies:
- dependency-name: pest
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-02-27 14:46:28 +01:00
Quentin Gliech
f3cbd3b315
Parse User Agents on the backend side ( #2388 )
...
* Parse user agents on the server side
* Parse and expose user agents on the backend
* Use the parsed user agent in the device consent page
* Fix the device icon tests
* Fix clippy warnings
* Box stuff to avoid large enum variants
* Ignore a clippy warning
* Fix the requester boxing
2024-02-23 16:47:48 +01:00
Quentin Gliech
f171d76dc5
Record user agents on OAuth 2.0 and compat sessions ( #2386 )
...
* Record user agents on OAuth 2.0 and compat sessions
* Add tests for recording user agent in sessions
2024-02-22 10:01:32 +01:00
Quentin Gliech
ed5893eb20
Save which user session created a compat session
...
This also exposes the user session in the GraphQL API, and allow
filtering on browser session ID on the app session list.
2024-02-21 11:55:58 +01:00
Quentin Gliech
03b6ad7138
Remove the unique constraint on device IDs on compatibility sessions
...
In OAuth 2.0 sessions, we can have multiple sessions for the same device
anyway, so this constraint doesn't exactly make sense.
Fixes #2033
Fixes #2312
2024-02-20 15:50:20 +01:00
Quentin Gliech
90cebeeefc
Remove unnecessary debugging printf in i18n crate
2024-02-19 17:53:45 +01:00