Home › Roadmap
Where LaiRu is heading — active work, planned features, and what we hope to achieve.
The ultimate goal of LaiRu is a strict, complete, drop-in replacement for the Lasso 9 server on modern Linux — one that Lasso 9 applications can run against without needing code changes or workarounds for missing features. That means:
We are building this incrementally and dependency-first. LaiRu 0.1 is the foundation; each subsequent pass adds a verifiable slice with test fixtures before moving to the layer above.
The active queue is ordered from lowest to highest dependency:
Broaden historical DB row/result serialisation APIs beyond the bounded row-map helpers, sessions, and security policies already covered. The foundation exists; coverage needs to grow to match real Lasso applications.
Finish remaining trait interaction, pure map/array temporary assignment roots, exact
accessor/setter naming edge cases, and visibility/precedence rules beyond the current
generated accessor, listing, and hasMethod slices.
Extend ranking for remaining default/rest edge cases and ambiguity behaviour beyond
duplicate-count diagnostics. Finish historical trait + conflict,
provided-method, and requirement compatibility rules.
Broaden token and parser sub-spans beyond the landed operator/member/invocation failures. Attach exact historical capture-frame source context. Improve remapping for cached template and code-fragment spans.
Introduce public lazy sequence and query result objects. Implement the full eacher/queriable
protocol beyond the current callback-style each(handler). Lazy barrier-aware
query stages, exact group objects, and null-aware aggregate behaviour.
Finish remaining upload handoff controls. Grow multipart binary boundary and root-policy coverage. Add graceful FPM lifecycle and reload behaviour (worker recycling, deployment telemetry) on top of the landed config, pool, and multiplexing controls.
Implement remaining inline result helpers beyond the current map/runtime helper slice. Transaction lifecycle helpers beyond request/inline flag representation. Layout helpers, charset/data conversion edge cases, and older MySQL/MariaDB reset-policy guidance.
Startup/shutdown/module/app-state hooks. Thread and scheduler primitives when fixtures require them. Packaging hardening, migration documentation, and richer per-feature compatibility reports.
The following standard library areas are in scope but not yet implemented:
onCreate slice.These are valid Lasso 9 features that are out of the active queue because they need external infrastructure, product decisions, or a separate implementation pass:
caching_sha2_password and sha256_password RSA users
against a real MySQL 8 server (MariaDB does not ship these plugins).
The code path is unit-tested; live fixtures are parked.
LaiRu is fixture-first: a feature is only considered done when it has passing test fixtures. The best way to contribute is to:
lasso-rust/tests/fixtures/ that demonstrates
the expected behaviour.The fixture index at lasso-rust/tests/fixtures/INDEX.md tags existing cases
by implementation-plan layer and compatibility area.