Re: SystrayList add-on: version 3.x, Python 3, end of support for unsupported Windows releases
toggle quoted messageShow quoted text
For the foreseeable future, yes.
From: firstname.lastname@example.org <email@example.com> On Behalf Of Gene
Sent: Wednesday, October 3, 2018 12:05 PM
Subject: Re: [nvda] SystrayList add-on: version 3.x, Python 3, end of support for unsupported Windows releases
After the current transition, is it likely that compatible add-ons will continue to be compatible for future versions of Python 3?
----- Original Message -----
Current release process for Python 3.x notes that each 3.x release receives support for five years. We’ll move along Python 3.x releases.
As for what Python 4.0.0 will be like, as of 2018, the crystal ball isn’t even showing that version yet.
As for what add-on authors will do, it is up to them to decide. What we the community can do is provide guidelines and recommendations, as well as coordinate our efforts.
What will happen when Python 3 reaches end of life? Is all this going to be gone through again when Python 4 becomes the supported version? How many add-on developers are going to be willing to go through this every ten years? Doesn't each version of Python have a life cycle of ten years?
This needs further clarification.
----- Original Message -----
Dear NVDA community,
A few days ago the add-ons community were told the following:
SystrayList add-on 3.0 will make the code compatible with Python 3 and make it work with old Windows releases.
Subsequent comments indicate that, although we still need to support old Windows releases if given a chance, we should eventually move onto newer releases. Thus, the following will happen in November 2018 and beyond:
You don’t really have to use this add-on to access Taskbar and notification area – you can press Windows+T to move to Taskbar and Windows+B to move focus to notification area. The add-on is there for convenience.
As for the question of Python 3 and old Windows releases: the version of Python 3 NV Access and some developers are looking at does not support Windows releases earlier than 7. There is a version of Python 3 (version 3.4) that does support old Windows releases, but by the time NVDA moves to Python 3, that Python version will reach end of life (released in 2014, Python 3.4’s scheduled end of life is 2019). Coupled with the fact that recent NVDA requires Windows 7, it was decided to end support for old Windows releases from SystrayList add-on once we move to Python 3.
This naturally raises the question: if Python 3 drops support for Windows XP and Vista, and if one add-on drops support for these, how about other add-ons? Yes, other add-ons that exclusively rely on Python 2 will not work in Python 3 version of NVDA. There are some add-ons the community has come to rely on that assumes Python 2 from the outset, and for some, it is difficult to port the source code to Python 3 without extensive testing and modifications. This is especially true for speech synthesizer and braille display driver add-ons, as the way Python interprets texts has changed fundamentally in Python 3. This also means once we do use Python 3 in NVDA Core itself, we must say goodbye to Windows XP and Vista.
So what should the add-ons community do, and in extension, what can the global NVDA community do? Although the details of the transition is still being worked out (with some developers researching possible showstoppers), I recommend the following to be done for now until NV Access announces transition to Python 3:
For users of add-ons I created or am maintaining (SystrayList add-on included), I’ll make sure my add-ons are compatible with Python 3 the first day Python 3 edition of NVDA is released. Speaking of that progress, version 18.10 of Object Location Tones and ObjPad are Python 3 compatible, and in November, SystrayList 3.0.