ria-toolkit-oss/docs/source/conf.py

76 lines
2.6 KiB
Python
Raw Normal View History

2025-09-04 12:29:54 -04:00
# Configuration file for the Sphinx documentation builder.
import os
import sys
sys.path.insert(0, os.path.abspath(os.path.join('..', '..')))
# For the full list of built-in configuration values, see the documentation:
# https://www.sphinx-doc.org/en/master/usage/configuration.html
# -- Project information -----------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information
project = 'ria-toolkit-oss'
copyright = '2025, Qoherent Inc'
author = 'Qoherent Inc.'
release = '0.1.2'
2025-09-04 12:29:54 -04:00
# -- General configuration ---------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration
extensions = [
'sphinx.ext.todo',
'sphinx.ext.autodoc',
'sphinx.ext.viewcode',
'sphinx.ext.intersphinx'
]
autodoc_typehints = "none"
autodoc_typehints_format = "short"
python_use_unqualified_type_names = True
todo_include_todos = True
templates_path = ['.templates']
exclude_patterns = []
2025-09-12 14:51:45 -04:00
# These modules are required for SDR hardware support, but are not listed
# as Python dependencies in pyproject.toml because they must be installed
# separately (often with system-level drivers or vendor packages).
# We mock them here so Sphinx can build the documentation without requiring
# the actual hardware libraries to be present.
autodoc_mock_imports = ['uhd', 'adi', 'iio', 'rtlsdr', 'bladerf']
2025-09-04 12:29:54 -04:00
autodoc_default_options = {
'members': True,
'special-members': '__call__'
}
version_link = f"{sys.version_info.major}.{sys.version_info.minor}"
intersphinx_mapping = {'python': (f'https://docs.python.org/{version_link}', None),
'numpy': ('https://numpy.org/doc/stable', None),
'scipy': ('https://docs.scipy.org/doc/scipy', None),
2025-09-12 14:51:45 -04:00
'pandas': ('https://pandas.pydata.org/pandas-docs/stable', None),
'h5py': ('https://docs.h5py.org/en/stable', None),
'plotly': ('https://plotly.com/python-api-reference', None)}
2025-09-04 12:29:54 -04:00
def autodoc_process_docstring(app, what, name, obj, options, lines):
for i in range(len(lines)):
lines[i] = lines[i].replace("np.", "numpy.")
autodoc_member_order = 'bysource'
def setup(app):
app.connect("autodoc-process-docstring", autodoc_process_docstring)
# -- Options for HTML output -------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output
html_theme = 'sphinx_rtd_theme'