1.. date: 2024-09-04-11-55-29 2.. gh-issue: 123418 3.. nonce: 8P4bmN 4.. release date: 2024-09-06 5.. section: macOS 6 7Updated macOS installer build to use OpenSSL 3.0.15. 8 9.. 10 11.. date: 2024-09-04-09-59-18 12.. gh-issue: 123418 13.. nonce: QaMC12 14.. section: Windows 15 16Updated Windows build to use OpenSSL 3.0.15. 17 18.. 19 20.. date: 2024-08-01-10-55-15 21.. gh-issue: 122573 22.. nonce: 4-UCFY 23.. section: Windows 24 25The Windows build of CPython now requires 3.10 or newer. 26 27.. 28 29.. date: 2024-07-19-21-50-54 30.. gh-issue: 100256 31.. nonce: GDrKba 32.. section: Windows 33 34:mod:`mimetypes` no longer fails when it encounters an inaccessible registry 35key. 36 37.. 38 39.. date: 2022-04-20-18-32-30 40.. gh-issue: 79846 41.. nonce: Vggv3f 42.. section: Windows 43 44Makes :code:`ssl.create_default_context()` ignore invalid certificates in 45the Windows certificate store 46 47.. 48 49.. date: 2024-09-04-10-07-51 50.. gh-issue: 123418 51.. nonce: 1eIFZb 52.. section: Tools/Demos 53 54Update GitHub CI workflows to use OpenSSL 3.0.15 and multissltests to use 553.0.15, 3.1.7, and 3.2.3. 56 57.. 58 59.. date: 2024-05-29-15-28-08 60.. gh-issue: 119727 61.. nonce: dVkaZM 62.. section: Tests 63 64Add ``--single-process`` command line option to Python test runner 65(regrtest). Patch by Victor Stinner. 66 67.. 68 69.. date: 2024-05-04-22-56-41 70.. gh-issue: 101525 71.. nonce: LHK166 72.. section: Tests 73 74Skip ``test_gdb`` if the binary is relocated by BOLT. Patch by Donghee Na. 75 76.. 77 78.. date: 2024-09-04-12-41-35 79.. gh-issue: 123678 80.. nonce: N41y9n 81.. section: Security 82 83Upgrade libexpat to 2.6.3 84 85.. 86 87.. date: 2024-07-02-13-39-20 88.. gh-issue: 121285 89.. nonce: hrl-yI 90.. section: Security 91 92Remove backtracking from tarfile header parsing for ``hdrcharset``, PAX, and 93GNU sparse headers. 94 95.. 96 97.. date: 2024-09-04-18-23-43 98.. gh-issue: 123657 99.. nonce: Oks4So 100.. section: Library 101 102Fix crash and memory leak in :func:`decimal.getcontext`. It crashed when 103using a thread-local context by ``--with-decimal-contextvar=no``. 104 105.. 106 107.. date: 2024-08-28-20-08-19 108.. gh-issue: 123448 109.. nonce: tItJlp 110.. section: Library 111 112Fixed memory leak of :class:`typing.NoDefault` by moving it to the static 113types array. 114 115.. 116 117.. date: 2024-08-28-13-03-36 118.. gh-issue: 123409 119.. nonce: lW0YF- 120.. section: Library 121 122Fix :attr:`ipaddress.IPv6Address.reverse_pointer` output according to 123:rfc:`RFC 3596, §2.5 <3596#section-2.5>`. Patch by Bénédikt Tran. 124 125.. 126 127.. date: 2024-08-26-13-45-20 128.. gh-issue: 123270 129.. nonce: gXHvNJ 130.. section: Library 131 132Applied a more surgical fix for malformed payloads in :class:`zipfile.Path` 133causing infinite loops (gh-122905) without breaking contents using 134legitimate characters. 135 136.. 137 138.. date: 2024-08-24-06-05-41 139.. gh-issue: 123228 140.. nonce: jR_5O5 141.. section: Library 142 143Fix return type for 144:func:`!_pyrepl.readline._ReadlineWrapper.get_line_buffer` to be 145:func:`str`. Patch by Sergey B Kirpichev. 146 147.. 148 149.. date: 2024-08-24-00-03-01 150.. gh-issue: 123240 151.. nonce: uFPG3l 152.. section: Library 153 154Raise audit events for the :func:`input` in the new REPL. 155 156.. 157 158.. date: 2024-08-22-20-10-13 159.. gh-issue: 123243 160.. nonce: Kifj1L 161.. section: Library 162 163Fix memory leak in :mod:`!_decimal`. 164 165.. 166 167.. date: 2024-08-22-11-25-19 168.. gh-issue: 122546 169.. nonce: BSmeE7 170.. section: Library 171 172Consistently use same file name for different exceptions in the new repl. 173Patch by Sergey B Kirpichev. 174 175.. 176 177.. date: 2024-08-22-09-37-48 178.. gh-issue: 123213 179.. nonce: owmXnP 180.. section: Library 181 182:meth:`xml.etree.ElementTree.Element.extend` and 183:class:`~xml.etree.ElementTree.Element` assignment no longer hide the 184internal exception if an erronous generator is passed. Patch by Bar Harel. 185 186.. 187 188.. date: 2024-08-20-18-02-27 189.. gh-issue: 85110 190.. nonce: 8_iDQy 191.. section: Library 192 193Preserve relative path in URL without netloc in 194:func:`urllib.parse.urlunsplit` and :func:`urllib.parse.urlunparse`. 195 196.. 197 198.. date: 2024-08-16-19-13-21 199.. gh-issue: 123067 200.. nonce: Nx9O4R 201.. section: Library 202 203Fix quadratic complexity in parsing ``"``-quoted cookie values with 204backslashes by :mod:`http.cookies`. 205 206.. 207 208.. date: 2024-08-14-10-41-11 209.. gh-issue: 122981 210.. nonce: BHV0Z9 211.. section: Library 212 213Fix :func:`inspect.getsource` for generated classes with Python base classes 214(e.g. enums). 215 216.. 217 218.. date: 2024-08-11-14-23-07 219.. gh-issue: 122903 220.. nonce: xktZta 221.. section: Library 222 223``zipfile.Path.glob`` now correctly matches directories instead of silently 224omitting them. 225 226.. 227 228.. date: 2024-08-11-14-08-04 229.. gh-issue: 122905 230.. nonce: 7tDsxA 231.. section: Library 232 233:class:`zipfile.Path` objects now sanitize names from the zipfile. 234 235.. 236 237.. date: 2024-08-08-15-05-58 238.. gh-issue: 122695 239.. nonce: f7pwBv 240.. section: Library 241 242Fixed double-free when using :func:`gc.get_referents` with a freed 243:class:`asyncio.Future` iterator. 244 245.. 246 247.. date: 2024-08-07-17-41-16 248.. gh-issue: 116263 249.. nonce: EcXir0 250.. section: Library 251 252:class:`logging.handlers.RotatingFileHandler` no longer rolls over empty log 253files. 254 255.. 256 257.. date: 2024-08-07-14-12-19 258.. gh-issue: 105376 259.. nonce: QbGPdE 260.. section: Library 261 262Restore the deprecated :mod:`logging` ``warn()`` method. It was removed in 263Python 3.13 alpha 1. Keep the deprecated ``warn()`` method in Python 3.13. 264Patch by Victor Stinner. 265 266.. 267 268.. date: 2024-08-06-18-07-19 269.. gh-issue: 122744 270.. nonce: kCzNDI 271.. section: Library 272 273Bump the version of pip bundled in ensurepip to version 24.2. 274 275.. 276 277.. date: 2024-08-04-14-07-18 278.. gh-issue: 118814 279.. nonce: uiyks1 280.. section: Library 281 282Fix the :class:`typing.TypeVar` constructor when name is passed by keyword. 283 284.. 285 286.. date: 2024-07-31-20-43-21 287.. gh-issue: 122478 288.. nonce: sCU2Le 289.. section: Library 290 291Remove internal frames from tracebacks shown in 292:class:`code.InteractiveInterpreter` with non-default 293:func:`sys.excepthook`. Save correct tracebacks in 294:attr:`sys.last_traceback` and update ``__traceback__`` attribute of 295:attr:`sys.last_value` and :attr:`sys.last_exc`. 296 297.. 298 299.. date: 2024-07-31-15-08-42 300.. gh-issue: 116622 301.. nonce: aKxIQA 302.. section: Library 303 304On Android, the ``FICLONE`` and ``FICLONERANGE`` constants are no longer 305exposed by :mod:`fcntl`, as these ioctls are blocked by SELinux. 306 307.. 308 309.. date: 2024-07-31-14-55-41 310.. gh-issue: 82378 311.. nonce: eZvYmR 312.. section: Library 313 314Make sure that the new :term:`REPL` interprets :data:`sys.tracebacklimit` in 315the same way that the classic REPL did. 316 317.. 318 319.. date: 2024-07-30-21-29-30 320.. gh-issue: 122334 321.. nonce: LeoE1x 322.. section: Library 323 324Fix crash when importing :mod:`ssl` after the main interpreter restarts. 325 326.. 327 328.. date: 2024-07-30-14-46-16 329.. gh-issue: 87320 330.. nonce: -Yk1wb 331.. section: Library 332 333In :class:`code.InteractiveInterpreter`, handle exceptions caused by calling 334a non-default :func:`sys.excepthook`. Before, the exception bubbled up to 335the caller, ending the :term:`REPL`. 336 337.. 338 339.. date: 2024-07-27-16-10-41 340.. gh-issue: 121650 341.. nonce: nf6oc9 342.. section: Library 343 344:mod:`email` headers with embedded newlines are now quoted on output. The 345:mod:`~email.generator` will now refuse to serialize (write) headers that 346are unsafely folded or delimited; see 347:attr:`~email.policy.Policy.verify_generated_headers`. (Contributed by Bas 348Bloemsaat and Petr Viktorin in :gh:`121650`.) 349 350.. 351 352.. date: 2024-07-23-10-59-38 353.. gh-issue: 121723 354.. nonce: iJEf7e 355.. section: Library 356 357Make :func:`logging.config.dictConfig` accept any object implementing the 358Queue public API. See the :ref:`queue configuration <configure-queue>` 359section for details. Patch by Bénédikt Tran. 360 361.. 362 363.. date: 2024-07-21-10-45-24 364.. gh-issue: 122081 365.. nonce: dNrYMq 366.. section: Library 367 368Fix a crash in the :func:`!decimal.IEEEContext` optional function available 369via the ``EXTRA_FUNCTIONALITY`` configuration flag. 370 371.. 372 373.. date: 2024-07-16-20-49-07 374.. gh-issue: 121804 375.. nonce: gYN-In 376.. section: Library 377 378Correctly show error locations, when :exc:`SyntaxError` raised in new repl. 379Patch by Sergey B Kirpichev. 380 381.. 382 383.. date: 2024-06-29-15-23-26 384.. gh-issue: 121151 385.. nonce: HeLEvq 386.. section: Library 387 388Fix wrapping of long usage text of arguments inside a mutually exclusive 389group in :mod:`argparse`. 390 391.. 392 393.. date: 2023-12-12-15-19-58 394.. gh-issue: 108172 395.. nonce: KyDPuG 396.. section: Library 397 398``webbrowser`` honors OS preferred browser on Linux when its desktop entry 399name contains the text of a known browser name. 400 401.. 402 403.. date: 2023-09-19-17-56-24 404.. gh-issue: 109109 405.. nonce: WJvvX2 406.. section: Library 407 408You can now get the raw TLS certificate chains from TLS connections via 409:meth:`ssl.SSLSocket.get_verified_chain` and 410:meth:`ssl.SSLSocket.get_unverified_chain` methods. 411 412Contributed by Mateusz Nowak. 413 414.. 415 416.. date: 2024-06-16-21-42-45 417.. gh-issue: 120083 418.. nonce: nczuyv 419.. section: IDLE 420 421Add explicit black IDLE Hovertip foreground color needed for recent macOS. 422Fixes Sonoma showing unreadable white on pale yellow. Patch by John 423Riggles. 424 425.. 426 427.. date: 2024-09-06-19-23-44 428.. gh-issue: 120221 429.. nonce: giJEDT 430.. section: Core and Builtins 431 432asyncio REPL is now again properly recognizing KeyboardInterrupts. Display 433of exceptions raised in secondary threads is fixed. 434 435.. 436 437.. date: 2024-09-06-14-13-01 438.. gh-issue: 119310 439.. nonce: WQxyDF 440.. section: Core and Builtins 441 442Allow the new interactive shell to read history files written with the 443editline library that use unicode-escaped entries. Patch by aorcajo and 444Łukasz Langa. 445 446.. 447 448.. date: 2024-09-03-13-34-35 449.. gh-issue: 123572 450.. nonce: uuqoYV 451.. section: Core and Builtins 452 453Fix key mappings for various F-keys in Windows for the new REPL. Patch by 454devdanzin 455 456.. 457 458.. date: 2024-09-02-17-32-15 459.. gh-issue: 119034 460.. nonce: HYh5Vj 461.. section: Core and Builtins 462 463Change ``<page up>`` and ``<page down>`` keys of the Python REPL to history 464search forward/backward. Patch by Victor Stinner. 465 466.. 467 468.. date: 2024-09-01-00-02-05 469.. gh-issue: 123545 470.. nonce: 8nQNbL 471.. section: Core and Builtins 472 473Fix a double decref in rare cases on experimental JIT builds. 474 475.. 476 477.. date: 2024-08-29-19-46-07 478.. gh-issue: 123484 479.. nonce: rjUn_F 480.. section: Core and Builtins 481 482Fix ``_Py_DebugOffsets`` for long objects to be relative to the start of the 483object rather than the start of a subobject. 484 485.. 486 487.. date: 2024-08-27-13-16-40 488.. gh-issue: 123344 489.. nonce: 56Or78 490.. section: Core and Builtins 491 492Add AST optimizations for type parameter defaults. 493 494.. 495 496.. date: 2024-08-26-00-58-26 497.. gh-issue: 123321 498.. nonce: ApxcnE 499.. section: Core and Builtins 500 501Prevent Parser/myreadline race condition from segfaulting on multi-threaded 502use. Patch by Bar Harel and Amit Wienner. 503 504.. 505 506.. date: 2024-08-25-18-27-49 507.. gh-issue: 123177 508.. nonce: yLuyqE 509.. section: Core and Builtins 510 511Fix a bug causing stray prompts to appear in the middle of wrapped lines in 512the new REPL. 513 514.. 515 516.. date: 2024-08-25-10-54-22 517.. gh-issue: 122982 518.. nonce: KLD91q 519.. section: Core and Builtins 520 521Extend the deprecation period for bool inversion (``~``) by two years. 522 523.. 524 525.. date: 2024-08-23-18-31-10 526.. gh-issue: 123275 527.. nonce: DprIrj 528.. section: Core and Builtins 529 530Support :option:`-X gil=1 <-X>` and :envvar:`PYTHON_GIL=1 <PYTHON_GIL>` on 531non-free-threaded builds. 532 533.. 534 535.. date: 2024-08-23-15-59-54 536.. gh-issue: 123177 537.. nonce: OLcaC5 538.. section: Core and Builtins 539 540Deactivate line wrap in the Apple Terminal via a ANSI escape code. Patch by 541Pablo Galindo 542 543.. 544 545.. date: 2024-08-23-13-08-27 546.. gh-issue: 123229 547.. nonce: aHm-dw 548.. section: Core and Builtins 549 550Fix valgrind warning by initializing the f-string buffers to 0 in the 551tokenizer. Patch by Pablo Galindo 552 553.. 554 555.. date: 2024-08-23-11-26-54 556.. gh-issue: 122298 557.. nonce: ZMyln4 558.. section: Core and Builtins 559 560Restore printout of GC stats when ``gc.set_debug(gc.DEBUG_STATS)`` is 561called. This featue was accidentally removed when implementing incremental 562GC. 563 564.. 565 566.. date: 2024-08-21-15-22-53 567.. gh-issue: 121804 568.. nonce: r5K3PS 569.. section: Core and Builtins 570 571Correctly show error locations when a :exc:`SyntaxError` is raised in the 572basic REPL. Patch by Sergey B Kirpichev. 573 574.. 575 576.. date: 2024-08-20-12-29-52 577.. gh-issue: 123142 578.. nonce: 3PXiNb 579.. section: Core and Builtins 580 581Fix too-wide source location in exception tracebacks coming from broken 582iterables in comprehensions. 583 584.. 585 586.. date: 2024-08-20-11-09-16 587.. gh-issue: 123048 588.. nonce: 2TISpv 589.. section: Core and Builtins 590 591Fix a bug where pattern matching code could emit a :opcode:`JUMP_FORWARD` 592with no source location. 593 594.. 595 596.. date: 2024-08-18-18-25-54 597.. gh-issue: 123123 598.. nonce: 0ZcaEB 599.. section: Core and Builtins 600 601Fix displaying :exc:`SyntaxError` exceptions covering multiple lines. Patch 602by Pablo Galindo 603 604.. 605 606.. date: 2024-08-17-17-26-25 607.. gh-issue: 123083 608.. nonce: 9xWLJ- 609.. section: Core and Builtins 610 611Fix a potential use-after-free in ``STORE_ATTR_WITH_HINT``. 612 613.. 614 615.. date: 2024-08-15-19-28-43 616.. gh-issue: 123022 617.. nonce: m3EF9E 618.. section: Core and Builtins 619 620Fix crash in free-threaded build when calling :c:func:`Py_Initialize` from a 621non-main thread. 622 623.. 624 625.. date: 2024-08-10-12-44-03 626.. gh-issue: 122888 627.. nonce: TUyu9r 628.. section: Core and Builtins 629 630Fix crash on certain calls to ``str()`` with positional arguments of the 631wrong type. Patch by Jelle Zijlstra. 632 633.. 634 635.. date: 2024-08-05-19-04-06 636.. gh-issue: 116622 637.. nonce: 3LWUzE 638.. section: Core and Builtins 639 640Fix Android stdout and stderr messages being truncated or lost. 641 642.. 643 644.. date: 2024-08-01-19-13-58 645.. gh-issue: 122527 646.. nonce: eztso6 647.. section: Core and Builtins 648 649Fix a crash that occurred when a ``PyStructSequence`` was deallocated after 650its type's dictionary was cleared by the GC. The type's 651:c:member:`~PyTypeObject.tp_basicsize` now accounts for non-sequence fields 652that aren't included in the :c:macro:`Py_SIZE` of the sequence. 653 654.. 655 656.. date: 2024-07-30-11-41-35 657.. gh-issue: 122445 658.. nonce: Rq0bjS 659.. section: Core and Builtins 660 661Add only fields which are modified via self.* to 662:attr:`~type.__static_attributes__`. 663 664.. 665 666.. date: 2024-06-19-21-34-21 667.. gh-issue: 98442 668.. nonce: cqhjkN 669.. section: Core and Builtins 670 671Fix too wide source locations of the cleanup instructions of a with 672statement. 673 674.. 675 676.. date: 2024-06-05-18-29-18 677.. gh-issue: 93691 678.. nonce: 6OautB 679.. section: Core and Builtins 680 681Fix source locations of instructions generated for with statements. 682 683.. 684 685.. date: 2024-06-05-10-32-44 686.. gh-issue: 120097 687.. nonce: 9S2klk 688.. section: Core and Builtins 689 690``FrameLocalsProxy`` now subclasses ``collections.abc.Mapping`` and can be 691matched as a mapping in ``match`` statements 692 693.. 694 695.. date: 2024-08-06-14-23-11 696.. gh-issue: 122728 697.. nonce: l-fQ-v 698.. section: C API 699 700Fix :c:func:`PyEval_GetLocals` to avoid :exc:`SystemError` ("bad argument to 701internal function"). Patch by Victor Stinner. 702 703.. 704 705.. date: 2024-09-04-12-01-43 706.. gh-issue: 123418 707.. nonce: ynzspB 708.. section: Build 709 710Updated Android build to use OpenSSL 3.0.15. 711 712.. 713 714.. date: 2024-08-24-19-09-31 715.. gh-issue: 123297 716.. nonce: fdtXoe 717.. section: Build 718 719Propagate the value of ``LDFLAGS`` to ``LDCXXSHARED`` in :mod:`sysconfig`. 720Patch by Pablo Galindo 721 722.. 723 724.. date: 2024-08-07-00-20-18 725.. gh-issue: 116622 726.. nonce: U9cxHM 727.. section: Build 728 729Rename build variable ``MODULE_LDFLAGS`` back to ``LIBPYTHON``, as it's used 730by package build systems (e.g. Meson). 731 732.. 733 734.. date: 2024-08-02-12-59-15 735.. gh-issue: 118943 736.. nonce: vZQtET 737.. section: Build 738 739Fix an issue where the experimental JIT could be built several times by the 740``make regen-all`` target, leading to possible race conditions on heavily 741parallelized builds. 742 743.. 744 745.. date: 2024-06-18-15-28-25 746.. gh-issue: 118943 747.. nonce: aie7nn 748.. section: Build 749 750Fix a possible race condition affecting parallel builds configured with 751``--enable-experimental-jit``, in which :exc:`FileNotFoundError` could be 752caused by another process already moving ``jit_stencils.h.new`` to 753``jit_stencils.h``. 754