Skip to content

For an add-on that overrides compatibility and is enabled, an AssertionError is raised if an add-on with the same ID is installed from an external source #15417

@cary-rowen

Description

@cary-rowen

Steps to reproduce:

  1. Install the compatibility-breaking version of NVDA-Alpha.
  2. Override compatibility to install or enable any add-ons.
  3. Install the add-on again from an external source with the same ID as in step 2 (can be a different version).

Actual behavior:

The add-on could not be installed and an assertion error was received.

IO - speech.speech.speak (18:36:21.549) - MainThread (14180):
Speaking ['Log fragment start position marked, press again to copy to clipboard']
IO - inputCore.executeGesture (18:36:22.844) - winInputHook (8628):
Input: kb(laptop):enter
DEBUG - RPC process 4688 (nvda_slave.exe) (18:36:23.029) - Dummy-9 (12660):
languageHandler.setLocale:
Win32 locale string from locale code is Chinese (Simplified)_China.936
DEBUG - RPC process 4688 (nvda_slave.exe) (18:36:23.077) - Dummy-9 (12660):
languageHandler._setPythonLocale:
set python locale to Chinese (Simplified)_China.936
DEBUG - NVDAHelper.nvdaControllerInternal_installAddonPackageFromPath (18:36:23.131) - Dummy-9 (12660):
Requesting installation of add-on from D:\git\teleNVDA\TeleNVDA-2023.9.7-dev.nvda-addon
IO - speech.speech.speak (18:36:23.497) - MainThread (14180):
Speaking ['英文']
IO - speech.speech.speak (18:36:23.518) - MainThread (14180):
Speaking ['Add-on not compatible', 'dialog', 'Warning: add-on is incompatible: Tele NVDA remote assistance\n2023.9.7-dev. Check for an updated version of this add-on if\npossible. The last tested NVDA version for this add-on is 2023.1,\nyour current NVDA version is 2024.1. Installation may cause unstable\nbehavior in NVDA.\nProceed with installation anyway? ', CancellableSpeech (still valid)]
IO - speech.speech.speak (18:36:23.523) - MainThread (14180):
Speaking ['About add-on...', 'button', 'Alt+', CharacterModeCommand(True), 'a', CharacterModeCommand(False), CancellableSpeech (still valid)]
IO - inputCore.executeGesture (18:36:36.725) - winInputHook (8628):
Input: kb(laptop):y
ERROR - unhandled exception (18:36:36.740) - MainThread (14180):
Traceback (most recent call last):
  File "wx\core.pyc", line 3407, in <lambda>
  File "gui\addonGui.pyc", line 584, in handleRemoteAddonInstall
  File "gui\addonGui.pyc", line 487, in installAddon
  File "_addonStore\models\version.pyc", line 65, in enableCompatibilityOverride
AssertionError
DEBUGWARNING - NVDAObjects.IAccessible.IAccessible._get_IAccessibleRole (18:36:36.806) - MainThread (14180):
accRole failed: (-2147024809, '参数错误。', (None, None, None, 0, None))
IO - speech.speech.speak (18:36:36.892) - MainThread (14180):
Speaking ['y', EndUtteranceCommand()]
IO - speech.speech.speak (18:36:36.976) - MainThread (14180):

Expected behavior:

The add-on should be installed.
If an installed add-on is disabled, an add-on with the same ID can be installed successfully.

NVDA logs, crash dumps and other attachments:

System configuration

NVDA installed/portable/running from source:

Installed

NVDA version:

NVDA-alpha-29134

Windows version:

Windows 10 22H2 (AMD64) build 19045.3393

Name and version of other software in use when reproducing the issue:

None

Other information about your system:

None

Other questions

Does the issue still occur after restarting your computer?

Yes

Have you tried any other versions of NVDA? If so, please report their behaviors.

no

If NVDA add-ons are disabled, is your problem still occurring?

No

Does the issue still occur after you run the COM Registration Fixing Tool in NVDA's tools menu?

Yes

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature/addon-storeFeatures / behavior of the add-on Storep5https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#prioritytriagedHas been triaged, issue is waiting for implementation.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions