Re: FW: [nvda-addons] Project Pylennium: updates, proposing start of Python 3 pre-transition activities

Ryan Mann

Wouldn’t that mean that machines running a 32-bit version of Windows would no longer be able to run NVDA. That would not be good since some of the computers at the organization I work for are running 32-bit versions of Windows. Therefore, I would no longer be able to use those machines to demonstrate NVDA.

On Sep 21, 2018, at 6:52 AM, Brian's Mail list account via Groups.Io <bglists@...> wrote:

Hi, I'd just like to clarify that no actual release of nvda powered by the new compiler is going to occur until all code runs on windows 7sp1.
Also what is the attitude these days to a 64 bit version on nvda itself, as I feel such a move may well impact on some of the current bottlenecks in processor core usage and other issues.

Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
----- Original Message ----- From: "Joseph Lee" <joseph.lee22590@...>
To: <>
Sent: Friday, September 21, 2018 1:46 AM
Subject: [nvda] FW: [nvda-addons] Project Pylennium: updates, proposing start of Python 3 pre-transition activities

Hi everyone,

Although the below post is a bit technical, please keep an eye on it. You
won't feel the impact of what I outline regarding Python 3 transition for a
while, but when it does, please listen to notices from NV Access and add-on
authors regarding Python 3. And no, wxPython 4 is not the same thing as
Python 3.


From: <>
On Behalf Of Joseph Lee
Sent: Thursday, September 20, 2018 5:43 PM
To: 'NVDA screen reader development' <nvda-devel@...>
Subject: [nvda-addons] Project Pylennium: updates, proposing start of Python
3 pre-transition activities

Dear NVDA development and add-ons communities:

This is Joseph Lee, a student at California State University, Los Angeles
and a long-time NVDA add-on author and code contributor. I'd like to
announce some important updates regarding Project Pylennium.

For a while, some NVDA developers (mostly third-party contributors) have
been working on how to bring Project Pylennium - Python 3 transition - to
life. After much discussion, NV Access and other developers agreed to wait
until a stable NVDA version powered by wxPython 4.0.3 (Phoenix) is released
before working on this project. Now that NVDA 2018.3.x (powered by wxPython
4) has been released, it is time to move forward with this project a bit,
starting with pre-transition activities.

To kick this off, I'm delighted to announce that a prototype archive of NVDA
source code and dependencies powered by Python 3 is now available. Apart
from removal of data generated by SCons, the archive is ready to run on
Python 3.7 with some preparations, and. are you ready for it: IT RUNS! Well,
I must add that there are some important features missing or not working as
intended, but I'm sure this will be rectified as the project moves forward.

Note that the archive is a prototype - please do not test this unless your
intention is to provide contributions to Python 3 transition workflow once
NV Access is ready to accept pull requests.

Archive link:

Things working:

* Windows OneCore synthesizer
* Python Console
* Sending log output to log file
* Object navigation commands
* Commands to configure options (NVDA+number row 2, for instance)
* Loading app modules

Things to be aware of:

* Requires Windows 10 until Espeak NG is ready.
* NVDA menu won't open due to division operator differences between
Python 2 nad 3
* Add-ons won't load
* Certain synth settings ring commands won't work
* Some braille displays won't work

The idea is to let seasoned developers (preferably third-party contributors
and/or a group of mainstream Python developers) test ideas and porting
issues and report their findings to NV Access. In turn, when it comes time
to actually transition NVDA source code and add-ons to Python 3, data can be
used to guide future work.

Second, a wiki page is being written to help you all move smoothly to Python
3 and to coordinate this workflow. The document is subject to change based
on progress of pre-transition activities. The page in its current form can
be found at:

As always, the umbrella issue on Python 3 transition can be found on GitHub

Along with other issues having "python 3" label added to them.

Lastly, I'd like to announce that I'm stepping back from Python 3 transition
workflow at this time (and, for that matter, NVDA code contributions for a
while). Besides automatic braille display detection (written by Babbage
B.V.) and various Windows 10 features support (mostly my work), the biggest
change (and the most controversial one) in NVDA 2018.3.x has been moving to
wxPython 4 (mostly my work with assistance from many). The results matched
my predictions from earlier this year: some notable add-ons not being
compatible with wxPython 4, hence notices throughout this summer (winter for
those living in southern hemisphere).

At the moment I have mixed feelings about how we (NvDA community) handled
this change. Yes, wxPython 4 is a necessary stepping stone for moving to
Python 3, and yes, I understand that I was rather forceful in handling
certain parts of this journey. There are good things we did, and lessons we
have learned so we can make Python 3 transition a smoother experience. Even
for me, it was an interesting ride for the last three years (wxPython
Phoenix research began in 2015), and I know that I could have done things

Recently, I hinted to some that my time as an active contributor to NVDA
screen reader is slowly coming to a close. As a first step, I'd like to ask
that the community take an initiative to move forward with Python 3
transition (including other pre-transition activities); I feel that the best
thing I can do for this work now is to provide the prototype archive and a
vision for its conclusion, along with some pull requests (one of them is
pending review). There is a feature I'd like to present as a token of
appreciation to those who've helped me for the past six years: add-on update
checks, which will be impacted by Python 3 transition as well. But this does
not mean I'm leaving the community: I'll still be around to give advice
regarding Project Pylennium.

Thank you.



Join to automatically receive all group messages.