summaryrefslogtreecommitdiffstats
path: root/Doc/extending
Commit message (Collapse)AuthorAgeFilesLines
* gh-47146: Soft-deprecate structmember.h, expose its contents via Python.h ↵Petr Viktorin2022-11-222-40/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (GH-99014) The ``structmember.h`` header is deprecated, though it continues to be available and there are no plans to remove it. There are no deprecation warnings. Old code can stay unchanged (unless the extra include and non-namespaced macros bother you greatly). Specifically, no uses in CPython are updated -- that would just be unnecessary churn. The ``structmember.h`` header is deprecated, though it continues to be available and there are no plans to remove it. Its contents are now available just by including ``Python.h``, with a ``Py`` prefix added if it was missing: - `PyMemberDef`, `PyMember_GetOne` and`PyMember_SetOne` - Type macros like `Py_T_INT`, `Py_T_DOUBLE`, etc. (previously ``T_INT``, ``T_DOUBLE``, etc.) - The flags `Py_READONLY` (previously ``READONLY``) and `Py_AUDIT_READ` (previously all uppercase) Several items are not exposed from ``Python.h``: - `T_OBJECT` (use `Py_T_OBJECT_EX`) - `T_NONE` (previously undocumented, and pretty quirky) - The macro ``WRITE_RESTRICTED`` which does nothing. - The macros ``RESTRICTED`` and ``READ_RESTRICTED``, equivalents of `Py_AUDIT_READ`. - In some configurations, ``<stddef.h>`` is not included from ``Python.h``. It should be included manually when using ``offsetof()``. The deprecated header continues to provide its original contents under the original names. Your old code can stay unchanged, unless the extra include and non-namespaced macros bother you greatly. There is discussion on the issue to rename `T_PYSSIZET` to `PY_T_SSIZE` or similar. I chose not to do that -- users will probably copy/paste that with any spelling, and not renaming it makes migration docs simpler. Co-Authored-By: Alexander Belopolsky <abalkin@users.noreply.github.com> Co-Authored-By: Matthias Braun <MatzeB@users.noreply.github.com>
* gh-93358: Fix python-config docs for how to embed Python (#98649)Erlend E. Aasland2022-10-291-6/+6
|
* gh-93738: Disallow pre-v3 syntax in the C domain (#97962)Adam Turner2022-10-062-4/+4
| | | Also, disable using invalid sphinx-lint 0.6.2.
* gh-93738: Documentation C syntax (:c:type:<C type> -> :c:expr:<C type>) (#97768)Adam Turner2022-10-052-7/+7
| | | | | :c:type:`<C type>` -> :c:expr:`<C type>` Co-authored-by: Łukasz Langa <lukasz@langa.pl>
* gh-93738: Documentation C syntax (Function glob patterns -> literal markup) ↵Adam Turner2022-10-051-3/+3
| | | | (#97774)
* GH-95245: Document use of `MANAGED` flags instead of offsets. (GH-96044)Mark Shannon2022-08-301-24/+9
|
* gh-91838: Use HTTPS links in docs for resources which redirect to HTTPS ↵Serhiy Storchaka2022-08-041-2/+2
| | | | | | | | | | (GH-95527) If an HTTP link is redirected to a same looking HTTPS link, the latter can be used directly without changes in readability and behavior. It protects from a men-in-the-middle attack. This change does not affect Python examples.
* gh-85454: Remove distutils documentation (#95239)Christian Heimes2022-07-252-122/+12
| | | | Most places now refer to setuptools or link to setuptools documentation. Some examples like zipapp need to be updated later.
* Docs: remove redundant "adverb-adjective" hyphens from compound modifiers ↵Ned Batchelder2022-07-052-3/+3
| | | | | (GH-94551) Discussion: https://discuss.python.org/t/slight-grammar-fix-throughout-adverbs-dont-need-hyphen/17021
* gh-76773: Update docs mentioning no-longer-supported Windows versions & ↵CAM Gerlach2022-05-101-3/+1
| | | | features (GH-92529)
* gh-91118: Fix docstrings that do not honor --without-doc-strings (#31769)Oleg Iarygin2022-04-181-2/+2
| | | | Co-authored-by: Éric <merwok@netwok.org> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* bpo-45790: List macros in same order in which fields are described (GH-29529)rtobar2022-04-051-2/+2
| | | | | Signed-off-by: Rodrigo Tobar <rtobar@icrar.org> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* bpo-25381: Update explanation of exceptions in C. (GH-26838)Terry Jan Reedy2021-11-151-7/+5
| | | | | | | | | | | | | | * bpo-25381: Update explanation of exception globals This paragraph in extending/extending.rst was unchanged (except for NULL markup) since committed in 2007 Aug 15 for 2.6 alpha. * Respond to reviews and remove duplication. * Update Doc/extending/extending.rst Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* bpo-45633: Fix newtypes doc typo (GH-29318)Dmitry Smirnov2021-11-021-1/+1
|
* bpo-28737: Document when tp_dealloc should call PyObject_GC_UnTrack() (GH-29246)Sam Gross2021-10-271-1/+13
| | | | | Objects that support garbage collection ("container" objects) should call PyObject_GC_UnTrack() from their destructors before clearing any fields which may point to other "container" objects.
* bpo-42800: Rename AUDIT_READ to PY_AUDIT_READ (GH-25736)Steve Dower2021-04-301-4/+4
|
* bpo-42800: add audit hooks for f_code and tb_frame (GH-24182)Ryan Hileman2021-04-291-5/+10
| | | | | | | | | | Accessing the following attributes will now fire PEP 578 style audit hooks as ("object.__getattr__", obj, name): * PyTracebackObject: tb_frame * PyFrameObject: f_code * PyGenObject: gi_code, gi_frame * PyCoroObject: cr_code, cr_frame * PyAsyncGenObject: ag_code, ag_frame Add an AUDIT_READ attribute flag aliased to READ_RESTRICTED. Update obsolete flag documentation.
* bpo-43774: Remove --without-cycle-gc doc (GH-25364)Victor Stinner2021-04-121-6/+1
| | | | | The configure --without-cycle-gc option has been removed in Python 2.3 by the commit cccd1e72481106b0a373117f32fda6261f3141a7. It's now time to remove the last reference to it in the documentation.
* bpo-43739: Add type declaration Doc/extending/extending.rst exampleShreyan Avigyan2021-04-101-1/+1
|
* bpo-43774: Document configure options (GH-25283)Victor Stinner2021-04-082-2/+3
| | | | | | Add Doc/using/configure.rst documentation to document configure, preprocessor, compiler and linker options. Add a new section about the "Python debug build".
* bpo-42802: Remove distutils bdist_wininst command (GH-24043)Victor Stinner2021-01-081-1/+0
| | | | | | | | | | The distutils bdist_wininst command deprecated in Python 3.8 has been removed. The distutils bidst_wheel command is now recommended to distribute binary packages on Windows. * Remove Lib/distutils/command/bdist_wininst.py * Remove PC/bdist_wininst/ project * Remove Lib/distutils/command/wininst-*.exe programs * Remove all references to bdist_wininst
* bpo-40204: Fix reference to terms in the doc (GH-21865)Victor Stinner2020-08-141-1/+1
| | | | | | | | Sphinx 3 requires to refer to terms with the exact case. For example, fix the Sphinx 3 warning: Doc/library/pkgutil.rst:71: WARNING: term Loader not found in case sensitive match.made a reference to loader instead.
* bpo-40279: Add some error-handling to the module initialisation docs example ↵Cajetan Rodrigues2020-04-251-3/+11
| | | | (GH-19705)
* bpo-38600: NULL -> ``NULL``. (GH-17001)Serhiy Storchaka2019-10-301-1/+1
| | | Also fix some other formatting.
* bpo-38600: Change the mark up of NULL in the C API documentation. (GH-16950)Serhiy Storchaka2019-10-304-57/+57
| | | | Replace all *NULL* with ``NULL``.
* bpo-38391: Fixing a typo for Py_DECREF (GH-16616)Krishna Oza2019-10-071-1/+1
|
* bpo-26868: Fix example usage of PyModule_AddObject. (#15725)Brandt Bucher2019-09-122-7/+27
| | | | | | | | | | | | | | | | * Add a note to the PyModule_AddObject docs. * Correct example usages of PyModule_AddObject. * Whitespace. * Clean up wording. * 📜🤖 Added by blurb_it. * First code review. * Add < 0 in the tests with PyModule_AddObject
* bpo-37493: use _PyObject_CallNoArg in more places (GH-14575)Jeroen Demeyer2019-07-041-1/+1
|
* Doc: Replace the deprecated highlightlang directive by highlight. (#13377)Stéphane Wirtel2019-05-176-8/+8
| | | | highlightlang is deprecated since April 2018 in Sphinx. See https://github.com/sphinx-doc/sphinx/pull/4845
* Doc: add the missing ".tp_flags" in type definition (GH-12902)Wu Wei2019-04-221-0/+1
|
* Doc: define PY_SSIZE_T_CLEAN always (GH-12794)Inada Naoki2019-04-132-3/+9
|
* fix typo in doc (#12686)Caleb Marchent2019-04-101-2/+2
|
* bpo-33012: Fix invalid function cast warnings with gcc 8. (GH-6749)Serhiy Storchaka2018-11-271-1/+1
| | | | | | Fix invalid function cast warnings with gcc 8 for method conventions different from METH_NOARGS, METH_O and METH_VARARGS excluding Argument Clinic generated code.
* bpo-35110: Fix unintentional spaces around hyphens and dashes. (GH-10231)Serhiy Storchaka2018-10-311-2/+3
|
* bpo-17045: Improve C-API doc for PyTypeObject. (gh-7413)Eric Snow2018-06-141-0/+2
| | | The existing doc had a number of info gaps and was a little hard to use. This patch provides several quick-reference tables as well as examples.
* bpo-33012: Fix invalid function cast warnings with gcc 8 for METH_NOARGS. ↵Siddhesh Poyarekar2018-04-291-1/+1
| | | | | | | | | (GH-6030) METH_NOARGS functions need only a single argument but they are cast into a PyCFunction, which takes two arguments. This triggers an invalid function cast warning in gcc8 due to the argument mismatch. Fix this by adding a dummy unused argument.
* Improve highlighting of some code blocks. (GH-6401)Serhiy Storchaka2018-04-083-9/+15
|
* bpo-33201: Modernize "Extension types" doc (GH-6337)Antoine Pitrou2018-04-073-1025/+1016
| | | | | | | | | * bpo-33201: Modernize "Extension types" doc * Split tutorial and other topics * Some small fixes * Address some review comments * Rename noddy* to custom* and shoddy to sublist * Fix markup
* Make formatting of some return codes conforming to the general style. (#5587)Serhiy Storchaka2018-02-091-2/+2
|
* bpo-25910: Link redirections in docs (#1933)Sanyam Khurana2018-01-202-2/+3
| | | Fixes some redirection links in docs.
* Extending Python Doc minor updates (GH-4518)Emanuele Gaifas2017-11-242-4/+4
| | | | Move footnote markers to be closer to the related terminology: before the end of the sentence, instead of after.
* bpo-31443: Formulate the type slot initialization rules in terms of C99. (#3688)Stefan Krah2017-09-221-10/+3
|
* Fix the indentation in Extending Python code example (GH-3244)Sergey Fedoseev2017-08-301-6/+6
| | | | Code was indented with three spaces. Fixed using four spaces.
* bpo-31095: fix potential crash during GC (GH-2974)INADA Naoki2017-08-241-9/+20
|
* bpo-28315: Improve code examples in docs (GH-1372)UltimateCoder2017-05-031-1/+1
| | | | | | Replace File "<stdin>", line 1, in ? with File "<stdin>", line 1, in <module>
* bpo-29918: Add missed "const" modifiers in C API documentation. (#846)Serhiy Storchaka2017-03-302-6/+6
|
* Issue #28761: The fields name and doc of structures PyMemberDef, PyGetSetDef,Serhiy Storchaka2016-11-221-5/+5
| | | | | PyStructSequence_Field, PyStructSequence_Desc, and wrapperbase are now of type "const char *" rather of "char *".
* Fixed the documentation of the structure PyMethodDef.Serhiy Storchaka2016-11-211-2/+2
|\ | | | | | | The fields ml_name and ml_doc are of type "const char *" rather of "char *".
| * Fixed the documentation of the structure PyMethodDef.Serhiy Storchaka2016-11-211-2/+2
| | | | | | | | The fields ml_name and ml_doc are of type "const char *" rather of "char *".
* | Issue #26638: Merge option warning fixes from 3.5 into 3.6Martin Panter2016-10-301-1/+1
|\ \ | |/