Releases
v0.8.0
Version 0.8.0 release - Ga1ahad and Scientific Witchery
Compare
Sorry, something went wrong.
No results found
kokic
released this
14 Mar 11:24
Highlights
Unified anonymous subtree slug management across markdown and Typst pipelines with shared compiler modules.
Added hash-anchor navigation for internal anonymous subtree entries in catalog/TOC, avoiding dead page jumps.
Added header hash anchor ([#]) support when slug text is hidden.
Standardized anonymous subtree ordinal initialization to start from 1 for clearer catalog numbering alignment.
Preserved anonymous subtree hash-id suffix semantics for stable in-page anchor resolution.
Refined dependency feature flags and CLI help dependency wiring.
Behavior changes and migration notes
Anonymous subtree slugs now consistently start at :1 (instead of :0) in both markdown and Typst extraction flows.
Internal anonymous subtree catalog bullets now target in-page hash anchors (#...) instead of standalone page URLs.
Header rendering now appends [#] hash links when show_slug is disabled.
Hash-id generation preserves anonymous suffix formatting for slugs like {source_slug}/:{ordinal} (for example book/index/:1 -> book-index:1).
Subtree slug validation and duplicate diagnostics are now emitted through shared slug-resolution utilities with clearer error messages.
Features and improvements
Added dedicated anonymous_slug state management for collision-safe anonymous slug allocation.
Added dedicated subtree_slug utilities for subtree slug resolution and uniqueness checks.
Improved markdown nested subtree extraction flow with explicit root/nested extraction paths.
Improved catalog item rendering API to support hash-link mode for structural anonymous nodes.
Updated featured Typst demo subtree declaration to use semantic helper syntax (#exegesis(...)).
Performance
Simplified compile-time slug cleanup/generation paths by removing redundant cleanup branches.
Reduced duplicate filesystem cleanup work in compiler stale/output handling paths.
Stability and error handling
Improved anonymous subtree collision handling with source-slug-based allocation and consistent ordinal state.
Improved duplicate subtree slug diagnostics by distinguishing subtree kinds (subtree vs typst subtree).
Updated dependency graph and feature flags (including clap help support) for more reliable CLI behavior.
Code organization and naming
Split anonymous slug logic into compiler/anonymous_slug.rs.
Split subtree slug resolution/validation into compiler/subtree_slug.rs.
Refined parser subtree extraction naming (extract_subtrees_root / extract_subtrees_nested) and data flow.
Cleaned anonymous slug import usage and documented ordinal-initial constant intent.
Testing and testability
Added hash-id regression coverage for anonymous suffix separator preservation.
Added header rendering test coverage for hash anchor output when slug link is hidden.
Added/updated writer tests to verify TOC hash-link behavior for internal anonymous subtrees.
Updated parser/Typst subtree tests to align with ANON_SUBTREE_ORDINAL_INITIAL semantics.
You can’t perform that action at this time.