blob: 0651b3d68dc8b17fdd227cb6f8682d4e0d174d84 [file] [log] [blame]
Terry Jan Reedya8fb9322019-10-27 01:23:30 -04001What's New in IDLE 3.9.0 (since 3.8.0)
2Released on 2020-10-05?
3======================================
4
5
Terry Jan Reedyc705fd12020-02-28 13:22:55 -05006bpo-39781: Selecting code context lines no longer causes a jump.
7
Cheryl Sabellaffda25f2020-02-17 21:47:52 -05008bpo-39663: Add tests for pyparse find_good_parse_start().
9
Terry Jan Reedy96ce2272020-02-10 20:08:58 -050010bpo-39600: Remove duplicate font names from configuration list.
11
Zackery Spytzbfdeaa32020-01-30 18:55:42 -070012bpo-38792: Close a shell calltip if a :exc:`KeyboardInterrupt`
13or shell restart occurs. Patch by Zackery Spytz.
14
Cheryl Sabelladd023ad2020-01-27 17:15:56 -050015bpo-30780: Add remaining configdialog tests for buttons and
16highlights and keys tabs.
17
Cheryl Sabellad0d9fa82020-01-25 04:00:54 -050018bpo-39388: Settings dialog Cancel button cancels pending changes.
19
20bpo-39050: Settings dialog Help button again displays help text.
Zackery Spytz2e43b642020-01-22 20:54:30 -070021
Cheryl Sabellaec646402020-01-21 05:11:26 -050022bpo-32989: Add tests for editor newline_and_indent_event method.
Terry Jan Reedyf9e07e12020-01-22 23:55:07 -050023Remove unneeded arguments and dead code from pyparse
24find_good_parse_start method.
Cheryl Sabellaec646402020-01-21 05:11:26 -050025
JohnnyNajerabbc41622019-12-10 02:30:01 +020026bpo-38943: Fix autocomplete windows not always appearing on some
27systems. Patch by Johnny Najera.
28
Gurupad Hegde6c7bb382019-12-28 17:16:02 -050029bpo-38944: Escape key now closes IDLE completion windows. Patch by
JohnnyNajera232689b2019-12-10 01:22:16 +020030Johnny Najera.
31
Terry Jan Reedy6bf644e2019-11-24 16:29:29 -050032bpo-38862: 'Strip Trailing Whitespace' on the Format menu removes extra
33newlines at the end of non-shell files.
34
Terry Jan Reedyb8462472019-11-20 01:18:39 -050035bpo-38636: Fix IDLE Format menu tab toggle and file indent width. These
36functions (default shortcuts Alt-T and Alt-U) were mistakenly disabled
37in 3.7.5 and 3.8.0.
38
Zackery Spytz9c284492019-11-13 00:13:33 -070039bpo-4360: Add an option to toggle IDLE's cursor blink for shell,
40editor, and output windows. See Settings, General, Window Preferences,
41Cursor Blink. Patch by Zachary Spytz.
42
43bpo-26353: Stop adding newline when saving an IDLE shell window.
Zackery Spytzc8b53dc2019-11-12 03:54:10 -070044
Terry Jan Reedya8fb9322019-10-27 01:23:30 -040045bpo-38598: Do not try to compile IDLE shell or output windows.
46
47
Terry Jan Reedy2c5c0a32018-07-20 02:14:56 -040048What's New in IDLE 3.8.0 (since 3.7.0)
Terry Jan Reedya8fb9322019-10-27 01:23:30 -040049Released on 2019-10-14
Terry Jan Reedy05e80672018-02-04 19:07:16 -050050======================================
terryjreedy503bc632017-06-10 20:46:08 -040051
Terry Jan Reedye31a79a2019-10-26 22:19:57 -040052bpo-36698: IDLE no longer fails when writing non-encodable characters
53to stderr. It now escapes them with a backslash, like the regular
54Python interpreter. Add an errors field to the standard streams.
55
56bpo-13153: Improve tkinter's handing of non-BMP (astral) unicode
57characters, such as 'rocket \U0001f680'. Whether a proper glyph or
58replacement char is displayed depends on the OS and font. For IDLE,
59astral chars in code interfere with editing.
60
Terry Jan Reedydfd34a92019-09-17 02:05:04 -040061bpo-35379: When exiting IDLE, catch any AttributeError. One happens
62when EditorWindow.close is called twice. Printing a traceback, when
63IDLE is run from a terminal, is useless and annoying.
64
65bpo-38183: To avoid test issues, test_idle ignores the user config
66directory. It no longer tries to create or access .idlerc or any files
67within. Users must run IDLE to discover problems with saving settings.
terryjreedy1ccbad92017-07-05 19:36:48 -040068
Terry Jan Reedyc59295a2019-09-09 23:10:44 -040069bpo-38077: IDLE no longer adds 'argv' to the user namespace when
70initializing it. This bug only affected 3.7.4 and 3.8.0b2 to 3.8.0b4.
71
Terry Jan Reedy38da8052019-09-06 13:54:45 -040072bpo-38401: Shell restart lines now fill the window width, always start
73with '=', and avoid wrapping unnecessarily. The line will still wrap
74if the included file name is long relative to the width.
75
GeeTransit2cd90252019-09-04 21:33:34 -040076bpo-37092: Add mousewheel scrolling for IDLE module, path, and stack
77browsers. Patch by George Zhang.
78
Tal Einat132acab2019-09-03 08:17:00 +030079bpo-35771: To avoid occasional spurious test_idle failures on slower
80machines, increase the ``hover_delay`` in test_tooltip.
81
Terry Jan Reedy1039f392019-08-26 02:27:56 -040082bpo-37824: Properly handle user input warnings in IDLE shell.
83Cease turning SyntaxWarnings into SyntaxErrors.
84
85bpo-37929: IDLE Settings dialog now closes properly when there is no
86shell window.
87
Tal Einat71662dc2019-08-14 20:06:06 +030088bpo-37849: Fix completions list appearing too high or low when shown
89above the current line.
90
91bpo-36419: Refactor autocompete and improve testing.
92
Terry Jan Reedy14070292019-08-04 16:45:15 -040093bpo-37748: Reorder the Run menu. Put the most common choice,
94Run Module, at the top.
95
Terry Jan Reedyf35c51d2019-07-29 18:12:14 -040096bpo-37692: Improve highlight config sample with example shell
97interaction and better labels for shell elements.
98
99bpo-37628: Settings dialog no longer expands with font size.
100The font and highlight sample boxes gain scrollbars instead.
101
102bpo-17535: Add optional line numbers for IDLE editor windows.
103
104bpo-37627: Initialize the Customize Run dialog with the command line
105arguments most recently entered before. The user can optionally edit
106before submitting them.
107
108bpo-33610: Code context always shows the correct context when toggled on.
109
110bpo-36390: Gather Format menu functions into format.py. Combine
111paragraph.py, rstrip.py, and format methods from editor.py.
112
113bpo-37530: Optimize code context to reduce unneeded background activity.
114Font and highlight changes now occur along with text changes instead
115of after a random delay.
116
117bpo-27452: Cleanup config.py by inlining RemoveFile and simplifying
118the handling of __file__ in CreateConfigHandlers/
119
Tal Einatfcf1d002019-07-06 15:35:24 +0300120bpo-26806: To compensate for stack frames added by IDLE and avoid
121possible problems with low recursion limits, add 30 to limits in the
122user code execution process. Subtract 30 when reporting recursion
123limits to make this addition mostly transparent.
124
Terry Jan Reedy54cf2e02019-06-18 17:08:24 -0400125bpo-37325: Fix tab focus traversal order for help source and custom
126run dialogs.
127
Terry Jan Reedy8fac1222019-06-17 17:23:28 -0400128bpo-37321: Both subprocess connection error messages now refer to
129the 'Startup failure' section of the IDLE doc.
130
Terry Jan Reedyfff5cb22019-07-31 00:58:45 -0400131bpo-37177: Properly attach search dialogs to their main window so
132that they behave like other dialogs and do not get hidden behind
133their main window.
134
Terry Jan Reedy0acb6462019-07-30 18:14:58 -0400135bpo-37039: Adjust "Zoom Height" to individual screens by momentarily
Tal Einat5bff3c82019-06-17 22:41:00 +0300136maximizing the window on first use with a particular screen. Changing
137screen settings may invalidate the saved height. While a window is
138maximized, "Zoom Height" has no effect.
139
140bpo-35763: Make calltip reminder about '/' meaning positional-only less
141obtrusive by only adding it when there is room on the first line.
142
Terry Jan Reedyfff5cb22019-07-31 00:58:45 -0400143bpo-5680: Add 'Run Customized' to the Run menu to run a module with
144customized settings. Any command line arguments entered are added
145to sys.argv. One can suppress the normal Shell main module restart.
146
Cheryl Sabella6bdc4de2019-06-02 14:56:47 -0400147bpo-35610: Replace now redundant editor.context_use_ps1 with
148.prompt_last_line. This finishes change started in bpo-31858.
149
Cheryl Sabella1a4d9ff2019-06-01 17:03:22 -0400150bpo-32411: Stop sorting dict created with desired line order.
151
Terry Jan Reedy81bb97d2019-05-24 21:59:53 -0400152bpo-37038: Make idlelib.run runnable; add test clause.
153
Terry Jan Reedy6d965b32019-05-19 22:52:22 -0400154bpo-36958: Print any argument other than None or int passed to
155SystemExit or sys.exit().
156
157bpo-36807: When saving a file, call file.flush() and os.fsync()
158so bits are flushed to e.g. a USB drive.
159
Terry Jan Reedy6a258c82019-03-26 19:58:19 -0400160bpo-36429: Fix starting IDLE with pyshell.
161Add idlelib.pyshell alias at top; remove pyshell alias at bottom.
162Remove obsolete __name__=='__main__' command.
163
164bpo-30348: Increase test coverage of idlelib.autocomplete by 30%.
165Patch by Louie Lu.
166
167bpo-23205: Add tests and refactor grep's findfiles.
168
Terry Jan Reedy0fe45132019-03-24 17:12:28 -0400169bpo-36405: Use dict unpacking in idlelib.
Terry Jan Reedy2b751552019-03-23 03:50:15 -0400170
Terry Jan Reedyc1419572019-03-22 18:23:41 -0400171bpo-36396: Remove fgBg param of idlelib.config.GetHighlight().
172This param was only used twice and changed the return type.
173
174bpo-23216: IDLE: Add docstrings to search modules.
175
Terry Jan Reedy491ef532019-03-10 20:18:40 -0400176bpo-36176: Fix IDLE autocomplete & calltip popup colors.
177Prevent conflicts with Linux dark themes
178(and slightly darken calltip background).
179
180bpo-36152: Remove colorizer.ColorDelegator.close_when_done and the
Terry Jan Reedy8a1bab92019-03-08 03:04:32 -0500181corresponding argument of .close(). In IDLE, both have always been
182None or False since 2007.
183
184bpo-36096: Make colorizer state variables instance-only.
185
Terry Jan Reedyfff5cb22019-07-31 00:58:45 -0400186bpo-32129: Avoid blurry IDLE application icon on macOS with Tk 8.6.
187Patch by Kevin Walzer.
188
Terry Jan Reedyd6101162019-02-23 23:04:53 -0500189bpo-24310: Document settings dialog font tab sample.
190
Cheryl Sabellaee0f9272019-02-19 00:11:18 -0500191bpo-35689: Add docstrings and tests for colorizer.
192
Terry Jan Reedy8a03ff22019-02-08 22:51:51 -0500193bpo-35833: Revise IDLE doc for control codes sent to Shell.
194Add a code example block.
195
Terry Jan Reedy39ed2892019-01-18 14:00:45 -0500196bpo-35770: IDLE macosx deletes Options => Configure IDLE.
197It previously deleted Window => Zoom Height by mistake.
198(Zoom Height is now on the Options menu). On Mac, the settings
199dialog is accessed via Preferences on the IDLE menu.
200
Terry Jan Reedya9022392019-01-18 02:09:53 -0500201bpo-35769: Change new file name from 'Untitled' to 'untitled'.
202
Terry Jan Reedy56c16052019-01-17 18:44:13 -0500203bpo-35660: Fix imports in window module.
204
205bpo-35641: Properly format calltip for function without docstring.
206
207bpo-33987: Use ttk Frame for ttk widgets.
208
209bpo-34055: Fix erroneous 'smart' indents and newlines in IDLE Shell.
210
211bpo-28097: Add Previous/Next History entries to Shell menu.
212
213bpo-35591: Find Selection now works when selection not found.
214
215bpo-35598: Update config_key: use PEP 8 names and ttk widgets,
216make some objects global, and add tests.
217
Tal Einat39a33e92019-01-13 17:01:50 +0200218bpo-35196: Speed up squeezer line counting.
219
Tal Einat44a79cc2018-12-24 14:05:51 +0200220bpo-35208: Squeezer now counts wrapped lines before newlines.
221
Cheryl Sabella8874f512018-12-23 16:26:53 -0500222bpo-35555: Gray out Code Context menu entry when it's not applicable.
223
Cheryl Sabellac1b4b0f2018-12-22 01:25:45 -0500224bpo-22703: Improve the Code Context and Zoom Height menu labels.
225The Code Context menu label now toggles between Show/Hide Code Context.
226The Zoom Height menu now toggles between Zoom/Restore Height.
227Zoom Height has moved from the Window menu to the Options menu.
228
Terry Jan Reedy87ec1102018-12-20 01:07:10 -0500229bpo-35521: Document the editor code context feature.
230Add some internal references within the IDLE doc.
231
Tal Einat9ebe8792018-12-07 08:32:21 +0200232bpo-34864: When starting IDLE on MacOS, warn if the system setting
233"Prefer tabs when opening documents" is "Always". As previous
234documented for this issue, running IDLE with this setting causes
235problems. If the setting is changed while IDLE is running,
236there will be no warning until IDLE is restarted.
237
Terry Jan Reedy6ea9d542018-12-06 00:46:22 -0500238bpo-35213: Where appropriate, use 'macOS' in idlelib.
239
240bpo-34864: Document two IDLE on MacOS issues. The System Preferences
241Dock "prefer tabs always" setting disables some IDLE features.
242Menus are a bit different than as described for Windows and Linux.
243
244bpo-35202: Remove unused imports in idlelib.
245
246bpo-33000: Document that IDLE's shell has no line limit.
247A program that runs indefinitely can overfill memory.
248
249bpo-23220: Explain how IDLE's Shell displays output.
250Add new subsection "User output in Shell".
251
252bpo-35099: Improve the doc about IDLE running user code.
253"IDLE -- console differences" is renamed "Running user code".
254It mostly covers the implications of using custom sys.stdxxx objects.
255
256bpo-35097: Add IDLE doc subsection explaining editor windows.
257Topics include opening, title and status bars, .py* extension, and running.
258
259Issue 35093: Document the IDLE document viewer in the IDLE doc.
260Add a paragraph in "Help and preferences", "Help sources" subsection.
261
262bpo-1529353: Explain Shell text squeezing in the IDLE doc.
263
264bpo-35088: Update idlelib.help.copy_string docstring.
265We now use git and backporting instead of hg and forward merging.
266
267bpo-35087: Update idlelib help files for the current doc build.
268The main change is the elimination of chapter-section numbers.
269
Terry Jan Reedy22ef31d2018-09-25 13:41:25 -0400270bpo-1529353: Output over N lines (50 by default) is squeezed down to a button.
271N can be changed in the PyShell section of the General page of the
272Settings dialog. Fewer, but possibly extra long, lines can be squeezed by
273right clicking on the output. Squeezed output can be expanded in place
274by double-clicking the button or into the clipboard or a separate window
275by right-clicking the button.
276
Terry Jan Reedy16fba622018-09-24 20:11:45 -0400277bpo-34548: Use configured color theme for read-only text views.
278
279bpo-33839: Refactor ToolTip and CallTip classes; add documentation
280and tests.
281
282bpo-34047: Fix mouse wheel scrolling direction on macOS.
283
284bpo-34275: Make calltips always visible on Mac.
285Patch by Kevin Walzer.
286
287bpo-34120: Fix freezing after closing some dialogs on Mac.
288This is one of multiple regressions from using newer tcl/tk.
289
Terry Jan Reedy5a606672018-09-24 19:15:40 -0400290bpo-33975: Avoid small type when running htests.
291Since part of the purpose of human-viewed tests is to determine that
Terry Jan Reedy16fba622018-09-24 20:11:45 -0400292widgets look right, it is important that they look the same for
293testing as when running IDLE.
Terry Jan Reedy5a606672018-09-24 19:15:40 -0400294
Terry Jan Reedy2c5c0a32018-07-20 02:14:56 -0400295bpo-33905: Add test for idlelib.stackview.StackBrowser.
296
297bpo-33924: Change mainmenu.menudefs key 'windows' to 'window'.
298Every other menudef key is the lowercase version of the
299corresponding main menu entry (in this case, 'Window').
300
301bpo-33906: Rename idlelib.windows as window
302Match Window on the main menu and remove last plural module name.
303Change imports, test, and attribute references to match new name.
304
305bpo-33917: Fix and document idlelib/idle_test/template.py.
306The revised file compiles, runs, and tests OK. idle_test/README.txt
307explains how to use it to create new IDLE test files.
308
309bpo-33904: In rstrip module, rename class RstripExtension as Rstrip.
310
311bpo-33907: For consistency and clarity, rename calltip objects.
312Module calltips and its class CallTips are now calltip and Calltip.
313In module calltip_w, class CallTip is now CalltipWindow.
314
315bpo-33855: Minimally test all IDLE modules.
316Standardize the test file format. Add missing test files that import
317the tested module and perform at least one test. Check and record the
318coverage of each test.
319
320bpo-33856: Add 'help' to Shell's initial welcome message.
321
322
323What's New in IDLE 3.7.0 (since 3.6.0)
324Released on 2018-06-27
325======================================
326
Terry Jan Reedy800415e2018-06-11 14:14:32 -0400327bpo-33656: On Windows, add API call saying that tk scales for DPI.
328On Windows 8.1+ or 10, with DPI compatibility properties of the Python
329binary unchanged, and a monitor resolution greater than 96 DPI, this
Terry Jan Reedy4b704f22018-06-11 16:53:41 -0400330should make text and lines sharper and some colors brighter.
331On other systems, it should have no effect. If you have a custom theme,
332you may want to adjust a color or two. If perchance it make text worse
333on your monitor, you can disable the ctypes.OleDLL call near the top of
334pyshell.py and report the problem on python-list or idle-dev@python.org.
Terry Jan Reedy800415e2018-06-11 14:14:32 -0400335
Terry Jan Reedyb1f69022018-06-08 02:28:45 -0400336bpo-33768: Clicking on a context line moves that line to the top
337of the editor window.
338
339bpo-33763: Replace the code context label widget with a text widget.
340
341bpo-33664: Scroll IDLE editor text by lines.
342(Previously, the mouse wheel and scrollbar slider moved text by a fixed
343number of pixels, resulting in partial lines at the top of the editor
344box.) This change also applies to the shell and grep output windows,
345but currently not to read-only text views.
346
347bpo-33679: Enable theme-specific color configuration for Code Context.
348(Previously, there was one code context foreground and background font
349color setting, default or custom, on the extensions tab, that applied
350to all themes.) For built-in themes, the foreground is the same as
351normal text and the background is a contrasting gray. Context colors for
352custom themes are set on the Hightlights tab along with other colors.
353When one starts IDLE from a console and loads a custom theme without
354definitions for 'context', one will see a warning message on the
355console.
356
357bpo-33642: Display up to maxlines non-blank lines for Code Context.
358If there is no current context, show a single blank line. (Previously,
359the Code Contex had numlines lines, usually with some blank.) The use
360of a new option, 'maxlines' (default 15), avoids possible interference
361with user settings of the old option, 'numlines' (default 3).
362
Cheryl Sabella85060162018-05-23 22:18:15 -0400363bpo-33628: Cleanup codecontext.py and its test.
364
Terry Jan Reedy6b0d09b2018-05-19 21:38:46 -0400365bpo-32831: Add docstrings and tests for codecontext.py.
366Coverage is 100%. Patch by Cheryl Sabella.
367
368bpo-33564: Code context now recognizes async as a block opener.
369
Terry Jan Reedy038b21f2018-05-15 17:41:57 -0400370bpo-21474: Update word/identifier definition from ascii to unicode.
371In text and entry boxes, this affects selection by double-click,
372movement left/right by control-left/right, and deletion left/right
373by control-BACKSPACE/DEL.
374
375bpo-33204: Consistently color invalid string prefixes.
376A 'u' string prefix cannot be paired with either 'r' or 'f'.
377IDLE now consistently colors as much of the prefix, starting at the
378right, as is valid. Revise and extend colorizer test.
379
380bpo-32984: Set __file__ while running a startup file.
381Like Python, IDLE optionally runs 1 startup file in the Shell window
382before presenting the first interactive input prompt. For IDLE,
383option -s runs a file named in environmental variable IDLESTARTUP or
384PYTHONSTARTUP; -r file runs file. Python sets __file__ to the startup
385file name before running the file and unsets it before the first
386prompt. IDLE now does the same when run normally, without the -n
387option.
388
389bpo-32940: Replace StringTranslatePseudoMapping with faster code.
390
Terry Jan Reedy0954c9e2018-02-27 18:36:21 -0500391bpo-32916: Change 'str' to 'code' in idlelib.pyparse and users.
392
393bpo-32905: Remove unused code in pyparse module.
394
395bpo-32874: IDLE - add pyparse tests with 97% coverage.
396
397bpo-32837: IDLE - require encoding argument for textview.view_file.
398Using the system and place-dependent default encoding for open()
399is a bad idea for IDLE's system and location-independent files.
400
401bpo-32826: Add "encoding=utf-8" to open() in IDLE's test_help_about.
402GUI test test_file_buttons() only looks at initial ascii-only lines,
403but failed on systems where open() defaults to 'ascii' because
404readline() internally reads and decodes far enough ahead to encounter
405a non-ascii character in CREDITS.txt.
406
Terry Jan Reedy05e80672018-02-04 19:07:16 -0500407bpo-32765: Update configdialog General tab create page docstring.
408Add new widgets to the widget list.
409
Terry Jan Reedy2c0c68d2017-12-04 17:04:15 -0500410bpo-32207: Improve tk event exception tracebacks in IDLE.
411When tk event handling is driven by IDLE's run loop, a confusing
412and distracting queue.EMPTY traceback context is no longer added
413to tk event exception tracebacks. The traceback is now the same
414as when event handling is driven by user code. Patch based on
415a suggestion by Serhiy Storchaka.
416
Terry Jan Reedy21255fc2017-12-04 14:48:25 -0500417bpo-32164: Delete unused file idlelib/tabbedpages.py.
418Use of TabbedPageSet in configdialog was replaced by ttk.Notebook.
419
420bpo-32100: Fix old and new bugs in pathbrowser; improve tests.
421Patch mostly by Cheryl Sabella.
422
423bpo-31860: The font sample in the settings dialog is now editable.
424Edits persist while IDLE remains open.
425Patch by Serhiy Storchake and Terry Jan Reedy.
426
Ville Skyttä61f82e02018-04-20 23:08:45 +0300427bpo-31858: Restrict shell prompt manipulation to the shell.
Terry Jan Reedy21255fc2017-12-04 14:48:25 -0500428Editor and output windows only see an empty last prompt line. This
429simplifies the code and fixes a minor bug when newline is inserted.
430Sys.ps1, if present, is read on Shell start-up, but is not set or changed.
431Patch by Terry Jan Reedy.
432
Terry Jan Reedy27288de2017-10-17 19:02:49 -0400433bpo-28603: Fix a TypeError that caused a shell restart when printing
434a traceback that includes an exception that is unhashable.
435Patch by Zane Bitter.
436
437bpo-13802: Use non-Latin characters in the Font settings sample.
438Even if one selects a font that defines a limited subset of the unicode
439Basic Multilingual Plane, tcl/tk will use other fonts that define a
440character. The expanded example give users of non-Latin characters
441a better idea of what they might see in the shell and editors.
442
443To make room for the expanded sample, frames on the Font tab are
444re-arranged. The Font/Tabs help explains a bit about the additions.
445Patch by Terry Jan Reedy
446
447bpo-31460: Simplify the API of IDLE's Module Browser.
448Passing a widget instead of an flist with a root widget opens the
449option of creating a browser frame that is only part of a window.
450Passing a full file name instead of pieces assumed to come from a
451.py file opens the possibility of browsing python files that do not
452end in .py.
453
454bpo-31649: Make _htest and _utest parameters keyword-only.
455These are used to adjust code for human and unit tests.
456
457bpo-31459: Rename module browser from Class Browser to Module Browser.
458The original module-level class and method browser became a module
459browser, with the addition of module-level functions, years ago.
460Nested classes and functions were added yesterday. For back-
461compatibility, the virtual event <<open-class-browser>>, which
462appears on the Keys tab of the Settings dialog, is not changed.
463Patch by Cheryl Sabella.
464
465bpo-1612262: Module browser now shows nested classes and functions.
466Original patches for code and tests by Guilherme Polo and
467Cheryl Sabella, respectively. Revisions by Terry Jan Reedy.
468
469bpo-31500: Tk's default fonts now are scaled on HiDPI displays.
470This affects all dialogs. Patch by Serhiy Storchaka.
471
Terry Jan Reedy55679e02017-09-17 20:14:21 -0400472bpo-31493: Fix code context update and font update timers.
473Canceling timers prevents a warning message when test_idle completes.
474
475bpo-31488: Update non-key options in former extension classes.
476When applying configdialog changes, call .reload for each feature class.
477Change ParenMatch so updated options affect existing instances attached
478to existing editor windows.
479
480bpo-31477: Improve rstrip entry in IDLE doc.
481Strip Trailing Whitespace strips more than blank spaces.
482Multiline string literals are not skipped.
483
484bpo-31480: fix tests to pass with zzdummy extension disabled. (#3590)
485To see the example in action, enable it on options extensions tab.
486
487bpo-31421: Document how IDLE runs tkinter programs.
488IDLE calls tcl/tk update in the background in order to make live
Stéphane Wirtel683281f2018-10-06 16:35:53 +0200489interaction and experimentation with tkinter applications much easier.
Terry Jan Reedy55679e02017-09-17 20:14:21 -0400490
Terry Jan Reedyf6586412017-12-10 04:02:53 -0500491bpo-31414: Fix tk entry box tests by deleting first.
Terry Jan Reedy8239fd72017-09-11 16:43:26 -0400492Adding to an int entry is not the same as deleting and inserting
493because int('') will fail. Patch by Terry Jan Reedy.
494
495bpo-27099: Convert IDLE's built-in 'extensions' to regular features.
496 About 10 IDLE features were implemented as supposedly optional
497extensions. Their different behavior could be confusing or worse for
498users and not good for maintenance. Hence the conversion.
499 The main difference for users is that user configurable key bindings
500for builtin features are now handled uniformly. Now, editing a binding
501in a keyset only affects its value in the keyset. All bindings are
502defined together in the system-specific default keysets in config-
503extensions.def. All custom keysets are saved as a whole in config-
504extension.cfg. All take effect as soon as one clicks Apply or Ok.
505 The affected events are '<<force-open-completions>>',
506'<<expand-word>>', '<<force-open-calltip>>', '<<flash-paren>>',
507'<<format-paragraph>>', '<<run-module>>', '<<check-module>>', and
508'<<zoom-height>>'. Any (global) customizations made before 3.6.3 will
509not affect their keyset-specific customization after 3.6.3. and vice
510versa.
luzpaza5293b42017-11-05 07:37:50 -0600511 Initial patch by Charles Wohlganger, revised by Terry Jan Reedy.
Terry Jan Reedy8239fd72017-09-11 16:43:26 -0400512
513bpo-31051: Rearrange condigdialog General tab.
514Sort non-Help options into Window (Shell+Editor) and Editor (only).
515Leave room for the addition of new options.
516Patch by Terry Jan Reedy.
517
518bpo-30617: Add docstrings and tests for outwin subclass of editor.
519Move some data and functions from the class to module level.
520Patch by Cheryl Sabella.
521
522bpo-31287: Do not modify tkinter.messagebox in test_configdialog.
523Instead, mask it with an instance mock that can be deleted.
524Patch by Terry Jan Reedy.
525
526bpo-30781: Use ttk widgets in ConfigDialog pages.
527These should especially look better on MacOSX.
528Patches by Terry Jan Reedy and Cheryl Sabella.
529
530bpo-31206: Factor HighPage(Frame) class from ConfigDialog.
531Patch by Cheryl Sabella.
532
533bp0-31001: Add tests for configdialog highlight tab.
534Patch by Cheryl Sabella.
535
Terry Jan Reedy7f066842017-08-15 19:15:04 -0400536bpo-31205: Factor KeysPage(Frame) class from ConfigDialog.
537The slightly modified tests continue to pass.
538Patch by Cheryl Sabella.
539
540bpo-31002: Add tests for configdialog keys tab.
541Patch by Cheryl Sabella.
542
543bpo-19903: Change calltipes to use inspect.signature.
544Idlelib.calltips.get_argspec now uses inspect.signature instead of
545inspect.getfullargspec, like help() does. This improves the signature
546in the call tip in a few different cases, including builtins converted
547to provide a signature. A message is added if the object is not
548callable, has an invalid signature, or if it has positional-only
549parameters. Patch by Louie Lu.
550
551bop-31083: Add an outline of a TabPage class in configdialog.
552Add template as comment. Update existing classes to match outline.
553Initial patch by Cheryl Sabella.
554
555bpo-31050: Factor GenPage(Frame) class from ConfigDialog.
556The slightly modified tests for the General tab continue to pass.
557Patch by Cheryl Sabella.
558
559bpo-31004: Factor FontPage(Frame) class from ConfigDialog.
560The slightly modified tests continue to pass. The General test
561broken by the switch to ttk.Notebook is fixed.
562Patch mostly by Cheryl Sabella.
563
Terry Jan Reedyc3aa47f2017-07-30 06:25:22 -0400564bpo-30781: IDLE - Use ttk Notebook in ConfigDialog.
Terry Jan Reedy8239fd72017-09-11 16:43:26 -0400565This improves navigation by tabbing.
Terry Jan Reedyc3aa47f2017-07-30 06:25:22 -0400566Patch by Terry Jan Reedy.
567
568bpo-31060: IDLE - Finish rearranging methods of ConfigDialog.
569Grouping methods pertaining to each tab and the buttons will aid
570writing tests and improving the tabs and will enable splitting the
571groups into classes.
572Patch by Terry Jan Reedy.
573
574bpo-30853: IDLE -- Factor a VarTrace class out of ConfigDialog.
575Instance tracers manages pairs consisting of a tk variable and a
576callback function. When tracing is turned on, setting the variable
577calls the function. Test coverage for the new class is 100%.
578Patch by Terry Jan Reedy.
579
580bpo-31003: IDLE: Add more tests for General tab.
581Patch by Terry Jan Reedy.
582
583bpo-30993: IDLE - Improve configdialog font page and tests.
584*In configdialog: Document causal pathways in create_font_tab
585docstring. Simplify some attribute names. Move set_samples calls to
586var_changed_font (idea from Cheryl Sabella). Move related functions to
587positions after the create widgets function.
588* In test_configdialog: Fix test_font_set so not order dependent. Fix
589renamed test_indent_scale so it tests the widget. Adjust tests for
590movement of set_samples call. Add tests for load functions. Put all
591font tests in one class and tab indent tests in another. Except for
592two lines, these tests completely cover the related functions.
593Patch by Terry Jan Reedy.
594
595bpo-30981: IDLE -- Add more configdialog font page tests.
596
597bpo-28523: IDLE: replace 'colour' with 'color' in configdialog.
598
599bpo-30917: Add tests for idlelib.config.IdleConf.
600Increase coverage from 46% to 96%.
601Patch by Louie Lu.
602
terryjreedy0d0a32f2017-07-14 00:14:10 -0400603bpo-30913: Document ConfigDialog tk Vars, methods, and widgets in docstrings
604This will facilitate improving the dialog and splitting up the class.
605Original patch by Cheryl Sabella.
606
607bpo-30899: Add tests for ConfigParser subclasses in config.
608Coverage is 100% for those classes and ConfigChanges.
609Patch by Louie Lu.
610
Terry Jan Reedyc3aa47f2017-07-30 06:25:22 -0400611bpo-30881: Add docstrings to browser.py.
terryjreedy0d0a32f2017-07-14 00:14:10 -0400612Patch by Cheryl Sabella.
613
614bpo-30851: Remove unused tk variables in configdialog.
615One is a duplicate, one is set but cannot be altered by users.
616Patch by Cheryl Sabella.
617
618bpo-30870: Select font option with Up and Down keys, as well as with mouse.
619Added test increases configdialog coverage to 60%
620Patches mostly by Louie Lu.
621
622bpo-8231: Call config.IdleConf.GetUserCfgDir only once per process.
623
624bpo-30779: Factor ConfigChanges class from configdialog, put in config; test.
625* In config, put dump test code in a function; run it and unittest in
626 'if __name__ == '__main__'.
627* Add class config.ConfigChanges based on changes_class_v4.py on bpo issue.
628* Add class test_config.ChangesTest, partly using configdialog_tests_v1.py.
629* Revise configdialog to use ConfigChanges; see tracker msg297804.
630* Revise test_configdialog to match configdialog changes.
631* Remove configdialog functions unused or moved to ConfigChanges.
632Cheryl Sabella contributed parts of the patch.
633
terryjreedy1ccbad92017-07-05 19:36:48 -0400634bpo-30777: Configdialog - add docstrings and improve comments.
635Patch by Cheryl Sabella.
636
637bpo-30495: Improve textview with docstrings, PEP8 names, and more tests.
638Split TextViewer class into ViewWindow, ViewFrame, and TextFrame classes
639so that instances of the latter two can be placed with other widgets
640within a multiframe window.
641Patches by Cheryl Sabella and Terry Jan Reedy.
642
Terry Jan Reedy7f066842017-08-15 19:15:04 -0400643bpo-30723: Make several improvements to parenmatch.
terryjreedy1ccbad92017-07-05 19:36:48 -0400644* Add 'parens' style to highlight both opener and closer.
645* Make 'default' style, which is not default, a synonym for 'opener'.
646* Make time-delay work the same with all styles.
647* Add help for config dialog extensions tab, including parenmatch.
Terry Jan Reedyc3aa47f2017-07-30 06:25:22 -0400648* Add new tests.
terryjreedy1ccbad92017-07-05 19:36:48 -0400649Original patch by Charles Wohlganger. Revisions by Terry Jan Reedy
650
651bpo-30674: Grep -- Add docstrings. Patch by Cheryl Sabella.
652
653bpo-21519: IDLE's basic custom key entry dialog now detects
654duplicates properly. Original patch by Saimadhav Heblikar.
655
656bpo-29910: IDLE no longer deletes a character after commenting out a
657region by a key shortcut. Add "return 'break'" for this and other
658potential conflicts between IDLE and default key bindings.
659Patch by Serhiy Storchaka.
660
661bpo-30728: Modernize idlelib.configdialog:
662* replace import * with specific imports;
663* lowercase method and attribute lines.
664Patch by Cheryl Sabella.
665
666bpo-6739: Verify user-entered key sequences by trying to bind them
667with to a tk widget. Add tests for all 3 validation functions.
668Original patch by G Polo. Tests added by Cheryl Sabella.
669Code revised and more tests added by Terry Jan Reedy
670
671bpo-24813: Add icon to help_about and make other changes.
672
terryjreedyfaa63d12017-06-16 01:54:57 -0400673bpo-15786: Fix several problems with IDLE's autocompletion box.
674The following should now work: clicking on selection box items;
675using the scrollbar; selecting an item by hitting Return.
676Hangs on MacOSX should no longer happen. Patch by Louie Lu.
677
678bpo-25514: Add doc subsubsection about IDLE failure to start.
679Popup no-connection message directs users to this section.
680
681bpo-30642: Fix reference leaks in IDLE tests.
682Patches by Louie Lu and Terry Jan Reedy.
683
684bpo-30495: Add docstrings for textview.py and use PEP8 names.
685Patches by Cheryl Sabella and Terry Jan Reedy.
686
terryjreedy503bc632017-06-10 20:46:08 -0400687bpo-30290: Help-about: use pep8 names and add tests.
688Increase coverage to 100%.
689Patches by Louie Lu, Cheryl Sabella, and Terry Jan Reedy.
690
691bpo-30303: Add _utest option to textview; add new tests.
692Increase coverage to 100%.
693Patches by Louie Lu and Terry Jan Reedy.
694
terryjreedy1ccbad92017-07-05 19:36:48 -0400695Issue #29071: IDLE colors f-string prefixes but not invalid ur prefixes.
terryjreedy503bc632017-06-10 20:46:08 -0400696
697Issue #28572: Add 10% to coverage of IDLE's test_configdialog.
698Update and augment description of the configuration system.
699
700
Terry Jan Reedy05e80672018-02-04 19:07:16 -0500701What's New in IDLE 3.6.0 (since 3.5.0)
terryjreedy503bc632017-06-10 20:46:08 -0400702Released on 2016-12-23
Terry Jan Reedy05e80672018-02-04 19:07:16 -0500703======================================
Terry Jan Reedy1e957d12016-06-26 18:20:20 -0400704
Terry Jan Reedy3dad1a52016-09-12 01:57:25 -0400705- Issue #15308: Add 'interrupt execution' (^C) to Shell menu.
706 Patch by Roger Serwy, updated by Bayard Randel.
Terry Jan Reedy1e957d12016-06-26 18:20:20 -0400707
Terry Jan Reedyd92cecb2016-09-10 16:24:54 -0400708- Issue #27922: Stop IDLE tests from 'flashing' gui widgets on the screen.
709
Terry Jan Reedy70360192016-09-10 16:28:01 -0400710- Issue #27891: Consistently group and sort imports within idlelib modules.
711
712- Issue #17642: add larger font sizes for classroom projection.
713
Terry Jan Reedyd92cecb2016-09-10 16:24:54 -0400714- Add version to title of IDLE help window.
715
716- Issue #25564: In section on IDLE -- console differences, mention that
717 using exec means that __builtins__ is defined for each statement.
718
Terry Jan Reedy70360192016-09-10 16:28:01 -0400719- Issue #27821: Fix 3.6.0a3 regression that prevented custom key sets
720 from being selected when no custom theme was defined.
Terry Jan Reedyf45d27b2016-05-30 01:02:34 -0400721
Terry Jan Reedyd3fb5572016-08-20 21:41:03 -0400722- Issue #27714: text_textview and test_autocomplete now pass when re-run
723 in the same process. This occurs when test_idle fails when run with the
Terry Jan Reedy9f957702016-08-21 00:18:55 -0400724 -w option but without -jn. Fix warning from test_config.
Terry Jan Reedyd3fb5572016-08-20 21:41:03 -0400725
Terry Jan Reedy97c463d2016-08-20 21:43:00 -0400726- Issue #27621: Put query response validation error messages in the query
Stéphane Wirtel683281f2018-10-06 16:35:53 +0200727 box itself instead of in a separate messagebox. Redo tests to match.
Terry Jan Reedy97c463d2016-08-20 21:43:00 -0400728 Add Mac OSX refinements. Original patch by Mark Roseman.
729
730- Issue #27620: Escape key now closes Query box as cancelled.
731
732- Issue #27609: IDLE: tab after initial whitespace should tab, not
Terry Jan Reedy49dcf9d2016-08-21 00:20:35 -0400733 autocomplete. This fixes problem with writing docstrings at least
Terry Jan Reedy97c463d2016-08-20 21:43:00 -0400734 twice indented.
735
736- Issue #27609: Explicitly return None when there are also non-None
737 returns. In a few cases, reverse a condition and eliminate a return.
738
Terry Jan Reedyd3fb5572016-08-20 21:41:03 -0400739- Issue #25507: IDLE no longer runs buggy code because of its tkinter imports.
740 Users must include the same imports required to run directly in Python.
741
Terry Jan Reedy97c463d2016-08-20 21:43:00 -0400742- Issue #27173: Add 'IDLE Modern Unix' to the built-in key sets.
743 Make the default key set depend on the platform.
744 Add tests for the changes to the config module.
745
Terry Jan Reedyd3fb5572016-08-20 21:41:03 -0400746- Issue #27452: add line counter and crc to IDLE configHandler test dump.
747
Terry Jan Reedy4bf9c512016-07-10 20:30:43 -0400748- Issue #27477: IDLE search dialogs now use ttk widgets.
749
750- Issue #27173: Add 'IDLE Modern Unix' to the built-in key sets.
751 Make the default key set depend on the platform.
752 Add tests for the changes to the config module.
753
754- Issue #27452: make command line "idle-test> python test_help.py" work.
755 __file__ is relative when python is started in the file's directory.
756
757- Issue #27452: add line counter and crc to IDLE configHandler test dump.
758
759- Issue #27380: IDLE: add query.py with base Query dialog and ttk widgets.
760 Module had subclasses SectionName, ModuleName, and HelpSource, which are
761 used to get information from users by configdialog and file =>Load Module.
762 Each subclass has itw own validity checks. Using ModuleName allows users
763 to edit bad module names instead of starting over.
764 Add tests and delete the two files combined into the new one.
765
Terry Jan Reedy754a5c12016-06-26 18:22:32 -0400766- Issue #27372: Test_idle no longer changes the locale.
Terry Jan Reedy1e957d12016-06-26 18:20:20 -0400767
768- Issue #27365: Allow non-ascii chars in IDLE NEWS.txt, for contributor names.
769
770- Issue #27245: IDLE: Cleanly delete custom themes and key bindings.
771 Previously, when IDLE was started from a console or by import, a cascade
772 of warnings was emitted. Patch by Serhiy Storchaka.
773
Terry Jan Reedy754a5c12016-06-26 18:22:32 -0400774- Issue #24137: Run IDLE, test_idle, and htest with tkinter default root disabled.
775 Fix code and tests that fail with this restriction.
776 Fix htests to not create a second and redundant root and mainloop.
Terry Jan Reedy1e957d12016-06-26 18:20:20 -0400777
Terry Jan Reedy754a5c12016-06-26 18:22:32 -0400778- Issue #27310: Fix IDLE.app failure to launch on OS X due to vestigial import.
Terry Jan Reedyf45d27b2016-05-30 01:02:34 -0400779
Terry Jan Reedy8ace13b2016-06-11 04:31:22 -0400780- Issue #5124: Paste with text selected now replaces the selection on X11.
781 This matches how paste works on Windows, Mac, most modern Linux apps,
782 and ttk widgets. Original patch by Serhiy Storchaka.
783
Terry Jan Reedyb1c9b642016-06-11 04:36:34 -0400784- Issue #24750: Switch all scrollbars in IDLE to ttk versions.
785 Where needed, minimal tests are added to cover changes.
786
787- Issue #24759: IDLE requires tk 8.5 and availability ttk widgets.
788 Delete now unneeded tk version tests and code for older versions.
789 Add test for IDLE syntax colorizer.
790
791- Issue #27239: idlelib.macosx.isXyzTk functions initialize as needed.
792
Stéphane Wirtel683281f2018-10-06 16:35:53 +0200793- Issue #27262: move Aqua unbinding code, which enable context menus, to macosx.
Terry Jan Reedyb1c9b642016-06-11 04:36:34 -0400794
Terry Jan Reedy8bff8f62016-06-07 15:33:53 -0400795- Issue #24759: Make clear in idlelib.idle_test.__init__ that the directory
796 is a private implementation of test.test_idle and tool for maintainers.
797
Terry Jan Reedyea938ba2016-06-07 15:35:37 -0400798- Issue #27196: Stop 'ThemeChanged' warnings when running IDLE tests.
Terry Jan Reedy8bff8f62016-06-07 15:33:53 -0400799 These persisted after other warnings were suppressed in #20567.
800 Apply Serhiy Storchaka's update_idletasks solution to four test files.
801 Record this additional advice in idle_test/README.txt
802
803- Issue #20567: Revise idle_test/README.txt with advice about avoiding
804 tk warning messages from tests. Apply advice to several IDLE tests.
805
Terry Jan Reedyea938ba2016-06-07 15:35:37 -0400806- Issue # 24225: Update idlelib/README.txt with new file names
807 and event handlers.
808
809- Issue #27156: Remove obsolete code not used by IDLE. Replacements:
810 1. help.txt, replaced by help.html, is out-of-date and should not be used.
811 Its dedicated viewer has be replaced by the html viewer in help.py.
812 2. 'import idlever; I = idlever.IDLE_VERSION' is the same as
813 'import sys; I = version[:version.index(' ')]'
814 3. After 'ob = stackviewer.VariablesTreeItem(*args)',
815 'ob.keys()' == 'list(ob.object.keys).
816 4. In macosc, runningAsOSXAPP == isAquaTk; idCarbonAquaTk == isCarbonTk
817
Terry Jan Reedyf45d27b2016-05-30 01:02:34 -0400818- Issue #27117: Make colorizer htest and turtledemo work with dark themes.
819 Move code for configuring text widget colors to a new function.
820
Terry Jan Reedy137bac22016-05-30 01:04:08 -0400821- Issue #24225: Rename many idlelib/*.py and idle_test/test_*.py files.
822 Edit files to replace old names with new names when the old name
823 referred to the module rather than the class it contained.
824 See the issue and IDLE section in What's New in 3.6 for more.
825
Terry Jan Reedyf45d27b2016-05-30 01:02:34 -0400826- Issue #26673: When tk reports font size as 0, change to size 10.
827 Such fonts on Linux prevented the configuration dialog from opening.
828
829- Issue #21939: Add test for IDLE's percolator.
830 Original patch by Saimadhav Heblikar.
831
832- Issue #21676: Add test for IDLE's replace dialog.
833 Original patch by Saimadhav Heblikar.
834
835- Issue #18410: Add test for IDLE's search dialog.
Terry Jan Reedy6ff7a142016-06-22 03:55:20 -0400836 Original patch by Westley Martínez.
Terry Jan Reedyf45d27b2016-05-30 01:02:34 -0400837
Terry Jan Reedy137bac22016-05-30 01:04:08 -0400838- Issue #21703: Add test for undo delegator. Patch mostly by
839 Saimadhav Heblikar .
Terry Jan Reedyf45d27b2016-05-30 01:02:34 -0400840
841- Issue #27044: Add ConfigDialog.remove_var_callbacks to stop memory leaks.
842
843- Issue #23977: Add more asserts to test_delegator.
844
845- Issue #20640: Add tests for idlelib.configHelpSourceEdit.
846 Patch by Saimadhav Heblikar.
847
848- In the 'IDLE-console differences' section of the IDLE doc, clarify
849 how running with IDLE affects sys.modules and the standard streams.
850
851- Issue #25507: fix incorrect change in IOBinding that prevented printing.
852 Augment IOBinding htest to include all major IOBinding functions.
853
Terry Jan Reedy6ff7a142016-06-22 03:55:20 -0400854- Issue #25905: Revert unwanted conversion of ' to ’ RIGHT SINGLE QUOTATION
Terry Jan Reedyf45d27b2016-05-30 01:02:34 -0400855 MARK in README.txt and open this and NEWS.txt with 'ascii'.
856 Re-encode CREDITS.txt to utf-8 and open it with 'utf-8'.
Terry Jan Reedyc4dc43e2015-05-23 17:23:30 -0400857
Terry Jan Reedy6e92c112015-11-21 13:31:27 -0500858- Issue 15348: Stop the debugger engine (normally in a user process)
859 before closing the debugger window (running in the IDLE process).
860 This prevents the RuntimeErrors that were being caught and ignored.
861
862- Issue #24455: Prevent IDLE from hanging when a) closing the shell while the
863 debugger is active (15347); b) closing the debugger with the [X] button
864 (15348); and c) activating the debugger when already active (24455).
865 The patch by Mark Roseman does this by making two changes.
866 1. Suspend and resume the gui.interaction method with the tcl vwait
867 mechanism intended for this purpose (instead of root.mainloop & .quit).
868 2. In gui.run, allow any existing interaction to terminate first.
869
870- Change 'The program' to 'Your program' in an IDLE 'kill program?' message
871 to make it clearer that the program referred to is the currently running
872 user program, not IDLE itself.
873
874- Issue #24750: Improve the appearance of the IDLE editor window status bar.
875 Patch by Mark Roseman.
876
877- Issue #25313: Change the handling of new built-in text color themes to better
878 address the compatibility problem introduced by the addition of IDLE Dark.
879 Consistently use the revised idleConf.CurrentTheme everywhere in idlelib.
880
881- Issue #24782: Extension configuration is now a tab in the IDLE Preferences
882 dialog rather than a separate dialog. The former tabs are now a sorted
883 list. Patch by Mark Roseman.
884
885- Issue #22726: Re-activate the config dialog help button with some content
886 about the other buttons and the new IDLE Dark theme.
Terry Jan Reedyc4dc43e2015-05-23 17:23:30 -0400887
Terry Jan Reedyd17e9782015-10-04 01:14:51 -0400888- Issue #24820: IDLE now has an 'IDLE Dark' built-in text color theme.
889 It is more or less IDLE Classic inverted, with a cobalt blue background.
890 Strings, comments, keywords, ... are still green, red, orange, ... .
Terry Jan Reedy6e92c112015-11-21 13:31:27 -0500891 To use it with IDLEs released before November 2015, hit the
892 'Save as New Custom Theme' button and enter a new name,
893 such as 'Custom Dark'. The custom theme will work with any IDLE
894 release, and can be modified.
Terry Jan Reedyd17e9782015-10-04 01:14:51 -0400895
896- Issue #25224: README.txt is now an idlelib index for IDLE developers and
Terry Jan Reedy6e92c112015-11-21 13:31:27 -0500897 curious users. The previous user content is now in the IDLE doc chapter.
898 'IDLE' now means 'Integrated Development and Learning Environment'.
Terry Jan Reedyd17e9782015-10-04 01:14:51 -0400899
900- Issue #24820: Users can now set breakpoint colors in
901 Settings -> Custom Highlighting. Original patch by Mark Roseman.
902
Terry Jan Reedy9af7fe72015-09-28 23:38:57 -0400903- Issue #24972: Inactive selection background now matches active selection
Terry Jan Reedy6e92c112015-11-21 13:31:27 -0500904 background, as configured by users, on all systems. Found items are now
Terry Jan Reedy9af7fe72015-09-28 23:38:57 -0400905 always highlighted on Windows. Initial patch by Mark Roseman.
906
907- Issue #24570: Idle: make calltip and completion boxes appear on Macs
908 affected by a tk regression. Initial patch by Mark Roseman.
909
910- Issue #24988: Idle ScrolledList context menus (used in debugger)
911 now work on Mac Aqua. Patch by Mark Roseman.
912
913- Issue #24801: Make right-click for context menu work on Mac Aqua.
914 Patch by Mark Roseman.
915
916- Issue #25173: Associate tkinter messageboxes with a specific widget.
917 For Mac OSX, make them a 'sheet'. Patch by Mark Roseman.
918
919- Issue #25198: Enhance the initial html viewer now used for Idle Help.
920 * Properly indent fixed-pitch text (patch by Mark Roseman).
921 * Give code snippet a very Sphinx-like light blueish-gray background.
922 * Re-use initial width and height set by users for shell and editor.
923 * When the Table of Contents (TOC) menu is used, put the section header
Terry Jan Reedy6e92c112015-11-21 13:31:27 -0500924 at the top of the screen.
Terry Jan Reedy9af7fe72015-09-28 23:38:57 -0400925
926- Issue #25225: Condense and rewrite Idle doc section on text colors.
927
928- Issue #21995: Explain some differences between IDLE and console Python.
929
930- Issue #22820: Explain need for *print* when running file from Idle editor.
931
932- Issue #25224: Doc: augment Idle feature list and no-subprocess section.
933
934- Issue #25219: Update doc for Idle command line options.
935 Some were missing and notes were not correct.
936
Terry Jan Reedyd9763c22015-09-21 19:28:22 -0400937- Issue #24861: Most of idlelib is private and subject to change.
Terry Jan Reedy9af7fe72015-09-28 23:38:57 -0400938 Use idleib.idle.* to start Idle. See idlelib.__init__.__doc__.
Terry Jan Reedyd9763c22015-09-21 19:28:22 -0400939
Terry Jan Reedy09fbb202015-09-21 01:07:59 -0400940- Issue #25199: Idle: add synchronization comments for future maintainers.
941
Terry Jan Reedycba1a1a2015-09-21 22:36:42 -0400942- Issue #16893: Replace help.txt with help.html for Idle doc display.
943 The new idlelib/help.html is rstripped Doc/build/html/library/idle.html.
Terry Jan Reedy09fbb202015-09-21 01:07:59 -0400944 It looks better than help.txt and will better document Idle as released.
Terry Jan Reedyd9763c22015-09-21 19:28:22 -0400945 The tkinter html viewer that works for this file was written by Mark Roseman.
Terry Jan Reedy09fbb202015-09-21 01:07:59 -0400946 The now unused EditorWindow.HelpDialog class and helt.txt file are deprecated.
947
948- Issue #24199: Deprecate unused idlelib.idlever with possible removal in 3.6.
949
Terry Jan Reedy09fbb202015-09-21 01:07:59 -0400950- Issue #24790: Remove extraneous code (which also create 2 & 3 conflicts).
951
Terry Jan Reedyc8f4bbb2015-09-21 01:10:21 -0400952
Terry Jan Reedy5c4725e2014-10-01 03:10:27 -0400953What's New in IDLE 3.5.0?
Terry Jan Reedy9e883ca2014-10-01 03:08:17 -0400954=========================
Terry Jan Reedyc8f4bbb2015-09-21 01:10:21 -0400955*Release date: 2015-09-13*
Terry Jan Reedyc4dc43e2015-05-23 17:23:30 -0400956
Terry Jan Reedy5080deb2015-08-16 23:23:16 -0400957- Issue #23672: Allow Idle to edit and run files with astral chars in name.
958 Patch by Mohd Sanad Zaki Rizvi.
959
960- Issue 24745: Idle editor default font. Switch from Courier to
961 platform-sensitive TkFixedFont. This should not affect current customized
962 font selections. If there is a problem, edit $HOME/.idlerc/config-main.cfg
963 and remove 'fontxxx' entries from [Editor Window]. Patch by Mark Roseman.
964
965- Issue #21192: Idle editor. When a file is run, put its name in the restart bar.
966 Do not print false prompts. Original patch by Adnan Umer.
967
968- Issue #13884: Idle menus. Remove tearoff lines. Patch by Roger Serwy.
969
Terry Jan Reedyc4dc43e2015-05-23 17:23:30 -0400970- Issue #23184: remove unused names and imports in idlelib.
971 Initial patch by Al Sweigart.
972
Terry Jan Reedyc4dc43e2015-05-23 17:23:30 -0400973- Issue #20577: Configuration of the max line length for the FormatParagraph
974 extension has been moved from the General tab of the Idle preferences dialog
975 to the FormatParagraph tab of the Config Extensions dialog.
976 Patch by Tal Einat.
Terry Jan Reedy9e883ca2014-10-01 03:08:17 -0400977
Terry Jan Reedy81f01fb2014-12-05 20:49:32 -0500978- Issue #16893: Update Idle doc chapter to match current Idle and add new
979 information.
980
981- Issue #3068: Add Idle extension configuration dialog to Options menu.
982 Changes are written to HOME/.idlerc/config-extensions.cfg.
983 Original patch by Tal Einat.
984
Martin Panter204bf0b2016-07-11 07:51:37 +0000985- Issue #16233: A module browser (File : Class Browser, Alt+C) requires an
Terry Jan Reedy81f01fb2014-12-05 20:49:32 -0500986 editor window with a filename. When Class Browser is requested otherwise,
987 from a shell, output window, or 'Untitled' editor, Idle no longer displays
988 an error box. It now pops up an Open Module box (Alt+M). If a valid name
989 is entered and a module is opened, a corresponding browser is also opened.
990
991- Issue #4832: Save As to type Python files automatically adds .py to the
992 name you enter (even if your system does not display it). Some systems
993 automatically add .txt when type is Text files.
994
995- Issue #21986: Code objects are not normally pickled by the pickle module.
996 To match this, they are no longer pickled when running under Idle.
Terry Jan Reedy81f01fb2014-12-05 20:49:32 -0500997
Terry Jan Reedyc4dc43e2015-05-23 17:23:30 -0400998- Issue #23180: Rename IDLE "Windows" menu item to "Window".
999 Patch by Al Sweigart.
Terry Jan Reedy81f01fb2014-12-05 20:49:32 -05001000
Terry Jan Reedy9e883ca2014-10-01 03:08:17 -04001001- Issue #17390: Adjust Editor window title; remove 'Python',
1002 move version to end.
1003
1004- Issue #14105: Idle debugger breakpoints no longer disappear
Martin Panter96a4f072016-02-10 01:17:51 +00001005 when inserting or deleting lines.
Terry Jan Reedy9e883ca2014-10-01 03:08:17 -04001006
1007- Issue #17172: Turtledemo can now be run from Idle.
1008 Currently, the entry is on the Help menu, but it may move to Run.
1009 Patch by Ramchandra Apt and Lita Cho.
1010
1011- Issue #21765: Add support for non-ascii identifiers to HyperParser.
1012
1013- Issue #21940: Add unittest for WidgetRedirector. Initial patch by Saimadhav
1014 Heblikar.
1015
1016- Issue #18592: Add unittest for SearchDialogBase. Patch by Phil Webster.
1017
1018- Issue #21694: Add unittest for ParenMatch. Patch by Saimadhav Heblikar.
1019
1020- Issue #21686: add unittest for HyperParser. Original patch by Saimadhav
1021 Heblikar.
1022
1023- Issue #12387: Add missing upper(lower)case versions of default Windows key
1024 bindings for Idle so Caps Lock does not disable them. Patch by Roger Serwy.
1025
1026- Issue #21695: Closing a Find-in-files output window while the search is
1027 still in progress no longer closes Idle.
1028
1029- Issue #18910: Add unittest for textView. Patch by Phil Webster.
1030
1031- Issue #18292: Add unittest for AutoExpand. Patch by Saihadhav Heblikar.
1032
1033- Issue #18409: Add unittest for AutoComplete. Patch by Phil Webster.
1034
Terry Jan Reedy5c4725e2014-10-01 03:10:27 -04001035- Issue #21477: htest.py - Improve framework, complete set of tests.
1036 Patches by Saimadhav Heblikar
Terry Jan Reedy9e883ca2014-10-01 03:08:17 -04001037
1038- Issue #18104: Add idlelib/idle_test/htest.py with a few sample tests to begin
1039 consolidating and improving human-validated tests of Idle. Change other files
1040 as needed to work with htest. Running the module as __main__ runs all tests.
1041
1042- Issue #21139: Change default paragraph width to 72, the PEP 8 recommendation.
1043
1044- Issue #21284: Paragraph reformat test passes after user changes reformat width.
1045
1046- Issue #17654: Ensure IDLE menus are customized properly on OS X for
1047 non-framework builds and for all variants of Tk.
1048
1049
Ned Deily5d590d82012-10-18 18:19:11 -07001050What's New in IDLE 3.4.0?
Ned Deilybfbf3f12012-10-18 18:16:44 -07001051=========================
Terry Jan Reedyc4dc43e2015-05-23 17:23:30 -04001052*Release date: 2014-03-16*
Ned Deilybfbf3f12012-10-18 18:16:44 -07001053
Terry Jan Reedy32622232013-03-30 18:32:19 -04001054- Issue #17390: Display Python version on Idle title bar.
1055 Initial patch by Edmond Burnett.
1056
Andrew Svetlov1bd7f022013-01-14 19:27:36 +02001057- Issue #5066: Update IDLE docs. Patch by Todd Rovito.
1058
Georg Brandl9aa23c52013-04-06 09:40:02 +02001059- Issue #17625: Close the replace dialog after it is used.
1060
Ned Deilybfbf3f12012-10-18 18:16:44 -07001061- Issue #16226: Fix IDLE Path Browser crash.
1062 (Patch by Roger Serwy)
1063
Ned Deilyb6d24d92012-10-22 15:18:46 -07001064- Issue #15853: Prevent IDLE crash on OS X when opening Preferences menu
1065 with certain versions of Tk 8.5. Initial patch by Kevin Walzer.
1066
Ned Deilybfbf3f12012-10-18 18:16:44 -07001067
Martin v. Löwis156989a2012-06-03 12:00:48 +02001068What's New in IDLE 3.3.0?
Andrew Svetlov0f71f442012-03-21 13:23:41 +02001069=========================
Terry Jan Reedyc4dc43e2015-05-23 17:23:30 -04001070*Release date: 2012-09-29*
Andrew Svetlov0f71f442012-03-21 13:23:41 +02001071
Georg Brandl8bc7e312013-04-06 09:36:20 +02001072- Issue #17625: Close the replace dialog after it is used.
1073
Martin v. Löwis30d5e6c2012-07-25 11:32:26 +02001074- Issue #7163: Propagate return value of sys.stdout.write.
1075
Martin v. Löwisc882b7c2012-07-25 10:47:20 +02001076- Issue #15318: Prevent writing to sys.stdin.
1077
Ned Deilyc65ef9b2012-07-09 18:16:11 -07001078- Issue #4832: Modify IDLE to save files with .py extension by
1079 default on Windows and OS X (Tk 8.5) as it already does with X11 Tk.
1080
Martin v. Löwis8a75bed2012-07-11 08:29:03 +02001081- Issue #13532, #15319: Check that arguments to sys.stdout.write are strings.
Martin v. Löwis9ae3f7a2012-07-09 20:46:11 +02001082
Terry Jan Reedy2a2ce4f2012-06-07 19:41:04 -04001083- Issue # 12510: Attempt to get certain tool tips no longer crashes IDLE.
1084 Erroneous tool tips have been corrected. Default added for callables.
1085
Terry Jan Reedy55f3ae62016-09-29 23:59:55 -04001086- Issue #10365: File open dialog now works instead of crashing even when
Terry Jan Reedy2a2ce4f2012-06-07 19:41:04 -04001087 parent window is closed while dialog is open.
1088
1089- Issue 14876: use user-selected font for highlight configuration.
1090
Martin v. Löwis862d13a2012-06-03 11:55:32 +02001091- Issue #14937: Perform auto-completion of filenames in strings even for
Martin v. Löwis9f44a662012-06-03 12:32:42 +02001092 non-ASCII filenames. Likewise for identifiers.
Martin v. Löwis862d13a2012-06-03 11:55:32 +02001093
Andrew Svetlovdfe980b2012-04-05 21:54:39 +03001094- Issue #8515: Set __file__ when run file in IDLE.
1095 Initial patch by Bruce Frederiksen.
1096
Éric Araujo1641bb72012-03-26 23:35:31 -04001097- IDLE can be launched as `python -m idlelib`
Andrew Svetlova5cf6c42012-03-26 22:14:13 +03001098
Andrew Svetlovf3c29762012-03-31 14:10:10 +03001099- Issue #14409: IDLE now properly executes commands in the Shell window
1100 when it cannot read the normal config files on startup and
1101 has to use the built-in default key bindings.
1102 There was previously a bug in one of the defaults.
Andrew Svetlov67ac0792012-03-29 19:01:28 +03001103
Andrew Svetlov0f71f442012-03-21 13:23:41 +02001104- Issue #3573: IDLE hangs when passing invalid command line args
1105 (directory(ies) instead of file(s)).
1106
Ned Deilyeb00d092012-07-30 03:38:02 -07001107- Issue #14018: Update checks for unstable system Tcl/Tk versions on OS X
1108 to include versions shipped with OS X 10.7 and 10.8 in addition to 10.6.
1109
Andrew Svetlov0f71f442012-03-21 13:23:41 +02001110
Kurt B. Kaiser6551baa2011-05-11 13:54:44 -04001111What's New in IDLE 3.2.1?
Kurt B. Kaiser75fc5662011-03-21 02:13:42 -04001112=========================
Kurt B. Kaisere1478062011-05-11 12:24:17 -04001113*Release date: 15-May-11*
1114
Kurt B. Kaiserdfbe1592011-05-14 17:20:09 -04001115- Issue #6378: Further adjust idle.bat to start associated Python
1116
Kurt B. Kaiser0a429822011-05-12 15:25:24 -04001117- Issue #11896: Save on Close failed despite selecting "Yes" in dialog.
Kurt B. Kaisere1478062011-05-11 12:24:17 -04001118
1119- Issue #1028: Ctrl-space binding to show completions was causing IDLE to exit.
1120 Tk < 8.5 was sending invalid Unicode null; replaced with valid null.
Kurt B. Kaiser75fc5662011-03-21 02:13:42 -04001121
Terry Jan Reedy55f3ae62016-09-29 23:59:55 -04001122- Issue #4676: <Home> toggle failing on Tk 8.5, causing IDLE exits and strange selection
1123 behavior. Improve selection extension behaviour.
Kurt B. Kaiser946f1722011-03-25 20:29:13 -04001124
Terry Jan Reedy55f3ae62016-09-29 23:59:55 -04001125- Issue #3851: <Home> toggle non-functional when NumLock set on Windows.
Kurt B. Kaiser75fc5662011-03-21 02:13:42 -04001126
1127
Kurt B. Kaiser160ff012009-04-25 20:14:29 +00001128What's New in IDLE 3.1b1?
1129=========================
Kurt B. Kaisere1478062011-05-11 12:24:17 -04001130*Release date: 06-May-09*
Kurt B. Kaiser160ff012009-04-25 20:14:29 +00001131
Terry Jan Reedy55f3ae62016-09-29 23:59:55 -04001132- Issue #5707: Use of 'filter' in keybindingDialog.py was causing custom key assignment to
1133 fail. Patch by Amaury Forgeot d'Arc.
Kurt B. Kaiser113f0e82009-04-04 20:38:52 +00001134
Martin v. Löwis7e158452009-01-18 20:23:36 +00001135- Issue #4815: Offer conversion to UTF-8 if source files have
1136 no encoding declaration and are not encoded in UTF-8.
1137
Martin v. Löwis975a0792009-01-18 20:15:42 +00001138- Issue #4008: Fix problems with non-ASCII source files.
1139
Martin v. Löwis5216d082008-12-29 18:43:40 +00001140- Issue #4323: Always encode source as UTF-8 without asking
1141 the user (unless a different encoding is declared); remove
1142 user configuration of source encoding; all according to
1143 PEP 3120.
1144
Ronald Oussorene9f8bf02009-01-02 13:10:34 +00001145- Issue #2665: On Windows, an IDLE installation upgraded from an old version
1146 would not start if a custom theme was defined.
1147
Terry Jan Reedy55f3ae62016-09-29 23:59:55 -04001148------------------------------------------------------------------------
1149Refer to NEWS2x.txt and HISTORY.txt for information on earlier releases.
1150------------------------------------------------------------------------