Add disableNativeComponentFrames flag (#20364)

## Summary

We're experiencing some issues internally where the component stack is
getting into our way of fixing them as it causes the page to become
unresponsive. This adds a flag so that we can disable this feature as a
temporary workaround.

More internal context: https://fburl.com/go9yoklm

## Test Plan

I tried to default this flag to `__VARIANT__` but the variant tests
(`yarn test-www --variant`) started to fail across the board since a lot
of tests depend on the component tree, things like this:

https://user-images.githubusercontent.com/458591/100771192-6a1e1c00-33fe-11eb-9ab0-8ff46ba378a2.png

So, it seems to work :-)

Given that it's unhandy to update the hundreds of tests that are failing
I decided to hard code this to `false` like we already do for some other
options.
This commit is contained in:
Philipp Spiess
2020-12-02 16:25:55 +01:00
committed by GitHub
parent 148ffe3cfe
commit 555eeae33d
11 changed files with 16 additions and 2 deletions

View File

@@ -10,7 +10,10 @@
import type {Source} from 'shared/ReactElementType';
import type {LazyComponent} from 'react/src/ReactLazy';
import {enableComponentStackLocations} from 'shared/ReactFeatureFlags';
import {
enableComponentStackLocations,
disableNativeComponentFrames,
} from 'shared/ReactFeatureFlags';
import {
REACT_SUSPENSE_TYPE,
@@ -65,7 +68,7 @@ export function describeNativeComponentFrame(
construct: boolean,
): string {
// If something asked for a stack inside a fake render, it should get ignored.
if (!fn || reentry) {
if (disableNativeComponentFrames || !fn || reentry) {
return '';
}