[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Ronald Oussoren ronaldousso...@mac.com added the comment: Michael: Why must the subprocess started by IDLE be in 32-bit mode if we'd run IDLE in 32-bit mode? AFAIK there is no technical reason to do so. Not that running IDLE in 32-bit mode is an option, it wouldn't fix the issue by itself unless we'd link Tkinter to Tk 8.4 and that would make it impossible to use Tkinter in 64-bit mode at all. BTW. I'm -1 on using the X11 version of Tk, that would make IDLE look even less like a real Mac application. It would also require additional work to ensure that IDLE.app keeps working as expected. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Michael Foord mich...@voidspace.org.uk added the comment: Ronald: The subprocess also uses Tkinter (right?) so would also require 32bit. FWIW I'm -1 on X11 as well. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Ronald Oussoren ronaldousso...@mac.com added the comment: On 25 Jan, 2011, at 13:41, Michael Foord wrote: Michael Foord mich...@voidspace.org.uk added the comment: Ronald: The subprocess also uses Tkinter (right?) so would also require 32bit. Not AFAIK. I'm pretty sure I've had a 3-way build in the past where IDLE ran as a 32-bit binary and the subprocess was 64-bit one on supported systems. -- title: OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field - OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in textfield ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Michael Foord mich...@voidspace.org.uk added the comment: The reason I think it is an issue is that a previous release of Python 2.7 could start IDLE (the initial window would appear), but a dialog would also appear saying that it could not connect to the subprocess and IDLE would exit. IDLE itself had been set to run as a 32bit process by default, but various people thought the issue was caused by the subprocess not being launched as 32bit. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Changes by STINNER Victor victor.stin...@haypocalc.com: -- nosy: -haypo ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Michael Foord mich...@voidspace.org.uk added the comment: Activestate has said (replying to me on Twitter as it happens) that a patch is available and they will do a new 8.5 release before 3.2 final. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Ned Deily n...@acm.org added the comment: Yes, see http://permalink.gmane.org/gmane.comp.lang.tcl.mac/6871 So the plan for 3.2 is to assume there will be an updated ActiveState Tk 8.5 available. I will update the web status page accordingly. And this issue can be closed as a third-party library issue. -- resolution: - wont fix stage: needs patch - committed/rejected status: open - closed ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Nestor Aguilera aguil...@santafe-conicet.gov.ar added the comment: On 23 Jan 2011, at 04:33, Georg Brandl wrote: Georg Brandl ge...@python.org added the comment: I disagree. There aren't really 64-bit users on OSX, thanks to fat binaries. So if starting IDLE would start a 32-bit interpreter, users likely won't even notice. If they do notice, they can still run in 64-bit mode from the command line. Okay, fair enough. If it's easy to always let IDLE run in 32-bit mode, I'm fine with that. What about other programs using tkinter? In a previous message (http://bugs.python.org/issue10973#msg126868) I mentioned that I get warning messages with the 32-bit version of 3.1.3 in OSX 10.6. Would a 32-bit version for 3.2 correct these? -- title: OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field - OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Michael Foord mich...@voidspace.org.uk added the comment: There are a few issues here. X11 is not installed by *default* on Mac OS X (it is supplied separately) so it doesn't provide an out of the box solution. Starting IDLE as 32bit alone doesn't solve the problem as it launches a subprocess and you have to ensure that is launched as a 32bit process as well. I think *clearly* documenting that the Mac OS X 10.6 version *requires* Activestate Tcl / Tk 8.5 is the best solution (assuming I am correct in thinking that using the Activestate distribution solves the problem). This is really a duplicate of issue 10969 by the way. See the discussion there for suggested ways to clarify the dependency on the download page. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Ned Deily n...@acm.org added the comment: Michael, the crash documented here is *not* fixed by installing ActiveState 8.5; it is currently a problem seen with both A/S and Apple's Tk 8.5. Also, to answer my own question, I double-checked the Snow Leopard 10.6 installation DVD and, unlike earlier releases, X11 is now installed by default. That said, there is now some action on the Tcl front which may result in an official patch to at least prevent the crash. If so, there may be yet another option: 6. for 64-bit installer, have the installer build a Cocoa Tk 8.5 (using the installer's existing third-party lib infrastructure) and ship with the 64-bit installer So, at the moment, I think the best course of action is to explore the various patch options and, with more info available, a decision for 3.2rc2 made prior to cutoff. -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Ned Deily n...@acm.org added the comment: This seems to me to be a nasty release blocker. As documented in the Tk bug that Victor cited (thanks!), the crash occurs in Cocoa Tk when an input method prefix dead key combining character is typed in a Tk text field. So, for example, with the US Extended input method on a US keyboard, to type ñ, you can type the two keystrokes: Option-n n. Or for an ä: Option-u a. Typing the leading dead key causes Tk to crash with the index out of bounds exception, bringing down tkinter and IDLE with it (and users losing their edits). There is a workaround for users to enter these characters without a crash. OS X also supports a postfix dead key combining sequence; ñ - n Shift-Option-n and ä - a Shift-Option-u. The postfix forms do not cause a crash with Cocoa Tk 8.5 and the expected character is stored in the field, although the screen may not get properly updated. But, I suspect of the two, the prefix method is much more commonly used and, in any case, it is not reasonable to warn users that they risk a crash if they enter a common keyboard sequence. (The other common method to enter characters not available on the keyboard is to use the system Character Viewer which gives access to all Unicode code points. Unfortunately, Character Viewer input doesn't seem to work with Cocoa Tk 8.5. That would seem to be a major deficiency in Cocoa Tk's support for full Unicode input.) This problem is exhibited in the Apple-supplied Cocoa Tk 8.5 shipped with OS X 10.6 and the Apple-supplied IDLEs (/usr/bin/idle2.6 and /usr/bin/idle2.5) suffer from the same vulnerability. So this is not a new problem in the ActiveState Tk 8.5.9. The Tk bug report on the SourceForge tracker was opened and accepted nearly a year ago and, although subsequent comments and activity have raised the priority to 9 (critical), there is no indication that a fix is forthcoming soon. I am pinging both at the SF tracker and on the Tcl Mac list and will propose some alternatives for 3.2 here shortly. -- components: +Tkinter nosy: +benjamin.peterson, georg.brandl priority: normal - release blocker title: 'ñ' not working with IDLE 3.2rc1 - OSX 10.6.6 - OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field versions: +Python 2.7 ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Ned Deily n...@acm.org added the comment: Here's a brain dump of possible options I see for 3.2rc2: 1. document and do nothing - IDLE (and other tkinter program) crashes whenever a user types a composing character (like Option u in US layout for an umlaut) when the 64-/32-bit installer is used 2. don't ship the OS X 64-bit installer, only the traditional 32-bit one 3a. don't ship IDLE.app and bin/idle with 64-bit installer 3b. don't ship tkinter, IDLE.app, and bin/idle with 64-bit installer 4. for 64-bit installer, link tkinter with Aqua Tk 8.4, like 32-bit installer - no tkinter available in (default) 64-bit mode, users would need to force 32-bit execution - need to fix IDLE to only run in 32-bit mode 5a. for 64-bit installer, link tkinter with a third-party X11 Tk 8.5, most likely MacPorts - X11 version works in both 64- and 32- and is likely more widely tested (on Unixes). MacPorts for example currently supplies an X11 Tk by default. - non-native look and feel - is X11 installed by default on 10.6? (check and document) - MacPorts currently does not supply binary packages so users would need to install Xcode developer tools 5b. for 64-bit installer, have the installer build an X11 Tk 8.5 (using the installer's existing third-party lib infrastructure) and ship with the 64-bit installer - same as 5a except that IDLE and tkinter would now work out of the box but at the cost of the additional unknown development and testing work to get Tk built with the installer At the moment, for 3.2rc2 my inclination is to pursue option 4 and at least explore the feasibility of option 5b with a fallback to option 3a while encouraging (but not depending) on a future fix for Cocoa Tk. Again, this applies only to the 64-/32-bit installer; the traditional 32-bit installer is linked with Carbon Tk 8.4 which does not have this problem. Post 3.2, I think it makes sense to pursue a previously-discussed option to support multiple Tk versions with one release so users can choose. That would also have the potential benefit of making Tk 8.5 available in one form or another for users of earlier OS X releases. But that's a matter for later exploration. -- nosy: +michael.foord, rhettinger, ronaldoussoren stage: - needs patch ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Georg Brandl ge...@python.org added the comment: Hmm. It seems better to me to accept this bug (and document it, and point out that it isn't Python's fault) than depriving 64-bit users of IDLE, or (even worse) of tkinter. If you can manage a solution that doesn't remove IDLE, I'm in favor, but otherwise option 1. is my favorite. I trust there is no possibility of a workaround from the Python or _tkinter side of things? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Ned Deily n...@acm.org added the comment: Since the key strokes are captured directly by Tk, I doubt that anything could be worked around on the Python side unless there was some Tk option to disable a class of input characters or something. Seems unlikely but I can check with the tcl-mac list. I should point out regarding 5a and 5b that with the X11 option (as with MacPorts today) using the Apple X11 Quartz window manager server (the default option) is a relatively seemless experience for the user. Clicking on IDLE.app or executing bin/idle in a shell causes the Apple X11.app to launch automatically and the expected IDLE windows appear alongside the user's existing (non-X11) windows. The main difference is that there is the look of the windows and that the menu bars are in the X windows rather than in the normal OS X menu bar at the top of the screen (that menu bar is for X11.app). -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Nestor Aguilera aguil...@santafe-conicet.gov.ar added the comment: Thanks Ned for thinking of ways out. - If I had a choice, I would agree with Georg's choice (Ned's option 1): most users will not use the composite characters and need not go through complications, or worse, cannibalization of the distribution (3a and 3b are unacceptable). Perhaps the existence of the bug could be documented together with the need of a proper Tcl/Tk version. - My experience with python 3.1.3 with OS 10.6 is that when starting IDLE I always get several messages of the sort: Python(1305,0xa0a5c540) malloc: *** error for object 0x1a277738: pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug possibly leading to memory leaks. Thus, I am not happy with 4. - As for 5a, perhaps with the warnings of Tcl/Tk and composite crashes, one could announce this alternative installation. 5b doesn't seem to be worth the trouble, given the existence of the MacPorts version. My 2 cents. Néstor -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Martin v. Löwis mar...@v.loewis.de added the comment: Hmm. It seems better to me to accept this bug (and document it, and point out that it isn't Python's fault) than depriving 64-bit users of IDLE, or (even worse) of tkinter. I disagree. There aren't really 64-bit users on OSX, thanks to fat binaries. So if starting IDLE would start a 32-bit interpreter, users likely won't even notice. If they do notice, they can still run in 64-bit mode from the command line. In my experience with fat python builds on OSX, it's typically better to prefer 32-bit mode, anyway, as extension modules often don't come in a fat version, but often in 32-bit mode only. -- title: OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field - OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com
[issue10973] OS X 10.6 IDLE, tkinter: Cocoa Tk 8.5 crash when composite character typed in text field
Georg Brandl ge...@python.org added the comment: I disagree. There aren't really 64-bit users on OSX, thanks to fat binaries. So if starting IDLE would start a 32-bit interpreter, users likely won't even notice. If they do notice, they can still run in 64-bit mode from the command line. Okay, fair enough. If it's easy to always let IDLE run in 32-bit mode, I'm fine with that. What about other programs using tkinter? -- ___ Python tracker rep...@bugs.python.org http://bugs.python.org/issue10973 ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com