-
-
Notifications
You must be signed in to change notification settings - Fork 661
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Notifying users of available add-on updates #16636
Conversation
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
Co-authored-by: WangFeng Huang <[email protected]>
This comment was marked as resolved.
This comment was marked as resolved.
Really cool to see NV Access starting work on this. Thanks Sean for this great contribution. |
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
This comment was marked as resolved.
The feature is nice and I think that this can ship as is to be tested in alpha to get first public feedback. Though, I can see these little points that may be fixed/updated:
|
@CyrilleB79 thanks for looking into this:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good from docs point of view. Great work!
@coderabbitai review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 7
This comment was marked as off-topic.
This comment was marked as off-topic.
OK. Makes sense, especially when the download time is long.
Confirmed. Thanks!
Yes, it should be removed. But it is actually already. @nvdaes, I agree to add in the settings panel (at the end) the checkbox corresponding to the "Don't show me again" checkbox of the add-on store. Though, it is not mandatory to discuss and add it in the same PR. |
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
This comment was marked as off-topic.
Can we please keep conversation on topic for this PR, and create new issues for these. It's adding a lot of noise to the discussion here. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've seen the code for commits made today and also I've tested the Powershell scripts. For me it works as expected.
Fixes #16684 Summary of the issue: In #16636 / d7facd1, config.ConfigManager.BASE_ONLY_SECTIONS underwent a mutation from a set to a frozenset. Thhis modification hinders extensions from easily expanding this set. There are perfectly legit scenarios where an extension’s settings should not be overridden by profiles. Take webAccess, for instance: accessolutions/WebAccessForNVDA@4251aae/addon/globalPlugins/webAccess/config.py
Fixes #17110 Summary of the issue: Ever since #16636, users have been able to press the "update all" button to execute downloading and installing all the add-ons multiple times. This is because the update all button is disabled after the add-ons have finished downloading, not immediately after it is clicked, preventing subsequent activations. Description of user facing changes Users are unable to press update all button multiple times until add-ons finish downloading. Description of development approach Disable update all button immediately after first activation. Testing strategy: Manual testing by simulating slow internet updating multiple add-ons
Fixes nvaccess#17110 Summary of the issue: Ever since nvaccess#16636, users have been able to press the "update all" button to execute downloading and installing all the add-ons multiple times. This is because the update all button is disabled after the add-ons have finished downloading, not immediately after it is clicked, preventing subsequent activations. Description of user facing changes Users are unable to press update all button multiple times until add-ons finish downloading. Description of development approach Disable update all button immediately after first activation. Testing strategy: Manual testing by simulating slow internet updating multiple add-ons
Link to issue number:
Closes #15035
Summary of the issue:
Users would like a push notification on NVDA start-up letting them know if add-ons have available updates
Description of user facing changes
When starting NVDA, a dialog will appear notifying users of updatable add-ons if there are available updates.
This will only notify users if the available update is in the same channel as the installed add-on.
There is an "update all" button on the dialog and a list of add-ons with updates available.
There is also an "Open Add-on Store" button to open the add-on store to the updatable add-ons tab.
A setting to disable this. This is a combobox so that in future users can decide between:
Description of development approach
Created a scheduling module to schedule tasks on NVDA start up, using the schedule pip module.
This is so we can have conflict free scheduling. e.g. so NVDA's update notification won't clash with the add-on update notification.
Uses their suggested code to run a background thread for task scheduling: https://schedule.readthedocs.io/en/stable/background-execution.html
Changed much of the Add-on Store downloading code to be classmethods. This allows us to use it from the message dialog without creating a store instance.
Testing strategy:
Manual testing
See the manual test plan for the add-on store.
Unit testing
Unit testing to smoke test handling the daily job at startup
Known issues with pull request:
None
Code Review Checklist:
Summary by CodeRabbit
New Features
Enhancements
Documentation
Tests