fix: fail early if mkdocstrings is enabled but not installed (#338)

Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
This commit is contained in:
Timothée Mazzucotelli
2026-02-10 12:27:54 +01:00
committed by GitHub
parent e3fc49f72f
commit e233f9f7d4
+7
View File
@@ -27,6 +27,7 @@ import hashlib
import importlib
import os
import pickle
from importlib.util import find_spec
from pathlib import Path
from typing import IO, Any
from urllib.parse import urlparse
@@ -423,6 +424,12 @@ def _apply_defaults(config: dict, path: str) -> dict:
if "mkdocstrings" in config["plugins"]:
mkdocstrings_config = config["plugins"]["mkdocstrings"]["config"]
if mkdocstrings_config.pop("enabled", True):
if not find_spec("mkdocstrings"):
raise ConfigurationError(
"mkdocstrings plugin is enabled, but mkdocstrings is not "
"installed. Please install mkdocstrings or disable the "
"plugin."
)
mkdocstrings_config["markdown_extensions"] = [
{ext: mdx_configs.get(ext, {})} for ext in markdown_extensions
]