Skip to content

2.5.9

Choose a tag to compare

@ChristosBouronikos ChristosBouronikos released this 19 Oct 16:49
· 4 commits to main since this release

Greek Math Reader 2.5.9 — equation speech crash fix

This release fixes a reproduced regression introduced in 2.5.0. The regression can stop equation speech in both Word and PDF, independently of the Word UI Automation setting.

Root cause

The last-reading feature converted NVDA's configuration section with dict(section). NVDA's AggregatedSection iterates keys but does not expose keys(). Python therefore treated the keys as key/value pairs and raised:

ValueError: dictionary update sequence element #0 has length ...; 2 is required

This happened after equation speech generation. The error handler repeated the same conversion and raised again, so the speech sequence never returned. NVDA can play its error sound for the logged exception. Versions 2.1 and 2.2 do not contain this last-reading code.

Fixes

  • Uses dict(section.items()) for the last-reading record and unsaved Settings previews.
  • Ensures that optional history failures cannot interrupt normal equation speech or its error announcement.
  • Uses an NVDA-style configuration object in provider and Settings tests, rather than an ordinary dictionary.
  • Automatically sets Word UI Automation to Default (Where suitable), stored as exactly 0.
  • Repairs Word UIA at startup, after a configuration profile switch, and through Repair, Reset, or the Greek self-test.
  • Clears cached UIA window decisions. Startup corrections persist. Profile switches use NVDA's normal persistence policy and do not force a save of unrelated temporary preferences.

The operator, silent-backend, and synthesizer compatibility fixes from 2.5.8 remain included.

Validation

  • Reproduced the crash with NVDA's actual AggregatedSection class before the fix.
  • Repeated the same reproduction after the fix: the provider returned 3 συν 5 and recorded the reading without an exception.
  • Automated suite: 534 tests ran, 526 passed, 8 skipped.
  • Local preview and package validation passed.
  • Real Windows/NVDA audio and Word/PDF integration checks remain pending. The configuration-object reproduction does not replace those checks.

Install

  1. Download and install greekMathReader-2.5.9.nvda-addon from the assets below.
  2. Restart NVDA.
  3. Close and reopen Word or the PDF viewer.

You do not need to open NVDA's Advanced settings. Greek speech still requires a Greek-capable voice in the selected OneCore, eSpeak NG, or SAPI5 driver.

If the error sound continues, save the complete traceback from NVDA → Tools → View log. Copy the Greek Math Reader diagnostics before the self-test or Repair.

The sha256.txt asset contains the installer checksum. This GitHub release does not submit an update to the NVDA Add-on Store.

Full Changelog: 2.5.8...2.5.9