Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
Added
- Window collision detection prevents silent data overwrites when multiple templates use the same window attribute
- Explicit merge strategies (shallow, deep, strict) for controlled data sharing between templates
HydrationCollisionError
with detailed error messages showing file paths and line numbersHydrationRegistry
for thread-safe tracking of window attributes per requestmerge_strategy
method on RueDocument to extract merge attribute from data elements- JavaScript merge functions for client-side data composition
- Comprehensive test coverage for collision detection and merge strategies
Security
- Window collision detection prevents accidental data exposure by making overwrites explicit
- All merge operations happen client-side after server-side interpolation and JSON serialization
- Request-scoped registry prevents cross-request data leakage
[0.1.0] - 2024-01-XX
Added
- Initial release of Rhales
- Ruby Single File Components (.rue files) with server-side rendering
- Client-side data hydration with secure JSON injection
- Handlebars-style template syntax
- Pluggable authentication adapters
- Framework-agnostic design with Rails and Roda examples
- Comprehensive test suite