EffectWeb 0.5.0
EffectWeb 0.5.0 adds scoped rendering for Effect applications and fixes resource ownership across mounting, queries, and UI operations.
- Create applications with
mount,makeUiRuntime,makeProgram, andmakeModelOwner; capture services in view setup, event handlers, and DOM bindings. - Observe existing Effect streams,
SubscriptionRefs, and atoms throughSource, with explicit projections and independently subscribed view regions. - Use
memoViewandlistViewto skip unchanged view evaluations through explicit input comparisons. - Encode non-plain query arguments and pagination cursors explicitly, and use the captured Effect clock for cache freshness.
- Join asynchronous cleanup on cancellation and closure, preserve failure exits, and handle reentrant query selection and unmounting correctly.
- Keep the minimal renderer within the existing 18 KB gzip budget; optional render-safety lint remains available.
The runtime, compiler, Lucide package, and all five native compiler packages are released together at 0.5.0. Effect remains a peer dependency, pinned to 4.0.0-rc.112.
Validation: 583 unit tests, 123 browser tests, compiler tests, type/lint checks, bundle-size checks, example build, and clean installed-package smoke tests.