From 935aeb8b322ae63973db9851cc8da0a54f971984 Mon Sep 17 00:00:00 2001 From: MinerAleYT Date: Thu, 18 Jun 2026 20:54:55 +0200 Subject: [PATCH 1/3] chore: update plugin detailsURL to point to TypeWhisper documentation --- TypeWhisperPluginSDK/Plugins/MistralAIPlugin/manifest.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TypeWhisperPluginSDK/Plugins/MistralAIPlugin/manifest.json b/TypeWhisperPluginSDK/Plugins/MistralAIPlugin/manifest.json index 85ae4b16..fd7fc67f 100644 --- a/TypeWhisperPluginSDK/Plugins/MistralAIPlugin/manifest.json +++ b/TypeWhisperPluginSDK/Plugins/MistralAIPlugin/manifest.json @@ -19,5 +19,5 @@ "iconURL": "https://www.typewhisper.com/brand-logos/mistral/logo.svg", "principalClass": "MistralAIPlugin", "requiresAPIKey": true, - "detailsURL": "https://mistral.ai/" -} + "detailsURL": "https://www.typewhisper.com/addons/mistral/" +} \ No newline at end of file From d69c6a27ef216f36626660fdf70e870de87d00b3 Mon Sep 17 00:00:00 2001 From: MinerAle Date: Tue, 14 Jul 2026 18:47:42 +0200 Subject: [PATCH 2/3] Fix: Bypass updater local and CDN HTTP cache on check for updates --- TypeWhisper/App/TypeWhisperApp.swift | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/TypeWhisper/App/TypeWhisperApp.swift b/TypeWhisper/App/TypeWhisperApp.swift index 453b995d..a301e440 100644 --- a/TypeWhisper/App/TypeWhisperApp.swift +++ b/TypeWhisper/App/TypeWhisperApp.swift @@ -692,4 +692,12 @@ final class AppDelegate: NSObject, NSApplicationDelegate, SPUUpdaterDelegate { nonisolated func allowedChannels(for updater: SPUUpdater) -> Set { AppConstants.effectiveUpdateChannel.sparkleChannels } + + nonisolated func updater(_ updater: SPUUpdater, feedURLRequest originalRequest: URLRequest) -> URLRequest { + var request = originalRequest + request.cachePolicy = .reloadIgnoringLocalCacheData + request.setValue("no-cache", forHTTPHeaderField: "Cache-Control") + request.setValue("no-cache", forHTTPHeaderField: "Pragma") + return request + } } From 31a760e2958221f2c1542a7ba3d44381c18e6c41 Mon Sep 17 00:00:00 2001 From: MinerAle Date: Tue, 14 Jul 2026 20:15:31 +0200 Subject: [PATCH 3/3] chore: update Sparkle to 2.9.4 and migrate to feedParameters for cache busting --- .../xcshareddata/swiftpm/Package.resolved | 4 ++-- TypeWhisper/App/TypeWhisperApp.swift | 13 +++++++------ 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/TypeWhisper.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/TypeWhisper.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved index cba9f00e..8a146f7f 100644 --- a/TypeWhisper.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ b/TypeWhisper.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved @@ -68,8 +68,8 @@ "kind" : "remoteSourceControl", "location" : "https://github.com/sparkle-project/Sparkle.git", "state" : { - "revision" : "5581748cef2bae787496fe6d61139aebe0a451f6", - "version" : "2.8.1" + "revision" : "b6496a74a087257ef5e6da1c5b29a447a60f5bd7", + "version" : "2.9.4" } }, { diff --git a/TypeWhisper/App/TypeWhisperApp.swift b/TypeWhisper/App/TypeWhisperApp.swift index a301e440..a8a336cb 100644 --- a/TypeWhisper/App/TypeWhisperApp.swift +++ b/TypeWhisper/App/TypeWhisperApp.swift @@ -693,11 +693,12 @@ final class AppDelegate: NSObject, NSApplicationDelegate, SPUUpdaterDelegate { AppConstants.effectiveUpdateChannel.sparkleChannels } - nonisolated func updater(_ updater: SPUUpdater, feedURLRequest originalRequest: URLRequest) -> URLRequest { - var request = originalRequest - request.cachePolicy = .reloadIgnoringLocalCacheData - request.setValue("no-cache", forHTTPHeaderField: "Cache-Control") - request.setValue("no-cache", forHTTPHeaderField: "Pragma") - return request + nonisolated func feedParameters(for updater: SPUUpdater, sendingSystemProfile: Bool) -> [[String : String]] { + return [[ + "key": "nocache", + "value": String(Int(Date().timeIntervalSince1970)), + "displayKey": "", + "displayValue": "" + ]] } }