On 7/18/2015 10:48 PM, Zachary Ware wrote:
On Sat, Jul 18, 2015 at 9:13 PM, Terry Reedy <tjre...@udel.edu> wrote:
I understand the general problem quite well.  But feeling that one would
have to do a 2.7 backport after writing, editing, or reviewing a 3.x patch
can discourage doing a review in the first place. I am at that point now
with respect to Idle patches.

I wonder if it would be worth the significant one-time effort to port
IDLE to 2/3, so that future bugfixes/improvements don't require any
extra effort than testing them with all versions.

I am not aware of any version problems with tkinter code. In general, in the modules I have looked at, the main necessary differences are the Tkinter/tkinter, MessageBox/messagebox imports. In some files, the exception changes in 3.3 are even more a nuisance, since the name differences can be anywhere in the file.

Since 2.7 patching will end sooner or later, I am reluctant to add 'if version' to 3.x. The exception changes could be masked in 2.7 by rebinding exception names at the top, but I am not sure that this would be a good idea.

I, and others, have already made some changes to eliminate differences that are unnecessary, at least for 2.7 versus 3.3+ or now 3.4+. For instance, I believe all 'except X, msg:' statements have been converted to 'except X as msg:'. Most of the files with 'print' still need conversion to a future imports + function call. I have eliminated most other differences in at least a couple of modules before patching, and in one module that needs multiple patches.

Hmm. After manual insertion of future print imports in 2.7 files, 2to3 could be used to convert the 2.7 print statements. This would be much easier than manual conversion and or copying for 3.x. Thanks for the inspiration.
https://bugs.python.org/issue24671

--
Terry Jan Reedy

--
https://mail.python.org/mailman/listinfo/python-list

Reply via email to