Skip to main content

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

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)

Source distribution for doxy-sip 0.0.1
File Size Uploaded
doxy_sip-0.0.1.tar.gz 17.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for doxy-sip 0.0.1
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

0.1

2 release files

This release

0.0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page