Skip to content

Commit 6aae3ee

Browse files
authored
Merge branch 'main' into pyslice_fromindices
2 parents efc3f6a + 310fe88 commit 6aae3ee

269 files changed

Lines changed: 2684 additions & 714 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/ISSUE_TEMPLATE/bug.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,13 @@ body:
3434
label: "CPython versions tested on:"
3535
multiple: true
3636
options:
37-
- "3.9"
3837
- "3.10"
3938
- "3.11"
4039
- "3.12"
4140
- "3.13"
4241
- "3.14"
4342
- "3.15"
43+
- "3.16"
4444
- "CPython main branch"
4545
validations:
4646
required: true

.github/ISSUE_TEMPLATE/crash.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ body:
2727
label: "CPython versions tested on:"
2828
multiple: true
2929
options:
30-
- "3.9"
3130
- "3.10"
3231
- "3.11"
3332
- "3.12"
3433
- "3.13"
3534
- "3.14"
3635
- "3.15"
36+
- "3.16"
3737
- "CPython main branch"
3838
validations:
3939
required: true

Doc/c-api/exceptions.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1375,7 +1375,7 @@ Tracebacks
13751375
The caller does not need to hold an :term:`attached thread state`, nor does
13761376
*tstate* need to be attached.
13771377
1378-
.. versionadded:: next
1378+
.. versionadded:: 3.15
13791379
13801380
.. c:function:: const char* PyUnstable_DumpTracebackThreads(int fd, PyInterpreterState *interp, PyThreadState *current_tstate, Py_ssize_t max_threads)
13811381
@@ -1411,4 +1411,4 @@ Tracebacks
14111411
another thread deletes its :term:`thread state` while this function is being
14121412
called, the process will likely crash.
14131413
1414-
.. versionadded:: next
1414+
.. versionadded:: 3.15

Doc/c-api/gcsupport.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -414,7 +414,7 @@ In some cases, failure is not distinguishable from a successful ``NULL`` result.
414414
415415
See :ref:`duringgc-functions` for common information.
416416
417-
.. versionadded:: next
417+
.. versionadded:: 3.15
418418
419419
.. seealso::
420420
@@ -433,7 +433,7 @@ In some cases, failure is not distinguishable from a successful ``NULL`` result.
433433
The reference is valid for the duration
434434
of the :c:member:`!tp_traverse` handler call.
435435
436-
.. versionadded:: next
436+
.. versionadded:: 3.15
437437
438438
.. seealso:: :c:func:`PyType_GetBaseByToken`
439439
@@ -445,7 +445,7 @@ In some cases, failure is not distinguishable from a successful ``NULL`` result.
445445
These functions return a :term:`borrowed reference`, which is
446446
valid for the duration of the :c:member:`!tp_traverse` handler call.
447447
448-
.. versionadded:: next
448+
.. versionadded:: 3.15
449449
450450
.. seealso::
451451

