Update Rust crate matrix-sdk to 0.17.0#51
Open
oxide-renovate[bot] wants to merge 1 commit intomainfrom
Open
Conversation
Contributor
Author
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.16.0→0.17.0Release Notes
matrix-org/matrix-rust-sdk (matrix-sdk)
v0.17.0: matrix-sdk 0.17.0Compare Source
What's Changed
Features
Room::is_dmwas renamed toRoom::compute_is_dmto match its behavior, since it'll now compute and cache the result. A new synchronousRoom::is_dmfunction was added which centralizes the logic of checking if something is a DM based on that cached value and the providedDmRoomDefinition.Room::sync_memberswill also now compute active service members. (#6537)RoomInfo. RequiresStateStore::save_changesto acquire state store lock and replacesRoom::set_room_infowith an atomic version,Room::update_room_info, which is also synchronized by the state store lock. (#6478)beaconandbeacon_infofields toRoomPowerLevelChanges, allowing callers to read and update the power levels required to send beacon (live location) message events and beacon info state events respectively. (#6540)DmRoomDefinitionas a parameter ofClientBuilderso we can specify it when creating a Client. Also added aRoom::is_dmmethod and added some logic to use the new DM definitions inClient::get_dm_roomsand when using message search. (#6490)ClientBuilder::with_enable_share_history_on_invite). (#6497)Client::get_dm_roomsfunction to get an iterator with the DMs for the provided user id. (#6487)m.key_backupprefix for MSC4287: Sharing key backup preference between clients. (#6410)matrix_sdk_ui::searchto perform searches for messages in a room or across all rooms. (#6394)experimental-push-secretsfeature. (#6432)room_versions()&account_moderation()toHomeserverCapabilities. (#6413)RoomSendQueue::redact. This includes local echoes for redaction events through the newLocalEchoContent::Redactionvariant. (#6250)native-tlsand remove all feature flags for selecting TLS backend, asrustlsis the now the only supported TLS backend. (#6409)HomeserverCapabilitiesandClient::homeserver_capabilities()to get the capabilities of the homeserver. This replacesClient::get_capabilities(). (#6371)matrix_sdk::error::Errorhas a new variantTimeoutwhich occurs when a cross-signing reset does not succeed after some period of time. (#6325)beacon_infostart event (MSC3672) is now included when computing the latest event for a room, so live location sharing sessions can be surfaced as a room's most recent activity. (#6295)EventCacheErroris nowCloneable, which implied marking a few other error types asCloneable, and wrapping a few other error variants withArc. (#6305)Client::event_cache().subscribe(). The unread counts will now also be available even if you used a previous version of sync (v2), as long as you've enabled the event cache beforehand. (#6253)room::reply::Eventhas a new fieldadd_mentionswhich is passed forward inroom::reply::make_reply_event. (#6270)Recovery::recover_and_fix_backupto automatically fix key storage backup if the private backup decryption key is missing, invalid or inconsistent with the public key. (#6252)OAuth::cached_server_metadata()that caches the authorization server metadata for a while. (#6217)QRCodeGrantLoginError::SecureChannelfor secure channel errors (#6141QRCodeGrantLoginError::UnexpectedMessagefor protocol message errors (#6141QRCodeGrantLoginError::LoginFailurefor login failure errors received from the other device (#6141QRCodeGrantLoginError::DeviceNotFoundfor when the requested device was not returned by the homeserver (#6141Client::subscribe_to_duplicate_key_upload_errorsfor listening to duplicate key upload errors from/keys/upload. (#6135)Room::pin_eventandRoom::unpin_event, which allow pinning and unpinning events from a room. These were extracted from thematrix_sdk_uicrate, with no changes in functionality. (#6106)LatestEventValue::RemoteInviteis added to handle a Latest Event for invite room. (#6056)Room::set_own_member_display_nameto set the current user's display name within only the one single room (can be used for /myroomnick functionality). (#5981)MessageLikeandRawMessageLikeevents through aRoomnow returns the usedEncryptionInfo, if any. (#5936)new_prefixes have been removed, thusRoom::new_latest_eventbecomes and overwrites theRoom::latest_eventvalue. The new Latest Event values stored inRoomInfoare also erased once during the first update of the SDK. The new values will be re-calculated. The following types or functions are removed:PossibleLatestEvent,is_suitable_for_latest_event, andLatestEvent(replaced byLatestEventValue). See the documentation ofmatrix_sdk::latest_eventto learn about the new API. (#5624)RoomEventCache::find_event_relationsfor loading events relating to a specific event ID from the cache. (#5930)ClientwithBuilderStoreConfig::IndexedDb. (#5946)Intent.StartCallDmVoiceandIntent.JoinExistingDmVoice. (#6003)SlidingSync::unsubscribe_to_roomsandSlidingSync::clear_and_subscribe_to_rooms. (#6012)PollTimeouttype, used bySlidingSyncBuilder::requires_timeout. (#6005)Client::enable_share_history_on_inviteset to true will now trigger a download of all historical keys for the room in question from the client's key backup. (#6017)Breaking Changes
LiveLocationShareshas been renamed toLiveLocationsObserverandRoom::live_location_sharestoRoom::live_locations_observer. (#6446)Room::observe_live_location_shareshas been replaced byRoom::live_locations_observer. The new API returns aLiveLocationsObserverstruct with asubscribe()method that provides an initial snapshot (Vector<LiveLocationShare>) and a batched stream ofVectorDiffupdates, instead of emitting individualLiveLocationShareitems as beacon events arrive. The initial snapshot is loaded from the event cache on creation, includes the own user's shares (previously excluded), and properly handles share start/stop by listening to beacon_info state events. (#6385)Bugfix
sessionkey inOAuthCrossSigningResetInfo, allowing to provideAuthData::OAuthinCrossSigningResetHandle::auth(), to match the behavior described in the Matrix spec. (#6525)beacon_infostop events (live: false, MSC3672) are now also eligible as the latest event for a room, preventing the live location sharing item from disappearing from the room list summary once the session ends. (#6373)ClientBuilderusing the previouswebkpiverifier instead of platform verifier, otherwise these features will fail. (#6328)m.room.memberevent not belonging to the current user with non-joinmembership in order to prevent MSC4268 from leaking room keys in an unintuitive manner. (#6292) (#6457)QRCodeGrantLoginError::DeviceNotFoundinstead ofQRCodeGrantLoginError::DeviceIDAlreadyInUsefor when the new device is not returned by the homeserver. (#6141m.room.membercan be aLatestEventValuecandidate by relying onMembershipChangefor more control. (#6143)Client::fetch_client_well_knownas a fallback value. Otherwise, sometimes the server name is not available and we can't reload the well-known contents. (#5996)RoomLatestEventscan be registered even if its associatedRoomEventCacheisn't created yet. (#5947)SlidingSync::send_sync_requestwhen an asynchronous task panics or is cancelled. (#6316)Refactor
Encryption::{spin_lock_store, try_lock_once_store}through logic defined inOlmMachine, rather thanCrossProcessLock. (#6496)Encryption::{spin_lock_store, try_lock_once_store}so that lock dirtiness is determined entirely byCrossProcessLock, rather than logic defined byOlmMachine. Also enforce that lock generation is opaque by removingCrossProcessLockStoreGuardWithGeneration. (#6326)EventCachenow owns pagination tasks, and will run them to completion, even if a manual caller stopped polling the called future. (#6304)RoomEventCache::thread_paginationis now async and fallible. (#6280)UrlOrQueryenum was moved from theauthentication::oauthmodule to theutilsmodule. It can also be converted from aQueryString. (#6224)MatrixAuth::login_with_sso_callback()takes aUrlOrQueryinstead of aUrl, to make it more convenient to use withLocalServerBuilder/LocalServerRedirectHandle. (#6224)Room::report_content()no longer takes ascoreargument, because it was removed from the Matrix specification. TheReportedContentScoretype was removed too. (#6256)Client::enabled_thread_subscriptions()is now async and fallible, as it will check for both static enablement of the thread subscription feature as well as dynamically checking that the user's homeserver supports it.SessionChange::UnknownTokenis now a tuple variant containing anUnknownTokenErrorData. (#6241)EventCacheError::BackPaginationErrorhas been renamedPaginationError. (#6239)OAuthAPI to access the account management URL and its actions were removed. The methods available on theAuthorizationServerMetadatashould be used instead. (#6217)QRCodeGrantLoginError::UnableToCreateDevicehas been removed (#6141RoomEventCache::paginate_thread_backwardsmethod is replaced byRoomEventCache::thread_paginationwhich returns a newThreadPaginationtype, similar toRoomPagination. (#6174)Before:
RoomPaginationStatusis renamed toPaginationStatus. (#6174)ClientBuilder::cross_process_store_locks_holder_namewithClientBuilder::cross_process_store_configto allow specifying the configuration for the cross-process lock and whether it should act as a no-op (client used in a single process) or we should keep the previous behavior (clientused in multiple processes). (#6160)
v0.16.1: matrix-sdk 0.16.1Compare Source
What's Changed
Bugfix
sender_device_keysproperty of Olm-encryptedto-device events. (#6553)
Configuration
📅 Schedule: (in timezone America/Los_Angeles)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate.