The Wire · Showcase
JEST CLOSES THE ESM LOOP, REACT NATIVE FIXES CRASH THAT BROKE ANIMATIONS
By RepoJournal · Filed · About Meta
Jest can now require ESM modules directly [ref:7], and React Native patched a critical LayoutAnimation bug [ref:3] that's been crashing apps in production.
The Jest team shipped three interconnected wins on ESM that clear the last major friction point for mixed module environments. They re-implemented ESM support [3] to prefer sync code paths, then built `require(esm)` on top [1] — a feature that ships with Babel 8.0.0-rc.4 [4] already landed. This matters because it removes the async/sync boundary that's haunted hybrid codebases for years. Over on React Native, a nasty LayoutAnimation crash [2] that corrupted animation-frame mutations during structural changes has been fixed — this one's been hitting Instagram TV in production. Two more solid wins: text wrapping in absolutely-positioned Android elements [5] is corrected, and EventTarget-based event dispatch now properly honors skipBubbling [6] in the new W3C path. The team also merged perf improvements [7] swapping ConcurrentHashMap for MutableIntObjectMap on Android, cutting per-entry allocation overhead. Jest's `toStrictEqual` [8] now handles cross-realm constructors correctly, which unblocks testing with `structuredClone` in modern Node versions.
Action items
- → Update Jest and test ESM-heavy repos with `require(esm)` — this unblocks mixed module deploys facebook/jest [plan]
- → If shipping LayoutAnimation on Android, pull the mutation sort fix immediately facebook/react-native [immediate]
- → Evaluate MutableIntObjectMap flag for Android builds — perf win at low risk facebook/react-native [monitor]
References
- [1] Jest supports `require(esm)`
- [2] React Native LayoutAnimation crash fix
- [3] Jest re-implements ESM support
- [4] Babel 8.0.0-rc.4 dependency bump
- [5] Android text wrapping in absolutely-positioned elements
- [6] EventTarget-based event dispatch honors skipBubbling
- [7] MutableIntObjectMap optimization for Android view registry
- [8] Jest `toStrictEqual` cross-realm constructor fix
FAQ
- What changed in Meta on May 1, 2026?
- Jest can now require ESM modules directly , and React Native patched a critical LayoutAnimation bug that's been crashing apps in production.
- What should Meta teams do about it?
- Update Jest and test ESM-heavy repos with `require(esm)` — this unblocks mixed module deploys • If shipping LayoutAnimation on Android, pull the mutation sort fix immediately • Evaluate MutableIntObjectMap flag for Android builds — perf win at low risk