Doxy-SIP
Doxy-SIP is a Sphinx plugin providing integration between Doxygen, the SIP bindings tools and Sphinx.
The itch to scratch
When writing Python compiled extensions created in C++ and SIP bindings, options to write clean and easy documentation that can be integrated in Sphinx-produced web pages are limited:
Using Doxygen comments in the C++ code:
Ddocumenting an API within the C++ source files is very easy and tools such as Breathe. However, using tools such as Breathe will produce an API with C++ signature whereas Python signatures are different, omit certain C++ objects or add new ones.
Using Python Docstrings:
It limits the functionalities and defeats the philosophy of writing documentation and code in the same place.
Manually documenting in RST files:
Just too tedious.
Doxy-SIP attempts to resolve that by combining Doxygen output and docstring in SIP specification files to provide clear documentation about the C++ implementation, but with a Pythonic presentation.
It takes as input:
A Doxygen output in XML format documenting C++ code.
A SIP project file (pyproject.toml) defining the bindings for the same C++ code.
It defines a new Sphinx domain (sip) and directives to semi-automatically (à la sphinx.ext.autodoc) add documentation on objects defined in the bindings specification files.
Installation
Breathe is available from github and PyPI <https://pypi.org/project/doxy-sip/>. It can be installed with:
pip install doxy-sip
Documentation
Short documentation - <https://github.com/clesav/doxy-sip/blob/main/DOCUMENTATION.rst>.
Requirements
Doxy-SIP requires Python 3.9+, Sphinx 7.2+, Doxygen 1.9.2+ and SIP 6.13+
Acknowledgements
Dimitri van Heesch for Doxygen - <https://www.doxygen.nl>.
Georg Brandl for Sphinx - <https://www.sphinx-doc.org>.
Phil Thompson for SIP - <https://github.com/Python-SIP/sip>.
Metadata
Release files for doxy-sip 0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| doxy_sip-0.1.tar.gz | 22.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| doxy_sip-0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 43.0 kB
Release files / doxy_sip-0.1.tar.gz
| Download URL | doxy_sip-0.1.tar.gz |
|---|---|
| Size | 22.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cf2dceaea2f466a4d2d006c3b2bd11b4c3effce07e6965526ef44c0d961796ea
|
|
BLAKE2b-256 checksum How to use checksums |
aa6d82580a63d3189b9740eac1a3aa67aabb1aa8fafee5e790b28a2dabd5be82
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|
Release files / doxy_sip-0.1-py3-none-any.whl
| Download URL | doxy_sip-0.1-py3-none-any.whl |
|---|---|
| Size | 20.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9e434645ad09127e3d8b1a635958d4167c051e34d7f956656ac5c24a998c06a1
|
|
BLAKE2b-256 checksum How to use checksums |
6b33c301b770df3c9fba6ab1f22be133e2003e51d41114beecdee8f25a6a9642
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|