blob: 1764bb4cd4aa79a7d92f55c82242dcd893e023a9 [file] [log] [blame]
xf.li86118912025-03-19 20:07:27 -07001What's New in IDLE 3.8.9
2Released on 2021-05-03?
3=========================
4
5
6bpo-43283: Document why printing to IDLE's Shell is often slower than
7printing to a system terminal and that it can be made faster by
8pre-formatting a single string before printing.
9
10What's New in IDLE 3.8.8
11Released on 2021-02-19
12======================================
13
14bpo-23544: Disable Debug=>Stack Viewer when user code is running or
15Debugger is active, to prevent hang or crash. Patch by Zackery Spytz.
16
17bpo-43008: Make IDLE invoke :func:`sys.excepthook` in normal,
182-process mode. Patch by Ken Hilton.
19
20bpo-33065: Fix problem debugging user classes with __repr__ method.
21
22bpo-32631: Finish zzdummy example extension module: make menu entries
23work; add docstrings and tests with 100% coverage.
24
25bpo-42508: Keep IDLE running on macOS. Remove obsolete workaround
26that prevented running files with shortcuts when using new universal2
27installers built on macOS 11.
28
29What's New in IDLE 3.8.7
30Released on 2020-12-27
31======================================
32
33bpo-42426: Fix reporting offset of the RE error in searchengine.
34
35bpo-42416: Get docstrings for IDLE calltips more often
36by using inspect.getdoc.
37
38bpo-33987: Mostly finish using ttk widgets, mainly for editor,
39settings, and searches. Some patches by Mark Roseman.
40
41bpo-41775: Make 'IDLE Shell' the shell title.
42
43bpo-35764: Rewrite the Calltips doc section.
44
45bpo-40181: In calltips, stop reminding that '/' marks the end of
46positional-only arguments.
47
48
49What's New in IDLE 3.8.6
50Released on 2020-09-??
51======================================
52
53bpo-41468: Improve IDLE run crash error message (which users should
54never see).
55
56bpo-41373: Save files loaded with no line ending, as when blank, or
57different line endings, by setting its line ending to the system
58default. Fix regression in 3.8.4 and 3.9.0b4.
59
60
61What's New in IDLE 3.8.5
62Released on 2020-07-20
63======================================
64
65bpo-41300: Save files with non-ascii chars. Fix regression in
663.9.0b4 and 3.8.4.
67
68
69What's New in IDLE 3.8.4
70Released on 2020-06-30
71======================================
72
73bpo-37765: Add keywords to module name completion list. Rewrite
74Completions section of IDLE doc.
75
76bpo-41152: The encoding of ``stdin``, ``stdout`` and ``stderr`` in IDLE
77is now always UTF-8.
78
79bpo-41144: Make Open Module open a special module such as os.path.
80
81bpo-40723: Make test_idle pass when run after import.
82Patch by Florian Dahlitz.
83
84
85What's New in IDLE 3.8.3
86Released on 2020-05-13
87======================================
88
89bpo-38689: IDLE will no longer freeze when inspect.signature fails
90when fetching a calltip.
91
92bpo-27115: For 'Go to Line', use a Query entry box subclass with
93IDLE standard behavior and improved error checking.
94
95bpo-39885: When a context menu is invoked by right-clicking outside
96of a selection, clear the selection and move the cursor. Cut and
97Copy require that the click be within the selection.
98
99bpo-39852: Edit "Go to line" now clears any selection, preventing
100accidental deletion. It also updates Ln and Col on the status bar.
101
102bpo-39781: Selecting code context lines no longer causes a jump.
103
104bpo-39663: Add tests for pyparse find_good_parse_start().
105
106
107What's New in IDLE 3.8.2
108Released on 2020-02-17
109======================================
110
111bpo-39600: Remove duplicate font names from configuration list.
112
113bpo-38792: Close a shell calltip if a :exc:`KeyboardInterrupt`
114or shell restart occurs. Patch by Zackery Spytz.
115
116bpo-30780: Add remaining configdialog tests for buttons and
117highlights and keys tabs.
118
119bpo-39388: Settings dialog Cancel button cancels pending changes.
120
121bpo-39050: Settings dialog Help button again displays help text.
122
123bpo-32989: Add tests for editor newline_and_indent_event method.
124Remove unneeded arguments and dead code from pyparse
125find_good_parse_start method.
126
127
128What's New in IDLE 3.8.1
129Released on 2019-12-18
130======================================
131
132bpo-38943: Fix autocomplete windows not always appearing on some
133systems. Patch by Johnny Najera.
134
135bpo-38944: Escape key now closes IDLE completion windows. Patch by
136Johnny Najera.
137
138bpo-38862: 'Strip Trailing Whitespace' on the Format menu removes extra
139newlines at the end of non-shell files.
140
141bpo-38636: Fix IDLE Format menu tab toggle and file indent width. These
142functions (default shortcuts Alt-T and Alt-U) were mistakenly disabled
143in 3.7.5 and 3.8.0.
144
145bpo-4630: Add an option to toggle IDLE's cursor blink for shell,
146editor, and output windows. See Settings, General, Window Preferences,
147Cursor Blink. Patch by Zackery Spytz.
148
149bpo-26353: Stop adding newline when saving an IDLE shell window.
150
151bpo-38598: Do not try to compile IDLE shell or output windows.
152
153
154What's New in IDLE 3.8.0 (since 3.7.0)
155Released on 2019-10-14
156======================================
157
158bpo-36698: IDLE no longer fails when writing non-encodable characters
159to stderr. It now escapes them with a backslash, like the regular
160Python interpreter. Add an errors field to the standard streams.
161
162bpo-13153: Improve tkinter's handing of non-BMP (astral) unicode
163characters, such as 'rocket \U0001f680'. Whether a proper glyph or
164replacement char is displayed depends on the OS and font. For IDLE,
165astral chars in code interfere with editing.
166
167bpo-35379: When exiting IDLE, catch any AttributeError. One happens
168when EditorWindow.close is called twice. Printing a traceback, when
169IDLE is run from a terminal, is useless and annoying.
170
171bpo-38183: To avoid test issues, test_idle ignores the user config
172directory. It no longer tries to create or access .idlerc or any files
173within. Users must run IDLE to discover problems with saving settings.
174
175bpo-38077: IDLE no longer adds 'argv' to the user namespace when
176initializing it. This bug only affected 3.7.4 and 3.8.0b2 to 3.8.0b4.
177
178bpo-38401: Shell restart lines now fill the window width, always start
179with '=', and avoid wrapping unnecessarily. The line will still wrap
180if the included file name is long relative to the width.
181
182bpo-37092: Add mousewheel scrolling for IDLE module, path, and stack
183browsers. Patch by George Zhang.
184
185bpo-35771: To avoid occasional spurious test_idle failures on slower
186machines, increase the ``hover_delay`` in test_tooltip.
187
188bpo-37824: Properly handle user input warnings in IDLE shell.
189Cease turning SyntaxWarnings into SyntaxErrors.
190
191bpo-37929: IDLE Settings dialog now closes properly when there is no
192shell window.
193
194bpo-37849: Fix completions list appearing too high or low when shown
195above the current line.
196
197bpo-36419: Refactor autocompete and improve testing.
198
199bpo-37748: Reorder the Run menu. Put the most common choice,
200Run Module, at the top.
201
202bpo-37692: Improve highlight config sample with example shell
203interaction and better labels for shell elements.
204
205bpo-37628: Settings dialog no longer expands with font size.
206The font and highlight sample boxes gain scrollbars instead.
207
208bpo-17535: Add optional line numbers for IDLE editor windows.
209
210bpo-37627: Initialize the Customize Run dialog with the command line
211arguments most recently entered before. The user can optionally edit
212before submitting them.
213
214bpo-33610: Code context always shows the correct context when toggled on.
215
216bpo-36390: Gather Format menu functions into format.py. Combine
217paragraph.py, rstrip.py, and format methods from editor.py.
218
219bpo-37530: Optimize code context to reduce unneeded background activity.
220Font and highlight changes now occur along with text changes instead
221of after a random delay.
222
223bpo-27452: Cleanup config.py by inlining RemoveFile and simplifying
224the handling of __file__ in CreateConfigHandlers/
225
226bpo-26806: To compensate for stack frames added by IDLE and avoid
227possible problems with low recursion limits, add 30 to limits in the
228user code execution process. Subtract 30 when reporting recursion
229limits to make this addition mostly transparent.
230
231bpo-37325: Fix tab focus traversal order for help source and custom
232run dialogs.
233
234bpo-37321: Both subprocess connection error messages now refer to
235the 'Startup failure' section of the IDLE doc.
236
237bpo-37177: Properly attach search dialogs to their main window so
238that they behave like other dialogs and do not get hidden behind
239their main window.
240
241bpo-37039: Adjust "Zoom Height" to individual screens by momentarily
242maximizing the window on first use with a particular screen. Changing
243screen settings may invalidate the saved height. While a window is
244maximized, "Zoom Height" has no effect.
245
246bpo-35763: Make calltip reminder about '/' meaning positional-only less
247obtrusive by only adding it when there is room on the first line.
248
249bpo-5680: Add 'Run Customized' to the Run menu to run a module with
250customized settings. Any command line arguments entered are added
251to sys.argv. One can suppress the normal Shell main module restart.
252
253bpo-35610: Replace now redundant editor.context_use_ps1 with
254.prompt_last_line. This finishes change started in bpo-31858.
255
256bpo-32411: Stop sorting dict created with desired line order.
257
258bpo-37038: Make idlelib.run runnable; add test clause.
259
260bpo-36958: Print any argument other than None or int passed to
261SystemExit or sys.exit().
262
263bpo-36807: When saving a file, call file.flush() and os.fsync()
264so bits are flushed to e.g. a USB drive.
265
266bpo-36429: Fix starting IDLE with pyshell.
267Add idlelib.pyshell alias at top; remove pyshell alias at bottom.
268Remove obsolete __name__=='__main__' command.
269
270bpo-30348: Increase test coverage of idlelib.autocomplete by 30%.
271Patch by Louie Lu.
272
273bpo-23205: Add tests and refactor grep's findfiles.
274
275bpo-36405: Use dict unpacking in idlelib.
276
277bpo-36396: Remove fgBg param of idlelib.config.GetHighlight().
278This param was only used twice and changed the return type.
279
280bpo-23216: IDLE: Add docstrings to search modules.
281
282bpo-36176: Fix IDLE autocomplete & calltip popup colors.
283Prevent conflicts with Linux dark themes
284(and slightly darken calltip background).
285
286bpo-36152: Remove colorizer.ColorDelegator.close_when_done and the
287corresponding argument of .close(). In IDLE, both have always been
288None or False since 2007.
289
290bpo-36096: Make colorizer state variables instance-only.
291
292bpo-32129: Avoid blurry IDLE application icon on macOS with Tk 8.6.
293Patch by Kevin Walzer.
294
295bpo-24310: Document settings dialog font tab sample.
296
297bpo-35689: Add docstrings and tests for colorizer.
298
299bpo-35833: Revise IDLE doc for control codes sent to Shell.
300Add a code example block.
301
302bpo-35770: IDLE macosx deletes Options => Configure IDLE.
303It previously deleted Window => Zoom Height by mistake.
304(Zoom Height is now on the Options menu). On Mac, the settings
305dialog is accessed via Preferences on the IDLE menu.
306
307bpo-35769: Change new file name from 'Untitled' to 'untitled'.
308
309bpo-35660: Fix imports in window module.
310
311bpo-35641: Properly format calltip for function without docstring.
312
313bpo-33987: Use ttk Frame for ttk widgets.
314
315bpo-34055: Fix erroneous 'smart' indents and newlines in IDLE Shell.
316
317bpo-28097: Add Previous/Next History entries to Shell menu.
318
319bpo-35591: Find Selection now works when selection not found.
320
321bpo-35598: Update config_key: use PEP 8 names and ttk widgets,
322make some objects global, and add tests.
323
324bpo-35196: Speed up squeezer line counting.
325
326bpo-35208: Squeezer now counts wrapped lines before newlines.
327
328bpo-35555: Gray out Code Context menu entry when it's not applicable.
329
330bpo-22703: Improve the Code Context and Zoom Height menu labels.
331The Code Context menu label now toggles between Show/Hide Code Context.
332The Zoom Height menu now toggles between Zoom/Restore Height.
333Zoom Height has moved from the Window menu to the Options menu.
334
335bpo-35521: Document the editor code context feature.
336Add some internal references within the IDLE doc.
337
338bpo-34864: When starting IDLE on MacOS, warn if the system setting
339"Prefer tabs when opening documents" is "Always". As previous
340documented for this issue, running IDLE with this setting causes
341problems. If the setting is changed while IDLE is running,
342there will be no warning until IDLE is restarted.
343
344bpo-35213: Where appropriate, use 'macOS' in idlelib.
345
346bpo-34864: Document two IDLE on MacOS issues. The System Preferences
347Dock "prefer tabs always" setting disables some IDLE features.
348Menus are a bit different than as described for Windows and Linux.
349
350bpo-35202: Remove unused imports in idlelib.
351
352bpo-33000: Document that IDLE's shell has no line limit.
353A program that runs indefinitely can overfill memory.
354
355bpo-23220: Explain how IDLE's Shell displays output.
356Add new subsection "User output in Shell".
357
358bpo-35099: Improve the doc about IDLE running user code.
359"IDLE -- console differences" is renamed "Running user code".
360It mostly covers the implications of using custom sys.stdxxx objects.
361
362bpo-35097: Add IDLE doc subsection explaining editor windows.
363Topics include opening, title and status bars, .py* extension, and running.
364
365Issue 35093: Document the IDLE document viewer in the IDLE doc.
366Add a paragraph in "Help and preferences", "Help sources" subsection.
367
368bpo-1529353: Explain Shell text squeezing in the IDLE doc.
369
370bpo-35088: Update idlelib.help.copy_string docstring.
371We now use git and backporting instead of hg and forward merging.
372
373bpo-35087: Update idlelib help files for the current doc build.
374The main change is the elimination of chapter-section numbers.
375
376bpo-1529353: Output over N lines (50 by default) is squeezed down to a button.
377N can be changed in the PyShell section of the General page of the
378Settings dialog. Fewer, but possibly extra long, lines can be squeezed by
379right clicking on the output. Squeezed output can be expanded in place
380by double-clicking the button or into the clipboard or a separate window
381by right-clicking the button.
382
383bpo-34548: Use configured color theme for read-only text views.
384
385bpo-33839: Refactor ToolTip and CallTip classes; add documentation
386and tests.
387
388bpo-34047: Fix mouse wheel scrolling direction on macOS.
389
390bpo-34275: Make calltips always visible on Mac.
391Patch by Kevin Walzer.
392
393bpo-34120: Fix freezing after closing some dialogs on Mac.
394This is one of multiple regressions from using newer tcl/tk.
395
396bpo-33975: Avoid small type when running htests.
397Since part of the purpose of human-viewed tests is to determine that
398widgets look right, it is important that they look the same for
399testing as when running IDLE.
400
401bpo-33905: Add test for idlelib.stackview.StackBrowser.
402
403bpo-33924: Change mainmenu.menudefs key 'windows' to 'window'.
404Every other menudef key is the lowercase version of the
405corresponding main menu entry (in this case, 'Window').
406
407bpo-33906: Rename idlelib.windows as window
408Match Window on the main menu and remove last plural module name.
409Change imports, test, and attribute references to match new name.
410
411bpo-33917: Fix and document idlelib/idle_test/template.py.
412The revised file compiles, runs, and tests OK. idle_test/README.txt
413explains how to use it to create new IDLE test files.
414
415bpo-33904: In rstrip module, rename class RstripExtension as Rstrip.
416
417bpo-33907: For consistency and clarity, rename calltip objects.
418Module calltips and its class CallTips are now calltip and Calltip.
419In module calltip_w, class CallTip is now CalltipWindow.
420
421bpo-33855: Minimally test all IDLE modules.
422Standardize the test file format. Add missing test files that import
423the tested module and perform at least one test. Check and record the
424coverage of each test.
425
426bpo-33856: Add 'help' to Shell's initial welcome message.
427
428
429What's New in IDLE 3.7.0 (since 3.6.0)
430Released on 2018-06-27
431======================================
432
433bpo-33656: On Windows, add API call saying that tk scales for DPI.
434On Windows 8.1+ or 10, with DPI compatibility properties of the Python
435binary unchanged, and a monitor resolution greater than 96 DPI, this
436should make text and lines sharper and some colors brighter.
437On other systems, it should have no effect. If you have a custom theme,
438you may want to adjust a color or two. If perchance it make text worse
439on your monitor, you can disable the ctypes.OleDLL call near the top of
440pyshell.py and report the problem on python-list or idle-dev@python.org.
441
442bpo-33768: Clicking on a context line moves that line to the top
443of the editor window.
444
445bpo-33763: Replace the code context label widget with a text widget.
446
447bpo-33664: Scroll IDLE editor text by lines.
448(Previously, the mouse wheel and scrollbar slider moved text by a fixed
449number of pixels, resulting in partial lines at the top of the editor
450box.) This change also applies to the shell and grep output windows,
451but currently not to read-only text views.
452
453bpo-33679: Enable theme-specific color configuration for Code Context.
454(Previously, there was one code context foreground and background font
455color setting, default or custom, on the extensions tab, that applied
456to all themes.) For built-in themes, the foreground is the same as
457normal text and the background is a contrasting gray. Context colors for
458custom themes are set on the Hightlights tab along with other colors.
459When one starts IDLE from a console and loads a custom theme without
460definitions for 'context', one will see a warning message on the
461console.
462
463bpo-33642: Display up to maxlines non-blank lines for Code Context.
464If there is no current context, show a single blank line. (Previously,
465the Code Contex had numlines lines, usually with some blank.) The use
466of a new option, 'maxlines' (default 15), avoids possible interference
467with user settings of the old option, 'numlines' (default 3).
468
469bpo-33628: Cleanup codecontext.py and its test.
470
471bpo-32831: Add docstrings and tests for codecontext.py.
472Coverage is 100%. Patch by Cheryl Sabella.
473
474bpo-33564: Code context now recognizes async as a block opener.
475
476bpo-21474: Update word/identifier definition from ascii to unicode.
477In text and entry boxes, this affects selection by double-click,
478movement left/right by control-left/right, and deletion left/right
479by control-BACKSPACE/DEL.
480
481bpo-33204: Consistently color invalid string prefixes.
482A 'u' string prefix cannot be paired with either 'r' or 'f'.
483IDLE now consistently colors as much of the prefix, starting at the
484right, as is valid. Revise and extend colorizer test.
485
486bpo-32984: Set __file__ while running a startup file.
487Like Python, IDLE optionally runs 1 startup file in the Shell window
488before presenting the first interactive input prompt. For IDLE,
489option -s runs a file named in environmental variable IDLESTARTUP or
490PYTHONSTARTUP; -r file runs file. Python sets __file__ to the startup
491file name before running the file and unsets it before the first
492prompt. IDLE now does the same when run normally, without the -n
493option.
494
495bpo-32940: Replace StringTranslatePseudoMapping with faster code.
496
497bpo-32916: Change 'str' to 'code' in idlelib.pyparse and users.
498
499bpo-32905: Remove unused code in pyparse module.
500
501bpo-32874: IDLE - add pyparse tests with 97% coverage.
502
503bpo-32837: IDLE - require encoding argument for textview.view_file.
504Using the system and place-dependent default encoding for open()
505is a bad idea for IDLE's system and location-independent files.
506
507bpo-32826: Add "encoding=utf-8" to open() in IDLE's test_help_about.
508GUI test test_file_buttons() only looks at initial ascii-only lines,
509but failed on systems where open() defaults to 'ascii' because
510readline() internally reads and decodes far enough ahead to encounter
511a non-ascii character in CREDITS.txt.
512
513bpo-32765: Update configdialog General tab create page docstring.
514Add new widgets to the widget list.
515
516bpo-32207: Improve tk event exception tracebacks in IDLE.
517When tk event handling is driven by IDLE's run loop, a confusing
518and distracting queue.EMPTY traceback context is no longer added
519to tk event exception tracebacks. The traceback is now the same
520as when event handling is driven by user code. Patch based on
521a suggestion by Serhiy Storchaka.
522
523bpo-32164: Delete unused file idlelib/tabbedpages.py.
524Use of TabbedPageSet in configdialog was replaced by ttk.Notebook.
525
526bpo-32100: Fix old and new bugs in pathbrowser; improve tests.
527Patch mostly by Cheryl Sabella.
528
529bpo-31860: The font sample in the settings dialog is now editable.
530Edits persist while IDLE remains open.
531Patch by Serhiy Storchake and Terry Jan Reedy.
532
533bpo-31858: Restrict shell prompt manipulation to the shell.
534Editor and output windows only see an empty last prompt line. This
535simplifies the code and fixes a minor bug when newline is inserted.
536Sys.ps1, if present, is read on Shell start-up, but is not set or changed.
537Patch by Terry Jan Reedy.
538
539bpo-28603: Fix a TypeError that caused a shell restart when printing
540a traceback that includes an exception that is unhashable.
541Patch by Zane Bitter.
542
543bpo-13802: Use non-Latin characters in the Font settings sample.
544Even if one selects a font that defines a limited subset of the unicode
545Basic Multilingual Plane, tcl/tk will use other fonts that define a
546character. The expanded example give users of non-Latin characters
547a better idea of what they might see in the shell and editors.
548
549To make room for the expanded sample, frames on the Font tab are
550re-arranged. The Font/Tabs help explains a bit about the additions.
551Patch by Terry Jan Reedy
552
553bpo-31460: Simplify the API of IDLE's Module Browser.
554Passing a widget instead of an flist with a root widget opens the
555option of creating a browser frame that is only part of a window.
556Passing a full file name instead of pieces assumed to come from a
557.py file opens the possibility of browsing python files that do not
558end in .py.
559
560bpo-31649: Make _htest and _utest parameters keyword-only.
561These are used to adjust code for human and unit tests.
562
563bpo-31459: Rename module browser from Class Browser to Module Browser.
564The original module-level class and method browser became a module
565browser, with the addition of module-level functions, years ago.
566Nested classes and functions were added yesterday. For back-
567compatibility, the virtual event <<open-class-browser>>, which
568appears on the Keys tab of the Settings dialog, is not changed.
569Patch by Cheryl Sabella.
570
571bpo-1612262: Module browser now shows nested classes and functions.
572Original patches for code and tests by Guilherme Polo and
573Cheryl Sabella, respectively. Revisions by Terry Jan Reedy.
574
575bpo-31500: Tk's default fonts now are scaled on HiDPI displays.
576This affects all dialogs. Patch by Serhiy Storchaka.
577
578bpo-31493: Fix code context update and font update timers.
579Canceling timers prevents a warning message when test_idle completes.
580
581bpo-31488: Update non-key options in former extension classes.
582When applying configdialog changes, call .reload for each feature class.
583Change ParenMatch so updated options affect existing instances attached
584to existing editor windows.
585
586bpo-31477: Improve rstrip entry in IDLE doc.
587Strip Trailing Whitespace strips more than blank spaces.
588Multiline string literals are not skipped.
589
590bpo-31480: fix tests to pass with zzdummy extension disabled. (#3590)
591To see the example in action, enable it on options extensions tab.
592
593bpo-31421: Document how IDLE runs tkinter programs.
594IDLE calls tcl/tk update in the background in order to make live
595interaction and experimentation with tkinter applications much easier.
596
597bpo-31414: Fix tk entry box tests by deleting first.
598Adding to an int entry is not the same as deleting and inserting
599because int('') will fail. Patch by Terry Jan Reedy.
600
601bpo-27099: Convert IDLE's built-in 'extensions' to regular features.
602 About 10 IDLE features were implemented as supposedly optional
603extensions. Their different behavior could be confusing or worse for
604users and not good for maintenance. Hence the conversion.
605 The main difference for users is that user configurable key bindings
606for builtin features are now handled uniformly. Now, editing a binding
607in a keyset only affects its value in the keyset. All bindings are
608defined together in the system-specific default keysets in config-
609extensions.def. All custom keysets are saved as a whole in config-
610extension.cfg. All take effect as soon as one clicks Apply or Ok.
611 The affected events are '<<force-open-completions>>',
612'<<expand-word>>', '<<force-open-calltip>>', '<<flash-paren>>',
613'<<format-paragraph>>', '<<run-module>>', '<<check-module>>', and
614'<<zoom-height>>'. Any (global) customizations made before 3.6.3 will
615not affect their keyset-specific customization after 3.6.3. and vice
616versa.
617 Initial patch by Charles Wohlganger, revised by Terry Jan Reedy.
618
619bpo-31051: Rearrange condigdialog General tab.
620Sort non-Help options into Window (Shell+Editor) and Editor (only).
621Leave room for the addition of new options.
622Patch by Terry Jan Reedy.
623
624bpo-30617: Add docstrings and tests for outwin subclass of editor.
625Move some data and functions from the class to module level.
626Patch by Cheryl Sabella.
627
628bpo-31287: Do not modify tkinter.messagebox in test_configdialog.
629Instead, mask it with an instance mock that can be deleted.
630Patch by Terry Jan Reedy.
631
632bpo-30781: Use ttk widgets in ConfigDialog pages.
633These should especially look better on MacOSX.
634Patches by Terry Jan Reedy and Cheryl Sabella.
635
636bpo-31206: Factor HighPage(Frame) class from ConfigDialog.
637Patch by Cheryl Sabella.
638
639bp0-31001: Add tests for configdialog highlight tab.
640Patch by Cheryl Sabella.
641
642bpo-31205: Factor KeysPage(Frame) class from ConfigDialog.
643The slightly modified tests continue to pass.
644Patch by Cheryl Sabella.
645
646bpo-31002: Add tests for configdialog keys tab.
647Patch by Cheryl Sabella.
648
649bpo-19903: Change calltipes to use inspect.signature.
650Idlelib.calltips.get_argspec now uses inspect.signature instead of
651inspect.getfullargspec, like help() does. This improves the signature
652in the call tip in a few different cases, including builtins converted
653to provide a signature. A message is added if the object is not
654callable, has an invalid signature, or if it has positional-only
655parameters. Patch by Louie Lu.
656
657bop-31083: Add an outline of a TabPage class in configdialog.
658Add template as comment. Update existing classes to match outline.
659Initial patch by Cheryl Sabella.
660
661bpo-31050: Factor GenPage(Frame) class from ConfigDialog.
662The slightly modified tests for the General tab continue to pass.
663Patch by Cheryl Sabella.
664
665bpo-31004: Factor FontPage(Frame) class from ConfigDialog.
666The slightly modified tests continue to pass. The General test
667broken by the switch to ttk.Notebook is fixed.
668Patch mostly by Cheryl Sabella.
669
670bpo-30781: IDLE - Use ttk Notebook in ConfigDialog.
671This improves navigation by tabbing.
672Patch by Terry Jan Reedy.
673
674bpo-31060: IDLE - Finish rearranging methods of ConfigDialog.
675Grouping methods pertaining to each tab and the buttons will aid
676writing tests and improving the tabs and will enable splitting the
677groups into classes.
678Patch by Terry Jan Reedy.
679
680bpo-30853: IDLE -- Factor a VarTrace class out of ConfigDialog.
681Instance tracers manages pairs consisting of a tk variable and a
682callback function. When tracing is turned on, setting the variable
683calls the function. Test coverage for the new class is 100%.
684Patch by Terry Jan Reedy.
685
686bpo-31003: IDLE: Add more tests for General tab.
687Patch by Terry Jan Reedy.
688
689bpo-30993: IDLE - Improve configdialog font page and tests.
690*In configdialog: Document causal pathways in create_font_tab
691docstring. Simplify some attribute names. Move set_samples calls to
692var_changed_font (idea from Cheryl Sabella). Move related functions to
693positions after the create widgets function.
694* In test_configdialog: Fix test_font_set so not order dependent. Fix
695renamed test_indent_scale so it tests the widget. Adjust tests for
696movement of set_samples call. Add tests for load functions. Put all
697font tests in one class and tab indent tests in another. Except for
698two lines, these tests completely cover the related functions.
699Patch by Terry Jan Reedy.
700
701bpo-30981: IDLE -- Add more configdialog font page tests.
702
703bpo-28523: IDLE: replace 'colour' with 'color' in configdialog.
704
705bpo-30917: Add tests for idlelib.config.IdleConf.
706Increase coverage from 46% to 96%.
707Patch by Louie Lu.
708
709bpo-30913: Document ConfigDialog tk Vars, methods, and widgets in docstrings
710This will facilitate improving the dialog and splitting up the class.
711Original patch by Cheryl Sabella.
712
713bpo-30899: Add tests for ConfigParser subclasses in config.
714Coverage is 100% for those classes and ConfigChanges.
715Patch by Louie Lu.
716
717bpo-30881: Add docstrings to browser.py.
718Patch by Cheryl Sabella.
719
720bpo-30851: Remove unused tk variables in configdialog.
721One is a duplicate, one is set but cannot be altered by users.
722Patch by Cheryl Sabella.
723
724bpo-30870: Select font option with Up and Down keys, as well as with mouse.
725Added test increases configdialog coverage to 60%
726Patches mostly by Louie Lu.
727
728bpo-8231: Call config.IdleConf.GetUserCfgDir only once per process.
729
730bpo-30779: Factor ConfigChanges class from configdialog, put in config; test.
731* In config, put dump test code in a function; run it and unittest in
732 'if __name__ == '__main__'.
733* Add class config.ConfigChanges based on changes_class_v4.py on bpo issue.
734* Add class test_config.ChangesTest, partly using configdialog_tests_v1.py.
735* Revise configdialog to use ConfigChanges; see tracker msg297804.
736* Revise test_configdialog to match configdialog changes.
737* Remove configdialog functions unused or moved to ConfigChanges.
738Cheryl Sabella contributed parts of the patch.
739
740bpo-30777: Configdialog - add docstrings and improve comments.
741Patch by Cheryl Sabella.
742
743bpo-30495: Improve textview with docstrings, PEP8 names, and more tests.
744Split TextViewer class into ViewWindow, ViewFrame, and TextFrame classes
745so that instances of the latter two can be placed with other widgets
746within a multiframe window.
747Patches by Cheryl Sabella and Terry Jan Reedy.
748
749bpo-30723: Make several improvements to parenmatch.
750* Add 'parens' style to highlight both opener and closer.
751* Make 'default' style, which is not default, a synonym for 'opener'.
752* Make time-delay work the same with all styles.
753* Add help for config dialog extensions tab, including parenmatch.
754* Add new tests.
755Original patch by Charles Wohlganger. Revisions by Terry Jan Reedy
756
757bpo-30674: Grep -- Add docstrings. Patch by Cheryl Sabella.
758
759bpo-21519: IDLE's basic custom key entry dialog now detects
760duplicates properly. Original patch by Saimadhav Heblikar.
761
762bpo-29910: IDLE no longer deletes a character after commenting out a
763region by a key shortcut. Add "return 'break'" for this and other
764potential conflicts between IDLE and default key bindings.
765Patch by Serhiy Storchaka.
766
767bpo-30728: Modernize idlelib.configdialog:
768* replace import * with specific imports;
769* lowercase method and attribute lines.
770Patch by Cheryl Sabella.
771
772bpo-6739: Verify user-entered key sequences by trying to bind them
773with to a tk widget. Add tests for all 3 validation functions.
774Original patch by G Polo. Tests added by Cheryl Sabella.
775Code revised and more tests added by Terry Jan Reedy
776
777bpo-24813: Add icon to help_about and make other changes.
778
779bpo-15786: Fix several problems with IDLE's autocompletion box.
780The following should now work: clicking on selection box items;
781using the scrollbar; selecting an item by hitting Return.
782Hangs on MacOSX should no longer happen. Patch by Louie Lu.
783
784bpo-25514: Add doc subsubsection about IDLE failure to start.
785Popup no-connection message directs users to this section.
786
787bpo-30642: Fix reference leaks in IDLE tests.
788Patches by Louie Lu and Terry Jan Reedy.
789
790bpo-30495: Add docstrings for textview.py and use PEP8 names.
791Patches by Cheryl Sabella and Terry Jan Reedy.
792
793bpo-30290: Help-about: use pep8 names and add tests.
794Increase coverage to 100%.
795Patches by Louie Lu, Cheryl Sabella, and Terry Jan Reedy.
796
797bpo-30303: Add _utest option to textview; add new tests.
798Increase coverage to 100%.
799Patches by Louie Lu and Terry Jan Reedy.
800
801Issue #29071: IDLE colors f-string prefixes but not invalid ur prefixes.
802
803Issue #28572: Add 10% to coverage of IDLE's test_configdialog.
804Update and augment description of the configuration system.
805
806
807What's New in IDLE 3.6.0 (since 3.5.0)
808Released on 2016-12-23
809======================================
810
811- Issue #15308: Add 'interrupt execution' (^C) to Shell menu.
812 Patch by Roger Serwy, updated by Bayard Randel.
813
814- Issue #27922: Stop IDLE tests from 'flashing' gui widgets on the screen.
815
816- Issue #27891: Consistently group and sort imports within idlelib modules.
817
818- Issue #17642: add larger font sizes for classroom projection.
819
820- Add version to title of IDLE help window.
821
822- Issue #25564: In section on IDLE -- console differences, mention that
823 using exec means that __builtins__ is defined for each statement.
824
825- Issue #27821: Fix 3.6.0a3 regression that prevented custom key sets
826 from being selected when no custom theme was defined.
827
828- Issue #27714: text_textview and test_autocomplete now pass when re-run
829 in the same process. This occurs when test_idle fails when run with the
830 -w option but without -jn. Fix warning from test_config.
831
832- Issue #27621: Put query response validation error messages in the query
833 box itself instead of in a separate messagebox. Redo tests to match.
834 Add Mac OSX refinements. Original patch by Mark Roseman.
835
836- Issue #27620: Escape key now closes Query box as cancelled.
837
838- Issue #27609: IDLE: tab after initial whitespace should tab, not
839 autocomplete. This fixes problem with writing docstrings at least
840 twice indented.
841
842- Issue #27609: Explicitly return None when there are also non-None
843 returns. In a few cases, reverse a condition and eliminate a return.
844
845- Issue #25507: IDLE no longer runs buggy code because of its tkinter imports.
846 Users must include the same imports required to run directly in Python.
847
848- Issue #27173: Add 'IDLE Modern Unix' to the built-in key sets.
849 Make the default key set depend on the platform.
850 Add tests for the changes to the config module.
851
852- Issue #27452: add line counter and crc to IDLE configHandler test dump.
853
854- Issue #27477: IDLE search dialogs now use ttk widgets.
855
856- Issue #27173: Add 'IDLE Modern Unix' to the built-in key sets.
857 Make the default key set depend on the platform.
858 Add tests for the changes to the config module.
859
860- Issue #27452: make command line "idle-test> python test_help.py" work.
861 __file__ is relative when python is started in the file's directory.
862
863- Issue #27452: add line counter and crc to IDLE configHandler test dump.
864
865- Issue #27380: IDLE: add query.py with base Query dialog and ttk widgets.
866 Module had subclasses SectionName, ModuleName, and HelpSource, which are
867 used to get information from users by configdialog and file =>Load Module.
868 Each subclass has itw own validity checks. Using ModuleName allows users
869 to edit bad module names instead of starting over.
870 Add tests and delete the two files combined into the new one.
871
872- Issue #27372: Test_idle no longer changes the locale.
873
874- Issue #27365: Allow non-ascii chars in IDLE NEWS.txt, for contributor names.
875
876- Issue #27245: IDLE: Cleanly delete custom themes and key bindings.
877 Previously, when IDLE was started from a console or by import, a cascade
878 of warnings was emitted. Patch by Serhiy Storchaka.
879
880- Issue #24137: Run IDLE, test_idle, and htest with tkinter default root disabled.
881 Fix code and tests that fail with this restriction.
882 Fix htests to not create a second and redundant root and mainloop.
883
884- Issue #27310: Fix IDLE.app failure to launch on OS X due to vestigial import.
885
886- Issue #5124: Paste with text selected now replaces the selection on X11.
887 This matches how paste works on Windows, Mac, most modern Linux apps,
888 and ttk widgets. Original patch by Serhiy Storchaka.
889
890- Issue #24750: Switch all scrollbars in IDLE to ttk versions.
891 Where needed, minimal tests are added to cover changes.
892
893- Issue #24759: IDLE requires tk 8.5 and availability ttk widgets.
894 Delete now unneeded tk version tests and code for older versions.
895 Add test for IDLE syntax colorizer.
896
897- Issue #27239: idlelib.macosx.isXyzTk functions initialize as needed.
898
899- Issue #27262: move Aqua unbinding code, which enable context menus, to macosx.
900
901- Issue #24759: Make clear in idlelib.idle_test.__init__ that the directory
902 is a private implementation of test.test_idle and tool for maintainers.
903
904- Issue #27196: Stop 'ThemeChanged' warnings when running IDLE tests.
905 These persisted after other warnings were suppressed in #20567.
906 Apply Serhiy Storchaka's update_idletasks solution to four test files.
907 Record this additional advice in idle_test/README.txt
908
909- Issue #20567: Revise idle_test/README.txt with advice about avoiding
910 tk warning messages from tests. Apply advice to several IDLE tests.
911
912- Issue # 24225: Update idlelib/README.txt with new file names
913 and event handlers.
914
915- Issue #27156: Remove obsolete code not used by IDLE. Replacements:
916 1. help.txt, replaced by help.html, is out-of-date and should not be used.
917 Its dedicated viewer has be replaced by the html viewer in help.py.
918 2. 'import idlever; I = idlever.IDLE_VERSION' is the same as
919 'import sys; I = version[:version.index(' ')]'
920 3. After 'ob = stackviewer.VariablesTreeItem(*args)',
921 'ob.keys()' == 'list(ob.object.keys).
922 4. In macosc, runningAsOSXAPP == isAquaTk; idCarbonAquaTk == isCarbonTk
923
924- Issue #27117: Make colorizer htest and turtledemo work with dark themes.
925 Move code for configuring text widget colors to a new function.
926
927- Issue #24225: Rename many idlelib/*.py and idle_test/test_*.py files.
928 Edit files to replace old names with new names when the old name
929 referred to the module rather than the class it contained.
930 See the issue and IDLE section in What's New in 3.6 for more.
931
932- Issue #26673: When tk reports font size as 0, change to size 10.
933 Such fonts on Linux prevented the configuration dialog from opening.
934
935- Issue #21939: Add test for IDLE's percolator.
936 Original patch by Saimadhav Heblikar.
937
938- Issue #21676: Add test for IDLE's replace dialog.
939 Original patch by Saimadhav Heblikar.
940
941- Issue #18410: Add test for IDLE's search dialog.
942 Original patch by Westley Martínez.
943
944- Issue #21703: Add test for undo delegator. Patch mostly by
945 Saimadhav Heblikar .
946
947- Issue #27044: Add ConfigDialog.remove_var_callbacks to stop memory leaks.
948
949- Issue #23977: Add more asserts to test_delegator.
950
951- Issue #20640: Add tests for idlelib.configHelpSourceEdit.
952 Patch by Saimadhav Heblikar.
953
954- In the 'IDLE-console differences' section of the IDLE doc, clarify
955 how running with IDLE affects sys.modules and the standard streams.
956
957- Issue #25507: fix incorrect change in IOBinding that prevented printing.
958 Augment IOBinding htest to include all major IOBinding functions.
959
960- Issue #25905: Revert unwanted conversion of ' to ’ RIGHT SINGLE QUOTATION
961 MARK in README.txt and open this and NEWS.txt with 'ascii'.
962 Re-encode CREDITS.txt to utf-8 and open it with 'utf-8'.
963
964- Issue 15348: Stop the debugger engine (normally in a user process)
965 before closing the debugger window (running in the IDLE process).
966 This prevents the RuntimeErrors that were being caught and ignored.
967
968- Issue #24455: Prevent IDLE from hanging when a) closing the shell while the
969 debugger is active (15347); b) closing the debugger with the [X] button
970 (15348); and c) activating the debugger when already active (24455).
971 The patch by Mark Roseman does this by making two changes.
972 1. Suspend and resume the gui.interaction method with the tcl vwait
973 mechanism intended for this purpose (instead of root.mainloop & .quit).
974 2. In gui.run, allow any existing interaction to terminate first.
975
976- Change 'The program' to 'Your program' in an IDLE 'kill program?' message
977 to make it clearer that the program referred to is the currently running
978 user program, not IDLE itself.
979
980- Issue #24750: Improve the appearance of the IDLE editor window status bar.
981 Patch by Mark Roseman.
982
983- Issue #25313: Change the handling of new built-in text color themes to better
984 address the compatibility problem introduced by the addition of IDLE Dark.
985 Consistently use the revised idleConf.CurrentTheme everywhere in idlelib.
986
987- Issue #24782: Extension configuration is now a tab in the IDLE Preferences
988 dialog rather than a separate dialog. The former tabs are now a sorted
989 list. Patch by Mark Roseman.
990
991- Issue #22726: Re-activate the config dialog help button with some content
992 about the other buttons and the new IDLE Dark theme.
993
994- Issue #24820: IDLE now has an 'IDLE Dark' built-in text color theme.
995 It is more or less IDLE Classic inverted, with a cobalt blue background.
996 Strings, comments, keywords, ... are still green, red, orange, ... .
997 To use it with IDLEs released before November 2015, hit the
998 'Save as New Custom Theme' button and enter a new name,
999 such as 'Custom Dark'. The custom theme will work with any IDLE
1000 release, and can be modified.
1001
1002- Issue #25224: README.txt is now an idlelib index for IDLE developers and
1003 curious users. The previous user content is now in the IDLE doc chapter.
1004 'IDLE' now means 'Integrated Development and Learning Environment'.
1005
1006- Issue #24820: Users can now set breakpoint colors in
1007 Settings -> Custom Highlighting. Original patch by Mark Roseman.
1008
1009- Issue #24972: Inactive selection background now matches active selection
1010 background, as configured by users, on all systems. Found items are now
1011 always highlighted on Windows. Initial patch by Mark Roseman.
1012
1013- Issue #24570: Idle: make calltip and completion boxes appear on Macs
1014 affected by a tk regression. Initial patch by Mark Roseman.
1015
1016- Issue #24988: Idle ScrolledList context menus (used in debugger)
1017 now work on Mac Aqua. Patch by Mark Roseman.
1018
1019- Issue #24801: Make right-click for context menu work on Mac Aqua.
1020 Patch by Mark Roseman.
1021
1022- Issue #25173: Associate tkinter messageboxes with a specific widget.
1023 For Mac OSX, make them a 'sheet'. Patch by Mark Roseman.
1024
1025- Issue #25198: Enhance the initial html viewer now used for Idle Help.
1026 * Properly indent fixed-pitch text (patch by Mark Roseman).
1027 * Give code snippet a very Sphinx-like light blueish-gray background.
1028 * Re-use initial width and height set by users for shell and editor.
1029 * When the Table of Contents (TOC) menu is used, put the section header
1030 at the top of the screen.
1031
1032- Issue #25225: Condense and rewrite Idle doc section on text colors.
1033
1034- Issue #21995: Explain some differences between IDLE and console Python.
1035
1036- Issue #22820: Explain need for *print* when running file from Idle editor.
1037
1038- Issue #25224: Doc: augment Idle feature list and no-subprocess section.
1039
1040- Issue #25219: Update doc for Idle command line options.
1041 Some were missing and notes were not correct.
1042
1043- Issue #24861: Most of idlelib is private and subject to change.
1044 Use idleib.idle.* to start Idle. See idlelib.__init__.__doc__.
1045
1046- Issue #25199: Idle: add synchronization comments for future maintainers.
1047
1048- Issue #16893: Replace help.txt with help.html for Idle doc display.
1049 The new idlelib/help.html is rstripped Doc/build/html/library/idle.html.
1050 It looks better than help.txt and will better document Idle as released.
1051 The tkinter html viewer that works for this file was written by Mark Roseman.
1052 The now unused EditorWindow.HelpDialog class and helt.txt file are deprecated.
1053
1054- Issue #24199: Deprecate unused idlelib.idlever with possible removal in 3.6.
1055
1056- Issue #24790: Remove extraneous code (which also create 2 & 3 conflicts).
1057
1058
1059What's New in IDLE 3.5.0?
1060=========================
1061*Release date: 2015-09-13*
1062
1063- Issue #23672: Allow Idle to edit and run files with astral chars in name.
1064 Patch by Mohd Sanad Zaki Rizvi.
1065
1066- Issue 24745: Idle editor default font. Switch from Courier to
1067 platform-sensitive TkFixedFont. This should not affect current customized
1068 font selections. If there is a problem, edit $HOME/.idlerc/config-main.cfg
1069 and remove 'fontxxx' entries from [Editor Window]. Patch by Mark Roseman.
1070
1071- Issue #21192: Idle editor. When a file is run, put its name in the restart bar.
1072 Do not print false prompts. Original patch by Adnan Umer.
1073
1074- Issue #13884: Idle menus. Remove tearoff lines. Patch by Roger Serwy.
1075
1076- Issue #23184: remove unused names and imports in idlelib.
1077 Initial patch by Al Sweigart.
1078
1079- Issue #20577: Configuration of the max line length for the FormatParagraph
1080 extension has been moved from the General tab of the Idle preferences dialog
1081 to the FormatParagraph tab of the Config Extensions dialog.
1082 Patch by Tal Einat.
1083
1084- Issue #16893: Update Idle doc chapter to match current Idle and add new
1085 information.
1086
1087- Issue #3068: Add Idle extension configuration dialog to Options menu.
1088 Changes are written to HOME/.idlerc/config-extensions.cfg.
1089 Original patch by Tal Einat.
1090
1091- Issue #16233: A module browser (File : Class Browser, Alt+C) requires an
1092 editor window with a filename. When Class Browser is requested otherwise,
1093 from a shell, output window, or 'Untitled' editor, Idle no longer displays
1094 an error box. It now pops up an Open Module box (Alt+M). If a valid name
1095 is entered and a module is opened, a corresponding browser is also opened.
1096
1097- Issue #4832: Save As to type Python files automatically adds .py to the
1098 name you enter (even if your system does not display it). Some systems
1099 automatically add .txt when type is Text files.
1100
1101- Issue #21986: Code objects are not normally pickled by the pickle module.
1102 To match this, they are no longer pickled when running under Idle.
1103
1104- Issue #23180: Rename IDLE "Windows" menu item to "Window".
1105 Patch by Al Sweigart.
1106
1107- Issue #17390: Adjust Editor window title; remove 'Python',
1108 move version to end.
1109
1110- Issue #14105: Idle debugger breakpoints no longer disappear
1111 when inserting or deleting lines.
1112
1113- Issue #17172: Turtledemo can now be run from Idle.
1114 Currently, the entry is on the Help menu, but it may move to Run.
1115 Patch by Ramchandra Apt and Lita Cho.
1116
1117- Issue #21765: Add support for non-ascii identifiers to HyperParser.
1118
1119- Issue #21940: Add unittest for WidgetRedirector. Initial patch by Saimadhav
1120 Heblikar.
1121
1122- Issue #18592: Add unittest for SearchDialogBase. Patch by Phil Webster.
1123
1124- Issue #21694: Add unittest for ParenMatch. Patch by Saimadhav Heblikar.
1125
1126- Issue #21686: add unittest for HyperParser. Original patch by Saimadhav
1127 Heblikar.
1128
1129- Issue #12387: Add missing upper(lower)case versions of default Windows key
1130 bindings for Idle so Caps Lock does not disable them. Patch by Roger Serwy.
1131
1132- Issue #21695: Closing a Find-in-files output window while the search is
1133 still in progress no longer closes Idle.
1134
1135- Issue #18910: Add unittest for textView. Patch by Phil Webster.
1136
1137- Issue #18292: Add unittest for AutoExpand. Patch by Saihadhav Heblikar.
1138
1139- Issue #18409: Add unittest for AutoComplete. Patch by Phil Webster.
1140
1141- Issue #21477: htest.py - Improve framework, complete set of tests.
1142 Patches by Saimadhav Heblikar
1143
1144- Issue #18104: Add idlelib/idle_test/htest.py with a few sample tests to begin
1145 consolidating and improving human-validated tests of Idle. Change other files
1146 as needed to work with htest. Running the module as __main__ runs all tests.
1147
1148- Issue #21139: Change default paragraph width to 72, the PEP 8 recommendation.
1149
1150- Issue #21284: Paragraph reformat test passes after user changes reformat width.
1151
1152- Issue #17654: Ensure IDLE menus are customized properly on OS X for
1153 non-framework builds and for all variants of Tk.
1154
1155
1156What's New in IDLE 3.4.0?
1157=========================
1158*Release date: 2014-03-16*
1159
1160- Issue #17390: Display Python version on Idle title bar.
1161 Initial patch by Edmond Burnett.
1162
1163- Issue #5066: Update IDLE docs. Patch by Todd Rovito.
1164
1165- Issue #17625: Close the replace dialog after it is used.
1166
1167- Issue #16226: Fix IDLE Path Browser crash.
1168 (Patch by Roger Serwy)
1169
1170- Issue #15853: Prevent IDLE crash on OS X when opening Preferences menu
1171 with certain versions of Tk 8.5. Initial patch by Kevin Walzer.
1172
1173
1174What's New in IDLE 3.3.0?
1175=========================
1176*Release date: 2012-09-29*
1177
1178- Issue #17625: Close the replace dialog after it is used.
1179
1180- Issue #7163: Propagate return value of sys.stdout.write.
1181
1182- Issue #15318: Prevent writing to sys.stdin.
1183
1184- Issue #4832: Modify IDLE to save files with .py extension by
1185 default on Windows and OS X (Tk 8.5) as it already does with X11 Tk.
1186
1187- Issue #13532, #15319: Check that arguments to sys.stdout.write are strings.
1188
1189- Issue # 12510: Attempt to get certain tool tips no longer crashes IDLE.
1190 Erroneous tool tips have been corrected. Default added for callables.
1191
1192- Issue #10365: File open dialog now works instead of crashing even when
1193 parent window is closed while dialog is open.
1194
1195- Issue 14876: use user-selected font for highlight configuration.
1196
1197- Issue #14937: Perform auto-completion of filenames in strings even for
1198 non-ASCII filenames. Likewise for identifiers.
1199
1200- Issue #8515: Set __file__ when run file in IDLE.
1201 Initial patch by Bruce Frederiksen.
1202
1203- IDLE can be launched as `python -m idlelib`
1204
1205- Issue #14409: IDLE now properly executes commands in the Shell window
1206 when it cannot read the normal config files on startup and
1207 has to use the built-in default key bindings.
1208 There was previously a bug in one of the defaults.
1209
1210- Issue #3573: IDLE hangs when passing invalid command line args
1211 (directory(ies) instead of file(s)).
1212
1213- Issue #14018: Update checks for unstable system Tcl/Tk versions on OS X
1214 to include versions shipped with OS X 10.7 and 10.8 in addition to 10.6.
1215
1216
1217What's New in IDLE 3.2.1?
1218=========================
1219*Release date: 15-May-11*
1220
1221- Issue #6378: Further adjust idle.bat to start associated Python
1222
1223- Issue #11896: Save on Close failed despite selecting "Yes" in dialog.
1224
1225- Issue #1028: Ctrl-space binding to show completions was causing IDLE to exit.
1226 Tk < 8.5 was sending invalid Unicode null; replaced with valid null.
1227
1228- Issue #4676: <Home> toggle failing on Tk 8.5, causing IDLE exits and strange selection
1229 behavior. Improve selection extension behaviour.
1230
1231- Issue #3851: <Home> toggle non-functional when NumLock set on Windows.
1232
1233
1234What's New in IDLE 3.1b1?
1235=========================
1236*Release date: 06-May-09*
1237
1238- Issue #5707: Use of 'filter' in keybindingDialog.py was causing custom key assignment to
1239 fail. Patch by Amaury Forgeot d'Arc.
1240
1241- Issue #4815: Offer conversion to UTF-8 if source files have
1242 no encoding declaration and are not encoded in UTF-8.
1243
1244- Issue #4008: Fix problems with non-ASCII source files.
1245
1246- Issue #4323: Always encode source as UTF-8 without asking
1247 the user (unless a different encoding is declared); remove
1248 user configuration of source encoding; all according to
1249 PEP 3120.
1250
1251- Issue #2665: On Windows, an IDLE installation upgraded from an old version
1252 would not start if a custom theme was defined.
1253
1254------------------------------------------------------------------------
1255Refer to NEWS2x.txt and HISTORY.txt for information on earlier releases.
1256------------------------------------------------------------------------