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