Commit Graph

14300 Commits

Author SHA1 Message Date
Yousef Moazzam 491f81c376 test: remove unnecessary image info field values 2025-06-03 13:19:34 +02:00
Yousef Moazzam 703c01004c test: remove unnecessary server timestamp field on sticker event 2025-06-03 13:19:34 +02:00
Yousef Moazzam b1d34763d4 test: create timeline event with EventBuilder method 2025-06-03 13:19:34 +02:00
Yousef Moazzam c4aa200f19 test: create sticker event with EventFactory 2025-06-03 13:19:34 +02:00
Yousef Moazzam a099879563 test: add reply thread relation method to sticker event builder 2025-06-03 13:19:34 +02:00
Yousef Moazzam b6569762db test: add sticker event method to EventFactory 2025-06-03 13:19:34 +02:00
Jorge Martín edabb2362b refactor: revert some method removals in SendRequest 2025-06-03 12:59:00 +02:00
Jorge Martín 8a5d4f0d82 test: Increase delay to fix code coverage failure 2025-06-03 12:59:00 +02:00
Jorge Martín 12aed8dc67 test: fix tests after adding the media config check 2025-06-03 12:59:00 +02:00
Jorge Martín 7d03d4ce0d feat(ffi): Add Client::get_max_media_upload_size function
This allows the clients to know the max upload size for a media file and try to compress if it's too large for the homeserver.
2025-06-03 12:59:00 +02:00
Jorge Martín 2680dc65fd fix(sdk): check max_upload_size before attempting to upload any media 2025-06-03 12:59:00 +02:00
Richard van der Hoff a1e2eed467 sdk: Add ClientBuilder::with_enable_share_history_on_invite (#5141)
Replace `experimental-share-history-on-invite` feature flag with a
runtime flag on the `Client`.
2025-06-03 11:36:48 +01:00
Benjamin Bouvier 5600ce7a77 fix(event cache): after adding a thread summary in memory, also save the result in the store 2025-06-03 12:22:21 +02:00
Benjamin Bouvier f28a2b1cc3 fix(event cache): after redacting an in-memory event, also save the result in the store 2025-06-03 12:22:21 +02:00
Benjamin Bouvier 1a07ec22b8 test(event cache): move tests which require the cross process lock under a different test mod
This avoids a few `use` statements within the test functions themselves,
and helps finding out which tests are integration tests.
2025-06-03 12:22:21 +02:00
dependabot[bot] 7b8671d82c chore(deps): bump tj-actions/changed-files
Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from c6634ca281a9fc05b03bee224ba00910cb78ab6e to 115870536a85eaf050e369291c7895748ff12aea.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/c6634ca281a9fc05b03bee224ba00910cb78ab6e...115870536a85eaf050e369291c7895748ff12aea)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-version: 115870536a85eaf050e369291c7895748ff12aea
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-06-03 11:17:12 +02:00
Daniel Salinas 0f877a3e80 feat(wasm): Replace async_trait with wasm aware cfg conditional 2025-06-02 23:07:05 +02:00
Daniel Salinas c6e55c1a36 Mechanical move from target_arch="wasm32" to target_family="wasm" 2025-06-02 17:27:34 +02:00
Benjamin Bouvier 40648f6998 chore: formatting, clippy and review comments 2025-06-02 16:24:25 +02:00
Benjamin Bouvier 58b46813d6 feat(event cache): when we see a thread reply, add a thread summary to the thread root 2025-06-02 16:24:25 +02:00
Benjamin Bouvier f2a90cb921 test: use helpers to create a bundled edit and thread summary 2025-06-02 16:24:25 +02:00
Benjamin Bouvier efda26ef6f feat(timeline): forward the TimelineEvent::thread_summary to timeline items
Right now, we're not passing the latest event yet, but we could improve
that later!
2025-06-02 16:24:25 +02:00
Benjamin Bouvier 433209ca9b feat(common): always extract a bundled thread summary when creating or deserializing a timeline event 2025-06-02 16:24:25 +02:00
Benjamin Bouvier 1680891982 feat(common): add helper to extract a bundled thread summary 2025-06-02 16:24:25 +02:00
Benjamin Bouvier 3c965ed56e feat(common): add a ThreadSummary field to TimelineEvent
It can be either known to be there or not there, or in an unknown state,
hence a tiny enum making this very explicit.
2025-06-02 16:24:25 +02:00
Benjamin Bouvier 0bb2c44254 feat(common): don't serialize push actions if there's none
If the vec of actions is defined (Some) but empty, then it means we
could determine there are no push actions. It is a slight optimization
to not serialize them, in this case; otherwise, this can result in many
serialized empty action vector, in the event cache's persistent storage.
2025-06-02 16:24:25 +02:00
Benjamin Bouvier 23cdcaf5c8 feat(common): add helpers to extract only the thread root from a raw event 2025-06-02 16:24:25 +02:00
Benjamin Bouvier ebc7396334 refactor(sdk): remove unused TimelineEvent ctor
It was intended for test purposes, but it seems it's unused, so let's
get rid of it.
2025-06-02 16:24:25 +02:00
Benjamin Bouvier c7234b6f13 doc: make the self type clearer in doc comment of TimelineEvent 2025-06-02 16:24:25 +02:00
Richard van der Hoff 56be9dec59 multiverse: expand user names when inviting (#5146)
When the user does an `/invite`, if the target user doesn't start with
an `@`, try expanding it as a user on the local server.

This makes it much easier when repeatedly testing inviting!
2025-06-02 14:41:20 +01:00
Richard van der Hoff 2fa6a98052 multiverse: write logs to session dir (#5145)
Rather than always writing the logs to `/tmp`, write them to the session
directory. The session directory defaults to `/tmp` so by default this
will do the same as before, but if you override the session path on the
commandline, the logs will get stored alongside the stores and caches.

This is particularly useful when running two instances of multiverse,
and you want them to put their logs in different places.
2025-06-02 14:41:11 +01:00
Yousef Moazzam f03407fdb9 test: remove unnecessary server timestamp fields on events 2025-06-02 14:59:23 +02:00
Yousef Moazzam fd4fd3c4f9 test: add timeline events in bulk to room builder 2025-06-02 14:59:23 +02:00
Yousef Moazzam a9513e6f73 test: remove import of unused sync_timeline_event! macro in timeline subscribe test module 2025-06-02 14:59:23 +02:00
Yousef Moazzam 5f0bcef5ce test: create events with EventFactory in profile updates test 2025-06-02 14:59:23 +02:00
Yousef Moazzam 96049f41a5 test: create events with EventFactory in event filter test 2025-06-02 14:59:23 +02:00
Daniel Salinas ba8998623e Fix annotations on comments for new StreamExt
Hook up use of new extension in matrix-sdk-ffi crate
2025-06-02 12:26:52 +02:00
Daniel Salinas d6bf3019f9 StreamExt that supports wasm platforms
The .boxed() method requires a Send trait that makes it
unusable on Wasm platforms. This re-exports the existing StreamExt,
while providing a new extension for the wasm family of targets.
2025-06-02 12:26:52 +02:00
Damir Jelić ef037631a1 refactor(crypto): Simplify the checking of device keys when decrypting Olm events 2025-05-30 15:45:27 +02:00
Damir Jelić 42ade32bea feat(sdk): Fallback to the device keys in the Olm event for room key bundles
This makes it possible to correctly accept a historic room key bundle if
we previously didn't know about the device of the sender of the bundle.
2025-05-30 15:45:27 +02:00
Damir Jelić 37d7e26929 feat(sdk): Ensure that we have all the devices of a user we invite
This makes it possible to correctly share a historic room key bundle with the
invited user without sharing another room with the user.
2025-05-30 15:45:27 +02:00
Robin e51dceb399 refactor(widget): Improve wording of ApiVersion docs 2025-05-30 15:32:35 +02:00
Robin cee0129225 feat(widget): Distinguish room state and timeline events
This is an implementation of an update to MSC2762 (https://github.com/matrix-org/matrix-spec-proposals/pull/4237). It changes the widget driver to split state updates out into an `update_state` action and use the `send_event` action exclusively for forwarding timeline events. Accordingly, `read_events` now always reads from /messages, never the state store.
2025-05-30 15:32:35 +02:00
Robin ef36665d7d doc(widget): Note that capability renegotiation is unimplemented 2025-05-30 15:32:35 +02:00
Robin e45e357841 refactor(widget): Extract method for processing requested capabilities 2025-05-30 15:32:35 +02:00
Robin 6657501ef4 refactor(widget): Extract method for acquire capabilities response 2025-05-30 15:32:35 +02:00
Robin 69e8f1e86c refactor(widget): Extract method for message-like event reading response 2025-05-30 15:32:35 +02:00
Robin e613fc269f refactor(widget): Remove 'Matrix' from some identifiers
Just making these a bit less verbose and more consistent with surrounding identifiers.
2025-05-30 15:32:35 +02:00
Robin 5c7566c6c9 refactor(widget): Allow state events to be converted to filter inputs
So that when I need to do this (in later commits) I don't have to cast.
2025-05-30 15:32:35 +02:00
Robin aba0adf18d refactor(tests): Move some JSON into static items
I want to use this JSON in multiple tests.
2025-05-30 15:32:35 +02:00