Re: Important notice: a note or two about future compatibilityof add-ons on community add-ons website and elsewhere

David Moore

Hi Joseph!

I just installed Alpha snapshot 16401, latest, and I had to check a lot of add-ons, because of the incompatible flags on most of my add-ons!

I hope all the add-ons can be made compatible with Python 3.

Thanks for your great explanation, Joseph!


                                                                                                                                                                                                                Sent from Mail for Windows 10


From: Tyler Spivey
Sent: Saturday, December 8, 2018 1:49 AM
Subject: Re: [nvda] Important notice: a note or two about future compatibilityof add-ons on community add-ons website and elsewhere


So far, the user experience for this is really bad. I had to manually

tweak 40+ addons three times during two updates.

I hope I don't have to deal with this every time I update my snapshot.


On 12/7/2018 10:45 PM, Devin Prater wrote:

> Thanks so much for all this information. I hope that the author of

> Braille Extender updates that add-on, as it is one of the most useful

> admins to me.


>> On Dec 7, 2018, at 11:50 PM, Joseph Lee <joseph.lee22590@...

>> <mailto:joseph.lee22590@...>> wrote:


>> Hi,

>> Yes, I and another NVDA developer wrote messages concerning this to

>> add-on authors.

>> By the way, one more thing: I’ll release patches for most of the

>> add-ons I’m maintaining (resource Monitor and StationPlaylist, for

>> instance) around Christmas to extend last tested NVDA version flag to

>> 2019.3. The only exception will be Unicode Braille Input, which is no

>> longer maintained by me.

>> Cheers,

>> Joseph


>> *From:*

>> <><

>> <>> *On Behalf Of *David Goldfield

>> *Sent:* Friday, December 7, 2018 9:44 PM

>> *To:* <>

>> *Subject:* Re: [nvda] Important notice: a note or two about future

>> compatibility of add-ons on community add-ons website and elsewhere



>> Joseph,


>> Thank you for alerting us to this situation. I am somewhat concerned

>> as I do use some third-party add-ons not hosted on the community

>> add-ons page but which are well-known and legal. I'm wondering if the

>> developers of these add-ons have been informed about this change?

>> Specifically, I use the Code Factory Eloquence and Vocalizer add-on,

>> Acapela voices, Dictation Bridge and NVDA Remote. I also hope that

>> Clipspeak and Clip Contents Designer will be updated but I realize

>> these are not your apps.


>> Thank you again.




>> David Goldfield, Assistive Technology

>> Specialist WWW.David-Goldfield.Com <>

>> On 12/8/2018 12:30 AM, Joseph Lee wrote:


>>     Dear NVDA community,


>>     This is Joseph Lee, one of the code contributors to NVDA screen

>>     reader project and a reviewer of community add-ons. I would like

>>     to take this time to update you on what’s been happening in

>>     regards to future compatibility of add-ons hosted on various

>>     websites, as well as rationale for compatibility notices you’re

>>     seeing from recent NVDA development releases (chiefly on alpha

>>     channel).


>>     As of December 6, 2018, NVDA 2019.1 alpha snapshots (build 16382

>>     onwards) will prompt you to check compatibility of various add-ons

>>     when you’re installing snapshots. This is because NVDA will now

>>     check if any of your add-ons are compatible with it by looking at

>>     two new manifest keys. These add-on manifest keys will tell NVDA

>>     if a given add-on is compatible with latest NVDA release, as well

>>     as providing a minimum compatible NVDA version if specified. After

>>     installing that alpha build and beyond, if NVDA detects one or

>>     more add-ons are not compatible, it will present a dialog at start

>>     up asking you to check which add-ons you still wish to use despite

>>     them being flagged as incompatible. This will be noticeable if you

>>     are using a third-party speech synthesizer or braille display by

>>     default and somehow these are not loading. Also, when trying to

>>     install new add-ons, if NVDA sees the add-on is incompatible,

>>     it’ll prompt a warning about it.


>>     Prior to this change, you can install add-ons on any NVDA release

>>     (including upcoming 2018.4), and it was up to add-ons to use

>>     features provided by a given NVDA release. This meant really old

>>     add-ons could be installed, and if not optimized for recent NVDA

>>     releases, the add-on would not work as intended, and in some

>>     cases, fail to run outright. Some add-ons do have specific NVDA

>>     version requirements, but not all add-ons take advantage of this

>>     recommendation.


>>     There are several reasons for the change as described above:



>>      1. Python 3 transition: as some of you (I think, at this point,

>>         more people) may know, NV Access and several developers

