Skip to content

Upgrading react-native 0.82 to 0.83

Unknown0.82.1 → 0.83.10New2Changed6Fixed25Other1

UnknownUpgrade verdict

55 of 72 releases publish no notes, so breaking changes can't be ruled out.

  • Some releases in this range publish no notes, so DepDelta can't rule out breaking changes.
  • DepDelta found no commit log for them either.
Unknown for releases without notes

Releases without notes may still need changes. Check their commits before upgrading.

react-native publishes an official migration guide for version 0.83. It covers more than the release notes do.

Upgrade Helper ↗

Installs 306 packages in all (was 309).

Generated by DepDelta from published .d.ts files. Not mixed with prose notes.

  • changed: property RefreshControlPropsAndroid.size?: number | undefined → property RefreshControlPropsAndroid.size?: 'default' | 'large' | undefined
  • changed: property SectionBase.ItemSeparatorComponent?: React.ComponentType<any> | null | undefined → property SectionBase.ItemSeparatorComponent?: | React.ComponentType<any> | React.ReactElement | null | undefined
  • added: function get<Config extends object>(name: string, viewConfigProvider: () => PartialViewConfig): HostComponent<Config>
  • added: function getWithFallback_DEPRECATED<Config extends object>(name: string, viewConfigProvider: () => PartialViewConfig): React.ComponentType<Config>
  • added: function setRuntimeConfigProvider(runtimeConfigProvider: (name: string) => { native: boolean; verify: boolean } | null): void
  • added: function unstable_hasStaticViewConfig(name: string): boolean
  • changed: type GradientValue = { type: 'linear-gradient'; direction?: string | undefined; colorStops: ReadonlyArray<{ color: ColorValue | null; positions?: ReadonlyArray<string[]> | undefine… → type GradientValue = { type: 'linear-gradient'; direction?: string | undefined; colorStops: ReadonlyArray<{ color: ColorValue | null; positions?: ReadonlyArray<string> | undefined…
  • added: export * as NativeComponentRegistry from '../Libraries/NativeComponent/NativeComponentRegistry'
  • changed: type HostInstance = NativeMethods → type HostInstance = ReactNativeElement
  • added: get ReactNativeDocument.childElementCount(): number
  • added: get ReactNativeDocument.children(): HTMLCollection<ReadOnlyElement>
  • added: get ReactNativeDocument.documentElement(): ReactNativeElement
  • added: get ReactNativeDocument.firstElementChild(): null | ReadOnlyElement
  • added: get ReactNativeDocument.lastElementChild(): null | ReadOnlyElement
  • added: get ReactNativeDocument.nodeName(): string
  • added: get ReactNativeDocument.nodeType(): number
  • added: get ReactNativeDocument.nodeValue(): null
  • added: get ReactNativeElement.offsetHeight(): number
  • added: get ReactNativeElement.offsetLeft(): number
  • added: get ReactNativeElement.offsetParent(): null | ReadOnlyElement
  • added: get ReactNativeElement.offsetTop(): number
  • added: get ReactNativeElement.offsetWidth(): number
  • added: get ReadOnlyCharacterData.data(): string
  • added: get ReadOnlyCharacterData.length(): number
  • added: get ReadOnlyCharacterData.nextElementSibling(): null | ReadOnlyElement
  • added: get ReadOnlyCharacterData.nodeValue(): string
  • added: get ReadOnlyCharacterData.previousElementSibling(): null | ReadOnlyElement
  • added: get ReadOnlyCharacterData.textContent(): string
  • added: get ReadOnlyElement.childElementCount(): number
  • added: get ReadOnlyElement.children(): HTMLCollection<ReadOnlyElement>
  • added: get ReadOnlyElement.clientHeight(): number
  • added: get ReadOnlyElement.clientLeft(): number
  • added: get ReadOnlyElement.clientTop(): number
  • added: get ReadOnlyElement.clientWidth(): number
  • added: get ReadOnlyElement.firstElementChild(): null | ReadOnlyElement
  • added: get ReadOnlyElement.id(): string
  • added: get ReadOnlyElement.lastElementChild(): null | ReadOnlyElement
  • added: get ReadOnlyElement.nextElementSibling(): null | ReadOnlyElement
  • added: get ReadOnlyElement.nodeName(): string
  • added: get ReadOnlyElement.nodeType(): number
  • added: get ReadOnlyElement.nodeValue(): null | string
  • added: get ReadOnlyElement.previousElementSibling(): null | ReadOnlyElement
  • added: get ReadOnlyElement.scrollHeight(): number
  • added: get ReadOnlyElement.scrollLeft(): number
  • added: get ReadOnlyElement.scrollTop(): number
  • added: get ReadOnlyElement.scrollWidth(): number
  • added: get ReadOnlyElement.tagName(): string
  • added: get ReadOnlyElement.textContent(): string
  • added: get ReadOnlyNode.childNodes(): NodeList<ReadOnlyNode>
  • added: get ReadOnlyNode.firstChild(): null | ReadOnlyNode
  • added: get ReadOnlyNode.isConnected(): boolean
  • added: get ReadOnlyNode.lastChild(): null | ReadOnlyNode
  • added: get ReadOnlyNode.nextSibling(): null | ReadOnlyNode
  • added: get ReadOnlyNode.nodeName(): string
  • added: get ReadOnlyNode.nodeType(): number
  • added: get ReadOnlyNode.nodeValue(): null | string
  • added: get ReadOnlyNode.ownerDocument(): null | ReactNativeDocument
  • added: get ReadOnlyNode.parentElement(): null | ReadOnlyElement
  • added: get ReadOnlyNode.parentNode(): null | ReadOnlyNode
  • added: get ReadOnlyNode.previousSibling(): null | ReadOnlyNode
  • added: get ReadOnlyNode.textContent(): string
  • added: get ReadOnlyText.nodeName(): string
  • added: get ReadOnlyText.nodeType(): number
  • added: index ArrayLike[indexer: number]: T
  • added: index HTMLCollection[index: number]: T
  • added: index NodeList[index: number]: T
  • added: interface ArrayLike<T> extends Iterable<T>
  • added: interface HTMLCollection<T> extends Iterable<T>, ArrayLike<T>
  • added: interface NodeList<T> extends Iterable<T>, ArrayLike<T>
  • added: interface ReactNativeDocument extends ReadOnlyNode
  • added: interface ReactNativeElement extends ReadOnlyElement, NativeMethods
  • added: interface ReadOnlyCharacterData extends ReadOnlyNode
  • added: interface ReadOnlyElement extends ReadOnlyNode
  • added: interface ReadOnlyNode
  • added: interface ReadOnlyText extends ReadOnlyCharacterData
  • added: method HTMLCollection.item(index: number): null | T
  • added: method HTMLCollection.namedItem(name: string): null | T
  • added: method HTMLCollection[Symbol.iterator](): Iterator<T>
  • added: method NodeList.entries(): Iterator<[number, T]>
  • added: method NodeList.forEach<ThisType>(callbackFn: (value: T, index: number, array: NodeList<T>) => unknown, thisArg?: ThisType): void
  • added: method NodeList.item(index: number): null | T
  • added: method NodeList.keys(): Iterator<number>
  • added: method NodeList.values(): Iterator<T>
  • added: method NodeList[Symbol.iterator](): Iterator<T>
  • added: method ReactNativeDocument.getElementById(id: string): null | ReadOnlyElement
  • added: method ReactNativeElement.blur(): void
  • added: method ReactNativeElement.focus(): void
  • added: method ReactNativeElement.setNativeProps(nativeProps: {}): void
  • added: method ReadOnlyCharacterData.substringData(offset: number, count: number): string
  • added: method ReadOnlyElement.getBoundingClientRect(): DOMRect
  • added: method ReadOnlyElement.hasPointerCapture(pointerId: number): boolean
  • added: method ReadOnlyElement.releasePointerCapture(pointerId: number): void
  • added: method ReadOnlyElement.setPointerCapture(pointerId: number): void
  • added: method ReadOnlyNode.compareDocumentPosition(otherNode: ReadOnlyNode): number
  • added: method ReadOnlyNode.contains(otherNode: ReadOnlyNode): boolean
  • added: method ReadOnlyNode.getRootNode(): ReadOnlyNode
  • added: method ReadOnlyNode.hasChildNodes(): boolean
  • added: readonly property ArrayLike.length: number
  • added: readonly property HTMLCollection.length: number
  • added: readonly property NodeList.length: number
  • added: set ReadOnlyElement.nodeValue(value: string)
  • changed: function createAnimatedComponent<TInstance extends React.ComponentType<any>>(Component: TInstance): AnimatedComponentType<Readonly<React.ComponentProps<TInstance>>, React.ComponentRef<TInstance>> → function createAnimatedComponent<TInstance extends React.ComponentType<any>>(Component: TInstance): AnimatedComponentType<Readonly<React.JSX.LibraryManagedAttributes<TInstance, React.ComponentProps<TInstance>>>, React.ComponentRef<TInstance>>
  • changed: type AnimatedBaseProps<Props extends {}> = { [K in keyof Props]: K extends NonAnimatedProps ? Props[K] : WithAnimatedValue<Props[K]> } → type AnimatedBaseProps<Props extends {}> = LooseOmit<{ [K in keyof Props]: K extends NonAnimatedProps ? Props[K] : WithAnimatedValue<Props[K]> }, 'ref'>
  • changed: type AnimatedProps<Props extends {}> = { [K in keyof Props]: K extends NonAnimatedProps ? Props[K] : WithAnimatedValue<Props[K]> } & PassThroughProps → type AnimatedProps<Props extends {}> = LooseOmit<{ [K in keyof Props]: K extends NonAnimatedProps ? Props[K] : WithAnimatedValue<Props[K]> }, 'ref'> & PassThroughProps
  • added: function getRgbaValueAndNativeColor(value: RgbaValue | ColorValue): Readonly<{ rgbaValue: RgbaValue; nativeColor?: NativeColorValue }>
  • changed: type AbstractImageAndroid = (props: Omit<ImagePropsType, keyof { ref?: React.Ref<React.ComponentRef<TextInlineImageNativeComponent> | React.ComponentRef<ImageViewNativeComponent>> }> & {… → type AbstractImageAndroid = (props: Omit<ImagePropsType, keyof { ref?: React.Ref<HostInstance> }> & { ref?: React.Ref<HostInstance> }) => React.ReactNode
  • changed: type AbstractImageIOS = (props: Omit<ImagePropsType, keyof { ref?: React.Ref<React.ComponentRef<ImageViewNativeComponent>> }> & { ref?: React.Ref<React.ComponentRef<ImageViewNativeCom… → type AbstractImageIOS = (props: Omit<ImagePropsType, keyof { ref?: React.Ref<HostInstance> }> & { ref?: React.Ref<HostInstance> }) => React.ReactNode
  • removed: const $$ImageViewNativeComponent: typeof ImageViewNativeComponent
  • removed: const Commands: NativeCommands
  • removed: const __INTERNAL_VIEW_CONFIG: PartialViewConfig
  • removed: default $$ImageViewNativeComponent
  • removed: type $$ImageViewNativeComponent = typeof $$ImageViewNativeComponent
  • removed: type Commands = typeof Commands
  • removed: type __INTERNAL_VIEW_CONFIG = typeof __INTERNAL_VIEW_CONFIG
  • removed: const $$TextInlineImageNativeComponent: typeof TextInlineImage
  • removed: const __INTERNAL_VIEW_CONFIG: PartialViewConfig
  • removed: default $$TextInlineImageNativeComponent
  • removed: type $$TextInlineImageNativeComponent = typeof $$TextInlineImageNativeComponent
  • removed: type __INTERNAL_VIEW_CONFIG = typeof __INTERNAL_VIEW_CONFIG
  • added: export { ListViewToken } from '@react-native/virtualized-lists'
  • removed: static method XMLHttpRequest.enableProfiling(enableProfiling: boolean): void
  • removed: class ReactFabricHostComponent implements NativeMethods
  • removed: constructor ReactFabricHostComponent(tag: number, viewConfig: ViewConfig, internalInstanceHandle: InternalInstanceHandle)
  • removed: default ReactFabricHostComponent
  • removed: method ReactFabricHostComponent.blur(): void
  • removed: method ReactFabricHostComponent.focus(): void
  • removed: method ReactFabricHostComponent.measure(callback: MeasureOnSuccessCallback): void
  • removed: method ReactFabricHostComponent.measureInWindow(callback: MeasureInWindowOnSuccessCallback): void
  • removed: method ReactFabricHostComponent.measureLayout(relativeToNativeNode: number | HostInstance, onSuccess: MeasureLayoutOnSuccessCallback, onFail?: () => void): void
  • removed: method ReactFabricHostComponent.setNativeProps(nativeProps: {}): void
  • removed: method ReactFabricHostComponent.unstable_getBoundingClientRect(): DOMRect
  • changed: function createPublicInstance(tag: number, viewConfig: ViewConfig, internalInstanceHandle: InternalInstanceHandle, ownerDocument: ReactNativeDocumentT): ReactFabricHostComponentT | ReactNativeElementT → function createPublicInstance(tag: number, viewConfig: ViewConfig, internalInstanceHandle: InternalInstanceHandle, ownerDocument: ReactNativeDocument): ReactNativeElement
  • changed: function createPublicTextInstance(internalInstanceHandle: InternalInstanceHandle, ownerDocument: ReactNativeDocumentT): ReadOnlyTextT → function createPublicTextInstance(internalInstanceHandle: InternalInstanceHandle, ownerDocument: ReactNativeDocument): ReadOnlyText
  • changed: function getInternalInstanceHandleFromPublicInstance(publicInstance: ReactFabricHostComponentT | ReactNativeElementT): InternalInstanceHandle → function getInternalInstanceHandleFromPublicInstance(publicInstance: ReactNativeElement): InternalInstanceHandle
  • changed: function getNativeTagFromPublicInstance(publicInstance: ReactFabricHostComponentT | ReactNativeElementT): number → function getNativeTagFromPublicInstance(publicInstance: ReactNativeElement): number
  • changed: function getNodeFromPublicInstance(publicInstance: ReactFabricHostComponentT | ReactNativeElementT): null | undefined | Node → function getNodeFromPublicInstance(publicInstance: ReactNativeElement): null | undefined | Node
  • added: type BackgroundPositionValue = { top: number | string; left: number | string } | { top: number | string; right: number | string } | { bottom: number | string; left: number | string } | { bot…
  • added: type BackgroundRepeatKeyword = 'repeat' | 'space' | 'round' | 'no-repeat'
  • added: type BackgroundRepeatValue = { x: BackgroundRepeatKeyword; y: BackgroundRepeatKeyword }
  • added: type BackgroundSizeValue = { x: string | number; y: string | number } | 'cover' | 'contain'
  • added: export { ListViewToken } from './Libraries/Lists/VirtualizedList'
  • added: export { NativeText as unstable_NativeText } from './Libraries/Text/TextNativeComponent'
  • added: export { NativeTextProps as unstable_NativeTextProps } from './Libraries/Text/TextNativeComponent'
  • added: export { default as unstable_NativeView } from './Libraries/Components/View/ViewNativeComponent'
  • removed: const VirtualViewExperimental: VirtualViewComponent
  • removed: type VirtualViewExperimental = typeof VirtualViewExperimental
  • changed: function createHiddenVirtualView(height: number, experimental: boolean): VirtualViewComponent → function createHiddenVirtualView(style: ViewStyleProp): VirtualViewComponent