feat(settings): add beta update toggle in general settings#1101
Conversation
Added a new toggle option in Settings → General to allow users to opt-in for beta updates. Changes include: - New `includeBetaUpdates` configuration key in Defaults with default value false - Localized strings for "Include Beta versions" toggle and description in 4 languages - Sparkle updater integration to check for beta channels when enabled - UI toggle in General settings with automatic update check when toggled on When enabled, users will receive early access to new features but may encounter instability.
This is a follow-up fix to the beta update feature. The previous commit added beta update toggle but missed updating the debug feed URL to match the local testing server configuration. Changed SUFeedURL in Info-debug.plist from GitHub raw content to localhost:8000, ensuring debug builds correctly use the local appcast.xml for testing.
|
Is this only for the UI? I wasn't able to find the URL/updater source that is beta. I could see this in Sparkle update: func allowedChannels(for updater: SPUUpdater) -> Set<String> {
Defaults[.includeBetaUpdates] ? Set(["beta"]) : []
} |
| <true/> | ||
| <key>SUFeedURL</key> | ||
| <string>https://raw.githubusercontent.com/tisfeng/Easydict/main/appcast.xml</string> | ||
| <string>http://localhost:8000/appcast.xml</string> |
There was a problem hiding this comment.
local appcast.xml url, for debug
| func feedURLString(for _: SPUUpdater) -> String? { | ||
| var feedURLString = | ||
| "https://raw.githubusercontent.com/tisfeng/Easydict/main/appcast.xml" | ||
| #if DEBUG | ||
| feedURLString = "http://localhost:8000/appcast.xml" | ||
| #endif | ||
| return feedURLString |
There was a problem hiding this comment.
This code has no actual changes; it only performed a refactor https://github.com/tisfeng/Easydict/pull/1101/changes#r2780336065, replacing the debug code feedURLString here with the SUFeedURL from Info-debug.plist.
There was a problem hiding this comment.
Run command python3 -m http.server in Easydict root directory can host a local url http://localhost:8000/appcast.xml for debug
This PR only implements the update functionality for Sparkle's beta channel. Currently, I have not released a new beta update version; this will only take effect when the next update is released. For details, please refer to the official Sparkle documentation.
|

Added a new toggle option in Settings → General to allow users to opt-in for beta updates.
Changes include:
includeBetaUpdatesconfiguration key in Defaults with default value falseWhen enabled, users will receive early access to new features but may encounter instability.
See in #1090 (comment)