Alexandra
ec97c354e2
feat(sdk): Detect invalid .well-known endpoint response
2022-03-23 11:57:13 +01:00
Jonas Platte
db079065e4
refactor(sdk): Some cleanup of the HTTP code
2022-03-23 11:29:12 +01:00
Jonas Platte
cbebf8c4fe
Don't import reqwest::Client
...
… to avoid confusion with the SDKs Client type.
2022-03-23 11:04:28 +01:00
Jonas Platte
92a532a4ba
Inline single-use method HttpClient::send_request
2022-03-23 10:50:15 +01:00
Jonas Platte
4601b43651
Remove unnecessary specialized send-request method from HttpClient
2022-03-23 10:43:14 +01:00
Benjamin Kampmann
9ebabf818d
Chore: Add tracing span to request sending
2022-03-21 20:45:22 +01:00
Jonas Platte
68385f0ff7
Add tracing span to request sending
2022-03-18 14:40:26 +01:00
Jonas Platte
3b1400b6f8
Merge pull request #539 from matrix-org/jplatte/cleanup
2022-03-17 14:44:30 +01:00
Jonas Platte
5b5e13fe2c
Remove request field from Client::keys_upload tracing span
...
It results in a lot of log noise for initial syncs.
2022-03-17 14:26:28 +01:00
Jonas Platte
7b8568f5c8
Simplify get_or_upload_filter example
2022-03-17 14:24:50 +01:00
Jonas Platte
ea3ca1a8ca
Remove unnecessary semicolons after if-let expressions
2022-03-17 14:23:55 +01:00
Jonas Platte
baa869552f
Implement Default for SyncSettings in terms of SyncSettings::new
...
… rather than the other way around.
2022-03-17 14:23:11 +01:00
Jonas Platte
c9c31fa1c2
Simplify SyncSettings::default()
2022-03-17 14:22:40 +01:00
Jonas Platte
5ff38eff00
Activate tracing-subscriber's env-filter feature
...
This allows the log level of examples to be controlled using the
RUST_LOG environment variable.
2022-03-17 14:22:12 +01:00
Jonas Platte
f9420acdfd
Remove unhelpful Client self fields from tracing spans
...
Client's Debug implementation just returns "Client".
2022-03-17 14:21:41 +01:00
Jonas Platte
c83f8f2a45
feat(sdk): Add convenience methods for getting state events of statically-known type
2022-03-16 14:26:18 +01:00
Damir Jelić
4741df627d
feat(sdk): Add a method to check if the other side has scanned a qr verification
2022-03-16 14:23:35 +01:00
Julian Sparber
04e5434c9a
QrVerification: Use consistent name for re-exported method
2022-03-16 14:06:26 +01:00
Julian Sparber
adf463a4be
QrVerification: expose whether the QrCode was scanned by the other device
2022-03-16 13:05:15 +01:00
Damir Jelić
a455f23520
docs(store-cipher): Make the docs about the way the StoreCipher works clearer
...
Co-authored-by: Denis Kasak <dkasak@termina.org.uk >
2022-03-16 12:48:16 +01:00
Damir Jelić
3af08059da
fix(store-cipher): Use the MacKeySeed type alias in more places
...
Co-authored-by: Denis Kasak <dkasak@termina.org.uk >
2022-03-16 12:48:16 +01:00
Damir Jelić
bf3d2ebea3
chore(store-cipher): Rename the store-key crate and it's main type
2022-03-16 12:48:16 +01:00
Damir Jelić
8ab7bfd5fa
fix(store-key): Zeroize the derived MacKeys
...
Co-authored-by: Denis Kasak <dkasak@termina.org.uk >
2022-03-16 12:48:16 +01:00
Damir Jelić
d03eefc49a
docs(store-key): Improve the docs a bit
...
Co-authored-by: Denis Kasak <dkasak@termina.org.uk >
2022-03-16 12:48:16 +01:00
Damir Jelić
5766b65eeb
feat(store-key): Add a feature flag to enable WASM support
2022-03-16 12:48:16 +01:00
Damir Jelić
11d27007fc
fix(store-key): Add some missing zeroize calls
2022-03-16 12:48:16 +01:00
Damir Jelić
4ed06be10d
chore(store-key): Add more crate metadata
...
Co-authored-by: Benjamin Kampmann <ben.kampmann@gmail.com >
2022-03-16 12:48:16 +01:00
Damir Jelić
6a0bda47ae
chore(store-key): Rename the crate
...
Co-authored-by: Benjamin Kampmann <ben.kampmann@gmail.com >
2022-03-16 12:48:16 +01:00
Damir Jelić
41466eae66
feat(store-key): Add a dedicated store key crate
...
This crate can be used to add at-rest encryption support for a
matrix-sdk state store or crypto store.
2022-03-16 12:48:16 +01:00
Damir Jelić
440b49ce5c
feat(sdk): Add store specific errors to the ClientBuildError
...
This makes it easier to handle store specific errors while building a
Client as long as the user is using one of our main stores.
2022-03-16 12:29:10 +01:00
Kévin Commaille
7b8c52b043
indexeddb: Move attribute below docs
2022-03-16 10:30:56 +01:00
Kévin Commaille
3a94c2115f
sdk: Add store opening errors to ClientBuildError
2022-03-15 14:43:02 +01:00
Kévin Commaille
6785c07793
indexeddb: Make store opening error more specific
2022-03-15 14:43:02 +01:00
Kévin Commaille
e23b22857f
sled: Make store opening error more specific
2022-03-15 14:42:54 +01:00
Jonas Platte
3bf5388da0
feat(sdk): Fetch supported matrix versions from server in initialization
2022-03-14 15:23:13 +01:00
Jonas Platte
15df8fef95
Fix broken tests
2022-03-14 15:08:54 +01:00
Jonas Platte
8df7e1cc8b
Fix hanging tests
2022-03-14 15:08:48 +01:00
Jonas Platte
7b2dfa39cf
Remove Client::get_supported_versions
...
This is now always done as part of constructing the Client, unless the
user actively opted out.
2022-03-14 12:57:58 +01:00
Jonas Platte
fdc8f79728
Merge branch 'main' into jplatte/server-versions
2022-03-14 12:56:57 +01:00
Benjamin Kampmann
f76bcda64f
feat(client): Replacing ClientConfig with a ClientBuilder to configure how the client will be set up
...
Merge pull request #533 from matrix-org/jplatte/client-builder
2022-03-14 12:43:38 +01:00
Jonas Platte
718fa18e7f
Merge branch 'main' into jplatte/client-builder
2022-03-14 11:26:45 +01:00
Damir Jelić
b8b61ce214
refactor(sdk): Scope the encryption specific Client methods behind a struct
2022-03-14 10:16:19 +01:00
Jonas Platte
a2ad774112
Add ClientBuilder::server_name
2022-03-14 10:02:31 +01:00
Jonas Platte
d94ba8c64f
Remove Client::for_user_id
2022-03-14 10:02:31 +01:00
Jonas Platte
81d07d886c
Rename Client::{new_from_user_id => for_user_id}
2022-03-13 19:56:26 +01:00
Jonas Platte
147e948fe6
Replace ClientConfig with ClientBuilder
...
This includes a few not-strictly-related changes that made sense to do at the
same time:
* Check for a functioning homeserver via get_supported_versions regardless of
whether a homeserver URL or user ID was supplied
* Rename use_discovery_response to respect_login_well_known
* Small appservice documentation improvement because those docs had to be
touched anyways
* Some test refactorings in tests that had to be touched anyways
2022-03-13 19:56:26 +01:00
Kévin Commaille
d8c7fbd9dc
sdk: Create Encryption struct
...
Lower the API surface of Client
2022-03-12 13:30:55 +01:00
Jonas Platte
bd7fbea155
Fix intra-doc link
2022-03-11 18:04:32 +01:00
Jonas Platte
628e2fb716
Allow configuring assert_identity on the client level only
...
Completely removing it from RequestConfig is left up to a future refactoring.
2022-03-11 15:31:11 +01:00
Jonas Platte
503f4d73a0
Merge pull request #532 from matrix-org/jplatte/ctors
2022-03-11 13:05:20 +01:00