$ the-wire · showcase
React Native strips dead config, React compiler fixes exponent folding
By RepoJournal · Filed · About Meta · Composed from the cited sources · methodology
React Native removed four long-dead code paths and Metro's Platform.select inlining returns, while the Rust compiler port needed a fix so folded `**` matches ECMAScript instead of IEEE 754.
Remove Native Animated allowlist mutation APIs (#58560) facebook/react-native
Native Animated's runtime mutation APIs for interpolation parameters, style properties, and transform properties are gone; tests and examples now rely on the shared animated backend's fixed set. If you were mutating that allowlist at runtime, it no longer exists.
Remove Fabric and TurboModule dead config (#58434) facebook/react-native
Fabric and TurboModules shipped before bridgeless and are always on, so their toggles were hardcoded and read nowhere. On Android, `DefaultNewArchitectureEntryPoint` now only selects the release channel and loads the SO; `fabricEnabled`, `turboModulesEnabled`, and `concurrentReactEnabled` are removed.
Remove split bundle loading logic (#58556) facebook/react-native
The unused Android split-bundle development loading path is removed: its native module caller was deleted earlier, leaving the loader entry point and delegate API unreachable. Changelogged as `[Android][Removed] - Remove experimental split-bundle loading APIs`.
Revert preserve Platform.select initializers (#58541) facebook/react-native
This reverts the earlier preserve-initializers change and restores the long-standing `Platform.select` inlining behavior. As robhogan and vonovak note, Metro has inlined it in release builds only, not configurable, since at least 2017.
[rust-compiler] Fix exponentiation to match js semantics facebook/react
The Rust port folded `**` with `f64::powf`, which follows IEEE 754 and returns `1` for `pow(1, NaN)` and `pow(±1, ±∞)`, while ECMAScript's `Number::exponentiate` returns `NaN`; since the TS compiler folds with native `lhs ** rhs`, the two backends disagreed. Concretely, `const x = 1 ** (1 / 0)` is `NaN` in JS and was `1` in Rust-compiled output.