From e7087176dc719fe7ca93eff725818084d5fdef16 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Tue, 22 Sep 2026 14:23:39 +0200 Subject: [PATCH 1/4] Configure `linkcheck_ignore` to ignore `_static` directory. - make linkcheckbroken yields a false positive for static resources because the files don't exist in the destination directory at the time of inspection. Static assets are copied as one of Sphinx's final steps. --- docs/conf.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/conf.py b/docs/conf.py index ae03e3ef5..2568f58d1 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -72,6 +72,8 @@ r"https://github.com/search", # always rate limited, causes linkcheck to stall r"https://docs.github.com/en/get-started/.*", # GitHub docs require auth r"https://www.linode.com/.*", # tests say 500 Server Error, but manually they work + # Ignore static file downloads + r"^/_static/", # ### Start of list of anchored links # Prior to each PloneConf, uncomment these lines to verify that the links work, # although the anchor cannot be found. @@ -203,7 +205,9 @@ # Add any paths that contain custom static files (such as style sheets) here, # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". -html_static_path = ["_static"] +html_static_path = [ + "_static", +] # -- Options for MyST markdown conversion to HTML ----------------------------- From 8d44b3599b1b9f586c3eaa267ecc574180828057 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Tue, 22 Sep 2026 14:29:44 +0200 Subject: [PATCH 2/4] - Ignore `_images`, too - Ignore npmjs.com as they block HEAD requests - Sort entries - Use absolute path from root for `/_images` --- docs/conf.py | 4 +++- docs/mastering-plone/dexterity.md | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/conf.py b/docs/conf.py index 2568f58d1..1e7f3f147 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -68,12 +68,14 @@ r"http://127.0.0.1", r"http://example.com", r"https://docutils.sourceforge.io/", # Blocked as crawler + r"https://docs.github.com/en/get-started/.*", # GitHub docs require auth r"https://github.com/plone/training/issues/new/choose", # requires auth r"https://github.com/search", # always rate limited, causes linkcheck to stall - r"https://docs.github.com/en/get-started/.*", # GitHub docs require auth + r"https://www.npmjs.com/", # tests say 403 Server Error, but manually they work r"https://www.linode.com/.*", # tests say 500 Server Error, but manually they work # Ignore static file downloads r"^/_static/", + r"^/_images/", # ### Start of list of anchored links # Prior to each PloneConf, uncomment these lines to verify that the links work, # although the anchor cannot be found. diff --git a/docs/mastering-plone/dexterity.md b/docs/mastering-plone/dexterity.md index 4fbc7465d..054dfcf3d 100644 --- a/docs/mastering-plone/dexterity.md +++ b/docs/mastering-plone/dexterity.md @@ -123,7 +123,7 @@ We will only use the Plone web interface features. ````{card} ```{image} _static/volto_dexterity_types.png :alt: Edit content type schema through the web - :target: ../_images/volto_dexterity_types.png + :target: /_images/volto_dexterity_types.png ``` +++ _Edit content type schema through the web_ @@ -134,7 +134,7 @@ We will only use the Plone web interface features. ````{card} ```{image} _static/volto_edit_schema.png :alt: Add field through the web (TTW) - :target: ../_images/volto_edit_schema.png + :target: /_images/volto_edit_schema.png ``` +++ _Add field through the web (TTW)_ @@ -146,7 +146,7 @@ We will only use the Plone web interface features. ````{card} ```{image} _static/volto_add_news_item.png :alt: See new additional custom field in a fresh new news item - :target: ../_images/volto_add_news_item.png + :target: /_images/volto_add_news_item.png ``` +++ _See new additional custom field in a fresh new news item_ From 46037025cd02fba34e0a993c9cfdc248394853b4 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Tue, 22 Sep 2026 14:32:23 +0200 Subject: [PATCH 3/4] Ignore chromewebstore --- docs/conf.py | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/conf.py b/docs/conf.py index 1e7f3f147..c0481112b 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -67,6 +67,7 @@ r"http://0.0.0.0", r"http://127.0.0.1", r"http://example.com", + r"https://chromewebstore.google.com/", # Redirects to consent page that requires auth r"https://docutils.sourceforge.io/", # Blocked as crawler r"https://docs.github.com/en/get-started/.*", # GitHub docs require auth r"https://github.com/plone/training/issues/new/choose", # requires auth From 1c8fa9526038d33a3f9018ff48b9d55dd0626487 Mon Sep 17 00:00:00 2001 From: Steve Piercy Date: Tue, 22 Sep 2026 14:33:52 +0200 Subject: [PATCH 4/4] Ignore merriam-webster --- docs/conf.py | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/conf.py b/docs/conf.py index c0481112b..afadee156 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -73,6 +73,7 @@ r"https://github.com/plone/training/issues/new/choose", # requires auth r"https://github.com/search", # always rate limited, causes linkcheck to stall r"https://www.npmjs.com/", # tests say 403 Server Error, but manually they work + r"https://www.merriam-webster.com/", # tests say 403 Server Error, but manually they work r"https://www.linode.com/.*", # tests say 500 Server Error, but manually they work # Ignore static file downloads r"^/_static/",