Commit Graph

  • 3773968d19 fix(timeline): remove events when back-paginating too Benjamin Bouvier 2025-03-04 14:34:42 +01:00
  • d28d4ce799 test(timeline): add a regression test for the incorrect timeline ordering Kévin Commaille 2025-03-04 14:20:27 +01:00
  • bffb19b23a refactor!(sdk): bump the MSRV, yay for async closures 🥳 Benjamin Bouvier 2025-03-04 17:54:02 +01:00
  • 6aea4c827a feat(ffi): allow setting the media retention policy from the FFI layer Benjamin Bouvier 2025-03-03 16:21:49 +01:00
  • ac3250c58b refactor(event cache): use u64 instead of usize in MediaCachePolicy Benjamin Bouvier 2025-03-03 16:21:25 +01:00
  • 6fe0880e11 feat(ffi): add a method to clear all the non-critical caches of a client Benjamin Bouvier 2025-03-03 16:06:56 +01:00
  • 78282bf1e1 chore(sdk-base): fix typos following typos crate bump to 1.30.0 Stefan Ceriu 2025-03-03 17:17:14 +02:00
  • 43d25127c3 chore(deps): bump crate-ci/typos from 1.29.7 to 1.30.0 dependabot[bot] 2025-03-03 14:17:58 +00:00
  • c33c61a256 feat(ci): Implement CI to detect long path in pushed commit bitfriend 2025-02-06 10:37:33 -06:00
  • def4be5a9f refactor(event cache): make use of Chunk::num_items when deciding whether to drop a previous empty event chunk Benjamin Bouvier 2025-03-03 14:56:18 +01:00
  • 9bc0d8b0d9 refactor(event cache): rename Chunk::len to Chunk::num_items Benjamin Bouvier 2025-03-03 14:54:42 +01:00
  • 0924b2e343 refactor(event cache): get rid of EmptyChunkRule::Keep which is only used in testing Benjamin Bouvier 2025-02-27 18:52:02 +01:00
  • 8b6e75980b refactor(event cache): don't keep an empty events chunk before a gap Benjamin Bouvier 2025-02-27 18:45:58 +01:00
  • 5fd0cb0ddb chore(deps): bump bnjbvr/cargo-machete from 0.7.1 to 0.8.0 dependabot[bot] 2025-03-03 14:18:02 +00:00
  • b5edc86a52 refactor(event cache): rename clear to clear_pending Benjamin Bouvier 2025-03-03 14:37:24 +01:00
  • d09655989d feat(event cache): don't include useless updates when clearing/resetting a linked chunk Benjamin Bouvier 2025-02-24 17:15:39 +01:00
  • 83415ac6ca refactor(event cache): clear all pending updates when resetting/shrinking a linked chunk Benjamin Bouvier 2025-02-24 17:01:35 +01:00
  • cc7fb63c6d refactor(sdk): Remove clone_request method Kévin Commaille 2025-03-03 03:32:21 +01:00
  • f5195222a7 refactor(ffi): move the TimelineEventTypeFilter to timeline/configuration Benjamin Bouvier 2025-02-27 19:16:49 +01:00
  • cecf15a34a refactor(ffi): unify a bit more Room::timeline_with_configuration and RoomListItem::init_timeline Benjamin Bouvier 2025-02-27 19:09:55 +01:00
  • 95b53d7e01 chore: Tweak the weekly-report command to include PR numbers Damir Jelić 2025-02-18 15:13:07 +01:00
  • 8cd70854ba refactor(crypto): Keep a long-lived DecryptionRetryTask in TimelineController Andy Balaam 2025-02-25 15:08:52 +00:00
  • dbaa36ec3e refactor(timeline): Share should_retry logic between the two places we use it Andy Balaam 2025-02-25 13:50:25 +00:00
  • 8976233905 refactor(timeline): Move the code to find which events to redecrypt into the async task Andy Balaam 2025-02-25 13:45:22 +00:00
  • 82d47d800c refactor(timeline): Pass requests to retry decryption through a channel, instead of spawning a task directly Andy Balaam 2025-02-25 13:29:31 +00:00
  • e84ad97edf refactor(timeline): Adjust tests that retry decryption to wait with timeouts Andy Balaam 2025-02-25 12:54:36 +00:00
  • d447342cbd refactor(timeline): Split finding retry indices into its own function Andy Balaam 2025-02-24 16:13:56 +00:00
  • c74ecff3f0 refactor(timeline): Move finding retry indices into DecryptionRetryTask Andy Balaam 2025-02-24 16:08:46 +00:00
  • a0282ec71b refactor(timeline): Move the decryption retrying into a separate struct Andy Balaam 2025-02-24 16:00:46 +00:00
  • a67f9d5bbf chore(sdk): Log all updates. Ivan Enderlin 2025-02-28 11:53:06 +01:00
  • f7297edd61 refactor(event cache): get rid of get_or_wait_for_token Benjamin Bouvier 2025-02-27 16:51:00 +01:00
  • 87a6037924 refactor(event cache): consolidate logic around returning the previous gap token Benjamin Bouvier 2025-02-27 15:17:14 +01:00
  • ee710e34dd test(event cache): turn test into failing regression test Benjamin Bouvier 2025-02-27 16:24:35 +01:00
  • 55143e1790 refactor(event cache): call /messages directly in the room pagination Benjamin Bouvier 2025-02-27 14:04:36 +01:00
  • 7a0bf9b9b9 chore(sdk): Don't repeat a log line about the list of users for a /keys/query Damir Jelić 2025-02-27 15:49:44 +01:00
  • b422b93c78 chore(crypto): Lower a very noisy log line Damir Jelić 2025-02-27 15:39:18 +01:00
  • 4742aa298a fix(event cache): wait for the initial previous-batch token, if there wasn't any Benjamin Bouvier 2025-02-26 13:27:51 +01:00
  • f9f389d9ec chore(event cache): remove unused errors Benjamin Bouvier 2025-02-26 15:34:00 +01:00
  • 7dba05f4c5 feat(sdk): Add Room::report_room Hanadi 2025-02-26 18:55:57 +03:00
  • f02a7d15ab test(sdk): Run integration tests for experimental-oidc feature too Kévin Commaille 2025-02-26 15:46:16 +01:00
  • 54ab46dcb4 test(oidc): Use MatrixMockServer for cross-signing test Kévin Commaille 2025-02-26 13:13:48 +01:00
  • 9b406cff87 test(oidc): Use mock server and client as much as possible Kévin Commaille 2025-02-25 12:40:11 +01:00
  • 5791ac9b76 test(oidc): Add an OauthMockServer and use it for qrcode login tests Kévin Commaille 2025-02-24 17:03:30 +01:00
  • 6026b0c4b7 test(oidc): Use MatrixMockServer for qrcode login tests Kévin Commaille 2025-02-24 15:55:23 +01:00
  • 52909b0eeb test(oidc): Simplify qrcode login tests Kévin Commaille 2025-02-24 15:51:30 +01:00
  • 1feb77bbef doc(event cache): tweak paginate_backwards_with_network doc comment Benjamin Bouvier 2025-02-26 12:17:37 +01:00
  • 2e1b051a4d refactor(event cache): split handling a successful network pagination into its own function Benjamin Bouvier 2025-02-26 12:16:11 +01:00
  • 15fd892b63 chore(event cache): remove the sync_ prefix from timeline_events_diff Benjamin Bouvier 2025-02-26 12:08:15 +01:00
  • 4833403d65 refactor(event cache): simplify signature of RoomEventCacheState::with_events_mut Benjamin Bouvier 2025-02-26 12:05:01 +01:00
  • 061a2f739a refactor(event cache): handle pagination status in a single location Benjamin Bouvier 2025-02-26 12:02:02 +01:00
  • 86b5cb4dba refactor(event cache): split disk and network paginations into smaller functions Benjamin Bouvier 2025-02-26 11:49:21 +01:00
  • 74bc3dfb6e refactor(event cache): don't hold onto a live instance of the paginator in RoomEventCache Benjamin Bouvier 2025-02-26 10:42:42 +01:00
  • 7841ed8637 refactor(event cache): remove RoomPagination::hit_timeline_end() Benjamin Bouvier 2025-02-26 10:51:59 +01:00
  • 19df945155 fix(ffi): Correctly indicate OIDC support when fetching metadata fails. matrix-sdk-ffi/20250225 Doug 2025-02-25 17:04:05 +00:00
  • 3e3bff76de fixup! feat(crypto): Add support for the shared_history flag defined in MSC3061 Damir Jelić 2025-02-25 16:35:07 +01:00
  • ea073f55f0 doc(crypto): Document all the arguments of the InboundGroupSession::new method Damir Jelić 2025-02-25 16:14:45 +01:00
  • c1e28aa156 test(crypto): Add a snapshot test for the inbound group session pickle Damir Jelić 2025-02-20 12:20:55 +01:00
  • af62f09e37 test(crypto): Test that the shared history flag gets set when we ourselves crate a session Damir Jelić 2025-02-20 14:10:14 +01:00
  • 9a33385697 test(crypto): Test that the shared history flag gets set when creating sessions Damir Jelić 2025-02-20 13:43:12 +01:00
  • bfa89bc73f feat(crypto): Add support for the shared_history flag defined in MSC3061 Damir Jelić 2025-02-20 12:14:49 +01:00
  • e1d05fa53c refactor(crypto): Use struct destructuring instead of separate field access in some places Damir Jelić 2025-02-20 12:07:21 +01:00
  • b0ccc94b26 refactor(crypto): Simplify some tests by using a session created from a helper function Damir Jelić 2025-02-20 12:13:30 +01:00
  • b2356a0232 doc(crypto): Improve the documentation for the encrypted Content serialization Damir Jelić 2025-02-25 15:03:53 +01:00
  • 3bb883387e refactor(crypto): Use the DecryptedOlmV1Event type when encrypting to-device events Damir Jelić 2025-02-19 14:11:09 +01:00
  • 506a36b210 fix(crypto): Fix the serialization of DecryptedOlmV1Event Damir Jelić 2025-02-19 14:06:23 +01:00
  • 8c1966a237 refactor(crypto): Don't require event_type to return a static string Damir Jelić 2025-02-19 13:18:50 +01:00
  • 09513eaa5e refactor(oidc): Only support authorization URL parameters defined in MSCs Kévin Commaille 2025-02-20 11:46:35 +01:00
  • fda9177a70 refactor(oidc): Remove support for Pushed Authorization Requests Kévin Commaille 2025-02-20 04:59:26 +01:00
  • 21960a5ba2 chore(event cache): add more logs to the auto-shrinking mechanism Benjamin Bouvier 2025-02-25 13:37:58 +01:00
  • 0819ab1dad refactor(event cache): apply review comments of #4708 Benjamin Bouvier 2025-02-25 12:13:05 +01:00
  • 475ad79360 fix(sdk): RoomEventCache::event looks inside the store. Ivan Enderlin 2025-02-24 16:04:36 +01:00
  • 7b52306ff2 feat(base): Add EventCacheStore::find_event. Ivan Enderlin 2025-02-24 13:47:00 +01:00
  • e5f6d026ff ci: use an hardcoded version of cargo-machete in CI (#4710) Benjamin Bouvier 2025-02-25 11:35:18 +01:00
  • 5dd5710758 feat(event cache): auto-shrink a room event cache's chunk after all listeners are left matrix-sdk-ffi/20252502 Benjamin Bouvier 2025-02-20 17:07:11 +01:00
  • 37b62dfed1 test(sdk): Add a big test for a deduplication + event removals. Ivan Enderlin 2025-02-24 17:19:24 +01:00
  • d21a4152de chore(sdk): Code cleanup. Ivan Enderlin 2025-02-24 15:42:38 +01:00
  • 8c2dcd7b5d task(sdk): Make the code more robust around event removals. Ivan Enderlin 2025-02-24 15:35:55 +01:00
  • 019b4a20f6 chore(common): Rename EmptyChunk to EmptyChunkRule. Ivan Enderlin 2025-02-24 14:39:56 +01:00
  • 30a9a972ce tes(sdk): Deduplicator dispatches duplicated events in memory vs in store. Ivan Enderlin 2025-02-24 10:12:38 +01:00
  • 22ba1684b2 chore(sdk): Rename a test helper and some variables. Ivan Enderlin 2025-02-24 09:58:04 +01:00
  • 0b12ec2b38 test(sdk): Deduplicator excludes invalid events. Ivan Enderlin 2025-02-24 08:31:09 +01:00
  • a71f5bf21f test(sdk): Test Deduplicator filters events in the input. Ivan Enderlin 2025-02-24 08:26:22 +01:00
  • 9bd7cfda5f test(sdk): Rename a test. Ivan Enderlin 2025-02-24 08:12:55 +01:00
  • c1a13f7f98 test(sdk): Test sort_events_by_position_descending. Ivan Enderlin 2025-02-24 08:08:05 +01:00
  • a362584bb3 task(sdk): Use DeduplicationOutcome to remove events in their correct place. Ivan Enderlin 2025-02-21 15:57:09 +01:00
  • f9ce7628ff task(sdk): Redesign Deduplicator::filter_duplicate_events. Ivan Enderlin 2025-02-21 15:50:27 +01:00
  • 43c066e837 task(base): EventCacheStore::filter_duplicated_events returns Position. Ivan Enderlin 2025-02-21 15:47:27 +01:00
  • f3f37a33fd fix(event cache): override reached_start when there's a mismatch between network and disk Benjamin Bouvier 2025-02-24 12:50:40 +01:00
  • 39c6481f96 feat(event cache): include the lazy previous chunk in the debug string, if available Benjamin Bouvier 2025-02-24 12:45:49 +01:00
  • 66b9d334ef feat(event cache): shrink the linked chunk upon gappy syncs Benjamin Bouvier 2025-02-20 15:19:44 +01:00
  • e64cb2c4f1 feat(event cache): implement RoomEventCacheState::shrink_to_last_chunk Benjamin Bouvier 2025-02-19 15:49:51 +01:00
  • 4f47868930 feat(linked chunk): allow replacing a linked chunk's content with a raw chunk Benjamin Bouvier 2025-02-20 15:17:55 +01:00
  • 4c115b6ad5 feat(event cache): don't store a gap if we've deduplicated all events during sync Benjamin Bouvier 2025-02-20 11:24:19 +01:00
  • 242a1047bd doc(event cache): clarify that RoomEvents::updates() is only for storage updates Benjamin Bouvier 2025-02-19 14:57:28 +01:00
  • 2f3cab431f chore: Add changelog for Oidc::logout Kévin Commaille 2025-02-17 11:38:03 +01:00
  • 55f514897b refactor(oidc): Only revoke one token for logout Kévin Commaille 2025-02-17 11:28:01 +01:00
  • d4b92de8e4 refactor(oidc): Remove support for OIDC RP-Initiated logout Kévin Commaille 2025-02-17 11:20:03 +01:00
  • 25d39997a4 chore: Add changelog for moving qrcode module Kévin Commaille 2025-02-19 11:19:42 +01:00
  • 254ce8923b refactor(oidc): Use OidcBackend with LoginWithQrCode Kévin Commaille 2025-02-18 19:29:28 +01:00
  • 0a4db305b9 refactor(oidc): Move qrcode module inside oidc Kévin Commaille 2025-02-18 18:04:29 +01:00