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 structured
site.*/build.*accessors, backward-compatible loader alias, and explicit disabled-feature booleans (e.g.,features.rss: false). - Outputs config: Rename
features.yaml→outputs.yaml(compat preserved); remove unusedfeatures.syntax_highlightingtoggle. - Kida packaging: Remove bundled Kida engine in favor of
kida-templates>=0.1.1, keeping template support while shrinking the tree.
CLI & Cache
- Cache CLI: New
bengal 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.