Damir Jelić
bc48674f9f
Merge branch 'new-sync-methods' into master
2020-10-06 16:43:41 +02:00
Damir Jelić
09f4b07fb7
matrix-sdk: Use a specific version for async-std.
2020-10-06 15:17:45 +02:00
Damir Jelić
2ffac286ed
matrix-sdk: Switch to using an enum for the sync loop callback return value.
2020-10-06 15:04:43 +02:00
Damir Jelić
83b48fb53c
matrix-sdk: Fix the login example.
2020-10-06 12:43:59 +02:00
Damir Jelić
f4137c6bba
Merge branch 'master' into crypto-improvements
2020-10-06 12:23:04 +02:00
Damir Jelić
e16b7f9c44
matrix-sdk: Add an example for the login method.
2020-10-06 12:01:47 +02:00
Damir Jelić
45953a268c
matrix-sdk: Mention that the key import/export methods don't work on WASM.
2020-10-06 11:41:18 +02:00
Damir Jelić
84039ad7aa
matrix-sdk: Add links from the login method docs to the restore_login ones.
2020-10-06 11:40:32 +02:00
Damir Jelić
137fa9619f
matrix-sdk: Add the ability to stop the sync loop and rename the sync methods.
...
This renames our sync methods so it's clearer which one the main one is.
Syncing should be done with the sync method, if one wishes to sync only
once the sync_method is provided.
If one wishes to have a callback called with every sync the
sync_with_callback method exists, the callback now returns a boolean
that signals if the loop should be aborted. This does not mean that the
current sync request will abort, a cancelable future is still needed for
this.
2020-10-06 11:37:29 +02:00
Damir Jelić
02c765f903
crypto: Don't mark outbound group sessions automatically as shared.
2020-10-01 16:31:24 +02:00
Damir Jelić
bcdcdeb259
Merge branch 'master' into crypto-improvements
2020-10-01 12:21:45 +02:00
Alejandro Domínguez
b58d88e0c3
Upgrade ruma
2020-10-01 11:23:26 +02:00
Damir Jelić
8fe1eda169
crypto: Test the full key share flow.
2020-09-29 14:18:03 +02:00
Damir Jelić
a357536ade
crypto: Initial scaffolding for incoming key share handling.
2020-09-28 09:27:16 +02:00
Damir Jelić
f3be27921c
crypto: Move the device trust state logic into the read only device.
2020-09-24 12:45:23 +02:00
Alejandro Domínguez
3070c98d26
Export "unstable-synapse-quirks" feature from ruma
2020-09-22 21:03:12 +02:00
Damir Jelić
dea3e4adf4
crypto: Document when a key export may panic.
2020-09-18 14:04:39 +02:00
Damir Jelić
428b28a985
matrix-sdk: Increase the type length limit for the wasm example.
2020-09-16 12:28:42 +02:00
Damir Jelić
95145fae8f
matrix-sdk: Remove the example with encrypted uploads.
...
The example fail to build on platforms where we don't support encryption. So
remove the example for now.
2020-09-16 12:09:30 +02:00
Damir Jelić
86d95518be
matrix-sdk: Fix the case where the encryption feature is disabled.
2020-09-15 19:10:26 +02:00
Damir Jelić
c8e459bc55
matrix-sdk: Fix the encryption feature.
2020-09-15 18:07:00 +02:00
Damir Jelić
4d431b7c9e
matrix-sdk: Test the attachment sending paths.
2020-09-15 18:06:32 +02:00
Damir Jelić
e98960f30b
matrix-sdk: Add an image uploading bot to the examples.
2020-09-15 17:17:28 +02:00
Damir Jelić
c500c06e4b
matrix-sdk: Add docs and cleanup the media upload methods.
2020-09-15 17:16:16 +02:00
Damir Jelić
3ac3be501f
matrix-sdk: Refactor out the check if a room is encrypted.
2020-09-15 15:02:59 +02:00
Damir Jelić
a60f60bd7d
Merge branch 'master' into encrypted_attachments
2020-09-15 12:04:37 +02:00
Damir Jelić
a4980e8a04
matrix-sdk: Remove an unneeded lifetime.
2020-09-14 20:38:53 +02:00
Jonas Platte
fb47abcc17
Update ruma
2020-09-14 20:26:52 +02:00
Damir Jelić
c2756a9a92
matrix-sdk: First draft for our upload method.
2020-09-14 20:07:55 +02:00
Damir Jelić
ffd2843b0a
matrix-sdk: Expose the import/export keys methods.
2020-09-11 16:34:39 +02:00
Damir Jelić
34cdf31cc5
matrix-sdk: Don't require the user id to be passed to set a typing notice.
2020-09-05 20:32:16 +02:00
Damir Jelić
6c7dbb814b
matrix-sdk: Add a convenience method to get our own devices.
2020-09-05 18:04:15 +02:00
Damir Jelić
217543ef38
matrix-sdk: Bump the versions of our deps.
2020-09-05 18:03:47 +02:00
Jonas Platte
73c104cac1
Replace IncomingToDeviceRequest with customized request type
2020-09-03 20:02:55 +02:00
Damir Jelić
cc236a8765
examples: Fix the wasm bot example.
2020-09-02 14:23:00 +02:00
Devin Ragotzy
6872cc717b
matrix_sdk: fix Client docs for methods that used request builders
2020-08-26 16:30:29 -04:00
Damir Jelić
977e29c3af
matrix-sdk: Fix the wasm bot example.
2020-08-26 16:19:39 +02:00
Damir Jelić
a2f7297941
Merge branch 'reexport-reqwest' into master
2020-08-26 16:07:05 +02:00
Alejandro Domínguez
6fa365935f
Add "socks" feature from reqwest
2020-08-26 16:01:50 +02:00
Damir Jelić
39628a308b
matrix-sdk: Allow any event content to be sent out with room_send().
2020-08-26 15:41:27 +02:00
Damir Jelić
54391040a4
matrix-sdk: Re-export reqwest.
2020-08-26 14:47:43 +02:00
Damir Jelić
7a418ae09e
matrix-sdk: Implement the HttpSend trait directly on the reqwest client.
2020-08-26 14:37:48 +02:00
Damir Jelić
deff66ac42
matrix-sdk: Simplify the registration example.
2020-08-26 14:16:31 +02:00
Damir Jelić
2995cebd57
matrix-sdk: Fix some clippy issues.
2020-08-26 13:50:28 +02:00
Damir Jelić
ea4befabd9
matrix-sdk: Fix the incorrect return value of the HttpSend trait.
...
The HttpSend trait incorrectly returns a reqwest::Response, we already
have logic to return the response into a http::Response and we need to
do the conversion since there is no other way to build Ruma responses.
2020-08-26 13:41:15 +02:00
Damir Jelić
6760f81498
matrix-sdk: Update Ruma.
2020-08-26 13:40:38 +02:00
Damir Jelić
b3d1e8687e
matrix-sdk: Fix to a released version of reqwest.
2020-08-26 10:26:05 +02:00
Tilo Spannagel
a57c6159bd
Fix travis ci errors
...
Signed-off-by: Tilo Spannagel <development@tilosp.de>
2020-08-21 19:11:10 +02:00
Tilo Spannagel
5f10f4301c
Add feature flag for rustls
...
Signed-off-by: Tilo Spannagel <development@tilosp.de>
2020-08-21 18:36:42 +02:00
Damir Jelić
176181bdcf
Merge branch 'crypto-improvements' into master
2020-08-21 18:16:48 +02:00
Damir Jelić
de90da4adc
crypto: Make the verification machine compatible with how we queue up requests.
2020-08-21 16:26:34 +02:00
Damir Jelić
e38bfc64f4
crypto: Streamline the key claiming so we use the new mark request as sent method.
2020-08-21 14:40:49 +02:00
Damir Jelić
93e1967119
crypto: Initial refactor to switch to the outgoing_requests queue.
2020-08-21 13:35:01 +02:00
Damir Jelić
202c20feda
crypto: Rename the method to set the local trust of a device.
2020-08-20 18:01:34 +02:00
Nym Seddon
89c9e31140
doc: Add UIAA auth data to registration example
...
Add direct request authentication data to registration example
2020-08-20 01:42:01 +00:00
Damir Jelić
56309ae12c
matrix-sdk: Bump the versions of our deps.
2020-08-19 14:52:11 +02:00
Damir Jelić
9fe0717cee
examples: Update the emoji verification example tho show a list of devices.
...
This may showcase that cross signing verification works if the other
device uploads valid signatures.
2020-08-19 14:50:35 +02:00
Damir Jelić
90ea0229f2
crypto: Rename TrustState to LocalTrust since.
...
We might still trust the device event if our local trust isn't set, so
rename the enum to better reflect that meaning.
2020-08-19 11:20:08 +02:00
Damir Jelić
6d0b73cb3d
crypto: Pass the user identity to the SAS object when doing verifications.
2020-08-18 13:37:02 +02:00
Damir Jelić
150862ec0c
matrix-sdk: Remove an useless into().
2020-08-17 17:47:29 +02:00
Damir Jelić
6db7eb0694
crypto: Add a method to directly verify a device.
2020-08-17 17:36:07 +02:00
Damir Jelić
84c0311d80
crypto: Rename the UserDevicesWrap struct.
2020-08-17 17:12:39 +02:00
Damir Jelić
8aedc3077d
matrix-sdk: Add an example to the start verification method of the device.
2020-08-17 16:47:24 +02:00
Damir Jelić
91db502cfe
crypto: Rename DeviceWrap to Device.
2020-08-17 16:36:50 +02:00
Damir Jelić
43aea6e482
crypto: Rename Device to ReadOnlyDevice.
2020-08-17 16:17:28 +02:00
Damir Jelić
e778f7d72d
matrix-sdk: Remove an unneeded clone.
2020-08-17 15:56:19 +02:00
Damir Jelić
94248523b3
matrix-sdk: Implement deref for our device wrapper.
2020-08-17 15:54:54 +02:00
Damir Jelić
fd8377bce2
crypto: Add device wrappers so that the verification can be started with a device.
2020-08-17 15:36:45 +02:00
Damir Jelić
9e609a0fdf
matrix-sdk: Move the session into the http client wrapper.
2020-08-17 15:29:07 +02:00
Jonas Platte
5040be042f
Update ruma
2020-08-15 15:17:27 +02:00
Jonas Platte
ad2d3d2037
Simplify tests in matrix_sdk::client
2020-08-15 03:05:22 +02:00
Damir Jelić
09f009ebd7
matrix-sdk: Bump our deps.
2020-08-14 17:11:54 +02:00
Damir Jelić
d4e31f07a1
matrix-sdk: Fix the docs for our feature flags.
2020-08-13 12:18:24 +02:00
Damir Jelić
9b8e11aab9
crypto: Fix the docs for our features.
2020-08-13 11:06:26 +02:00
Damir Jelić
4e99278eac
matrix-sdk: Expose the device methods in the Client.
2020-08-13 10:49:38 +02:00
Damir Jelić
cdb8b5c1e9
matrix-sdk: Fix a couple of typoes.
2020-08-13 10:28:40 +02:00
Damir Jelić
bf42e1a39f
matrix-sdk: Put the send_to_device method behind the encryption feature for now.
2020-08-12 19:18:30 +02:00
Damir Jelić
2449bd27c1
matrix-sdk: Make sure our doctests don't make HTTP requests.
2020-08-12 17:15:18 +02:00
Damir Jelić
29bd38734f
matrix-sdk: Remove an unused import.
2020-08-12 17:10:31 +02:00
Damir Jelić
6c07620a26
matrix-sdk: Fix the to-device imports for the non-crypto case.
2020-08-12 16:52:50 +02:00
Damir Jelić
3e3894b573
matrix-sdk: Fix for the non-encryption enabled use-case.
2020-08-12 16:19:41 +02:00
Damir Jelić
0a26195472
matrix-sdk: Clean up the client tests.
2020-08-12 15:53:42 +02:00
Damir Jelić
c4465e7979
matrix-sdk: Rename cli to client in the doc examples.
2020-08-12 15:23:44 +02:00
Damir Jelić
41f04d4f5d
client: Refactor out the group session sharing logic.
2020-08-12 15:22:17 +02:00
Damir Jelić
15d7deddb8
matrix-sdk: Only claim one-time keys if we're also going to share group sessions.
2020-08-12 15:15:50 +02:00
Damir Jelić
407f9a3da8
matrix-sdk: Make sure to not send out multiple group share requests at once.
2020-08-12 15:12:51 +02:00
Damir Jelić
7cb25361b2
matrix-sdk: Expose an API to start SAS verifications.
2020-08-12 11:39:47 +02:00
Damir Jelić
42a4ad60e8
Merge branch 'lockless-cryptostore' into master
2020-08-11 17:37:38 +02:00
Damir Jelić
9a325a4505
matrix-sdk: Move the HttpSend trait into the http_client file.
2020-08-11 17:25:33 +02:00
Damir Jelić
c4ed5b6cda
matrix-sdk: Upgrade our deps.
2020-08-11 16:54:58 +02:00
Damir Jelić
7637e79f2c
matrix-sdk: Fix the tarpaulin skip directives.
2020-08-11 15:49:04 +02:00
Devin Ragotzy
9234ac96e1
matrix_sdk: Use our version of the async_trait macro
2020-08-11 09:17:18 -04:00
Devin Ragotzy
9294280dc1
matrix_sdk: Add DefaultHttpClient and impl HttpSend
2020-08-11 08:07:45 -04:00
Devin Ragotzy
fba3298162
matrix_sdk: Create HttpSend trait to abstract sending requests
2020-08-11 08:06:43 -04:00
Damir Jelić
c305b5052b
matrix-sdk: Don't allow dead code anymore.
2020-08-10 15:23:49 +02:00
Damir Jelić
ef5201cf35
Merge branch 'up-ruma' into master
2020-08-10 14:58:47 +02:00
Matthew Hodgson
9c4229dc57
typoes
2020-08-10 13:15:58 +01:00
Jonas Platte
d83fc971ce
Update ruma
2020-08-10 13:58:39 +02:00
Damir Jelić
3ddb2199d2
Merge branch 'fix-http-headers' into master
2020-08-09 10:25:15 +02:00
Jonas Platte
4abab73462
Update reqwest to a git dependency
2020-08-09 00:57:58 +02:00
Damir Jelić
17fd85d687
matrix-sdk: Test that we're passing the auth token in the headers.
2020-08-08 15:00:28 +02:00
Jonas Platte
279e88d9f9
Fix handling of headers in HttpClient
2020-08-08 12:23:43 +02:00
Jonas Platte
d016ce1848
Use identifier macros in tests
2020-08-06 13:03:32 +02:00
Jonas Platte
591388d13e
Upgrade ruma
2020-08-05 18:00:45 +02:00
Devin Ragotzy
a3b4cab22e
matrix_sdk_crypto: Fix clippy warnings add wasm emscripten to .gitignore
2020-08-04 20:02:09 -04:00
Devin Ragotzy
cb8d5ce8fb
Rename CustomOrRawEvent -> CustomEvent and use raw json when failed
...
When deserialization fails we fallback to providing the user with a
serde_json::RawValue, basically the json string. Ruma should handle all
events that conform to a matrix event shape correctly by either
converting them to their type or returning a custom event.
2020-08-04 17:27:57 -04:00
Damir Jelić
28a7831ffd
matrix-sdk: Fix the import for the no-encryption case.
2020-08-04 11:41:20 +02:00
Damir Jelić
2bf8c99dfe
Merge branch 'master' into sas-verification
2020-08-04 11:23:24 +02:00
Damir Jelić
77f0676a58
matrix-sdk: The emoji example requires the encryption feature.
2020-08-04 10:49:08 +02:00
Damir Jelić
26ec0c6368
crypto: Proptest the emoji/decimal calculation.
2020-08-03 17:22:44 +02:00
Damir Jelić
01ba94c670
matrix-sdk: Hide the cryptostore error behind a feature flag.
2020-08-03 15:40:39 +02:00
Damir Jelić
a3bb8a0d74
examples: Don't use a proxy for the emoji example.
2020-08-03 14:59:03 +02:00
Damir Jelić
3245fbb1c9
examples: Clean up the emoji example a bit.
2020-08-03 14:51:45 +02:00
Damir Jelić
df9da7539a
crypto: Expose some more SAS info publicly.
2020-08-03 14:33:15 +02:00
Damir Jelić
1787d2ebe6
crypto: Hook up marking the device as verified.
2020-08-03 12:38:43 +02:00
Devin Ragotzy
0ac2b84c02
Unify import style across workspace
2020-08-02 08:05:43 -04:00
Devin Ragotzy
230b2a229f
matrix_sdk: Remove clippy allows
2020-08-02 07:46:02 -04:00
Devin Ragotzy
ed1f12ce37
Run cargo fmt with merge-imports true
2020-08-02 07:46:02 -04:00
Damir Jelić
3f83941d57
Merge branch 'master' into sas-verification
2020-07-31 16:27:52 +02:00
Damir Jelić
91d7a8329e
matrix-sdk: Add an example that does SAS verification.
2020-07-31 15:34:46 +02:00
Damir Jelić
1a40491c0b
matrix-sdk: Fix some clippy warnings.
2020-07-31 15:18:03 +02:00
Devin Ragotzy
79e661d1d9
sdk-base: Remove MessageWrapper and do not order messages in queue
2020-07-31 09:16:41 -04:00
Damir Jelić
30c07b4e08
matrix-sdk: Send out to-device events in the sync_forever() loop.
2020-07-30 15:53:55 +02:00
Damir Jelić
5058f09111
matrix-sdk: Remove an incorrect copyright line.
2020-07-29 14:40:05 +02:00
Damir Jelić
21b0afe72c
matrix-sdk: Add a Sas wrapper.
2020-07-29 14:19:47 +02:00
Damir Jelić
2b124d98bc
matrix-sdk: Pass the rwlock to the http client when doing requests.
2020-07-29 13:50:01 +02:00
Damir Jelić
27f918e52d
matris-sdk: Move the http request sending logic into a separate struct.
2020-07-29 10:56:18 +02:00
Jonas Platte
6a96368048
Upgrade ruma
2020-07-26 16:58:27 +02:00
Jonas Platte
ca88539ec4
Upgrade ruma
2020-07-25 02:23:10 +02:00
Jonas Platte
bf54b17a2f
Upgrade ruma
2020-07-22 22:31:42 +02:00
Devin R
e4f94cbfec
Remove FullOrRedacted use ruma::AnyPossiblyRedacted event enum
2020-07-18 08:52:51 -04:00
Devin R
807435c043
Updates DeviceId to be Box<DeviceId>
2020-07-18 08:51:19 -04:00
Devin R
71f2a042c2
Rename Stub -> Sync for all ruma events
2020-07-18 08:37:43 -04:00
Devin R
2e8fc3e232
matrix-sdk-base: Integrate redacted events into message queue
...
Redact message events according to spec and ruma types. Remove content
using events redact() method and insert the redacting event into the
event being redacted.
2020-07-17 13:41:55 -04:00
Damir Jelić
d273786d83
matrix-sdk: Bump our dependencies.
2020-07-17 10:01:22 +02:00
Damir Jelić
7ddc785a9a
Merge branch 'timeout'
2020-07-17 09:59:21 +02:00
Stephen
f2163164bf
Wasm fix
2020-07-16 20:53:09 -03:00
Stephen
44dfbd2fa6
Fix
2020-07-16 20:21:34 -03:00
Stephen
2f99d0de59
Bugfix
2020-07-16 20:06:26 -03:00
Black Hat
7a72949613
Client::sync_forever(): Add filter in next iteration.
2020-07-16 15:55:55 -07:00
Stephen
b0241e51a3
Fixed formatting
2020-07-16 18:40:52 -03:00
Stephen
c5ea4fde35
HTTP timeout
2020-07-16 18:16:30 -03:00
Black Hat
cc4ae3db1e
Client::SyncSettings: Include sync filter
2020-07-16 06:13:35 -07:00
Black Hat
a5c5f5a7b1
Revert "Client::sync(): expose sync filter"
...
This reverts commit 0542e3d83d
.
2020-07-16 06:04:26 -07:00
Black Hat
0542e3d83d
Client::sync(): expose sync filter
2020-07-16 03:49:46 -07:00
Damir Jelić
a2a87b9fff
matrix-sdk: Fix a bunch of clippy warnings.
2020-07-15 15:53:17 +02:00
Damir Jelić
bf152df322
matrix-sdk: Hide some tracing imports behind the encryption flag.
2020-07-15 14:05:22 +02:00
Damir Jelić
204279c575
matrix-sdk: Don't hide the tracing import behind the encryption feature.
2020-07-15 13:19:56 +02:00
Denis Kasak
32737a5517
Use match instead of if-let in sync_forever.
2020-07-15 09:43:58 +02:00
Denis Kasak
048a2000e7
Merge
2020-07-13 17:10:13 +02:00
Jonas Platte
ffc5204109
Fix two pattern matching related warnings
2020-07-11 20:57:01 +02:00
Jonas Platte
1fcb68c59f
Remove unused dependencies
2020-07-11 20:55:05 +02:00
Damir Jelić
4ee245dcce
examples: Updat the autojoin example to use the ruma mono repo.
2020-07-10 15:30:17 +02:00
Denis Kasak
8daa12ac56
Print error when receiving invalid response in sync_forever.
2020-07-10 15:11:03 +02:00
Devin R
c0e6279837
matrix-sdk: Update request_builder to use new constructors
...
The create_room::Request and get_message_events::Request now have
constructors that we use in our builder structs.
2020-07-10 08:59:02 -04:00
Devin R
dcc3d6e755
sdk_base: Remove room_id as argument from all Room methods
...
Remove room_id paramater from some client methods. Make CreationContent
two methods of RoomBuilder. Add docs for MessageWrapper.
2020-07-10 08:59:02 -04:00
Devin R
b83b9dc59d
matrix-sdk-base: Use new accessor methods for models/message.rs
...
ruma now has field access methods for all of the Any*Event enums use
them for MessageWrapper's AnyMessageEventStub contents.
2020-07-10 08:59:02 -04:00
Devin R
68822861d5
Rebase upstream/master into ruma-mono branch
2020-07-10 08:59:02 -04:00
Devin R
eb5949dbc2
Move matrix-sdk to ruma monorepo
2020-07-10 08:59:00 -04:00
Damir Jelić
a3441429da
matrix-sdk: Add an autojoin example.
2020-07-08 20:22:50 +02:00
Damir Jelić
583dbb07a5
Merge branch 'deps-bump'
2020-07-07 16:13:25 +02:00
Damir Jelić
25207a1586
matrix-sdk: Make the wasm feature for future-timers target specific.
2020-07-07 16:11:33 +02:00
Damir Jelić
283cf0d782
matrix-sdk: Bump all our deps.
2020-07-07 15:52:08 +02:00
Damir Jelić
f33298b1a6
matrix-sdk: Explain what needs to be done to restore a client.
2020-07-07 15:47:34 +02:00
Damir Jelić
669a3f22d2
matrix-sdk: Allow getting the user id from the client.
2020-07-05 16:47:38 +02:00
Damir Jelić
cd9252cc3d
matrix-sdk: Remove an unused import.
2020-06-26 18:21:44 +02:00
Devin R
92a43e7685
Move test data to test crate, fix docs
2020-06-25 08:31:51 -04:00
Devin R
1016519bb6
matrix_sdk: Rename public room builder and client methods
...
Remove 'get' from get_public_rooms* methods.
Rename RoomSearchBuilder -> RoomListFilterBuilder.
Use u32 over UInt in builders and Into<String> for String.
Fix docs of public room methods and builders.
2020-06-24 07:46:40 -04:00
Devin R
4dbe785bd7
matrix_sdk: Add get_public_rooms* methods to Client
...
This also adds a RoomSearchBuilder for making get_public_rooms_filtered
requests and a test for each method.
2020-06-24 06:54:45 -04:00
Damir Jelić
676d547161
matrix-sdk: Disable the tarpaulin skip lines since it fails to run with them.
2020-06-24 11:25:31 +02:00
Damir Jelić
6a670163d3
Merge branch 'feature/display-name'
2020-06-24 10:42:58 +02:00
Damir Jelić
b8c4d1d5fa
matrix-sdk: Remove the last test_data folder and fix the remaining tests.
2020-06-24 10:07:03 +02:00
Devin R
9e738f45ef
crypto/base: Finish moving to using static json values for test data
2020-06-22 16:18:12 -04:00
Devin R
4a7b3a103c
matrix_sdk_test: Use static JSON values instead of reading files
2020-06-21 14:13:26 -04:00
Denis Kasak
1174ccfc89
Merge branch 'master' into feature/display-name
2020-06-20 12:54:46 +02:00
Marcel
255451b8c7
Add missing dependency matrix-sdk-common-macros to matrix-sdk
2020-06-17 19:42:07 +02:00
Marcel
8b77b4171a
Do wasm sepcific changes:
...
- Only use send+sync when not using wasm
- Use wasm capabale async_trait wrapper macro
- Make room and room_member specific structs always clonable
2020-06-17 18:57:39 +02:00
Denis Kasak
03e53e991b
Hoist prev_content to top-level in both timeline and state events.
...
Also refactor and document why this hoisting is needed.
This change makes the user_presence test fail because the hoisting
exposes an error encoded into the test's expected result.
Previously, the test expected 2 members in the room at the end. This is
incorrect since one of the members in the test data leaves the room.
However, since the prev_content of state events was previously not
hoisted to the top level, the `membership_change` method would not
notice it and thus not realize the member had left the room. The test
was corrected to expect only a single member in the room.
Another test change was made due to a limitation of EventBuilder: due to
the fact that it makes the test data go through a de/ser cycle, it
cannot easily hoist prev_content to the top level. Because of this, the
tests were change to put prev_content into the top level from the
outset.
2020-06-15 17:21:26 +02:00
Damir Jelić
c3373f796b
Merge branch 'export-base-error'
2020-06-15 09:47:51 +02:00
Damir Jelić
311e41ee0d
matrix-sdk: Fix the author field in the cargo files.
2020-06-15 09:47:13 +02:00
Devin R
f8b5fceeb1
matrix-sdk: Export matrix-sdk-base Error type as BaseError
2020-06-14 20:00:41 -04:00
Denis Kasak
97b1bb6004
Must not take our user into account when calculating room name.
2020-06-10 22:53:31 +02:00
Denis Kasak
331cb02266
Split joined/invited users and handle removing users.
2020-06-10 18:12:27 +02:00
Denis Kasak
7751605e37
Nix RoomMember::update_member and tracking membership.
...
After discussing with poljar, we concluded we don't actually need to
tracking membership state, since we won't be tracking users that
left (banned, kicked, disinvited).
The only thing we need to keep track of is the difference between joined
and invited users which will be dealt with in a separate commit.
2020-06-10 16:36:51 +02:00
Damir Jelić
442464add6
matrix-sdk: Implement sending of Http DELETE requests.
2020-06-09 16:29:17 +02:00
Damir Jelić
abe40dff11
matrix_sdk: Remove code duplication in our send methods.
2020-06-09 16:28:54 +02:00
Devin R
6df1f12b45
async_client: add docs/test for register_user, send_uiaa and RegistrationBuilder
2020-06-02 17:13:29 -04:00
Devin R
5abac19b72
request_builder/async_client: add register endpoint and RegistrationBuilder for making the request
2020-06-02 17:13:01 -04:00
Damir Jelić
62e959a94d
Merge branch 'expose-send'
2020-06-02 11:20:47 +02:00
Damir Jelić
54871f2af9
matrix-sdk: Make the example for the send method comiple.
2020-06-02 11:15:04 +02:00
Marcel
6a323525b5
Add example to the Client::send() doccomment
2020-06-02 10:40:50 +02:00
Marcel
1d00f79675
Run cargo fmt for the get_profiles example
2020-06-02 10:40:32 +02:00
Marcel
7201749280
Add small example on how to use Client::send
2020-06-02 10:39:50 +02:00
Damir Jelić
21b33f4e61
Merge branch 'doc-fix'
2020-06-02 10:31:09 +02:00
Damir Jelić
587614cdd7
Merge branch 'unrecognized'
2020-06-02 10:28:57 +02:00
Devin R
db38bf1276
event_emitter: use enum to represent custom events and raw json
2020-06-01 17:02:12 -04:00
Devin R
761071dac5
base_client: fix doc grammer and consistency, group request methods together
2020-06-01 07:50:45 -04:00
Devin R
b1864887aa
matrix-sdk: enable messages feature by default
2020-06-01 06:45:38 -04:00
Damir Jelić
8ee6c3bdc8
matrix-sdk: Don't require Send for the sync callback.
2020-05-29 09:39:17 +02:00
Damir Jelić
5637cdd133
matrix-sdk: Add a bunch of readmes to the crates.
2020-05-26 19:33:13 +02:00
Damir Jelić
f3e04b5a74
Merge branch 'read-marker'
2020-05-25 14:23:58 +02:00
Damir Jelić
ba66ee214f
matrix-sdk: Move most of the configuration to the base client.
2020-05-25 14:21:04 +02:00
Devin R
621b1b08e4
async_client: read_marker/receipt doc fixes
2020-05-25 07:46:50 -04:00
stoically
7edb42b75c
matrix-sdk: Use futures-timer's wasm-bindgen feature
2020-05-24 16:11:56 +02:00
Devin R
a6303d041b
async_client: add test for read_marker endpoint
2020-05-23 06:38:55 -04:00
Devin R
f31357c4e1
async_client: read_marker endpoint, fix read_receipt docs
2020-05-22 18:05:12 -04:00
Damir Jelić
b8a9e05ebb
examples: Fix the wasm bot example.
2020-05-22 16:19:30 +02:00
Damir Jelić
ea5f7f1d19
matrix-sdk: Don't require the the session at client creation time.
...
The client objects in the sdk accepted an optional session argument at
creation time. If provided this would restore the client into a logged
in state.
Since we need to restore the client state and encryption state at some
point it makes sense to do it when the client transitions into a logged
in state. At the same time we would like to avoid the client creation to
be async.
This introduces a restore_login() method which can be called instead of
the login() method to restore a session.
2020-05-22 15:23:58 +02:00
Emi Simpson
53876ea6e8
Make Client::send a public method, add a short doccomment
2020-05-20 14:24:35 -04:00
Devin R
0f6caec93d
state_store: move room file when room state changes, test room_state_change method, doc edits
2020-05-18 16:26:27 -04:00
Damir Jelić
e51e89d9d5
matrix-sdk: Re-enable joins by id or alias.
2020-05-15 12:32:36 +02:00
Damir Jelić
8c6c34e01a
matrix-sdk: Don't require coverage for some debug implementations.
2020-05-14 15:26:22 +02:00
Damir Jelić
269a01e480
matrix-sdk: Remove some unused imports.
2020-05-14 14:39:39 +02:00
Damir Jelić
b1de56478d
matrix-sdk: Disable for now joins by roomid or alias.
2020-05-14 14:30:29 +02:00
Damir Jelić
ecbd801c70
crypto: Invalidate group sessions if they fail to be shared.
2020-05-14 11:55:12 +02:00
stoically
0d12a5571f
matrix-sdk: VERSION isn't used for the wasm target
2020-05-13 15:02:48 +02:00
Damir Jelić
5b1188a38b
matrix-sdk: Add more strict lints.
2020-05-13 12:47:24 +02:00
Damir Jelić
f1d12ff1f3
matrix-sdk: Remove all mentions of the AsyncClient.
2020-05-13 10:06:08 +02:00
Devin R
21bf631f47
Merge branch 'master' into store-room
2020-05-12 18:08:51 -04:00
stoically
1241fd718e
base: Only disable sleep in WASM but still `continue`
2020-05-12 17:32:09 +02:00
stoically
aa42951f15
matrix-sdk: Switch to upstream crates
2020-05-12 17:32:01 +02:00
stoically
890dbdaa39
examples: Rename to wasm_command_bot and add note about encryption
2020-05-12 16:10:55 +02:00
Damir Jelić
e84a3e417c
matrix-sdk: Add missing newlines at the end of some files.
2020-05-12 15:48:17 +02:00
Damir Jelić
0bb1be94e2
examples: Modify the wasm example to be similar to the command bot.
2020-05-12 15:48:17 +02:00
Damir Jelić
2a411bf5df
matrix-sdk: Use the instant crate so Instant works on wasm as well.
2020-05-12 15:48:17 +02:00
Damir Jelić
19b8a1686d
client: Disable the sleeps on the wasm target for now.
2020-05-12 15:48:17 +02:00
stoically
ef6104bc53
matrix-sdk: Support compiling to wasm32-unknown-unknown
2020-05-12 15:48:09 +02:00
Devin R
21712d0930
state_store: load/store each room type (invite, join, left), add type for returning 3 room maps
2020-05-11 15:54:11 -04:00
Devin R
22c4a1f2e7
Merge branch 'master' of https://github.com/matrix-org/matrix-rust-sdk into store-room
2020-05-11 14:17:31 -04:00
Devin R
0d0d8fca2d
client: add store_room_state method
2020-05-11 07:04:47 -04:00
Damir Jelić
b6c0d4e3bb
base: Rename the Client to BaseClient.
2020-05-11 10:43:21 +02:00
Damir Jelić
9d09d19101
matrix-sdk: Rename the AsyncClient to just Client.
2020-05-08 14:02:49 +02:00
Damir Jelić
4e0bef064f
matrix-sdk: More cleanup in the deps.
2020-05-08 13:54:46 +02:00
Damir Jelić
8a7aefac3b
matrix-sdk: Split out the error types in our base and matrix-sdk crates.
2020-05-08 12:39:36 +02:00
Damir Jelić
db26ae9027
matrix-sdk: Rename the async client file.
2020-05-08 11:40:33 +02:00
Damir Jelić
720e45509a
matrix-sdk: Move all the async client tests into the async client file.
2020-05-08 11:27:33 +02:00
Damir Jelić
ef6458c9cd
matrix-sdk: Fix the feature flags for real this time.
2020-05-08 11:07:08 +02:00
Damir Jelić
f5ec1f93ed
matrix-sdk: Remove some unused deps now that we have stuff split out.
2020-05-08 10:18:29 +02:00
Damir Jelić
e57ae2c4ef
matrix-sdk: Fix the feature flags.
2020-05-08 10:13:47 +02:00
Damir Jelić
1e8ab74058
matrix-sdk: Use the EventBuilder in the async client tests.
2020-05-08 09:57:42 +02:00
Devin R
4f96ac96e2
async_client: add tests for all current endpoints, event emitter typeing/receipt events, set unread notifications
2020-05-07 15:21:06 -04:00
Damir Jelić
14580bc383
matrix_sdk: Fix most of the tests now that we have the big split.
2020-05-07 16:22:18 +02:00
Damir Jelić
30f8ccd2de
matrix-sdk: Move the bulk of the sdk into a separate base crate.
2020-05-07 14:58:38 +02:00
Devin R
06707bd95e
Merge branch 'master' into invite-leave-sync
2020-05-07 07:18:13 -04:00
Devin R
35afd65705
base/async_client: remove deadcode, remove get room name methods from AsyncClient
2020-05-07 07:09:22 -04:00
Damir Jelić
a4f5a93880
base: Move some test that use the async client out of the base.
2020-05-07 12:51:53 +02:00
Damir Jelić
8a4cca3a85
Merge branch 'more-endpoints'
2020-05-07 11:01:24 +02:00
Damir Jelić
b97e67c404
Merge branch 'messages'
2020-05-07 10:17:14 +02:00
Damir Jelić
6cbdbdcd2f
matrix-sdk: Rename the types subproject to matrix-sdk-common.
2020-05-07 08:51:59 +02:00
Devin R
9939efe0e8
message: feature flag message queue storage in Room struct
2020-05-06 21:17:21 -04:00
Devin R
fa4a99504e
room: receive AnyStrippedStateEvent and handle within Room struct
2020-05-06 20:46:06 -04:00
Devin R
7b2ffd1f25
Merge branch 'master' into invite-leave-sync
2020-05-06 20:35:15 -04:00
Devin R
8afac39611
async_client/event_emitter: use RoomState to differentiate joined, invited and left rooms when emitting
2020-05-06 19:45:27 -04:00
Damir Jelić
e9d6e28e13
matrix-sdk: Remove some unused deps.
2020-05-06 17:06:24 +02:00
Damir Jelić
d8b9dc8519
base: Don't expose the client fields publicly.
2020-05-06 15:55:18 +02:00
Damir Jelić
1639f0fdd8
async_client: Remove the lock around the base client.
2020-05-06 15:36:55 +02:00
Damir Jelić
02013ac286
base: Move the state store behind a lock.
2020-05-06 15:20:20 +02:00
Damir Jelić
3d03f77dba
base: Lock the event emitter option.
2020-05-06 14:47:58 +02:00
Devin R
522a8435d0
async_client: add tests for enpoints, fix docs
2020-05-06 08:36:28 -04:00
Damir Jelić
3a30d53437
base_client: Move the session behind a lock.
2020-05-06 14:27:53 +02:00
Damir Jelić
967544bab9
base_client: Make the base client a bit more threadsafe.
...
This moves the bulk of the sync logic into the base client, to avoid
deadlocks while someone tires to send messages from a event callback the
base client needed to get a bunch of locks.
Ideally the AsyncClient would not need a lock for the base client at all
but we're not there yet.
2020-05-06 13:57:58 +02:00
Devin R
c90eb6a938
message: resolve reviews, deserialization can fail, update for ruma removed PartialEq
2020-05-06 06:58:42 -04:00
Devin R
f13189d154
Merge branch 'master' into messages
2020-05-06 06:53:42 -04:00
Devin R
e0400bd4e6
event_emitter: romove events for another PR
2020-05-06 06:33:03 -04:00
Devin R
7c7aaee22e
async_client/event_emitter: add tests for invited and left rooms
2020-05-06 06:23:34 -04:00
Devin R
0e538a7c67
event_emitter/async_client: receive and emit events for invited and left rooms
2020-05-05 16:13:14 -04:00
Devin R
5ce62c9b6c
async_client: rebase master onto more-endpoints, fix clippy warning
2020-05-05 13:21:02 -04:00
Devin R
d8883a11c1
async_client: add endpoints for typing and read notice, ban user and forget room
2020-05-05 13:18:53 -04:00
Damir Jelić
7b6e030823
matrix-sdk: Fix the last Ruma incompatibilities.
2020-05-05 15:29:25 +02:00
Devin R
bd2d6b0fac
message: push message when queue isn't full, don't insert dup
2020-05-05 07:04:39 -04:00
Devin R
bfa9c0fda9
Merge branch 'master' of https://github.com/matrix-org/matrix-rust-sdk into messages
2020-05-05 06:57:37 -04:00
Damir Jelić
a54fec7ac5
base: Fix another instance of missing PartialEq support.
2020-05-04 14:22:10 +02:00
Damir Jelić
86dc1ce3ca
crypto: Disable the creation of encrypted event content for now.
...
It isn't possible to encrypted events using ruma anymore. This will need
to be re-enabled once ruma gets back support for this.
2020-05-04 14:12:42 +02:00
Damir Jelić
60cc939fdd
matrix-sdk: Update our deps and re-implement PartialEq for the ClientState.
2020-05-04 14:06:34 +02:00
Damir Jelić
3bcce962e3
matirx_sdk: Fix a bunch of clippy warnings.
2020-04-30 14:07:49 +02:00
Damir Jelić
fc0d4a7d35
crypto: Rework our errors making them more specific.
2020-04-30 13:16:10 +02:00
Devin R
2c4b6919ef
message: only push message when timestamp is larger than last msg in queue
2020-04-30 06:57:25 -04:00
Devin R
9788233771
room/message: make docs more clear, deserialize to MessageEvent over RoomEvent
2020-04-30 06:28:36 -04:00
Devin R
d4b2fd0e1a
Merge branch 'master' into messages
2020-04-30 06:02:31 -04:00
Damir Jelić
157dc86b61
matrix_sdk: Style fix for a docstring.
2020-04-30 10:14:18 +02:00
Devin R
9386b500a8
message: keep MessageQueue sorted by origin_server_ts
2020-04-29 19:28:58 -04:00
Devin R
178c6c06f8
Merge branch 'state-reviews' into messages
2020-04-29 15:49:36 -04:00
Devin R
376381b1a7
state_store: remove device_id and user_id from ClientState
2020-04-29 15:42:20 -04:00
Devin R
955f6248cf
async_client: fix clippy warning
2020-04-29 08:10:53 -04:00
Devin R
5b17e57c4e
room/messages: add message de/ser to Room
2020-04-29 07:58:31 -04:00
Devin R
ef560fd545
state_store: load_client takes a sessions obj, docs, copyright, move state store into base client
2020-04-29 07:00:14 -04:00
Damir Jelić
4c760fca02
matrix_sdk: Use the internal types crate.
2020-04-29 10:40:27 +02:00
Damir Jelić
c5d833a14b
Merge branch 'state-store'
2020-04-29 10:06:02 +02:00
Damir Jelić
5fef444d61
matrix-sdk: Split out the crypto part of the sdk into a separate crate.
2020-04-29 09:48:00 +02:00