Skip to content
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

Since NVDA 2023.3 voice addons are no longer loaded #789

Open
pvagner opened this issue Sep 13, 2023 · 8 comments
Open

Since NVDA 2023.3 voice addons are no longer loaded #789

pvagner opened this issue Sep 13, 2023 · 8 comments

Comments

@pvagner
Copy link

pvagner commented Sep 13, 2023

Hello,
Recently NV Access have released NVDA 2003.3 Beta 1. Most likelly as a part of their addon store polishing they are now enforcing three part version numbering for the addons as well. When parsing addon manifest.ini RHVoice addons are no longer loading after the update.
Here is an excerpt from the NVDA log:

ERROR - addonHandler._getAvailableAddonsFromPath (19:17:59.682) - MainThread (5112):
Error loading Addon from path: C:\tmp\nvda\userConfig\addons\RHVoice-voice-Slovak-Ondro
Traceback (most recent call last):
  File "addonHandler\__init__.pyc", line 299, in _getAvailableAddonsFromPath
  File "addonHandler\addonVersionCheck.pyc", line 70, in isAddonCompatible
  File "addonHandler\addonVersionCheck.pyc", line 56, in isAddonTested
  File "addonHandler\addonVersionCheck.pyc", line 27, in _isAddonForceDisabled
  File "_addonStore\models\version.pyc", line 28, in _parseVersionFromVersionStr
ValueError: Version string not valid: 4.3.1003.10

Looking at the NVDA code I can see version is forced to be three numbers delimited by dot, and there's also a versionName key in the manifest, however I am unable to find out where this is documented.
Quick and hacky solution is changing the version number to be formatted as major.minor.patch.

@zstanecic
Copy link
Contributor

zstanecic commented Sep 13, 2023 via email

@pvagner
Copy link
Author

pvagner commented Sep 13, 2023

NVDA issue does also exist. Most likelly for the 2023.3 version this is not going to be enforced after all.

@Olga-Yakovleva
Copy link
Member

Some questions for people who are up-to-date on NVDA developments.

What is the deadline for addons to comply? Is this version format final or still in development?

It's a difficult requirement for RHVoice. To make things more convenient for users, each voice addon includes both the voice and the language pack, each of which is versioned independently, and the addon may also need an update for other reasons, which requires a separate version part. Right now the addon version consists of:

  1. Two-part voice version. Changing that to a big single number will confuse users.

  2. The part encoding the language version, which already joins the original two-part language version into a single number.

  3. The number reserved to be incremented if the update of the addon is not related to a newer version of the language or voice, but to something else.

I don't want to merge the first and second numbers into one and thus create user confusion. So the only way RHVoice has to adapt is to split all its voice addons into pure voice and language addons. We used to do that, and it was a source of confusion too, so we started including language data with voices. Does the Store support dependencies like traditional package managers?

@zstanecic
Copy link
Contributor

zstanecic commented Sep 15, 2023 via email

@Olga-Yakovleva
Copy link
Member

Ok, thank you, @zstanecic.

@pvagner
Copy link
Author

pvagner commented Sep 15, 2023

Have you considered rewriting the NVDA addon so it will manage the voices internally similar how android app does it?
As @zstanecic said this time this was an unintentional error on NVDA's side. For the NVDA 2023.3 nothing is about to change.
To the future they are looking at making the version numbering more semantic so they can calculate upgrades more predictably in their addon store. Perhaps there are other reasons too.
Anyways they are not yet decided so given the fact the error is now resolved we can either close this or see this as a reminder that we will need to check later if at all and how to proceed later on.

@zstanecic
Copy link
Contributor

zstanecic commented Sep 15, 2023 via email

@zstanecic
Copy link
Contributor

This can be closed.

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

No branches or pull requests

3 participants