Bengal 0.1.8 (Draft)

External references, cross-site link previews, config v2, cache CLI, and Patitas CommonMark improvements

Key additions: Cross-project documentation links and cross-site previews, nested config v2, cache hashing CLI with autodoc self-validation, and Patitas CommonMark compliance improvements.


Highlights

External Linking & Previews

  • External references:[[ext:project:target]]syntax with template-based resolution, cached index lookups, and exportedxref.jsonfor consumers; includes built-in templates for Python stdlib and common libs (requests/httpx, pydantic/fastapi/sqlalchemy, numpy/pandas).
  • Link previews: Cross-site previews for whitelisted hosts with allowed host/scheme settings, CORS fetch, and per-host failure thresholds.

Config & Packaging

  • Config v2: Nested config architecture with structuredsite.*/build.*accessors, backward-compatible loader alias, and explicit disabled-feature booleans (e.g.,features.rss: false).
  • Outputs config: Renamefeatures.yamloutputs.yaml(compat preserved); remove unusedfeatures.syntax_highlightingtoggle.
  • Kida packaging: Remove bundled Kida engine in favor ofkida-templates>=0.1.1, keeping template support while shrinking the tree.

CLI & Cache

  • Cache CLI: Newbengal cache inputsandbengal cache hashcommands (JSON/verbose) for deterministic CI cache keys that include the Bengal version.
  • Autodoc cache validation: Track hash+mtime for autodoc sources, detect stale inputs in taxonomy change detection, and migrate cleanly from pre-0.1.8 caches.
  • GitHub Pages cache: Workflow cache invalidation tightened to rebuild when outputs are missing.

Markdown Parser

  • Patitas: Container-stack architecture phases 1-4 for lists/blockquote handling, lazy blockquote continuation, entity parsing fixes; full CommonMark 0.31.2 compliance (652/652 spec examples, no xfails).

Upgrading

uv pip install --upgrade bengal
# or
pip install --upgrade bengal

Setdraft: falseand adjust the date when the release is finalized.