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