What changed
Effect 4.0 shipped September 30, 2026 as a major rebuild. It folds formerly separate packages into a shared-version ecosystem, removes runtime dependencies from the core effect package, and publishes vendor benchmarks comparing a 35.6 KB to 7.1 KB minimal program, 0.71M to 4.57M tasks/s and 157.5 MB to 21.8 MB heap for 50,000 fibers. The project also introduces a formal LTS policy: Effect 4 receives bug and security fixes until at least September 2029, with extensions tied to the timing of a future 5.0 release.
Why it matters
Effect underpins typed errors, resource management, structured concurrency and workflows in TypeScript services. Changes to its runtime, package graph and support lifecycle affect build size, memory budgets, dependency security and long-term maintenance planning. The support policy is an operational commitment; the performance claims are benchmarks under defined vendor conditions, not universal results.
A smaller zero-dependency core
Effect 4 consolidates packages into the effect distribution and removes third-party runtime dependencies from its core, reducing dependency-chain and bundle overhead.
Vendor benchmarks show large gains under defined tests
The team reports 5x smaller minimum bundles, 6.4x concurrent task throughput and 86% lower memory per fiber. Benchmarks use identical source for bundles and nine fresh-process runs for runtime medians.
LTS becomes an explicit contract
The 4.x line receives bug/security fixes until at least September 2029; depending on the next major release date, support can extend beyond that floor.
Migration and unstable modules still need review
A migration guide exists, but some new modules remain marked unstable or experimental and may change in smaller releases.