The Wire · Showcase
REACT COMPILER FIXES MEMO CACHE MISSES, REACT NATIVE REVERTS ANIMATION FLAG
By RepoJournal · Filed · About Meta
React's compiler shipped a critical fix for loop reassignments that were breaking memoization on every render, while React Native's animation feature flag landed, then immediately reverted.
The React compiler had a bug where variables incremented inside memo scopes were compared at their pre-loop value (constant every render) while the cache stored the post-loop value, causing memos to never hit and force full recomputation [1]. This is the kind of silent correctness issue that ships broken performance into production. Separately, React bumped its Rust compiler dependencies by switching from discrete `sha2` + `hmac` crates to a single `hmac-sha256` implementation, cutting Fast Refresh hash generation from 11 transitive crates down to a cleaner dependency tree [2]. On the React Native front, a feature flag to force native drivers for all animations landed [3], but the team immediately reverted it in the same window, suggesting integration issues downstream [4]. The Native team also shipped Chrome DevTools Protocol support for script injection on new documents [5] and removed the experimental image request downgrading feature flag after backing out the behavior it gated [6]. A changelog cleanup fixed an entry for a fix that never actually merged to the release branch [7]. React DevTools is getting a new low-level facade package for runtime state introspection, laying groundwork for MCP-server integrations [8].
Action items
- → Review and test memo-dependent code after pulling the loop reassignment fix facebook/react [plan]
- → Monitor React Native 0.84+ for animation driver stability after the revert facebook/react-native [monitor]
- → Upgrade React Rust compiler tooling if you're on a locked dependency facebook/react [plan]
References
- [1] [compiler] Count loop reassignments as the enclosing scope reassigning the variable ↗ facebook/react
- [2] [rust-compiler] Switch to hmac-sha256 and bump napi/similar ↗ facebook/react
- [3] (Redo D108193641) remove `useNativeDriver` under featureflag animatedForceNativeDriver" (#57250) facebook/react-native
- [4] Revert D108193641: remove `useNativeDriver` under featureflag animatedForceNativeDriver facebook/react-native
- [5] Implement Page.addScriptToEvaluateOnNewDocument CDP handler (#57248) facebook/react-native
- [6] Remove offscreen image request downgrading feature flag (#57226) facebook/react-native
- [7] chore(changelog) remove non-merged fix from changelog (#57253) facebook/react-native
- [8] [react-devtools-facade] 1/ scaffold package + installFacade building block ↗ facebook/react
FAQ
- What changed in Meta on June 18, 2026?
- React's compiler shipped a critical fix for loop reassignments that were breaking memoization on every render, while React Native's animation feature flag landed, then immediately reverted.
- What should Meta teams do about it?
- Review and test memo-dependent code after pulling the loop reassignment fix • Monitor React Native 0.84+ for animation driver stability after the revert • Upgrade React Rust compiler tooling if you're on a locked dependency
- Which Meta repositories shipped on June 18, 2026?
- facebook/react, facebook/react-native