Skip to content

Commit 2654960

Browse files
authored
Merge branch 'main' into fix-sum-float-subclass-dealloc
2 parents f5f9d46 + e80962a commit 2654960

439 files changed

Lines changed: 9201 additions & 3114 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.github/CODEOWNERS‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -432,6 +432,7 @@ Lib/test/test_*time.py @pganssle @StanFromIreland
432432
Modules/*zoneinfo* @pganssle @StanFromIreland
433433
Modules/*time* @pganssle @StanFromIreland
434434
Python/pytime.c @pganssle @StanFromIreland
435+
Python/_strptime.c @pganssle @StanFromIreland
435436

436437
# Dbm
437438
Doc/library/dbm.rst @corona10 @erlend-aasland @serhiy-storchaka

‎.github/workflows/jit.yml‎

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -87,24 +87,16 @@ jobs:
8787
./PCbuild/rt.bat ${{ matrix.debug && '-d' || '' }} -p ${{ matrix.architecture }} -q --multiprocess 0 --timeout 4500 --verbose2 --verbose3
8888
8989
macos:
90-
name: ${{ matrix.target }} (${{ matrix.debug && 'Debug' || 'Release' }})
90+
name: aarch64-apple-darwin/clang (${{ matrix.debug && 'Debug' || 'Release' }})
9191

92-
runs-on: ${{ matrix.runner }}
92+
runs-on: macos-26
9393
timeout-minutes: 60
9494
strategy:
9595
fail-fast: false
9696
matrix:
97-
target:
98-
- x86_64-apple-darwin/clang
99-
- aarch64-apple-darwin/clang
10097
debug:
10198
- true
10299
- false
103-
include:
104-
- target: x86_64-apple-darwin/clang
105-
runner: macos-26-intel
106-
- target: aarch64-apple-darwin/clang
107-
runner: macos-26
108100
steps:
109101
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
110102
with:

‎.github/workflows/tail-call.yml‎

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,9 @@ env:
2424

2525
jobs:
2626
macos:
27-
name: ${{ matrix.target }}
28-
runs-on: ${{ matrix.runner }}
27+
name: aarch64-apple-darwin/clang
28+
runs-on: macos-26
2929
timeout-minutes: 60
30-
strategy:
31-
fail-fast: false
32-
matrix:
33-
include:
34-
- target: x86_64-apple-darwin/clang
35-
runner: macos-26-intel
36-
- target: aarch64-apple-darwin/clang
37-
runner: macos-26
3830
steps:
3931
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
4032
with:
@@ -49,7 +41,6 @@ jobs:
4941
- name: Build
5042
run: |
5143
export SDKROOT="$(xcrun --show-sdk-path)"
52-
export PATH="/usr/local/opt/llvm@${{ env.LLVM_VERSION }}/bin:$PATH"
5344
export PATH="/opt/homebrew/opt/llvm@${{ env.LLVM_VERSION }}/bin:$PATH"
5445
CC=clang-${{ env.LLVM_VERSION }} ./configure --with-tail-call-interp
5546
make all --jobs 4

‎.gitignore‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,7 @@ Modules/Setup.config
102102
Modules/Setup.local
103103
Modules/Setup.stdlib
104104
Modules/config.c
105+
Modules/config_bootstrap.c
105106
Modules/ld_so_aix
106107
Programs/_freeze_module
107108
Programs/_testembed

‎Doc/builtins/exceptions.rst‎

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -396,10 +396,9 @@ The following exceptions are the exceptions that are usually raised.
396396

397397
.. attribute:: strerror
398398

399-
The corresponding error message, as provided by
400-
the operating system. It is formatted by the C
401-
functions :c:func:`!perror` under POSIX, and :c:func:`!FormatMessage`
402-
under Windows.
399+
The corresponding error message, as provided by the operating system.
400+
Under POSIX, it is obtained using the C functions :c:func:`!strerror`
401+
or :c:func:`!strerror_r`; under Windows, :c:func:`!FormatMessage` is used.
403402

404403
.. attribute:: filename
405404
filename2
@@ -567,11 +566,6 @@ The following exceptions are the exceptions that are usually raised.
567566
The column in the end line where the error occurred finishes. This is
568567
1-indexed: the first character in the line has an ``offset`` of 1.
569568

570-
For errors in f-string fields, the message is prefixed by "f-string: "
571-
and the offsets are offsets in a text constructed from the replacement
572-
expression. For example, compiling f'Bad {a b} field' results in this
573-
args attribute: ('f-string: ...', ('', 1, 2, '(a b)\n', 1, 5)).
574-
575569
.. versionchanged:: 3.10
576570
Added the :attr:`end_lineno` and :attr:`end_offset` attributes.
577571

‎Doc/builtins/functions.rst‎

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -772,7 +772,7 @@ are always available. They are listed here in alphabetical order.
772772
still access all builtins.
773773

774774
The *closure* argument specifies a closure--a tuple of cellvars.
775-
It's only valid when the *object* is a code object containing
775+
It's only valid when *source* is a code object containing
776776
:term:`free (closure) variables <closure variable>`.
777777
The length of the tuple must exactly match the length of the code object's
778778
:attr:`~codeobject.co_freevars` attribute.
@@ -1853,8 +1853,6 @@ are always available. They are listed here in alphabetical order.
18531853
including the name and address of the object. A class can control what this
18541854
function returns for its instances
18551855
by defining a :meth:`~object.__repr__` method.
1856-
If :func:`sys.displayhook` is not accessible, this function will raise
1857-
:exc:`RuntimeError`.
18581856

18591857
This class has a custom representation that can be evaluated::
18601858

@@ -2168,10 +2166,10 @@ are always available. They are listed here in alphabetical order.
21682166

21692167
When called directly within an ordinary method of a class, both arguments may
21702168
be omitted ("zero-argument :func:`!super`"). In this case, *type* will be the
2171-
enclosing class, and *obj* will be the first argument of the immediately
2172-
enclosing function (typically ``self``). (This means that zero-argument
2169+
enclosing class, and *object_or_type* will be the first argument of the
2170+
immediately enclosing function (typically ``self``). Zero-argument
21732171
:func:`!super` will not work as expected within nested functions, including
2174-
generator expressions, which implicitly create nested functions.)
2172+
generator expressions, which implicitly create nested functions.
21752173

21762174
There are two typical use cases for *super*. In a class hierarchy with
21772175
single inheritance, *super* can be used to refer to parent classes without
@@ -2430,10 +2428,9 @@ are always available. They are listed here in alphabetical order.
24302428
determine the package context of the :keyword:`import` statement.
24312429

24322430
*level* specifies whether to use absolute or relative imports. ``0`` (the
2433-
default) means only perform absolute imports. Positive values for
2434-
*level* indicate the number of parent directories to search relative to the
2435-
directory of the module calling :func:`__import__` (see :pep:`328` for the
2436-
details).
2431+
default) means only perform absolute imports. For relative imports,
2432+
``1`` refers to the current package, ``2`` to its parent package, and so on
2433+
(see :pep:`328` for details).
24372434

24382435
When the *name* variable is of the form ``package.module``, normally, the
24392436
top-level package (the name up till the first dot) is returned, *not* the

‎Doc/builtins/stdtypes.rst‎

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3780,8 +3780,8 @@ objects.
37803780

37813781
If the :class:`bytearray` needs to shrink, bytes beyond *size* are truncated.
37823782

3783-
If the :class:`bytearray` needs to grow, all new bytes, those beyond *size*,
3784-
will be set to null bytes.
3783+
If the :class:`bytearray` needs to grow, all new bytes will be set to null
3784+
bytes.
37853785

37863786

37873787
This is equivalent to:
@@ -5616,9 +5616,8 @@ Note, the non-operator versions of the :meth:`~set.update`,
56165616
argument.
56175617

56185618
Note, the *elem* argument to the :meth:`~object.__contains__`,
5619-
:meth:`~set.remove`, and
5620-
:meth:`~set.discard` methods may be a set. To support searching for an equivalent
5621-
frozenset, a temporary one is created from *elem*.
5619+
:meth:`~set.remove`, and :meth:`~set.discard` methods may be a set. In this case,
5620+
an equivalent frozenset is searched for.
56225621

56235622
Sets and frozensets are :ref:`generic <generics>` over the type of their elements.
56245623

@@ -5668,7 +5667,7 @@ can be used interchangeably to index the same dictionary entry.
56685667

56695668
* Use a comma-separated list of ``key: value`` pairs within braces:
56705669
``{'jack': 4098, 'sjoerd': 4127}`` or ``{4098: 'jack', 4127: 'sjoerd'}``
5671-
* Use a dict comprehension: ``{}``, ``{x: x ** 2 for x in range(10)}``
5670+
* Use a dict comprehension: ``{x: x ** 2 for x in range(10)}``
56725671
* Use the type constructor: ``dict()``,
56735672
``dict([('foo', 100), ('bar', 200)])``, ``dict(foo=100, bar=200)``
56745673

@@ -5879,9 +5878,8 @@ can be used interchangeably to index the same dictionary entry.
58795878
Return a new view of the dictionary's values. See the
58805879
:ref:`documentation of view objects <dict-views>`.
58815880

5882-
An equality comparison between one ``dict.values()`` view and another
5883-
will always return ``False``. This also applies when comparing
5884-
``dict.values()`` to itself::
5881+
An equality comparison between two distinct ``dict.values()`` views
5882+
will always return ``False``, even for views of the same dictionary::
58855883

58865884
>>> d = {'a': 1}
58875885
>>> d.values() == d.values()

‎Doc/c-api/bool.rst‎

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,15 @@ are available, however.
2525
2626
.. c:var:: PyObject* Py_False
2727
28-
The Python ``False`` object. This object has no methods and is
29-
:term:`immortal`.
28+
The Python ``False`` object. This object is :term:`immortal`.
3029
3130
.. versionchanged:: 3.12
3231
:c:data:`Py_False` is :term:`immortal`.
3332
3433
3534
.. c:var:: PyObject* Py_True
3635
37-
The Python ``True`` object. This object has no methods and is
38-
:term:`immortal`.
36+
The Python ``True`` object. This object is :term:`immortal`.
3937
4038
.. versionchanged:: 3.12
4139
:c:data:`Py_True` is :term:`immortal`.

0 commit comments

Comments
 (0)