Ned Deily <n...@acm.org> added the comment:

Thank you very much for the patch. I have updated it and modified it somewhat 
to work with the latest tip for py3k (3.2b1), 3.1.3+, and 2.7.1+ and to work 
with both AquaTk Cocoa 8.5 and preserve current behavior with legacy AquaTk 
Carbon 8.4.

Since there are no automated tests for IDLE in the standard library and since 
the issues here had to do with differences in menu cascades and options, I 
created a program to introspect IDLE menus using the OS X GUI Scripting 
interface via py-appscript.  That allowed me to semi-automatically capture the 
menu configurations for the IDLE configurations of interest (in particular, 
Apple-supplied Tk vs ActiveState Tk).  The following Tcl/Tk configurations - 
all currently, or shortly to be, supported by python.org installers - were 
tested:

OS X          Tcl/Tk
====          ======
10.6  64-bit  ActSt 8.5.9 Cocoa
10.6  64-bit  Apple 8.5.7 Cocoa
10.6  32-bit  ActSt 8.4.19 Carbon
10.6  32-bit  Apple 8.4.19 Carbon
10.5  32-bit  ActSt 8.4.19 Carbon
10.5  32-bit  Apple 8.4.7 Carbon
10.4  32-bit  ActSt 8.4.19 Carbon
10.4  32-bit  Apple 8.4.7 Carbon
10.3  32-bit  ActSt 8.4.19 Carbon

Each of those Tcl/Tk configurations was tested with both IDLE.app and bin/idle, 
each with both py3k(3.2b1+) and 2.7.1+ builds, and each of those with both IDLE 
Editor windows and IDLE shell windows (they have somewhat different menu 
configurations).  Note that testing on 10.3 was much more limited since 
appscript, and hence the menutester, is not supported there.  Also no 
regressions were noted when applied to 3.1.3+ in a 32-bit only build.

So far, the recently available ActiveState 64-bit Cocoa Tcl/Tk 8.5 has proven 
to be much more stable than the Apple-supplied 8.5 version in 10.6, which had 
rendered the 64-bit versions of IDLE virtually unusable up to now.  With the 
final patches applied, I found no regressions in the menu cascades for 
IDLE.app.  When running bin/idle (from the command line), there is a slight 
difference when using Cocoa Tk vs Carbon Tk.  Both variants of AquaTk 
automatically supplies the application names from the app bundle plist. Because 
of the way bin/idle is structured today, the app name appears as "Python" 
rather than "IDLE".  With Cocoa Tk, that appears in a couple more menu items 
("About app" and "app Help") than it already does with Carbon Tk.  While that 
would be nice to fix at some point, it is an existing cosmetic issue and  I 
assume most inexperienced users will use IDLE.app, where there is no 
discrepancy.

I believe this fix is ready to be applied and should go into 3.2 (and as soon 
as possible released for 2.7) in conjunction with building the 64-bit OS X 
installer to allow use of the ActiveState Cocoa 8.5.  This will fix a number of 
reported problems with the broken IDLE with previous 64-bit OS X installers.  
Still to be done prior to release is updating the installer README and 
documenting a few minor issues.  A longer-term issue is to make the menu 
introspection tests automatic enough to be added to the standard tests as an 
optional OS X test.

----------
assignee: ned.deily -> ronaldoussoren
nosy: +benjamin.peterson, georg.brandl
priority: normal -> release blocker
stage:  -> patch review
Added file: http://bugs.python.org/file20096/issue6075_py3k.patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue6075>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to