Topics

Important request for add-on authors and users: please focus on stability and Python 3 compatibility (no new features) until NVDA 2019.3 stable version is released

Alberto Buffolino
 

DaVid, il 12/12/2019 14.48, ha scritto:
Sometimes is difficult to fix or implement a new
feature without break something in older versions, need more testing,
Alberto:
absolutely agree. Another example, after having developed say all for lists in ColumnsReview, I noticed that before 2019.3 there is no class to generate a speech sequence in a simple manner (due to speech refactoring), so I limited this feature to Py3 versions (without breaking Py2 compatibility, but only because it was easy in this case).
Alberto

DaVid
 

The users that can't upgrade to NVDA 2019.3 could use an older release
of this add-on. Sometimes is difficult to fix or implement a new
feature without break something in older versions, need more testing,
ETC. The speech and synthDriver part of the NVDA's framework has many
changes. It will be easier for me and will be able to optimize the
code.

Is not a similar case with beep kebyboard for example. In that case
the code is exactly the same for old and new versions. The use of six
help to keep it compatible easily.

Regards,
DaVid.

2019-12-12 5:13 GMT-06:00, Luke Davis <luke@...>:

Out of curiosity: why would you do that? If it is already compatible, why
make
it more difficult for those who have to remain on 2019.2.1 or other earlier

versions?

At least until all common add-ons are ported, there will be people who can't

upgrade because they require some add-on.

It shouldn't actually be hurting anything to retain Python 2 compatibility
for
some time, should it? At least until that compatibility breaks
something in 2019.3 or beyond, or makes the add-on sluggish, or whatever
other
negative impact.

But if it just stays dormant and doesn't require active maintenance within
the
add-on, but helps those using 2019.2.1 and below, I don't get the value of
removing it.

Luke


On Wed, 11 Dec 2019, DaVid wrote:

Yes, possible.
Mi add-on, the IBMTTS driver, is compatible with python 2 and 3 at the
same time.
A synth driver is a complex add-on I'd say, because use a lot of
features that changed in the NVDA's framework.

I'll will remove the compatibility with python 2 when NVDA 2019.3 is
released.


Luke Davis
 

Out of curiosity: why would you do that? If it is already compatible, why make it more difficult for those who have to remain on 2019.2.1 or other earlier versions?

At least until all common add-ons are ported, there will be people who can't upgrade because they require some add-on.

It shouldn't actually be hurting anything to retain Python 2 compatibility for some time, should it? At least until that compatibility breaks something in 2019.3 or beyond, or makes the add-on sluggish, or whatever other negative impact.

But if it just stays dormant and doesn't require active maintenance within the add-on, but helps those using 2019.2.1 and below, I don't get the value of removing it.

Luke

On Wed, 11 Dec 2019, DaVid wrote:

Yes, possible.
Mi add-on, the IBMTTS driver, is compatible with python 2 and 3 at the
same time.
A synth driver is a complex add-on I'd say, because use a lot of
features that changed in the NVDA's framework.

I'll will remove the compatibility with python 2 when NVDA 2019.3 is released.

DaVid
 

Yes, possible.
Mi add-on, the IBMTTS driver, is compatible with python 2 and 3 at the
same time.
A synth driver is a complex add-on I'd say, because use a lot of
features that changed in the NVDA's framework.

I'll will remove the compatibility with python 2 when NVDA 2019.3 is released.

Regards,
David.

2019-12-11 2:28 GMT-06:00, Brian's Mail list account via Groups.Io
<bglists=blueyonder.co.uk@groups.io>:


Just a few comments on this bit...

starting on December 15, 2019, any add-on that fails to even install on NVDA

2019.3 beta, even though their code is Python 3 ready, will result in those

add-ons becoming "incompatible" I.e. manifest checks will become mandatory.

I'd have thought that if somebody has checked their code is Python 3 ready,

they would have also fixed the manifest. It might be a good idea to tell
users how to fix the manifest if they know the add on will probably work.

