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 - <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

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)

Source distribution for doxy-sip 0.1
File Size Uploaded
doxy_sip-0.1.tar.gz 22.2 kB Details

Built distribution (wheel)

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

Release history Release notifications | RSS feed

This release

0.1 This release

2 release files

0.0.1

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