Jonas Platte
4914c595e9
fix(sdk): Further relax event / notification handler bounds on WASM
...
This allows capturing non-`Send` / -`Sync` values in handler closures.
2022-08-10 12:54:36 +02:00
Jonas Platte
ad80839ffd
fix(sdk): Make event handler futures non-Send on wasm
2022-08-09 14:25:57 +02:00
Jonas Platte
0701561e45
feat(common): Add SendOutsideWasm, SyncOutsideWasm
2022-08-09 14:25:57 +02:00
Jonas Platte
25030780b0
test(sdk): Run event handler tests on wasm
2022-08-09 14:25:57 +02:00
Jonas Platte
327a404d60
test(sdk): Move test client creation into separate module
2022-08-09 14:25:57 +02:00
Damir Jelić
06e096f6cc
fix(examples): Fix the in-room emoji verification example
2022-08-09 14:04:11 +02:00
Damir Jelić
a025163dae
test(crypto): Test that we correctly preserve relations in an encryption cycle
2022-08-09 14:04:11 +02:00
Damir Jelić
19fcff56de
chore(crypto): Make the relation copying code when decrypting a bit simpler
2022-08-09 14:04:11 +02:00
Damir Jelić
edf81fb325
fix(crypto): Correctly copy over the relation when encrypting
2022-08-09 14:04:11 +02:00
Damir Jelić
08338acac2
fix(crypto): Fix the deserialization of relations
2022-08-09 14:04:11 +02:00
Kévin Commaille
52e70f1955
refactor(sdk): Don't require the whole session for sending
...
Allow to send requests when only the access token is available.
Remove the unreachable UserIdRequired error.
2022-08-09 12:26:33 +02:00
Jonas Platte
e788ec6b07
ci: Only test one node.js version on macOS
2022-08-08 18:06:54 +02:00
Jonas Platte
d3d108deb8
chore: Add missing copyright headers
2022-08-08 16:28:48 +02:00
Jonas Platte
bd65d9b7a6
doc(sdk): Remove usage of deprecated function in doctest
2022-08-05 16:16:41 +02:00
Jonas Platte
230bb67763
refactor(sdk): Remove Clone requirement on event handlers
2022-08-05 16:16:41 +02:00
Jonas Platte
10a37f6d51
chore(sdk): Add EventHandlerDropGuard
...
It isn't used for now, but will be soon.
2022-08-05 16:16:41 +02:00
Jonas Platte
5156fb7dd4
refactor(sdk): Move add_event_handler_impl to event_handler module
2022-08-05 16:16:41 +02:00
Jonas Platte
3b03ad804f
refactor(sdk)!: Swap the async lock around event handlers for a sync one
2022-08-05 16:16:41 +02:00
Damir Jelić
603176f521
chore(crypto): Bump vodozemac
...
Vodozemac got some new knobs to twiddle with. This patch updates
vodozemac and sets the knobs to use the olm/megolm v1 supported
encryption schemes.
2022-08-05 14:06:42 +02:00
Jonas Platte
dfec17e6af
chore: Disable testing of crates without tests
...
This reduces the amount of "running 0 tests" spam when testing the whole
workspace and makes testing a little faster overall.
2022-08-05 11:10:31 +02:00
Kévin Commaille
7623f93bb3
fix(sdk)!: Make set_homeserver private
...
A user shouldn't need to change the homeserver after creating the client.
2022-08-05 09:55:55 +02:00
Jonas Platte
a60620306c
ci: Update tarpaulin.toml
2022-08-04 23:43:49 +02:00
Jonas Platte
1fea48359d
ci: Checkout head ref instead of merge commit for coverage
...
… this *should* fix bogus coverage change reporting.
2022-08-04 23:43:49 +02:00
Jonas Platte
054dfa98a0
ci: Upgrade checkout action
2022-08-04 23:43:49 +02:00
Damir Jelić
593d4e6062
perf(crypto): Use an RwLock for the OutboundGroupSession
2022-08-04 17:36:03 +02:00
Jonas Platte
5a94ba7b80
refactor(sled)!: Align open_with_database with its documentation
...
It now takes a passphrase instead of a store cipher as the second argument.
2022-08-04 17:04:31 +02:00
Jonas Platte
e1b7f3be05
refactor(sled): Simplify test code
2022-08-04 17:04:31 +02:00
Jonas Platte
6bed51f016
refactor(indexeddb)!: Use &str for name in public API
2022-08-04 17:04:31 +02:00
Jonas Platte
4db162b8a2
chore(indexeddb): Clean up Result usage
2022-08-04 17:04:31 +02:00
Jonas Platte
0b1bdd66f9
refactor(indexeddb): Export error types
2022-08-04 17:04:31 +02:00
Jonas Platte
a4f3c3a070
refactor!: Give sled / indexeddb types unique names
2022-08-04 17:04:31 +02:00
Jonas Platte
df7895d2c6
chore(indexeddb): Rename cryptostore => crypto_store
...
… for consistency with state_store.
2022-08-04 17:04:31 +02:00
Jonas Platte
694c36d741
chore(sled): Rename cryptostore => crypto_store
...
… for consistency with state_store.
2022-08-04 17:04:31 +02:00
Benjamin Kampmann
b5329f99f1
Merge pull request #903 from gnunicorn/ben-getting-started-example
...
Improving examples
2022-08-04 15:41:26 +02:00
Damir Jelić
f055e939e7
refactor(crypto): Use the vodozemac method to decide if a session is better
...
This patch delegates the decision making if a session is better to
vodozemac. Vodozemac has better insights if a group session can be
considered to be better.
2022-08-04 15:09:09 +02:00
Benjamin Kampmann
c4c7c2bb23
docs: remove unused import and fix style of custom events example
2022-08-04 15:02:39 +02:00
Benjamin Kampmann
efc0556124
doc: follow naming convention and use generated types from ruma
2022-08-04 13:31:16 +02:00
Benjamin Kampmann
9d588f7e00
doc: add example for sending and reacting on custom events
2022-08-04 13:13:48 +02:00
Benjamin Kampmann
323974fe4c
Merge remote-tracking branch 'origin/main' into ben-getting-started-example
2022-08-04 12:22:42 +02:00
Benjamin Kampmann
3bdb2f22ea
build(crypto-js): Pin yarg-parser to 21.0.1 to prevent upgrade bug
...
We are effected by https://github.com/yargs/yargs-parser/issues/452
through the transient dependency of jest on yargs
2022-08-04 12:21:18 +02:00
Damir Jelić
ddf8577c84
refactor(crypto): Start using our own event types when we encrypt
2022-08-04 11:16:02 +02:00
Benjamin Kampmann
90c2dcdbc0
style: fix clippy lints
2022-08-04 11:02:28 +02:00
Benjamin Kampmann
fe4bc0dc75
doc: fix docs of getting started bot
2022-08-03 17:07:59 +02:00
Benjamin Kampmann
69c8cdf304
Revert "fix: limit indexeddb features to target arch to stop clippy from complaining"
...
This reverts commit d54612b6e2 .
2022-08-03 16:40:17 +02:00
Benjamin Kampmann
daf92d7745
Merge remote-tracking branch 'origin/main' into ben-getting-started-example
2022-08-03 16:39:50 +02:00
Benjamin Kampmann
ccbd9e5712
chore: rename Readme.md to README.md
2022-08-03 16:39:14 +02:00
Jonas Platte
2430d7f267
chore: Remove unneeded docsrs Cargo features
2022-08-03 15:33:53 +02:00
Damir Jelić
3ca3016539
refactor(crypto): Use the curve 25519 key type for inbound group sessions
2022-08-03 15:28:24 +02:00
Jonas Platte
bbbd7942b0
fix(indexeddb): Export MigrationConflictStrategy
2022-08-03 15:17:05 +02:00
Jonas Platte
1a5953e01e
chore(indexeddb): Appease clippy
2022-08-03 15:17:05 +02:00