chore: remove ZMUser.selfUser(inUserSession:) - WPB-20362#4260
chore: remove ZMUser.selfUser(inUserSession:) - WPB-20362#4260
Conversation
There was a problem hiding this comment.
Pull request overview
This PR refactors the codebase to remove the deprecated ZMUser.selfUser(inUserSession:) method and replace all usages with the more direct ZMUser.selfUser(in: viewContext) API. This simplifies the code by eliminating an unnecessary abstraction layer.
Changes:
- Removed the
ZMUser.selfUser(inUserSession:)method definition from ZMUser header and implementation files - Updated all call sites to use
ZMUser.selfUser(in: viewContext)instead ofZMUser.selfUser(inUserSession:) - Refactored
ZMSearchUserto store a weak reference toviewContextinstead ofcontextProvider - Fixed typos in variable names (converation → conversation, searchUserViewConroller → searchUserViewController)
- Minor code cleanup including import ordering and whitespace removal
Reviewed changes
Copilot reviewed 29 out of 29 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| wire-ios/Wire-iOS/Sources/UserInterface/Settings/DebugActions.swift | Updated to use new selfUser API |
| wire-ios/Wire-iOS/Sources/UserInterface/SelfProfile/SelfProfileViewController.swift | Updated to use new selfUser API and removed intermediate variable |
| wire-ios/Wire-iOS/Sources/UserInterface/MainController/ZClientViewController+ShowContentDelegate.swift | Fixed typo in variable name, added @mainactor annotation to Task |
| wire-ios/Wire-iOS/Sources/Helpers/syncengine/ZMUser+Self.swift | Updated static helper methods to use new selfUser API |
| wire-ios/Wire-iOS/Sources/Developer/DeveloperTools/DeveloperToolsViewModel.swift | Updated to use new selfUser API |
| wire-ios/Wire-iOS/Sources/AuthenticatedRouter.swift | Fixed typo in parameter name (converation → conversation) |
| wire-ios-sync-engine/Tests/Source/UserSession/SearchTaskTests.swift | Reordered imports alphabetically |
| wire-ios-sync-engine/Tests/Source/UserSession/SearchDirectoryTests.swift | Updated ZMSearchUser initializer to use viewContext parameter |
| wire-ios-sync-engine/Tests/Source/Synchronization/Strategies/SearchUserImageStrategyTests.swift | Updated ZMSearchUser initializer to use viewContext parameter |
| wire-ios-sync-engine/Source/UserSession/ZMUserSession/ZMUserSession+UserSession.swift | Updated three computed properties to use new selfUser API |
| wire-ios-sync-engine/Source/UserSession/ZMUserSession/ZMUserSession+Authentication.swift | Updated logout method to use new selfUser API |
| wire-ios-sync-engine/Source/UserSession/URLActionProcessors/DeepLinkURLActionProcessor.swift | Removed extraneous blank line |
| wire-ios-sync-engine/Source/UserSession/URLActionProcessors/ConnectToBotURLActionProcessor.swift | Updated ZMSearchUser initializer to use viewContext parameter |
| wire-ios-sync-engine/Source/SessionManager/UserSessionLoader.swift | Removed searchContext from EARService database contexts array |
| wire-ios-sync-engine/Source/SessionManager/SessionManager.swift | Updated to use new selfUser API |
| wire-ios-sync-engine/Source/SessionManager/SessionManager+Backup.swift | Refactored to move activeUserSession check earlier and use new selfUser API |
| wire-ios-data-model/Tests/Source/Model/UserTypeTests+Materialize.swift | Updated ZMSearchUser test helper to use viewContext parameter |
| wire-ios-data-model/Tests/Source/Model/User/ZMSearchUserTests.m | Updated all ZMSearchUser initializers from initWithContextProvider to initWithViewContext |
| wire-ios-data-model/Tests/Source/Model/User/ZMSearchUserTests+TeamUser.swift | Updated test helper to use viewContext parameter |
| wire-ios-data-model/Tests/Source/Model/User/ZMSearchUserTests+ProfileImages.swift | Updated test helper to use viewContext parameter |
| wire-ios-data-model/Tests/Source/Model/User/ZMSearchUserTests+Connections.swift | Updated ZMSearchUser initializer to use viewContext parameter |
| wire-ios-data-model/Tests/Source/Model/Observer/SearchUserSnapshotTests.swift | Updated test helper to use viewContext parameter |
| wire-ios-data-model/Tests/Source/Model/Observer/SearchUserObserverTests.swift | Updated test helper to use viewContext parameter |
| wire-ios-data-model/Tests/Source/Model/Observer/SearchUserObserverCenterTests.swift | Updated test helper to use viewContext parameter |
| wire-ios-data-model/Source/Public/ZMUser.h | Removed ZMUser (Utilities) category declaration |
| wire-ios-data-model/Source/Model/User/ZMUser.m | Removed ZMUser (Utilities) category implementation |
| wire-ios-data-model/Source/Model/User/ZMSearchUser.swift | Replaced contextProvider with viewContext property throughout, updated initializers and methods |
| wire-ios-data-model/Source/Model/User/UserType+Federation.swift | Removed unused Foundation import |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
wire-ios-sync-engine/Source/SessionManager/UserSessionLoader.swift
Outdated
Show resolved
Hide resolved
Test Results5 373 tests 5 346 ✅ 7m 21s ⏱️ Results for commit 75f527f. ♻️ This comment has been updated with latest results. Summary: workflow run #21661133269 |
netbe
left a comment
There was a problem hiding this comment.
LGTM:) I thought it was introduced to help out in tests
Issue
This PR removes some unnecessary complexity by replacing
ZMUser.selfUser(inUserSession:).Checklist
[WPB-XXX].UI accessibility checklist
If your PR includes UI changes, please utilize this checklist: