summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorNed Deily <nad@acm.org>2012-07-30 10:31:21 (GMT)
committerNed Deily <nad@acm.org>2012-07-30 10:31:21 (GMT)
commitc556c6440593c36cdfd407a6e192de86ac1b0df6 (patch)
tree8c0878f3460faaa40d5858f3a0f843b63c88ce3e /Lib
parent8f328d0c1d86096b3d4e5f1c1ac497663e197a0d (diff)
downloadcpython-c556c6440593c36cdfd407a6e192de86ac1b0df6.zip
cpython-c556c6440593c36cdfd407a6e192de86ac1b0df6.tar.gz
cpython-c556c6440593c36cdfd407a6e192de86ac1b0df6.tar.bz2
Issue #14018: Update the OS X IDLE Tcl/Tk warning check to include
the Apple-supplied Tck/Tk versions shipped with OS X 10.7 and 10.8. They are not as buggy as the 10.6 version but can still easily crash.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/idlelib/NEWS.txt4
-rw-r--r--Lib/idlelib/macosxSupport.py16
2 files changed, 14 insertions, 6 deletions
diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt
index 3a641a0..3160c74 100644
--- a/Lib/idlelib/NEWS.txt
+++ b/Lib/idlelib/NEWS.txt
@@ -18,6 +18,10 @@ What's New in IDLE 3.2.4?
- Issue #14937: Perform auto-completion of filenames in strings even for
non-ASCII filenames. Likewise for identifiers.
+- Issue #14018: Update checks for unstable system Tcl/Tk versions on OS X
+ to include versions shipped with OS X 10.7 and 10.8 in addition to 10.6.
+
+
What's New in IDLE 3.2.3?
=========================
diff --git a/Lib/idlelib/macosxSupport.py b/Lib/idlelib/macosxSupport.py
index f93ef11..9690442 100644
--- a/Lib/idlelib/macosxSupport.py
+++ b/Lib/idlelib/macosxSupport.py
@@ -37,17 +37,21 @@ def isCarbonAquaTk(root):
def tkVersionWarning(root):
"""
Returns a string warning message if the Tk version in use appears to
- be one known to cause problems with IDLE. The Apple Cocoa-based Tk 8.5
- that was shipped with Mac OS X 10.6.
+ be one known to cause problems with IDLE.
+ 1. Apple Cocoa-based Tk 8.5.7 shipped with Mac OS X 10.6 is unusable.
+ 2. Apple Cocoa-based Tk 8.5.9 in OS X 10.7 and 10.8 is better but
+ can still crash unexpectedly.
"""
if (runningAsOSXApp() and
- ('AppKit' in root.tk.call('winfo', 'server', '.')) and
- (root.tk.call('info', 'patchlevel') == '8.5.7') ):
- return (r"WARNING: The version of Tcl/Tk (8.5.7) in use may"
+ ('AppKit' in root.tk.call('winfo', 'server', '.')) ):
+ patchlevel = root.tk.call('info', 'patchlevel')
+ if patchlevel not in ('8.5.7', '8.5.9'):
+ return False
+ return (r"WARNING: The version of Tcl/Tk ({0}) in use may"
r" be unstable.\n"
r"Visit http://www.python.org/download/mac/tcltk/"
- r" for current information.")
+ r" for current information.".format(patchlevel))
else:
return False