jpayne@68: IDLE History jpayne@68: ============ jpayne@68: jpayne@68: This file contains the release messages for previous IDLE releases. jpayne@68: As you read on you go back to the dark ages of IDLE's history. jpayne@68: jpayne@68: jpayne@68: What's New in IDLEfork 0.8.1? jpayne@68: ============================= jpayne@68: jpayne@68: *Release date: 22-Jul-2001* jpayne@68: jpayne@68: - New tarball released as a result of the 'revitalisation' of the IDLEfork jpayne@68: project. jpayne@68: jpayne@68: - This release requires python 2.1 or better. Compatibility with earlier jpayne@68: versions of python (especially ancient ones like 1.5x) is no longer a jpayne@68: priority in IDLEfork development. jpayne@68: jpayne@68: - This release is based on a merging of the earlier IDLE fork work with current jpayne@68: cvs IDLE (post IDLE version 0.8), with some minor additional coding by Kurt jpayne@68: B. Kaiser and Stephen M. Gava. jpayne@68: jpayne@68: - This release is basically functional but also contains some known breakages, jpayne@68: particularly with running things from the shell window. Also the debugger is jpayne@68: not working, but I believe this was the case with the previous IDLE fork jpayne@68: release (0.7.1) as well. jpayne@68: jpayne@68: - This release is being made now to mark the point at which IDLEfork is jpayne@68: launching into a new stage of development. jpayne@68: jpayne@68: - IDLEfork CVS will now be branched to enable further development and jpayne@68: exploration of the two "execution in a remote process" patches submitted by jpayne@68: David Scherer (David's is currently in IDLEfork) and GvR, while stabilisation jpayne@68: and development of less heavyweight improvements (like user customisation) jpayne@68: can continue on the trunk. jpayne@68: jpayne@68: jpayne@68: What's New in IDLEfork 0.7.1? jpayne@68: ============================== jpayne@68: jpayne@68: *Release date: 15-Aug-2000* jpayne@68: jpayne@68: - First project tarball released. jpayne@68: jpayne@68: - This was the first release of IDLE fork, which at this stage was a jpayne@68: combination of IDLE 0.5 and the VPython idle fork, with additional changes jpayne@68: coded by David Scherer, Peter Schneider-Kamp and Nicholas Riley. jpayne@68: jpayne@68: jpayne@68: jpayne@68: IDLEfork 0.7.1 - 29 May 2000 jpayne@68: ----------------------------- jpayne@68: jpayne@68: David Scherer jpayne@68: jpayne@68: - This is a modification of the CVS version of IDLE 0.5, updated as of jpayne@68: 2000-03-09. It is alpha software and might be unstable. If it breaks, you jpayne@68: get to keep both pieces. jpayne@68: jpayne@68: - If you have problems or suggestions, you should either contact me or post to jpayne@68: the list at http://www.python.org/mailman/listinfo/idle-dev (making it clear jpayne@68: that you are using this modified version of IDLE). jpayne@68: jpayne@68: - Changes: jpayne@68: jpayne@68: - The ExecBinding module, a replacement for ScriptBinding, executes programs jpayne@68: in a separate process, piping standard I/O through an RPC mechanism to an jpayne@68: OnDemandOutputWindow in IDLE. It supports executing unnamed programs jpayne@68: (through a temporary file). It does not yet support debugging. jpayne@68: jpayne@68: - When running programs with ExecBinding, tracebacks will be clipped to jpayne@68: exclude system modules. If, however, a system module calls back into the jpayne@68: user program, that part of the traceback will be shown. jpayne@68: jpayne@68: - The OnDemandOutputWindow class has been improved. In particular, it now jpayne@68: supports a readline() function used to implement user input, and a jpayne@68: scroll_clear() operation which is used to hide the output of a previous run jpayne@68: by scrolling it out of the window. jpayne@68: jpayne@68: - Startup behavior has been changed. By default IDLE starts up with just a jpayne@68: blank editor window, rather than an interactive window. Opening a file in jpayne@68: such a blank window replaces the (nonexistent) contents of that window jpayne@68: instead of creating another window. Because of the need to have a jpayne@68: well-known port for the ExecBinding protocol, only one copy of IDLE can be jpayne@68: running. Additional invocations use the RPC mechanism to report their jpayne@68: command line arguments to the copy already running. jpayne@68: jpayne@68: - The menus have been reorganized. In particular, the excessively large jpayne@68: 'edit' menu has been split up into 'edit', 'format', and 'run'. jpayne@68: jpayne@68: - 'Python Documentation' now works on Windows, if the win32api module is jpayne@68: present. jpayne@68: jpayne@68: - A few key bindings have been changed: F1 now loads Python Documentation jpayne@68: instead of the IDLE help; shift-TAB is now a synonym for unindent. jpayne@68: jpayne@68: - New modules: jpayne@68: jpayne@68: ExecBinding.py Executes program through loader jpayne@68: loader.py Bootstraps user program jpayne@68: protocol.py RPC protocol jpayne@68: Remote.py User-process interpreter jpayne@68: spawn.py OS-specific code to start programs jpayne@68: jpayne@68: - Files modified: jpayne@68: jpayne@68: autoindent.py ( bindings tweaked ) jpayne@68: bindings.py ( menus reorganized ) jpayne@68: config.txt ( execbinding enabled ) jpayne@68: editorwindow.py ( new menus, fixed 'Python Documentation' ) jpayne@68: filelist.py ( hook for "open in same window" ) jpayne@68: formatparagraph.py ( bindings tweaked ) jpayne@68: idle.bat ( removed absolute pathname ) jpayne@68: idle.pyw ( weird bug due to import with same name? ) jpayne@68: iobinding.py ( open in same window, EOL convention ) jpayne@68: keydefs.py ( bindings tweaked ) jpayne@68: outputwindow.py ( readline, scroll_clear, etc ) jpayne@68: pyshell.py ( changed startup behavior ) jpayne@68: readme.txt ( ) jpayne@68: jpayne@68: jpayne@68: jpayne@68: IDLE 0.5 - February 2000 - Release Notes jpayne@68: ---------------------------------------- jpayne@68: jpayne@68: This is an early release of IDLE, my own attempt at a Tkinter-based jpayne@68: IDE for Python. jpayne@68: jpayne@68: (For a more detailed change log, see the file ChangeLog.) jpayne@68: jpayne@68: FEATURES jpayne@68: jpayne@68: IDLE has the following features: jpayne@68: jpayne@68: - coded in 100% pure Python, using the Tkinter GUI toolkit (i.e. Tcl/Tk) jpayne@68: jpayne@68: - cross-platform: works on Windows and Unix (on the Mac, there are jpayne@68: currently problems with Tcl/Tk) jpayne@68: jpayne@68: - multi-window text editor with multiple undo, Python colorizing jpayne@68: and many other features, e.g. smart indent and call tips jpayne@68: jpayne@68: - Python shell window (a.k.a. interactive interpreter) jpayne@68: jpayne@68: - debugger (not complete, but you can set breakpoints, view and step) jpayne@68: jpayne@68: USAGE jpayne@68: jpayne@68: The main program is in the file "idle.py"; on Unix, you should be able jpayne@68: to run it by typing "./idle.py" to your shell. On Windows, you can jpayne@68: run it by double-clicking it; you can use idle.pyw to avoid popping up jpayne@68: a DOS console. If you want to pass command line arguments on Windows, jpayne@68: use the batch file idle.bat. jpayne@68: jpayne@68: Command line arguments: files passed on the command line are executed, jpayne@68: not opened for editing, unless you give the -e command line option. jpayne@68: Try "./idle.py -h" to see other command line options. jpayne@68: jpayne@68: IDLE requires Python 1.5.2, so it is currently only usable with a jpayne@68: Python 1.5.2 distribution. (An older version of IDLE is distributed jpayne@68: with Python 1.5.2; you can drop this version on top of it.) jpayne@68: jpayne@68: COPYRIGHT jpayne@68: jpayne@68: IDLE is covered by the standard Python copyright notice jpayne@68: (http://www.python.org/doc/Copyright.html). jpayne@68: jpayne@68: jpayne@68: New in IDLE 0.5 (2/15/2000) jpayne@68: --------------------------- jpayne@68: jpayne@68: Tons of stuff, much of it contributed by Tim Peters and Mark Hammond: jpayne@68: jpayne@68: - Status bar, displaying current line/column (Moshe Zadka). jpayne@68: jpayne@68: - Better stack viewer, using tree widget. (XXX Only used by Stack jpayne@68: Viewer menu, not by the debugger.) jpayne@68: jpayne@68: - Format paragraph now recognizes Python block comments and reformats jpayne@68: them correctly (MH) jpayne@68: jpayne@68: - New version of pyclbr.py parses top-level functions and understands jpayne@68: much more of Python's syntax; this is reflected in the class and path jpayne@68: browsers (TP) jpayne@68: jpayne@68: - Much better auto-indent; knows how to indent the insides of jpayne@68: multi-line statements (TP) jpayne@68: jpayne@68: - Call tip window pops up when you type the name of a known function jpayne@68: followed by an open parenthesis. Hit ESC or click elsewhere in the jpayne@68: window to close the tip window (MH) jpayne@68: jpayne@68: - Comment out region now inserts ## to make it stand out more (TP) jpayne@68: jpayne@68: - New path and class browsers based on a tree widget that looks jpayne@68: familiar to Windows users jpayne@68: jpayne@68: - Reworked script running commands to be more intuitive: I/O now jpayne@68: always goes to the *Python Shell* window, and raw_input() works jpayne@68: correctly. You use F5 to import/reload a module: this adds the module jpayne@68: name to the __main__ namespace. You use Control-F5 to run a script: jpayne@68: this runs the script *in* the __main__ namespace. The latter also jpayne@68: sets sys.argv[] to the script name jpayne@68: jpayne@68: jpayne@68: New in IDLE 0.4 (4/7/99) jpayne@68: ------------------------ jpayne@68: jpayne@68: Most important change: a new menu entry "File -> Path browser", shows jpayne@68: a 4-column hierarchical browser which lets you browse sys.path, jpayne@68: directories, modules, and classes. Yes, it's a superset of the Class jpayne@68: browser menu entry. There's also a new internal module, jpayne@68: MultiScrolledLists.py, which provides the framework for this dialog. jpayne@68: jpayne@68: jpayne@68: New in IDLE 0.3 (2/17/99) jpayne@68: ------------------------- jpayne@68: jpayne@68: Most important changes: jpayne@68: jpayne@68: - Enabled support for running a module, with or without the debugger. jpayne@68: Output goes to a new window. Pressing F5 in a module is effectively a jpayne@68: reload of that module; Control-F5 loads it under the debugger. jpayne@68: jpayne@68: - Re-enable tearing off the Windows menu, and make a torn-off Windows jpayne@68: menu update itself whenever a window is opened or closed. jpayne@68: jpayne@68: - Menu items can now be have a checkbox (when the menu label starts jpayne@68: with "!"); use this for the Debugger and "Auto-open stack viewer" jpayne@68: (was: JIT stack viewer) menu items. jpayne@68: jpayne@68: - Added a Quit button to the Debugger API. jpayne@68: jpayne@68: - The current directory is explicitly inserted into sys.path. jpayne@68: jpayne@68: - Fix the debugger (when using Python 1.5.2b2) to use canonical jpayne@68: filenames for breakpoints, so these actually work. (There's still a jpayne@68: lot of work to be done to the management of breakpoints in the jpayne@68: debugger though.) jpayne@68: jpayne@68: - Closing a window that is still colorizing now actually works. jpayne@68: jpayne@68: - Allow dragging of the separator between the two list boxes in the jpayne@68: class browser. jpayne@68: jpayne@68: - Bind ESC to "close window" of the debugger, stack viewer and class jpayne@68: browser. It removes the selection highlighting in regular text jpayne@68: windows. (These are standard Windows conventions.) jpayne@68: jpayne@68: jpayne@68: New in IDLE 0.2 (1/8/99) jpayne@68: ------------------------ jpayne@68: jpayne@68: Lots of changes; here are the highlights: jpayne@68: jpayne@68: General: jpayne@68: jpayne@68: - You can now write and configure your own IDLE extension modules; see jpayne@68: extend.txt. jpayne@68: jpayne@68: jpayne@68: File menu: jpayne@68: jpayne@68: The command to open the Python shell window is now in the File menu. jpayne@68: jpayne@68: jpayne@68: Edit menu: jpayne@68: jpayne@68: New Find dialog with more options; replace dialog; find in files dialog. jpayne@68: jpayne@68: Commands to tabify or untabify a region. jpayne@68: jpayne@68: Command to format a paragraph. jpayne@68: jpayne@68: jpayne@68: Debug menu: jpayne@68: jpayne@68: JIT (Just-In-Time) stack viewer toggle -- if set, the stack viewer jpayne@68: automaticall pops up when you get a traceback. jpayne@68: jpayne@68: Windows menu: jpayne@68: jpayne@68: Zoom height -- make the window full height. jpayne@68: jpayne@68: jpayne@68: Help menu: jpayne@68: jpayne@68: The help text now show up in a regular window so you can search and jpayne@68: even edit it if you like. jpayne@68: jpayne@68: jpayne@68: jpayne@68: IDLE 0.1 was distributed with the Python 1.5.2b1 release on 12/22/98. jpayne@68: jpayne@68: ======================================================================