##// END OF EJS Templates
misc headers fixes and whatsnew 8.30 (#14588)
M Bussonnier -
r28966:0bbf70c5 merge
parent child Browse files
Show More
@@ -1,6 +1,47
1 1 ============
2 2 8.x Series
3 3 ============
4 .. _version 8.30:
5
6 IPython 8.30
7 ============
8
9 Small release for this end of november;
10
11 - :ghpull:`14579` improve the documentatation for cutom IPython formatters, and how
12 you can register formatters for custo mime types.
13 - :ghpull:`14580` fix a bug in which commands that were not assigned a shortcut
14 could not be assigned one.
15 - :ghpull:`12690` fix a bug in which a single ``/`` on an empty line would not be
16 an error. This is due to the ``autocall`` behavior that we are thinking of
17 deprecating.
18
19 The rest of the PRs are mostly maintenance and documentation improvements.
20
21 As usual you can find the full list of PRs on GitHub under `the 8.30
22 <https://github.com/ipython/ipython/milestone/137?closed=1>`__ milestone.
23
24
25 For something completely different
26 ----------------------------------
27
28 `Ada Lovelace <https://en.wikipedia.org/wiki/Ada_Lovelace>`__ is considered the
29 first computer programmer. In the 1840s, she wrote what is recognized as the
30 first algorithm intended to be processed by a machine - Charles Babbage's
31 proposed Analytical Engine. Her notes included what would today be called a
32 computer program, making her the first programmer in history. She also uniquely
33 understood that computers could go beyond mere calculation and could be used to
34 create music or art - a visionary insight that was far ahead of her time.
35 Despite living in an era when women had limited access to scientific education,
36 she made groundbreaking contributions that laid the foundation for modern
37 computing.
38
39 Thanks
40 ------
41
42 Thanks as well to the `D. E. Shaw group <https://deshaw.com/>`__ for sponsoring
43 work on IPython and related libraries.
44
4 45
5 46 .. _version 8.29:
6 47
@@ -285,7 +326,7 work on IPython and related libraries.
285 326 .. _version 8.21:
286 327
287 328 IPython 8.21
288 ------------
329 ============
289 330
290 331 More substantial release of IPython slightly out of schedule as it was not
291 332 possible for me to make a release last Friday.
@@ -305,7 +346,7 but it's a cat and mouse game. Plus I am low on time, so I would appreciate any
305 346 help with that.
306 347
307 348 Deprecations
308 ~~~~~~~~~~~~
349 ------------
309 350
310 351 - :ghpull:`14307` Pending Deprecation of
311 352 ``ColorSchemeTable.set_active_scheme(...)``'s ``case_sensitive`` Parameter.
@@ -314,7 +355,7 Deprecations
314 355
315 356
316 357 Fixes
317 ~~~~~
358 -----
318 359
319 360 - :ghpull:`14284` TerminalIPythonApp's would warn that ``auto_create`` option is not
320 361 recognized.
@@ -339,7 +380,7 support it. In particular you could send a json representation of the help that
339 380 could be displayed in a customizable way.
340 381
341 382 Miscellaneous
342 ~~~~~~~~~~~~~
383 -------------
343 384
344 385 - :ghpull:`14291` Misc Refactor of Color handling
345 386 - :ghpull:`14295` Misc test skip on problematic Pypy versions.
@@ -361,7 +402,7 work on IPython and related libraries.
361 402 .. _version 8.20:
362 403
363 404 IPython 8.20
364 ------------
405 ============
365 406
366 407 Quick IPython release in this beginning of 2024, barely 2 weeks after the previous
367 408 release.
@@ -388,14 +429,14 work on IPython and related libraries.
388 429 .. _version 8.19:
389 430
390 431 IPython 8.19
391 ------------
432 ============
392 433
393 434 New release of IPython a bit before the end of the month, and end of the year.
394 435
395 436 Mostly cleanup and deprecation, due to upstream deprecation and removal.
396 437
397 438 Remove of Python 3.9 support
398 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
439 ----------------------------
399 440
400 441 A bit later than originally plan, IPython 8.19 does not support Python 3.9
401 442 anymore, as well as the few conditional code that were executing only on Python
@@ -409,7 +450,7 We now also run CI on Python 3.12 (what I likely should have done before), but
409 450 running on too many Python version uses a lot of CI time.
410 451
411 452 Absolute and relative Line Numbers in Prompts
412 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
453 ---------------------------------------------
413 454
414 455 Thanks to the contribution of ``cohml``, IPython CLI now support absolute and
415 456 relative line numbers in both vi and emacs prompt, use for example
@@ -417,13 +458,13 relative line numbers in both vi and emacs prompt, use for example
417 458 configuration option to display both in a custom format.
418 459
419 460 Miscellaneous
420 ~~~~~~~~~~~~~
461 -------------
421 462
422 463 In addition to various bugfixes, I unpinned pytest, let me know if there are any
423 464 issues and we'll re-pin.
424 465
425 466 See you in 2024
426 ~~~~~~~~~~~~~~~
467 ---------------
427 468
428 469 As usual you can find the full list of PRs on GitHub under `the 8.19
429 470 <https://github.com/ipython/ipython/milestone/126?closed=1>`__ milestone.
@@ -434,7 +475,7 work on IPython and related libraries.
434 475 .. _version 8.18:
435 476
436 477 IPython 8.18 and 8.18.1
437 -----------------------
478 =======================
438 479
439 480 8.18.1 is identical to 8.18 but pin ``prompt_toolkit`` to greater than ``3.0.41``
440 481
@@ -461,7 +502,7 work on IPython and related libraries.
461 502 .. _version 8.17:
462 503
463 504 IPython 8.17, 8.17.1
464 --------------------
505 ====================
465 506
466 507 Medium-sized release of IPython that includes some cleanup (backcall, python2 leftovers)
467 508 and some refactoring improvements (typing, pathlib) and a fix on completion.
@@ -476,7 +517,7 Reverted in 8.17.1:
476 517
477 518
478 519 Mamba and Micromamba magic commands
479 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
520 ------------------------------------
480 521
481 522 In addition to the ``%conda`` magic command for calling ``conda`` in IPython,
482 523 the ``%mamba`` and ``%micromamba`` magic commands now
@@ -510,7 +551,7 work on IPython and related libraries.
510 551 .. _version 8.16.1:
511 552
512 553 IPython 8.16, 8.16.1
513 --------------------
554 ====================
514 555
515 556 Small double release of IPython (with the 8.12.3 release notes just below).
516 557 Mostly bug fixes and cleanups, and type annotations. Of interest for users:
@@ -535,7 +576,7 work on IPython and related libraries.
535 576 .. _version 8.12.3:
536 577
537 578 IPython 8.12.3
538 --------------
579 ==============
539 580
540 581 Tiny release of 8.12.3 that backport a small number of fixes for users still
541 582 using Python 3.8.
@@ -546,7 +587,7 using Python 3.8.
546 587 .. _version 8.15:
547 588
548 589 IPython 8.15
549 ------------
590 ============
550 591
551 592 Medium release of IPython after a couple of month hiatus, and a bit
552 593 off-schedule.
@@ -567,20 +608,20 Among other, IPython 8.15:
567 608 - Fix multiple issues with matplotlib interactive mode, qt5/qt6 :ghpull:`14128`
568 609
569 610 Support for PEP-678 Exception Notes
570 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
611 -----------------------------------
571 612
572 613 Ultratb now shows :pep:`678` notes, improving your debugging experience on
573 614 Python 3.11+ or with libraries such as Pytest and Hypothesis.
574 615
575 616 Native fallback for displaying ExceptionGroup
576 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
617 ---------------------------------------------
577 618 ExceptionGroups are now displayed with ``traceback.print_exc``, as a temporary fix until UltraTB properly supports displaying child exceptions.
578 619
579 620
580 621 We have two larger features:
581 622
582 623 AST-based macros
583 ~~~~~~~~~~~~~~~~
624 ----------------
584 625
585 626 :ghpull:`14100` introduce a new and efficient way to modify each execution block
586 627 (cell) using an template-ast-based transform. Unlike IPython pre and post code
@@ -607,7 +648,7 retry the code in a for loop....
607 648
608 649
609 650 Allow IPdb/Pdb to move between chained exceptions
610 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
651 -------------------------------------------------
611 652
612 653 The main change is the addition of the ability to move between chained
613 654 exceptions when using IPdb, this feature was also contributed to upstream Pdb
@@ -694,7 +735,7 As usual you can find the full list of PRs on GitHub under `the 8.15 milestone
694 735 .. _version 8.14:
695 736
696 737 IPython 8.14
697 ------------
738 ============
698 739
699 740 Small release of IPython.
700 741
@@ -707,7 +748,7 Small release of IPython.
707 748
708 749
709 750 SPEC 0 and SPEC 4
710 ~~~~~~~~~~~~~~~~~
751 -----------------
711 752
712 753 You've heard about the NEPs, (NumPy enhancement Proposal), having a NEP for something non-numpy specific was sometime confusing.
713 754 Long live the `SPECs <https://scientific-python.org/specs/>`_.
@@ -719,7 +760,7 We encourage you to do so as well in order to report breakage, and contribute to
719 760
720 761
721 762 Python 3.12 compatibility ?
722 ~~~~~~~~~~~~~~~~~~~~~~~~~~~
763 ---------------------------
723 764
724 765 Python 3.12 changed its tokenizer to have better support for f-strings and allow arbitrary expression.
725 766 This is a great new feature and performance improvement in Python 3.12.
@@ -742,7 +783,7 so if you plan to update to Python 3.12 after its release, we encourage for extr
742 783 .. _version 8.12.2:
743 784
744 785 IPython 8.13.1, 8.13.2 and 8.12.2
745 ---------------------------------
786 =================================
746 787
747 788 3 quick in succession patch release of IPython in addition to IPython 8.13.0
748 789 having been yanked.
@@ -760,7 +801,7 method of modules) for tab completion.
760 801 .. _version 8.13:
761 802
762 803 IPython 8.13
763 ------------
804 ============
764 805
765 806 As usual for the end of the month, minor release of IPython. This release is
766 807 significant in that it not only has a number of bugfixes, but also drop support
@@ -788,7 +829,7 work on IPython and related libraries.
788 829 .. _version 8.12.1:
789 830
790 831 IPython 8.12.1
791 --------------
832 ==============
792 833
793 834 This is the twin release of IPython 8.13 that contain only critical UI and bug
794 835 fixes. The next minor version of IPython has dropped support for Python 3.8 – as
@@ -814,7 +855,7 work on IPython and related libraries.
814 855 .. _version 8.12.0:
815 856
816 857 IPython 8.12
817 ------------
858 ============
818 859
819 860 Hopefully slightly early release for IPython 8.12. Last Thursday of the month,
820 861 even if I guess it's likely already Friday somewhere in the pacific ocean.
@@ -868,7 +909,7 the following big feature. We had productive discussions on how to best expose
868 909 this feature
869 910
870 911 Dynamic documentation dispatch
871 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
912 ------------------------------
872 913
873 914 We are experimenting with dynamic documentation dispatch for object attribute.
874 915 See :ghissue:`13860`. The goal is to allow object to define documentation for
@@ -944,7 +985,7 object.
944 985 .. _version 8.11.0:
945 986
946 987 IPython 8.11
947 ------------
988 ============
948 989
949 990 Back on almost regular monthly schedule for IPython with end-of-month
950 991 really-late-Friday release to make sure some bugs are properly fixed.
@@ -953,7 +994,7 Small addition of with a few new features, bugfix and UX improvements.
953 994 This is a non-exhaustive list, but among other you will find:
954 995
955 996 Faster Traceback Highlighting
956 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
997 -----------------------------
957 998
958 999 Resurrection of pre-IPython-8 traceback highlighting code.
959 1000
@@ -968,7 +1009,7 This can be configures by setting the value of
968 1009
969 1010
970 1011 Autoreload verbosity
971 ~~~~~~~~~~~~~~~~~~~~
1012 --------------------
972 1013
973 1014 We introduce more descriptive names for the ``%autoreload`` parameter:
974 1015
@@ -993,7 +1034,7 blacklisted in the same line, e.g. it's now possible to call ``%aimport os, -mat
993 1034 ``os`` for ``%autoreload explicit`` and exclude ``math`` for modes ``all`` and ``complete``.
994 1035
995 1036 Terminal shortcuts customization
996 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1037 --------------------------------
997 1038
998 1039 Previously modifying shortcuts was only possible by hooking into startup files
999 1040 and practically limited to adding new shortcuts or removing all shortcuts bound
@@ -1015,7 +1056,7 You can learn more in :std:configtrait:`TerminalInteractiveShell.shortcuts`
1015 1056 configuration reference.
1016 1057
1017 1058 Miscellaneous
1018 ~~~~~~~~~~~~~
1059 -------------
1019 1060
1020 1061 - ``%gui`` should now support PySide6. :ghpull:`13864`
1021 1062 - Cli shortcuts can now be configured :ghpull:`13928`, see above.
@@ -1035,7 +1076,7 work on IPython and related libraries.
1035 1076 .. _version 8.10.0:
1036 1077
1037 1078 IPython 8.10
1038 ------------
1079 ============
1039 1080
1040 1081 Out of schedule release of IPython with minor fixes to patch a potential CVE-2023-24816.
1041 1082 This is a really low severity CVE that you most likely are not affected by unless:
@@ -1071,7 +1112,7 about 2 weeks.
1071 1112 .. _version 8.9.0:
1072 1113
1073 1114 IPython 8.9.0
1074 -------------
1115 =============
1075 1116
1076 1117 Second release of IPython in 2023, last Friday of the month, we are back on
1077 1118 track. This is a small release with a few bug-fixes, and improvements, mostly
@@ -1080,7 +1121,7 with respect to terminal shortcuts.
1080 1121
1081 1122 The biggest improvement for 8.9 is a drastic amelioration of the
1082 1123 auto-suggestions sponsored by D.E. Shaw and implemented by the more and more
1083 active contributor `@krassowski <https://github.com/krassowski>`.
1124 active contributor `@krassowski <https://github.com/krassowski>`__.
1084 1125
1085 1126 - ``right`` accepts a single character from suggestion
1086 1127 - ``ctrl+right`` accepts a semantic token (macos default shortcuts take
@@ -1092,7 +1133,7 active contributor `@krassowski <https://github.com/krassowski>`.
1092 1133 - ``up`` moves to suggestion from earlier in history when no lines are present above the cursor.
1093 1134
1094 1135 This is best described by the Gif posted by `@krassowski
1095 <https://github.com/krassowski>`, and in the PR itself :ghpull:`13888`.
1136 <https://github.com/krassowski>`__, and in the PR itself :ghpull:`13888`.
1096 1137
1097 1138 .. image:: ../_images/autosuggest.gif
1098 1139
@@ -1119,7 +1160,7 work on IPython and related libraries.
1119 1160 .. _version 8.8.0:
1120 1161
1121 1162 IPython 8.8.0
1122 -------------
1163 =============
1123 1164
1124 1165 First release of IPython in 2023 as there was no release at the end of
1125 1166 December.
@@ -1158,7 +1199,7 work on IPython and related libraries.
1158 1199 .. _version 8.7.0:
1159 1200
1160 1201 IPython 8.7.0
1161 -------------
1202 =============
1162 1203
1163 1204
1164 1205 Small release of IPython with a couple of bug fixes and new features for this
@@ -1183,7 +1224,7 work on IPython and related libraries.
1183 1224 .. _version 8.6.0:
1184 1225
1185 1226 IPython 8.6.0
1186 -------------
1227 =============
1187 1228
1188 1229 Back to a more regular release schedule (at least I try), as Friday is
1189 1230 already over by more than 24h hours. This is a slightly bigger release with a
@@ -1247,7 +1288,7 work on IPython and related libraries.
1247 1288 .. _version 8.5.0:
1248 1289
1249 1290 IPython 8.5.0
1250 -------------
1291 =============
1251 1292
1252 1293 First release since a couple of month due to various reasons and timing preventing
1253 1294 me for sticking to the usual monthly release the last Friday of each month. This
@@ -1291,7 +1332,7 Here is a non-exhaustive list of changes that have been implemented for IPython
1291 1332 - show maxlen in deque's repr. :ghpull:`13648`
1292 1333
1293 1334 Restore line numbers for Input
1294 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1335 ------------------------------
1295 1336
1296 1337 Line number information in tracebacks from input are restored.
1297 1338 Line numbers from input were removed during the transition to v8 enhanced traceback reporting.
@@ -1344,7 +1385,7 or, with xmode=Plain::
1344 1385 :ghpull:`13560`
1345 1386
1346 1387 New setting to silence warning if working inside a virtual environment
1347 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1388 ----------------------------------------------------------------------
1348 1389
1349 1390 Previously, when starting IPython in a virtual environment without IPython installed (so IPython from the global environment is used), the following warning was printed:
1350 1391
@@ -1363,7 +1404,7 work on IPython and related libraries.
1363 1404 .. _version 8.4.0:
1364 1405
1365 1406 IPython 8.4.0
1366 -------------
1407 =============
1367 1408
1368 1409 As for 7.34, this version contains a single fix: fix uncaught BdbQuit exceptions on ipdb
1369 1410 exit :ghpull:`13668`, and a single typo fix in documentation: :ghpull:`13682`
@@ -1375,7 +1416,7 work on IPython and related libraries.
1375 1416 .. _version 8.3.0:
1376 1417
1377 1418 IPython 8.3.0
1378 -------------
1419 =============
1379 1420
1380 1421 - :ghpull:`13625`, using ``?``, ``??``, ``*?`` will not call
1381 1422 ``set_next_input`` as most frontend allow proper multiline editing and it was
@@ -1393,7 +1434,7 IPython 8.3.0
1393 1434 .. _version 8.2.0:
1394 1435
1395 1436 IPython 8.2.0
1396 -------------
1437 =============
1397 1438
1398 1439 IPython 8.2 mostly bring bugfixes to IPython.
1399 1440
@@ -1423,7 +1464,7 work on IPython and related libraries.
1423 1464 .. _version 8.1.1:
1424 1465
1425 1466 IPython 8.1.1
1426 -------------
1467 =============
1427 1468
1428 1469 Fix an issue with virtualenv and Python 3.8 introduced in 8.1
1429 1470
@@ -1433,7 +1474,7 error in Python 3.8, and fixed in a different way in :ghpull:`13559`.
1433 1474 .. _version 8.1:
1434 1475
1435 1476 IPython 8.1.0
1436 -------------
1477 =============
1437 1478
1438 1479 IPython 8.1 is the first minor release after 8.0 and fixes a number of bugs and
1439 1480 updates a few behaviors that were problematic with the 8.0 as with many new major
@@ -1501,7 +1542,7 magics that you will find described in the 7.32 release notes.
1501 1542 .. _version 8.0.1:
1502 1543
1503 1544 IPython 8.0.1 (CVE-2022-21699)
1504 ------------------------------
1545 ==============================
1505 1546
1506 1547 IPython 8.0.1, 7.31.1 and 5.11 are security releases that change some default
1507 1548 values in order to prevent potential Execution with Unnecessary Privileges.
@@ -1545,7 +1586,7 Further details can be read on the `GitHub Advisory <https://github.com/ipython/
1545 1586 .. _version 8.0:
1546 1587
1547 1588 IPython 8.0
1548 -----------
1589 ===========
1549 1590
1550 1591 IPython 8.0 is bringing a large number of new features and improvements to both the
1551 1592 user of the terminal and of the kernel via Jupyter. The removal of compatibility
General Comments 0
You need to be logged in to leave comments. Login now