Austin Ray
79025e3f40
base: split calculate_room_name()
...
Split `calculate_room_name()` into a high-level function using Matrix
data types and low-level function containing the core logic using plain
Rust data types. Since the low-level function uses simple data types,
unit testing becomes easier.
2021-05-21 17:25:59 -04:00
Austin Ray
c90e8ab483
base: use correct bound in naming algorithm
...
Step 3.ii of the name calculation algorithm[0] specifies the conditional
as `heroes < invited + joined - 1 AND invited + joined > 1`. However,
current implementation uses `invited + joined - 1 > 1` in the
conditional, which can trigger the conditional if the user is alone.
Correct this by using two variables representing `invited + joined` and
`invited_joined - 1` and updating the conditional. `invited + joined` is
kept as a variable since step 3.iii uses it for its conditional.
[0] https://matrix.org/docs/spec/client_server/latest#calculating-the-display-name-for-a-room
2021-05-21 14:51:59 -04:00
Kévin Commaille
64b5298881
base: Add support for read receipts
2021-05-20 17:14:57 +02:00
Damir Jelić
8018b43443
qrcode: Document the qrcode crate.
2021-05-20 15:02:14 +02:00
Damir Jelić
f49f5f1636
qrcode: Add some more tests
2021-05-20 14:04:40 +02:00
Damir Jelić
b073323089
qrcode: Add another TryFrom implementation
2021-05-20 14:04:07 +02:00
Damir Jelić
305766955b
matrix-sdk: Add a crate to generate and parse QR codes
...
This patch adds types and methods to parse QR codes defined in the
[spec]. It supports parsing the QR format from an image or from a byte
string, converting back to an image and bytestring is possible as well.
[spec]: https://spec.matrix.org/unstable/client-server-api/#qr-code-format
2021-05-19 16:10:48 +02:00
Damir Jelić
110b8eb8dd
Merge branch 'master' into sas-longer-flow
2021-05-18 09:07:50 +02:00
Damir Jelić
fe17dce813
Merge branch 'ProjectMoon/master'
2021-05-18 08:53:31 +02:00
Damir Jelić
c122549e0d
base: Correctly get the user ids of all room members
2021-05-18 08:29:10 +02:00
projectmoon
bb69901d94
Return joined members in a room from the correct Sled tree.
2021-05-17 22:28:30 +00:00
Jonas Platte
cd77441d1b
Upgrade ruma to 0.1.0 (crates.io release)
2021-05-17 02:57:36 +02:00
Jonas Platte
5059d8b2c6
Remove unused import
2021-05-17 02:21:18 +02:00
Jonas Platte
ffea84b64a
Use Instant instead of SystemTime to measure elapsed time
2021-05-15 17:23:31 +02:00
Jonas Platte
15540e84e3
Upgrade ruma
2021-05-15 17:22:32 +02:00
Johannes Becker
0bdcc0fbf9
appservice: Refactor API
2021-05-13 17:42:06 +02:00
Damir Jelić
3f57a2a9f2
Merge branch 'master' into sas-longer-flow
2021-05-13 11:26:40 +02:00
Damir Jelić
09a7858702
crypto: Initial support for the longer to-device verification flow
2021-05-13 11:15:56 +02:00
Damir Jelić
ec55258be9
crypto: Handle decrypted to-device events as well
...
Usually only room keys and forwarded room keys are sent as encrypted
to-device events, those are specially handled to avoid accepting room
keys coming in unencrypted.
Some clients might send out other events encrypted which might lower
metadata leakage and the spec doesn't disallow it.
This patch handles decrypted events the same way as non-encrypted ones,
we're still special casing the decryption handling to avoid decryption
loops/bombs (i.e. events that are encrypted multiple times).
2021-05-13 11:08:13 +02:00
Devin Ragotzy
6b600d7e6d
Replace async_trait rustfmt removed
2021-05-12 20:34:14 -04:00
Devin Ragotzy
5f09d091cb
Add cargo fmt to ci using nightly
2021-05-12 15:38:59 -04:00
Devin Ragotzy
2ef0c2959c
Add use_small_heuristics option and run fmt
2021-05-12 15:37:29 -04:00
Devin Ragotzy
c85f4d4f0c
Add rustfmt config file and run over workspace
2021-05-12 15:36:52 -04:00
Damir Jelić
4f7902d6f0
crypto: Add a method to check it the SAS flow supports emoji
2021-05-12 20:09:02 +02:00
Damir Jelić
9863bc4a1c
matrix-sdk: Fix a clippy warning
2021-05-12 19:45:23 +02:00
Damir Jelić
77c2a4ed4f
matrix-sdk: Bump ruma
2021-05-12 19:19:42 +02:00
Damir Jelić
4c09c6272b
Merge branch 'feat/appservice'
2021-05-11 09:50:26 +02:00
Damir Jelić
da57061db0
Merge branch 'tags'
2021-05-10 13:27:30 +02:00
Johannes Becker
753302394f
appservice: Remove outdated error
2021-05-10 12:08:04 +02:00
Johannes Becker
a2125adeee
ci: Dedicated matrix-sdk-appservice pipeline
2021-05-10 09:56:33 +02:00
Johannes Becker
14bc4eb7e0
appservice: Rename verify_hs_token to hs_token_matches
2021-05-10 09:11:15 +02:00
Johannes Becker
325531d13f
appservice: Compile time webserver feature check
2021-05-10 09:04:51 +02:00
Johannes Becker
87099676f9
appservice: Improve docs
2021-05-10 08:43:06 +02:00
Johannes Becker
3b24d33822
appservice: Rely on cfg-toggle in send_request
2021-05-10 07:56:00 +02:00
Johannes Becker
eece920953
appservice: Initial version
2021-05-10 07:51:52 +02:00
Jonas Platte
44eff7deb7
Add a general-purpose API error variant to HttpError
2021-05-08 15:01:02 +02:00
Jonas Platte
68b74c5ea9
Rename HttpError::{FromHttpResponse => ClientApi}
2021-05-08 14:49:42 +02:00
Jonas Platte
efe5b1e538
Bump ruma
2021-05-08 14:49:15 +02:00
Kévin Commaille
a2ab6a9f23
base: Get the tags for a room
2021-05-07 19:11:27 +02:00
Damir Jelić
1bda3659ce
sas: Allow to just get the emoji index instead of the emoji and descryption
2021-05-07 17:04:27 +02:00
Damir Jelić
80d01b23c4
sas: Return an array of seven emojis instead of a vector
2021-05-07 17:01:53 +02:00
Damir Jelić
dea3d4cb68
sas: Implement a missing todo, allow accepting in-room verifications.
...
Technically that's not needed since we auto-accept here after we
accepted the request but we still need to remove the TODO there.
2021-05-07 16:57:52 +02:00
Kévin Commaille
b8017b1fb0
bump ruma to 24154195a00390a33542603b968e94022487587c
2021-05-07 13:22:32 +02:00
Damir Jelić
8dbbacfbe6
client: Add a method to get the ed25519 key of our own device
2021-05-06 21:44:50 +02:00
Damir Jelić
43b7072609
matrix-sdk: Fix some newly introduced clippy warnings
2021-05-06 20:42:27 +02:00
Damir Jelić
cad888e69b
client: Remove a now unneeded workaround for UIA
2021-05-06 19:18:22 +02:00
Damir Jelić
5df9ae350c
client: Require a proper Url to create a client
2021-05-06 09:58:21 +02:00
Damir Jelić
d90e112c06
Merge branch 'encryption-info-v2'
2021-04-29 16:54:14 +02:00
poljar
6048a1a507
crypto: Fix a typo
...
Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com>
2021-04-29 15:34:53 +02:00
poljar
233c4355d8
crypto: Use encryption info in the docstring for the type of the same name
...
Co-authored-by: Jonas Platte <jplatte@users.noreply.github.com>
2021-04-29 15:34:39 +02:00