Skip to content

Add automatic app update check setting#557

Open
Reekin wants to merge 3 commits intoDimillian:mainfrom
Reekin:feat/about-auto-update-toggle-clean
Open

Add automatic app update check setting#557
Reekin wants to merge 3 commits intoDimillian:mainfrom
Reekin:feat/about-auto-update-toggle-clean

Conversation

@Reekin
Copy link

@Reekin Reekin commented Mar 15, 2026

Added an option in About to toggle auto update.

I'm using a locally built, modified version and don't want to trigger auto-updates. I believe this is a common use case.

@Dimillian
Copy link
Owner

@codex review

Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 10ffc41b86

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Copy link

@xkonjin xkonjin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review — Auto Update Check Setting

Overall clean implementation. A few observations:

  1. useEffect dependency array in useUpdater.ts: Adding autoCheckOnMount to the deps array of the startup-check effect means toggling the setting at runtime will re-trigger (or suppress) the check. If the user flips the toggle while the app is open, checkForUpdates fires again. This is probably fine but worth noting — if you only want it on mount, consider a ref instead.

  2. Settings section props threading: The SettingsAboutSection now receives the full appSettings object and spreads it back with one field toggled via ...appSettings, automaticAppUpdateChecksEnabled: !appSettings.automaticAppUpdateChecksEnabled. This works, but if another settings update is in-flight, you could overwrite it. A callback-style updater (prev => ({ ...prev, field: !prev.field })) would be safer against race conditions.

  3. Test coverage: Good — the new renderAboutSection helper and the useUpdater test for autoCheckOnMount: false cover the happy paths. One gap: no test for what happens when the setting is toggled from true to false while an update check is already in progress.

  4. Default value: true is the right default for auto-update checks. The Rust-side Default impl and the TS buildDefaultSettings are consistent — nice.

Minor: the test file now imports getAppBuildType and isMobileRuntime (lines 16, 21) — these seem unrelated to this PR (pre-existing mock gaps?). Not blocking, just noisy.

@Reekin
Copy link
Author

Reekin commented Mar 15, 2026

I've addressed the review comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants