josephsl/wintenApps

Instlal tasks: switch back to minimum versions flag from supported Windows releases

Closed this issue · 0 comments

Hi,

Currently NVDA checks against a list of supported Windows releases to make sure people are running supported configurations. This was done for improved documentation and to list stable Windows builds supported by the add-on. Prior to this, NVDA checked minimum Windows release flag. The current method has run into a critical flaw as of May 2024:

As of May 2024, the latest stable Windows release is 11 23H2 (build 22631), with 24H2 preview builds being tested by dev and canary channel Insiders. In addition, beta channel Insiders are running an enablement package on top of 23H2 (build 22635), with dev channel Insiders running an enablement package (26120) on top of 24H2 base build (26100). It is likely that beta channel Insiders will move to 24H2 build (likely with the enablement package added), with dev channel Insiders testing higher numbered builds.
The current approach of listing stable Windows releases does not accont for the above situation. While build 26100 seris is above 22631, there is build 22635 in use by beta channel Insiders which would be considered an unsupported configuration. However, since beta channel Insiders are giving feedback about nearly complete features and since there is no desktop watermark (version info shown) by default, build 22635 should be considered a supported release. One workaround is to add a dedicated condition to detect build 22635 and say that this is a supported release. I expect a similar situation may arise in 2025 if the beta channel stays on build 26120 and dev/canary moves to higher numbered builds with either one testing the base build for a 25H2 release.

Therefore, it makes sense to return to minimum version flag but with some refinements based on the current supported Windows releases list. The minimum version flag guarantees that a build greater or equal to the minimum version will be supported regardless of Insider channel, with the flag updated based on end of support for the oldest stable channel build (for 2024, build 22621 (Windows 11 22H2) becomes unsupported by the add-on. However, to keep up with the documented behavior of not supporting an Insider build range between RTM milestones (say, 23000 or 25000 series), refinements will be made so that a differen minimum version flag will be used based on build range. For compatibility with older and current approach, minimum version will be set to Windows 10 22H2 (build 19045) as long as the add-on supports Windows 10 (until October 2025).

If adopted, this change will be part of Germanium add-on development milestone (September 2024).

Thanks.