feat(desktop): add manual "Check for Updates" button in web settings#1123
feat(desktop): add manual "Check for Updates" button in web settings#1123AriajSarkar wants to merge 11 commits intopingdotgg:mainfrom
Conversation
Add checkForUpdate IPC channel so the web renderer can trigger an update check on demand. Surface a Check for Updates button in Settings > About (desktop only) with contextual labels and error handling. - Add DesktopUpdateCheckResult type and DesktopBridge.checkForUpdate() - Wire UPDATE_CHECK_CHANNEL in preload and main process IPC handler - Add canCheckForUpdate/getCheckForUpdateButtonLabel logic helpers - Add DesktopUpdateCheckSection component in settings About section - Guard IPC handler when updater is not configured (local/dev builds) - Add 15 unit tests for new logic functions Closes pingdotgg#1107
|
Important Review skippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment Tip CodeRabbit can suggest fixes for GitHub Check annotations.Configure the |
…check # Conflicts: # apps/web/src/routes/_chat.settings.tsx
What Changed
checkForUpdateIPC channel (DesktopUpdateCheckResulttype,DesktopBridge.checkForUpdate())UPDATE_CHECK_CHANNELin preload + main process handler (reuses existingcheckForUpdates()canCheckForUpdate/getCheckForUpdateButtonLabelpure logic helpersWhy
The desktop app checks for updates automatically and has a native menu "Check for Updates…", but there's no way to trigger a check from the web UI. Users may not discover the menu item. This adds a simple, focused entry point in Settings → About.
Closes #1107 (already closed)
UI Changes
Checklist
Local Test:
v0.0.10->v0.0.11Note
Add manual "Check for Updates" button to desktop settings
DesktopUpdateCheckSectioncomponent to the Settings About page, visible only in Electron builds, with a button that checks for, downloads, or installs updates depending on current state.desktop:update-checkIPC channel in main.ts and exposeswindow.desktopBridge.checkForUpdate()via preload.ts.canCheckForUpdateandgetCheckForUpdateButtonLabelutilities in desktopUpdate.logic.ts to gate and label the button based on update state.desktopUpdateStateQueryOptions, and kept in sync viaonUpdateStatebridge events.Macroscope summarized 69e9ac7.