facebook/react · error · Error
357
357
Error message
The current renderer does not support React Scopes. This error is likely caused by a bug in React. Please file an issue.
What it means
React Scopes are an experimental renderer-level API; renderers that don't implement them re-export ReactFiberConfigWithNoScopes, where prepareScopeUpdate and getInstanceFromScope are throwing shims. The reconciler calls these when completing/updating a Scope host instance, so this error means Scope machinery ran on a renderer without scope support.
Source
Thrown at packages/react-reconciler/src/ReactFiberConfigWithNoScopes.js:14
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @flow
*/
// Renderers that don't support React Scopes
// can re-export everything from this module.
function shim(...args: any): empty {
throw new Error(
'The current renderer does not support React Scopes. ' +
'This error is likely caused by a bug in React. ' +
'Please file an issue.',
);
}
// React Scopes (when unsupported)
export const prepareScopeUpdate = shim;
export const getInstanceFromScope = shim;
View on GitHub (pinned to eafeac097b)
Solutions
- Remove or gate Scope API usage to a renderer that implements scopes (react-dom).
- If you believe the call is spurious (no Scope in your tree), align react/react-dom/renderer versions and file an issue — the reconciler should not reach the shim without a Scope instance.
Defensive patterns
Strategy: try-catch
Try / catch
// Contain experimental-API failures rather than crash the app
componentDidCatch(err) {
if (err.message.includes('does not support React Scopes')) {
this.setState({disableExperimental: true}); // fall back to plain components
}
} Prevention
- Gate experimental Scope API usage behind DOM-environment checks
- Keep canary/experimental imports out of react-native builds
- Track which renderer each experimental feature requires before adopting
When it happens
Trigger: Using the experimental Scope API (unstable Scope components, or DevTools/test tooling that inspects scopes) with a renderer whose config re-exports NoScopes — anything other than the DOM renderer that implements them.
Common situations: Experimental React features or internal Meta tooling leaking into an app built on react-native or a custom renderer; forks built against a different reconciler.
Related errors
AI-assisted analysis of facebook/react@eafeac097b (2026-08-21).
Data as JSON: /api/errors/40706d768c05f1e7.
Report an issue: GitHub.