blob: 11596fa075c160fe9ba3e28871e4029db2ff8f65 [file] [log] [blame]
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +00001+++++++++++++
Steven M. Gavad39993e2001-07-20 01:36:49 +00002IDLEfork NEWS
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +00003+++++++++++++
Steven M. Gavad39993e2001-07-20 01:36:49 +00004
Kurt B. Kaiser9a90e702003-04-25 17:48:08 +00005What's New in IDLEfork 0.9b1?
Kurt B. Kaiser003091c2003-02-17 18:57:16 +00006===================================
7
Kurt B. Kaisera00050f2003-05-08 20:26:55 +00008*Release date: XX-XXX-2003*
9
Kurt B. Kaiser5ddef752003-06-01 01:11:14 +000010- The current working directory of the execution environment (and shell
11 following completion of execution) is now that of the module being run.
12
13- Added the delete-exitfunc option to config-main.def. (This option is not
14 included in the Options dialog.) Setting this to True (the default) will
15 cause IDLE to not run sys.exitfunc/atexit when the subprocess exits.
16
17- IDLE now preserves the line ending codes when editing a file produced on
18 a different platform. SF 661759, SF 538584
19
20- Reduced default editor font size to 10 point and increased window height
21 to provide a better initial impression on Windows.
22
23- Options / Fonts/Tabs / Set Base Editor Font: List box was not highlighting
24 the default font when first installed on Windows. SF 661676
25
26- Added Autosave feature: when user runs code from edit window, if the file
27 has been modified IDLE will silently save it if Autosave is enabled. The
28 option is set in the Options dialog, and the default is to prompt the
29 user to save the file. SF 661318 Bruce Sherwood patch.
30
31- Improved the RESTART annotation in the shell window when the user restarts
32 the shell while it is generating output. Also improved annotation when user
33 repeatedly hammers the Ctrl-F6 restart.
34
Kurt B. Kaisera80d57c2003-05-17 03:15:48 +000035- Allow IDLE to run when not installed and cwd is not the IDLE directory
36 SF Patch 686254 "Run IDLEfork from any directory without set-up" - Raphael
37
38- When a module is run from an EditorWindow: if its directory is not in
39 sys.path, prepend it. This allows the module to import other modules in
40 the same directory. Do the same for a script run from the command line.
41
Kurt B. Kaiser5ddef752003-06-01 01:11:14 +000042- Correctly restart the subprocess if it is running user code and the user
43 attempts to run some other module or restarts the shell. Do the same if
44 the link is broken and it is possible to restart the subprocess and re-
45 connect to the GUI. SF RFE 661321.
Kurt B. Kaiser7f38ec02003-05-15 03:19:42 +000046
47- Improved exception reporting when running commands or scripts from the
48 command line.
49
Kurt B. Kaisera80d57c2003-05-17 03:15:48 +000050- Added a -n command line switch to start IDLE without the subprocess.
51 Removed the Shell menu when running in that mode. Updated help messages.
52
Kurt B. Kaiser7f38ec02003-05-15 03:19:42 +000053- Added a comment to the shell startup header to indicate when IDLE is not
Kurt B. Kaisera80d57c2003-05-17 03:15:48 +000054 using the subprocess.
Kurt B. Kaiser7f38ec02003-05-15 03:19:42 +000055
56- Restore the ability to run without the subprocess. This can be important for
57 some platforms or configurations. (Running without the subprocess allows the
58 debugger to trace through parts of IDLE itself, which may or may not be
59 desirable, depending on your point of view. In addition, the traditional
Kurt B. Kaiser5ddef752003-06-01 01:11:14 +000060 reload/import tricks must be use if user source code is changed.) This is
61 helpful for developing IDLE using IDLE, because one instance can be used to
62 edit the code and a separate instance run to test changes. (Multiple
63 concurrent IDLE instances with subprocesses is a future feature)
Kurt B. Kaiser7f38ec02003-05-15 03:19:42 +000064
Kurt B. Kaiser73414a22003-05-12 03:04:59 +000065- Improve the error message a user gets when saving a file with non-ASCII
66 characters and no source encoding is specified. Done by adding a dialog
67 'EncodingMessage', which contains the line to add in a fixed-font entry
68 widget, and which has a button to add that line to the file automatically.
69 Also, add a configuration option 'EditorWindow/encoding', which has three
70 possible values: none, utf-8, and locale. None is the default: IDLE will show
71 this dialog when non-ASCII characters are encountered. utf-8 means that files
72 with non-ASCII characters are saved as utf-8-with-bom. locale means that
73 files are saved in the locale's encoding; the dialog is only displayed if the
74 source contains characters outside the locale's charset. SF 710733 - Loewis
75
Kurt B. Kaisera00050f2003-05-08 20:26:55 +000076- Improved I/O response by tweaking the wait parameter in various
77 calls to signal.signal().
78
79- Implemented a threaded subprocess which allows interrupting a pass
Kurt B. Kaiser73414a22003-05-12 03:04:59 +000080 loop in user code using the 'interrupt' extension. User code runs
Kurt B. Kaiser5ddef752003-06-01 01:11:14 +000081 in MainThread, while the RPCServer is handled by SockThread. This is
82 necessary because Windows doesn't support signals.
Kurt B. Kaiser003091c2003-02-17 18:57:16 +000083
Kurt B. Kaiser94afd302003-03-12 20:52:00 +000084- Implemented the 'interrupt' extension module, which allows a subthread
85 to raise a KeyboardInterrupt in the main thread.
86
87- Attempting to save the shell raised an error related to saving
88 breakpoints, which are not implemented in the shell
89
90- Provide a correct message when 'exit' or 'quit' are entered at the
91 IDLE command prompt SF 695861
92
93- Eliminate extra blank line in shell output caused by not flushing
94 stdout when user code ends with an unterminated print. SF 695861
95
96- Moved responsibility for exception formatting (i.e. pruning IDLE internal
97 calls) out of rpc.py into the client and server.
98
Kurt B. Kaiser003091c2003-02-17 18:57:16 +000099- Exit IDLE cleanly even when doing subprocess I/O
100
Kurt B. Kaiser5ddef752003-06-01 01:11:14 +0000101- Handle subprocess interrupt with an RPC message.
Kurt B. Kaiser003091c2003-02-17 18:57:16 +0000102
103- Restart the subprocess if it terminates itself. (VPython programs do that)
104
105- Support subclassing of exceptions, including in the shell, by moving the
106 exception formatting to the subprocess.
107
Kurt B. Kaiser003091c2003-02-17 18:57:16 +0000108
109
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000110What's New in IDLEfork 0.9 Alpha 2?
111===================================
Kurt B. Kaiser2cb54022002-12-31 18:12:04 +0000112
Kurt B. Kaiser7e172892003-01-27 02:40:20 +0000113*Release date: 27-Jan-2003*
114
115- Updated INSTALL.txt to claify use of the python2 rpm.
116
117- Improved formatting in IDLE Help.
118
119- Run menu: Replace "Run Script" with "Run Module".
120
121- Code encountering an unhandled exception under the debugger now shows
122 the correct traceback, with IDLE internal levels pruned out.
123
124- If an exception occurs entirely in IDLE, don't prune the IDLE internal
125 modules from the traceback displayed.
126
127- Class Browser and Path Browser now use Alt-Key-2 for vertical zoom.
128
129- IDLE icons will now install correctly even when setup.py is run from the
130 build directory
131
132- Class Browser now compatible with Python2.3 version of pyclbr.py
Kurt B. Kaiser2cb54022002-12-31 18:12:04 +0000133
Kurt B. Kaiser5ec186b2003-01-17 04:04:06 +0000134- Left cursor move in presence of selected text now moves from left end
135 of the selection.
136
137- Add Meta keybindings to "IDLE Classic Windows" to handle reversed
138 Alt/Meta on some Linux distros.
139
Kurt B. Kaiser8e92bf72003-01-14 22:03:31 +0000140- Change default: IDLE now starts with Python Shell.
141
142- Removed the File Path from the Additional Help Sources scrolled list.
143
144- Add capability to access Additional Help Sources on the web if the
145 Help File Path begins with //http or www. (Otherwise local path is
146 validated, as before.)
147
148- Additional Help Sources were not being posted on the Help menu in the
149 order entered. Implement sorting the list by [HelpFiles] 'option'
150 number.
151
152- Add Browse button to New Help Source dialog. Arrange to start in
153 Python/Doc if platform is Windows, otherwise start in current directory.
154
155- Put the Additional Help Sources directly on the Help menu instead of in
156 an Extra Help cascade menu. Rearrange the Help menu so the Additional
157 Help Sources come last. Update help.txt appropriately.
158
159- Fix Tk root pop-ups in configSectionNameDialog.py and configDialog.py
160
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000161- Uniform capitalization in General tab of ConfigDialog, update the doc string.
162
163- Fix bug in ConfigDialog where SaveAllChangedConfig() was unexpectedly
164 deleting Additional Help Sources from the user's config file.
165
166- Make configHelpSourceEdit OK button the default and bind <Return>
167
168- Fix Tk root pop-ups in configHelpSourceEdit: error dialogs not attached
169 to parents.
170
171- Use os.startfile() to open both Additional Help and Python Help on the
172 Windows platform. The application associated with the file type will act as
173 the viewer. Windows help files (.chm) are now supported via the
174 Settings/General/Additional Help facility.
175
176- If Python Help files are installed locally on Linux, use them instead of
177 accessing python.org.
178
179- Make the methods for finding the Python help docs more robust, and make
180 them work in the installed configuration, also.
181
182- On the Save Before Run dialog, make the OK button the default. One
183 less mouse action!
184
185- Add a method: EditorWindow.get_geometry() for future use in implementing
186 window location persistence.
187
188- Removed the "Help/Advice" menu entry. Thanks, David! We'll remember!
189
190- Change the "Classic Windows" theme's paste key to be <ctrl-v>.
191
192- Rearrange the Shell menu to put Stack Viewer entries adjacent.
193
194- Add the ability to restart the subprocess interpreter from the shell window;
Kurt B. Kaiser7e172892003-01-27 02:40:20 +0000195 add an associated menu entry "Shell/Restart" with binding Control-F6. Update
196 IDLE help.
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000197
198- Upon a restart, annotate the shell window with a "restart boundary". Add a
Kurt B. Kaiser7e172892003-01-27 02:40:20 +0000199 shell window menu "Shell/View Restart" with binding F6 to jump to the most
200 recent restart boundary.
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000201
Kurt B. Kaiser7e172892003-01-27 02:40:20 +0000202- Add Shell menu to Python Shell; change "Settings" to "Options".
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000203
204- Remove incorrect comment in setup.py: IDLEfork is now installed as a package.
205
206- Add INSTALL.txt, HISTORY.txt, NEWS.txt to installed configuration.
207
208- In installer text, fix reference to Visual Python, should be VPython.
209 Properly credit David Scherer.
210
211- Modified idle, idle.py, idle.pyw to improve exception handling.
212
Steven M. Gavad39993e2001-07-20 01:36:49 +0000213
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000214What's New in IDLEfork 0.9 Alpha 1?
215===================================
Steven M. Gavad39993e2001-07-20 01:36:49 +0000216
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000217*Release date: 31-Dec-2002*
Steven M. Gava88ff7362001-07-21 09:50:55 +0000218
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000219- First release of major new functionality. For further details refer to
220 Idle-dev and/or the Sourceforge CVS.
Steven M. Gavad39993e2001-07-20 01:36:49 +0000221
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000222- Adapted to the Mac platform.
Steven M. Gavad39993e2001-07-20 01:36:49 +0000223
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000224- Overhauled the IDLE startup options and revised the idle -h help message,
225 which provides details of command line usage.
Steven M. Gavad39993e2001-07-20 01:36:49 +0000226
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000227- Multiple bug fixes and usability enhancements.
228
229- Introduced the new RPC implementation, which includes a debugger. The output
230 of user code is to the shell, and the shell may be used to inspect the
231 environment after the run has finished. (In version 0.8.1 the shell
232 environment was separate from the environment of the user code.)
233
234- Introduced the configuration GUI and a new About dialog.
235
236- Removed David Scherer's Remote Procedure Call code and replaced with Guido
237 van Rossum's. GvR code has support for the IDLE debugger and uses the shell
238 to inspect the environment of code Run from an Edit window. Files removed:
239 ExecBinding.py, loader.py, protocol.py, Remote.py, spawn.py
Steven M. Gavad39993e2001-07-20 01:36:49 +0000240
241
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000242
243What's New in IDLEfork 0.8.1?
244=============================
245
246*Release date: 22-Jul-2001*
247
248- New tarball released as a result of the 'revitalisation' of the IDLEfork
249 project.
250
251- This release requires python 2.1 or better. Compatability with earlier
252 versions of python (especially ancient ones like 1.5x) is no longer a
253 priority in IDLEfork development.
254
255- This release is based on a merging of the earlier IDLE fork work with current
256 cvs IDLE (post IDLE version 0.8), with some minor additional coding by Kurt
257 B. Kaiser and Stephen M. Gava.
258
259- This release is basically functional but also contains some known breakages,
260 particularly with running things from the shell window. Also the debugger is
261 not working, but I believe this was the case with the previous IDLE fork
262 release (0.7.1) as well.
263
264- This release is being made now to mark the point at which IDLEfork is
265 launching into a new stage of development.
266
267- IDLEfork CVS will now be branched to enable further development and
268 exploration of the two "execution in a remote process" patches submitted by
269 David Scherer (David's is currently in IDLEfork) and GvR, while stabilisation
270 and development of less heavyweight improvements (like user customisation)
271 can continue on the trunk.
272
273
274What's New in IDLE fork 0.7.1?
275==============================
276
277*Release date: 15-Aug-2000*
278
279- First project tarball released.
280
281- This was the first release of IDLE fork, which at this stage was a
282 combination of IDLE 0.5 and the VPython idle fork, with additional changes
283 coded by David Scherer, Peter Schneider-Kamp and Nicholas Riley.
284
285
286
287IDLE fork 0.7.1 - 29 May 2000
Steven M. Gavad39993e2001-07-20 01:36:49 +0000288-----------------------------
Steven M. Gavad39993e2001-07-20 01:36:49 +0000289
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000290 David Scherer <dscherer@cmu.edu>
291
292- This is a modification of the CVS version of IDLE 0.5, updated as of
293 2000-03-09. It is alpha software and might be unstable. If it breaks, you
294 get to keep both pieces.
295
296- If you have problems or suggestions, you should either contact me or post to
297 the list at http://www.python.org/mailman/listinfo/idle-dev (making it clear
298 that you are using this modified version of IDLE).
299
300- Changes:
301
302 - The ExecBinding module, a replacement for ScriptBinding, executes programs
303 in a separate process, piping standard I/O through an RPC mechanism to an
304 OnDemandOutputWindow in IDLE. It supports executing unnamed programs
305 (through a temporary file). It does not yet support debugging.
306
307 - When running programs with ExecBinding, tracebacks will be clipped to
308 exclude system modules. If, however, a system module calls back into the
309 user program, that part of the traceback will be shown.
310
311 - The OnDemandOutputWindow class has been improved. In particular, it now
312 supports a readline() function used to implement user input, and a
313 scroll_clear() operation which is used to hide the output of a previous run
314 by scrolling it out of the window.
315
316 - Startup behavior has been changed. By default IDLE starts up with just a
317 blank editor window, rather than an interactive window. Opening a file in
318 such a blank window replaces the (nonexistent) contents of that window
319 instead of creating another window. Because of the need to have a
320 well-known port for the ExecBinding protocol, only one copy of IDLE can be
321 running. Additional invocations use the RPC mechanism to report their
322 command line arguments to the copy already running.
323
324 - The menus have been reorganized. In particular, the excessively large
325 'edit' menu has been split up into 'edit', 'format', and 'run'.
326
327 - 'Python Documentation' now works on Windows, if the win32api module is
328 present.
329
330 - A few key bindings have been changed: F1 now loads Python Documentation
331 instead of the IDLE help; shift-TAB is now a synonym for unindent.
332
333- New modules:
334
335 ExecBinding.py Executes program through loader
336 loader.py Bootstraps user program
337 protocol.py RPC protocol
338 Remote.py User-process interpreter
339 spawn.py OS-specific code to start programs
340
341- Files modified:
342
343 autoindent.py ( bindings tweaked )
344 bindings.py ( menus reorganized )
345 config.txt ( execbinding enabled )
346 editorwindow.py ( new menus, fixed 'Python Documentation' )
347 filelist.py ( hook for "open in same window" )
348 formatparagraph.py ( bindings tweaked )
349 idle.bat ( removed absolute pathname )
350 idle.pyw ( weird bug due to import with same name? )
351 iobinding.py ( open in same window, EOL convention )
352 keydefs.py ( bindings tweaked )
353 outputwindow.py ( readline, scroll_clear, etc )
354 pyshell.py ( changed startup behavior )
355 readme.txt ( <Recursion on file with id=1234567> )
Steven M. Gavad39993e2001-07-20 01:36:49 +0000356
357
Kurt B. Kaisera7b804f2003-01-10 21:27:23 +0000358--------------------------------------------------------------------
359Refer to HISTORY.txt for additional information on earlier releases.
360--------------------------------------------------------------------
David Scherer7aced172000-08-15 01:13:23 +0000361
362
David Scherer7aced172000-08-15 01:13:23 +0000363
364
David Scherer7aced172000-08-15 01:13:23 +0000365