Skip to content

Commit d09bd29

Browse files
authored
Include python3.dll in the binary distribution for use in add-ons. (#15674)
fixes #15594 Summary of the issue: NVDA add-ons that rely on .pyd files, like Resource Monitor, encounter compatibility issues due to the absence of python3.dll in NVDA's distribution. The issue becomes more complicated with NVDA's upgrade to Python 3.11, as it necessitates manually bundling multiple versions of python3.dll to maintain backward compatibility. Description of user facing changes None. Description of development approach In the setup.py file, bundle python3.dll from sys.base_prefix, which should be the python version used to build NVDA.
1 parent 3304bd4 commit d09bd29

2 files changed

Lines changed: 3 additions & 1 deletion

File tree

‎source/setup.py‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,8 @@ def _genManifestTemplate(shouldHaveUIAccess: bool) -> tuple[int, int, bytes]:
237237
("louis/tables",glob("louis/tables/*")),
238238
("COMRegistrationFixes", glob("COMRegistrationFixes/*.reg")),
239239
(".", glob("../miscDeps/python/*.dll")),
240-
(".", ['message.html' ])
240+
(".", ['message.html']),
241+
(".", [os.path.join(sys.base_prefix, "python3.dll")]),
241242
] + (
242243
getLocaleDataFiles()
243244
+ getRecursiveDataFiles("synthDrivers", "synthDrivers",

‎user_docs/en/changes.t2t‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ Please refer to [the developer guide https://www.nvaccess.org/files/nvda/documen
4747
Add-ons will need to be re-tested and have their manifest updated.
4848
- Added extension point: ``treeInterceptorHandler.post_browseModeStateChange``. (#14969, @nvdaes)
4949
- It is now possible to use plural forms in an add-on's translations. (#15661, @beqabeqa473)
50+
- Included python3.dll in the binary distribution for use by add-ons with external libraries utilizing the [stable ABI https://docs.python.org/3.11/c-api/stable.html]. (#15674, @mzanm)
5051
- The ``BrailleDisplayDriver`` base class now has ``numRows`` and ``numCols`` properties to provide information about multi line braille displays.
5152
Setting ``numCells`` is still supported for single line braille displays and ``numCells`` will return the total number of cells for multi line braille displays. (#15386)
5253
-

0 commit comments

Comments
 (0)