This Monday, Matthias Bussonnier, a core developer of the IPython and Jupyter Project team, announced the release of IPython 7.3. Along with some major bug fixes, this release comes with the %conda and %pip magics and compatibility with Python 3.8.
The %conda and %pip magics
IPython offers magic functions as an added enhancement on top of the Python syntax that is intended to solve common problems like data analysis using Python. The biggest update the team has introduced to this release is the implementation of the %conda and %pip magics. These magics will automatically install packages into the kernel that is currently running in an IPython or Jupyter notebook session. The %pip magic was already available, but it was limited to printing a warning and now, it will actually forward commands to pip.
Users will still need to restart the interpreter or kernel for the newly installed packages to be taken into account. Though this update is great, users are recommended to use the conda/pip commands as their preferred way for installing.
- This release is compatible with Python 3.8, which comes with the addition of Assignment Expressions, better thread safety, and more.
- To opt out of shell variable expansion, the `@magic.no_var_expand` decorator is added to the execution magics.
- The behavior of the %reset magic has been changed by initializing the posix aliases `clear`, `less`, `more`, and `man` during a reset.
- IPython command line now will allow running *.ipynb files.
To read more about the updates in IPython 7.3, check out its official announcement.