Commit Graph
36 Commits
Author SHA1 Message Date
Timothée Mazzucotelli e6c56cef60 refactor: report invalid autorefs under invalid_links validation setting
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-08-18 17:08:20 +02:00
Martin Donath 9973ac981b fix: regression reporting unresolved references (#866)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-08-17 18:33:03 +02:00
squidfunk 91d9d5031e fix: ignore surrounding whitespace in inline link targets (#861)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-08-14 18:45:43 +02:00
squidfunk 6774d6159c fix: invalid code span detection in reference extractor
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-08-14 18:36:52 +02:00
Martin Donath bb2cbee9e8 fix: defaults for mike incorrectly set
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-08-13 14:37:29 +02:00
Timothée Mazzucotelli db4f8ef5dc fix: avoid unresolved reference false-positive for autorefs
This commit fixes validation reporting false unresolved-reference errors for Markdown links that are successfully resolved by autorefs. Validation now runs after pages render, so it uses the autorefs results from the current build state and emits one complete issue report for that state.

**Validation implementation summary:**

- Page rendering now returns the identifiers that autorefs resolved, alongside rendered output.
- Validation combines those resolutions with the source-page references and anchors; a reference resolved by autorefs is no longer reported as unresolved.
- The workflow tracks a generation for page content and navigation, so it waits for matching render results from every page before creating issues. This prevents validation from using stale render data or printing duplicate reports during incremental updates.
- Reference collection now follows the configured documentation directory, and tests cover reporting after rendering and a subsequent clean rebuild.

Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-08-13 12:11:48 +00:00
Timothée Mazzucotelli bf084fc3c6 chore: add configuration testing
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-07-07 15:42:43 +02:00
Timothée Mazzucotelli 7158eab75a fix: catch misconfiguration of site_dir and docs_dir (#780)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-07-03 11:56:58 +02:00
Timothée Mazzucotelli e6b55fe6c6 fix: strip images from toc labels (#749)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-06-13 10:24:19 +00:00
Timothée Mazzucotelli 8d9536adf8 fix: revert "fix: brackets in indented code blocks recognized as unresolved link references (#700)" (#735)
This reverts commit c40f649f7b, as it was causing more issues with reference-style links, for example https://github.com/zensical/zensical/issues/735. Proper fixes will land later.

Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-06-05 13:31:56 +00:00
squidfunk eb7211503c fix: ignore Markdown comments [//]: ... during link validation
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-06-04 19:07:40 +02:00
squidfunk a4866d0fa6 chore: make ruff happy
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-06-04 19:03:03 +02:00
squidfunk c40f649f7b fix: brackets in indented code blocks recognized as unresolved link references (#700)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-06-04 18:59:54 +02:00
squidfunk 93cc869978 fix: snippet markers recognized as unresolved link references (#700)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-06-04 18:38:01 +02:00
Timothée Mazzucotelli db1f19c4ae fix: provide conf attribute in macros' env object
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-25 09:16:54 +00:00
squidfunk d7ccbe66a8 fix: anchors with escaped chars not matched during link validation (#703)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-22 09:39:16 +02:00
squidfunk 8b7e29e672 fix: empty footnote ref classified as link ref (#702)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-22 09:18:13 +02:00
squidfunk 1e873a397c fix: ignore links in code after literal dollar during link validation (#691)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-19 11:26:26 +02:00
squidfunk 7be40c6ceb fix: ignore GitHub-style callouts during link validation (#688)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-19 10:58:20 +02:00
squidfunk 85c3b1e321 fix: ignore [TOC] marker during link validation (#686)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-19 10:44:45 +02:00
Martin Donath 7a5d97abe0 Merge pull request #680 from zensical/fix/validation-edge-cases
harden link validation
2026-05-15 11:27:35 +02:00
squidfunk 4355dad3ce fix: harden link validation for files with CRLF line endings
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-15 11:23:45 +02:00
squidfunk a418c6bd3c fix: link validation doesn't ignore fenced code blocks when \r is present
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-15 11:05:07 +02:00
squidfunk b31dd1472c fix: $ at end of line breaks link validation (#659)
fix: `$` at end of line breaks link validation

Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-15 10:41:12 +02:00
Timothée Mazzucotelli 17c67a2f62 fix: remove abbreviations from table of contents (#669)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-14 11:30:12 +00:00
Martin Donath 820755463d fix: don't consider [] and [][] link references (#663)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-12 09:51:22 +02:00
Martin Donath c338b270b5 fix: two backticks with no closing run trip up link parser (#663) (#665)
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-12 09:43:32 +02:00
Timothée Mazzucotelli 5ef9ee4ee3 chore: use beautifulsoup and lxml to check HTML in tests
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-10 17:50:03 +00:00
Timothée Mazzucotelli 65931820ba chore: incorporate autorefs
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-10 15:20:44 +00:00
Timothée Mazzucotelli d24ea24a44 feature: support table reader functionality
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-09 12:54:10 +00:00
Martin Donath bf26d1be5e refactor: implement parser for link validation
Signed-off-by: squidfunk <martin.donath@squidfunk.com>
2026-05-09 14:28:08 +02:00
Timothée Mazzucotelli ee64247c31 chore: setup reusable fixtures for extensions testing (#645)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-07 11:52:47 +00:00
Timothée Mazzucotelli bee1c3f7ea fix: give higher priority than superfences to macros preprocessor (#638)
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-05 21:41:00 +00:00
Timothée Mazzucotelli f7fe088a37 feature: support macros plugin
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-04 14:40:04 +00:00
Timothée Mazzucotelli 91a9f85d77 chore: fix import in test file
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-04 11:02:50 +00:00
Timothée Mazzucotelli c23fb92789 chore: setup pytest and initial markdown extension testing
Signed-off-by: Timothée Mazzucotelli <dev@pawamoy.fr>
2026-05-04 09:32:24 +00:00