Change8

Migrating to React Native v0.79.0

Version v0.79.0 introduces 1 breaking change. This guide details how to update your code.

Released: 4/8/2025

1
Breaking Changes
1
Migration Steps
24
Affected Symbols

⚠️ Check Your Code

If you use any of these symbols, you need to read this guide:

RefreshControlFlatListSectionListURLSearchParamsTextInputNativeCommandsAssetRegistryTouchHistoryMathfontVariantTextInputToastAndroidDefaultNewArchitectureEntryPointReactNavigationActivityDelegateRCTArchConfiguratorProtocolRCTUIConfiguratorProtocolLibraries/AlertLibraries/ActionSheetIOSLibraries/BatchedBridgeLibraries/AppStateLibraries/BlobLibraries/BugReportingLibraries/VibrationLibraries/YellowBoxLibraries/ComponentsLibraries/DevMenu

Breaking Changes

Issue #1

Deep imports to modules inside React Native libraries using 'require' syntax now require an explicit '.default' suffix. This affects modules in Libraries/Alert, ActionSheetIOS, BatchedBridge, AppState, Blob, BugReporting, vendor, Vibration, YellowBox, Components, and DevMenu.

Migration Steps

  1. 1
    Update any deep 'require' imports for React Native internal libraries (e.g., require('react-native/Libraries/Alert')) to include '.default' (e.g., require('react-native/Libraries/Alert').default).

Release Summary

This release introduces breaking changes to deep module imports requiring '.default' when using require. It also adds significant Flow type improvements, enhanced debugging tools in LogBox and Metro, and new layout features like linear gradient hints and font stylistic sets.

Need More Details?

View the full release notes and all changes for React Native v0.79.0.

View Full Changelog