v0.3.0
<p>The hand-written docs browser is replaced by a live reference generated from PHP reflection, the runtime moves to FrankenPHP with optional worker mode, and a self-contained Docker image ships for releases.</p>
28 September 2026
Added
- Docs reference generated from reflection - every all-static Toolkit class plus a curated list of core framework objects (
App,Page,Record,Field,Request,Router,Registry, etc.) is walked at request time; a method's page shows its full signature, docblock summary, declaring class, and source location. Routes:/docs/{category},/docs/{category}/{class},/docs/{category}/{class}/{method}. - FrankenPHP as the base runtime, replacing
php-fpmbehind a separate Caddy sidecar -compose.yamlcollapses to a singleappservice, and the Caddyfile serves directly viaphp_server. - Optional FrankenPHP worker mode via a new
site/public/worker.phpentry point (persistent worker loop,gc_collect_cycles()between iterations); the Caddyfile ships the config commented out, to opt in without code changes. phlat/Dockerfile.dist- a self-contained release image baking inphlat/,site/, andvendor/(viacomposer install --no-dev --classmap-authoritative), so onlydata/needs mounting at runtime.
Fixed
SessionRoot's idle-timeout check used a "run once per request" flag that, under FrankenPHP worker mode's persistingAppinstance, only ever ran on a worker's very first request - silently disabling the idle timeout for every request after.App::execute()now resets that flag at the start of every request.- Git commands against the bind-mounted repo failed inside the container ("detected dubious ownership") since the container runs as root over a host-owned mount - the Dockerfile now marks
/appas a git safe directory.
Removed
- The hand-authored docs topic files from the previous release, superseded by the reflection-generated reference above.
Comments
No comments yet. Be the first!
Loading form…