v0.49.0
4 November 2026
A page cache hit runs fewer queries, and the registry keeps its index version in PRAGMA user_version.
Added
Dir::newest($path, $patterns)returns the newest modified time of any file beneath a folder whose name matches one of thefnmatchpatterns, or 0 when none does.
Changed
- A page cache hit reads its entry once.
Cache::remaining()reuses the expiry the hit already read instead of looking the key up again. - The debug template check scans only the matching template files with
Dir::newest(), and the pages cache boots faster. - The Clockwork addon skips its controllers event on a page cache hit.
- The registry stores its index version in
PRAGMA user_version, like the cache and collection databases. Themetatable is gone and boot runs one query instead of two. The first request after the upgrade remakes the registry's indexes once (seconds, even at 400k pages), and the oldmetatable stays unused until the next rebuild.
Fixed
Sesclears PHP's session cache limiter, sosession_start()no longer sends its ownCache-Controlover the app's.