Jupyter Ascending
Today is an exciting day! We have just finished releasing IPython 4.0, the last piece of the first release of Jupyter and IPython after The Big Split™.
The quick way to get Jupyter upgraded is:
pip install --upgrade jupyter
If you are using conda or canopy, we hope to have packages on those distros soon.
This means that when you do
pip install --upgrade ipython[all]
You will get jupyter instead.
Refresher on The Big Split™
IPython 3 was the last major monolithic release of IPython containing all of the language-agnostic code, such as the notebook, which is moving under the new name Jupyter. As part of that process, we have created several discrete packages for each component — nbformat
for the notebook format, nbconvert
for the notebook conversion machinery, notebook
for the HTML notebook application, etc.
You can get each of these components independently, e.g. with
pip install --upgrade notebook
which will not include the pieces that the notebook doesn’t depend on (e.g. qtconsole
). Or you can get the whole thing with the jupyter
metapackage, which will pull in everything that was part of IPython 3 (with the exception of IPython parallel, now called ipyparallel
).
Since all of these packages were part of IPython 3, they are all starting out at 4.0. They won’t be updated in coordination with each other as their APIs and release schedules will be allowed to advance at their own respective paces.
There are import shims in the IPython repo for backward-compatibility, so any code that imports IPython.nbformat
, for instance, should continue to work with a warning about the new home of the package:
In [1]: from IPython.nbformat import read
/.../site-packages/IPython/nbformat.py:13: ShimWarning: The `IPython.nbformat` package has been deprecated. You should import from nbformat instead.
If you have any code that imported from the old subpackage that worked on 3.x but doesn’t on 4.x, please let us know.
This split also means that
pip install ipython
gets you a much smaller install, since it only includes the terminal IPython interface, which some people have been asking for for a long time.
Configuration
Many of the ipython subcommands are now jupyter subcommands, e.g.
ipython notebook
is now
jupyter notebook
The configuration files for these jupyter commands are now in your ~/.jupyter
directory instead of ~/.ipython/profile_default
. Jupyter should automatically migrate your notebook and qtconsole config to the new location if they exist.
See the Jupyter config docs for more info.
Docs
See the new Jupyter docs for more information about Jupyter, its components, and installation.
Issues
Please let us know on the mailing list if you have issues with the new install, or open an Issue on GitHub for the repo that is misbehaving. There’s a lot of reorganization, and we thank you for your patience during this transition.
Thanks
Thanks to everyone who helped with the Big Split! Here’s to a bright future for IPython and Jupyter.