What happened
On 7 October 2025 the React team shipped React Compiler 1.0, a build-time tool that applies automatic memoization so developers no longer hand-write useMemo, useCallback or React.memo. It is compatible with React 17 and up, ships lint rules via eslint-plugin-react-hooks, and the team reports up to ~12% faster loads and some interactions more than 2.5× faster with neutral memory.
Why it matters
Manual memoization is where a lot of React performance bugs and review boilerplate live. Moving it to the compiler removes a class of mistakes and lets teams stop litigating useMemo in code review — provided their components follow the Rules of React.
The catch is correctness-by-convention: the compiler assumes your code follows the Rules of React, so the real prerequisite is enabling the lint rules and fixing violations first. Adopt it incrementally, verify behavior, then delete the manual memoization.
What does React's automatic memoization actually optimize, and why does it depend on components following the Rules of React?
Probes understanding of rendering, purity and memoization.