From: Fernando Perez Date: Sun, Sep 14, 2008 at 2:08 AM Subject: IPython 0.9 is out! To: IPython Development list , IPython User list Hi all, the IPython development team is very happy to announce the release of version 0.9 of IPython. You can download it from the usual location: http://ipython.scipy.org/dist/ What's in here? Glad you asked... *A project renewed* This release is a special one, because it marks the unification of all the work done on what used to be known as the 'IPython1' series, and it brings together the contributions of a much larger team. Over the course of the last few years, we had kept two separate lines of IPython development: one (the 0.8.x series) had all the command-line functionality many of you use, and the other (known as 'IPython1') had facilities for distributed and parallel computing, as well as a cleaner design we hoped would eventually replace the previous series. Over time it became clear that we'd all be better served by merging the two codebases, and gradually blending all the excellent ideas of the ipython1 work into the main trunk, so all users of IPython could benefit from the new facilities while keeping everything they already like about IPython and use regularly. So this release marks the first step of this unification. There is no more IPython1 separate project: if you install IPython 0.9, you get everything that used to be called 'ipython1', with only very minor API changes. The manual details most changes in this release: http://ipython.scipy.org/doc/rel-0.9/html/changes.html#release-0-9 There are still important changes in the pipeline that will help make the new facilities easier to use, as well as growing them in terms of features and functionality. But we wanted to put this version out as soon as possible, in trying to keep a cycle with more frequent releases now that our team has grown and that we all share a unified front where we can all focus our development effort. It is important to note that this means that IPython is now a larger codebase, but for the basic terminal-only functionality, its dependencies remain the same as always: the standard Python library (and pyreadline under windows). You only need extra dependencies (mainly Twisted & friends) if you intend to use its distributed computing facilities, much like before you'd only need Wx or Qt if you wanted to use its GUI integration. The core of IPython will remain as a python-only, standard-library-based project as long as we can manage to do it, and we don't see any changes on this front happening any time soon. *Highlights* Please see the changes linked above for the full details; in brief: - Full merge of the distributed/parallel code known as 'ipython1' into the project. - New integrated docs, using Sphinx and the utilities developed by Matplotlib for their docs. - New testing system that uses nose and tests not only pure python code but also IPython's unique extensions. As of this release we have about 415 tests, and now *all* new code is required to have proper tests before being accepted. A new script, 'iptest', runs the whole test suite (use it as 'iptest -vv' for more detailed output). - New focus on the GUI shells. A new WX frontend has been developed (ipythonx) that can serve as a full "ipython widget" for plugging into WX apps. The existing iptyhon-wx app will be updated to use this machinery. A native Cocoa (OSX) widget has also been developed. - Improvements to synchronization with Windows editors. - Cleaner interfaces for high-level distributed work (task, map, etc.) - Proper security model for distributed work, using Twisted's foolscap (http://foolscap.lothar.com/trac). We welcome reviews, criticism and improvements on the security front, where none of us is a real expert. *A larger, stronger team* Many people have contributed to this release, and we apologize in advance if we've missed any of you either in this notice or in the credits section of the manual. Please *do* notify us of such omissions, which we'll correct immediately. In addition to the many useful comments, bug reports, ideas, patches that many people contributed, we'd like to highlight the work of some newcomers to the IPython team who have either become regulars or who helped us with key pieces of infrastructure for this release: - Barry Wark: new work on all the frontend architecture and Cocoa shell. - Gael Varoquaux: new work on all the frontend architecture and WX shell. - Ondrej Certik: got all of our docs on the new Sphinx system. - Stefan van der Walt: help with new config code. This is in addition to the work of the regulars who've been contributing to IPython for a while and who have also new code in this release: Brian Granger, Min Ragan-Kelley, Ville Vainio, Laurent Dufrechou, Vivian de Smedt, Robert Kern, Fernando Perez. The full bzr log for the project will show you the gory details of all the work done by many. *What next?* We'll be merging new code soon, targeting the next (0.10) release in a few months (2-3, time permitting). We are now (after some growing pains) firmly enjoying the benefits of a distributed version control and hosting system (bzr & launchpad), with a strong emphasis on code review, proper documentation and testing, to ensure that as the project grows we can keep a robust and reliable base that is easy to use by all. Please let us know of any problems you may encounter. Enjoy, Fernando, on behalf of the IPython development team.