Upgrading react-native 0.74 to 0.75
Breaking0.74.7 → 0.75.5Breaking6New4Changed13Fixed37Other1
BreakingUpgrade verdict
6 breaking changes.
In plain terms
- An iOS text input property was removed, so code referencing it will no longer compile.
- Android code that uses ResourceDrawableIdHelper.instance works the old way again.
- Android code that uses I18nUtil.instance works the old way again.
- Kotlin code that iterates a ReadableMap works the old way again.
Must act Top 3 of 6 that need code or config changes
react-native publishes an official migration guide for version 0.75. It covers more than the release notes do.
Upgrade helper ↗Adds commander ^9.4.1, semver ^7.1.3.
Drops react-shallow-renderer.
What you must change
Breaking6
Removes UIReturnKeyDefault from RCTBaseTextInputView on iOS.
RCTBaseTextInputViewUIReturnKeyDefaultReverts the breaking change to ResourceDrawableIdHelper.instance.
ResourceDrawableIdHelper.instanceReverts the breaking change to I18nUtil.instance.
I18nUtil.instanceReverts the breaking change to ReadableMap.entryIterator for Kotlin consumers.
ReadableMap.entryIteratorReverts the breaking change on Dynamic.type and Dynamic.isNull.
Dynamic.typeDynamic.isNullReverts the breaking change on CatalystInstance.getJsCallInvokerHolder.
CatalystInstance.getJsCallInvokerHolderAPI changes
Generated by DepDelta from published .d.ts files. Not mixed with prose notes.
- removed:
interface TextInputTextInputEventData - removed:
property TextInputProps.onTextInput?: | ((e: NativeSyntheticEvent<TextInputTextInputEventData>) => void) | undefined - removed:
property TextInputTextInputEventData.previousText: string - removed:
property TextInputTextInputEventData.range: { start: number; end: number } - removed:
property TextInputTextInputEventData.text: string
- removed:
class TouchableHighlight extends TouchableHighlightBase - added:
const TouchableHighlight: React.ForwardRefExoticComponent<React.PropsWithoutRef<TouchableHighlightProps> & React.RefAttributes<View>>
- removed:
class TouchableOpacity extends TouchableOpacityBase - removed:
property TouchableOpacity.setOpacityTo: (value: number) => void - removed:
property TouchableOpacityProps.tvParallaxProperties?: TVParallaxProperties | undefined - added:
const TouchableOpacity: React.ForwardRefExoticComponent<React.PropsWithoutRef<TouchableOpacityProps> & React.RefAttributes<View>>
- added:
property TouchableWithoutFeedbackProps.focusable?: boolean | undefined - added:
property TouchableWithoutFeedbackProps.rejectResponderTermination?: boolean | undefined
- removed:
property TVViewPropsIOS.tvParallaxProperties?: TVParallaxProperties | undefined - removed:
type TVParallaxProperties = { enabled?: boolean | undefined; shiftDistanceX?: number | undefined; shiftDistanceY?: number | undefined; tiltAngle?: number | undefined; magnification?: numb… - added:
property ViewPropsAndroid.collapsableChildren?: boolean | undefined
- removed:
method ImageBackground.abortPrefetch?(requestId: number): void - removed:
method ImageBackground.getSize(uri: string, success: (width: number, height: number) => void, failure: (error: any) => void): any - removed:
method ImageBackground.prefetch(url: string): any - removed:
method ImageBackground.queryCache?(urls: string[]): Promise<{ [url: string]: 'memory' | 'disk' | 'disk/memory' }> - removed:
property ImageBackground.resizeMode: ImageResizeMode - changed:
static method Image.getSize(uri: string, success: (width: number, height: number) => void, failure?: (error: any) => void): any → static method Image.getSize(uri: string): Promise<ImageSize> - changed:
static method Image.getSizeWithHeaders(uri: string, headers: { [index: string]: string }, success: (width: number, height: number) => void, failure?: (error: any) => void): any → static method Image.getSizeWithHeaders(uri: string, headers: { [index: string]: string }): Promise<ImageSize> - added:
interface ImageSize - added:
property ImageSize.height: number - added:
property ImageSize.width: number - added:
static method Image.getSize(uri: string, success: (width: number, height: number) => void, failure?: (error: any) => void): void - added:
static method Image.getSizeWithHeaders(uri: string, headers: { [index: string]: string }, success: (width: number, height: number) => void, failure?: (error: any) => void): void
- added:
function AppRegistry.setRootViewStyleProvider(provider: RootViewStyleProvider): void - added:
type RootViewStyleProvider = (appParameters: any) => ViewStyle
- removed:
property UIManagerStatic.showPopupMenu?: | ((node: number, items: string[], error: () => void, success: (item: string, index: number | undefined) => void) => void) | undefined
- changed:
type ShareContent = { title?: string | undefined; message: string } | { title?: string | undefined; url: string } → type ShareContent = { title?: string | undefined; url: string; message?: string | undefined } | { title?: string | undefined; url?: string | undefined; message: string }
- changed:
property FlexStyle.columnGap?: number | undefined → property FlexStyle.columnGap?: number | string | undefined - changed:
property FlexStyle.gap?: number | undefined → property FlexStyle.gap?: number | string | undefined - changed:
property FlexStyle.rowGap?: number | undefined → property FlexStyle.rowGap?: number | string | undefined - changed:
property ImageStyle.borderBottomLeftRadius?: AnimatableNumericValue | undefined → property ImageStyle.borderBottomLeftRadius?: AnimatableNumericValue | string | undefined - changed:
property ImageStyle.borderBottomRightRadius?: AnimatableNumericValue | undefined → property ImageStyle.borderBottomRightRadius?: AnimatableNumericValue | string | undefined - changed:
property ImageStyle.borderRadius?: AnimatableNumericValue | undefined → property ImageStyle.borderRadius?: AnimatableNumericValue | string | undefined - changed:
property ImageStyle.borderTopLeftRadius?: AnimatableNumericValue | undefined → property ImageStyle.borderTopLeftRadius?: AnimatableNumericValue | string | undefined - changed:
property ImageStyle.borderTopRightRadius?: AnimatableNumericValue | undefined → property ImageStyle.borderTopRightRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderBottomEndRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderBottomEndRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderBottomLeftRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderBottomLeftRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderBottomRightRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderBottomRightRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderBottomStartRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderBottomStartRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderEndEndRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderEndEndRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderEndStartRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderEndStartRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderStartEndRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderStartEndRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderStartStartRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderStartStartRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderTopEndRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderTopEndRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderTopLeftRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderTopLeftRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderTopRightRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderTopRightRadius?: AnimatableNumericValue | string | undefined - changed:
property ViewStyle.borderTopStartRadius?: AnimatableNumericValue | undefined → property ViewStyle.borderTopStartRadius?: AnimatableNumericValue | string | undefined
- added:
method Headers.entries(): IterableIterator<[string, string]> - added:
method Headers.keys(): IterableIterator<string> - added:
method Headers.values(): IterableIterator<string> - added:
method Headers[Symbol.iterator](): IterableIterator<[string, string]>