>>         (including I) are researching possible roadblocks to Python 3

>>         transition, and I’m maintaining an actual Python 3 version of

>>         NVDA for testing purposes. Given massive differences between

>>         Python 2 and 3, it was felt to place add-on compatibility

>>         checks in place so you won’t install add-ons written in Python

>>         2 on a Python 3 version of NVDA. This is one of the reasons

>>         for adding minimum NVDA version checks for add-ons if

>>         appropriate. As of today (December 8, 2018), at least three

>>         add-ons are Python 3 ready (thus will require newer NVDA

>>         versions in the future), and I expect that number to grow

>>         significantly in the next few months; the three compatible

>>         add-ons are Resource Monitor, SystrayList, and Windows 10 App

>>         Essentials, with StationPlaylist Studio to be added to this

>>         list in January 2019. 

>>      2. Various internal work planned for the future: these include

>>         projects such as speech refactor (changing internals behind

>>         NVDA’s speech functionality) and such that will cause some

>>         add-ons to fail to work as advertised. 



>>     The new compatibility flags are:



>>       * minimumNVDAVersion: specifies minimum version of NVDA the

>>         add-on is compatible with. 

>>       * lastTestedNVDAVersion: latest compatible NVDA version for the

>>         add-on. 



>>     These manifest keys are optional for now; in 2019, they will

>>     become mandatory for ALL add-ons. I would go so far as say that

>>     they are MANDATORY from now on, especially if you need to test

>>     your add-ons in alpha snapshots and intend to produce a Python 3

>>     version of your add-ons.


>>     As of December 8, 2018, only several add-ons hosted on community

>>     add-ons website (

>>     <>) are truly future-proof

>>     (compatibility flags are present). The good news is that add-on

>>     authors do understand the impact this change will have on their

>>     add-ons and some have begun updating their add-ons to add

>>     compatibility flags; others plan to add changes once 2019.1 enters

>>     beta testing phase (based on past conversations), while the

>>     community lost contact with authors of some add-ons (some of which

>>     are popular) and their add-ons will be flagged as incompatible

>>     unless updates are released.


>>     The following add-ons are NVDA 2019.1 compatible and thus won’t

>>     cause NVDA to flag them as incompatible:



>>       * Add-on Updater 

>>       * Easy Table Navigator 

>>       * Enhanced Touch Gestures 

>>       * Focus Highlight 

>>       * Golden Cursor 

>>       * GoldWave 

>>       * ObjPad 

>>       * Object Location Tones 

>>       * Resource Monitor 

>>       * StationPlaylist Studio 

>>       * SystrayList 

>>       * Unicode Braille Input 

>>       * Virtual Review 

>>       * Windows 10 App Essentials 

>>       * And possibly more. 



>>     For add-ons not listed:



>>       * For users: please contact authors of add-ons you’re using and

>>         ask for their thoughts and plans for add-on compatibility

>>         flags and other future work (see below for words about my

>>         add-ons). 

>>       * For developers: please think about the impact of this change

>>         and update your add-ons. I don’t expect all add-ons to be made

>>         compatible by the time 2019.1 stable version (or release

>>         candidate) is released, but at least for popular ones, please

>>         have your add-ons made compatible by the time 2019.1 beta 1

>>         shows up. Also, I advise setting last tested version to 2019.2

>>         so you can have plenty of time modernizing add-ons. 



>>     Notes for users of my add-ons or add-ons that’ll be reviewed by me:



>>       * For users: I expect all my add-ons (at least ones currently

>>         under active support) to be made Python 3 ready no later than

>>         March 2019. As far as last tested version flag is concerned,

>>         I’ll try my best to target later NVDA releases (for example,

>>         if using an add-on in NVDA 2019.1, the compatibility flag will

>>         indicate support for at least NvDA 2019.3) so you won’t have

>>         to worry about compatibility flag problems for a long time;

>>         compatibility flags (at least last tested version flag) will

>>         be updated once or twice a year. 

>>       * For add-ons to be reviewed: I will look for compatibility

>>         flags (as part of user experience portion of basic review)

>>         starting from February 2019; other add-on reviewers may or may

>>         not look for these flags. 

>>       * For Add-on Updater users: I will start enforcing add-on

>>         compatibility flags from version 19.03; that is, Add-on

>>         Updater will refuse to install add-on updates if they do not

>>         specify at least last tested version flag to align with NVDA

>>         2019.1 behavior. 



>>     Thank you.

>>     Cheers,

>>     Joseph








Join to automatically receive all group messages.