Update dependency matrix-js-sdk to v26 - autoclosed
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
matrix-js-sdk | dependencies | major | ^12.0.0 -> ^26.0.0 |
Release Notes
matrix-org/matrix-js-sdk
v26.2.0
==================================================================================================
🦖 Deprecations
- The Browserify artifact is being deprecated, scheduled for removal in the October 10th release cycle. (#3189).
- ElementR: Add
CryptoApi#bootstrapSecretStorage
(#3483). Contributed by @florianduros. - Deprecate
MatrixClient.findVerificationRequestDMInProgress
,MatrixClient.getVerificationRequestsToDeviceInProgress
, andMatrixClient.requestVerification
, in favour of methods inCryptoApi
. (#3474). - Introduce a new
Crypto.VerificationRequest
interface, and deprecate direct access to the oldVerificationRequest
class. Also deprecate some related classes that were exported fromsrc/crypto/verification/request/VerificationRequest
(#3449).
✨ Features
- OIDC: navigate to authorization endpoint (#3499). Contributed by @kerryarchibald.
- Support for interactive device verification in Element-R. (#3505).
- Support for interactive device verification in Element-R. (#3508).
- Support for interactive device verification in Element-R. (#3490). Fixes vector-im/element-web#25316.
- Element-R: Store cross signing keys in secret storage (#3498). Contributed by @florianduros.
- OIDC: add dynamic client registration util function (#3481). Contributed by @kerryarchibald.
- Add getLastUnthreadedReceiptFor utility to Thread delegating to the underlying Room (#3493).
- ElementR: Add
rust-crypto#createRecoveryKeyFromPassphrase
implementation (#3472). Contributed by @florianduros.
🐛 Bug Fixes
- Aggregate relations regardless of whether event fits into the timeline (#3496). Fixes vector-im/element-web#25596.
- Fix bug where switching media caused media in subsequent calls to fail (#3489).
- Fix: remove polls from room state on redaction (#3475). Fixes vector-im/element-web#25573. Contributed by @kerryarchibald.
- Fix export type
GeneratedSecretStorageKey
(#3479). Contributed by @florianduros. - Close IDB database before deleting it to prevent spurious unexpected close errors (#3478). Fixes vector-im/element-web#25597.
v26.1.0
==================================================================================================
🦖 Deprecations
- Introduce a new
Crypto.Verifier
interface, and deprecate direct access toVerificationBase
,SAS
andReciprocateQRCode
(#3414).
✨ Features
- Add
rust-crypto#isCrossSigningReady
implementation (#3462). Contributed by @florianduros. - OIDC: Validate
m.authentication
configuration (#3419). Contributed by @kerryarchibald. - ElementR: Add
CryptoApi.getCrossSigningStatus
(#3452). Contributed by @florianduros. - Extend stats summary with call device and user count based on room state (#3424). Contributed by @toger5.
- Update MSC3912 implementation to use
with_rel_type
instead ofwith_relations
(#3420). - Export thread-related types from SDK (#3447). Contributed by @stas-demydiuk.
- Use correct /v3 prefix for /refresh (#3016). Contributed by @davidisaaclee.
🐛 Bug Fixes
- Fix thread list being ordered based on all updates (#3458). Fixes vector-im/element-web#25522.
- Fix: handle
baseUrl
with trailing slash infetch.getUrl
(#3455). Fixes vector-im/element-web#25526. Contributed by @kerryarchibald. - use cli.canSupport to determine intentional mentions support (#3445). Fixes vector-im/element-web#25497. Contributed by @kerryarchibald.
- Make sliding sync linearize processing of sync requests (#3442).
- Fix edge cases around 2nd order relations and threads (#3437).
v26.0.1
==================================================================================================
🐛 Bug Fixes
- Fix: handle
baseUrl
with trailing slash infetch.getUrl
(#3455). Fixes vector-im/element-web#25526. Contributed by @kerryarchibald.
v26.0.0
==================================================================================================
🚨 BREAKING CHANGES
- Ensure we do not add relations to the wrong timeline (#3427). Fixes vector-im/element-web#25450 and vector-im/element-web#25494.
- Deprecate
QrCodeEvent
,SasEvent
andVerificationEvent
(#3386).
🦖 Deprecations
- Move crypto classes into a separate namespace (#3385).
✨ Features
- Mention deno support in the README (#3417). Contributed by @sigmaSd.
- Mark room version 10 as safe (#3425).
- Prioritise entirely supported flows for UIA (#3402).
- Add methods to terminate idb worker (#3362).
- Total summary count (#3351). Contributed by @toger5.
- Audio concealment (#3349). Contributed by @toger5.
🐛 Bug Fixes
- Correctly accumulate sync summaries. (#3366). Fixes vector-im/element-web#23345.
- Keep measuring a call feed's volume after a stream replacement (#3361). Fixes vector-im/element-call#1051.
- Element-R: Avoid uploading a new fallback key at every
/sync
(#3338). Fixes vector-im/element-web#25215. - Accumulate receipts for the main thread and unthreaded separately (#3339). Fixes vector-im/element-web#24629.
- Remove spec non-compliant extended glob format (#3423). Fixes vector-im/element-web#25474.
- Fix bug where original event was inserted into timeline instead of the edit event (#3398). Contributed by @andybalaam.
- Only add a local receipt if it's after an existing receipt (#3399). Contributed by @andybalaam.
- Attempt a potential workaround for stuck notifs (#3384). Fixes vector-im/element-web#25406. Contributed by @andybalaam.
- Fix verification bug with
pendingEventOrdering: "chronological"
(#3382).
v25.1.1
==================================================================================================
🐛 Bug Fixes
- Rebuild to fix packaging glitch in 25.1.0. Fixes #3363
v25.1.0
==================================================================================================
🦖 Deprecations
- Deprecate MatrixClient::resolveRoomAlias (#3316).
✨ Features
- add client method to remove pusher (#3324). Contributed by @kerryarchibald.
- Implement MSC 3981 (#3248). Fixes vector-im/element-web#25021. Contributed by @justjanne.
- Added
Room.getLastLiveEvent
andRoom.getLastThread
. DeprecatedRoom.lastThread
in favour ofRoom.getLastThread
. (#3321). - Element-R: wire up device lists (#3272). Contributed by @florianduros.
- Node 20 support (#3302).
🐛 Bug Fixes
- Fix racing between one-time-keys processing and sync (#3327). Fixes vector-im/element-web#25214. Contributed by @florianduros.
- Fix lack of media when a user reconnects (#3318).
- Fix TimelineWindow getEvents exploding if no neigbouring timeline (#3285). Fixes vector-im/element-web#25104.
v25.0.0
==================================================================================================
🚨 BREAKING CHANGES
✨ Features
- Add typedoc-plugin-mdn-links (#3292).
- Annotate events with executed push rule (#3284). Contributed by @kerryarchibald.
- Element-R: pass device list change notifications into rust crypto-sdk (#3254). Fixes vector-im/element-web#24795. Contributed by @florianduros.
- Support for MSC3882 revision 1 (#3228). Contributed by @hughns.
🐛 Bug Fixes
- Fix screen sharing on Firefox 113 (#3282). Contributed by @tulir.
- Retry processing potential poll events after decryption (#3246). Fixes vector-im/element-web#24568.
- Element-R: handle events which arrive before their keys (#3230). Fixes vector-im/element-web#24489.
v24.1.0
==================================================================================================
✨ Features
- Allow via_servers property in findPredecessor (update to MSC3946) (#3240). Contributed by @andybalaam.
- Fire
closed
event when IndexedDB closes unexpectedly (#3218). - Implement MSC3952: intentional mentions (#3092). Fixes vector-im/element-web#24376.
- Send one time key count and unused fallback keys for rust-crypto (#3215). Fixes vector-im/element-web#24795. Contributed by @florianduros.
- Improve
processBeaconEvents
hotpath (#3200). - Implement MSC3966: a push rule condition to check if an array contains a value (#3180).
🐛 Bug Fixes
- indexddb-local-backend - return the current sync to database promise … (#3222). Contributed by @texuf.
- Revert "Add the call object to Call events" (#3236).
- Handle group call redaction (#3231). Fixes vector-im/voip-internal#128.
- Stop doing O(n^2) work to find event's home (
eventShouldLiveIn
) (#3227). Contributed by @jryans. - Fix bug where video would not unmute if it started muted (#3213). Fixes vector-im/element-call#925.
- Fixes to event encryption in the Rust Crypto implementation (#3202).
v24.0.0
==================================================================================================
🔒 Security
- Fixes for CVE-2023-28427 / GHSA-mwq8-fjpf-c2gr
v23.5.0
==================================================================================================
✨ Features
- Implement MSC3758: a push rule condition to match event properties exactly (#3179).
- Enable group calls without video and audio track by configuration of MatrixClient (#3162). Contributed by @EnricoSchw.
- Updates to protocol used for Sign in with QR code (#3155). Contributed by @hughns.
- Implement MSC3873 to handle escaped dots in push rule keys (#3134). Fixes undefined#1454.
🐛 Bug Fixes
- Fix spec compliance issue around encrypted
m.relates_to
(#3178). - Fix reactions in threads sometimes causing stuck notifications (#3146). Fixes vector-im/element-web#24000. Contributed by @justjanne.
v23.4.0
==================================================================================================
✨ Features
- Add easy way to determine if the decryption failure is due to "DecryptionError: The sender has disabled encrypting to unverified devices." (#3167). Contributed by @florianduros.
- Polls: expose end event id on poll model (#3160). Contributed by @kerryarchibald.
- Polls: count undecryptable poll relations (#3163). Contributed by @kerryarchibald.
🐛 Bug Fixes
- Better type guard parseTopicContent (#3165). Fixes matrix-org/element-web-rageshakes#20177 and matrix-org/element-web-rageshakes#20178.
- Fix a bug where events in encrypted rooms would sometimes erroneously increment the total unread counter after being processed locally. (#3130). Fixes vector-im/element-web#24448. Contributed by @Half-Shot.
- Stop the ICE disconnected timer on call terminate (#3147).
- Clear notifications when we can infer read status from receipts (#3139). Fixes vector-im/element-web#23991.
- Messages sent out of order after one message fails (#3131). Fixes vector-im/element-web#22885 and vector-im/element-web#18942. Contributed by @justjanne.
v23.3.0
==================================================================================================
✨ Features
- Element-R: implement encryption of outgoing events (#3122).
- Poll model - page /relations results (#3073). Contributed by @kerryarchibald.
- Poll model - validate end events (#3072). Contributed by @kerryarchibald.
- Handle optional last_known_event_id property in m.predecessor (#3119). Contributed by @andybalaam.
- Add support for stable identifier for fixed MAC in SAS verification (#3101).
- Provide eventId as well as roomId from Room.findPredecessor (#3095). Contributed by @andybalaam.
- MSC3946 Dynamic room predecessors (#3042). Contributed by @andybalaam.
- Poll model (#3036). Contributed by @kerryarchibald.
- Remove video tracks on video mute without renegotiating (#3091).
- Introduces a backwards-compatible API change.
MegolmEncrypter#prepareToEncrypt
's return type has changed fromvoid
to() => void
. (#3035). Contributed by @clarkf.
🐛 Bug Fixes
- Stop the ICE disconnected timer on call terminate (#3147).
- Clear notifications when we can infer read status from receipts (#3139). Fixes vector-im/element-web#23991.
- Messages sent out of order after one message fails (#3131). Fixes vector-im/element-web#22885 and vector-im/element-web#18942. Contributed by @justjanne.
- Element-R: fix a bug which prevented encryption working after a reload (#3126).
- Element-R: Fix invite processing (#3121).
- Don't throw with no
opponentDeviceInfo
(#3107). - Remove flaky megolm test (#3098). Contributed by @clarkf.
- Fix "verifyLinks" functionality of getRoomUpgradeHistory (#3089). Contributed by @andybalaam.
v23.2.0
==================================================================================================
✨ Features
- Implement decryption via the rust sdk (#3074).
- Handle edits which are bundled with an event, per MSC3925 (#3045).
🐛 Bug Fixes
- Add null check for our own member event (#3082).
- Handle group call getting initialised twice in quick succession (#3078). Fixes vector-im/element-call#847.
- Correctly handle limited sync responses by resetting the thread timeline (#3056). Fixes vector-im/element-web#23952. Contributed by @justjanne.
- Fix failure to start in firefox private browser (#3058). Fixes vector-im/element-web#24216.
- Fix spurious "Decryption key withheld" messages (#3061). Fixes vector-im/element-web#23803.
- Fix browser entrypoint (#3051). Fixes #3013.
v23.1.1
==================================================================================================
🐛 Bug Fixes
- Fix backwards compability for environment not support Array.prototype.at (#3080).
v23.1.0
==================================================================================================
🦖 Deprecations
- Remove extensible events v1 field population on legacy events (#3040).
✨ Features
- Improve hasUserReadEvent and getUserReadUpTo realibility with threads (#3031). Fixes vector-im/element-web#24164.
- Remove video track when muting video (#3028). Fixes vector-im/element-call#209.
- Make poll start event type available (PSG-962) (#3034).
- Add alt event type matching in Relations model (#3018).
- Remove usage of v1 Identity Server API (#3003).
- Add
device_id
to/account/whoami
types (#3005). - Implement MSC3912: Relation-based redactions (#2954).
- Introduce a mechanism for using the rust-crypto-sdk (#2969).
- Support MSC3391: Account data deletion (#2967).
🐛 Bug Fixes
- Fix threaded cache receipt when event holds multiple receipts (#3026).
- Fix false key requests after verifying new device (#3029). Fixes vector-im/element-web#24167 and vector-im/element-web#23333.
- Avoid triggering decryption errors when decrypting redacted events (#3004). Fixes vector-im/element-web#24084.
- bugfix: upload OTKs in sliding sync mode (#3008).
- Apply edits discovered from sync after thread is initialised (#3002). Fixes vector-im/element-web#23921.
- Sliding sync: Fix issue where no unsubs are sent when switching rooms (#2991).
- Threads are missing from the timeline (#2996). Fixes vector-im/element-web#24036.
- Close all streams when a call ends (#2992). Fixes vector-im/element-call#742.
- Resume to-device message queue after resumed sync (#2920). Fixes matrix-org/element-web-rageshakes#17170.
- Fix browser entrypoint (#3051). Fixes #3013.
- Fix failure to start in firefox private browser (#3058). Fixes vector-im/element-web#24216.
- Correctly handle limited sync responses by resetting the thread timeline (#3056). Fixes vector-im/element-web#23952.
v23.0.0
==================================================================================================
🚨 BREAKING CHANGES
- Process
m.room.encryption
events before emittingRoomMember
events (#2914). Fixes vector-im/element-web#23819. - Don't expose
calls
onGroupCall
(#2941).
✨ Features
- Support MSC3391: Account data deletion (#2967).
- Add a message ID on each to-device message (#2938).
- Enable multiple users' power levels to be set at once (#2892). Contributed by @GoodGuyMarco.
- Include pending events in thread summary and count again (#2922). Fixes vector-im/element-web#23642.
- Make GroupCall work better with widgets (#2935).
- Add method to get outgoing room key requests for a given event (#2930).
🐛 Bug Fixes
- Fix messages loaded during initial fetch ending up out of order (#2971). Fixes vector-im/element-web#23972.
- Fix #23919: Root message for new thread loaded from network (#2965). Fixes vector-im/element-web#23919.
- Fix #23916: Prevent edits of the last message in a thread getting lost (#2951). Fixes vector-im/element-web#23916 and vector-im/element-web#23942.
- Fix infinite loop when restoring cached read receipts (#2963). Fixes vector-im/element-web#23951.
- Don't swallow errors coming from the shareSession call (#2962). Fixes vector-im/element-web#23792.
- Make sure that MegolmEncryption.setupPromise always resolves (#2960).
- Do not calculate highlight notifs for threads unknown to the room (#2957).
- Cache read receipts for unknown threads (#2953).
- bugfix: sliding sync initial room timelines shouldn't notify (#2933).
- Redo key sharing after own device verification (#2921). Fixes vector-im/element-web#23333.
- Move updated threads to the end of the thread list (#2923). Fixes vector-im/element-web#23876.
- Fix highlight notifications increasing when total notification is zero (#2937). Fixes vector-im/element-web#23885.
- Fix synthesizeReceipt (#2916). Fixes vector-im/element-web#23827 vector-im/element-web#23754 and vector-im/element-web#23847.
v22.0.0
==================================================================================================
🚨 BREAKING CHANGES
- Enable users to join group calls from multiple devices (#2902).
🦖 Deprecations
- Deprecate a function containing a typo (#2904).
✨ Features
- sliding sync: add receipts extension (#2912).
- Define a spec support policy for the js-sdk (#2882).
- Further improvements to e2ee logging (#2900).
- sliding sync: add support for typing extension (#2893).
- Improve logging on Olm session errors (#2885).
- Improve logging of e2ee messages (#2884).
🐛 Bug Fixes
- Fix 3pid invite acceptance not working due to mxid being sent in body (#2907). Fixes vector-im/element-web#23823.
- Don't hang up calls that haven't started yet (#2898).
- Read receipt accumulation for threads (#2881).
- Make GroupCall work better with widgets (#2935).
- Fix highlight notifications increasing when total notification is zero (#2937). Fixes vector-im/element-web#23885.
- Fix synthesizeReceipt (#2916). Fixes vector-im/element-web#23827 vector-im/element-web#23754 and vector-im/element-web#23847.
v21.2.0
==================================================================================================
✨ Features
- Make calls go back to 'connecting' state when media lost (#2880).
- Add ability to send unthreaded receipt (#2878).
- Add way to abort search requests (#2877).
- sliding sync: add custom room subscriptions support (#2834).
- webrtc: add advanced audio settings (#2434). Contributed by @MrAnno.
- Add support for group calls using MSC3401 (#2553).
- Make the js-sdk conform to tsc --strict (#2835). Fixes #2112 #2116 and #2124.
- Let leave requests outlive the window (#2815). Fixes vector-im/element-call#639.
- Add event and message capabilities to RoomWidgetClient (#2797).
- Misc fixes for group call widgets (#2657).
- Support nested Matrix clients via the widget API (#2473).
- Set max average bitrate on PTT calls (#2499). Fixes vector-im/element-call#440.
- Add config option for e2e group call signalling (#2492).
- Enable DTX on audio tracks in calls (#2482).
- Don't ignore call member events with a distant future expiration date (#2466).
- Expire call member state events after 1 hour (#2446).
- Emit unknown device errors for group call participants without e2e (#2447).
- Mute disconnected peers in PTT mode (#2421).
- Add support for sending encrypted to-device events with OLM (#2322). Contributed by @robertlong.
- Support for PTT group call mode (#2338).
🐛 Bug Fixes
- Fix registration add phone number not working (#2876). Contributed by @bagvand.
- Use an underride rule for Element Call notifications (#2873). Fixes vector-im/element-web#23691.
- Fixes unwanted highlight notifications with encrypted threads (#2862).
- Extra insurance that we don't mix events in the wrong timelines - v2 (#2856). Contributed by @MadLittleMods.
- Hide pending events in thread timelines (#2843). Fixes vector-im/element-web#23684.
- Fix pagination token tracking for mixed room timelines (#2855). Fixes vector-im/element-web#23695.
- Extra insurance that we don't mix events in the wrong timelines (#2848). Contributed by @MadLittleMods.
- Do not freeze state in
initialiseState()
(#2846). - Don't remove our own member for a split second when entering a call (#2844).
- Resolve races between
initLocalCallFeed
andleave
(#2826). - Add throwOnFail to groupCall.setScreensharingEnabled (#2787).
- Fix connectivity regressions (#2780).
- Fix screenshare failing after several attempts (#2771). Fixes vector-im/element-call#625.
- Don't block muting/unmuting on network requests (#2754). Fixes vector-im/element-call#592.
- Fix ICE restarts (#2702).
- Target widget actions at a specific room (#2670).
- Add tests for ice candidate sending (#2674).
- Prevent exception when muting (#2667). Fixes vector-im/element-call#578.
- Fix race in creating calls (#2662).
- Add client.waitUntilRoomReadyForGroupCalls() (#2641).
- Wait for client to start syncing before making group calls (#2632). Fixes #2589.
- Add GroupCallEventHandlerEvent.Room (#2631).
- Add missing events from reemitter to GroupCall (#2527). Contributed by @toger5.
- Prevent double mute status changed events (#2502).
- Don't mute the remote side immediately in PTT calls (#2487). Fixes vector-im/element-call#425.
- Fix some MatrixCall leaks and use a shared AudioContext (#2484). Fixes vector-im/element-call#412.
- Don't block muting on determining whether the device exists (#2461).
- Only clone streams on Safari (#2450). Fixes vector-im/element-call#267.
- Set PTT mode on call correctly (#2445). Fixes vector-im/element-call#382.
- Wait for mute event to send in PTT mode (#2401).
- Handle other members having no e2e keys (#2383). Fixes vector-im/element-call#338.
- Fix races when muting/unmuting (#2370).
v21.1.0
==================================================================================================
✨ Features
- Loading threads with server-side assistance (#2735). Contributed by @justjanne.
- Support sign in + E2EE set up using QR code implementing MSC3886, MSC3903 and MSC3906 (#2747). Contributed by @hughns.
🐛 Bug Fixes
- Replace
instanceof Array
withArray.isArray
(#2812). Fixes #2811. - Emit UnreadNotification event on notifications reset (#2804). Fixes vector-im/element-web#23590.
- Fix incorrect prevEv being sent in ClientEvent.AccountData events (#2794).
- Fix build error caused by wrong ts-strict improvements (#2783). Contributed by @justjanne.
- Encryption should not hinder verification (#2734).
v21.0.1
==================================================================================================
🐛 Bug Fixes
- Fix default behavior of Room.getBlacklistUnverifiedDevices (#2830). Contributed by @duxovni.
- Catch server versions API call exception when starting the client (#2828). Fixes vector-im/element-web#23634.
- Fix authedRequest including
Authorization: Bearer undefined
for password resets (#2822). Fixes vector-im/element-web#23655.
v21.0.0
==================================================================================================
🚨 BREAKING CHANGES
- Changes the
uploadContent
API, kills offrequest
andbrowser-request
in favour offetch
, removed callback support on a lot of the methods, adds a lot of tests. (#2719). Fixes #2415 and #801. - Remove deprecated
m.room.aliases
references (#2759). Fixes vector-im/element-web#12680.
✨ Features
- Remove node-specific crypto bits, use Node 16's WebCrypto (#2762). Fixes #2760.
- Export types for MatrixEvent and Room emitted events, and make event handler map types stricter (#2750). Contributed by @stas-demydiuk.
- Use even more stable calls to
/room_keys
(#2746). - Upgrade to Olm 3.2.13 which has been repackaged to support Node 18 (#2744).
- Fix
power_level_content_override
type (#2741). - Add custom notification handling for MSC3401 call events (#2720).
- Add support for unread thread notifications (#2726).
- Load Thread List with server-side assistance (MSC3856) (#2602).
- Use stable calls to
/room_keys
(#2729). Fixes vector-im/element-web#22839.
🐛 Bug Fixes
- Fix POST data not being passed for registerWithIdentityServer (#2769). Fixes matrix-org/element-web-rageshakes#16206.
- Fix IdentityPrefix.V2 containing spurious
/api
(#2761). Fixes vector-im/element-web#23505. - Always send back an httpStatus property if one is known (#2753).
- Check for AbortError, not any generic connection error, to avoid tightlooping (#2752).
- Correct the dir parameter of MSC3715 (#2745). Contributed by @dhenneke.
- Fix sync init when thread unread notif is not supported (#2739). Fixes vector-im/element-web#23435.
- Use the correct sender key when checking shared secret (#2730). Fixes vector-im/element-web#23374.
v20.1.0
============================================================================================================
✨ Features
- Add local notification settings capability (#2700).
- Implementation of MSC3882 login token request (#2687). Contributed by @hughns.
- Typings for MSC2965 OIDC provider discovery (#2424). Contributed by @hughns.
- Support to remotely toggle push notifications (#2686).
- Read receipts for threads (#2635).
🐛 Bug Fixes
- Use the correct sender key when checking shared secret (#2730). Fixes vector-im/element-web#23374.
- Unexpected ignored self key request when it's not shared history (#2724). Contributed by @mcalinghee.
- Fix IDB initial migration handling causing spurious lazy loading upgrade loops (#2718). Fixes vector-im/element-web#23377.
- Fix backpagination at end logic being spec non-conforming (#2680). Fixes vector-im/element-web#22784.
v20.0.2
==================================================================================================
🐛 Bug Fixes
- Fix issue in sync when crypto is not supported by client (#2715). Contributed by @stas-demydiuk.
v20.0.1
==================================================================================================
🐛 Bug Fixes
- Fix missing return when receiving an invitation without shared history (#2710).
v20.0.0
==================================================================================================
🚨 BREAKING CHANGES
- Bump IDB crypto store version (#2705).
v19.7.0
==================================================================================================
🔒 Security
- Fix for CVE-2022-39249
- Fix for CVE-2022-39250
- Fix for CVE-2022-39251
- Fix for CVE-2022-39236
v19.6.0
==================================================================================================
✨ Features
- Add a property aggregating all names of a NamespacedValue (#2656).
- Implementation of MSC3824 to add action= param on SSO login (#2398). Contributed by @hughns.
- Add invited_count and joined_count to sliding sync room responses. (#2628).
- Base support for MSC3847: Ignore invites with policy rooms (#2626). Contributed by @Yoric.
🐛 Bug Fixes
v19.5.0
==================================================================================================
🐛 Bug Fixes
- Fix bug in deepCompare which would incorrectly return objects with disjoint keys as equal (#2586). Contributed by @3nprob.
- Refactor Sync and fix
initialSyncLimit
(#2587). - Use deep equality comparisons when searching for outgoing key requests by target (#2623). Contributed by @duxovni.
- Fix room membership race with MREPARED event (#2613). Contributed by @jotto.
v19.4.0
==================================================================================================
🔒 Security
- Fix for CVE-2022-36059
Find more details at https://matrix.org/blog/2022/08/31/security-releases-matrix-js-sdk-19-4-0-and-matrix-react-sdk-3-53-0
✨ Features
- Re-emit room state events on rooms (#2607).
- Add ability to override built in room name generator for an i18n'able one (#2609).
- Add txn_id support to sliding sync (#2567).
🐛 Bug Fixes
- Refactor Sync and fix
initialSyncLimit
(#2587). - Use deep equality comparisons when searching for outgoing key requests by target (#2623). Contributed by @duxovni.
- Fix room membership race with MREPARED event (#2613). Contributed by @jotto.
- fixed a sliding sync bug which could cause the
roomIndexToRoomId
map to be incorrect when a new room is added in the middle of the list or when an existing room is deleted from the middle of the list. (#2610). - Fix: Handle parsing of a beacon info event without asset (#2591). Fixes vector-im/element-web#23078. Contributed by @kerryarchibald.
- Fix finding event read up to if stable private read receipts is missing (#2585). Fixes vector-im/element-web#23027.
- fixed a sliding sync issue where history could be interpreted as live events. (#2583).
v19.3.0
==================================================================================================
✨ Features
- Add txn_id support to sliding sync (#2567).
- Emit an event when the client receives TURN servers (#2529).
- Add support for stable prefixes for MSC2285 (#2524).
- Remove stream-replacement (#2551).
- Add support for sending user-defined encrypted to-device messages (#2528).
- Retry to-device messages (#2549). Fixes vector-im/element-web#12851.
- Sliding sync: add missing filters from latest MSC (#2555).
- Use stable prefixes for MSC3827 (#2537).
🐛 Bug Fixes
- Fix: Handle parsing of a beacon info event without asset (#2591). Fixes vector-im/element-web#23078.
- Fix finding event read up to if stable private read receipts is missing (#2585). Fixes vector-im/element-web#23027.
- Fixed a sliding sync issue where history could be interpreted as live events. (#2583).
- Don't load the sync accumulator if there's already a sync persist in flight (#2569).
v19.2.0
==================================================================================================
🦖 Deprecations
✨ Features
- Sliding sync: add missing filters from latest MSC (#2555).
- Use stable prefixes for MSC3827 (#2537).
- Add support for MSC3575: Sliding Sync (#2242).
🐛 Bug Fixes
- Correct the units in TURN servers expiry documentation (#2520).
- Re-insert room IDs when decrypting bundled redaction events returned by
/sync
(#2531). Contributed by @duxovni.
v19.1.0
==================================================================================================
🦖 Deprecations
- Remove MSC3244 support (#2504).
✨ Features
-
room
now exportsKNOWN_SAFE_ROOM_VERSION
(#2474).
🐛 Bug Fixes
- Don't crash with undefined room in
processBeaconEvents()
(#2500). Fixes #2494. - Properly re-insert room ID in bundled thread relation messages from sync (#2505). Fixes vector-im/element-web#22094. Contributed by @duxovni.
- Actually store the identity server in the client when given as an option (#2503). Fixes vector-im/element-web#22757.
- Fix call.collectCallStats() (#2480).
v19.0.0
==================================================================================================
🚨 BREAKING CHANGES
- Remove unused sessionStore (#2455).
✨ Features
- Implement MSC3827: Filtering of
/publicRooms
by room type (#2469). - expose latestLocationEvent on beacon model (#2467). Contributed by @kerryarchibald.
- Live location share - add start time leniency (#2465). Contributed by @kerryarchibald.
- Log real errors and not just their messages, traces are useful (#2464).
- Various changes to
src/crypto
files for correctness (#2137). Contributed by @ShadowJonathan. - Update MSC3786 implementation: Check the
state_key
(#2429). - Timeline needs to refresh when we see a MSC2716 marker event (#2299). Contributed by @MadLittleMods.
- Try to load keys from key backup when a message fails to decrypt (#2373). Fixes vector-im/element-web#21026. Contributed by @duxovni.
🐛 Bug Fixes
- Send call version
1
as a string (#2471). Fixes vector-im/element-web#22629. - Fix issue with
getEventTimeline
returning undefined for thread roots in main timeline (#2454). Fixes vector-im/element-web#22539. - Add missing
type
property onIAuthData
(#2463). - Clearly indicate that
lastReply
on a Thread can return falsy (#2462). - Fix issues with getEventTimeline and thread roots (#2444). Fixes vector-im/element-web#21613.
- Live location sharing - monitor liveness of beacons yet to start (#2437). Contributed by @kerryarchibald.
- Refactor Relations to not be per-EventTimelineSet (#2412). Fixes #2399 and vector-im/element-web#22298.
- Add tests for sendEvent threadId handling (#2435). Fixes vector-im/element-web#22433.
- Make sure
encryptAndSendKeysToDevices
assumes devices are unique per-user. (#2136). Fixes #2135. Contributed by @ShadowJonathan. - Don't bug the user while re-checking key backups after decryption failures (#2430). Fixes vector-im/element-web#22416. Contributed by @duxovni.
v18.1.0
==================================================================================================
✨ Features
- Convert
getLocalAliases
to a stable API call (#2402).
🐛 Bug Fixes
- Fix request, crypto, and bs58 imports (#2414). Fixes #2415.
- Update relations after every decryption attempt (#2387). Fixes vector-im/element-web#22258. Contributed by @weeman1337.
- Fix degraded mode for the IDBStore and test it (#2400). Fixes matrix-org/element-web-rageshakes#13170.
- Don't cancel SAS verifications if
ready
is received afterstart
(#2250). - Prevent overlapping sync accumulator persists (#2392). Fixes vector-im/element-web#21541.
- Fix behaviour of isRelation with relation m.replace for state events (#2389). Fixes vector-im/element-web#22280.
- Fixes #2384 (#2385). Fixes undefined#2384. Contributed by @schmop.
- Ensure rooms are recalculated on re-invites (#2374). Fixes vector-im/element-web#22106.
v18.0.0
==================================================================================================
🚨 BREAKING CHANGES (to experimental methods)
- Implement changes to MSC2285 (private read receipts) (#2221).
✨ Features
- Add support for HTML renderings of room topics (#2272).
- Add stopClient parameter to MatrixClient::logout (#2367).
- registration: add function to re-request email token (#2357).
- Remove hacky custom status feature (#2350).
🐛 Bug Fixes
- Remove default push rule override for MSC1930 (#2376). Fixes vector-im/element-web#15439.
- Tweak thread creation & event adding to fix bugs around relations (#2369). Fixes vector-im/element-web#22162 and vector-im/element-web#22180.
- Prune both clear & wire content on redaction (#2346). Fixes vector-im/element-web#21929.
- MSC3786: Add a default push rule to ignore
m.room.server_acl
events (#2333). Fixes vector-im/element-web#20788.
v17.2.0
==================================================================================================
✨ Features
- Live location sharing: handle encrypted messages in processBeaconEvents (#2327).
🐛 Bug Fixes
- Fix race conditions around threads (#2331). Fixes vector-im/element-web#21627.
- Ignore m.replace relations on state events, they're invalid (#2306). Fixes vector-im/element-web#21851.
- fix example in readme (#2315).
- Don't decrement the length count of a thread when root redacted (#2314).
- Prevent attempt to create thread with id "undefined" (#2308).
- Update threads handling for replies-to-thread-responses as per MSC update (#2305). Fixes vector-im/element-web#19678.
v17.1.0
==================================================================================================
✨ Features
- Add MatrixClient.doesServerSupportLogoutDevices() for MSC2457 (#2297).
- Live location sharing - expose room liveBeaconIds (#2296).
- Support for MSC2457 logout_devices param for setPassword() (#2285).
- Stabilise token authenticated registration support (#2181). Contributed by @govynnus.
- Live location sharing - Aggregate beacon locations on beacons (#2268).
🐛 Bug Fixes
- Prevent duplicated re-emitter setups in event-mapper (#2293).
- Make self membership less prone to races (#2277). Fixes vector-im/element-web#21661.
v17.0.0
==================================================================================================
🚨 BREAKING CHANGES
- Remove groups and groups-related APIs (#2234).
✨ Features
🐛 Bug Fixes
- Fix getSessionsNeedingBackup() limit support (#2270). Contributed by @adamvy.
- Fix issues with /search and /context API handling for threads (#2261). Fixes vector-im/element-web#21543.
- Prevent exception 'Unable to set up secret storage' (#2260).
v16.0.1
==================================================================================================
✨ Features
- emit aggregate room beacon liveness (#2241).
- Live location sharing - create m.beacon_info events (#2238).
- Beacon event types from MSC3489 (#2230).
🐛 Bug Fixes
- Fix incorrect usage of unstable variant of
is_falling_back
(#2227).
v16.0.0
==================================================================================================
🚨 BREAKING CHANGES
- Improve typing around event emitter handlers (#2180).
✨ Features
- Fix defer not supporting resolving with a Promise (#2216).
- add LocationAssetType enum (#2214).
- Support for mid-call devices changes (#2154). Contributed by @SimonBrandner.
- Add new room state emit RoomStateEvent.Update for lower-frequency hits (#2192).
🐛 Bug Fixes
- Fix wrong event_id being sent for m.in_reply_to of threads (#2213).
- Fix wrongly asserting that PushRule::conditions is non-null (#2217).
- Make createThread more resilient when missing rootEvent (#2207). Fixes vector-im/element-web#21130.
- Fix bug with the /hierarchy API sending invalid requests (#2201). Fixes vector-im/element-web#21170.
- fix relation sender filter (#2196). Fixes vector-im/element-web#20877.
- Fix bug with one-way audio after a transfer (#2193).
v15.6.0
==================================================================================================
✨ Features
- Return send event response from MSC3089Branch.createNewVersion() (#2186).
- Add functions to support refresh tokens (#2178).
🐛 Bug Fixes
- [Release] Fix bug with the /hierarchy API sending invalid requests (#2202).
- Fix bug where calls could break if rejected from somewhere else (#2189).
- Fix camera stuck on after call transfer (#2188).
- Fix synthetic read receipt handling (#2174). Fixes vector-im/element-web#21016.
- Revert "Sign backup with cross-signing key when we reset it." (#2175).
- Sign backup with cross-signing key when we reset it. (#2170).
- Fix error in uploadContent() when file is empty under Node.js (#2155).
- Check the backup info against the stored private key when determining trust. (#2167).
- Back up keys before logging out (#2158). Fixes vector-im/element-web#13151.
v15.5.2
==================================================================================================
🐛 Bug Fixes
- Fix synthetic read receipt handling
v15.5.1
==================================================================================================
🐛 Bug Fixes
- Fix issue with rooms not getting marked as unread (#2163). Fixes vector-im/element-web#20971.
- Don't store streams that are only used once (#2157). Fixes vector-im/element-web#20932. Contributed by @SimonBrandner.
- Fix edge cases around RR calculations (#2160). Fixes vector-im/element-web#20922.
- Account for encryption in
maySendMessage()
(#2159). Contributed by @SimonBrandner. - Send references to thread root to threads, even out of order (#2156).
- Fix initial sync fail when event fetching unsuccessful (#2150). Fixes vector-im/element-web#20862.
- Don't decrypt redacted messages (#2143). Contributed by @SimonBrandner.
v15.5.0
==================================================================================================
✨ Features
- Support m.asset in m.location event content (#2109).
- Send extensible events structure and support on-demand parsing (#2091).
- Support cancelling events whilst they are in status = ENCRYPTING (#2095).
🐛 Bug Fixes
- Fix http-api butchering idServer requests (#2134). Fixes vector-im/element-web#20680.
- Don't remove streams that still have tracks (#2104).
v15.4.0
==================================================================================================
✨ Features
- Don't consider alt_aliases when calculating room name (#2094). Fixes vector-im/element-web#13887.
- Load room history if necessary when searching for MSC3089 getFileEvent() (#2066).
- Add support for MSC3030
/timestamp_to_event
(#2072).
🐛 Bug Fixes
- Stop encrypting redactions as it isn't spec compliant (#2098). Fixes vector-im/element-web#20460.
- Fix more function typings relating to key backup (#2086).
- Fix timeline search in MSC3089 getFileEvent() (#2085).
- Set a
deviceId
for VoIP example and useconst
/let
(#2090). Fixes #2083. Contributed by @SimonBrandner. - Fix incorrect TS return type for secret storage and key backup functions (#2082).
v15.3.0
==================================================================================================
✨ Features
- Improve fallback key behaviour (#2037).
- Add new room event filter fields (#2051).
- Add method to fetch /account/whoami (#2046).
🐛 Bug Fixes
- Filter out falsey opts in /relations API hits (#2059). Fixes vector-im/element-web#20137.
- Fix paginateEventTimeline resolve to boolean (#2054).
- Fix incorrect MSC3089 typings and add null checks (#2049).
v15.2.1
==================================================================================================
- Security release with updated version of Olm to fix https://matrix.org/blog/2021/12/03/pre-disclosure-upcoming-security-release-of-libolm-and-matrix-js-sdk
v15.2.0
==================================================================================================
✨ Features
- Remove support for
ArrayBuffer
in unstable MSC3089createFile()
andcreateNewVersion()
and instead use same content types as handled byMatrixClient.uploadContent()
. This enables support for Node.js. (#2014). - Support for password-based backup on Node.js (#2021).
- Add optional force parameter when ensuring Olm sessions (#2027).
🐛 Bug Fixes
- Fix call upgrades (#2024). Contributed by @SimonBrandner.
v15.1.1
==================================================================================================
🐛 Bug Fixes
- Fix edit history being broken after editing an unencrypted event with an encrypted event (#2013). Fixes vector-im/element-web#19651 and vector-im/element-web#19651. Contributed by @aaronraimist.
- Make events pagination responses parse threads (#2011). Fixes vector-im/element-web#19587 and vector-im/element-web#19587.
v15.1.0
==================================================================================================
🦖 Deprecations
- Mark old verification methods as deprecated (#1994).
✨ Features
- Try to set a sender on search result events if possible (#2004).
- Port some changes from group calls branch to develop (#2001). Contributed by @SimonBrandner.
- Fetch room membership from server rather than relying on stored data (#1998).
- Add method to fetch the MSC3266 Room Summary of a Room (#1988).
🐛 Bug Fixes
- Don't show
Unable to access microphone
when cancelling screensharing dialog (#2005). Fixes vector-im/element-web#19533 and vector-im/element-web#19533. Contributed by @SimonBrandner. - Strip direction override characters from display names (#1992). Fixes vector-im/element-web#1712 and vector-im/element-web#1712.
v15.0.0
===================================================================================================
🚨 BREAKING CHANGES
- Use
ICallFeedOpts
in theCallFeed
constructor. To construct a newCallFeed
object you have to passICallFeedOpts
e.g. `const callFeed = new CallFeed({client (#1964). Contributed by SimonBrandner.
✨ Features
- Make threads use 'm.thread' relation (#1980).
- Try to answer a call without video if we can't access the camera (#1972). Fixes vector-im/element-web#17975 and vector-im/element-web#17975. Contributed by SimonBrandner.
- Make
opts
inimportRoomKeys()
optional (#1974). Contributed by SimonBrandner. - Enable TypeScript declaration maps (#1966). Contributed by Alexendoo.
🐛 Bug Fixes
- Fix
requestVerificationDM
with chronologicalpendingEventOrdering
(#1943). Contributed by freaktechnik.
v14.0.1
===================================================================================================
🚨 BREAKING CHANGES
- Support for call upgrades.
setLocalVideoMuted()
andsetMicrophoneMuted()
are nowasync
and return the new mute state (#1827). Contributed by SimonBrandner.
✨ Features
- Implement file versioning for tree spaces (#1952).
- Allow answering calls without audio/video (#1950). Contributed by SimonBrandner.
- Add
bound
toIThreepid
(#1941). Contributed by SimonBrandner. - Add
trusted_locally
toTrustInfo
(#1942). Contributed by SimonBrandner.
🐛 Bug Fixes
- Fix incorrect return value type in getJoinedRooms() (#1959). Contributed by psrpinto.
- Make sure to set
callLengthInterval
only once (#1958). Fixes vector-im/element-web#19221 and vector-im/element-web#19221. Contributed by SimonBrandner. - Fix event partitioning from non threading ready clients (#1948).
- Ensure unencrypted fields get exposed by getEffectiveEvent() (#1938). Fixes vector-im/element-web#19062 and vector-im/element-web#19062.
v14.0.0
=============================================================================================================
🚨 BREAKING CHANGES
- Support for call upgrades.
setLocalVideoMuted()
andsetMicrophoneMuted()
are nowasync
and return the new mute state (#1827). Contributed by SimonBrandner.
✨ Features
- Implement file versioning for tree spaces (#1952).
- Allow answering calls without audio/video (#1950). Contributed by SimonBrandner.
- Add
bound
toIThreepid
(#1941). Contributed by SimonBrandner. - Add
trusted_locally
toTrustInfo
(#1942). Contributed by SimonBrandner.
🐛 Bug Fixes
- Fix incorrect return value type in getJoinedRooms() (#1959). Contributed by psrpinto.
- Make sure to set
callLengthInterval
only once (#1958). Fixes vector-im/element-web#19221 and vector-im/element-web#19221. Contributed by SimonBrandner. - Fix event partitioning from non threading ready clients (#1948).
- Ensure unencrypted fields get exposed by getEffectiveEvent() (#1938). Fixes vector-im/element-web#19062 and vector-im/element-web#19062.
v13.0.0
===================================================================================================
✨ Features
- Add
getHistoryVisibility()
andgetGuestAccess()
(#1940). Contributed by SimonBrandner. - Add
getBuffer()
toQRCodeData
(#1927). Contributed by SimonBrandner. - Added
createDataChannel()
andCallEvent.DataChannel
toMatrixCall
for creating and listening for WebRTC datachannels. (#1929). Contributed by robertlong. - Add file locking to MSC3089 branches (#1909).
- Add
hasBeenCancelled
toVerificationBase
(#1915). Contributed by SimonBrandner. - Add
ISasEvent
(#1908). Contributed by SimonBrandner. - Count notifications in encrypted rooms client-side (#1872). Fixes vector-im/element-web#15393 and vector-im/element-web#15393. Contributed by SimonBrandner.
- Exclude opt-in Element performance metrics from encryption (#1897).
🐛 Bug Fixes
- Fix race on automatic backup restore (#1936). Fixes vector-im/element-web#17781 and vector-im/element-web#17781.
v12.5.0
===================================================================================================
✨ Features
- [Release] Exclude opt-in Element performance metrics from encryption (#1901).
- Give
MatrixCall
the capability to emitLengthChanged
events (#1873). Contributed by SimonBrandner. - Improve browser example (#1875). Contributed by psrpinto.
- Give
CallFeed
the capability to emit on volume changes (#1865). Contributed by SimonBrandner.
🐛 Bug Fixes
- Fix verification request cancellation (#1871).
v12.4.1
===================================================================================================
🔒 SECURITY FIXES
- Fix a security issue with message key sharing. See https://matrix.org/blog/2021/09/13/vulnerability-disclosure-key-sharing for details.
v12.4.0
===================================================================================================
🦖 Deprecations
- Deprecate groups APIs. Groups are no longer supported, only Synapse has support. They are being replaced by Spaces which build off of Rooms and are far more flexible. (#1792).
✨ Features
- Add method for including extra fields when uploading to a tree space (#1850).
🐛 Bug Fixes
- Fix broken voice calls, no ringing and broken call notifications (#1858). Fixes vector-im/element-web#18578 vector-im/element-web#18538 and vector-im/element-web#18578. Contributed by SimonBrandner.
- Revert "Fix glare related regressions" (#1857).
- Fix glare related regressions (#1851). Fixes vector-im/element-web#18538 and vector-im/element-web#18538. Contributed by SimonBrandner.
- Fix temporary call messages being handled without call (#1834). Contributed by Palid.
- Fix conditional on returning file tree spaces (#1841).
v12.3.1
===================================================================================================
🐛 Bug Fixes
- Fix multiple VoIP regressions (#1860).
v12.3.0
===================================================================================================
✨ Features
- Support for MSC3291: Muting in VoIP calls (#1812). Contributed by SimonBrandner.
- Support for screen-sharing using multi-stream VoIP (MSC3077) (#1685). Contributed by SimonBrandner.
- Handle DTMF support (#1813). Contributed by SimonBrandner.
🐛 Bug Fixes
- [Release] Fix glare related regressions (#1854). Contributed by SimonBrandner.
- Fix the types in shipped package (#1842). Fixes vector-im/element-web#18503 and vector-im/element-web#18503.
- Fix error on turning off screensharing (#1833). Fixes vector-im/element-web#18449. Contributed by SimonBrandner.
- Fix blank profile in join events (#1837). Fixes vector-im/element-web#18321.
- fix TURN by fixing regression preventing multiple ICE candidates from sending. (#1838).
- Send
user_hangup
reason if the opponent supports it (#1820). Fixes vector-im/element-web#18219. Contributed by SimonBrandner. - Apply hidden char check to rawDisplayName too (#1816).
- Only clear bit 63 when we create the IV (#1819).
v12.2.0
===================================================================================================
✨ Features
- Improve calculateRoomName performances by using Intl.Collator #1801
- Switch callEventHandler from listening on
event
toRoom.timeline
#1789 - Expose MatrixEvent's internal clearEvent as a function #1784
🐛 Bug Fixes
- Clean up Event.clearEvent handling to fix a bug where malformed events with falsey content wouldn't be considered decrypted #1807
- Standardise spelling and casing of homeserver, identity server, and integration manager #1782
v12.1.0
================================================================================================== Full Changelog
- No changes from rc.1
Configuration
-
If you want to rebase/retry this MR, click this checkbox.
This MR has been generated by Renovate Bot.