Damir Jelić
93e5728d65
test(sdk): Move the integration tests
...
This moves the bulk of the Client tests into integration tests.
2022-07-08 12:08:27 +02:00
Damir Jelić
a7af96d081
feat(crypto): Customized event types
...
This patch adds customized event types, currently only for the
m.room_key and m.secret.send to-device events.
This allows us to:
a) Deserialize the session_key field into a vodozemac type
b) Control when we zeroize secrets better
2022-07-07 19:20:42 +02:00
Kévin Commaille
5ab8bd0885
Fix missing import
2022-07-07 13:24:54 +02:00
Kévin Commaille
ee69863912
Move event permalink test
2022-07-07 13:19:31 +02:00
Kévin Commaille
e87d599f84
Merge remote-tracking branch 'upstream/main' into integration-tests
2022-07-07 13:16:09 +02:00
Kévin Commaille
d6a2f15c68
Simplify use of via
...
Due to a ruma upgrade
2022-07-07 12:30:15 +02:00
Kévin Commaille
36a47c28ed
Add note that the event should be part of the room
2022-07-07 12:30:15 +02:00
Kévin Commaille
900016b249
feat(sdk): Get a permalink for an event
2022-07-07 12:30:15 +02:00
Kévin Commaille
de60a24602
Remove __test feature
2022-07-07 11:26:49 +02:00
Johannes Becker
4b856ce9d6
fix(sdk): Use the local config variable to decide identity assertion
2022-07-07 10:16:23 +02:00
Benjamin Kampmann
73daec3757
Merge pull request #810 from gnunicorn/expose-invite-details
...
feat(sdk): Expose details of invite for invited room
2022-07-05 14:56:05 +02:00
Benjamin Kampmann
d9f3b257b4
Apply suggestions from code review
...
Co-authored-by: Ivan Enderlin <ivan@mnt.io >
2022-07-05 14:38:53 +02:00
Damir Jelić
771c33d710
chore(crypto): Bump vodozemac
...
Vodozemac used to accept and return strings when encrypting and
decrypting. This is quite unusual for a pure cryptographic library so we
switched towards the usual setup where we encrypt/decrypt raw bytes.
Since we do encrypt/decrypt JSON strings in Matrix land, we do the
string conversions over here.
2022-07-05 13:23:50 +02:00
Kévin Commaille
dd6a902240
test(sdk): Move integration tests
2022-07-04 16:22:20 +02:00
Ivan Enderlin
05561a8777
chore(crypto): Make Clippy happy.
2022-07-04 13:06:14 +02:00
Ivan Enderlin
909ada43d7
chore(base): Make Clippy happy.
...
So, Clippy suggests to change `(&member).into()` to `member.into()`
but it's the same, and `From<T>` is not implemented for this `T`, only
`From<&T>` is present. Thus, to deceive Clippy, I'm using
`std::borrow::Borrow` here. Not super happy with that though…
2022-07-04 12:00:42 +02:00
Ivan Enderlin
f72a14890d
chore(crypto) Make Clippy happy.
2022-07-04 11:42:50 +02:00
Ivan Enderlin
62378b4abc
Merge branch 'main' into fix-issue-797
2022-07-04 11:24:33 +02:00
Ivan Enderlin
f96069f591
chore(store-encryption): Call DerefMut manually.
...
Clippy on nigtly is raising a warning, which is turned into an error
on the CI. It's the [`explicit_auto_deref`
lint](https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref ). I
suspect it's a false-positive but I'm not sure. Anyway, to workaround
this and unblock our CI, let's call `DerefMut::deref_mut` manually:
it's clearer anyway.
2022-07-04 11:00:23 +02:00
Benjamin Kampmann
fd38c757e4
feat(sdk): Expose details of invite for invited room
2022-07-01 19:44:27 +02:00
Jonas Platte
861d899541
refactor(base): Remove an unnecessary allocation
2022-07-01 16:16:29 +02:00
Jonas Platte
fd08c9e7da
refactor(base): Remove check for own user in notification handling
...
This is now done in Ruma.
Reverts commit bc78095611 .
2022-07-01 16:16:29 +02:00
Jonas Platte
cffb565a5f
chore: Allow some usage of deprecated fields
...
… to allow CI to succeed. They should be removed soon.
2022-07-01 16:16:29 +02:00
Jonas Platte
f20d1c3d76
chore: Upgrade ruma
2022-07-01 16:16:29 +02:00
Jonas Platte
e4f6c0cc58
chore(sdk): Remove feature ruma/appservice-api-helper
...
No longer used as of https://github.com/matrix-org/matrix-rust-sdk/pull/710
2022-07-01 16:16:29 +02:00
Jonas Platte
bc47caa356
chore: Remove unnecessary map_err's
2022-07-01 11:55:28 +02:00
Marcel
a8601e186a
fix(appservice): Don't process the same transaction twice
2022-06-29 16:17:25 +00:00
Kévin Commaille
297861e186
Fix docs styling
2022-06-29 12:20:57 +02:00
Kévin Commaille
8313029e33
Split into methods for both Matrix URI formats
2022-06-29 12:02:26 +02:00
Kévin Commaille
f0e0194ff2
feat(sdk): Add method to get a room permalink
...
Include routing for room IDs
2022-06-26 13:38:01 +02:00
Kévin Commaille
ebc7177438
feat(base): Add method to get Room alt aliases
2022-06-26 12:01:51 +02:00
Ivan Enderlin
ecc28efd53
chore(bindings): Move matrix-sdk-ffi and matrix-sdk-crypto-ffi into the bindings/ directory.
2022-06-23 11:31:59 +02:00
Jonas Platte
f3a61020e7
refactor(sdk): Rewrite sso login to be easier to read
2022-06-22 17:17:52 +02:00
Jonas Platte
a423e92246
chore: Consistently capitalize 'device ID'
2022-06-22 17:17:52 +02:00
Jonas Platte
b5d7f10c6b
feature: Introduce a login builder API
...
This improves the readability of login calls.
The old login API is kept, but deprecated.
2022-06-22 17:17:52 +02:00
Ivan Enderlin
8db58986fb
chore(bindings): Move crypto-nodejs and crypto-js into the bindings/ directory.
...
`matrix-sdk-crypto-nodejs` and `matrix-sdk-crypto-js` are no longer
default members of the Cargo virtual workspace. The Github Actions
workflows for the bindings now live in a `bindings_ci.yml` files
(ideally, it should be in a subdirectory,
`.github/workflows/bindings/ci.yml` but it doesn't work).
2022-06-22 11:54:49 +02:00
Ivan Enderlin
8b2237fa7a
Merge branch 'main' into feat-crypto-js-next
2022-06-21 11:38:48 +02:00
Ivan Enderlin
e5ea2a770b
chore(crypto-js): Implement feedback from PR.
2022-06-21 11:25:58 +02:00
Jonas Platte
5f31e9d131
chore: Add missing json language specification to docs
2022-06-20 22:33:35 +02:00
Jonas Platte
6cb9c11b88
chore: Remove unnecessary pub visibility from OnceCell imports
2022-06-20 22:33:35 +02:00
Jonas Platte
a00c130fc3
feature: Allow passing already-Arc'ed stores to StoreConfig methods
2022-06-20 18:00:33 +02:00
Jonas Platte
4971802e75
chore: Replace usage of Store with Arc<dyn StateStore>
2022-06-17 17:35:33 +02:00
Jonas Platte
8690addfd5
chore: Add Clone impl for ClientBuilder
2022-06-17 14:59:22 +02:00
Jonas Platte
00a20f325b
chore: Add Clone impl for StoreConfig
...
… by storing the stores inside Arc's instead of Box'es.
2022-06-17 14:59:22 +02:00
Jonas Platte
a4e4bfe833
refactor(sdk)!: Change store builder methods from Box<dyn Trait> to impl Trait
...
To migrate, don't box the store before passing it to `builder.state_store` or
`builder.crypto_store` (remove `Box::new`).
2022-06-17 14:59:22 +02:00
Jonas Platte
02aa537f2a
chore: Keep uniffi version in sync across deps, CI
2022-06-17 13:37:07 +02:00
Anderas
c755e19fb3
Merge pull request #765 from matrix-org/andy/crypto_ffi
...
Build Crypto iOS framework
2022-06-16 11:25:39 +01:00
Andy Uhnak
fe29fa57eb
Build Crypto iOS framework
2022-06-15 13:52:21 +01:00
Ivan Enderlin
520e2f30f7
doc(crypto-js): Add missing module documentation.
2022-06-14 16:54:22 +02:00
Ivan Enderlin
f8cd2310be
feat(crypto-js): Implement OlmMachine.decryptRoomEvent & siblings.
2022-06-14 16:16:54 +02:00