mirror of https://github.com/python/cpython
336 lines
13 KiB
Plaintext
336 lines
13 KiB
Plaintext
+++++++++++++
|
|
IDLEfork NEWS
|
|
+++++++++++++
|
|
|
|
What's New in IDLEfork 0.9b1?
|
|
===================================
|
|
|
|
*Release date: XX-XXX-2003*
|
|
|
|
- Interrupt the subprocess if it is running when the user attempts to
|
|
restart the shell, run a module, or exit.
|
|
|
|
- Improved exception reporting when running commands or scripts from the
|
|
command line.
|
|
|
|
- Added a comment to the shell startup header to indicate when IDLE is not
|
|
using the subprocess. (For now, set PyShell.use_subprocess to False to run
|
|
in this mode.)
|
|
|
|
- Restore the ability to run without the subprocess. This can be important for
|
|
some platforms or configurations. (Running without the subprocess allows the
|
|
debugger to trace through parts of IDLE itself, which may or may not be
|
|
desirable, depending on your point of view. In addition, the traditional
|
|
reload/import tricks must be use if user source code is changed.)
|
|
|
|
- Improve the error message a user gets when saving a file with non-ASCII
|
|
characters and no source encoding is specified. Done by adding a dialog
|
|
'EncodingMessage', which contains the line to add in a fixed-font entry
|
|
widget, and which has a button to add that line to the file automatically.
|
|
Also, add a configuration option 'EditorWindow/encoding', which has three
|
|
possible values: none, utf-8, and locale. None is the default: IDLE will show
|
|
this dialog when non-ASCII characters are encountered. utf-8 means that files
|
|
with non-ASCII characters are saved as utf-8-with-bom. locale means that
|
|
files are saved in the locale's encoding; the dialog is only displayed if the
|
|
source contains characters outside the locale's charset. SF 710733 - Loewis
|
|
|
|
- Improved I/O response by tweaking the wait parameter in various
|
|
calls to signal.signal().
|
|
|
|
- Implemented a threaded subprocess which allows interrupting a pass
|
|
loop in user code using the 'interrupt' extension. User code runs
|
|
in MainThread, while the RPCServer is handled by SockThread.
|
|
|
|
- Implemented the 'interrupt' extension module, which allows a subthread
|
|
to raise a KeyboardInterrupt in the main thread.
|
|
|
|
- Attempting to save the shell raised an error related to saving
|
|
breakpoints, which are not implemented in the shell
|
|
|
|
- Provide a correct message when 'exit' or 'quit' are entered at the
|
|
IDLE command prompt SF 695861
|
|
|
|
- Eliminate extra blank line in shell output caused by not flushing
|
|
stdout when user code ends with an unterminated print. SF 695861
|
|
|
|
- Moved responsibility for exception formatting (i.e. pruning IDLE internal
|
|
calls) out of rpc.py into the client and server.
|
|
|
|
- Exit IDLE cleanly even when doing subprocess I/O
|
|
|
|
- Handle subprocess interrupt in Windows with an RPC message.
|
|
|
|
- Calling Run will restart the subprocess even if user code is running.
|
|
SF RFE 661321
|
|
|
|
- Restart the subprocess if it terminates itself. (VPython programs do that)
|
|
|
|
- Support subclassing of exceptions, including in the shell, by moving the
|
|
exception formatting to the subprocess.
|
|
|
|
- Known issues:
|
|
|
|
+ Typing two Control-C in close succession when the subprocess is busy can
|
|
cause IDLE to lose communication with the subprocess. Please type one
|
|
only and wait for the exception to complete. If you do manage to
|
|
interrupt the interrupt, simply restart the shell.
|
|
+ Printing under some versions of Linux may be problematic.
|
|
|
|
|
|
What's New in IDLEfork 0.9 Alpha 2?
|
|
===================================
|
|
|
|
*Release date: 27-Jan-2003*
|
|
|
|
- Updated INSTALL.txt to claify use of the python2 rpm.
|
|
|
|
- Improved formatting in IDLE Help.
|
|
|
|
- Run menu: Replace "Run Script" with "Run Module".
|
|
|
|
- Code encountering an unhandled exception under the debugger now shows
|
|
the correct traceback, with IDLE internal levels pruned out.
|
|
|
|
- If an exception occurs entirely in IDLE, don't prune the IDLE internal
|
|
modules from the traceback displayed.
|
|
|
|
- Class Browser and Path Browser now use Alt-Key-2 for vertical zoom.
|
|
|
|
- IDLE icons will now install correctly even when setup.py is run from the
|
|
build directory
|
|
|
|
- Class Browser now compatible with Python2.3 version of pyclbr.py
|
|
|
|
- Left cursor move in presence of selected text now moves from left end
|
|
of the selection.
|
|
|
|
- Add Meta keybindings to "IDLE Classic Windows" to handle reversed
|
|
Alt/Meta on some Linux distros.
|
|
|
|
- Change default: IDLE now starts with Python Shell.
|
|
|
|
- Removed the File Path from the Additional Help Sources scrolled list.
|
|
|
|
- Add capability to access Additional Help Sources on the web if the
|
|
Help File Path begins with //http or www. (Otherwise local path is
|
|
validated, as before.)
|
|
|
|
- Additional Help Sources were not being posted on the Help menu in the
|
|
order entered. Implement sorting the list by [HelpFiles] 'option'
|
|
number.
|
|
|
|
- Add Browse button to New Help Source dialog. Arrange to start in
|
|
Python/Doc if platform is Windows, otherwise start in current directory.
|
|
|
|
- Put the Additional Help Sources directly on the Help menu instead of in
|
|
an Extra Help cascade menu. Rearrange the Help menu so the Additional
|
|
Help Sources come last. Update help.txt appropriately.
|
|
|
|
- Fix Tk root pop-ups in configSectionNameDialog.py and configDialog.py
|
|
|
|
- Uniform capitalization in General tab of ConfigDialog, update the doc string.
|
|
|
|
- Fix bug in ConfigDialog where SaveAllChangedConfig() was unexpectedly
|
|
deleting Additional Help Sources from the user's config file.
|
|
|
|
- Make configHelpSourceEdit OK button the default and bind <Return>
|
|
|
|
- Fix Tk root pop-ups in configHelpSourceEdit: error dialogs not attached
|
|
to parents.
|
|
|
|
- Use os.startfile() to open both Additional Help and Python Help on the
|
|
Windows platform. The application associated with the file type will act as
|
|
the viewer. Windows help files (.chm) are now supported via the
|
|
Settings/General/Additional Help facility.
|
|
|
|
- If Python Help files are installed locally on Linux, use them instead of
|
|
accessing python.org.
|
|
|
|
- Make the methods for finding the Python help docs more robust, and make
|
|
them work in the installed configuration, also.
|
|
|
|
- On the Save Before Run dialog, make the OK button the default. One
|
|
less mouse action!
|
|
|
|
- Add a method: EditorWindow.get_geometry() for future use in implementing
|
|
window location persistence.
|
|
|
|
- Removed the "Help/Advice" menu entry. Thanks, David! We'll remember!
|
|
|
|
- Change the "Classic Windows" theme's paste key to be <ctrl-v>.
|
|
|
|
- Rearrange the Shell menu to put Stack Viewer entries adjacent.
|
|
|
|
- Add the ability to restart the subprocess interpreter from the shell window;
|
|
add an associated menu entry "Shell/Restart" with binding Control-F6. Update
|
|
IDLE help.
|
|
|
|
- Upon a restart, annotate the shell window with a "restart boundary". Add a
|
|
shell window menu "Shell/View Restart" with binding F6 to jump to the most
|
|
recent restart boundary.
|
|
|
|
- Add Shell menu to Python Shell; change "Settings" to "Options".
|
|
|
|
- Remove incorrect comment in setup.py: IDLEfork is now installed as a package.
|
|
|
|
- Add INSTALL.txt, HISTORY.txt, NEWS.txt to installed configuration.
|
|
|
|
- In installer text, fix reference to Visual Python, should be VPython.
|
|
Properly credit David Scherer.
|
|
|
|
- Modified idle, idle.py, idle.pyw to improve exception handling.
|
|
|
|
|
|
What's New in IDLEfork 0.9 Alpha 1?
|
|
===================================
|
|
|
|
*Release date: 31-Dec-2002*
|
|
|
|
- First release of major new functionality. For further details refer to
|
|
Idle-dev and/or the Sourceforge CVS.
|
|
|
|
- Adapted to the Mac platform.
|
|
|
|
- Overhauled the IDLE startup options and revised the idle -h help message,
|
|
which provides details of command line usage.
|
|
|
|
- Multiple bug fixes and usability enhancements.
|
|
|
|
- Introduced the new RPC implementation, which includes a debugger. The output
|
|
of user code is to the shell, and the shell may be used to inspect the
|
|
environment after the run has finished. (In version 0.8.1 the shell
|
|
environment was separate from the environment of the user code.)
|
|
|
|
- Introduced the configuration GUI and a new About dialog.
|
|
|
|
- Removed David Scherer's Remote Procedure Call code and replaced with Guido
|
|
van Rossum's. GvR code has support for the IDLE debugger and uses the shell
|
|
to inspect the environment of code Run from an Edit window. Files removed:
|
|
ExecBinding.py, loader.py, protocol.py, Remote.py, spawn.py
|
|
|
|
|
|
|
|
What's New in IDLEfork 0.8.1?
|
|
=============================
|
|
|
|
*Release date: 22-Jul-2001*
|
|
|
|
- New tarball released as a result of the 'revitalisation' of the IDLEfork
|
|
project.
|
|
|
|
- This release requires python 2.1 or better. Compatability with earlier
|
|
versions of python (especially ancient ones like 1.5x) is no longer a
|
|
priority in IDLEfork development.
|
|
|
|
- This release is based on a merging of the earlier IDLE fork work with current
|
|
cvs IDLE (post IDLE version 0.8), with some minor additional coding by Kurt
|
|
B. Kaiser and Stephen M. Gava.
|
|
|
|
- This release is basically functional but also contains some known breakages,
|
|
particularly with running things from the shell window. Also the debugger is
|
|
not working, but I believe this was the case with the previous IDLE fork
|
|
release (0.7.1) as well.
|
|
|
|
- This release is being made now to mark the point at which IDLEfork is
|
|
launching into a new stage of development.
|
|
|
|
- IDLEfork CVS will now be branched to enable further development and
|
|
exploration of the two "execution in a remote process" patches submitted by
|
|
David Scherer (David's is currently in IDLEfork) and GvR, while stabilisation
|
|
and development of less heavyweight improvements (like user customisation)
|
|
can continue on the trunk.
|
|
|
|
|
|
What's New in IDLE fork 0.7.1?
|
|
==============================
|
|
|
|
*Release date: 15-Aug-2000*
|
|
|
|
- First project tarball released.
|
|
|
|
- This was the first release of IDLE fork, which at this stage was a
|
|
combination of IDLE 0.5 and the VPython idle fork, with additional changes
|
|
coded by David Scherer, Peter Schneider-Kamp and Nicholas Riley.
|
|
|
|
|
|
|
|
IDLE fork 0.7.1 - 29 May 2000
|
|
-----------------------------
|
|
|
|
David Scherer <dscherer@cmu.edu>
|
|
|
|
- This is a modification of the CVS version of IDLE 0.5, updated as of
|
|
2000-03-09. It is alpha software and might be unstable. If it breaks, you
|
|
get to keep both pieces.
|
|
|
|
- If you have problems or suggestions, you should either contact me or post to
|
|
the list at http://www.python.org/mailman/listinfo/idle-dev (making it clear
|
|
that you are using this modified version of IDLE).
|
|
|
|
- Changes:
|
|
|
|
- The ExecBinding module, a replacement for ScriptBinding, executes programs
|
|
in a separate process, piping standard I/O through an RPC mechanism to an
|
|
OnDemandOutputWindow in IDLE. It supports executing unnamed programs
|
|
(through a temporary file). It does not yet support debugging.
|
|
|
|
- When running programs with ExecBinding, tracebacks will be clipped to
|
|
exclude system modules. If, however, a system module calls back into the
|
|
user program, that part of the traceback will be shown.
|
|
|
|
- The OnDemandOutputWindow class has been improved. In particular, it now
|
|
supports a readline() function used to implement user input, and a
|
|
scroll_clear() operation which is used to hide the output of a previous run
|
|
by scrolling it out of the window.
|
|
|
|
- Startup behavior has been changed. By default IDLE starts up with just a
|
|
blank editor window, rather than an interactive window. Opening a file in
|
|
such a blank window replaces the (nonexistent) contents of that window
|
|
instead of creating another window. Because of the need to have a
|
|
well-known port for the ExecBinding protocol, only one copy of IDLE can be
|
|
running. Additional invocations use the RPC mechanism to report their
|
|
command line arguments to the copy already running.
|
|
|
|
- The menus have been reorganized. In particular, the excessively large
|
|
'edit' menu has been split up into 'edit', 'format', and 'run'.
|
|
|
|
- 'Python Documentation' now works on Windows, if the win32api module is
|
|
present.
|
|
|
|
- A few key bindings have been changed: F1 now loads Python Documentation
|
|
instead of the IDLE help; shift-TAB is now a synonym for unindent.
|
|
|
|
- New modules:
|
|
|
|
ExecBinding.py Executes program through loader
|
|
loader.py Bootstraps user program
|
|
protocol.py RPC protocol
|
|
Remote.py User-process interpreter
|
|
spawn.py OS-specific code to start programs
|
|
|
|
- Files modified:
|
|
|
|
autoindent.py ( bindings tweaked )
|
|
bindings.py ( menus reorganized )
|
|
config.txt ( execbinding enabled )
|
|
editorwindow.py ( new menus, fixed 'Python Documentation' )
|
|
filelist.py ( hook for "open in same window" )
|
|
formatparagraph.py ( bindings tweaked )
|
|
idle.bat ( removed absolute pathname )
|
|
idle.pyw ( weird bug due to import with same name? )
|
|
iobinding.py ( open in same window, EOL convention )
|
|
keydefs.py ( bindings tweaked )
|
|
outputwindow.py ( readline, scroll_clear, etc )
|
|
pyshell.py ( changed startup behavior )
|
|
readme.txt ( <Recursion on file with id=1234567> )
|
|
|
|
|
|
--------------------------------------------------------------------
|
|
Refer to HISTORY.txt for additional information on earlier releases.
|
|
--------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|