IPython 0.7.2 is out.


Fernando Perez

Hi all,

The IPython team is happy to release version 0.7.2, with a lot of new
enhancements, as well as many bug fixes.

We hope you all enjoy it, and please report any problems as usual.

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
Tkinter applications.

Where to get it

IPython's homepage is at:


and downloads are at:


We've provided:

- Source download (.tar.gz)
- An RPM (for Python 2.4, built under Ubuntu Dapper 6.06).
- A Python Egg (http://peak.telecommunity.com/DevCenter/PythonEggs).
- A native win32 installer.

The egg is 'light', as it doesn't include documentation and other ancillary
data. If you want a full ipython installation, use the source tarball or
your distribution's favorite system.

We note that IPython is now officially part of most major Linux and BSD
distributions, so 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, Dryice Liu
and Will Maier for the packaging work, which helps users get IPython more

Many thanks to Enthought for their continued hosting support for IPython.

Release notes

As always, the full ChangeLog is at http://ipython.scipy.org/ChangeLog. The
highlights of this release follow. Also see the "What's New" page at


for more details on some of these features.

* Walter Doerwald's ipipe module, which provides a handy way to browse
and manipulate tabular data, e.g. groups of files or environment variables
(this is currently mostly a *nix feature, due to its need for ncurses).
Walter is now a member of the IPython team.

* The IPython project is the new home for the UNC readline extension,
which allows win32 users to access readline facilities (tab completion,
colored prompts, and more). UNC readline has been renamed PyReadline, and
has a number of important new features, especially for users of non-US
keyboards. See this page for more details:


* A new extension and configuration API.

* Hardened persistence. Persistence of data now uses "pickleshare", a
shelve-like module that allows concurrent access to the central ipython
database by multiple ipython instances.

* Simpler output capture: "files=!ls" will now capture the 'ls' call
the 'files' variable.

* New magic functions: %timeit, %upgrade, %quickref, %cpaste, %clip,
%clear. Also, a 'raw' mode has been added to %edit, %macro, %history.

* Batch files. If the file ends with .ipy, you can launch it by "ipython
myfile.ipy". It will be executed as if it had been typed interactively (it
can contain magics, aliases, etc.)

* New pexpect-based 'irunner' module, to run scripts and produce all the
prompts as if they had been typed one by one. This lets you reproduce a
complete interactive session from a file, which can be very useful when
producing documentation, for example. The module provides default runners
for ipython, plain python and SAGE (http://sage.scipy.org). Users can
subclass the base runner to produce new ones for any interactive system
whose prompts are predictable (such as gnuplot, a system shell, etc.).

* New option to log 'raw' input into IPython's logs. The logs will then
be valid .ipy batch scripts just as you typed them, instead of containing
the converted python source.

* Fixes and improvements to (X)Emacs support. PDB auto-tracking is back
(it had broken in 0.7.1, and auto-indent now works inside emacs ipython
buffers. You will need to update your copy of ipython.el, which you can
get from the doc/ directory. A copy is here, for convenience:


* The ipapi system offers a new to_user_ns() method in the IPython
object, to inject variables from a running script directly into the user's
namespace. This lets you have internal variables from a script visible
interactively for further manipulation after %running it.

* Thanks to Will Maier, IPython is now officially part of OpenBSD ports.

* A number of threading deadlock fixes. This is of particular interest
to matplotlib users.

* Compatibility updates with current Gnuplot.py.

* We now are (finally!

* Various other small fixes and enhancements. See the full ChangeLog
for details.

Enjoy, and as usual please report any problems.

The IPython team.

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Latest member

Latest Threads