Doc/c-api/interp-lifecycle.rst

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -410,7 +410,7 @@ Initializing and finalizing the interpreter
410410
(zero) if not. After :c:func:`Py_FinalizeEx` is called, this returns false until
411411
:c:func:`Py_Initialize` is called again.
412412
413-
.. versionchanged:: next
413+
.. versionchanged:: 3.15
414414
This function no longer returns true until initialization has fully
415415
completed, including import of the :mod:`site` module. Previously it
416416
could return true while :c:func:`Py_Initialize` was still running.
@@ -631,7 +631,7 @@ it possible to avoid these issues by temporarily preventing finalization:
631631
automatically after all guards are released: it requires an explicit
632632
:c:func:`Py_EndInterpreter` call.
633633
634-
.. versionadded:: next
634+
.. versionadded:: 3.15
635635
636636
637637
.. c:function:: PyInterpreterGuard *PyInterpreterGuard_FromCurrent(void)
@@ -671,7 +671,7 @@ it possible to avoid these issues by temporarily preventing finalization:
671671
672672
The caller must hold an :term:`attached thread state`.
673673
674-
.. versionadded:: next
674+
.. versionadded:: 3.15
675675
676676
677677
.. c:function:: PyInterpreterGuard *PyInterpreterGuard_FromView(PyInterpreterView *view)
@@ -688,7 +688,7 @@ it possible to avoid these issues by temporarily preventing finalization:
688688
689689
The caller does not need to hold an :term:`attached thread state`.
690690
691-
.. versionadded:: next
691+
.. versionadded:: 3.15
692692
693693
694694
.. c:function:: void PyInterpreterGuard_Close(PyInterpreterGuard *guard)
@@ -705,7 +705,7 @@ it possible to avoid these issues by temporarily preventing finalization:
705705
This function cannot fail, and the caller doesn't need to hold an
706706
:term:`attached thread state`.
707707
708-
.. versionadded:: next
708+
.. versionadded:: 3.15
709709
710710
711711
.. _interpreter-views:
@@ -723,7 +723,7 @@ deleted. This can be done using interpreter views.
723723
This is a thread-safe way to access an interpreter that may have be
724724
finalizing or already destroyed.
725725
726-
.. versionadded:: next
726+
.. versionadded:: 3.15
727727
728728
729729
.. c:function:: PyInterpreterView *PyInterpreterView_FromCurrent(void)
@@ -738,7 +738,7 @@ deleted. This can be done using interpreter views.
738738
739739
The caller must hold an :term:`attached thread state`.
740740
741-
.. versionadded:: next
741+
.. versionadded:: 3.15
742742
743743
744744
.. c:function:: void PyInterpreterView_Close(PyInterpreterView *view)
@@ -752,7 +752,7 @@ deleted. This can be done using interpreter views.
752752
This function cannot fail, and the caller doesn't need to hold an
753753
:term:`attached thread state`.
754754
755-
.. versionadded:: next
755+
.. versionadded:: 3.15
756756
757757
758758
.. c:function:: PyInterpreterView *PyInterpreterView_FromMain(void)
@@ -774,7 +774,7 @@ deleted. This can be done using interpreter views.
774774
775775
The caller does not need to hold an :term:`attached thread state`.
776776
777-
.. versionadded:: next
777+
.. versionadded:: 3.15
778778
779779
780780
Process-wide parameters

Doc/c-api/module.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -795,7 +795,7 @@ remove it.
795795
:c:macro:`Py_slot_subslots`, except it specifies an array of
796796
:c:type:`PyModuleDef_Slot` structures.
797797

798-
.. versionadded:: next
798+
.. versionadded:: 3.15
799799

800800
.. _moduledef-dynamic:
801801

Doc/c-api/sentinel.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@ Sentinel objects
1010
This instance of :c:type:`PyTypeObject` represents the Python
1111
:class:`sentinel` type. This is the same object as :class:`sentinel`.
1212

13-
.. versionadded:: next
13+
.. versionadded:: 3.15
1414

1515
.. c:function:: int PySentinel_Check(PyObject *o)
1616
1717
Return true if *o* is a :class:`sentinel` object. The :class:`sentinel` type
1818
does not allow subclasses, so this check is exact.
1919
20-
.. versionadded:: next
20+
.. versionadded:: 3.15
2121
2222
.. c:function:: PyObject* PySentinel_New(const char *name, const char *module_name)
2323
@@ -32,4 +32,4 @@ Sentinel objects
3232
path matching *name*. Pickle treats *name* as a global variable name
3333
in *module_name* (see :meth:`object.__reduce__`).
3434
35-
.. versionadded:: next
35+
.. versionadded:: 3.15

Doc/c-api/slots.rst

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ explicitly marked with :c:macro:`PySlot_STATIC`.
3030
Except when documented otherwise, multiple slots with the same ID
3131
(:c:member:`~PySlot.sl_id`) may not occur in a single slots array.
3232

33-
.. versionadded:: next
33+
.. versionadded:: 3.15
3434

3535
Slot arrays generalize an earlier way of defining objects:
3636
using :c:type:`PyType_Spec` with :c:type:`PyType_Slot` for types, and
@@ -125,7 +125,7 @@ Entries of the slots array use the following structure:
125125
Note that the "optionality" only applies to unknown slot IDs.
126126
This flag does not make Python skip invalid values of known slots.
127127

