Skip to content

Are API docs needed for this repo? #10

@yousefmoazzam

Description

@yousefmoazzam

There's API docs being generated in the sphinx-build.sh script:

# sphinx-apidoc generates source files that use sphinx.ext.autodoc to document all found modules
sphinx-apidoc -feT -t=$DIR/source/_templates -o $DIR/source/api $DIR/../httomo_backends

and similarly in the CI:

- name: Build api docs
run: sphinx-apidoc -feT -t=./docs/source/_templates -o ./docs/source/api ./httomo_backends

but the output rst files from this aren't being included in index.rst (so the API docs aren't included in the final docs deployment).

So that's one reason why I'm questioning if API docs are needed for this repo, because they're being built but not being used in the final docs deployment.

Another reason is if this repo needs API docs. At the moment, there's a handful of scripts used for generating the YAML templates, and that's it. The httomo_backends/ dir isn't even a python package (there's no __init__.py file), so there's no python modules in this repo really, just some scripts for generating YAML templates.

One question is: do we need/want API docs for the handful of scripts currently here?

Another question: for stuff that gets moved to httomo-backends (such as memory estimators and padding calculators from httomo, see DiamondLightSource/httomo#429), would we like API docs for those? At the moment in httomo, memory estimators are private functions where they reside, but I imagine that when they get moved into httomo-backends they'll be made public functions - which may make sense to have API docs as they're public, but may also not make sense to have API docs, because they all have the same interface (parameters), and their usage is made obvious by how they are used in httomo. In which case, perhaps API docs in httomo-backends isn't really needed, but rather, general documentation on how the memory estimator and padding calculator functions are used in httomo/how they hook into httomo.

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationquestionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions