pypa / pypa/packaging.python.org
Add more helper libraries to the extension modules page
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 1.7k
- Forks
- 1.7k
- Avg merge
- 3d 12h
- Merged PRs (30d)
- 4
Description
Rather than creating multiple issues, I've expanded this one to include a checklist for popular extension module helpers that we don't currently mention:
- SIP is the C/C++ binding generator used for PyQT and wxWindows: https://pypi.python.org/pypi/SIP/
- PyCXX: http://cxx.sourceforge.net/PyCXX-Python3.html
- Boost::Python: http://www.boost.org/doc/libs/1_66_0/libs/python/doc/html/index.html
(We may not go into as much detail for these as we do the big three of SWIG, cffi, and Cython, but they're all worth mentioning, especially in combination with #359 to cover milksnake as a meta build system that works with current versions of pip)
One of the neat features of sip specifically is that it can (does?) target the stable ABI in Python 3 at code generation time, with operations that require access to the full CPython API delegated to the runtime sip support module. As a result, it's possible to use it to ship version-independent CPython extension modules that just need the corresponding version of the sip runtime library, rather than having to recompile your own extensions for every new CPython release.
Contributor guide
No contributing guide indexed for this repository
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 at the extension modules page and compare its existing coverage with the checklist in this issue. Add concise mentions and links for SIP, PyCXX, and Boost::Python, with the relevant SIP stable-ABI context if appropriate. Done means all three checklist items are covered on the page.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100