128-
.. versionadded:: next
128+
.. versionadded:: 3.15
129129

130130

131131
Convenience macros
@@ -169,7 +169,7 @@ Convenience macros
169169
#define PySlot_STATIC_DATA(NAME, VALUE) \
170170
{.sl_id=NAME, .sl_flags=PySlot_STATIC, .sl_ptr=(VALUE)}
171171

172-
.. versionadded:: next
172+
.. versionadded:: 3.15
173173

174174
.. c:macro:: PySlot_END
175175
@@ -179,7 +179,7 @@ Convenience macros
179179

180180
#define PySlot_END {0}
181181

182-
.. versionadded:: next
182+
.. versionadded:: 3.15
183183

184184
.. c:macro:: PySlot_PTR(name, value)
185185
PySlot_PTR_STATIC(name, value)
@@ -197,7 +197,7 @@ Convenience macros
197197
#define PySlot_PTR_STATIC(NAME, VALUE) \
198198
{NAME, PySlot_INTPTR|Py_SLOT_STATIC, {0}, {(void*)(VALUE)}}
199199

200-
.. versionadded:: next
200+
.. versionadded:: 3.15
201201

202202
.. _pyslot-common-ids:
203203

@@ -211,7 +211,7 @@ The following slot IDs may be used in both type and module definitions.
211211
Marks the end of a slots array.
212212
Defined as zero.
213213

214-
.. versionadded:: next
214+
.. versionadded:: 3.15
215215

216216
.. c:macro:: Py_slot_subslots
217217
@@ -226,7 +226,7 @@ The following slot IDs may be used in both type and module definitions.
226226
Slot nesting depth is limited to 5 levels.
227227
This restriction may be lifted in the future.
228228

229-
.. versionadded:: next
229+
.. versionadded:: 3.15
230230

231231
.. c:macro:: Py_slot_invalid
232232
@@ -237,4 +237,4 @@ The following slot IDs may be used in both type and module definitions.
237237
no effect.
238238
Without the flag, processing a slot with this ID will fail.
239239

240-
.. versionadded:: next
240+
.. versionadded:: 3.15

Doc/c-api/stable.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ There are two Stable ABIs:
7474
:term:`free-threaded <free-threaded build>` builds of CPython.
7575
It has stricter API limitations than ``abi3``.
7676

77-
.. versionadded:: next
77+
.. versionadded:: 3.15
7878

7979
``abi3t`` was added in :pep:`803`
8080

@@ -170,7 +170,7 @@ both Stable ABIs.
170170
:term:`free-threaded builds <free-threaded build>` of CPython.
171171
See :ref:`above <abi3-compiling>` for common information.
172172

173-
.. versionadded:: next
173+
.. versionadded:: 3.15
174174

175175
Both macros specify a target ABI; the different naming style is due to
176176
backwards compatibility.

Doc/c-api/threads.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,7 @@ Attaching/detaching thread states
296296
Otherwise, if both of the above cases fail, a new thread state is created
297297
for *guard*. It is then attached and marked as owned by ``PyThreadState_Ensure``.
298298

299-
.. versionadded:: next
299+
.. versionadded:: 3.15
300300

301301

302302
.. c:function:: PyThreadStateToken *PyThreadState_EnsureFromView(PyInterpreterView *view)
@@ -308,7 +308,7 @@ Attaching/detaching thread states
308308
be implicitly guarded. The guard will be released upon the corresponding
309309
:c:func:`PyThreadState_Release` call.
310310
311-
.. versionadded:: next
311+
.. versionadded:: 3.15
312312
313313
314314
.. c:function:: void PyThreadState_Release(PyThreadStateToken *token)
@@ -335,7 +335,7 @@ Attaching/detaching thread states
335335
attached thread state will be deallocated and deleted upon the internal counter
336336
reaching zero. Otherwise, nothing happens when the counter reaches zero.
337337
338-
.. versionadded:: next
338+
.. versionadded:: 3.15
339339
340340
.. c:type:: PyThreadStateToken
341341

0 commit comments

Comments
 (0)