$ cat meta/week/2026-08-31.log
the week in review · Aug 31 – Sep 6, 2026
React Native sheds Paper-era internals
Stable API guards land for JSC and DevTools settings while Jest fixes ESM subpath resolution.
What shipped: React Native closed out the week by removing Paper-era internals and stabilizing Maestro e2e tests [1], while adding stable API guards for `jsc:JSCRuntime` [2] and `devtoolsruntimesettings` [3]. The same repo fixed a bridgeless-mode ordering issue and committed dev-machine paths [4], cutting MatrixMathHelper allocations in the process [5]. Jest fixed a leading `#` fragment delimiter bug in ESM subpath resolution [6], stripped TypeScript types when no transformer claims the file [7], and escaped table keys in `jest-each` before building interpolation regexes [8]. React worked on unobserve fragment IntersectionObserver targets after exit [9], moved compiled function bodies into the AST in React Compiler [10], and added Rust compiler crate publishing workflows [11].
Why it matters: the Jest revert [12] restores matching `moduleNameMapper` against the specifier as written, which directly affects projects that had been hit by the earlier regression. React's new `nonce` for rendered import maps [13] is a breaking change for anyone relying on the previous behavior. The DevTools release inputs now use one commit and drop build dates from extension manifests [14][15], which simplifies but does not alter runtime behavior.
Also: React Compiler stores aliasing values in an inline set [16], the new `@expo/code-review-cli` addition [1] is flagged as breaking, and Jest now only warns about global-only options where they are actually ignored [17].
References
- [1] Add @expo/code-review-cli (#58021) ↗ facebook/react-native
- [2] Cover `jsc:JSCRuntime` with Stable API guards (#58023) ↗ facebook/react-native
- [3] Cover `devtoolsruntimesettings` with Stable API guards (#58131) ↗ facebook/react-native
- [4] fix: stale VoiceOver value from async UI updates to Text (#58169) ↗ facebook/react-native
- [5] Reduce MatrixMathHelper allocations (#58275) ↗ facebook/react-native
- [6] fix(jest-runtime): do not treat a leading `#` as a fragment delimiter ↗ facebook/jest
- [7] feat: strip TypeScript types when no transformer claims the file ↗ facebook/jest
- [8] fix(jest-each): escape table keys before building the interpolation RegExp ↗ facebook/jest
- [9] [DOM] Unobserve fragment IntersectionObserver targets after exit ↗ facebook/react
- [10] React Compiler: move compiled function bodies into AST instead of cloning ↗ facebook/react
- [11] Add Rust compiler crate publishing workflows ↗ facebook/react
- [12] revert(jest-resolve): match `moduleNameMapper` against the specifier as written ↗ facebook/jest
- [13] [Fizz] Add `nonce` to rendered `import maps` (#37339) ↗ facebook/react
- [14] [DevTools] Use one commit for extension release inputs (#37307) ↗ facebook/react
- [15] [DevTools] Remove build dates from extension manifests (#37306) ↗ facebook/react
- [16] React Compiler: Store aliasing values in an inline set ↗ facebook/react
- [17] fix(jest-config): only warn about global-only options where they're actually ignored ↗ facebook/jest
$ ls meta/week/ # the briefings behind this review