Docs Examples Focus on Outdated Single-Phase Init Modules and Static Types
Open
Nobody has claimed this yet.
docs
- Dominant language
- Python
- Stars
- 77.2k
- Forks
- 35.9k
- PR merge metrics
- PR metrics pending
Description
A variety of pages show examples (or provide explanations) around single-phase init modules and static types, but should focus on the newer, recommended alternatives. For example:
- https://docs.python.org/3/extending/extending.html#intermezzo-errors-and-exceptions
https://github.com/python/cpython/blob/main/Doc/extending/extending.rst?plain=1#L206-L265 - https://docs.python.org/3/extending/extending.html#the-module-s-method-table-and-initialization-function
https://github.com/python/cpython/blob/main/Doc/extending/extending.rst?plain=1#L355-L379 - https://docs.python.org/3/extending/newtypes_tutorial.html
https://github.com/python/cpython/blob/main/Doc/extending/newtypes_tutorial.rst - https://docs.python.org/3/extending/newtypes.html
https://github.com/python/cpython/blob/main/Doc/extending/newtypes.rst - https://docs.python.org/3/extending/embedding.html#extending-embedded-python
https://github.com/python/cpython/blob/main/Doc/extending/embedding.rst?plain=1#L225
For reference:
- https://docs.python.org/3/howto/isolating-extensions.html#isolating-extensions-howto
- https://docs.python.org/3/c-api/module.html
- https://docs.python.org/3/c-api/type.html#creating-heap-allocated-types
Linked PRs
- gh-134296
- gh-134753
- gh-134754
- gh-134764
- gh-134773
- gh-134775
- gh-134827
- gh-134828
- gh-134932
- gh-134983
- gh-135126
- gh-135174
- gh-135213
- gh-135214
- gh-135470
- gh-140214
- gh-140664
- gh-142314
- gh-144183
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by comparing the cited sections in Doc/extending/extending.rst, newtypes_tutorial.rst, newtypes.rst, and embedding.rst with the isolating extensions, module, and type references. Identify which examples and explanations still use single-phase initialization or static types, then update them to the recommended alternatives and verify all listed documentation pages are consistent.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, python
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100