# What changed in @react-native/metro-config

> 33 changes in @react-native/metro-config 0.83 to 0.88 from its official release notes, upgrade guides and advisories: 4 breaking, 3 new APIs and options. Each one cited. Sources checked 2026-10-18. HTML: https://unstale.sh/npm/@react-native/metro-config/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## @react-native/metro-config 0.88

### Breaking changes

- When the desktop app fails to launch, the fallback opens DevTools as a standard window in the default browser instead of attempting Microsoft Edge. (0.88.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0880)

### New APIs and options

- Users and agents can capture app screenshots with this command; experimental performance screenshot support is also available in the EXPERIMENTAL channel. (0.88.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0880)

### Tooling

- WebSocket event inspection is available in the Network panel in the CANARY channel. (0.88.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0880)

### Fixes and other changes

- Dev server WebSockets no longer throttle bundle downloads or other dev server requests. (0.88.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0880)

## @react-native/metro-config 0.87

### Breaking changes

- Support for connecting to the standalone react-devtools package via WebSocket is removed; use React Native DevTools instead. (0.87.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0870)

### Performance

- Memory usage during JS bundle downloads is reduced by eliminating intermediate buffer copies. (0.87.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0870)

### Tooling

- New options are exposed in the React Native DevTools app menu. (0.87.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0870)
- React Native DevTools now shows request body previews for FormData and file uploads. (0.87.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0870)
- The modern inspector implements this CDP method, allowing scripts to be added for evaluation on new documents. (0.87.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0870)
- The modern inspector implements this CDP method for removing scripts registered for evaluation on new documents. (0.87.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0870)

### Fixes and other changes

- React Native DevTools no longer briefly flashes in the system dock or taskbar when Metro starts. (0.87.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0870)

## @react-native/metro-config 0.86

### New APIs and options

- Dev-mode Metro bundle loads now call methods on this global when it is provided, allowing a bundle loader reporter to observe loads. (0.86.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0860)

### Tooling

- React Native DevTools supports light and dark mode emulation through this method. (0.86.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0860)
- Performance traces in React Native DevTools include a custom track for React Native Renderer operations. (0.86.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0860)

### Fixes and other changes

- Fixes a use-after-free data race in EventEmitter.cpp. (0.86.3) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0863)
- Custom fonts with an explicit fontWeight no longer render at the heaviest weight on the New Architecture. (0.86.3) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0863)
- Fixes a ConcurrentModificationException when getInitialURL re-enters during onHostResume. (0.86.3) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0863)
- For Modal and other nested root host views, parentNode and parentElement now return the containing element instead of the document, preserving capture and bubble event propagation to ancestors. (0.86.3) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0863)
- SPEC CHECKSUMS are deterministic across machines by sorting Yoga.podspec glob results and using a dynamically computed Pods-relative path in hermes-engine.podspec. (0.86.3) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0863)
- React DevTools connections derive their WebSocket scheme and port from the dev server URL, supporting HTTPS dev servers. (0.86.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0860)
- Fixed inspector server host resolution for HTTPS bundle URLs by omitting the default port. (0.86.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0860)
- The reconnect loop now uses exponential backoff and handles exceptions to prevent heap fragmentation crashes. (0.86.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0860)
- Fixed iOS dev-support IPv6 handling for packager and inspector connections. (0.86.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0860)

## @react-native/metro-config 0.85

### Breaking changes

- The debugger proxy now permits connections only from localhost. (0.85.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0850)
- Page targets returned from /json/list no longer set prefersFuseboxFrontend. (0.85.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0850)

### New APIs and options

- React Native DevTools now supports multiple CDP connections to one React Native Host. (0.85.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0850)

### Behavior and default changes

- LogBox warnings and errors are suppressed during CDP performance tracing. (0.85.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0850)
- serverBaseUrl now accepts either a string or a URL. (0.85.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0850)

### Fixes and other changes

- Fixes the banner getting stuck after reloads in quick succession on iOS. (0.83.6, 0.85.2) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0852), [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0836)
- React Native DevTools can reach Metro from the debugger at URLs other than localhost:8081 and 127.0.0.1:8081. (0.85.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0850)
- Network events are sent to all CDP clients that have the Network domain enabled. (0.85.0) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v0850)

## @react-native/metro-config 0.83

### Fixes and other changes

- Fixes incorrect multi-host detection for apps using additional Hermes runtimes, such as Reanimated. (0.83.10) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v08310)
- Limits the WebSocket queue size to prevent the Android inspector from being force-disconnected on large payloads. (0.83.10) — [release notes](https://github.com/react/react-native/blob/68b7ce2abe983eaa7333506eb8f90bf91eb62f4e/CHANGELOG.md#v08310)