They can always disable it if they hit an issue later on. I refer to add ons

that are very simple such as fake clipboard announcements etc.


Also, starting from that date, even though the add-on does install on
2019.3 beta, if it fails to start in 2019.3 beta will result in
"incompatible" label
Are you referring here to ones like Pico synth and Speech player in Espeak?

I've not seen anything other than synths fall into this zone, they either
install and work or don't work otherwise.
.
To make sure add-ons are compatible with NVDA 2019.3 from day 1, I advise
the following to be done by the NVDA community as a whole:
1. No feature requests: until NVDA 2019.3 stable version comes out, please
DO NOT request new features for add-ons. The only exceptions should be
localization and documentation edits.
I'm sure that there are add ons out there being tweaked for features and
also checked for compatibility at the same time. One assumes in such cases a

the review process might need to be gone through again?
2. Focus on stability: this includes making sure add-ons are compatible with

2019.3, and if needed, older releases.
I was also going to ask, is it technically possible to build add ons that
work for both python2 and 3 and don't fall full of the missing libraries and

other files that have been changed so imports fail on one or the other
version of nvda?

Brian
bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users
-----




Brian's Mail list account
 

Just a few comments on this bit...

starting on December 15, 2019, any add-on that fails to even install on NVDA 2019.3 beta, even though their code is Python 3 ready, will result in those add-ons becoming "incompatible" I.e. manifest checks will become mandatory.

I'd have thought that if somebody has checked their code is Python 3 ready, they would have also fixed the manifest. It might be a good idea to tell users how to fix the manifest if they know the add on will probably work. They can always disable it if they hit an issue later on. I refer to add ons that are very simple such as fake clipboard announcements etc.


Also, starting from that date, even though the add-on does install on 2019.3 beta, if it fails to start in 2019.3 beta will result in "incompatible" label
Are you referring here to ones like Pico synth and Speech player in Espeak? I've not seen anything other than synths fall into this zone, they either install and work or don't work otherwise.
.
To make sure add-ons are compatible with NVDA 2019.3 from day 1, I advise the following to be done by the NVDA community as a whole:
1. No feature requests: until NVDA 2019.3 stable version comes out, please DO NOT request new features for add-ons. The only exceptions should be localization and documentation edits.
I'm sure that there are add ons out there being tweaked for features and also checked for compatibility at the same time. One assumes in such cases a the review process might need to be gone through again?
2. Focus on stability: this includes making sure add-ons are compatible with 2019.3, and if needed, older releases.
I was also going to ask, is it technically possible to build add ons that work for both python2 and 3 and don't fall full of the missing libraries and other files that have been changed so imports fail on one or the other version of nvda?

Brian
bglists@...
Sent via blueyonder.
Please address personal E-mail to:-
briang1@..., putting 'Brian Gaff'
in the display name field.
Newsgroup monitored: alt.comp.blind-users
-----

Noelia Ruiz
 

