Pablo Galindo Salgado
1b22d801b8
gh-118518: Allow perf to work without frame pointers ( #112254 )
2024-05-05 03:07:29 +02:00
Irit Katriel
85af789961
gh-111997: C-API for signalling monitoring events ( #116413 )
2024-05-04 08:23:50 +00:00
Brett Simmers
c2627d6eea
gh-116322: Add Py_mod_gil module slot ( #116882 )
...
This PR adds the ability to enable the GIL if it was disabled at
interpreter startup, and modifies the multi-phase module initialization
path to enable the GIL when loading a module, unless that module's spec
includes a slot indicating it can run safely without the GIL.
PEP 703 called the constant for the slot `Py_mod_gil_not_used`; I went
with `Py_MOD_GIL_NOT_USED` for consistency with gh-104148.
A warning will be issued up to once per interpreter for the first
GIL-using module that is loaded. If `-v` is given, a shorter message
will be printed to stderr every time a GIL-using module is loaded
(including the first one that issues a warning).
2024-05-03 11:30:55 -04:00
Pablo Galindo Salgado
6bcbee09df
gh-93502: Add new C-API functions to trace object creation and destruction ( #115945 )
2024-05-02 19:30:00 +02:00
Victor Stinner
b52c753e0f
gh-110850: Add PyTime_TimeRaw() function ( #118394 )
...
Add "Raw" variant of PyTime functions:
* PyTime_MonotonicRaw()
* PyTime_PerfCounterRaw()
* PyTime_TimeRaw()
Changes:
* Add documentation and tests. Tests release the GIL while calling
raw clock functions.
* py_get_system_clock() and py_get_monotonic_clock() now check that
the GIL is hold by the caller if raise_exc is non-zero.
* Reimplement "Unchecked" functions with raw clock functions.
Co-authored-by: Petr Viktorin <encukou@gmail.com>
2024-05-01 18:05:01 +00:00
Xie Yanbo
98739c9078
Fix typo in Doc/c-api/exceptions.rst (GH-118371)
2024-04-29 14:02:54 +03:00
Xie Yanbo
030fcc47fb
Fix typo in Doc/c-api/typeobj.rst (GH-118377)
2024-04-29 10:59:38 +00:00
Savannah Ostrowski
5d54436574
gh-116935: Document that heap types need to support garbage collection (GH-118021)
2024-04-19 09:29:23 +00:00
Victor Stinner
4605a197bd
gh-117518: Clarify PyTuple_GetItem() borrowed reference in the doc (GH-117920)
2024-04-19 10:41:37 +02:00
Jelle Zijlstra
60787b8a4e
Docs: Fix CVE link ( #118077 )
2024-04-18 21:31:53 -07:00
Victor Stinner
340a02b590
gh-117987: Restore several functions removed in Python 3.13 alpha 1 (GH-117993)
...
Restore these functions removed in Python 3.13 alpha 1:
* Py_SetPythonHome()
* Py_SetProgramName()
* PySys_SetArgvEx()
* PySys_SetArgv()
2024-04-18 15:20:38 +02:00
Victor Stinner
75eed5b373
gh-117929: Restore removed PyEval_InitThreads() function ( #117931 )
2024-04-17 15:01:28 +02:00
Serhiy Storchaka
438b7c3071
gh-73231: Update documentation for PyErr_SetFromWindowsErr() (GH-117226)
2024-04-17 13:03:26 +03:00
Serhiy Storchaka
24a2bd0481
gh-117642: Fix PEP 737 implementation (GH-117643)
...
* Fix implementation of %#T and %#N (they were implemented as %T# and
%N#).
* Restore tests removed in gh-116417.
2024-04-08 16:27:25 +00:00
Steve Dower
687616877b
gh-111140: PyLong_From/AsNativeBytes: Take *flags* rather than just *endianness* (GH-116053)
2024-04-05 16:21:16 +02:00
Serhiy Storchaka
0c1a42cf9c
gh-87193: Support bytes objects with refcount > 1 in _PyBytes_Resize() (GH-117160)
...
Create a new bytes object and destroy the old one if it has refcount > 1.
2024-03-25 16:32:11 +01:00
Serhiy Storchaka
e2e0b4b4b9
gh-113024: C API: Add PyObject_GenericHash() function (GH-113025)
2024-03-22 20:19:10 +02:00
Victor Stinner
8bea6c411d
gh-115754: Add Py_GetConstant() function ( #116883 )
...
Add Py_GetConstant() and Py_GetConstantBorrowed() functions.
In the limited C API version 3.13, getting Py_None, Py_False,
Py_True, Py_Ellipsis and Py_NotImplemented singletons is now
implemented as function calls at the stable ABI level to hide
implementation details. Getting these constants still return borrowed
references.
Add _testlimitedcapi/object.c and test_capi/test_object.py to test
Py_GetConstant() and Py_GetConstantBorrowed() functions.
2024-03-21 16:07:00 +00:00
Bogdan Romanyuk
a8e93d3dca
gh-115756: make PyCode_GetFirstFree an unstable API (GH-115781)
2024-03-19 09:20:38 +00:00
Victor Stinner
7bbb9b57e6
gh-111696, PEP 737: Add %T and %N to PyUnicode_FromFormat() ( #116839 )
2024-03-14 22:23:00 +00:00
Victor Stinner
c432df6d56
gh-111696, PEP 737: Add PyType_GetModuleName() function ( #116824 )
...
Co-authored-by: Eric Snow <ericsnowcurrently@gmail.com>
2024-03-14 18:17:43 +00:00
Victor Stinner
19c3a2ff91
gh-111696, PEP 737: Add PyType_GetFullyQualifiedName() function ( #116815 )
...
Rewrite tests on type names in Python, they were written in C.
2024-03-14 16:19:36 +00:00
Sergey B Kirpichev
e39795f2cb
Docs: PyUnstable_Long_IsCompact() docs now mention PyLong_AsNativeBytes() ( #116634 )
2024-03-14 00:01:13 +01:00
Sergey B Kirpichev
1e68c4b876
gh-111389: expose PyHASH_INF/BITS/MODULUS/IMAG macros as public ( #111418 )
...
Co-authored-by: Victor Stinner <vstinner@python.org>
2024-03-09 21:32:05 +01:00
Serhiy Storchaka
808a77612f
gh-115664: Fix ordering of more versionadded and versionchanged directives (GH-116298)
2024-03-07 10:05:03 +02:00
Serhiy Storchaka
df59401108
Fix the PyGetSetDef documentation (GH-116056)
...
closure is not a function pointer, it is a user data pointer.
2024-03-05 17:48:20 +02:00
bssyousefi
6a3236fe2e
gh-115799: Add missing double-quote in docs ( #115884 )
2024-02-25 14:07:08 -08:00
Gregory P. Smith
fac99b8b0d
gh-111140: Improve PyLong_AsNativeBytes API doc example & improve the test ( #115380 )
...
This expands the examples to cover both realistic use cases for the API.
I noticed thing in the test that could be done better so I added those as well: We need to guarantee that all bytes of the result are overwritten and that too many are not written. Tests now pre-fills the result with data in order to ensure that.
Co-authored-by: Steve Dower <steve.dower@microsoft.com>
2024-02-22 03:27:16 +00:00
Bogdan Romanyuk
10fc4675fd
gh-115653: Document PyCode_GetFirstFree() ( #115654 )
...
Correct the return type of the PyCode_GetNumFree() documentation.
2024-02-21 10:01:36 +01:00
David Hewitt
9e3729bbd7
gh-114626: add PyCFunctionFast and PyCFunctionFastWithKeywords (GH-114627)
...
Co-authored-by: Petr Viktorin <encukou@gmail.com>
2024-02-15 11:05:20 +01:00
qqwqqw689
5719aa23ab
gh-113437: Update documentation about PyUnicode_AsWideChar() function (GH-113455)
2024-02-13 15:23:10 +01:00
Steve Dower
10756b10ff
gh-111140: Minor doc fixes for PyLong_AsNativeBytes (GH-115375)
2024-02-12 22:28:36 +00:00
Steve Dower
7861dfd26a
gh-111140: Adds PyLong_AsNativeBytes and PyLong_FromNative[Unsigned]Bytes functions (GH-114886)
2024-02-12 20:13:13 +00:00
Petr Viktorin
879f4546bf
gh-110850: Add PyTime_t C API (GH-115215)
...
* gh-110850: Add PyTime_t C API
Add PyTime_t API:
* PyTime_t type.
* PyTime_MIN and PyTime_MAX constants.
* PyTime_AsSecondsDouble(), PyTime_Monotonic(),
PyTime_PerfCounter() and PyTime_GetSystemClock() functions.
Co-authored-by: Victor Stinner <vstinner@python.org>
2024-02-12 18:13:10 +01:00
Skip Montanaro
e1552fd19d
gh-101100: Clean up Doc/c-api/exceptions.rst and Doc/c-api/sys.rst (GH-114825)
2024-02-11 18:51:07 +00:00
Serhiy Storchaka
573acb30f2
gh-115172: Fix explicit index extries for the C API (GH-115173)
2024-02-11 12:23:30 +02:00
Nikita Sobolev
4821f08674
gh-101100: Fix sphinx warnings in c-api/gcsupport.rst
( #114786 )
2024-02-10 15:59:23 -07:00
Erlend E. Aasland
769d444826
Docs: correctly link to code objects ( #115214 )
2024-02-09 15:11:36 +01:00
Skip Montanaro
d0322fdf2c
gh-101100: Fix Py_DEBUG dangling Sphinx references ( #115003 )
2024-02-07 10:48:42 +00:00
Sam Gross
de61d4bd4d
gh-112066: Add PyDict_SetDefaultRef
function. ( #112123 )
...
The `PyDict_SetDefaultRef` function is similar to `PyDict_SetDefault`,
but returns a strong reference through the optional `**result` pointer
instead of a borrowed reference.
Co-authored-by: Petr Viktorin <encukou@gmail.com>
2024-02-06 11:36:23 -05:00
patenaud
9872855a31
GH-69695: Update `PyImport_ImportModule
` description (GH-103836)
...
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2024-02-02 17:31:55 +01:00
Sam Gross
d0f1307580
gh-114329: Add PyList_GetItemRef
function (GH-114504)
...
The new `PyList_GetItemRef` is similar to `PyList_GetItem`, but returns
a strong reference instead of a borrowed reference. Additionally, if the
passed "list" object is not a list, the function sets a `TypeError`
instead of calling `PyErr_BadInternalCall()`.
2024-02-02 14:03:15 +01:00
Nikita Sobolev
97fb2480e4
gh-101100: Fix sphinx warnings in Doc/c-api/memoryview.rst
(GH-114669)
2024-01-29 11:56:11 +02:00
Nikita Sobolev
23fb9f0777
Fix c-api/file.rst
indexes (GH-114608)
2024-01-27 10:45:07 +02:00
Sergey B Kirpichev
926881dc10
gh-113445: Amend PyObject_RichCompareBool() docs (GH-113891)
2024-01-27 09:55:33 +02:00
Sergey B Kirpichev
3f62bf32ca
Document PyOS_strtoul and PyOS_strtol (GH-114048)
2024-01-26 19:44:45 +02:00
Nikita Sobolev
01d970c1b8
gh-101100: Fix sphinx warnings in c-api/file.rst
( #114546 )
...
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
2024-01-26 02:55:22 -07:00
Hugo van Kemenade
51d9068ede
gh-101100: Fix Sphinx warnings in c-api/structures.rst
( #113564 )
...
Co-authored-by: Hugo van Kemenade <hugovk@users.noreply.github.com>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
2024-01-24 15:40:09 +02:00
Nikita Sobolev
47133d8d86
gh-101100: Fix sphinx warnings in Doc/c-api/memory.rst
( #114373 )
2024-01-21 11:34:43 +02:00
DerSchinken
68a7b78cd5
gh-112092: clarify unstable ABI recompilation requirements ( #112093 )
...
Use different versions in the examples for when extensions do and do not need to be recompiled to make the examples easier to understand.
2024-01-18 21:04:40 +01:00