diff --git a/doc/_extensions/zephyr/manifest_projects_table.py b/doc/_extensions/zephyr/manifest_projects_table.py index 2fc7069c00468..0ef3c0e5861bd 100644 --- a/doc/_extensions/zephyr/manifest_projects_table.py +++ b/doc/_extensions/zephyr/manifest_projects_table.py @@ -27,6 +27,7 @@ """ import re +from pathlib import Path from typing import Any from docutils import nodes @@ -69,7 +70,15 @@ def rev_url(base_url: str, rev: str) -> str: def run(self) -> list[nodes.Element]: active_filter = self.options.get("filter", None) - manifest = Manifest.from_file(self.env.config.manifest_projects_table_manifest) + manifest_path = Path(self.env.config.manifest_projects_table_manifest) + with open(manifest_path) as f: + manifest_data = f.read() + + # Use from_data instead of from_file to avoid loading local configuration + # This ensures we show projects that are enabled by default, independently of any local + # override in the user's manifest.project-filter setting. + manifest = Manifest.from_data(source_data=manifest_data) + projects = [] for project in manifest.projects: if project.name == "manifest": diff --git a/doc/conf.py b/doc/conf.py index a8d9d1dd4feb2..21bbcd3d80417 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -292,6 +292,10 @@ notfound_urls_prefix = f"/{version}/" if is_release else "/latest/" +# -- Options for zephyr.manifest_projects_table -------------------------- + +manifest_projects_table_manifest = str(ZEPHYR_BASE / "west.yml") + # -- Options for zephyr.gh_utils ------------------------------------------ gh_link_version = f"v{version}" if is_release else "main"