Commit Graph

14300 Commits

Author SHA1 Message Date
Kévin Commaille 69c8b9f049 sdk: Add method to check if device is verified with cross-signing
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2023-05-06 20:06:40 +02:00
Kévin Commaille 2c3664c2b3 sdk: Document when a created room is set as direct
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2023-05-06 19:50:42 +02:00
Jonas Platte 33c84b9ffd crypto: Reduce stack size of OlmMachine 2023-05-05 14:24:44 +02:00
Jonas Platte e5375a475e crypto: Reduce stack size of Store
… and make it cheaper to clone.

Reduces the stack size of OlmMachine from 3632 bytes to 832 bytes.
2023-05-05 14:24:44 +02:00
Jonas Platte 794ab8bc9f crypto: Borrow InboundGroupSession for async fn's that don't need to own
Reduces the size of the returned futures.
2023-05-05 12:39:50 +02:00
Jonas Platte 70c2cf6fe4 sdk: Reduce size of futures in http_client 2023-05-05 12:39:50 +02:00
Jonas Platte 88580d95bf Consistently use Ruma's Owned*Id types
… for simplicity; instead of `Arc<*Id>`.
2023-05-05 12:34:15 +02:00
Mauro b9cc0b5249 ffi: Add Client::get_notification_item
… and remove NotificationService.
2023-05-05 11:27:56 +02:00
Jonas Platte 848de833cc sdk: Fill in replied-to event from timeline items when available 2023-05-05 10:54:01 +02:00
Jonas Platte 10d441f580 sdk: Log redactions of already-redacted events 2023-05-05 10:18:13 +02:00
Marcel 211690ab44 Add missing const to make epilogue.js work in ECMAScript Module compatibility mode
Signed-off-by: Marcel Radzio <mtrnord [AT] nordgedanken.dev>
2023-05-05 10:17:36 +02:00
Jonas Platte c6c5e7fca6 Add CODEOWNERS file for automatic review requests 2023-05-04 16:41:04 +02:00
Ivan Enderlin a91cd93a77 Merge pull request #1860 from bnjbvr/make-builder-build-infallible
Make `SlidingSyncListBuilder::build` infallible
2023-05-04 16:00:40 +02:00
Benjamin Bouvier e05f8001cf Mandate a Client when creating a SlidingSyncBuilder
Signed-off-by: Benjamin Bouvier <public@benj.me>
2023-05-04 15:42:35 +02:00
Benjamin Bouvier fd480b3a8d review: remove useless Result in FFI layer too (thanks hywan!)
Signed-off-by: Benjamin Bouvier <public@benj.me>
2023-05-04 15:42:35 +02:00
Benjamin Bouvier 0962b03a75 Get rid of the name() function builders?
Signed-off-by: Benjamin Bouvier <public@benj.me>
2023-05-04 15:42:35 +02:00
Benjamin Bouvier 3e811d5246 Make SlidingSyncListBuilder::build infallible by mandating a name in ctor
Signed-off-by: Benjamin Bouvier <public@benj.me>
2023-05-04 15:42:35 +02:00
Jonas Platte 3eaacaba55 sdk: Add / update copyright headers 2023-05-04 14:21:24 +02:00
Jonas Platte c5d7022272 sdk: Add a redaction test
including a check that we discard the original event if it's somehow
received again after the redaction.
2023-05-04 14:21:24 +02:00
Jonas Platte 443e729f5b sdk: Fix redaction regression 2023-05-04 14:21:24 +02:00
Jonas Platte 749b57f30a sdk: Fix logs around redactions
No need to log redaction event ID as it's already part of the span.
2023-05-04 14:21:24 +02:00
Jonas Platte 18a0c836af sdk: Move timeline redaction test to new file 2023-05-04 14:21:24 +02:00
Jonas Platte 878ab7f0e3 sdk: Don't add original form of redacted events to the timeline
If the redaction already happened server-side, it is a bug for the
server to even still have access to the non-redacted form.
We don't accept the server data in this case, and also log a warning.
2023-05-04 12:30:19 +02:00
Benjamin Bouvier 2d2874f3c0 Remove unused SlidingSyncList::new_builder
Signed-off-by: Benjamin Bouvier <public@benj.me>
2023-05-04 11:40:26 +02:00
Ivan Enderlin 769fd9cad6 Merge pull request #1844 from matrix-org/rav/signing_keys_upload_response
crypto-js: extend `mark_request_as_sent` to accept SigningKeysUploadResponses
2023-05-04 10:34:27 +02:00
Mauro 709bea839e ffi: Expose active_members_count 2023-05-04 10:31:36 +02:00
Mauro a0cebfcba2 ffi: Fix is_noisy calculation matrix-sdk-crypto-ffi-0.3.7 2023-05-04 09:13:33 +02:00
Richard van der Hoff 5c9fdc51f6 fix lint 2023-05-03 14:36:39 +01:00
Richard van der Hoff c1c1b1047d Apply suggestions from code review
Co-authored-by: Ivan Enderlin <ivan@mnt.io>
Co-authored-by: Damir Jelić <poljar@termina.org.uk>
2023-05-03 14:16:56 +01:00
Ivan Enderlin d703380f85 chore(ffi): Re-order methods. 2023-05-03 14:03:12 +02:00
Ivan Enderlin cc365215c8 feat(sdk): Introduce SlidingSyncListBuilder::once_built.
`on_built` is a method that registers a closure. This closure is called
when a list is built by `SlidingSyncListBuilder::build`. It receives
a `SlidingSyncList` and returns a `SlidingSyncList`, the list can be
updated or returned as is. It allows to configure a `SlidingSyncList`
right after it's built. `SlidingSyncBuilder::build` is responsible to
finalize the configuration, and to build all the lists. Once they are
built, the state is restored from the cache. If one wants to configure
a list before the state is restored from the cache, `once_built` will
serve well.
2023-05-03 13:42:27 +02:00
Kévin Commaille 581b4e02a1 sdk: Add timeline tests for aggregated edits, removing reply fallbacks and sanitizing HTML
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2023-05-03 13:18:36 +02:00
Kévin Commaille d6401e51c2 sdk: Move edit timeline unit tests to a separate module
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2023-05-03 13:18:36 +02:00
Kévin Commaille 4fa2c13d44 sdk: Sanitize timeline HTML input and remove reply fallbacks
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2023-05-03 13:18:36 +02:00
Kévin Commaille e8375a3770 sdk: Add constructor from m.room.message event for Message
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2023-05-03 13:18:36 +02:00
Stefan Ceriu 45cb5f0c2c Use a indermediary directory for attachment names that might cause conflicts 2023-05-03 13:00:56 +02:00
Stefan Ceriu 2d464cf2f7 fix(ffi): Generate correct temporary file names for media attachments 2023-05-03 13:00:56 +02:00
Alfonso Grillo 9f3e4e809c ffi: Expose power levels related APIs 2023-05-03 10:43:47 +00:00
Jonas Platte e6cdf4d753 Work around new rustfmt bug 2023-05-03 11:42:50 +02:00
Jonas Platte dddec7e7ee Revert "Add "opaque interface declarations""
This reverts commit 396e0a3567.
2023-05-03 11:42:50 +02:00
Jonas Platte 37be24ee19 sqlite: Fix compiler warnings 2023-05-03 11:42:50 +02:00
Jonas Platte e1db33e6fa Upgrade UniFFI 2023-05-03 11:42:50 +02:00
Mauro 2f413af0a8 ffi: Correct timestamp value and remove is_read flag
The timestamp value of the Notification was not reliable since it was the
timestamp in which it was generated internally, not the timestamp of when the
event was sent, now we instead expose the `origin_server_ts` of the
TimelineEvent.

`is_read` is also very unreliable, so it's just removed for now.
2023-05-02 15:00:05 +00:00
Benjamin Bouvier be41dcf300 Remove unused dependencies 2023-05-02 15:06:46 +02:00
Stefan Ceriu 17fd4dd5ca ffi: Support sending image attachments through the timeline 2023-05-02 14:54:01 +02:00
Jonas Platte 557d27a1a3 sdk: Add more convenient power level action checks to RoomMember 2023-05-02 12:59:28 +02:00
Damir Jelić 9e21678ce3 Merge pull request #1846 from matrix-org/release-matrix-sdk-crypto-js-v0.1.0-alpha.8
matrix-sdk-crypto-js v0.1.0-alpha.8
2023-05-02 12:52:06 +02:00
Damir Jelić b0ca52b203 Merge pull request #1839 from matrix-org/florianduros/tech/js-bindings-missing-dependencies-lockfile
JS Bindings: add typescript missing devDependencies and lockfile
2023-05-02 11:58:24 +02:00
Richard van der Hoff 584cd5963c Merge branch 'main' into rav/signing_keys_upload_response 2023-05-02 10:54:52 +01:00
Florian Duros 61312e53d8 Merge branch 'main' into release-matrix-sdk-crypto-js-v0.1.0-alpha.8
Release `crypto-js` / Publish 🕸 [m]-crypto-js (push) Failing after 42s
matrix-sdk-crypto-ffi-0.3.6 matrix-sdk-crypto-js-0.1.0-alpha.8
2023-05-02 11:43:07 +02:00