From 62a22b9f5e579f7d8c3710a65e3d0c53580038ac Mon Sep 17 00:00:00 2001 From: OrcaSlicerBot Date: Mon, 19 Jan 2026 13:05:48 +0000 Subject: [PATCH] Updated Wiki content --- generate_nav.py | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/generate_nav.py b/generate_nav.py index 2af7d46..f2e8241 100644 --- a/generate_nav.py +++ b/generate_nav.py @@ -236,19 +236,24 @@ def update_mkdocs_yml(mkdocs_path: Path, nav_yaml: str) -> None: try: import yaml - class IgnoreUnknownSafeLoader(yaml.SafeLoader): - """Safe loader that allows specific custom tags used in mkdocs.yml.""" + # First try strict safe_load; if Python tags are present, fall back to a + # constrained loader that only permits the mermaid formatter tag. + try: + yaml.safe_load(new_content) + except yaml.constructor.ConstructorError: + class IgnoreUnknownSafeLoader(yaml.SafeLoader): + """Safe loader that allows specific custom tags used in mkdocs.yml.""" - def _pymdown_python_name(loader, node): - # Treat !!python/name:pymdownx.superfences.fence_code_format as its scalar value - return loader.construct_scalar(node) + def _pymdown_python_name(loader, node): + # Treat !!python/name:pymdownx.superfences.fence_code_format as its scalar value + return loader.construct_scalar(node) - IgnoreUnknownSafeLoader.add_constructor( - 'tag:yaml.org,2002:python/name:pymdownx.superfences.fence_code_format', - _pymdown_python_name, - ) + IgnoreUnknownSafeLoader.add_constructor( + 'tag:yaml.org,2002:python/name:pymdownx.superfences.fence_code_format', + _pymdown_python_name, + ) - yaml.load(new_content, Loader=IgnoreUnknownSafeLoader) + yaml.load(new_content, Loader=IgnoreUnknownSafeLoader) except ImportError: # yaml module not available, skip validation pass