cpython/Include
Lee Dogeon cd3e7ac89b
gh-67341: fix a typo in Include/fileutils.h (#136049)
`IO_REPARSE_TAG_SYMLINK` is mapped to `S_IFLNK` in `fileutils.c`, not in `posixmodule.c`
2025-07-14 08:02:05 +00:00
..
cpython gh-92536: Fix comment about number of unicode string types (#136439) 2025-07-08 23:49:55 +02:00
internal gh-121914: Change the names of the symbol tables for lambda and genexpr (GH-135288) 2025-07-13 21:09:42 +03:00
abstract.h gh-134989: Implement PyObject_DelAttr() as a macro in the limited C API (GH-135021) 2025-06-04 15:07:52 +02:00
audit.h gh-135755: Use private names (_Py*) for header file guards new in 3.14 (GH-135921) 2025-06-26 13:05:01 +02:00
bltinmodule.h
boolobject.h gh-134989: Fix Py_RETURN_NONE in the limited C API (GH-135165) 2025-06-05 14:43:47 +02:00
bytearrayobject.h
bytesobject.h
ceval.h gh-135755: Move SPECIAL_ constants to a private header (GH-135922) 2025-06-25 13:03:05 +02:00
codecs.h
compile.h
complexobject.h
critical_section.h
datetime.h
descrobject.h
dictobject.h
dynamic_annotations.h
enumobject.h
errcode.h
exports.h
fileobject.h
fileutils.h gh-67341: fix a typo in Include/fileutils.h (#136049) 2025-07-14 08:02:05 +00:00
floatobject.h
frameobject.h
genericaliasobject.h
import.h gh-133644: remove deprecated PyImport_ImportModuleNoBlock (#133655) 2025-05-08 13:08:43 +00:00
intrcheck.h
iterobject.h
listobject.h
lock.h
longobject.h gh-132639: Adds PyLong_AsNativeBytes, PyLong_FromNativeBytes and PyLong_FromUnsignedNativeBytes to the limited API (GH-132640) 2025-04-21 15:59:03 +01:00
marshal.h
memoryobject.h
methodobject.h gh-132097: use a macro for semantically casting function pointers (#132406) 2025-04-18 12:24:34 +02:00
modsupport.h
moduleobject.h gh-111506: Add _Py_OPAQUE_PYOBJECT to hide PyObject layout & related API (GH-136505) 2025-07-12 09:55:12 +02:00
monitoring.h
object.h gh-111506: Add _Py_OPAQUE_PYOBJECT to hide PyObject layout & related API (GH-136505) 2025-07-12 09:55:12 +02:00
objimpl.h
opcode.h gh-100239: replace BINARY_SUBSCR & family by BINARY_OP with oparg NB_SUBSCR (#129700) 2025-02-07 22:39:54 +00:00
opcode_ids.h GH-134282: Always borrow references LOAD_CONST (GH-134284) 2025-05-20 11:24:11 -04:00
osdefs.h
osmodule.h
patchlevel.h Python 3.15.0a0 2025-05-07 18:47:42 +03:00
py_curses.h gh-125843: indicate which C function caused a curses.error (#125844) 2025-05-19 15:53:39 +02:00
pyatomic.h
pybuffer.h
pycapsule.h
pydtrace.d
pydtrace.h
pyerrors.h
pyexpat.h
pyframe.h
pyhash.h
pylifecycle.h gh-133644: Remove deprecated Python initialization getter functions (#133661) 2025-05-09 11:39:23 +00:00
pymacconfig.h
pymacro.h gh-135927: Fix MSVC Clatest C builds (GH-135935) 2025-06-25 23:02:53 +08:00
pymath.h
pymem.h
pyport.h gh-133157: remove usage of _Py_NO_SANITIZE_UNDEFINED in pyexpat (#135346) 2025-07-01 10:54:08 +02:00
pystate.h
pystats.h
pystrcmp.h
pystrtod.h
Python.h gh-111506: Add _Py_OPAQUE_PYOBJECT to hide PyObject layout & related API (GH-136505) 2025-07-12 09:55:12 +02:00
pythonrun.h gh-130396: Move PYOS_LOG2_STACK_MARGIN to internal headers (#135928) 2025-07-01 15:18:17 +02:00
pythread.h
pytypedefs.h
rangeobject.h
README.rst
refcount.h gh-111506: Add _Py_OPAQUE_PYOBJECT to hide PyObject layout & related API (GH-136505) 2025-07-12 09:55:12 +02:00
setobject.h
sliceobject.h
structmember.h
structseq.h
sysmodule.h gh-108512: Add and use new replacements for PySys_GetObject() (GH-111035) 2025-05-28 20:11:09 +03:00
traceback.h
tupleobject.h
typeslots.h Revert "gh-133395: add option for extension modules to specialize BINARY_OP/SUBSCR, apply to arrays (#133396)" (#133498) 2025-05-06 13:12:26 +03:00
unicodeobject.h gh-133610: Remove PyUnicode_AsDecoded/Encoded functions (#133612) 2025-05-09 17:31:24 +02:00
warnings.h
weakrefobject.h

The Python C API
================

The C API is divided into these sections:

1. ``Include/``: Limited API
2. ``Include/cpython/``: CPython implementation details
3. ``Include/cpython/``, names with the ``PyUnstable_`` prefix: API that can
   change between minor releases
4. ``Include/internal/``, and any name with ``_`` prefix: The internal API

Information on changing the C API is available `in the developer guide`_

.. _in the developer guide: https://devguide.python.org/c-api/