Skip to content

The Add-on Store no longer fails to reopen after an add-on installation and before NVDA restart#19901

Merged
SaschaCowley merged 2 commits intonvaccess:betafrom
CyrilleB79:addonStoreFix
Apr 9, 2026
Merged

The Add-on Store no longer fails to reopen after an add-on installation and before NVDA restart#19901
SaschaCowley merged 2 commits intonvaccess:betafrom
CyrilleB79:addonStoreFix

Conversation

@CyrilleB79
Copy link
Copy Markdown
Contributor

Link to issue number:

Fixes #19900

Summary of the issue:

After an add-on had been installed and the Store closed, the Store could not be reopened until NVDA was restarted.

Description of user facing changes:

The Add-on Store can now be reopened after an add-on has been installed, even before NVDA has been restarted.
For add-ons pending install, the install date is not provided since the installation is completed after NVDA has restarted.
Add-ons without install date are sorted after all other add-ons.

Description of developer facing changes:

N/A

Description of development approach:

  • _AddonManifestModel.installDate now returns None if the add-on is not completely installed; take this into account when using this value.
  • If the installDate is None, use datetime.max to sort the add-on after all other ones.

Testing strategy:

Manual tests:

Known issues with pull request:

None

Code Review Checklist:

  • Documentation:
    • Change log entry
    • User Documentation
    • Developer / Technical Documentation
    • Context sensitive help for GUI changes
  • Testing:
    • Unit tests
    • System (end to end) tests
    • Manual testing
  • UX of all users considered:
    • Speech
    • Braille
    • Low Vision
    • Different web browsers
    • Localization in other languages / culture than English
  • API is compatible with existing add-ons.
  • Security precautions taken.

@CyrilleB79
Copy link
Copy Markdown
Contributor Author

I have opened this PR against beta.
I wonder if it is an API-breaking change.
_AddonManifestModel is private, but AddonManifestModel inherits from it and is public.

And should I add an item in the change for developers (depending if it is considered API-breaking)...

@CyrilleB79 CyrilleB79 changed the title The Add-on Store do not fail to reopen after an add-on installation and before NVDA restart The Add-on Store no longer fails to reopen after an add-on installation and before NVDA restart Apr 3, 2026
@CyrilleB79 CyrilleB79 marked this pull request as ready for review April 3, 2026 15:24
@CyrilleB79 CyrilleB79 requested a review from a team as a code owner April 3, 2026 15:24
@CyrilleB79 CyrilleB79 requested a review from seanbudd April 3, 2026 15:24
seanbudd
seanbudd previously approved these changes Apr 7, 2026
@seanbudd seanbudd added this to the 2026.1 milestone Apr 7, 2026
@seanbudd
Copy link
Copy Markdown
Member

seanbudd commented Apr 7, 2026

I think it should be considered API breaking and a warning should happen for the highest level public classes which inherit (InstalledAddonStoreModel and AddonManifestModel)

@seanbudd seanbudd dismissed their stale review April 7, 2026 02:28

api brk changes

@SaschaCowley SaschaCowley requested a review from seanbudd April 8, 2026 23:46
@SaschaCowley SaschaCowley merged commit 99c8038 into nvaccess:beta Apr 9, 2026
39 checks passed
@CyrilleB79
Copy link
Copy Markdown
Contributor Author

Thanks.

In the first place, why have we made public classe inherit from private ones? This makes API checking more difficult...
To be kept in mind for future devs IMO.

@CyrilleB79 CyrilleB79 deleted the addonStoreFix branch April 13, 2026 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants