I have released IPython 0.7.1, which is mainly a bugfix release over 0.7.0.
As expected in that release, given the large changes made, some problems
inevitably appeared. I believe all regressions and known bugs have been
fixed, along with some useful new features.
This release marks the end of my tenure on the stable branch of ipython.
Ville Vainio will continue as maintainer of the ipython trunk/, while I will
continue working on the development branch of IPython (chainsaw). I will
remain available on the list as usual, both to assist Ville as needed, and
discuss withe anyone interested. But I'll try to limit my time and effort
spent on trunk to a minimum, so we can really advance the (fairly ambitious)
WHAT is IPython?
1. An interactive shell superior to Python's default. IPython has many
features for object introspection, system shell access, and its own special
command system for adding functionality when working interactively.
2. An embeddable, ready to use interpreter for your own programs. IPython
can be started with a single call from inside another program, providing
access to the current namespace.
3. A flexible framework which can be used as the base environment for other
systems with Python as the underlying language.
4. A shell for interactive usage of threaded graphical toolkits. IPython has
support for interactive, non-blocking control of GTK, Qt and WX applications
via special threading flags. The normal Python shell can only do this for
Where to get it
IPython's homepage is at:
and downloads are at:
- source downloads (.tar.gz)
- RPMs (for Python 2.3 and 2.4, built under Fedora Core 3).
- Python Eggs (http://peak.telecommunity.com/DevCenter/PythonEggs).
- a native win32 installer for both Python 2.3 and 2.4.
Fedora users should note that IPython is now officially part of the Extras
repository, so they can get the update from there as well (though it may lag
by a few days).
Debian, Fink and BSD packages for this version should be coming soon, as the
respective maintainers have the time to follow their packaging procedures.
Many thanks to Jack Moffit, Norbert Tretkowski, Andrea Riciputi and Dryice
The eggs included now are lighter, as they don't include documentation and
other ancillary data. If you want a full ipython installation, use the
source tarball or your distribution's favorite system.
Many thanks to Enthought for their continued hosting support for IPython.
As always, the full ChangeLog is at http://ipython.scipy.org/ChangeLog. The
highlights of this release follow.
- *FIXED: this wasn't really working right in 0.7.0* Support for input
with empty lines. If you have auto-indent on, this means that you need to
either hit enter _twice_, or add/remove a space to your last blank line, to
indicate you're done entering input. These changes also allow us to
provide copy/paste of code with blank lines.
- *FIXED: this wasn't really working right in 0.7.0* Support for pasting
multiline input even with autoindent on. The code will look wrong on
screen, but it will be stored and executed correctly internally. Note that
if you have blank lines in your code, these need to be indented like their
surroundings (pure empty lines will make ipython assume you are finished
with your input). This is a limitation also of the plain python
interpreter, and can't really be fixed in a line-oriented system like
- Fixed bug where macros were not working correctly in threaded shells.
- Catch exceptions which can be triggered asynchronously by signal
handlers. This fixes a rare and obscure problem, but which could crash
ipython; reported by Colin Kingsley <tercel-AT-gentoo.org>.
- Added new '-r' option to %hist, to see the raw input history (without
conversions like %ls -> ipmagic("ls")).
- Fix problems with GTK under win32 (excessive keyboard lag and cpu
- Added ipython.py script to root directory of download. This allows
you to unpack ipython and execute it in-place, without needing to install
it at all.
- Improved handling of backslashes (\) in magics. This improves the
usability of ipython especially under win32, which uses \ as a path
separator (though it also benefits Unix for escaping characters in shell
- More autocall fixes (rare, but critical).
- New IPython.ipapi module to begin exposing 'officially' IPython's
public API. This should ease the task of those building systems on top of
- New IPython.platutils module, exposing various platform-dependent
utilities (such as terminal title control).
- Implemented exception-based 'chain of command' for IPython's hooks.
- Added Jason Orendorff's "path" module to IPython tree,
You can get path objects conveniently through %sc, and !!, e.g.:
for p in files.paths: # or files.p
- Fix '%run -d' with Python 2.4 (pdb changed in Python 2.4).
- Various other small fixes and enhancements.
Enjoy, and as usual please report any problems.
Regards, and thanks for all this time using IPython!