This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: IDLE: Problems using IDLE and 2.7, 3.6 macOS 64-/32-bit installer
Type: enhancement Stage: resolved
Components: IDLE, macOS Versions: Python 3.8, Python 3.7, Python 3.6
process
Status: closed Resolution: third party
Dependencies: Superseder:
Assigned To: ned.deily Nosy List: Japsert, ned.deily, ronaldoussoren, terry.reedy
Priority: normal Keywords:

Created on 2018-06-22 15:12 by Japsert, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
bug report.mov Japsert, 2018-06-22 15:12 A screen recording of the bug.
Schermafbeelding 2018-06-23 om 16.15.27.png Japsert, 2018-06-23 14:22 The page you get when you click "Mac OS X" under the install button
Messages (6)
msg320240 - (view) Author: Jasper Trooster (Japsert) Date: 2018-06-22 15:12
Sometimes when I type print in my code, the application crashes. Then a window pops up, saying that the program suddenly stopped (description of  error message below). When I click on the option to reopen IDLE, nothing happens, I have to manually reopen it again. I have already sent a report to Apple.

Description of the error message:
IDLE suddenly stopped.
Click on 'Reopen' to reopen the program. Click on 'Report' to view more information and send a report to Apple. 
(?)   (Ignore) (Report...) (Open)

I am coding on a Macbook from late 2008 on OSX El Capitan, version 10.11.6.
msg320251 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2018-06-22 18:15
Jasper: when you installed 3.6.5 on your 10.11 machine, you had a choice of the 64-/32-bit installer, good back to 10.6, and newer and better 64-bit installer, good back to 10.9.  Since it seems that the latter, the new and improved option, should work for you, why did you choose the former?  Did you see the discussion under macOS users: new as of 3.6.5?  Do we need to improve it?

Ned: there is no reference anymore on https://www.python.org/downloads/release/python-365/ to https://www.python.org/download/mac/tcltk/.  There should be.  How about making the last part of "The 10.6+ variant still requires installing a third-party version of Tcl/Tk 8.5.", from 'installing' to the end, a link to that page?

Jasper: as your movie shows, we warn about TK 8.5.9 being a problem every time you start IDLE.
"""
WARNING: The version of Tcl/Tk (8.5.9) in use may be unstable.
Visit http://www.python.org/download/mac/tcltk/ for current information.
"""
Did you see this?  Did you read it?  Did you visit the page?  Did you try to follow the instructions? 

How can we make this more prominent and action inducing, without being insulting.  How about
"""
WARNING!!!     WARNING!!!     WARNING!!!     WARNING!!!     WARNING!!!

The version of Tcl/Tk (8.5.9) is ancient and obsolete!

It is almost certainly the buggy and unstable Apple version.
If so, it will eventually crash, causing tkinter and IDLE to crash.

If you continue, DO NOT REPORT the problems that result.

Instead, go to either 
1. http://www.python.org/download/mac/tcltk/
for current information on getting a newer version of Tcl/Tk 8.5;

or (recommended)
2. https://www.python.org/downloads/mac-osx/
to get the macOS 64-bit installer, which includes Tcl/Tk 8.6,
and reinstall.
"""

The last bit about re-downloading and re-installing should be added in any case.

Ned: https://www.python.org/download/mac/tcltk/ lists 8.5.9 under Alternate Tcl/Tk.  There have been multiple reports, like this one, of 8.5.9 causing crashes.  Should 8.5.9 be Not Recommended, and the Alternate column deleted?

Me: tkVersionWarning() is untested.  To do so, the full tk version (patchlevel) should be read on startup, (and added to the sign-on message), and passed to this function.  Tests could then pass in different values.

The function could return '' or message instead of False or message.
msg320254 - (view) Author: Ned Deily (ned.deily) * (Python committer) Date: 2018-06-22 18:54
Jasper, as Terry notes, you can either download and install a version of ActiveState Tcl/Tk 8.5 (not 8.6) to use with the version of Python 3.6.5 installed or, better, download and install from the alternate 10.9+ 64-bit-only Python 3.6.5 insteller from python.org which has a built-in version of Tcl/Tk 8.6.

Terry, besides the reference in IDLE startup itself, there is a reference to the tcltk page in the macOS installer README which is displayed in the macOS installer during Python installation.  I believe that should be more than sufficient notice.  More importantly, I'm trying to deprecate use of the 64-bit/32-bit installer.  Starting with the release of 3.7.0 and 3.6.6, the 64-bit-only installer (with builtin Tk 8.6) will be the default download and for 3.7.0 both installer variants come with a builtin Tk 8.6.  And, unless some unforeseen problem pops up, I'm also planning to get rid of Tk 8.5 for good with 3.6.7 and 2.7.16.
msg320294 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2018-06-23 01:58
I agree that an install screen is a better place for the link.  And if the 3.6.7 installer links with an included 8.6, the 8.5.7/9 message will be obsolete for the included IDLE, hence no point in patching it.  Hooray.

I will open separate issues about printing the Tk version on startup, and possibly deprecating the use of 8.5 with IDLE, and if so, when.
msg320308 - (view) Author: Jasper Trooster (Japsert) Date: 2018-06-23 14:22
Hey, thanks for the quick response. I have to add that, when going to the download page to download site (https://www.python.org/downloads/) the big yellow button that says "Download Python 3.6.5" downloads the 64-/32-bit installer (at least, I think so as it redirects to https://www.python.org/ftp/python/3.6.5/python-3.6.5-macosx10.6.pkg . You can see the "-macosx10.6" part.) I pressed that when I started coding, not knowing that I had to install a different version.

You can find it when you click on Mac OS X link in the text under the button. Maybe the website could present an option to choose?

And one question: which installer from the list should I choose? There are seemingly hundreds of them.
msg320310 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2018-06-23 14:51
Now I see what Ned meant by making 64-bit-only instead of 64-/32-bit the default in 3.6.7.

What we directly suggested is https://www.python.org/downloads/release/python-365/, pick 'macOS 64-bit installer', 'for OS X 10.9 and later'.

You could also go to https://www.python.org/downloads/mac-osx/ and pick the same for 3.6.6rc1 or 3.7.0rc1, or wait for 3.6.6 or 3.7.0, both of which should be out in a few days unless there will be an unannounced-as-yet delay.

I changed to title to something that is more likely to be useful for searches.
History
Date User Action Args
2022-04-11 14:59:02adminsetgithub: 78123
2018-06-23 14:51:14terry.reedysetmessages: + msg320310
title: IDLE: Improve Apple MacOS Tcl/Tk warning and web page -> IDLE: Problems using IDLE and 2.7, 3.6 macOS 64-/32-bit installer
2018-06-23 14:22:04Japsertsetfiles: + Schermafbeelding 2018-06-23 om 16.15.27.png

messages: + msg320308
2018-06-23 01:58:25terry.reedysetmessages: + msg320294
2018-06-22 18:54:56ned.deilysetstatus: open -> closed
messages: + msg320254

assignee: terry.reedy -> ned.deily
resolution: third party
stage: needs patch -> resolved
2018-06-22 18:15:12terry.reedysettype: crash -> enhancement
title: IDLE crash when typing opening bracket -> IDLE: Improve Apple MacOS Tcl/Tk warning and web page
components: + macOS

nosy: + ned.deily, ronaldoussoren
versions: + Python 3.7, Python 3.8
messages: + msg320251
stage: needs patch
2018-06-22 15:12:18Japsertcreate