Hasan Iqbal
Added documentation initial skeleton
ee037e9 unverified
raw
history blame
1.24 kB
"""Module for generating switch.json file."""
#!/usr/bin/env python3
from __future__ import annotations
import json
import os
ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), ".."))
WEBSITE_HOME = "https://openfactcheck.readthedocs.io/en/"
DOCS_HOME = "docs"
DOCS_LATEST = "latest"
DOCS_ROOT = os.path.join(ROOT, DOCS_HOME)
DOCS_DEST = os.path.join(ROOT, "public")
VERSION_FILE = os.path.join(DOCS_ROOT, "src", "_static", "versions.json")
def format_version_entry(version: str) -> dict[str, str]:
"""Format a single entry of switcher.json, as expected by `pydata-sphinx-theme`."""
return {
"url": "/".join((WEBSITE_HOME, version, "")),
"version": version,
}
def validate_docs_folder(path: str) -> bool:
"""Check that folder with path specified contains valid documentation."""
return os.path.isdir(path) and os.path.isfile(os.path.join(path, "index.html"))
def get_versions() -> list[str]:
"""List available versions of the package in the expected order."""
with open(VERSION_FILE) as infile:
versions = json.load(infile)
print("Available versions:")
for version in versions:
print(f" - {version}")
if __name__ == "__main__":
get_versions()