1.. bpo: 46347 2.. date: 2022-01-11-13-57-00 3.. nonce: Gd8M-S 4.. release date: 2022-01-13 5.. section: Core and Builtins 6 7Fix memory leak in PyEval_EvalCodeEx. 8 9.. 10 11.. bpo: 46289 12.. date: 2022-01-07-23-32-03 13.. nonce: NnjpVc 14.. section: Core and Builtins 15 16ASDL declaration of ``FormattedValue`` has changed to reflect ``conversion`` 17field is not optional. 18 19.. 20 21.. bpo: 46237 22.. date: 2022-01-07-19-33-05 23.. nonce: 9A6Hpq 24.. section: Core and Builtins 25 26Fix the line number of tokenizer errors inside f-strings. Patch by Pablo 27Galindo. 28 29.. 30 31.. bpo: 46006 32.. date: 2022-01-05-17-13-47 33.. nonce: hdH5Vn 34.. section: Core and Builtins 35 36Fix a regression when a type method like ``__init__()`` is modified in a 37subinterpreter. Fix a regression in ``_PyUnicode_EqualToASCIIId()`` and type 38``update_slot()``. Revert the change which made the Unicode dictionary of 39interned strings compatible with subinterpreters: the internal interned 40dictionary is shared again by all interpreters. Patch by Victor Stinner. 41 42.. 43 44.. bpo: 46085 45.. date: 2021-12-30-00-23-41 46.. nonce: bDuJqu 47.. section: Core and Builtins 48 49Fix iterator cache mechanism of :class:`OrderedDict`. 50 51.. 52 53.. bpo: 46110 54.. date: 2021-12-18-02-37-07 55.. nonce: B6hAfu 56.. section: Core and Builtins 57 58Add a maximum recursion check to the PEG parser to avoid stack overflow. 59Patch by Pablo Galindo 60 61.. 62 63.. bpo: 46054 64.. date: 2021-12-12-05-30-21 65.. nonce: 2P-foG 66.. section: Core and Builtins 67 68Fix parser error when parsing non-utf8 characters in source files. Patch by 69Pablo Galindo. 70 71.. 72 73.. bpo: 46042 74.. date: 2021-12-11-17-40-34 75.. nonce: aqYxku 76.. section: Core and Builtins 77 78Improve the location of the caret in :exc:`SyntaxError` exceptions emitted 79by the symbol table. Patch by Pablo Galindo. 80 81.. 82 83.. bpo: 46025 84.. date: 2021-12-09-11-41-35 85.. nonce: pkEvW9 86.. section: Core and Builtins 87 88Fix a crash in the :mod:`atexit` module involving functions that unregister 89themselves before raising exceptions. Patch by Pablo Galindo. 90 91.. 92 93.. bpo: 46009 94.. date: 2021-12-08-11-06-53 95.. nonce: cL8pH0 96.. section: Core and Builtins 97 98Restore behavior from 3.9 and earlier when sending non-None to newly started 99generator. In 3.9 this did not affect the state of the generator. In 3.10.0 100and 3.10.1 ``gen_func().send(0)`` is equivalent to 101``gen_func().throw(TypeError(...)`` which exhausts the generator. In 3.10.2 102onward, the behavior has been reverted to that of 3.9. 103 104.. 105 106.. bpo: 46000 107.. date: 2021-12-07-11-42-44 108.. nonce: v_ru3k 109.. section: Core and Builtins 110 111Improve compatibility of the :mod:`curses` module with NetBSD curses. 112 113.. 114 115.. bpo: 46004 116.. date: 2021-12-07-11-24-24 117.. nonce: TTEU1p 118.. section: Core and Builtins 119 120Fix the :exc:`SyntaxError` location for errors involving for loops with 121invalid targets. Patch by Pablo Galindo 122 123.. 124 125.. bpo: 42918 126.. date: 2021-12-06-15-32-12 127.. nonce: Czpgtg 128.. section: Core and Builtins 129 130Fix bug where the built-in :func:`compile` function did not always raise a 131:exc:`SyntaxError` when passed multiple statements in 'single' mode. Patch 132by Weipeng Hong. 133 134.. 135 136.. bpo: 40479 137.. date: 2022-01-07-15-20-19 138.. nonce: EKfr3F 139.. section: Library 140 141Fix :mod:`hashlib` *usedforsecurity* option to work correctly with OpenSSL 1423.0.0 in FIPS mode. 143 144.. 145 146.. bpo: 46070 147.. date: 2022-01-07-13-51-22 148.. nonce: -axLUW 149.. section: Library 150 151Fix possible segfault when importing the :mod:`asyncio` module from 152different sub-interpreters in parallel. Patch by Erlend E. Aasland. 153 154.. 155 156.. bpo: 46278 157.. date: 2022-01-06-13-38-00 158.. nonce: wILA80 159.. section: Library 160 161Reflect ``context`` argument in ``AbstractEventLoop.call_*()`` methods. Loop 162implementations already support it. 163 164.. 165 166.. bpo: 46239 167.. date: 2022-01-03-12-59-20 168.. nonce: ySVSEy 169.. section: Library 170 171Improve error message when importing :mod:`asyncio.windows_events` on 172non-Windows. 173 174.. 175 176.. bpo: 20369 177.. date: 2021-12-17-12-06-40 178.. nonce: zzLuBz 179.. section: Library 180 181:func:`concurrent.futures.wait` no longer blocks forever when given 182duplicate Futures. Patch by Kumar Aditya. 183 184.. 185 186.. bpo: 46105 187.. date: 2021-12-16-14-30-36 188.. nonce: pprB1K 189.. section: Library 190 191Honor spec when generating requirement specs with urls and extras 192(importlib_metadata 4.8.3). 193 194.. 195 196.. bpo: 26952 197.. date: 2021-12-14-13-18-45 198.. nonce: hjhISq 199.. section: Library 200 201:mod:`argparse` raises :exc:`ValueError` with clear message when trying to 202render usage for an empty mutually-exclusive group. Previously it raised a 203cryptic :exc:`IndexError`. 204 205.. 206 207.. bpo: 27718 208.. date: 2021-12-11-22-51-30 209.. nonce: MgQiGl 210.. section: Library 211 212Fix help for the :mod:`signal` module. Some functions (e.g. ``signal()`` and 213``getsignal()``) were omitted. 214 215.. 216 217.. bpo: 46032 218.. date: 2021-12-11-15-45-07 219.. nonce: HmciLT 220.. section: Library 221 222The ``registry()`` method of :func:`functools.singledispatch` functions 223checks now the first argument or the first parameter annotation and raises a 224TypeError if it is not supported. Previously unsupported "types" were 225ignored (e.g. ``typing.List[int]``) or caused an error at calling time (e.g. 226``list[int]``). 227 228.. 229 230.. bpo: 46018 231.. date: 2021-12-09-00-44-42 232.. nonce: hkTI7v 233.. section: Library 234 235Ensure that :func:`math.expm1` does not raise on underflow. 236 237.. 238 239.. bpo: 45755 240.. date: 2021-12-07-21-55-22 241.. nonce: bRqKGa 242.. section: Library 243 244:mod:`typing` generic aliases now reveal the class attributes of the 245original generic class when passed to ``dir()``. This was the behavior up to 246Python 3.6, but was changed in 3.7-3.9. 247 248.. 249 250.. bpo: 13236 251.. date: 2021-11-30-13-52-02 252.. nonce: FmJIkO 253.. section: Library 254 255:class:`unittest.TextTestResult` and :class:`unittest.TextTestRunner` flush 256now the output stream more often. 257 258.. 259 260.. bpo: 42378 261.. date: 2021-07-25-08-17-55 262.. nonce: WIhUZK 263.. section: Library 264 265Fixes the issue with log file being overwritten when 266:class:`logging.FileHandler` is used in :mod:`atexit` with *filemode* set to 267``'w'``. Note this will cause the message in *atexit* not being logged if 268the log stream is already closed due to shutdown of logging. 269 270.. 271 272.. bpo: 46120 273.. date: 2021-12-21-12-45-57 274.. nonce: PE0DmJ 275.. section: Documentation 276 277State that ``|`` is preferred for readability over ``Union`` in the 278:mod:`typing` docs. 279 280.. 281 282.. bpo: 46040 283.. date: 2021-12-11-20-03-09 284.. nonce: qrsG0C 285.. section: Documentation 286 287Fix removal Python version for ``@asyncio.coroutine``, the correct value is 2883.11. 289 290.. 291 292.. bpo: 19737 293.. date: 2021-11-28-22-43-21 294.. nonce: cOOubB 295.. section: Documentation 296 297Update the documentation for the :func:`globals` function. 298 299.. 300 301.. bpo: 45840 302.. date: 2021-11-19-02-02-32 303.. nonce: A51B2S 304.. section: Documentation 305 306Improve cross-references in the documentation for the data model. 307 308.. 309 310.. bpo: 46205 311.. date: 2022-01-07-14-06-12 312.. nonce: dnc2OC 313.. section: Tests 314 315Fix hang in runtest_mp due to race condition 316 317.. 318 319.. bpo: 46263 320.. date: 2022-01-06-15-45-34 321.. nonce: bJXek6 322.. section: Tests 323 324Fix test_capi on FreeBSD 14-dev: instruct jemalloc to not fill freed memory 325with junk byte. 326 327.. 328 329.. bpo: 46150 330.. date: 2021-12-23-13-42-15 331.. nonce: RhtADs 332.. section: Tests 333 334Now ``fakename`` in ``test_pathlib.PosixPathTest.test_expanduser`` is 335checked to be non-existent. 336 337.. 338 339.. bpo: 46129 340.. date: 2021-12-19-12-20-57 341.. nonce: I3MunH 342.. section: Tests 343 344Rewrite ``asyncio.locks`` tests with 345:class:`unittest.IsolatedAsyncioTestCase` usage. 346 347.. 348 349.. bpo: 46114 350.. date: 2021-12-17-14-46-19 351.. nonce: 9iyZ_9 352.. section: Tests 353 354Fix test case for OpenSSL 3.0.1 version. OpenSSL 3.0 uses ``0xMNN00PP0L``. 355 356.. 357 358.. bpo: 46263 359.. date: 2022-01-05-02-58-10 360.. nonce: xiv8NU 361.. section: Build 362 363``configure`` no longer sets ``MULTIARCH`` on FreeBSD platforms. 364 365.. 366 367.. bpo: 46106 368.. date: 2021-12-20-07-10-41 369.. nonce: 5qcv3L 370.. section: Build 371 372Updated OpenSSL to 1.1.1m in Windows builds, macOS installer builds, and CI. 373Patch by Kumar Aditya. 374 375.. 376 377.. bpo: 40477 378.. date: 2022-01-02-21-56-53 379.. nonce: W3nnM6 380.. section: macOS 381 382The Python Launcher app for macOS now properly launches scripts and, if 383necessary, the Terminal app when running on recent macOS releases. 384 385.. 386 387.. bpo: 46236 388.. date: 2022-01-05-10-16-16 389.. nonce: pcmVQw 390.. section: C API 391 392Fix a bug in :c:func:`PyFunction_GetAnnotations` that caused it to return a 393``tuple`` instead of a ``dict``. 394