Repository navigation
Make automatic addon update checks configurable - #654
Merged
knipknap merged 3 commits intoOct 31, 2026
Merged
Conversation
|
This pull request was closed automatically because its description does not follow the pull request template. Problems found:
Please edit the pull request description to answer every section and to tick every checkbox; as soon as it complies, the pull request is reopened automatically. See CONTRIBUTING.md. |
|
The description now follows the pull request template, so this pull request was reopened automatically. |
3 tasks done
knipknap
force-pushed
the
issue-651-addon-update-setting
branch
from
October 31, 2026 15:00
242d7aa to
79eb96c
Compare
The screenshot is embedded as the General page overview in the docs of every language, so scrolling it down to the Behavior section changes what those pages show. Restore the previous script and image; the reformatting of the new row stays, since the pinned ruff format requires it.
knipknap
force-pushed
the
issue-651-addon-update-setting
branch
from
October 31, 2026 15:08
79eb96c to
1653b04
Compare
Contributor
|
Thank you for the PR! The Windows failure is unrelated, so merging. |
This branch was successfully 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.
What does this PR change?
This adds a persisted General preference for automatic addon update checks. The startup update command now respects that preference, while manual addon management remains unchanged. The change also adds focused configuration and update-command tests, updates the settings documentation in every maintained language, and refreshes the General settings screenshot.
Closes #651.
Why did you choose this specific architectural approach?
The implementation follows Rayforge's existing application-update preference: the value lives in
Config, is changed through a setter that emits the normalchangedsignal, and is serialized with the rest of the application settings. The startup-only policy remains inUpdateCommand.check_for_updates_on_startup(), which already owns scheduling of that background check. This keeps the addon manager usable for explicit user actions and avoids coupling general configuration policy into its registry and installation code. The setting defaults to enabled to preserve existing behavior for current users.I considered hard-disabling the check and adding the condition inside
AddonManager, but the former gives users no control and the latter would also affect explicit checks rather than only startup behavior.How did you manually test this locally?
pixi run lint; Ruff, Flake8, Pyflakes, Pyright, and AppStream validation all passed.pixi run pytest -v tests/core/test_config.py tests/addon_mgr/test_addon_update_cmd.py; all 34 tests passed on Python 3.15.pixi run site-formatandpixi run screenshot app-settings:general, then visually verified the regenerated screenshot shows the new preference in the General settings page.Checklist
this code.