Valere
0aef2559bd
review: Remove unneeded msc4310 feature (consistent with msc4075)
2025-09-06 11:15:49 +02:00
Valere
8606ac3dfb
fix typo
2025-09-06 11:15:49 +02:00
Valere
db5503e30e
tests: add decline call tests
2025-09-06 11:15:49 +02:00
Valere
c51b4f03a2
misc: clippy fixes
2025-09-06 11:15:49 +02:00
Valere
0fc0a5514d
guard test behing feature flag
2025-09-06 11:15:49 +02:00
Valere
e83af1aae2
tests: subscribe_to_call_decline_events
2025-09-06 11:15:49 +02:00
Jorge Martín
6765ca0c39
refactor(sdk): Make Client::server_vendor_info accept an optional request config
2025-09-03 13:18:14 +02:00
Benjamin Bouvier
e89ac3d7df
tests: add some sliding sync tests for thread subscriptions and catchup
2025-09-02 14:57:49 +02:00
Benjamin Bouvier
a3704c3563
tests: rearrange some imports ni the sdk/tests/integration/client file
2025-09-02 14:57:49 +02:00
Shrey Patel
68f6d927f1
test(search): Add tests for edits in search index.
2025-09-02 12:25:53 +02:00
Shrey Patel
c3766789cc
feat(search): add edits to search index.
2025-09-02 12:25:53 +02:00
Benjamin Bouvier
8c0a918e6e
refactor(sdk): introduce a lightweight ThreadSubscription for external consumers, and rename previous one to StoredThreadSubscription
...
External consumers are likely not interested about unsubscriptions and
the bump stamp values themselves, so let's not expose these to them.
2025-09-01 10:38:34 +02:00
Benjamin Bouvier
33c317e6d2
refactor(sdk): put the subscription status + bumpstamp back into the stored thread subscription
2025-09-01 10:38:34 +02:00
Benjamin Bouvier
3ba31d1e97
tests: clarify that the other thread subscription endpoints are grouped by room
2025-08-29 11:28:29 +02:00
Benjamin Bouvier
bbf8f9f900
feat(sdk): add support for msc4308 accompanying endpoint (fetching thread subscriptions)
2025-08-29 11:28:29 +02:00
Benjamin Bouvier
49dc2bb640
chore: bump Ruma
...
We get test fixes for free, thanks to the new push rules semantics
implemented in Ruma \o/
2025-08-29 11:28:29 +02:00
Stefan Ceriu
763314645b
feat(sdk): add a Client::joined_space_rooms method that allows retrieving the list of joined spaces.
2025-08-28 09:28:04 +02:00
Skye Elliot
8e5075569e
feat: Add top-level support for decrypting state events ( #5552 )
...
Implements support for decryption of state events
- [ ] Introduce a case for `AnySyncStateEvent::RoomEncrypted` to the
`state_events` sync response processor.
- [ ] Introduce modified `Room::decrypt_event` and
`::try_decrypt_room_event`.
- [ ] Introduce testing macro
`assert_let_decrypted_state_event_content`.
- [ ] Add casts and explicit type hints where necessary.
---------
Signed-off-by: Skye Elliot <actuallyori@gmail.com >
2025-08-27 10:53:55 +01:00
Benjamin Bouvier
f4ce4356ab
refactor(event cache): only process threaded linked chunks if thread support has been globally enabled
2025-08-26 16:25:56 +02:00
Benjamin Bouvier
40d3dd57db
tests(threads): add an exhaustive test to check for all notification mode combinations
2025-08-25 10:09:55 +02:00
Skye Elliot
13b86a3f5d
tests: Add test_room_encrypted_state_event_send
2025-08-22 14:27:05 +01:00
Benjamin Bouvier
25a81876a0
tests: allow conversion from EventBuilder into Raw<AnyGlobalAccountDataEvent>
...
This avoids a few explicit `.into_raw()` calls here and there.
2025-08-21 15:21:14 +02:00
Benjamin Bouvier
e388fe6522
tests: streamline the SyncResponseBuilder global account methods
...
Only keep two: the one that uses the output of the event factory, and
one using custom JSON data.
2025-08-21 15:21:14 +02:00
Benjamin Bouvier
ef20342ddf
tests: use the new global account data methods a bit more
2025-08-21 15:21:14 +02:00
Benjamin Bouvier
e6b1ffba99
tests: add support for the global account PushRules event in the event factory
2025-08-21 15:21:14 +02:00
Benjamin Bouvier
1866143456
tests: add support for the global account Direct event in the event factory
2025-08-21 15:21:14 +02:00
Skye Elliot
7adaf7be73
feat(sdk): Rename state encryption methods for improved clarity
...
Changes `Room::enable_encryption_with_state` to
`Room::enable_encryption_with_encrypted_state_events`, and updates the
respective unit test and testing utilities.
Signed-off-by: Skye Elliot <actuallyori@gmail.com >
2025-08-20 12:28:03 +02:00
Skye Elliot
b73163aa45
feat(sdk): Add Room::enable_encryption_with_state
...
Signed-off-by: Skye Elliot <actuallyori@gmail.com >
2025-08-20 12:28:03 +02:00
Benjamin Bouvier
c019009d00
refactor(event cache): avoid deserializing the full event content to be sent, for extracting its thread root
2025-08-18 15:10:50 +02:00
Benjamin Bouvier
a88d6b37dc
feat(event cache): also subscribe to a thread if we've sent a message into it
2025-08-18 15:10:50 +02:00
Benjamin Bouvier
64eecd0aee
test(event cache): add tests for automatic thread subscriptions
2025-08-18 15:10:50 +02:00
Benjamin Bouvier
1554c9d8fa
feat(room): add a new function that will only subscribe to a thread if needed
2025-08-18 15:10:50 +02:00
dragonfly1033
13c30f6691
feat(sdk): Add creation of indexes and indexing of messages ( #5505 )
...
Integrate matrix-sdk-search into matrix-sdk.
When a room is joined, a corresponding index is created.
When a message is received via sync or via a back-pagination, it is
added to the corresponding room's index.
Signed-off-by: Shrey Patel shreyp@element.io
2025-08-18 14:52:09 +02:00
dragonfly1033
1201be484a
fix!(sdk): Client::sync_once defaults to reuse previous token
...
Introduces a new `SyncToken` enum for the `SyncSettings::token` field.
The enum has 3 variants: ReusePrevious (default), NoToken, Specific(String).
Some tests were changed to use the old default (NoToken).
2025-08-14 12:14:06 +02:00
multisme
a66b2c5123
feat(test): add a test utils crate to make log initialization possible everywhere
...
This PR allows `init_tracing_for_test` to be called by any other crate in the sdk
Signed-off-by: multi [multiestunhappydev@gmail.com ](mailto:multiestunhappydev@gmail.com )
2025-08-14 05:24:03 +00:00
Copilot
69bef9a76a
feat(sdk,ffi): Add server_vendor_info method to matrix-sdk with automatic logging in FFI
...
Add a new `server_vendor_info` method on the `matrix-sdk` `Client` that calls the `/_matrix/federation/v1/version` endpoint to retrieve the server's software name and version information.
Also add it to the bindings + log it when initializing the logs.
2025-08-14 05:14:25 +00:00
Kévin Commaille
1eb8f6ac16
Fix shared history test
...
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr >
2025-08-12 17:25:22 +03:00
Jonas Platte
42d2b93489
refactor: Introduce TestResult and use it in a couple random places
2025-08-06 22:21:39 +00:00
Benjamin Bouvier
5719fde701
feat(client): add a global toggle for enabling thread subscriptions support
2025-08-06 15:28:43 +02:00
Benjamin Bouvier
2914d7a727
feat(threads): provide has_thread_subscription_fn to push condition context
2025-08-06 15:28:43 +02:00
Benjamin Bouvier
0cdec9d912
refactor(threads): flatten the ThreadStatus enum
2025-08-06 15:28:43 +02:00
Benjamin Bouvier
d180d49c07
refactor(threads): do not store the unsubscribed state in the DB
2025-08-06 15:28:43 +02:00
Benjamin Bouvier
ebb7059d55
refactor(threads): adapt to Ruma API changes for thread subscriptions
2025-08-06 15:28:43 +02:00
Kévin Commaille
056e90db25
feat(sdk): Use state_after in sync v2 ( #5488 )
...
It is supposed to be an improvement over `state`, since it allows the
server to send updates to the state that might not be reflected in the
timeline.
This is also the same behavior as in Simplified Sliding Sync.
This is MSC4222 that was accepted and is about to get merged in the
spec.
---------
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr >
2025-08-06 13:42:49 +01:00
Hubert Chathi
a4da6ba7c8
Exclude insecure devices on Olm encryption ( #5457 )
...
Fixes the encrypting part of
https://github.com/matrix-org/matrix-rust-sdk/issues/4147
Probably easiest to review commit-by-commit
<!-- description of the changes in this PR -->
- [x] Public API changes documented in changelogs (optional)
<!-- Sign-off, if not part of the commits -->
<!-- See CONTRIBUTING.md if you don't know what this is -->
Signed-off-by:
2025-08-04 08:50:32 +01:00
Benjamin Bouvier
6d95abfb36
refactor(send queue): move the AbstractProgress to the new progress module
2025-07-31 13:04:28 +02:00
Benjamin Bouvier
8c01e99144
refactor(send queue): misc improvements to media upload progress reporting
...
Notable changes: don't send a global update whenever a media upload
progress happened, since this doesn't really matter for global
listeners.
2025-07-31 13:04:28 +02:00
Johannes Marbach
fc7124fd1a
feat(send_queue): communicate media upload progress in RoomSendQueueUpdate::MediaUpload
...
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org >
2025-07-31 11:16:48 +02:00
Johannes Marbach
30c0420f83
chore(send_queue): rename RoomSendQueueUpdate::UploadedMedia to MediaUpload to prepare it for communicating upload progress
...
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org >
2025-07-31 11:16:48 +02:00
Benjamin Bouvier
d57d3c4124
feat(sdk): save the unsubscribed status in the store, and use it to return something more precise than unknown when fetching a subscription
2025-07-30 12:07:07 +02:00