This is great, the native await is amazing. IPython is one of the great tools in the Python ecosystem, if you're not using it already (or, gasp, using the standard `python` REPL) you should start. It blows anything else out of the water. Prompt-toolkit[1] is also really great if you're writing a REPL-like tool and just want easy IPython like widgets.
The %autoreload magic has been improved as well[2]. Great release overall!
IPython has been such a pleasure to work with over the years. Other than plotting graphs and tables, I don't know why I would use Jupyter notebooks instead. Could someone more familiar with Jupyter please contrast?
Notebooks serve somewhat different purposes to a raw REPL. They have different cells that run code in nonlinear order (cells are independent of one another) which encourages experimentation of whatever you're trying to achieve. My use case for notebooks is to try out many different ways of doing something and then once I find the right combination, I'll extract that code from the notebook and package it into a Python script. Others also use it to present their code in a literate way, by having code and explanations interleaved.
The lack of support for running async constructs in ipython shells was one of the few things holding me back from going all in with asynchronous python. Glad to see they fixed it.
Looking forward to seeing it fixed in Jupyter Notebooks!
The %autoreload magic has been improved as well[2]. Great release overall!
1. https://github.com/jonathanslenders/python-prompt-toolkit
2. https://ipython.readthedocs.io/en/stable/whatsnew/version7.h...