Hi, I will sumarize this info (won't translate it literally) and will
post it on the NVDA's spanish website created by me. I was in doubt
about making a post for this beta since I publish just from release
candidates.
Also, regarding to me, Chris LM, the main author of Emoticons add-on,
was informed about a bug in the Insert emoticons dialog by an user of
the Italian community. I will fix this the next weekend.
I may share this, not just on our spanish mailing list at groups.io,
but also on Twitter mentioning your user name.
Cheers

2019-12-11 3:58 GMT+01:00, Joseph Lee <@joslee>:

Dear NVDA development and add-ons community,



Note: a companion note will be sent out to users shortly, along with that
companion being sent out to translators for circulation in various
languages.



On December 9, 2019, NVDA 2019.3 beta 1 was released for testing. This
means
Python 3 NVDA is one step closer to general availability.



As you may all know by now (or almost all of you should be aware), NVDA
2019.3 is not an evolutionary release - it is a revolutionary release.
Thus,
for the last few months, I and other NVDA core developers (including NV
Access people) were giving you essential advisories about it, including a
need to update (and in some cases, rewrite) add-ons. For the last few
weeks,
one of the central topics across the NVDA community has been add-ons and
their compatibility with future NVDA releases, along with adopting Python 3
concepts and skills.



While 2019.3 was in alpha phase (and it is still going through that phase
somewhat), authors were advised to work on making sure their add-ons are
ready, and compatibility certification was voluntary i.e. up to authors to
declare their add-ons as compatible. Now that 2019.3 beta is out, I would
like to request that authors focus on stability and Python 3 compatibility
(for real this time); along with this, starting on December 15, 2019, any
add-on that fails to even install on NVDA 2019.3 beta, even though their
code is Python 3 ready, will result in those add-ons becoming
"incompatible"
i.e. manifest checks will become mandatory. Also, starting from that date,
even though the add-on does install on 2019.3 beta, if it fails to start in
2019.3 beta will result in "incompatible" label.



To make sure add-ons are compatible with NVDA 2019.3 from day 1, I advise
the following to be done by the NVDA community as a whole:



1. No feature requests: until NVDA 2019.3 stable version comes out,
please DO NOT request new features for add-ons. The only exceptions should
be localization and documentation edits.
2. Focus on stability: this includes making sure add-ons are compatible
with 2019.3, and if needed, older releases.
3. Timely feedback to the right people: just because I tend to be seen
as the leader of this effort should not be a reason to contact me for all
sorts of issues with add-ons; please take a look at add-on compatibility
list located at community add-ons page (under Announcements section), as
that page contains contact information for authors of add-ons that are
giving you issues (for ones developed by me, you are more than welcome to
provide feedback anytime). Regarding the compatibility list itself, I'll
continue to monitor and update it based on feedback from authors and the
community.



Thank you.

Cheers,

Joseph




 

Dear NVDA development and add-ons community,

 

Note: a companion note will be sent out to users shortly, along with that companion being sent out to translators for circulation in various languages.

 

On December 9, 2019, NVDA 2019.3 beta 1 was released for testing. This means Python 3 NVDA is one step closer to general availability.

 

As you may all know by now (or almost all of you should be aware), NVDA 2019.3 is not an evolutionary release – it is a revolutionary release. Thus, for the last few months, I and other NVDA core developers (including NV Access people) were giving you essential advisories about it, including a need to update (and in some cases, rewrite) add-ons. For the last few weeks, one of the central topics across the NVDA community has been add-ons and their compatibility with future NVDA releases, along with adopting Python 3 concepts and skills.

 

While 2019.3 was in alpha phase (and it is still going through that phase somewhat), authors were advised to work on making sure their add-ons are ready, and compatibility certification was voluntary i.e. up to authors to declare their add-ons as compatible. Now that 2019.3 beta is out, I would like to request that authors focus on stability and Python 3 compatibility (for real this time); along with this, starting on December 15, 2019, any add-on that fails to even install on NVDA 2019.3 beta, even though their code is Python 3 ready, will result in those add-ons becoming “incompatible” i.e. manifest checks will become mandatory. Also, starting from that date, even though the add-on does install on 2019.3 beta, if it fails to start in 2019.3 beta will result in “incompatible” label.

 

To make sure add-ons are compatible with NVDA 2019.3 from day 1, I advise the following to be done by the NVDA community as a whole:

 

  1. No feature requests: until NVDA 2019.3 stable version comes out, please DO NOT request new features for add-ons. The only exceptions should be localization and documentation edits.
  2. Focus on stability: this includes making sure add-ons are compatible with 2019.3, and if needed, older releases.
  3. Timely feedback to the right people: just because I tend to be seen as the leader of this effort should not be a reason to contact me for all sorts of issues with add-ons; please take a look at add-on compatibility list located at community add-ons page (under Announcements section), as that page contains contact information for authors of add-ons that are giving you issues (for ones developed by me, you are more than welcome to provide feedback anytime). Regarding the compatibility list itself, I’ll continue to monitor and update it based on feedback from authors and the community.

 

Thank you.

Cheers,

Joseph