##// END OF EJS Templates
whats new version8.8
Matthias Bussonnier -
Show More
@@ -2,6 +2,44 b''
2 2 8.x Series
3 3 ============
4 4
5 .. _version 8.8.0:
6
7 IPython 8.8.0
8 -------------
9
10 First release of IPython in 2023 as there was no release at the end of
11 December.
12
13 This is an unusually big release (relatively speaking) with more than 15 Pull
14 Requests merge.
15
16 Of particular interest are:
17
18 - :ghpull:`13852` that replace the greedy completer and improve
19 completion, in particular for dictionary keys.
20 - :ghpull:`13858` that adds ``py.typed`` to ``setup.cfg`` to make sure it is
21 bundled in wheels.
22 - :ghpull:`13869` that implements tab completions for IPython options in the
23 shell when using `argcomplete <https://github.com/kislyuk/argcomplete>`. I
24 believe this also needs a recent version of Traitlets.
25 - :ghpull:`13865` makes the ``inspector`` class of `InteractiveShell`
26 configurable.
27 - :ghpull:`13880` that remove minor-version entrypoints as the minor version
28 entry points that would be included in the wheel would be the one of the
29 Python version that was used to build the ``whl`` file.
30
31 In no particular order, the rest of the changes update the test suite to be
32 compatible with Pygments 2.14, various docfixes, testing on more recent python
33 versions and various updates.
34
35 As usual you can find the full list of PRs on GitHub under `the 8.8 milestone
36 <https://github.com/ipython/ipython/milestone/110>`__.
37
38 Many thanks to @krassowski for the many PRs and @jasongrout for reviewing and
39 merging contributions.
40
41 Thanks to the `D. E. Shaw group <https://deshaw.com/>`__ for sponsoring
42 work on IPython and related libraries.
5 43
6 44 .. _version 8.7.0:
7 45
@@ -138,7 +176,7 b' Here is a non exhaustive list of changes that have been implemented for IPython'
138 176 - Fix paste magic on wayland. :ghpull:`13671`
139 177 - show maxlen in deque's repr. :ghpull:`13648`
140 178
141 Restore line numbers for Input
179 Restore line numbers for Input
142 180 ------------------------------
143 181
144 182 Line number information in tracebacks from input are restored.
@@ -269,7 +307,7 b' Thanks to the `D. E. Shaw group <https://deshaw.com/>`__ for sponsoring'
269 307 work on IPython and related libraries.
270 308
271 309 .. _version 8.1.1:
272
310
273 311 IPython 8.1.1
274 312 -------------
275 313
@@ -403,10 +441,10 b' The 8.x branch started diverging from its predecessor around IPython 7.12'
403 441 (January 2020).
404 442
405 443 This release contains 250+ pull requests, in addition to many of the features
406 and backports that have made it to the 7.x branch. Please see the
444 and backports that have made it to the 7.x branch. Please see the
407 445 `8.0 milestone <https://github.com/ipython/ipython/milestone/73?closed=1>`__ for the full list of pull requests.
408 446
409 Please feel free to send pull requests to updates those notes after release,
447 Please feel free to send pull requests to updates those notes after release,
410 448 I have likely forgotten a few things reviewing 250+ PRs.
411 449
412 450 Dependencies changes/downstream packaging
@@ -421,7 +459,7 b' looking for help to do so.'
421 459 - minimal Python is now 3.8
422 460 - ``nose`` is not a testing requirement anymore
423 461 - ``pytest`` replaces nose.
424 - ``iptest``/``iptest3`` cli entrypoints do not exists anymore.
462 - ``iptest``/``iptest3`` cli entrypoints do not exists anymore.
425 463 - minimum officially support ``numpy`` version has been bumped, but this should
426 464 not have much effect on packaging.
427 465
@@ -443,7 +481,7 b' deprecation warning:'
443 481 - Please add **since which version** something is deprecated.
444 482
445 483 As a side note, it is much easier to conditionally compare version
446 numbers rather than using ``try/except`` when functionality changes with a version.
484 numbers rather than using ``try/except`` when functionality changes with a version.
447 485
448 486 I won't list all the removed features here, but modules like ``IPython.kernel``,
449 487 which was just a shim module around ``ipykernel`` for the past 8 years, have been
@@ -475,7 +513,7 b' by mypy.'
475 513 Featured changes
476 514 ----------------
477 515
478 Here is a features list of changes in IPython 8.0. This is of course non-exhaustive.
516 Here is a features list of changes in IPython 8.0. This is of course non-exhaustive.
479 517 Please note as well that many features have been added in the 7.x branch as well
480 518 (and hence why you want to read the 7.x what's new notes), in particular
481 519 features contributed by QuantStack (with respect to debugger protocol and Xeus
@@ -523,7 +561,7 b' The error traceback is now correctly formatted, showing the cell number in which'
523 561
524 562 ZeroDivisionError: division by zero
525 563
526 The ``stack_data`` package has been integrated, which provides smarter information in the traceback;
564 The ``stack_data`` package has been integrated, which provides smarter information in the traceback;
527 565 in particular it will highlight the AST node where an error occurs which can help to quickly narrow down errors.
528 566
529 567 For example in the following snippet::
@@ -563,7 +601,7 b' and IPython 8.0 is capable of telling you where the index error occurs::'
563 601 ----> 3 return x[0][i][0]
564 602 ^^^^^^^
565 603
566 The corresponding locations marked here with ``^`` will show up highlighted in
604 The corresponding locations marked here with ``^`` will show up highlighted in
567 605 the terminal and notebooks.
568 606
569 607 Finally, a colon ``::`` and line number is appended after a filename in
@@ -760,7 +798,7 b' Previously, this was not the case for the Vi-mode prompts::'
760 798 This is now fixed, and Vi prompt prefixes - ``[ins]`` and ``[nav]`` - are
761 799 skipped just as the normal ``In`` would be.
762 800
763 IPython shell can be started in the Vi mode using ``ipython --TerminalInteractiveShell.editing_mode=vi``,
801 IPython shell can be started in the Vi mode using ``ipython --TerminalInteractiveShell.editing_mode=vi``,
764 802 You should be able to change mode dynamically with ``%config TerminalInteractiveShell.editing_mode='vi'``
765 803
766 804 Empty History Ranges
@@ -787,8 +825,8 b' when followed with :kbd:`F2`), send it to `dpaste.org <http://dpast.org>`_ using'
787 825
788 826 Windows timing implementation: Switch to process_time
789 827 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
790 Timing on Windows, for example with ``%%time``, was changed from being based on ``time.perf_counter``
791 (which counted time even when the process was sleeping) to being based on ``time.process_time`` instead
828 Timing on Windows, for example with ``%%time``, was changed from being based on ``time.perf_counter``
829 (which counted time even when the process was sleeping) to being based on ``time.process_time`` instead
792 830 (which only counts CPU time). This brings it closer to the behavior on Linux. See :ghpull:`12984`.
793 831
794 832 Miscellaneous
@@ -813,7 +851,7 b' Re-added support for XDG config directories'
813 851 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
814 852
815 853 XDG support through the years comes and goes. There is a tension between having
816 an identical location for configuration in all platforms versus having simple instructions.
854 an identical location for configuration in all platforms versus having simple instructions.
817 855 After initial failures a couple of years ago, IPython was modified to automatically migrate XDG
818 856 config files back into ``~/.ipython``. That migration code has now been removed.
819 857 IPython now checks the XDG locations, so if you _manually_ move your config
@@ -841,7 +879,7 b' Removing support for older Python versions'
841 879
842 880
843 881 We are removing support for Python up through 3.7, allowing internal code to use the more
844 efficient ``pathlib`` and to make better use of type annotations.
882 efficient ``pathlib`` and to make better use of type annotations.
845 883
846 884 .. image:: ../_images/8.0/pathlib_pathlib_everywhere.jpg
847 885 :alt: "Meme image of Toy Story with Woody and Buzz, with the text 'pathlib, pathlib everywhere'"
General Comments 0
You need to be logged in to leave comments. Login now