Conversation
The available list was only fetched when the cache was over 5 hours old, so new releases didn't appear until a manual refresh, and switching the data source kept showing the previous source's cached list. - Always fetch once per launch, regardless of cache age. - Refresh after signing in; with the Apple data source, restart a refresh that started without a session. - Refresh immediately when the data source changes. - Becoming active no longer cancels a running full refresh (it still replaces a quick installed-only rescan). - Ignore errors from a refresh that was cancelled to be restarted. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The Apple and Xcode Releases sources identify releases differently, so the refresh that now runs right after switching made every release look new and posted a "New Xcode version available" notification. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch has not been deployed
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.
Summary
The available Xcode list was only fetched when the cache was more than 5 hours old. New releases (e.g. a new beta) didn't appear until a manual refresh, and switching the data source kept showing the previous source's cached list.
updateTask?.cancel()inupdateIfNeeded). It still replaces a quick installed-only rescan, as before.URLError.cancelled).update()gainsrestartingInFlightUpdate:; the toolbar's Refresh button now wraps the call in a closure.Tests
test_UpdateIfNeeded_FirstCallThisLaunch_RefreshesEvenWithFreshCache(also checks re-activation doesn't cancel it)test_Update_OnlyRestartsRunningFullRefreshWhenAskedtest_UpdateIfNeeded_OldTaskDoesNotClearReplacementTasknow marks the launch refresh as done, since it tests the installed-only path.🤖 Generated with Claude Code