Since 2.7.13, only severe bugs are fixed on the 2.7 branch.
What's New in IDLE 2.7.17?
==========================
*Release date: 2019-07-??*
bpo-36807: When saving a file, call file.flush() and os.fsync()
so bits are flushed to e.g. a USB drive.
What's New in IDLE 2.7.16?
==========================
*Release date: 2019-03-02*
bpo-31500: Default fonts now are scaled on HiDPI displays.
bpo-34275: Make calltips always visible on Mac.
bpo-34120: Fix freezing after closing some dialogs on Mac.
This is one of multiple regressions from using newer tcl/tk.
What's New in IDLE 2.7.13?
==========================
*Release date: 2016-12-17*
- Issue #27854: Make Help => IDLE Help work again on Windows.
Include idlelib/help.html in 2.7 Windows installer.
- Issue #25507: Add back import needed for 2.x encoding warning box.
Add pointer to 'Encoding declaration' in Language Reference.
- Issue #15308: Add 'interrupt execution' (^C) to Shell menu.
Patch by Roger Serwy, updated by Bayard Randel.
- Issue #27922: Stop IDLE tests from 'flashing' gui widgets on the screen.
- Issue #17642: add larger font sizes for classroom projection.
- Add version to title of IDLE help window.
- Issue #25564: In section on IDLE -- console differences, mention that
using exec means that __builtins__ is defined for each statement.
- Issue #27714: text_textview and test_autocomplete now pass when re-run
in the same process. This occurs when test_idle fails when run with the
-w option but without -jn. Fix warning from test_config.
- Issue #27452: add line counter and crc to IDLE configHandler test dump.
- Issue #27365: Allow non-ascii chars in IDLE NEWS.txt, for contributor names.
- Issue #27245: IDLE: Cleanly delete custom themes and key bindings.
Previously, when IDLE was started from a console or by import, a cascade
of warnings was emitted. Patch by Serhiy Storchaka.
What's New in IDLE 2.7.12?
==========================
*Release date: 2016-06-25*
- Issue #5124: Paste with text selected now replaces the selection on X11.
This matches how paste works on Windows, Mac, most modern Linux apps,
and ttk widgets. Original patch by Serhiy Storchaka.
- Issue #24759: Make clear in idlelib.idle_test.__init__ that the directory
is a private implementation of test.test_idle and tool for maintainers.
- Issue #26673: When tk reports font size as 0, change to size 10.
Such fonts on Linux prevented the configuration dialog from opening.
- Issue #27044: Add ConfigDialog.remove_var_callbacks to stop memory leaks.
- In the 'IDLE-console differences' section of the IDLE doc, clarify
how running with IDLE affects sys.modules and the standard streams.
- Issue #25507: fix incorrect change in IOBinding that prevented printing.
Change also prevented saving shell window with non-ascii characters.
Augment IOBinding htest to include all major IOBinding functions.
MARK in README.txt and open this and NEWS.txt with 'ascii'.
Re-encode CREDITS.txt to utf-8 and open it with 'utf-8'.
- Issue #26417: Prevent spurious errors and incorrect defaults when
installing IDLE 2.7 on OS X: default configuration settings are
no longer installed from OS X specific copies.
What's New in IDLE 2.7.11?
==========================
*Release date: 2015-12-06*
- Issue 15348: Stop the debugger engine (normally in a user process)
before closing the debugger window (running in the IDLE process).
This prevents the RuntimeErrors that were being caught and ignored.
- Issue #24455: Prevent IDLE from hanging when a) closing the shell while the
debugger is active (15347); b) closing the debugger with the [X] button
(15348); and c) activating the debugger when already active (24455).
The patch by Mark Roseman does this by making two changes.
1. Suspend and resume the gui.interaction method with the tcl vwait
mechanism intended for this purpose (instead of root.mainloop & .quit).
2. In gui.run, allow any existing interaction to terminate first.
- Change 'The program' to 'Your program' in an IDLE 'kill program?' message
to make it clearer that the program referred to is the currently running
user program, not IDLE itself.
- Issue #24750: Improve the appearance of the IDLE editor window status bar.
- Issue #25313: Change the handling of new built-in text color themes to better
address the compatibility problem introduced by the addition of IDLE Dark.
Consistently use the revised idleConf.CurrentTheme everywhere in idlelib.
- Issue #24782: Extension configuration is now a tab in the IDLE Preferences
dialog rather than a separate dialog. The former tabs are now a sorted
list. Patch by Mark Roseman.
- Issue #22726: Re-activate the config dialog help button with some content
about the other buttons and the new IDLE Dark theme.
- Issue #24820: IDLE now has an 'IDLE Dark' built-in text color theme.
It is more or less IDLE Classic inverted, with a cobalt blue background.
Strings, comments, keywords, ... are still green, red, orange, ... .
To use it with IDLEs released before November 2015, hit the
'Save as New Custom Theme' button and enter a new name,
such as 'Custom Dark'. The custom theme will work with any IDLE
release, and can be modified.
- Issue #25224: README.txt is now an idlelib index for IDLE developers and
curious users. The previous user content is now in the IDLE doc chapter.
'IDLE' now means 'Integrated Development and Learning Environment'.
- Issue #24820: Users can now set breakpoint colors in
Settings -> Custom Highlighting. Original patch by Mark Roseman.
- Issue #24972: Inactive selection background now matches active selection
background, as configured by users, on all systems. Found items are now
always highlighted on Windows. Initial patch by Mark Roseman.
- Issue #24570: Idle: make calltip and completion boxes appear on Macs
affected by a tk regression. Initial patch by Mark Roseman.
- Issue #24988: Idle ScrolledList context menus (used in debugger)
now work on Mac Aqua. Patch by Mark Roseman.
- Issue #24801: Make right-click for context menu work on Mac Aqua.
- Issue #25173: Associate tkinter messageboxes with a specific widget.
For Mac OSX, make them a 'sheet'. Patch by Mark Roseman.
- Issue #25198: Enhance the initial html viewer now used for Idle Help.
* Properly indent fixed-pitch text (patch by Mark Roseman).
* Give code snippet a very Sphinx-like light blueish-gray background.
* Re-use initial width and height set by users for shell and editor.
* When the Table of Contents (TOC) menu is used, put the section header
at the top of the screen.
- Issue #25225: Condense and rewrite Idle doc section on text colors.
- Issue #21995: Explain some differences between IDLE and console Python.
- Issue #22820: Explain need for *print* when running file from Idle editor.
- Issue #25224: Doc: augment Idle feature list and no-subprocess section.
- Issue #25219: Update doc for Idle command line options.
Some were missing and notes were not correct.
- Issue #24861: Most of idlelib is private and subject to change.
Use idleib.idle.* to start Idle. See idlelib.__init__.__doc__.
- Issue #25199: Idle: add synchronization comments for future maintainers.
- Issue #16893: Replace help.txt with help.html for Idle doc display.
The new idlelib/help.html is rstripped Doc/build/html/library/idle.html.
It looks better than help.txt and will better document Idle as released.
The tkinter html viewer that works for this file was written by Mark Roseman.
The now unused EditorWindow.HelpDialog class and helt.txt file are deprecated.
- Issue #24199: Deprecate unused idlelib.idlever with possible removal in 3.6.
- Issue #24790: Remove extraneous code (which also create 2 & 3 conflicts).
- Issue #23672: Allow Idle to edit and run files with astral chars in name.
Patch by Mohd Sanad Zaki Rizvi.
- Issue 24745: Idle editor default font. Switch from Courier to
platform-sensitive TkFixedFont. This should not affect current customized
font selections. If there is a problem, edit $HOME/.idlerc/config-main.cfg
and remove 'fontxxx' entries from [Editor Window]. Patch by Mark Roseman.
- Issue #21192: Idle editor. When a file is run, put its name in the restart bar.
Do not print false prompts. Original patch by Adnan Umer.
- Issue #13884: Idle menus. Remove tearoff lines. Patch by Roger Serwy.
- Issue #15809: IDLE shell now uses locale encoding instead of Latin1 for
decoding unicode literals.
What's New in IDLE 2.7.10?
=========================
*Release date: 2015-05-23*
- Issue #23583: Fixed writing unicode to standard output stream in IDLE.
- Issue #20577: Configuration of the max line length for the FormatParagraph
extension has been moved from the General tab of the Idle preferences dialog
to the FormatParagraph tab of the Config Extensions dialog.
- Issue #16893: Update Idle doc chapter to match current Idle and add new
- Issue #23180: Rename IDLE "Windows" menu item to "Window".
What's New in IDLE 2.7.9?
=========================
*Release date: 2014-12-10*
- Issue #16893: Update Idle doc chapter to match current Idle and add new
- Issue #3068: Add Idle extension configuration dialog to Options menu.
Changes are written to HOME/.idlerc/config-extensions.cfg.
Original patch by Tal Einat.
- Issue #16233: A module browser (File : Class Browser, Alt+C) requires an
editor window with a filename. When Class Browser is requested otherwise,
from a shell, output window, or 'Untitled' editor, Idle no longer displays
an error box. It now pops up an Open Module box (Alt+M). If a valid name
is entered and a module is opened, a corresponding browser is also opened.
- Issue #4832: Save As to type Python files automatically adds .py to the
name you enter (even if your system does not display it). Some systems
automatically add .txt when type is Text files.
- Issue #21986: Code objects are not normally pickled by the pickle module.
To match this, they are no longer pickled when running under Idle.
- Issue #22221: IDLE now ignores the source encoding declaration on the second
line if the first line contains anything except a comment.
- Issue #17390: Adjust Editor window title; remove 'Python',
- Issue #14105: Idle debugger breakpoints no longer disappear
when inserting or deleting lines.
What's New in IDLE 2.7.8?
=========================
*Release date: 2014-06-29*
- Issue #21940: Add unittest for WidgetRedirector. Initial patch by Saimadhav
- Issue #18592: Add unittest for SearchDialogBase. Patch by Phil Webster.
- Issue #21694: Add unittest for ParenMatch. Patch by Saimadhav Heblikar.
- Issue #21686: add unittest for HyperParser. Original patch by Saimadhav
- Issue #12387: Add missing upper(lower)case versions of default Windows key
bindings for Idle so Caps Lock does not disable them. Patch by Roger Serwy.
- Issue #21695: Closing a Find-in-files output window while the search is
still in progress no longer closes Idle.
- Issue #18910: Add unittest for textView. Patch by Phil Webster.
- Issue #18292: Add unittest for AutoExpand. Patch by Saihadhav Heblikar.
- Issue #18409: Add unittest for AutoComplete. Patch by Phil Webster.
What's New in IDLE 2.7.7?
=========================
*Release date: 2014-05-31*
- Issue #18104: Add idlelib/idle_test/htest.py with a few sample tests to begin
consolidating and improving human-validated tests of Idle. Change other files
as needed to work with htest. Running the module as __main__ runs all tests.
- Issue #21139: Change default paragraph width to 72, the PEP 8 recommendation.
- Issue #21284: Paragraph reformat test passes after user changes reformat width.
- Issue #20406: Use Python application icons for Idle window title bars.
Patch mostly by Serhiy Storchaka.
- Issue #21029: Occurrences of "print" are now consistently colored as
being a keyword (the colorizer doesn't know if print functions are
- Issue #17721: Remove non-functional configuration dialog help button until we
- Issue #17390: Add Python version to Idle editor window title bar.
Original patches by Edmond Burnett and Kent Johnson.
- Issue #20058: sys.stdin.readline() in IDLE now always returns only one line.
- Issue #19481: print() of unicode, str or bytearray subclass instance in IDLE
- Issue #18270: Prevent possible IDLE AttributeError on OS X when no initial
- Issue #17654: Ensure IDLE menus are customized properly on OS X for
non-framework builds and for all variants of Tk.
What's New in IDLE 2.7.6?
=========================
*Release date: 2013-11-10*
- Issue #19426: Fixed the opening of Python source file with specified encoding.
- Issue #18873: IDLE now detects Python source code encoding only in comment
- Issue #18988: The "Tab" key now works when a word is already autocompleted.
- Issue #18489: Add tests for SearchEngine. Original patch by Phil Webster.
- Issue #18429: Format / Format Paragraph, now works when comment blocks
are selected. As with text blocks, this works best when the selection
only includes complete lines.
- Issue #18226: Add docstrings and unittests for FormatParagraph.py.
Original patches by Todd Rovito and Phil Webster.
- Issue #18279: Format - Strip trailing whitespace no longer marks a file as
changed when it has not been changed. This fix followed the addition of a
test file originally written by Phil Webster (the issue's main goal).
- Issue #18539: Calltips now work for float default arguments.
- Issue #7136: In the Idle File menu, "New Window" is renamed "New File".
Patch by Tal Einat, Roget Serwy, and Todd Rovito.
- Issue #8515: Set __file__ when run file in IDLE.
Initial patch by Bruce Frederiksen.
- Issue #5492: Avoid traceback when exiting IDLE caused by a race condition.
- Issue #17511: Keep IDLE find dialog open after clicking "Find Next".
Original patch by Sarah K.
- Issue #15392: Create a unittest framework for IDLE.
Preliminary patch by Rajagopalasarma Jayakrishnan
See Lib/idlelib/idle_test/README.txt for how to run Idle tests.
- Issue #14146: Highlight source line while debugging on Windows.
- Issue #17532: Always include Options menu for IDLE on OS X.
What's New in IDLE 2.7.5?
=========================
*Release date: 2013-05-12*
- Issue #17838: Allow sys.stdin to be reassigned.
- Issue #14735: Update IDLE docs to omit "Control-z on Windows".
- Issue #17585: Fixed IDLE regression. Now closes when using exit() or quit().
- Issue #17657: Show full Tk version in IDLE's about dialog.
- Issue #17613: Prevent traceback when removing syntax colorizer in IDLE.
- Issue #1207589: Backwards-compatibility patch for right-click menu in IDLE.
- Issue #16887: IDLE now accepts Cancel in tabify/untabify dialog box.
- Issue #14254: IDLE now handles readline correctly across shell restarts.
- Issue #17614: IDLE no longer raises exception when quickly closing a file.
- Issue #6698: IDLE now opens just an editor window when configured to do so.
- Issue #8900: Using keyboard shortcuts in IDLE to open a file no longer
- Issue #6649: Fixed missing exit status in IDLE. Patch by Guilherme Polo.
- Issue #17390: Display Python version on Idle title bar.
Initial patch by Edmond Burnett.
What's New in IDLE 2.7.4?
=========================
*Release date: 2013-04-06*
- Issue #17625: In IDLE, close the replace dialog after it is used.
- IDLE was displaying spurious SystemExit tracebacks when running scripts
that terminated by raising SystemExit (i.e. unittest and turtledemo).
- Issue #9290: In IDLE the sys.std* streams now implement io.TextIOBase
interface and support all mandatory methods and properties.
- Issue #16829: IDLE printing no longer fails if there are spaces or other
special characters in the file path.
- Issue #16819: IDLE method completion now correctly works for unicode literals.
- Issue #16504: IDLE now catches SyntaxErrors raised by tokenizer. Patch by
- Issue #1207589: Add Cut/Copy/Paste items to IDLE right click Context Menu
- Issue #13052: Fix IDLE crashing when replace string in Search/Replace dialog
ended with '\'. Patch by Roger Serwy.
- Issue #9803: Don't close IDLE on saving if breakpoint is open.
- Issue #14958: Change IDLE systax highlighting to recognize all string and byte
literals currently supported in Python 2.7.
- Issue #14962: Update text coloring in IDLE shell window after changing
options. Patch by Roger Serwy.
- Issue #10997: Prevent a duplicate entry in IDLE's "Recent Files" menu.
- Issue #12510: Attempting to get invalid tooltip no longer closes IDLE.
Original patch by Roger Serwy.
- Issue #10365: File open dialog now works instead of crashing
even when parent window is closed. Patch by Roger Serwy.
- Issue #14876: Use user-selected font for highlight configuration.
- Issue #14409: IDLE now properly executes commands in the Shell window
when it cannot read the normal config files on startup and
has to use the built-in default key bindings.
There was previously a bug in one of the defaults.
- Issue #3573: IDLE hangs when passing invalid command line args
(directory(ies) instead of file(s)) (Patch by Guilherme Polo)
- Issue #5219: Prevent event handler cascade in IDLE.
- Issue #15318: Prevent writing to sys.stdin.
- Issue #13532, #15319: Check that arguments to sys.stdout.write are strings.
- Issue #10365: File open dialog now works instead of crashing even when
parent window is closed while dialog is open.
- 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.
- Issue #15853: Prevent IDLE crash on OS X when opening Preferences menu
with certain versions of Tk 8.5. Initial patch by Kevin Walzer.
What's New in IDLE 2.7.3?
=========================
*Release date: 2012-04-09*
- Issue #964437 Make IDLE help window non-modal.
Patch by Guilherme Polo and Roger Serwy.
- Issue #13933: IDLE auto-complete did not work with some imported
module, like hashlib. (Patch by Roger Serwy)
- Issue #13506: Add '' to path for IDLE Shell when started and restarted with Restart Shell.
Original patches by Marco Scataglini and Roger Serwy.
- Issue #4625: If IDLE cannot write to its recent file or breakpoint
files, display a message popup and continue rather than crash.
(original patch by Roger Serwy)
- Issue #8793: Prevent IDLE crash when given strings with invalid hex escape
- Issue #13296: Fix IDLE to clear compile __future__ flags on shell restart.
- Issue #14409: IDLE now properly executes commands in the Shell window
when it cannot read the normal config files on startup and
has to use the built-in default key bindings.
There was previously a bug in one of the defaults.