1.. date: 2024-02-18-03-14-40 2.. gh-issue: 115398 3.. nonce: tzvxH8 4.. release date: 2024-03-12 5.. section: Security 6 7Allow controlling Expat >=2.6.0 reparse deferral (:cve:`2023-52425`) by adding 8five new methods: 9 10* :meth:`xml.etree.ElementTree.XMLParser.flush` 11* :meth:`xml.etree.ElementTree.XMLPullParser.flush` 12* :meth:`xml.parsers.expat.xmlparser.GetReparseDeferralEnabled` 13* :meth:`xml.parsers.expat.xmlparser.SetReparseDeferralEnabled` 14* :meth:`xml.sax.expatreader.ExpatParser.flush` 15 16.. 17 18.. date: 2024-01-26-22-14-09 19.. gh-issue: 114572 20.. nonce: t1QMQD 21.. section: Security 22 23:meth:`ssl.SSLContext.cert_store_stats` and 24:meth:`ssl.SSLContext.get_ca_certs` now correctly lock access to the 25certificate store, when the :class:`ssl.SSLContext` is shared across 26multiple threads. 27 28.. 29 30.. date: 2024-03-11-22-24-59 31.. gh-issue: 116604 32.. nonce: LCEzAT 33.. section: Core and Builtins 34 35Respect the status of the garbage collector when indirect calls are made via 36:c:func:`PyErr_CheckSignals` and the evaluation breaker. Patch by Pablo 37Galindo 38 39.. 40 41.. date: 2024-03-09-11-10-53 42.. gh-issue: 112087 43.. nonce: nbI0Pw 44.. section: Core and Builtins 45 46:class:`list` is now compatible with the implementation of :pep:`703`. 47 48.. 49 50.. date: 2024-03-05-22-00-58 51.. gh-issue: 116381 52.. nonce: 0Nq9iO 53.. section: Core and Builtins 54 55Add specialization for ``CONTAINS_OP``. 56 57.. 58 59.. date: 2024-03-04-10-19-51 60.. gh-issue: 116296 61.. nonce: gvtxyU 62.. section: Core and Builtins 63 64Fix possible refleak in :meth:`!object.__reduce__` internal error handling. 65 66.. 67 68.. date: 2024-02-22-16-17-53 69.. gh-issue: 115823 70.. nonce: c1TreJ 71.. section: Core and Builtins 72 73Properly calculate error ranges in the parser when raising 74:exc:`SyntaxError` exceptions caused by invalid byte sequences. Patch by 75Pablo Galindo 76 77.. 78 79.. date: 2024-02-22-11-33-20 80.. gh-issue: 115778 81.. nonce: jksd1D 82.. section: Core and Builtins 83 84Add ``tierN`` annotation for instruction definition in interpreter DSL. 85 86.. 87 88.. date: 2024-02-20-18-49-02 89.. gh-issue: 115733 90.. nonce: 51Zb85 91.. section: Core and Builtins 92 93Fix crash when calling ``next()`` on exhausted list iterators. 94 95.. 96 97.. date: 2024-02-20-12-46-20 98.. gh-issue: 115700 99.. nonce: KLJ5r4 100.. section: Core and Builtins 101 102The regen-cases build stage now works on Windows. 103 104.. 105 106.. date: 2024-02-14-23-50-43 107.. gh-issue: 115347 108.. nonce: VkHvQC 109.. section: Core and Builtins 110 111Fix bug where docstring was replaced by a redundant NOP when Python is run 112with ``-OO``. 113 114.. 115 116.. date: 2024-02-12-23-29-17 117.. gh-issue: 115323 118.. nonce: 3t6687 119.. section: Core and Builtins 120 121Make error message more meaningful for when :meth:`bytearray.extend` is 122called with a :class:`str` object. 123 124.. 125 126.. date: 2024-02-09-18-59-22 127.. gh-issue: 112175 128.. nonce: qglugr 129.. section: Core and Builtins 130 131Every ``PyThreadState`` now has its own ``eval_breaker``, allowing specific 132threads to be interrupted. 133 134.. 135 136.. date: 2024-02-08-16-01-18 137.. gh-issue: 115154 138.. nonce: ji96FV 139.. section: Core and Builtins 140 141Fix a bug that was causing the :func:`tokenize.untokenize` function to 142handle unicode named literals incorrectly. Patch by Pablo Galindo 143 144.. 145 146.. date: 2024-01-28-02-46-12 147.. gh-issue: 112433 148.. nonce: FUX-nT 149.. section: Core and Builtins 150 151Add ability to force alignment of :mod:`ctypes.Structure` by way of the new 152``_align_`` attribute on the class. 153 154.. 155 156.. date: 2023-07-16-15-02-47 157.. gh-issue: 104090 158.. nonce: oMjNa9 159.. section: Core and Builtins 160 161The multiprocessing resource tracker now exits with non-zero status code if 162a resource leak was detected. It still exits with status code 0 otherwise. 163 164.. 165 166.. date: 2023-06-16-21-29-06 167.. gh-issue: 105858 168.. nonce: Q7h0EV 169.. section: Core and Builtins 170 171Improve the constructors for :mod:`ast` nodes. Arguments of list types now 172default to an empty list if omitted, and optional fields default to 173``None``. AST nodes now have an ``__annotations__`` attribute with the 174expected types of their attributes. Passing unrecognized extra arguments to 175AST nodes is deprecated and will become an error in Python 3.15. Omitting a 176required argument to an AST node is deprecated and will become an error in 177Python 3.15. Patch by Jelle Zijlstra. 178 179.. 180 181.. date: 2023-02-13-11-36-50 182.. gh-issue: 101860 183.. nonce: CKCMbC 184.. section: Core and Builtins 185 186Expose ``__name__`` attribute on property. 187 188.. 189 190.. date: 2022-09-04-16-51-56 191.. gh-issue: 96497 192.. nonce: HTBuIL 193.. section: Core and Builtins 194 195Fix incorrect resolution of mangled class variables used in assignment 196expressions in comprehensions. 197 198.. 199 200.. date: 2024-03-11-12-11-10 201.. gh-issue: 116600 202.. nonce: FcNBy_ 203.. section: Library 204 205Fix :func:`repr` for global :class:`~enum.Flag` members. 206 207.. 208 209.. date: 2024-03-07-21-57-50 210.. gh-issue: 116349 211.. nonce: fD2pbP 212.. section: Library 213 214:func:`platform.java_ver` is deprecated and will be removed in 3.15. It was 215largely untested, had a confusing API, and was only useful for Jython 216support. 217 218.. 219 220.. date: 2024-03-05-20-53-34 221.. gh-issue: 116143 222.. nonce: sww6Zl 223.. section: Library 224 225Fix a race in pydoc ``_start_server``, eliminating a window in which 226``_start_server`` can return a thread that is "serving" but without a 227``docserver`` set. 228 229.. 230 231.. date: 2024-03-05-14-34-22 232.. gh-issue: 116127 233.. nonce: 5uktu3 234.. section: Library 235 236:mod:`typing`: implement :pep:`705` which adds :data:`typing.ReadOnly` 237support to :class:`typing.TypedDict`. 238 239.. 240 241.. date: 2024-03-05-02-09-18 242.. gh-issue: 116325 243.. nonce: FmlBYv 244.. section: Library 245 246:mod:`typing`: raise :exc:`SyntaxError` instead of :exc:`AttributeError` on 247forward references as empty strings. 248 249.. 250 251.. date: 2024-03-02-11-31-49 252.. gh-issue: 115957 253.. nonce: C-3Z_U 254.. section: Library 255 256When ``asyncio.TaskGroup.create_task`` is called on an inactive 257``asyncio.TaskGroup``, the given coroutine will be closed (which prevents a 258``RuntimeWarning``). 259 260.. 261 262.. date: 2024-03-01-14-22-08 263.. gh-issue: 115978 264.. nonce: r2ePTo 265.. section: Library 266 267Disable preadv(), readv(), pwritev(), and writev() on WASI. 268 269Under wasmtime for WASI 0.2, these functions don't pass test_posix 270(https://github.com/bytecodealliance/wasmtime/issues/7830). 271 272.. 273 274.. date: 2024-03-01-11-57-32 275.. gh-issue: 88352 276.. nonce: bZ68rw 277.. section: Library 278 279Fix the computation of the next rollover time in the 280:class:`logging.TimedRotatingFileHandler` handler. :meth:`!computeRollover` 281now always returns a timestamp larger than the specified time and works 282correctly during the DST change. :meth:`!doRollover` no longer overwrite the 283already rolled over file, saving from data loss when run at midnight or 284during repeated time at the DST change. 285 286.. 287 288.. date: 2024-02-29-20-06-06 289.. gh-issue: 87115 290.. nonce: FVMiOR 291.. section: Library 292 293Set ``__main__.__spec__`` to ``None`` when running a script with :mod:`pdb` 294 295.. 296 297.. date: 2024-02-29-17-06-54 298.. gh-issue: 76511 299.. nonce: WqjRLP 300.. section: Library 301 302Fix UnicodeEncodeError in :meth:`email.Message.as_string` that results when 303a message that claims to be in the ascii character set actually has 304non-ascii characters. Non-ascii characters are now replaced with the U+FFFD 305replacement character, like in the ``replace`` error handler. 306 307.. 308 309.. date: 2024-02-28-17-50-42 310.. gh-issue: 89547 311.. nonce: GetF38 312.. section: Library 313 314Add support for nested typing special forms like Final[ClassVar[int]]. 315 316.. 317 318.. date: 2024-02-28-17-04-28 319.. gh-issue: 65824 320.. nonce: gG8KR1 321.. section: Library 322 323Improve the ``less`` prompt in :mod:`pydoc`. 324 325.. 326 327.. date: 2024-02-28-13-10-17 328.. gh-issue: 116040 329.. nonce: wDidHd 330.. section: Library 331 332[Enum] fix by-value calls when second value is falsey; e.g. Cardinal(1, 0) 333 334.. 335 336.. date: 2024-02-28-12-14-31 337.. gh-issue: 115821 338.. nonce: YO2vKA 339.. section: Library 340 341[Enum] Improve error message when calling super().__new__() in custom 342__new__. 343 344.. 345 346.. date: 2024-02-27-20-11-29 347.. gh-issue: 85644 348.. nonce: 3rgcBm 349.. section: Library 350 351Use the ``XDG_CURRENT_DESKTOP`` environment variable in :mod:`webbrowser` to 352check desktop. Prefer it to the deprecated ``GNOME_DESKTOP_SESSION_ID`` for 353GNOME detection. 354 355.. 356 357.. date: 2024-02-27-13-05-51 358.. gh-issue: 75988 359.. nonce: In6LlB 360.. section: Library 361 362Fixed :func:`unittest.mock.create_autospec` to pass the call through to the 363wrapped object to return the real result. 364 365.. 366 367.. date: 2024-02-25-19-20-05 368.. gh-issue: 115881 369.. nonce: ro_Kuw 370.. section: Library 371 372Fix issue where :func:`ast.parse` would incorrectly flag conditional context 373managers (such as ``with (x() if y else z()): ...``) as invalid syntax if 374``feature_version=(3, 8)`` was passed. This reverts changes to the grammar 375made as part of gh-94949. 376 377.. 378 379.. date: 2024-02-24-18-48-14 380.. gh-issue: 115886 381.. nonce: rgM6AF 382.. section: Library 383 384Fix silent truncation of the name with an embedded null character in 385:class:`multiprocessing.shared_memory.SharedMemory`. 386 387.. 388 389.. date: 2024-02-23-11-08-31 390.. gh-issue: 115532 391.. nonce: zVd3gK 392.. section: Library 393 394Add kernel density estimation to the statistics module. 395 396.. 397 398.. date: 2024-02-22-12-10-18 399.. gh-issue: 115714 400.. nonce: P2JsU1 401.. section: Library 402 403On WASI, the :mod:`time` module no longer get process time using ``times()`` 404or ``CLOCK_PROCESS_CPUTIME_ID``, system API is that is unreliable and is 405likely to be removed from WASI. The affected clock functions fall back to 406calling ``clock()``. 407 408.. 409 410.. date: 2024-02-22-11-29-27 411.. gh-issue: 115809 412.. nonce: 9H1DhB 413.. section: Library 414 415Improve algorithm for computing which rolled-over log files to delete in 416:class:`logging.TimedRotatingFileHandler`. It is now reliable for handlers 417without ``namer`` and with arbitrary deterministic ``namer`` that leaves the 418datetime part in the file name unmodified. 419 420.. 421 422.. date: 2024-02-21-17-54-59 423.. gh-issue: 74668 424.. nonce: JT-Q8W 425.. section: Library 426 427:mod:`urllib.parse` functions :func:`~urllib.parse.parse_qs` and 428:func:`~urllib.parse.parse_qsl` now support bytes arguments containing raw 429and percent-encoded non-ASCII data. 430 431.. 432 433.. date: 2024-02-20-22-02-34 434.. gh-issue: 67044 435.. nonce: QF9_Ru 436.. section: Library 437 438:func:`csv.writer` now always quotes or escapes ``'\r'`` and ``'\n'``, 439regardless of *lineterminator* value. 440 441.. 442 443.. date: 2024-02-20-16-42-54 444.. gh-issue: 115712 445.. nonce: EXVMXw 446.. section: Library 447 448Restore support of space delimiter with ``skipinitialspace=True`` in 449:mod:`csv`. :func:`csv.writer` now quotes empty fields if delimiter is a 450space and skipinitialspace is true and raises exception if quoting is not 451possible. 452 453.. 454 455.. date: 2024-02-20-07-38-15 456.. gh-issue: 112364 457.. nonce: EX7uGI 458.. section: Library 459 460Fixed :func:`ast.unparse` to handle format_spec with ``"``, ``'`` or ``\\``. 461Patched by Frank Hoffmann. 462 463.. 464 465.. date: 2024-02-19-16-53-48 466.. gh-issue: 112997 467.. nonce: sYBXRZ 468.. section: Library 469 470Stop logging potentially sensitive callback arguments in :mod:`asyncio` 471unless debug mode is active. 472 473.. 474 475.. date: 2024-02-19-15-52-30 476.. gh-issue: 114914 477.. nonce: M5-1d8 478.. section: Library 479 480Fix an issue where an abandoned :class:`StreamWriter` would not be garbage 481collected. 482 483.. 484 485.. date: 2024-02-18-12-18-12 486.. gh-issue: 111358 487.. nonce: 9yJUMD 488.. section: Library 489 490Fix a bug in :meth:`asyncio.BaseEventLoop.shutdown_default_executor` to 491ensure the timeout passed to the coroutine behaves as expected. 492 493.. 494 495.. date: 2024-02-17-18-47-12 496.. gh-issue: 115618 497.. nonce: napiNp 498.. section: Library 499 500Fix improper decreasing the reference count for ``None`` argument in 501:class:`property` methods :meth:`~property.getter`, :meth:`~property.setter` 502and :meth:`~property.deleter`. 503 504.. 505 506.. date: 2024-02-16-16-40-10 507.. gh-issue: 112720 508.. nonce: io6_Ac 509.. section: Library 510 511Refactor :class:`dis.ArgResolver` to make it possible to subclass and change 512the way jump args are interpreted. 513 514.. 515 516.. date: 2024-02-15-23-42-54 517.. gh-issue: 112006 518.. nonce: 4wxcK- 519.. section: Library 520 521Fix :func:`inspect.unwrap` for types with the ``__wrapper__`` data 522descriptor. Fix :meth:`inspect.Signature.from_callable` for builtins 523:func:`classmethod` and :func:`staticmethod`. 524 525.. 526 527.. date: 2024-02-15-19-11-49 528.. gh-issue: 101293 529.. nonce: 898b8l 530.. section: Library 531 532Support callables with the ``__call__()`` method and types with 533``__new__()`` and ``__init__()`` methods set to class methods, static 534methods, bound methods, partial functions, and other types of methods and 535descriptors in :meth:`inspect.Signature.from_callable`. 536 537.. 538 539.. date: 2024-02-12-11-42-48 540.. gh-issue: 103092 541.. nonce: sGMKr0 542.. section: Library 543 544Isolate :mod:`!_lsprof` (apply :pep:`687`). 545 546.. 547 548.. date: 2024-02-11-20-12-39 549.. gh-issue: 113942 550.. nonce: i72sMJ 551.. section: Library 552 553:mod:`pydoc` no longer skips global functions implemented as builtin 554methods, such as :class:`~type.MethodDescriptorType` and 555:class:`~type.WrapperDescriptorType`. 556 557.. 558 559.. date: 2024-02-10-17-18-49 560.. gh-issue: 115256 561.. nonce: 41Fy9P 562.. section: Library 563 564Added DeprecationWarning when accessing the tarfile attribute of TarInfo 565objects. The attribute is never used internally and is only attached to 566TarInfos when the tarfile is opened in write-mode, not read-mode. The 567attribute creates an unnecessary reference cycle which may cause corruption 568when not closing the handle after writing a tarfile. 569 570.. 571 572.. date: 2024-02-09-19-41-48 573.. gh-issue: 115197 574.. nonce: 20wkWH 575.. section: Library 576 577``urllib.request`` no longer resolves the hostname before checking it 578against the system's proxy bypass list on macOS and Windows. 579 580.. 581 582.. date: 2024-02-09-12-22-47 583.. gh-issue: 113812 584.. nonce: wOraaG 585.. section: Library 586 587:meth:`DatagramTransport.sendto` will now send zero-length datagrams if 588called with an empty bytes object. The transport flow control also now 589accounts for the datagram header when calculating the buffer size. 590 591.. 592 593.. date: 2024-01-30-23-28-29 594.. gh-issue: 114763 595.. nonce: BRjKkg 596.. section: Library 597 598Protect modules loaded with :class:`importlib.util.LazyLoader` from race 599conditions when multiple threads try to access attributes before the loading 600is complete. 601 602.. 603 604.. date: 2024-01-29-13-46-41 605.. gh-issue: 114709 606.. nonce: SQ998l 607.. section: Library 608 609:func:`posixpath.commonpath` now raises a :exc:`ValueError` exception when 610passed an empty iterable. Previously, :exc:`IndexError` was raised. 611 612:func:`posixpath.commonpath` now raises a :exc:`TypeError` exception when 613passed ``None``. Previously, :exc:`ValueError` was raised. 614 615.. 616 617.. date: 2024-01-26-16-42-31 618.. gh-issue: 114610 619.. nonce: S18Vuz 620.. section: Library 621 622Fix bug where :meth:`pathlib.PurePath.with_stem` converted a non-empty path 623suffix to a stem when given an empty *stem* argument. It now raises 624:exc:`ValueError`, just like :meth:`pathlib.PurePath.with_suffix` does when 625called on a path with an empty stem, given a non-empty *suffix* argument. 626 627.. 628 629.. date: 2023-11-24-23-40-00 630.. gh-issue: 107361 631.. nonce: v54gh46 632.. section: Library 633 634Add :data:`ssl.VERIFY_X509_PARTIAL_CHAIN` and :data:`VERIFY_X509_STRICT` to 635the default SSL context created with :func:`ssl.create_default_context`. 636 637.. 638 639.. date: 2023-11-20-16-15-44 640.. gh-issue: 112281 641.. nonce: gH4EVk 642.. section: Library 643 644Allow creating :ref:`union of types<types-union>` for 645:class:`typing.Annotated` with unhashable metadata. 646 647.. 648 649.. date: 2023-11-07-10-22-06 650.. gh-issue: 111775 651.. nonce: IoVxfX 652.. section: Library 653 654Fix :meth:`importlib.resources.simple.ResourceHandle.open` for text mode, 655added missed ``stream`` argument. 656 657.. 658 659.. date: 2023-10-07-06-15-13 660.. gh-issue: 90095 661.. nonce: gWn1ka 662.. section: Library 663 664Make .pdbrc and -c work with any valid pdb commands. 665 666.. 667 668.. date: 2023-08-05-08-41-58 669.. gh-issue: 107625 670.. nonce: cVSHCT 671.. section: Library 672 673Raise :exc:`configparser.ParsingError` from 674:meth:`~configparser.ConfigParser.read` and 675:meth:`~configparser.ConfigParser.read_file` methods of 676:class:`configparser.ConfigParser` if a key without a corresponding value is 677continued (that is, followed by an indented line). 678 679.. 680 681.. date: 2023-08-02-01-17-32 682.. gh-issue: 107155 683.. nonce: Mj1K9L 684.. section: Library 685 686Fix incorrect output of ``help(x)`` where ``x`` is a :keyword:`lambda` 687function, which has an ``__annotations__`` dictionary attribute with a 688``"return"`` key. 689 690.. 691 692.. date: 2023-07-12-14-52-04 693.. gh-issue: 57141 694.. nonce: L2k8Xb 695.. section: Library 696 697Add option for *non-shallow* comparisons to :class:`filecmp.dircmp` like 698:func:`filecmp.cmp`. Original patch by Steven Ward. Enhanced by Tobias 699Rautenkranz 700 701.. 702 703.. date: 2023-05-17-21-33-21 704.. gh-issue: 69990 705.. nonce: Blvz9G 706.. section: Library 707 708:meth:`Profile.print_stats` has been improved to accept multiple sort 709arguments. Patched by Chiu-Hsiang Hsu and Furkan Onder. 710 711.. 712 713.. date: 2023-05-01-22-28-57 714.. gh-issue: 104061 715.. nonce: vxfBXf 716.. section: Library 717 718Add :data:`socket.SO_BINDTOIFINDEX` constant. 719 720.. 721 722.. date: 2023-04-02-21-20-35 723.. gh-issue: 60346 724.. nonce: 7mjgua 725.. section: Library 726 727Fix ArgumentParser inconsistent with parse_known_args. 728 729.. 730 731.. date: 2023-03-03-09-05-42 732.. gh-issue: 102389 733.. nonce: ucmo0_ 734.. section: Library 735 736Add ``windows_31j`` to aliases for ``cp932`` codec 737 738.. 739 740.. date: 2023-02-14-17-19-59 741.. gh-issue: 72249 742.. nonce: fv35wU 743.. section: Library 744 745:func:`functools.partial`s of :func:`repr` has been improved to include the 746:term:`module` name. Patched by Furkan Onder and Anilyka Barry. 747 748.. 749 750.. date: 2023-01-12-14-16-01 751.. gh-issue: 100985 752.. nonce: GT5Fvd 753.. section: Library 754 755Update HTTPSConnection to consistently wrap IPv6 Addresses when using a 756proxy. 757 758.. 759 760.. date: 2023-01-09-14-08-02 761.. gh-issue: 100884 762.. nonce: DcmdLl 763.. section: Library 764 765email: fix misfolding of comma in address-lists over multiple lines in 766combination with unicode encoding. 767 768.. 769 770.. date: 2022-11-22-23-17-43 771.. gh-issue: 95782 772.. nonce: an_and 773.. section: Library 774 775Fix :func:`io.BufferedReader.tell`, :func:`io.BufferedReader.seek`, 776:func:`!_pyio.BufferedReader.tell`, :func:`io.BufferedRandom.tell`, 777:func:`io.BufferedRandom.seek` and :func:`!_pyio.BufferedRandom.tell` being 778able to return negative offsets. 779 780.. 781 782.. date: 2022-08-26-15-50-53 783.. gh-issue: 96310 784.. nonce: 0NssDh 785.. section: Library 786 787Fix a traceback in :mod:`argparse` when all options in a mutually exclusive 788group are suppressed. 789 790.. 791 792.. date: 2022-05-25-17-49-04 793.. gh-issue: 93205 794.. nonce: DjhFVR 795.. section: Library 796 797Fixed a bug in :class:`logging.handlers.TimedRotatingFileHandler` where 798multiple rotating handler instances pointing to files with the same name but 799different extensions would conflict and not delete the correct files. 800 801.. 802 803.. bpo: 31116 804.. date: 2022-01-14-10-50-17 805.. nonce: 0bduV9 806.. section: Library 807 808Add Z85 encoding to ``base64``. 809 810.. 811 812.. bpo: 44865 813.. date: 2021-08-24-20-47-37 814.. nonce: c3BhZS 815.. section: Library 816 817Add missing call to localization function in :mod:`argparse`. 818 819.. 820 821.. bpo: 43952 822.. date: 2021-05-03-11-04-12 823.. nonce: Me7fJe 824.. section: Library 825 826Fix :meth:`multiprocessing.connection.Listener.accept` to accept empty 827bytes as authkey. Not accepting empty bytes as key causes it to hang 828indefinitely. 829 830.. 831 832.. bpo: 42125 833.. date: 2020-12-15-22-30-49 834.. nonce: UGyseY 835.. section: Library 836 837linecache: get module name from ``__spec__`` if available. This allows 838getting source code for the ``__main__`` module when a custom loader is 839used. 840 841.. 842 843.. bpo: 41122 844.. date: 2020-07-13-23-59-42 845.. nonce: 8P_Brh 846.. section: Library 847 848Failing to pass arguments properly to :func:`functools.singledispatchmethod` 849now throws a TypeError instead of hitting an index out of bounds internally. 850 851.. 852 853.. bpo: 40818 854.. date: 2020-05-29-18-08-54 855.. nonce: Ij8ffq 856.. section: Library 857 858The asyncio REPL now runs :data:`sys.__interactivehook__` on startup. The 859default implementation of :data:`sys.__interactivehook__` provides 860auto-completion to the asyncio REPL. Patch contributed by Rémi Lapeyre. 861 862.. 863 864.. bpo: 33775 865.. date: 2019-04-06-23-50-59 866.. nonce: 0yhMDc 867.. section: Library 868 869Add 'default' and 'version' help text for localization in argparse. 870 871.. 872 873.. date: 2024-02-14-20-17-04 874.. gh-issue: 115399 875.. nonce: fb9a0R 876.. section: Documentation 877 878Document :cve:`2023-52425` of Expat <2.6.0 under "XML vulnerabilities". 879 880.. 881 882.. date: 2024-02-08-08-51-37 883.. gh-issue: 109653 884.. nonce: QHLW4w 885.. section: Documentation 886 887Improve import time of :mod:`uuid` on Linux. 888 889.. 890 891.. date: 2024-02-25-16-28-26 892.. gh-issue: 71052 893.. nonce: lSb9EC 894.. section: Tests 895 896Add test exclusions to support running the test suite on Android. 897 898.. 899 900.. date: 2024-02-25-15-58-28 901.. gh-issue: 71052 902.. nonce: lxBjqY 903.. section: Tests 904 905Enable ``test_concurrent_futures`` on platforms that support threading but 906not multiprocessing. 907 908.. 909 910.. date: 2024-02-22-00-17-06 911.. gh-issue: 115796 912.. nonce: d4hpKy 913.. section: Tests 914 915Make '_testinternalcapi.assemble_code_object' construct the exception table 916for the code object. 917 918.. 919 920.. date: 2024-02-20-15-47-41 921.. gh-issue: 115720 922.. nonce: w8i8UG 923.. section: Tests 924 925Leak tests (``-R``, ``--huntrleaks``) now show a summary of the number of 926leaks found in each iteration. 927 928.. 929 930.. date: 2024-02-18-14-20-52 931.. gh-issue: 115122 932.. nonce: 3rGNo9 933.. section: Tests 934 935Add ``--bisect`` option to regrtest test runner: run failed tests with 936``test.bisect_cmd`` to identify failing tests. Patch by Victor Stinner. 937 938.. 939 940.. date: 2024-02-17-08-25-01 941.. gh-issue: 115596 942.. nonce: RGPCrR 943.. section: Tests 944 945Fix ``ProgramPriorityTests`` in ``test_os`` permanently changing the process 946priority. 947 948.. 949 950.. date: 2024-02-16-13-04-28 951.. gh-issue: 115556 952.. nonce: rjaQ9w 953.. section: Tests 954 955On Windows, commas passed in arguments to ``Tools\buildbot\test.bat`` and 956``PCbuild\\rt.bat`` are now properly handled. 957 958.. 959 960.. date: 2024-02-13-18-24-04 961.. gh-issue: 115420 962.. nonce: -dlzfI 963.. section: Tests 964 965Fix translation of exception handler targets by 966``_testinternalcapi.optimize_cfg``. 967 968.. 969 970.. date: 2024-02-12-22-35-01 971.. gh-issue: 115376 972.. nonce: n9vubZ 973.. section: Tests 974 975Fix segfault in ``_testinternalcapi.compiler_codegen`` on bad input. 976 977.. 978 979.. date: 2024-03-04-12-43-42 980.. gh-issue: 116313 981.. nonce: cLLb8S 982.. section: Build 983 984Get WASI builds to work under wasmtime 18 w/ WASI 0.2/preview2 primitives. 985 986.. 987 988.. date: 2024-03-01-16-44-19 989.. gh-issue: 71052 990.. nonce: Hs-9EP 991.. section: Build 992 993Change Android's :data:`sys.platform` from ``"linux"`` to ``"android"``. 994 995.. 996 997.. date: 2024-02-29-15-12-31 998.. gh-issue: 116117 999.. nonce: eENkQK 1000.. section: Build 1001 1002Backport ``libb2``'s PR #42 to fix compiling CPython on 32-bit Windows with 1003``clang-cl``. 1004 1005.. 1006 1007.. date: 2024-02-26-14-54-58 1008.. gh-issue: 71052 1009.. nonce: XvFay1 1010.. section: Build 1011 1012Fix several Android build issues 1013 1014.. 1015 1016.. date: 2024-02-26-13-13-53 1017.. gh-issue: 114099 1018.. nonce: 8lpX-7 1019.. section: Build 1020 1021A testbed project was added to run the test suite on iOS. 1022 1023.. 1024 1025.. date: 2024-02-24-12-50-43 1026.. gh-issue: 115350 1027.. nonce: naQA6y 1028.. section: Build 1029 1030Fix building ctypes module with -DWIN32_LEAN_AND_MEAN defined 1031 1032.. 1033 1034.. date: 2024-02-21-18-22-49 1035.. gh-issue: 111225 1036.. nonce: Z8C3av 1037.. section: Build 1038 1039Link extension modules against libpython on Android. 1040 1041.. 1042 1043.. date: 2024-02-21-11-58-30 1044.. gh-issue: 115737 1045.. nonce: dpNl2T 1046.. section: Build 1047 1048The install name for libPython is now correctly set for non-framework macOS 1049builds. 1050 1051.. 1052 1053.. date: 2024-02-13-14-52-59 1054.. gh-issue: 114099 1055.. nonce: zjXsQr 1056.. section: Build 1057 1058Makefile targets were added to support compiling an iOS-compatible framework 1059build. 1060 1061.. 1062 1063.. date: 2024-02-27-23-21-55 1064.. gh-issue: 116012 1065.. nonce: B9_IwM 1066.. section: Windows 1067 1068Ensure the value of ``GetLastError()`` is preserved across GIL operations. 1069 1070.. 1071 1072.. date: 2024-02-23-11-43-43 1073.. gh-issue: 115582 1074.. nonce: sk1XPi 1075.. section: Windows 1076 1077Building extensions intended for free-threaded builds of CPython now require 1078compiling with ``/DPy_GIL_DISABLED`` manually when using a regular install. 1079This is expected to change in future releases. 1080 1081.. 1082 1083.. date: 2024-02-21-23-48-59 1084.. gh-issue: 115554 1085.. nonce: 02mpQC 1086.. section: Windows 1087 1088The installer now has more strict rules about updating the :ref:`launcher`. 1089In general, most users only have a single launcher installed and will see no 1090difference. When multiple launchers have been installed, the option to 1091install the launcher is disabled until all but one have been removed. 1092Downgrading the launcher (which was never allowed) is now more obviously 1093blocked. 1094 1095.. 1096 1097.. date: 2024-02-15-23-16-31 1098.. gh-issue: 115543 1099.. nonce: otrWnw 1100.. section: Windows 1101 1102:ref:`launcher` can now detect Python 3.13 when installed from the Microsoft 1103Store, and will install Python 3.12 by default when 1104:envvar:`PYLAUNCHER_ALLOW_INSTALL` is set. 1105 1106.. 1107 1108.. date: 2024-02-29-20-52-23 1109.. gh-issue: 116145 1110.. nonce: ygafim 1111.. section: macOS 1112 1113Update macOS installer to Tcl/Tk 8.6.14. 1114 1115.. 1116 1117.. date: 2023-12-09-11-04-26 1118.. gh-issue: 88516 1119.. nonce: SIIvfs 1120.. section: IDLE 1121 1122On macOS show a proxy icon in the title bar of editor windows to match 1123platform behaviour. 1124 1125.. 1126 1127.. date: 2023-02-12-19-28-08 1128.. gh-issue: 100176 1129.. nonce: Kzs4Zw 1130.. section: Tools/Demos 1131 1132Remove outdated Tools/{io,cc,string}bench 1133 1134.. 1135 1136.. bpo: 45101 1137.. date: 2021-09-05-02-47-48 1138.. nonce: 60Zqmt 1139.. section: Tools/Demos 1140 1141Add consistency in usage message IO between 2 versions of python-config. 1142 1143.. 1144 1145.. date: 2024-02-16-15-56-53 1146.. gh-issue: 114626 1147.. nonce: ie2esA 1148.. section: C API 1149 1150Add again ``_PyCFunctionFastWithKeywords`` name, removed in Python 3.13 1151alpha 4 by mistake. Keep the old private ``_PyCFunctionFastWithKeywords`` 1152name (Python 3.7) as an alias to the new public name 1153``PyCFunctionFastWithKeywords`` (Python 3.13a4). Patch by Victor Stinner. 1154 1155.. 1156 1157.. date: 2023-11-15-09-24-51 1158.. gh-issue: 111418 1159.. nonce: FYYetY 1160.. section: C API 1161 1162Add :c:macro:`PyHASH_MODULUS`, :c:macro:`PyHASH_BITS`, :c:macro:`PyHASH_INF` 1163and :c:macro:`PyHASH_IMAG` C macros. Patch by Sergey B Kirpichev. 1164