bengal-chirp 0.4.0
Chirp 0.4.0
Focus: refine the public API surface, add shell tabs, harden free-threading safety, and improve performance.
Highlights
Refined public API
New first-class types on the public surface (#56):
RenderPlan— captures template + context intent before rendering, enabling inspection and middleware hooks.MutationResult— structured return type for mutation routes, pairing redirect targets with OOB fragment updates.tools— expanded utility surface exposed from the top-level package.
Shell tabs contract
Shell tabs (#54) introduce a layout contract for tabbed navigation shells, enabling multi-section apps with consistent chrome and tab state management.
Scaffold command
chirp scaffold (#50) generates project boilerplate — routes, templates, and config — for new apps and mounted page directories.
Performance
- Eliminated redundant sorting, allocations, and O(n) scans across hot paths (#52).
Hardened
- Free-threading safety improvements and tighter linting rules (#51).
Fixed
- Alpine.js injection now uses explicit
/dist/cdn.min.jsCDN paths, preventing silent CJS breakage in browsers (#49). - Added
unsafe-evalto default CSP for Alpine.js compatibility (#49). - Test guards against bare jsDelivr CDN URLs in Alpine injection (#53).
Dependencies
bengal-pounce>=0.5.1(bumped from>=0.4.0)kida-templates>=0.3.2(bumped from>=0.3.1)chirp-ui>=0.2.5(bumped from>=0.2.3)
Upgrading
:::{tab-set}
:::{tab-item} UV
uv pip install --upgrade "bengal-chirp>=0.4.0":::
:::{tab-item} pip
pip install --upgrade "bengal-chirp>=0.4.0":::
:::{/tab-set}