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 - </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.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.0.1.tar.gz | 17.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| doxy_sip-0.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 33.6 kB
Release files / doxy_sip-0.0.1.tar.gz
| Download URL | doxy_sip-0.0.1.tar.gz |
|---|---|
| Size | 17.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
26c5c27552e3f22c6da231ad200c0ddd7567256ca34411c1f9ba84bfc8d8d960
|
|
BLAKE2b-256 checksum How to use checksums |
1d120a146369ba0feb1d9a30df2942943cf6700c53e946bdb35f25501f66dddb
|
| 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.0.1-py3-none-any.whl
| Download URL | doxy_sip-0.0.1-py3-none-any.whl |
|---|---|
| Size | 16.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4d01356287f18e308da31f9b89d1825166584724abb38721b6f9c07ecc66a948
|
|
BLAKE2b-256 checksum How to use checksums |
d64915e444493744766f8135ff02ae745d7d335d1c82cf5ce582345f9c70a2e4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|