Author ned.deily
Recipients benjamin.peterson, kbk, larry, markroseman, ned.deily, python-dev, roger.serwy, terry.reedy
Date 2015-08-09.19:43:50
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1439149430.18.0.0258980992841.issue24745@psf.upfronthosting.co.za>
In-reply-to
Content
Unfortunately, we didn't test this change with Tk 8.4: TkFixedFont does not exist in 8.4.  This means that, unless the user has already modified the IDLE configuration to use an explicit font, IDLE linked with Tk 8.4 crashes in initialization.

$ mv .idlerc/ .idlerc-OLD
$ idle3.5
Traceback (most recent call last):
  File "/usr/local/bin/idle3.5", line 5, in <module>
    main()
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/idlelib/PyShell.py", line 1560, in main
    shell = flist.open_shell()
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/idlelib/PyShell.py", line 320, in open_shell
    self.pyshell = PyShell(self)
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/idlelib/PyShell.py", line 867, in __init__
    OutputWindow.__init__(self, flist, None, None)
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/idlelib/OutputWindow.py", line 16, in __init__
    EditorWindow.__init__(self, *args)
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/idlelib/EditorWindow.py", line 233, in __init__
    text['font'] = idleConf.GetFont(self.root, 'main', 'EditorWindow')
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/idlelib/configHandler.py", line 691, in GetFont
    f = Font(name='TkFixedFont', exists=True, root=root)
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/tkinter/font.py", line 87, in __init__
    "named font %s does not already exist" % (self.name,))
_tkinter.TclError: named font TkFixedFont does not already exist
n

A workaround is to manually create or edit the IDLE configuration file and define an explicit font, for example on OS X:

$ cat > ~/.idlerc/config-main.cfg <<EOF
[EditorWindow]
font-size = 11
font = monaco
EOF

This is a release blocker for 3.5.0, first seen in 3.5.0rc1.
History
Date User Action Args
2015-08-09 19:43:50ned.deilysetrecipients: + ned.deily, terry.reedy, kbk, larry, benjamin.peterson, roger.serwy, markroseman, python-dev
2015-08-09 19:43:50ned.deilysetmessageid: <1439149430.18.0.0258980992841.issue24745@psf.upfronthosting.co.za>
2015-08-09 19:43:50ned.deilylinkissue24745 messages
2015-08-09 19:43:50ned.deilycreate