| .. bpo: 45773 |
| .. date: 2022-02-01-14-30-56 |
| .. nonce: Up77LD |
| .. release date: 2022-02-03 |
| .. section: Core and Builtins |
| |
| Remove two invalid "peephole" optimizations from the bytecode compiler. |
| |
| .. |
| |
| .. bpo: 46564 |
| .. date: 2022-02-01-10-23-21 |
| .. nonce: 6Xc2_H |
| .. section: Core and Builtins |
| |
| Do not create frame objects when creating :class:`super` object. Patch by |
| Kumar Aditya. |
| |
| .. |
| |
| .. bpo: 45885 |
| .. date: 2022-02-01-01-17-28 |
| .. nonce: CjyNf_ |
| .. section: Core and Builtins |
| |
| Added more fined-grained specialization failure stats regarding the |
| ``COMPARE_OP`` bytecode. |
| |
| .. |
| |
| .. bpo: 44977 |
| .. date: 2022-01-30-18-23-08 |
| .. nonce: BQV_zS |
| .. section: Core and Builtins |
| |
| The delegation of :func:`int` to :meth:`__trunc__` is now deprecated. |
| Calling ``int(a)`` when ``type(a)`` implements :meth:`__trunc__` but not |
| :meth:`__int__` or :meth:`__index__` now raises a :exc:`DeprecationWarning`. |
| |
| .. |
| |
| .. bpo: 46458 |
| .. date: 2022-01-27-10-49-34 |
| .. nonce: 5Gm3Gv |
| .. section: Core and Builtins |
| |
| Reorder code emitted by the compiler for a :keyword:`try`-:keyword:`except` |
| block so that the :keyword:`else` block's code immediately follows the |
| :keyword:`try` body (without a jump). This is more optimal for the happy |
| path. |
| |
| .. |
| |
| .. bpo: 46527 |
| .. date: 2022-01-25-19-34-55 |
| .. nonce: mQLNPk |
| .. section: Core and Builtins |
| |
| Allow passing ``iterable`` as a keyword argument to :func:`enumerate` again. |
| Patch by Jelle Zijlstra. |
| |
| .. |
| |
| .. bpo: 46528 |
| .. date: 2022-01-25-17-40-07 |
| .. nonce: 2Qmni9 |
| .. section: Core and Builtins |
| |
| Replace several stack manipulation instructions (``DUP_TOP``, |
| ``DUP_TOP_TWO``, ``ROT_TWO``, ``ROT_THREE``, ``ROT_FOUR``, and ``ROT_N``) |
| with new :opcode:`COPY` and :opcode:`SWAP` instructions. |
| |
| .. |
| |
| .. bpo: 46329 |
| .. date: 2022-01-25-11-44-17 |
| .. nonce: SEhynE |
| .. section: Core and Builtins |
| |
| Use two or three bytecodes to implement most calls. |
| |
| Calls without named arguments are implemented as a sequence of two |
| instructions: ``PRECALL; CALL``. Calls with named arguments are implemented |
| as a sequence of three instructions: ``PRECALL; KW_NAMES; CALL``. There are |
| two different ``PRECALL`` instructions: ``PRECALL_FUNTION`` and |
| ``PRECALL_METHOD``. The latter pairs with ``LOAD_METHOD``. |
| |
| This partition into pre-call and call allows better specialization, and thus |
| better performance ultimately. |
| |
| There is no change in semantics. |
| |
| .. |
| |
| .. bpo: 46503 |
| .. date: 2022-01-24-21-24-41 |
| .. nonce: 4UrPsE |
| .. section: Core and Builtins |
| |
| Fix an assert when parsing some invalid \N escape sequences in f-strings. |
| |
| .. |
| |
| .. bpo: 46431 |
| .. date: 2022-01-24-16-58-01 |
| .. nonce: N6mKAx |
| .. section: Core and Builtins |
| |
| Improve error message on invalid calls to |
| :meth:`BaseExceptionGroup.__new__`. |
| |
| .. |
| |
| .. bpo: 46476 |
| .. date: 2022-01-24-15-39-34 |
| .. nonce: cvP1Mr |
| .. section: Core and Builtins |
| |
| Fix memory leak in code objects generated by deepfreeze. Patch by Kumar |
| Aditya. |
| |
| .. |
| |
| .. bpo: 46481 |
| .. date: 2022-01-23-06-56-33 |
| .. nonce: X_FfnB |
| .. section: Core and Builtins |
| |
| Speed up calls to :meth:`weakref.ref.__call__` by using the :pep:`590` |
| ``vectorcall`` calling convention. Patch by Dong-hee Na. |
| |
| .. |
| |
| .. bpo: 46417 |
| .. date: 2022-01-22-14-39-23 |
| .. nonce: 3U5SfN |
| .. section: Core and Builtins |
| |
| Fix a race condition on setting a type ``__bases__`` attribute: the internal |
| function ``add_subclass()`` now gets the ``PyTypeObject.tp_subclasses`` |
| member after calling :c:func:`PyWeakref_NewRef` which can trigger a garbage |
| collection which can indirectly modify ``PyTypeObject.tp_subclasses``. Patch |
| by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 46417 |
| .. date: 2022-01-21-12-24-14 |
| .. nonce: i3IqMf |
| .. section: Core and Builtins |
| |
| ``python -X showrefcount`` now shows the total reference count after |
| clearing and destroyed the main Python interpreter. Previously, it was shown |
| before. Patch by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 43683 |
| .. date: 2022-01-20-17-13-49 |
| .. nonce: BqQ26Z |
| .. section: Core and Builtins |
| |
| Add ASYNC_GEN_WRAP opcode to wrap the value to be yielded in async |
| generators. Removes the need to special case async generators in the |
| ``YIELD_VALUE`` instruction. |
| |
| .. |
| |
| .. bpo: 46407 |
| .. date: 2022-01-17-23-12-01 |
| .. nonce: 2_5a7R |
| .. section: Core and Builtins |
| |
| Optimize some modulo operations in ``Objects/longobject.c``. Patch by |
| Jeremiah Vivian. |
| |
| .. |
| |
| .. bpo: 46409 |
| .. date: 2022-01-17-12-57-27 |
| .. nonce: HouS6m |
| .. section: Core and Builtins |
| |
| Add new ``RETURN_GENERATOR`` bytecode to make generators. Simplifies calling |
| Python functions in the VM, as they no longer any need to special case |
| generator functions. |
| |
| Also add ``JUMP_NO_INTERRUPT`` bytecode that acts like ``JUMP_ABSOLUTE``, |
| but does not check for interrupts. |
| |
| .. |
| |
| .. bpo: 46406 |
| .. date: 2022-01-16-15-40-11 |
| .. nonce: g0mke- |
| .. section: Core and Builtins |
| |
| The integer division ``//`` implementation has been optimized to better let |
| the compiler understand its constraints. It can be 20% faster on the amd64 |
| platform when dividing an int by a value smaller than ``2**30``. |
| |
| .. |
| |
| .. bpo: 46383 |
| .. date: 2022-01-14-20-55-34 |
| .. nonce: v8MTl4 |
| .. section: Core and Builtins |
| |
| Fix invalid signature of ``_zoneinfo``'s ``module_free`` function to resolve |
| a crash on wasm32-emscripten platform. |
| |
| .. |
| |
| .. bpo: 46361 |
| .. date: 2022-01-12-17-15-17 |
| .. nonce: mgI_j_ |
| .. section: Core and Builtins |
| |
| Ensure that "small" integers created by :meth:`int.from_bytes` and |
| :class:`decimal.Decimal` are properly cached. |
| |
| .. |
| |
| .. bpo: 46161 |
| .. date: 2021-12-23-12-32-45 |
| .. nonce: EljBmu |
| .. section: Core and Builtins |
| |
| Fix the class building error when the arguments are constants and |
| CALL_FUNCTION_EX is used. |
| |
| .. |
| |
| .. bpo: 46028 |
| .. date: 2021-12-16-15-04-58 |
| .. nonce: zfWacB |
| .. section: Core and Builtins |
| |
| Fixes calculation of :data:`sys._base_executable` when inside a virtual |
| environment that uses symlinks with different binary names than the base |
| environment provides. |
| |
| .. |
| |
| .. bpo: 46091 |
| .. date: 2021-12-16-00-24-00 |
| .. nonce: rJ_e_e |
| .. section: Core and Builtins |
| |
| Correctly calculate indentation levels for lines with whitespace character |
| that are ended by line continuation characters. Patch by Pablo Galindo |
| |
| .. |
| |
| .. bpo: 30512 |
| .. date: 2021-12-12-00-49-19 |
| .. nonce: nU9E9V |
| .. section: Core and Builtins |
| |
| Add CAN Socket support for NetBSD. |
| |
| .. |
| |
| .. bpo: 46045 |
| .. date: 2021-12-11-11-36-48 |
| .. nonce: sfThay |
| .. section: Core and Builtins |
| |
| Do not use POSIX semaphores on NetBSD |
| |
| .. |
| |
| .. bpo: 44024 |
| .. date: 2021-05-04-21-55-49 |
| .. nonce: M9m8Qd |
| .. section: Core and Builtins |
| |
| Improve the exc:`TypeError` message for non-string second arguments passed |
| to the built-in functions :func:`getattr` and :func:`hasattr`. Patch by Géry |
| Ogam. |
| |
| .. |
| |
| .. bpo: 46624 |
| .. date: 2022-02-03-12-07-41 |
| .. nonce: f_Qqh0 |
| .. section: Library |
| |
| Restore support for non-integer arguments of :func:`random.randrange` and |
| :func:`random.randint`. |
| |
| .. |
| |
| .. bpo: 46591 |
| .. date: 2022-01-31-15-40-38 |
| .. nonce: prBD1M |
| .. section: Library |
| |
| Make the IDLE doc URL on the About IDLE dialog clickable. |
| |
| .. |
| |
| .. bpo: 46565 |
| .. date: 2022-01-28-19-48-31 |
| .. nonce: bpZXO4 |
| .. section: Library |
| |
| Remove loop variables that are leaking into modules' namespaces. |
| |
| .. |
| |
| .. bpo: 46553 |
| .. date: 2022-01-28-08-47-53 |
| .. nonce: f7Uc96 |
| .. section: Library |
| |
| In :func:`typing.get_type_hints`, support evaluating bare stringified |
| ``ClassVar`` annotations. Patch by Gregory Beauregard. |
| |
| .. |
| |
| .. bpo: 46544 |
| .. date: 2022-01-27-13-30-02 |
| .. nonce: oFDVWj |
| .. section: Library |
| |
| Don't leak ``x`` & ``uspace`` intermediate vars in |
| :class:`textwrap.TextWrapper`. |
| |
| .. |
| |
| .. bpo: 46487 |
| .. date: 2022-01-27-12-24-38 |
| .. nonce: UDkN2z |
| .. section: Library |
| |
| Add the ``get_write_buffer_limits`` method to |
| :class:`asyncio.transports.WriteTransport` and to the SSL transport. |
| |
| .. |
| |
| .. bpo: 45173 |
| .. date: 2022-01-27-11-16-59 |
| .. nonce: wreRF2 |
| .. section: Library |
| |
| Note the configparser deprecations will be removed in Python 3.12. |
| |
| .. |
| |
| .. bpo: 45162 |
| .. date: 2022-01-26-23-58-48 |
| .. nonce: 4Jmg_j |
| .. section: Library |
| |
| The deprecated :mod:`unittest` APIs removed in 3.11a1 have been temporarily |
| restored to be removed in 3.12 while cleanups in external projects go in. |
| |
| .. |
| |
| .. bpo: 46539 |
| .. date: 2022-01-26-20-36-30 |
| .. nonce: 23iW1d |
| .. section: Library |
| |
| In :func:`typing.get_type_hints`, support evaluating stringified |
| ``ClassVar`` and ``Final`` annotations inside ``Annotated``. Patch by |
| Gregory Beauregard. |
| |
| .. |
| |
| .. bpo: 46510 |
| .. date: 2022-01-25-10-59-41 |
| .. nonce: PM5svI |
| .. section: Library |
| |
| Add missing test for :class:`types.TracebackType` and |
| :class:`types.FrameType`. Calculate them directly from the caught exception |
| without calling :func:`sys.exc_info`. |
| |
| .. |
| |
| .. bpo: 46491 |
| .. date: 2022-01-24-23-55-30 |
| .. nonce: jmIKHo |
| .. section: Library |
| |
| Allow :data:`typing.Annotated` to wrap :data:`typing.Final` and |
| :data:`typing.ClassVar`. Patch by Gregory Beauregard. |
| |
| .. |
| |
| .. bpo: 46483 |
| .. date: 2022-01-24-13-00-09 |
| .. nonce: 9XnmKp |
| .. section: Library |
| |
| Remove :meth:`~object.__class_getitem__` from :class:`pathlib.PurePath` as |
| this class was not supposed to be generic. |
| |
| .. |
| |
| .. bpo: 46436 |
| .. date: 2022-01-23-19-37-00 |
| .. nonce: Biz1p9 |
| .. section: Library |
| |
| Fix command-line option ``-d``/``--directory`` in module :mod:`http.server` |
| which is ignored when combined with command-line option ``--cgi``. Patch by |
| Géry Ogam. |
| |
| .. |
| |
| .. bpo: 41403 |
| .. date: 2022-01-23-18-04-45 |
| .. nonce: SgoHqV |
| .. section: Library |
| |
| Make :meth:`mock.patch` raise a :exc:`TypeError` with a relevant error |
| message on invalid arg. Previously it allowed a cryptic |
| :exc:`AttributeError` to escape. |
| |
| .. |
| |
| .. bpo: 46474 |
| .. date: 2022-01-22-14-49-10 |
| .. nonce: eKQhvx |
| .. section: Library |
| |
| In ``importlib.metadata.EntryPoint.pattern``, avoid potential REDoS by |
| limiting ambiguity in consecutive whitespace. |
| |
| .. |
| |
| .. bpo: 46474 |
| .. date: 2022-01-22-14-45-46 |
| .. nonce: 2DUC62 |
| .. section: Library |
| |
| Removed private method from ``importlib.metadata.Path``. Sync with |
| importlib_metadata 4.10.0. |
| |
| .. |
| |
| .. bpo: 46470 |
| .. date: 2022-01-22-13-17-35 |
| .. nonce: MnNhgU |
| .. section: Library |
| |
| Remove unused branch from ``typing._remove_dups_flatten`` |
| |
| .. |
| |
| .. bpo: 46469 |
| .. date: 2022-01-22-05-05-08 |
| .. nonce: plUab5 |
| .. section: Library |
| |
| :mod:`asyncio` generic classes now return :class:`types.GenericAlias` in |
| ``__class_getitem__`` instead of the same class. |
| |
| .. |
| |
| .. bpo: 41906 |
| .. date: 2022-01-21-18-19-45 |
| .. nonce: YBaquj |
| .. section: Library |
| |
| Support passing filter instances in the ``filters`` values of ``handlers`` |
| and ``loggers`` in the dictionary passed to |
| :func:`logging.config.dictConfig`. |
| |
| .. |
| |
| .. bpo: 46422 |
| .. date: 2022-01-20-10-35-50 |
| .. nonce: 1UAEHL |
| .. section: Library |
| |
| Use ``dis.Positions`` in ``dis.Instruction`` instead of a regular ``tuple``. |
| |
| .. |
| |
| .. bpo: 46434 |
| .. date: 2022-01-20-10-35-10 |
| .. nonce: geS-aP |
| .. section: Library |
| |
| :mod:`pdb` now gracefully handles ``help`` when :attr:`__doc__` is missing, |
| for example when run with pregenerated optimized ``.pyc`` files. |
| |
| .. |
| |
| .. bpo: 43869 |
| .. date: 2022-01-18-17-24-21 |
| .. nonce: NayN12 |
| .. section: Library |
| |
| Python uses the same time Epoch on all platforms. Add an explicit unit test |
| to ensure that it's the case. Patch by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 46414 |
| .. date: 2022-01-17-10-00-02 |
| .. nonce: Ld0b_y |
| .. section: Library |
| |
| Add :func:`typing.reveal_type`. Patch by Jelle Zijlstra. |
| |
| .. |
| |
| .. bpo: 40280 |
| .. date: 2022-01-16-14-07-14 |
| .. nonce: LtFHfF |
| .. section: Library |
| |
| :mod:`subprocess` now imports Windows-specific imports when ``msvcrt`` |
| module is available, and POSIX-specific imports on all other platforms. This |
| gives a clean exception when ``_posixsubprocess`` is not available (e.g. |
| Emscripten browser target). |
| |
| .. |
| |
| .. bpo: 40066 |
| .. date: 2022-01-13-11-41-24 |
| .. nonce: 1QuVli |
| .. section: Library |
| |
| ``IntEnum``, ``IntFlag``, and ``StrEnum`` use the mixed-in type for their |
| ``str()`` and ``format()`` output. |
| |
| .. |
| |
| .. bpo: 46316 |
| .. date: 2022-01-09-15-04-56 |
| .. nonce: AMTyd0 |
| .. section: Library |
| |
| Optimize :meth:`pathlib.Path.iterdir` by removing an unnecessary check for |
| special entries. |
| |
| .. |
| |
| .. bpo: 29688 |
| .. date: 2022-01-05-03-21-21 |
| .. nonce: W06bSH |
| .. section: Library |
| |
| Document :meth:`pathlib.Path.absolute` (which has always existed). |
| |
| .. |
| |
| .. bpo: 43012 |
| .. date: 2022-01-05-03-09-29 |
| .. nonce: RVhLIL |
| .. section: Library |
| |
| The pathlib module's obsolete and internal ``_Accessor`` class has been |
| removed to prepare the terrain for upcoming enhancements to the module. |
| |
| .. |
| |
| .. bpo: 46258 |
| .. date: 2022-01-04-18-05-25 |
| .. nonce: DYgwRo |
| .. section: Library |
| |
| Speed up :func:`math.isqrt` for small positive integers by replacing two |
| division steps with a lookup table. |
| |
| .. |
| |
| .. bpo: 46242 |
| .. date: 2022-01-03-16-25-06 |
| .. nonce: f4l_CL |
| .. section: Library |
| |
| Improve error message when creating a new :class:`enum.Enum` type |
| subclassing an existing ``Enum`` with ``_member_names_`` using |
| :meth:`enum.Enum.__call__`. |
| |
| .. |
| |
| .. bpo: 43118 |
| .. date: 2021-12-29-14-42-09 |
| .. nonce: BoVi_5 |
| .. section: Library |
| |
| Fix a bug in :func:`inspect.signature` that was causing it to fail on some |
| subclasses of classes with a ``__text_signature__`` referencing module |
| globals. Patch by Weipeng Hong. |
| |
| .. |
| |
| .. bpo: 26552 |
| .. date: 2021-12-29-13-42-55 |
| .. nonce: 1BqeAn |
| .. section: Library |
| |
| Fixed case where failing :func:`asyncio.ensure_future` did not close the |
| coroutine. Patch by Kumar Aditya. |
| |
| .. |
| |
| .. bpo: 21987 |
| .. date: 2021-12-28-11-55-10 |
| .. nonce: avBK-p |
| .. section: Library |
| |
| Fix an issue with :meth:`tarfile.TarFile.getmember` getting a directory name |
| with a trailing slash. |
| |
| .. |
| |
| .. bpo: 46124 |
| .. date: 2021-12-18-18-41-30 |
| .. nonce: ESPrb7 |
| .. section: Library |
| |
| Update :mod:`zoneinfo` to rely on importlib.resources traversable API. |
| |
| .. |
| |
| .. bpo: 46103 |
| .. date: 2021-12-16-23-42-54 |
| .. nonce: LMnZAN |
| .. section: Library |
| |
| Now :func:`inspect.getmembers` only gets :attr:`__bases__` attribute from |
| class type. Patch by Weipeng Hong. |
| |
| .. |
| |
| .. bpo: 46080 |
| .. date: 2021-12-15-06-29-00 |
| .. nonce: AuQpLt |
| .. section: Library |
| |
| Fix exception in argparse help text generation if a |
| :class:`argparse.BooleanOptionalAction` argument's default is |
| ``argparse.SUPPRESS`` and it has ``help`` specified. Patch by Felix |
| Fontein. |
| |
| .. |
| |
| .. bpo: 44791 |
| .. date: 2021-07-31-23-18-50 |
| .. nonce: 4jFdpO |
| .. section: Library |
| |
| Fix substitution of :class:`~typing.ParamSpec` in |
| :data:`~typing.Concatenate` with different parameter expressions. |
| Substitution with a list of types returns now a tuple of types. Substitution |
| with ``Concatenate`` returns now a ``Concatenate`` with concatenated lists |
| of arguments. |
| |
| .. |
| |
| .. bpo: 46463 |
| .. date: 2022-01-21-21-33-48 |
| .. nonce: fBbdTG |
| .. section: Documentation |
| |
| Fixes :file:`escape4chm.py` script used when building the CHM documentation |
| file |
| |
| .. |
| |
| .. bpo: 43478 |
| .. date: 2022-02-03-00-21-32 |
| .. nonce: 0nfcam |
| .. section: Tests |
| |
| Mocks can no longer be provided as the specs for other Mocks. As a result, |
| an already-mocked object cannot be passed to `mock.Mock()`. This can uncover |
| bugs in tests since these Mock-derived Mocks will always pass certain tests |
| (e.g. isinstance) and builtin assert functions (e.g. |
| assert_called_once_with) will unconditionally pass. |
| |
| .. |
| |
| .. bpo: 46616 |
| .. date: 2022-02-02-18-14-38 |
| .. nonce: URvBtE |
| .. section: Tests |
| |
| Ensures ``test_importlib.test_windows`` cleans up registry keys after |
| completion. |
| |
| .. |
| |
| .. bpo: 44359 |
| .. date: 2022-02-02-02-24-04 |
| .. nonce: kPPSmN |
| .. section: Tests |
| |
| test_ftplib now silently ignores socket errors to prevent logging unhandled |
| threading exceptions. Patch by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 46600 |
| .. date: 2022-02-01-17-13-53 |
| .. nonce: FMCk8Z |
| .. section: Tests |
| |
| Fix test_gdb.test_pycfunction() for Python built with ``clang -Og``. |
| Tolerate inlined functions in the gdb traceback. Patch by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 46542 |
| .. date: 2022-01-31-17-34-13 |
| .. nonce: RTMm1T |
| .. section: Tests |
| |
| Fix a Python crash in test_lib2to3 when using Python built in debug mode: |
| limit the recursion limit. Patch by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 46576 |
| .. date: 2022-01-29-12-37-53 |
| .. nonce: -prRaV |
| .. section: Tests |
| |
| test_peg_generator now disables compiler optimization when testing |
| compilation of its own C extensions to significantly speed up the testing on |
| non-debug builds of CPython. |
| |
| .. |
| |
| .. bpo: 46542 |
| .. date: 2022-01-28-01-17-10 |
| .. nonce: xRLTdj |
| .. section: Tests |
| |
| Fix ``test_json`` tests checking for :exc:`RecursionError`: modify these |
| tests to use ``support.infinite_recursion()``. Patch by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 13886 |
| .. date: 2022-01-17-13-10-04 |
| .. nonce: 5mZH4b |
| .. section: Tests |
| |
| Skip test_builtin PTY tests on non-ASCII characters if the readline module |
| is loaded. The readline module changes input() behavior, but test_builtin is |
| not intented to test the readline module. Patch by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 40280 |
| .. date: 2022-01-16-14-11-57 |
| .. nonce: fNnFfx |
| .. section: Tests |
| |
| Add :func:`test.support.requires_fork` decorators to mark tests that require |
| a working :func:`os.fork`. |
| |
| .. |
| |
| .. bpo: 40280 |
| .. date: 2022-01-14-23-22-41 |
| .. nonce: nHLWoD |
| .. section: Tests |
| |
| Add :func:`test.support.requires_subprocess` decorator to mark tests which |
| require working :mod:`subprocess` module or ``os.spawn*``. The |
| wasm32-emscripten platform has no support for processes. |
| |
| .. |
| |
| .. bpo: 46126 |
| .. date: 2021-12-18-22-23-50 |
| .. nonce: 0LH3Yb |
| .. section: Tests |
| |
| Disable 'descriptions' when running tests internally. |
| |
| .. |
| |
| .. bpo: 46602 |
| .. date: 2022-02-02-02-06-07 |
| .. nonce: 8GaOZ2 |
| .. section: Build |
| |
| Tidied up configure.ac so that conftest.c is truncated rather than appended. |
| This assists in the case where the 'rm' of conftest.c fails to happen |
| between tests. Downstream issues such as a clobbered SOABI can result. |
| |
| .. |
| |
| .. bpo: 46600 |
| .. date: 2022-02-01-14-07-37 |
| .. nonce: NNLnfj |
| .. section: Build |
| |
| Fix the test checking if the C compiler supports ``-Og`` option in the |
| ``./configure`` script to also use ``-Og`` on clang which supports it. Patch |
| by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 38472 |
| .. date: 2022-01-26-22-59-12 |
| .. nonce: RxfLho |
| .. section: Build |
| |
| Fix GCC detection in setup.py when cross-compiling. The C compiler is now |
| run with LC_ALL=C. Previously, the detection failed with a German locale. |
| |
| .. |
| |
| .. bpo: 46513 |
| .. date: 2022-01-25-12-32-37 |
| .. nonce: mPm9B4 |
| .. section: Build |
| |
| :program:`configure` no longer uses ``AC_C_CHAR_UNSIGNED`` macro and |
| ``pyconfig.h`` no longer defines reserved symbol ``__CHAR_UNSIGNED__``. |
| |
| .. |
| |
| .. bpo: 46471 |
| .. date: 2022-01-22-11-06-23 |
| .. nonce: 03snrE |
| .. section: Build |
| |
| Use global singletons for single byte bytes objects in deepfreeze. |
| |
| .. |
| |
| .. bpo: 46443 |
| .. date: 2022-01-20-05-27-07 |
| .. nonce: udCVII |
| .. section: Build |
| |
| Deepfreeze now uses cached small integers as it saves some space for common |
| small integers. |
| |
| .. |
| |
| .. bpo: 46429 |
| .. date: 2022-01-19-04-36-15 |
| .. nonce: y0OtVL |
| .. section: Build |
| |
| Merge all deep-frozen files into one for space savings. Patch by Kumar |
| Aditya. |
| |
| .. |
| |
| .. bpo: 45569 |
| .. date: 2022-01-09-11-24-54 |
| .. nonce: zCIENy |
| .. section: Build |
| |
| The build now defaults to using 30-bit digits for Python integers. |
| Previously either 15-bit or 30-bit digits would be selected, depending on |
| the platform. 15-bit digits may still be selected using the |
| ``--enable-big-digits=15`` option to the ``configure`` script, or by |
| defining ``PYLONG_BITS_IN_DIGIT`` in ``pyconfig.h``. |
| |
| .. |
| |
| .. bpo: 45925 |
| .. date: 2022-01-08-12-43-31 |
| .. nonce: 38F3NO |
| .. section: Build |
| |
| Update Windows installer to use SQLite 3.37.2. |
| |
| .. |
| |
| .. bpo: 43112 |
| .. date: 2021-02-10-17-54-04 |
| .. nonce: H5Lat6 |
| .. section: Build |
| |
| Detect musl libc as a separate SOABI (tagged as ``linux-musl``). |
| |
| .. |
| |
| .. bpo: 33125 |
| .. date: 2022-01-25-14-48-39 |
| .. nonce: 5WyY_J |
| .. section: Windows |
| |
| The traditional EXE/MSI based installer for Windows is now available for |
| ARM64 |
| |
| .. |
| |
| .. bpo: 46362 |
| .. date: 2022-01-13-22-31-09 |
| .. nonce: f2cuEb |
| .. section: Windows |
| |
| os.path.abspath("C:\CON") is now fixed to return "\\.\CON", not the same |
| path. The regression was true of all legacy DOS devices such as COM1, LPT1, |
| or NUL. |
| |
| .. |
| |
| .. bpo: 44934 |
| .. date: 2021-09-01-10-48-11 |
| .. nonce: W1xPATH |
| .. section: Windows |
| |
| The installer now offers a command-line only option to add the installation |
| directory to the end of :envvar:`PATH` instead of at the start. |
| |
| .. |
| |
| .. bpo: 45925 |
| .. date: 2022-01-26-12-04-09 |
| .. nonce: yBSiYO |
| .. section: macOS |
| |
| Update macOS installer to SQLite 3.37.2. |
| |
| .. |
| |
| .. bpo: 45296 |
| .. date: 2022-01-26-19-33-55 |
| .. nonce: LzZKdU |
| .. section: IDLE |
| |
| Clarify close, quit, and exit in IDLE. In the File menu, 'Close' and 'Exit' |
| are now 'Close Window' (the current one) and 'Exit' is now 'Exit IDLE' (by |
| closing all windows). In Shell, 'quit()' and 'exit()' mean 'close Shell'. |
| If there are no other windows, this also exits IDLE. |
| |
| .. |
| |
| .. bpo: 40170 |
| .. date: 2022-01-27-02-51-22 |
| .. nonce: uPolek |
| .. section: C API |
| |
| Remove the ``PyHeapType_GET_MEMBERS()`` macro. It was exposed in the public |
| C API by mistake, it must only be used by Python internally. Use the |
| ``PyTypeObject.tp_members`` member instead. Patch by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 40170 |
| .. date: 2022-01-27-02-37-18 |
| .. nonce: XxQB0i |
| .. section: C API |
| |
| Move _Py_GetAllocatedBlocks() and _PyObject_DebugMallocStats() private |
| functions to the internal C API. Patch by Victor Stinner. |
| |
| .. |
| |
| .. bpo: 46433 |
| .. date: 2022-01-19-16-51-54 |
| .. nonce: Er9ApS |
| .. section: C API |
| |
| The internal function _PyType_GetModuleByDef now correctly handles |
| inheritance patterns involving static types. |
| |
| .. |
| |
| .. bpo: 45459 |
| .. date: 2021-10-18-16-54-24 |
| .. nonce: Y1pEZs |
| .. section: C API |
| |
| :c:type:`Py_buffer` and various ``Py_buffer`` related functions are now part |
| of the limited API and stable ABI. |
| |
| .. |
| |
| .. bpo: 14916 |
| .. date: 2020-09-11-02-50-41 |
| .. nonce: QN1Y03 |
| .. section: C API |
| |
| Fixed bug in the tokenizer that prevented ``PyRun_InteractiveOne`` from |
| parsing from the provided FD. |