Commit Graph

14603 Commits

Author SHA1 Message Date
dependabot[bot]
617c646a52 chore(deps): bump actions/upload-artifact from 6 to 7
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-03 10:06:34 +01:00
dependabot[bot]
29b506f301 chore(deps): bump crate-ci/typos from 1.43.5 to 1.44.0
Bumps [crate-ci/typos](https://github.com/crate-ci/typos) from 1.43.5 to 1.44.0.
- [Release notes](https://github.com/crate-ci/typos/releases)
- [Changelog](https://github.com/crate-ci/typos/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crate-ci/typos/compare/v1.43.5...v1.44.0)

---
updated-dependencies:
- dependency-name: crate-ci/typos
  dependency-version: 1.44.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 17:28:52 +01:00
dependabot[bot]
cf84f2ff18 chore(deps): bump bnjbvr/cargo-machete
Bumps [bnjbvr/cargo-machete](https://github.com/bnjbvr/cargo-machete) from 3026399e8ccbe119a9624e9376afc8c5f21fb60f to 6456c7b34a8c1245e0c186ac50c56666ccbd44f1.
- [Release notes](https://github.com/bnjbvr/cargo-machete/releases)
- [Changelog](https://github.com/bnjbvr/cargo-machete/blob/main/CHANGELOG.md)
- [Commits](3026399e8c...6456c7b34a)

---
updated-dependencies:
- dependency-name: bnjbvr/cargo-machete
  dependency-version: 6456c7b34a8c1245e0c186ac50c56666ccbd44f1
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-02 16:28:27 +00:00
Johannes Marbach
949bdb5bb3 fix(latest_event): handle race between send queue update and remote echo (#6220)
There seems to be a race condition where the
`RoomSendQueueUpdate::SentEvent` update arrives after the remote echo
has already been processed which leads to the latest event value getting
stuck at `LocalHasBeenSent`. This fixes the issue by trying to retrieve
the event from the cache first.

- [x] I've documented the public API Changes in the appropriate
`CHANGELOG.md` files.
- [x] I've read [the `CONTRIBUTING.md`
file](https://github.com/matrix-org/matrix-rust-sdk/blob/main/CONTRIBUTING.md),
notably the sections about Pull requests, Commit message format, and AI
policy.
- [ ] This PR was made with the help of AI.

---------

Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
2026-03-02 15:20:17 +00:00
Valere Fedronic
cc8d6d8482 bindings: Support audio/video intent in rtc notification event content (#6207)
<!-- description of the changes in this PR -->

Updates ruma from
289bee8797
to
89dab44660
see
4250d65756

Depends on this ruma PR github.com/ruma/ruma/pull/2383

Support for reading the intent from the notification event
(m.call.intent in notification event as per
https://github.com/matrix-org/matrix-spec-proposals/pull/4075)

Parity with js-sdk implementation

bd6547c081/src/matrixrtc/types.ts (L150)

- [ ] I've documented the public API Changes in the appropriate
`CHANGELOG.md` files.
- [ ] I've read [the `CONTRIBUTING.md`
file](https://github.com/matrix-org/matrix-rust-sdk/blob/main/CONTRIBUTING.md),
notably the sections about Pull requests, Commit message format, and AI
policy.
- [ ] This PR was made with the help of AI.

<!-- Sign-off, if not part of the commits -->
<!-- See CONTRIBUTING.md if you don't know what this is -->
Signed-off-by:
2026-03-02 15:31:29 +01:00
Johannes Marbach
779d6a0925 fix(threads): include secondary relations when re-initializing a threaded timeline after a lag (#6209)
This is equivalent to what happens in `init_focus` when the timeline is
initialized from scratch.

Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
2026-03-02 15:07:24 +01:00
Benjamin Bouvier
1fdebd7d56 chore: remove the bullet point about reading the CONTRIBUTING.md file in the PR template
The PR template includes an item for a warning that is automatically
shown once (and once and for all) by the Github UI. In the previous
review of the changes to the pull request template, Ivan agreed that
this was redundant, so it seems there's no point in keeping it in the
pull request template itself.
2026-03-02 11:47:52 +01:00
Damir Jelić
39c0ee1f9b ci: Enable the MSRV check for all of our crates 2026-02-27 17:40:08 +01:00
Damir Jelić
1542a5b79e chore: Fix some new clippy warnings 2026-02-27 17:40:08 +01:00
Damir Jelić
ae53b62762 chore: Bump the MSRV 2026-02-27 17:40:08 +01:00
Damir Jelić
4576013878 fix(ffi): Enable rustls by default
It's important to have one of those enabled so a simple cargo check on
the crate works.
2026-02-27 17:40:08 +01:00
Damir Jelić
73028a834e chore: Define the MSRV in all of our private crates 2026-02-27 17:40:08 +01:00
Damir Jelić
8c4f5c60b7 fix(ffi-macros): Fix compilation in case we only build this single crate 2026-02-27 17:40:08 +01:00
Ivan Enderlin
aaeab050da chore(sdk): Extract EventCache::auto_shrink_linked_chunk_task to tasks.rs. 2026-02-27 16:34:28 +01:00
Ivan Enderlin
6b120505b8 chore(sdk): Extract EventCache::ignore_user_list_update_task to tasks.rs. 2026-02-27 16:34:28 +01:00
Ivan Enderlin
a791243202 chore(sdk): Extract EventCache::listen_task to tasks.rs.
This patch also renames `listen_task` to `room_updates_task`.
2026-02-27 16:34:28 +01:00
Ivan Enderlin
c5b7dbd0c0 chore(sdk): Extract EventCache::search_indexing_task into tasks.rs. 2026-02-27 16:34:28 +01:00
Ivan Enderlin
16e09dfefa chore(sdk): Extract EventCache::thread_subscriber_task into tasks.rs. 2026-02-27 16:34:28 +01:00
Kévin Commaille
2d13a682a2 refactor(sdk): Remove methods on OAuth API for account management URL
Instead encourage users to use the ones available on
`AuthorizationServerMetadata` because they support both the stable and
unstable actions.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2026-02-27 15:17:03 +01:00
Kévin Commaille
c50bab4847 Upgrade Ruma
Brings in a few bug fixes

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2026-02-27 15:17:03 +01:00
Ivan Enderlin
768ded4b90 doc(sdk): Fix intra-links. 2026-02-27 12:49:31 +01:00
Ivan Enderlin
19ffa2fe0e chore(sdk): Inline RoomEventCacheStateLockWriteGuard::handle_backpagination.
The method `RoomEventCacheStateLockWriteGuard::handle_backpagination`
is used in a single place. This patch inlines it in…
`RoomEventCachePagination`, where it's supposed to be
declared! More precisely, inside the `PaginatedCache`
implementation for the `RoomEventCachePagination`, in the
`conclude_backwards_pagination_from_network`. The `state` module is
lighter with this change, and the code lives in the correct place.

This patch also renames `EventLinkedChunk::finish_back_pagination` to
`push_backwards_pagination_events`. The naming follows other names, like
`push_live_events`. Moreover, it removes the entire concept of “this
is part of a flow of methods”, it's just a single standalone method. On
this `EventLinkedChunk` alone, it is absolutely stateless.

This patch is purely code move, nothing changes.
2026-02-27 12:49:31 +01:00
Ivan Enderlin
3a57b547da chore(sdk): Add the RoomEventCacheUpdateSender type.
This patch creates the new `RoomEventCacheUpdateSender` type to group
both the room update sender, and the room generic update sender. It
simplifies a couple of constructor and makes the code more robust by
isolating this logic in a single type instead of two types.
2026-02-27 12:49:31 +01:00
Ivan Enderlin
c3e238d2d6 chore(sdk): Make more fields of RoomEventCacheInner private. 2026-02-27 12:49:31 +01:00
Ivan Enderlin
c257525b5a chore(sdk): Make RoomEventCacheInner private. 2026-02-27 12:49:31 +01:00
Ivan Enderlin
909dbd7b78 chore(sdk): Extract RoomEventCacheUpdate into caches/room/update.rs. 2026-02-27 12:49:31 +01:00
Ivan Enderlin
6c9892ee84 chore(sdk): Extract RoomEvetCacheLinkedChunkUpdate into caches/room/updates.rs. 2026-02-27 12:49:31 +01:00
Ivan Enderlin
fe4381d38c chore(sdk): Extract RoomEventCacheGenericUpdate into caches/room/updates.rs. 2026-02-27 12:49:31 +01:00
Ivan Enderlin
ea41e03ca3 chore(sdk): Add RoomEventCache::send_updates.
Firstly, the idea is to avoid accessing `RoomEventCache::inner`. Second,
by having a `send_updates` method, we increase the chances to forget
about one update (like `RoomEventcacheGenericUpdate` as it was the case
in the past).
2026-02-27 12:49:31 +01:00
Ivan Enderlin
9fb54074ee chore(sdk): Add RoomEventCache::state.
This patch adds `RoomEventCache::state` to replace all the `inner.state`
accesses. The idea is to make `inner` private.
2026-02-27 12:49:31 +01:00
Ivan Enderlin
597f66f71a chore(sdk): Use RoomEventCache::room_id().
This patch avoids calling `RoomEventCache::inner`.
2026-02-27 12:49:31 +01:00
Ivan Enderlin
44c71eea1b chore(sdk): Restrict the visiblity for handle_(joined|left)_room_update. 2026-02-27 12:49:31 +01:00
Ivan Enderlin
d291be4235 chore(sdk): Move handle_joined_room_update from RoomEventCacheInner to RoomEventCache.
The idea of this patch is to make `RoomEventCache::inner` private. This
is required to achieve that goal.
2026-02-27 12:49:31 +01:00
Ivan Enderlin
1342daf381 chore(sdk): Move handle_left_room_update from RoomEventCacheInner to RoomEventCache.
The idea of this patch is to make `RoomEventCache::inner` private. This
is required to achieve that goal.
2026-02-27 12:49:31 +01:00
Ivan Enderlin
07f9e998e9 doc(sdk): Add missing, or fix existing documentation. 2026-02-27 12:49:31 +01:00
Ivan Enderlin
a9f946d365 chore(sdk): Fix the visibility of several symbols.
This patch simplifies a lot of `pub(in super::…)` to just `pub`. The
visibility is now defined by the type itself, onto which the methods
are implemented.
2026-02-27 12:49:31 +01:00
Ivan Enderlin
248b65d2d5 chore(sdk): Extract RoomEventCacheState into caches/room/state.rs. 2026-02-27 12:49:31 +01:00
Ivan Enderlin
500a637bc4 chore(sdk): Extract RoomEventCacheSubscriber to its own subscriber module.
Purely code move, except the addition of `RoomEventCacheSubscriber::new`
to keep data isolated.
2026-02-27 12:49:31 +01:00
Hugh Nimmo-Smith
7da0d903e5 refactor: remove QRCodeGrantLoginError::UnableToCreateDevice and HumanQrGrantLoginError::UnableToCreateDevice 2026-02-27 11:40:27 +01:00
Hugh Nimmo-Smith
3cf4faec83 feat(ffi): additional HumanQrGrantLoginError enum values 2026-02-27 11:40:27 +01:00
Hugh Nimmo-Smith
2cfd53e64d feat(qr-login): additional QRCodeGrantLoginError enum values 2026-02-27 11:40:27 +01:00
Ivan Enderlin
bbdfe7b38f chore(sdk): Move RoomEventCache in caches/room/mod.rs. 2026-02-26 11:39:40 +01:00
Ivan Enderlin
b4977bbe5d chore(sdk): Move EventLinkedChunk in caches/event_linked_chunk.rs. 2026-02-26 11:39:40 +01:00
Ivan Enderlin
4bc4263e1c chore(sdk): Move ThreadEventCache in caches/thread/mod.rs. 2026-02-26 11:39:40 +01:00
Ivan Enderlin
ef734e0876 chore(sdk): Move PinnedEvents in caches/pinned_events/mod.rs. 2026-02-26 11:39:40 +01:00
Damir Jelić
a2881d5aca ci: Update our benchmarks workflow
This switches to OICD for authentication as recommended by the docs:
    https://codspeed.io/docs/integrations/ci/github-actions/configuration#oidc-recommended

Also switch to simulation mode as the instrumentation mode got renamed to
it.
2026-02-26 11:03:27 +01:00
Richard van der Hoff
a90cf28d3c Merge pull request #6199 from matrix-org/rav/history_sharing/invite_details_in_crypto_store
Move `invite_acceptance_details` out of `RoomInfo` and into crypto store
2026-02-25 15:16:51 +00:00
Ivan Enderlin
aa11e9f062 fix(xtask): Fix a broken gap in the fields grid of overview. 2026-02-25 16:03:57 +01:00
Ivan Enderlin
4d9268d104 fix(xtask): Fix an infinite loop when parsing the fields of a span.
The error was coming from the subslice from `message` instead of
`fields`.

This patch also fixes an HTML error (`</li>` right after `<ul>`).
2026-02-25 16:03:57 +01:00
Benoit Marty
b7b96d49c5 fix(ui): Check if an Event is redacted before trying to decrypt it. (#6203)
Check if an Event is redacted before trying to decrypt it.

Use a new enum `NotificationStatus.EventRedacted` when trying to resolve
an event for a notification.

PR done with the help of AI: GitHub copilot chat in VisualStudio.

I confirm that the fix is working in EXA with the code in
https://github.com/element-hq/element-x-android/pull/6241

Fixes #5796

<!-- description of the changes in this PR -->

- [x] I've documented the public API Changes in the appropriate
`CHANGELOG.md` files.
- [x] I've read [the `CONTRIBUTING.md`
file](https://github.com/matrix-org/matrix-rust-sdk/blob/main/CONTRIBUTING.md),
notably the sections about Pull requests, Commit message format, and AI
policy.
- [x] This PR was made with the help of AI.

<!-- Sign-off, if not part of the commits -->
<!-- See CONTRIBUTING.md if you don't know what this is -->
Signed-off-by: benoitm@element.io
2026-02-25 15:02:13 +00:00