# Configuration file for the Sphinx documentation builder.
#
# 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 = "decent-bench"
copyright = "2025, Team Decent"
author = "team-decent"
release = "0.0.0"

# -- General configuration ---------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration

import os
import sys

sys.path.insert(0, os.path.abspath("../.."))


extensions = [
    "sphinx.ext.autodoc",  # Expand rst automodule directives generated by `sphinx-apidoc`
    "sphinx.ext.intersphinx",  # Link to types from external packages
    "sphinx.ext.napoleon",  # Parse Google style docstrings
    "sphinx.ext.viewcode",  # View source code
]

autodoc_default_options = {
    "special-members": "__add__",
}
autodoc_member_order = "bysource"
autodoc_preserve_defaults = True

nitpicky = True
nitpick_ignore = [("py:class", "numpy.float64")]

intersphinx_mapping = {
    "networkx": ("https://networkx.org/documentation/stable/", None),
    "numpy": ("https://numpy.org/doc/stable/", None),
    "python": ("https://docs.python.org/3", None),
}


exclude_patterns = []


# -- Options for HTML output -------------------------------------------------
# https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output

html_theme = "pydata_sphinx_theme"
html_theme_options = {"search_as_you_type": True}
html_context = {"default_mode": "auto"}
html_show_sourcelink = False
html_logo = "_static/logo.png"
