The Wire · Showcase
REACT FIBER FIXES SINGLETON PROPERTY BLEED, REACT NATIVE STRIPS DEAD CODE
By RepoJournal · Filed · About Meta
React plugged a critical Fiber bug where singleton cleanup was nuking third-party attributes, while React Native dropped unused timing code from iOS binaries.
React merged a fix [1] [2] that rewrites how Fiber releases singleton instances. The old path was wiping all properties indiscriminately, which trashed any attributes set by third-party scripts and browser extensions on the same singleton. The new implementation clears only properties based on the last committed props for that fiber, preserving external state. This is the kind of invisible breaking change that would surface in production as mysteriously vanished DOM behavior.
Over on React Native, the team is cleaning house ahead of the new architecture cutover. RCTTiming got axed from iOS binaries [3] since it's not used in the new architecture and is slated for full deletion. Codegen now properly handles iOS platform extensions [4], fixing a bug where the platform argument was being passed as an array index instead of the actual platform string, which means you can now use .ios.ts files for native module specs. Gradle 9 resource warnings got addressed [5] ahead of AGP9 upgrades breaking the build.
One email a day. Unsubscribe in one click.
Keep up with Meta in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Pull React with singleton Fiber fix before next release facebook/react [immediate]
- → Audit third-party script integrations if using older React Fiber versions facebook/react [plan]
- → Update React Native codegen usage to leverage iOS platform extensions facebook/react-native [monitor]
References
- [1] [Fiber] only remove properties from singletons on release ↗ facebook/react
- [2] [Fiber] only remove properties from singletons on release (#37112) facebook/react
- [3] Don't register unused RCTTimingCls in RN iOS (#57657) facebook/react-native
- [4] codegen: ios platform extensions (#57189) facebook/react-native
- [5] Fix src/main/res warnings due to AGP9 (#57637) facebook/react-native