You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Uninstall Completion Sheet Freeze & .terminateLater Deadlock Fix (TunnelManager, AppUninstallPerformer, AppUninstaller): Added TunnelManager.tearDownForUninstall() to cleanly stop any active tunnel/proxy, remove configuration/status observers, cancel reconnects/watchdogs/telemetry/LAN proxy, clear hasUnsavedTrafficSamples, and invalidate the cached NEVPNManager before deleting network extension configurations; replaced AppTermination.request() (NSApplication.terminate(_:)) with direct process exit (Darwin.exit(EXIT_SUCCESS)) inside AppUninstaller.finalizeUninstall(...), eliminating the 30-second .terminateLater modal freeze and termination cancellation on the completion sheet.
App Sandbox Direct Bundle Removal Fallback & Deferred Self-Container Cleanup (AppUninstaller, AppUninstallPerformer, AppUninstallView): When FileManager.default.trashItem is denied in App Sandbox due to lack of ~/.Trash/ access, AppUninstaller.finalizeUninstall now automatically falls back to direct bundle deletion (removeItem) via the /Applications/ read-write entitlement, backed by a detached /bin/sh post-exit cleanup helper; self-container preference removal (cleanHostResiduals()) is deferred until all windows are ordered out, window focus is restored after SecurityAgent prompts close, and the app automatically closes and deletes itself 800ms after completion.