Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 1 | +++++++++++++ |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 2 | IDLEfork NEWS |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 3 | +++++++++++++ |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 4 | |
Kurt B. Kaiser | 9a90e70 | 2003-04-25 17:48:08 +0000 | [diff] [blame] | 5 | What's New in IDLEfork 0.9b1? |
Kurt B. Kaiser | 003091c | 2003-02-17 18:57:16 +0000 | [diff] [blame] | 6 | =================================== |
| 7 | |
Kurt B. Kaiser | a00050f | 2003-05-08 20:26:55 +0000 | [diff] [blame] | 8 | *Release date: XX-XXX-2003* |
| 9 | |
Kurt B. Kaiser | 5ddef75 | 2003-06-01 01:11:14 +0000 | [diff] [blame^] | 10 | - 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. Kaiser | a80d57c | 2003-05-17 03:15:48 +0000 | [diff] [blame] | 35 | - 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. Kaiser | 5ddef75 | 2003-06-01 01:11:14 +0000 | [diff] [blame^] | 42 | - 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. Kaiser | 7f38ec0 | 2003-05-15 03:19:42 +0000 | [diff] [blame] | 46 | |
| 47 | - Improved exception reporting when running commands or scripts from the |
| 48 | command line. |
| 49 | |
Kurt B. Kaiser | a80d57c | 2003-05-17 03:15:48 +0000 | [diff] [blame] | 50 | - 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. Kaiser | 7f38ec0 | 2003-05-15 03:19:42 +0000 | [diff] [blame] | 53 | - Added a comment to the shell startup header to indicate when IDLE is not |
Kurt B. Kaiser | a80d57c | 2003-05-17 03:15:48 +0000 | [diff] [blame] | 54 | using the subprocess. |
Kurt B. Kaiser | 7f38ec0 | 2003-05-15 03:19:42 +0000 | [diff] [blame] | 55 | |
| 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. Kaiser | 5ddef75 | 2003-06-01 01:11:14 +0000 | [diff] [blame^] | 60 | 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. Kaiser | 7f38ec0 | 2003-05-15 03:19:42 +0000 | [diff] [blame] | 64 | |
Kurt B. Kaiser | 73414a2 | 2003-05-12 03:04:59 +0000 | [diff] [blame] | 65 | - 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. Kaiser | a00050f | 2003-05-08 20:26:55 +0000 | [diff] [blame] | 76 | - 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. Kaiser | 73414a2 | 2003-05-12 03:04:59 +0000 | [diff] [blame] | 80 | loop in user code using the 'interrupt' extension. User code runs |
Kurt B. Kaiser | 5ddef75 | 2003-06-01 01:11:14 +0000 | [diff] [blame^] | 81 | in MainThread, while the RPCServer is handled by SockThread. This is |
| 82 | necessary because Windows doesn't support signals. |
Kurt B. Kaiser | 003091c | 2003-02-17 18:57:16 +0000 | [diff] [blame] | 83 | |
Kurt B. Kaiser | 94afd30 | 2003-03-12 20:52:00 +0000 | [diff] [blame] | 84 | - 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. Kaiser | 003091c | 2003-02-17 18:57:16 +0000 | [diff] [blame] | 99 | - Exit IDLE cleanly even when doing subprocess I/O |
| 100 | |
Kurt B. Kaiser | 5ddef75 | 2003-06-01 01:11:14 +0000 | [diff] [blame^] | 101 | - Handle subprocess interrupt with an RPC message. |
Kurt B. Kaiser | 003091c | 2003-02-17 18:57:16 +0000 | [diff] [blame] | 102 | |
| 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. Kaiser | 003091c | 2003-02-17 18:57:16 +0000 | [diff] [blame] | 108 | |
| 109 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 110 | What's New in IDLEfork 0.9 Alpha 2? |
| 111 | =================================== |
Kurt B. Kaiser | 2cb5402 | 2002-12-31 18:12:04 +0000 | [diff] [blame] | 112 | |
Kurt B. Kaiser | 7e17289 | 2003-01-27 02:40:20 +0000 | [diff] [blame] | 113 | *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. Kaiser | 2cb5402 | 2002-12-31 18:12:04 +0000 | [diff] [blame] | 133 | |
Kurt B. Kaiser | 5ec186b | 2003-01-17 04:04:06 +0000 | [diff] [blame] | 134 | - 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. Kaiser | 8e92bf7 | 2003-01-14 22:03:31 +0000 | [diff] [blame] | 140 | - 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. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 161 | - 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. Kaiser | 7e17289 | 2003-01-27 02:40:20 +0000 | [diff] [blame] | 195 | add an associated menu entry "Shell/Restart" with binding Control-F6. Update |
| 196 | IDLE help. |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 197 | |
| 198 | - Upon a restart, annotate the shell window with a "restart boundary". Add a |
Kurt B. Kaiser | 7e17289 | 2003-01-27 02:40:20 +0000 | [diff] [blame] | 199 | shell window menu "Shell/View Restart" with binding F6 to jump to the most |
| 200 | recent restart boundary. |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 201 | |
Kurt B. Kaiser | 7e17289 | 2003-01-27 02:40:20 +0000 | [diff] [blame] | 202 | - Add Shell menu to Python Shell; change "Settings" to "Options". |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 203 | |
| 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. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 213 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 214 | What's New in IDLEfork 0.9 Alpha 1? |
| 215 | =================================== |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 216 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 217 | *Release date: 31-Dec-2002* |
Steven M. Gava | 88ff736 | 2001-07-21 09:50:55 +0000 | [diff] [blame] | 218 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 219 | - First release of major new functionality. For further details refer to |
| 220 | Idle-dev and/or the Sourceforge CVS. |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 221 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 222 | - Adapted to the Mac platform. |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 223 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 224 | - Overhauled the IDLE startup options and revised the idle -h help message, |
| 225 | which provides details of command line usage. |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 226 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 227 | - 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. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 240 | |
| 241 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 242 | |
| 243 | What'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 | |
| 274 | What'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 | |
| 287 | IDLE fork 0.7.1 - 29 May 2000 |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 288 | ----------------------------- |
Steven M. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 289 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 290 | 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. Gava | d39993e | 2001-07-20 01:36:49 +0000 | [diff] [blame] | 356 | |
| 357 | |
Kurt B. Kaiser | a7b804f | 2003-01-10 21:27:23 +0000 | [diff] [blame] | 358 | -------------------------------------------------------------------- |
| 359 | Refer to HISTORY.txt for additional information on earlier releases. |
| 360 | -------------------------------------------------------------------- |
David Scherer | 7aced17 | 2000-08-15 01:13:23 +0000 | [diff] [blame] | 361 | |
| 362 | |
David Scherer | 7aced17 | 2000-08-15 01:13:23 +0000 | [diff] [blame] | 363 | |
| 364 | |
David Scherer | 7aced17 | 2000-08-15 01:13:23 +0000 | [diff] [blame] | 365 | |