atagen

matrix-rust-sdk

public
Star0
Watch0
ssh://brewery@pls.lobotomise.me:33/atagen/matrix-rust-sdk.git
crates/matrix-sdk-indexeddb/CHANGELOG.mdMarkdown124 lines4.5 KB

Changelog

All notable changes to this project will be documented in this file.

0.18.0 - 2026-06-02

No significant changes.

[0.17.0] - 2026-05-08

Features

  • Add support in the implementation of EventCacheStore for having duplicate events in a room, where each duplicate is in a different LinkedChunk. This is useful, e.g., when an event is in a room and a thread in that room. The change involves a database migration where the EVENTS object store is cleared and then modified so that the ROOM index no longer requires keys to be unique. (#6200)
  • Implement CryptoStore::get_pending_key_bundle_details_for_room and CryptoStore::get_all_rooms_pending_key_bundle, and process rooms_pending_key_bundle field in Changes. (#6199), (#6233)
  • Expose implementations of EventCacheStore and MediaStore and add a composite type for initializing all stores with a single function - i.e., IndexeddbStores::open. Additionally, allow feature flags for each of the stores to be used independent of and in combination with the others. (#5946)
  • Implement new method CyptoStore::has_downloaded_all_room_keys, and process room_key_backups_fully_downloaded field in Changes. (#6017) (#6044)
  • [breaking] In EventCacheStore::handle_linked_chunk_updates, new chunks may no longer reference chunk identifiers which do not yet exist in the store (#6061)

Bug fixes

  • Ensure that encrypted tests are run with a StoreCipher. This happened to reveal tests which fail in an encrypted EventCacheStore, which required fixing queries for all events in a room. (#5933)

Refactor

  • Add migration to IndexeddbCryptoStore that removes cross-process lock generation key from CORE object store, as this is tracked in LEASE_LOCKS object store. (#6326)

[0.16.1] - 2026-05-08

No notable changes in this release.

[0.16.0] - 2025-12-04

Features

  • Implement new method CryptoStore::get_withheld_sessions_by_room_id. (#5819)
  • [breaking] IndexeddbCryptoStore::get_withheld_info now returns Result<Option<RoomKeyWithheldEntry>, ...>. (#5737)
  • Implement StateStore::upsert_thread_subscriptions() method for bulk upserts. (#5848)

Performance

  • Improve performance of certain media queries in MediaStore implementation by storing media content and media metadata in separate object stores in IndexedDB (see #5795).

[0.14.0] - 2025-09-04

No notable changes in this release.

[0.13.0] - 2025-07-10

Features

[0.12.0] - 2025-06-10

No notable changes in this release.

[0.11.0] - 2025-04-11

No notable changes in this release.

[0.10.0] - 2025-02-04

No notable changes in this release.

[0.9.0] - 2024-12-18

No notable changes in this release.

[0.8.0] - 2024-11-19

Features

  • Improve the efficiency of objects stored in the crypto store. (#3645, #3651)

  • Add new method IndexeddbCryptoStore::open_with_key. (#3423)

  • save_change performance improvement, all encryption and serialization is done now outside of the db transaction.

Bug fixes

  • Use the DisplayName struct to protect against homoglyph attacks.