Skip to content

Make Doxygen developer documentation available via readthedocs #1844

Open
@jougs

Description

@jougs

Before #1843, NEST used the Breathe extension for Sphinx to extract the Doxygen code comments from the source base. However, the extracted information was not (and still isn't) shown on Read the Docs.

The main task for solving this issue is to decide how and where in the documentation to display the developer level information and making the necessary changes to the configuration and build system. Activating the Breathe extension itself involves the following steps:

  1. Adding a Doxyfile to the doc directory. See here for the version that was removed in Fix doc buildsystem #1843.
  2. Adding "breathe" to the extensions list defined in doc/conf.py:L117
  3. Configuring Breathe in doc/conf.py:
    breathe_projects = {"EXTRACT_MODELS": build_path / "doc/breathe/doxygen/EXTRACT_MODELS/xml"}
    breathe_projects_source = {"EXTRACT_MODELS": (root_path / "doc", list(root_path.rglob('*.h')))}
    breathe_default_project = "EXTRACT_MODELS"
    
    # I'm not sure if the following is actually needed...
    subprocess.call('doxygen', shell=True)
  4. Adding a Breathe directive to one or more RST files in the documentation. An example might be
    .. autodoxygenindex::
       :project: EXTRACT_MODELS

This issue might or might not have a connection to some of the action items in #1659.

Metadata

Metadata

Labels

I: No breaking changePreviously written code will work as before, no one should note anything changing (aside the fix)S: NormalHandle this with default priorityT: EnhancementNew functionality, model or documentationstaleAutomatic marker for inactivity, please have another look here

Type

No type

Projects

Status

In progress

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions