Conversation
…20827) Fixes #20826. Summary of the issue: NVDA can crash during startup when its portable directory contains Chinese characters and Chinese word segmentation is initialized. NVDA passes dictionary paths as UTF-8, but the bundled cppjieba revision opens them using narrow-character file operations. On systems using an incompatible Windows ANSI code page, the dictionary cannot be opened, causing cppjieba to call abort() and terminate NVDA. Description of user facing changes: Portable copies of NVDA can start normally from directories containing Chinese characters when Chinese word segmentation is enabled. Description of developer facing changes: Update the cppjieba submodule to v5.6.7 and the corresponding dependency revision in the developer documentation. cppjieba changes: All commits and file changes from NVDA’s previous revision to v5.6.7. limonp changes: Changes to cppjieba’s limonp dependency. cppjieba release notes: Release notes for cppjieba versions. Description of development approach: Use the upstream Windows Unicode path fix from cppjieba PR #218, first released in v5.6.4 and included in v5.6.7. This converts UTF-8 paths to wide-character paths before opening resource files on Windows. This PR targets beta because Chinese word segmentation was introduced in NVDA 2026.3, and the release policy allows fixes for bugs introduced in the current release cycle.
Fixes #20808 Summary of the issue: In frozen builds, winrt.windows.foundation.collections is missing from library.zip, and winrt._winrt_windows_foundation_collections.pyd is absent from the distribution root. As soon as bleak discovers a Bluetooth Low Energy device, it fails with: ModuleNotFoundError: No module named 'winrt.windows.foundation.collections' This makes BLE device discovery unusable in released builds, including 2026.3 beta 1. It does not reproduce when running from source, where the package is importable from the virtual environment. The other winrt projections bleak needs (winrt.windows.foundation, winrt.windows.devices.bluetooth and friends, winrt.windows.storage.streams) are all bundled correctly; this is the only one missing. Description of user facing changes: Bluetooth Low Energy device discovery works in frozen builds, so BLE braille displays can be detected and connected. Description of developer facing changes: None. Description of development approach: winrt.windows.foundation.collections is never imported from Python source. The only importers are the compiled winrt projection modules, which import it at C level when they are initialised, so py2exe's modulefinder never sees a reference to it and leaves it out of the bundle. The package is therefore listed explicitly in the packages option, alongside the other packages that have to be bundled because they are not reachable by static analysis. Its __init__ imports winrt._winrt_windows_foundation_collections, so py2exe picks up the extension module from there; the package has no subpackages, so the py2exe issue 113 caveat noted above the list does not apply.
Fixes #20750 Summary of the issue: 3 flashes per second or more should be avoided according to WCAG to prevent seizures w3.org/WAI/WCAG22/Understanding/three-flashes.html Shifting through the magnifier colour filter can happen much faster than this Description of user facing changes: Prevent rapidly cycling through the magnifier colour filter through the gesture and magnifier settings Description of developer facing changes: none Description of development approach: add debounce fillter
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.