Releases: matrix-org/matrix-sdk-crypto-wasm
Release list
v18.5.0
matrix-sdk-crypto-wasm v18.5.0
-
Add
CheckCode.toDigitNoLeadingZeroto expose the new method of
calculating ECIES check codes from Vodozemac.
(#337) -
Update matrix-rust-sdk to
955837c467:- The
OlmMachine::receive_sync_changes()method now correctly treats a
missing one-time key count to mean that zero one-time keys exist on the
homeserver.
(#6780)
- The
v18.3.1
matrix-sdk-crypto-wasm v18.3.1
- Update matrix-rust-sdk to
0.18.0:- Upgrade Ruma to 0.16.0, fixing a deserialization issue for
m.key.verification.acceptevents. (#6628)
- Upgrade Ruma to 0.16.0, fixing a deserialization issue for
v18.3.0
matrix-sdk-crypto-wasm v18.3.0
-
Update matrix-rust-sdk to
0.17.0:-
Check the user ID in the
sender_device_keysproperty of Olm-encrypted
to-device events to prevent sender spoofing by homeserver owners.
#6553Resolves GHSA-wfq4-36m3-9g42 / CVE-2026-45056.
-
Update to vodozemac 0.10.0 making the
PkEncryption::encryptAPI fallible
#6477
-
v18.2.0
v18.1.0
-
Add
OlmMachine.pushSecretToVerifiedDevicesto support MSC4385 pushing secrets to verified devices. (#295) -
Update matrix-rust-sdk to
1f3dea7(#316, #314, #312) which includes:- Adds support for receiving MSC4385 pushed secrets.
- The
BackupDecryptionKey.createRandomKeyfunction now unconditionally returns aBackupDecryptionKey, instead of aResult. - Adapts to the changed interface of EncryptedFile from Ruma, but does not change the interface of this crate.
v18.0.0
-
BREAKING: Refine type declarations to improve developer experience and ensure stronger type safety. (#305)
- Adds explicit type definitions to methods that previously lacked them, and refines cases where methods return a union of types to make them more precise.
- Deprecates all outdated types previously exposed in
index.d.ts, which were no longer accurate or reliable.
These changes are not strictly breaking - they do not affect the underlying Rust bindings - but the compile-time interface has been modified, which necessitates the addition of extra checks to ensure type correctness holds.
-
Add support for storing and querying the rooms that are awaiting MSC4268 key bundles. (#299)
-
BREAKING: Add support for MSC4388 in the
QrCodeDataclass.QrCodeModehas been renamed toQrCodeIntent. (#290), (#292) -
Update matrix-rust-sdk to
fadfd98be, which includes:- Add
Store::{store,clear}_room_pending_key_bundle,CryptoStore::get_pending_key_bundle_details_for_roomandCryptoStore::get_all_rooms_pending_key_bundle, which can be used by applications to track whether they are expecting an MSC4268 key bundle. (#6199), (#6233) - Add MSC4388 support to the QrcodeData struct. (#6089)
- [BREAKING] The QrcodeData struct has been reworked in preparation to support MSC4388. The fields of the QrcodeData struct are not anymore publicly accessible. The
mode_data()method has been renamed tointent_data()and returns an MSC-specific struct now. Therendezvous_url()method has been removed. (#6081) - Add MSC4388 support to the QrcodeData struct. (#6089)
- Add
v17.1.0
v17.0.0
-
Expose information about the forwarder for events that were decrypted using a key from an MSC4268 key bundle. (#284)
-
Update matrix-rust-sdk to
97110ed, which includes:- BREAKING:
ShieldStateCodeno longer includesSentInClear.VerificationState::to_shield_state_{lax,strict}never returned that code, and so including it in the enum was somewhat misleading. (#5959) - Add field
forwarderof typeForwarderInfotoEncryptionInfo, which exposes information about the forwarder of the keys with which an event was encrypted if they were shared as part of an MSC4268 room key bundle. (#5945) - Added a new field
forwardertoInboundGroupSessionof typeForwarderData, which stores information about the forwarder of a session shared in a room key bundle under MSC4268. (#5980) - The
OutboundGroupSessionandOlmMachinenow return theEncryptionInfoused when encrypting raw events. (#5936)
Note: The WASM bindings are not affected by this change.
- BREAKING:
v16.0.0
-
Add new property
MegolmDecryptionError.withheldCode, which returns a withheld
code such asm.unverifiedif we received a withheld notification for the
session associated with the UTD event.
(#269) -
Update matrix-rust-sdk to
0.16.0, which includes:Features:
- When we receive an inbound Megolm session from two different sources, merge the two copies together to get the best of both.
(#5865 - When constructing a key bundle for history sharing, if we had received a key bundle ourselves, in which one or more sessions was marked as "history not shared", pass that on to the new user.
(#5820 - Use new withheld code in key bundles for sessions not marked as
shared_history.
(#5807 - Improve feedback support for shared history when downloading room key
bundles.
(#5737)
Bugfixes:
- Fix a bug which caused encrypted to-device messages from unknown devices to be ignored.
(#5763) - Fix a bug which caused history shared on invite to be ignored when "exclude insecure devices" was enabled.
(#5763) - Fix a bug introduced in 0.14.0 which meant that the serialization of the value returned by
OtherUserIdentity::verification_request_contentdid not include amsgtypefield.
(#5642)
- When we receive an inbound Megolm session from two different sources, merge the two copies together to get the best of both.
v15.3.0
- Add support for experimental encrypted state events, introduce
EncryptionSettings:.encryptStateEvents,RoomSettings.encryptStateEvents, andOlmMachine.encryptStateEvent. (#260)