main
gh-85275: Remove old buffer APIs (#105137)
Add a new Sphinx `soft-deprecated` directive (#148630)
gh-143578: Restore note about patchlevel.h (#143596)
gh-74366: Fix the documentation of "$" in PyArg_ParseTupleAndKeywords() (GH-155301)
gh-110481, doc: Add "immortal" term to the glossary (#112180)
Use `soft-deprecated` in more places (#148769)
gh-142518: add thread safety annotations for bytearray C-API (#146514)
gh-144473: Add "steal" term to glossary; clarify "stealing" on error (GH-144502)
gh-141004: Document old provisional names for vectorcall/code API (GH-143568)
gh-76595: PyCapsule_Import() now imports submodules if needed (GH-6898)
Fix minor typos and wording in C API docs (#140955)
gh-141004: Document `Py_hexdigits` (GH-141059)
Fix 2 broken links in documentation (#150892)
gh-148829: Implement PEP 661 (#148831)
gh-124872: Replace enter/exit events with "switched" (#125532)
gh-141004: Mark up constants for `PyOS_double_to_string` (GH-143867)
gh-150671: Deprecate `PyAsyncGen_New`, `PyCoro_New`, `PyGen_New`, `PyGen_NewWithQualName` functions (#150672)
gh-141004: document `curses` C API (#141254)
add whatsnew entry for `PyUnstable_SetImmortal` and `PyDatetime_IMPORT` (#144830)
gh-151941: Fix Sphinx reference warnings in `Doc/c-api/` (GH-152044)
gh-140550: Docs additions & fixups for PEP 793 (GH-151661)
gh-145633: Allow PyFloat_Pack8 & PyFloat_UnPack* to fail in future CPython versions (GH-153440)
gh-152105: Remove PyUnstable_ExecutableKinds and related macros (GH-155244)
gh-141004: Document `PyFunction_SetKwDefaults` (GH-141294)
Python 3.15.0b1
gh-141004: correctly document `Py_HASH_*` and `PyHASH_*` as `hash_info` attributes (#141233)
gh-149044: Implement PEP 820 – PySlot: Unified slot system for the C API (GH-149055)
gh-141811: Split up `init.rst` into multiple pages (GH-144844)
gh-150032: Tidy up 3.15 pending removals (#149594)
Fix typo in PyIter_Send docs (#140336)
gh-141004: Document `PyODict*` APIs (GH-141136)
gh-75459: Doc: C API: Improve object life cycle documentation (GH-125962)
Remove PDF images (#145977)
Doc: fix order of PyLong_FromUnsignedLongLong (#150937)
Docs: Fix typos in the "Memory Management" section (GH-151243)
gh-141004: Document `PyMemoryView_Type` (GH-141034)
gh-107091: Fix the use of some C domain roles (#107092)
Fix copy paste error with Py_mod_state_traverse (GH-152776)
gh-121905: Consistently use "floating-point" instead of "floating point" (GH-121907)
gh-146056: Fix list.__repr__() for lists containing NULLs (GH-146129)
gh-141004: Document unstable perf map functions in `ceval.h` (GH-143492)
gh-141004: Document the `PyPickleBuffer_*` C API (GH-141630)
gh-144277: Fix usage of free-threaded terminology in the documentation (GH-144333)
gh-127989: C API: Refer to "attached thread states" instead of the GIL (GH-127990)
gh-148829: Make sentinels' repr and module customizable (#149654)
gh-130214: Document `PyEllipsis_Type` (GH-130215)
Fix typos in C API documentation (GH-149588)
Fix incorrect sentence in stable.rst (GH-149684)
gh-105812: Make use of the Sphinx `deco` role in documentation (#139598)
gh-146031: Allow keeping specialization enabled when specifying eval frame function (#146032)
gh-152912: Fix audit hook exception check in sys.addaudithook() (GH-152913)
gh-145685: per-type method cache implementation (#150160)
gh-150319: Replace all documentation which says "See PEP 585" (#150325)
Fix typo in C API Type Object Structures documentation (#154249)
gh-110850: Add PyTime_t C API (GH-115215)
gh-141004: Document remaining `PyCF_*` compiler flag macros (GH-153958)
gh-80384: Check that callback is callable at weak reference creation (GH-151145)