Kida 0.2.9

kida check CLI, render_block import fixes, compiler optimizations, benchmark refresh

Released 2026-03-23.

Kida 0.2.9 ships thekida checkstatic validation CLI, fixes macro import resolution for render_block()on inherited templates, reduces redundant compiler traversals, and refreshes the benchmark matrix for Python 3.14t.

Highlights

  • kida check — Parse every *.html under a directory; optional --strictfor unified {% end %} warnings; optional --validate-callsfor macro call-site vs def validation.
  • render_block()imports — Ancestor template macro imports are honored in block-only renders.
  • Compiler — Fewer redundant AST passes in coalescing and post-compile validation.
  • Benchmarks — Updated results for 3.14t free-threading.

Added

  • kida checkCLI — Directory-wide template validation with loader resolution.
  • --strict — Flags unified {% end %}closers with explicit-close suggestions.
  • --validate-callsBlockAnalyzer checks call sites against {% def %}signatures.
  • Parser tracking — Unified{% end %}closures recorded for strict diagnostics.

Changed

  • Inheritance chain in globals setup — Reuses the cached chain.
  • Compiler hot paths — Consolidated traversals for f-string coalescing, CSE, and saved_blocksiteration.

Documentation

  • End-tag reference for unified{% end %}versus explicit closers.

Upgrade Notes

  1. No breaking template or API changes for normalrender() / get_template()usage.
  2. Addkida check templates/to CI or pre-commit for early error detection.