diff --git a/package.json b/package.json index 12b1adb0fa2cb..585f61ba19fca 100644 --- a/package.json +++ b/package.json @@ -61,7 +61,7 @@ "eslint-plugin-react-internal": "link:./scripts/eslint-rules", "fbjs-scripts": "1.2.0", "filesize": "^6.0.1", - "flow-bin": "^0.190.0", + "flow-bin": "^0.196.3", "flow-remove-types": "^2.196.1", "glob": "^7.1.6", "glob-stream": "^6.1.0", diff --git a/packages/react-devtools-shared/src/backend/renderer.js b/packages/react-devtools-shared/src/backend/renderer.js index d05439e1360af..87a7b141d02ca 100644 --- a/packages/react-devtools-shared/src/backend/renderer.js +++ b/packages/react-devtools-shared/src/backend/renderer.js @@ -3271,6 +3271,7 @@ export function attach( for (const method in console) { try { originalConsoleMethods[method] = console[method]; + // $FlowFixMe[prop-missing] console[method] = () => {}; } catch (error) {} } @@ -3285,6 +3286,7 @@ export function attach( // Restore original console functionality. for (const method in originalConsoleMethods) { try { + // $FlowFixMe[prop-missing] console[method] = originalConsoleMethods[method]; } catch (error) {} } diff --git a/packages/react-devtools-shared/src/hydration.js b/packages/react-devtools-shared/src/hydration.js index e3dafa47b5d9c..15d841dae509a 100644 --- a/packages/react-devtools-shared/src/hydration.js +++ b/packages/react-devtools-shared/src/hydration.js @@ -248,6 +248,7 @@ export function dehydrate( // Other types (e.g. typed arrays, Sets) will not spread correctly. Array.from(data).forEach( (item, i) => + // $FlowFixMe[prop-missing] Unserializable doesn't have an index signature (unserializableValue[i] = dehydrate( item, cleaned, diff --git a/packages/react-devtools-shell/src/app/console.js b/packages/react-devtools-shell/src/app/console.js index 01aba36e7efaa..6f0ee7f7cc75b 100644 --- a/packages/react-devtools-shell/src/app/console.js +++ b/packages/react-devtools-shell/src/app/console.js @@ -11,6 +11,7 @@ function ignoreStrings( methodName: string, stringsToIgnore: Array, ): void { + // $FlowFixMe[prop-missing] index access only allowed for objects with index keys console[methodName] = (...args) => { const maybeString = args[0]; if (typeof maybeString === 'string') { diff --git a/packages/react-reconciler/src/ReactFiberAct.js b/packages/react-reconciler/src/ReactFiberAct.js index 0e9171ce9d868..9482abc382596 100644 --- a/packages/react-reconciler/src/ReactFiberAct.js +++ b/packages/react-reconciler/src/ReactFiberAct.js @@ -23,9 +23,10 @@ export function isLegacyActEnvironment(fiber: Fiber): boolean { // to false. const isReactActEnvironmentGlobal = - // $FlowFixMe – Flow doesn't know about IS_REACT_ACT_ENVIRONMENT global + // $FlowFixMe[cannot-resolve-name] Flow doesn't know about IS_REACT_ACT_ENVIRONMENT global typeof IS_REACT_ACT_ENVIRONMENT !== 'undefined' - ? IS_REACT_ACT_ENVIRONMENT + ? // $FlowFixMe[cannot-resolve-name] + IS_REACT_ACT_ENVIRONMENT : undefined; // $FlowFixMe - Flow doesn't know about jest @@ -40,8 +41,10 @@ export function isLegacyActEnvironment(fiber: Fiber): boolean { export function isConcurrentActEnvironment(): void | boolean { if (__DEV__) { const isReactActEnvironmentGlobal = + // $FlowFixMe[cannot-resolve-name] Flow doesn't know about IS_REACT_ACT_ENVIRONMENT global typeof IS_REACT_ACT_ENVIRONMENT !== 'undefined' - ? IS_REACT_ACT_ENVIRONMENT + ? // $FlowFixMe[cannot-resolve-name] + IS_REACT_ACT_ENVIRONMENT : undefined; if (!isReactActEnvironmentGlobal && ReactCurrentActQueue.current !== null) { diff --git a/packages/react-reconciler/src/ReactFiberFlags.js b/packages/react-reconciler/src/ReactFiberFlags.js index d53da4d5fde4d..f8df8f6f5968d 100644 --- a/packages/react-reconciler/src/ReactFiberFlags.js +++ b/packages/react-reconciler/src/ReactFiberFlags.js @@ -67,7 +67,7 @@ export const MountPassiveDev = /* */ 0b100000000000000000000000000; // Groups of flags that are used in the commit phase to skip over trees that // don't contain effects, by checking subtreeFlags. -export const BeforeMutationMask = +export const BeforeMutationMask: number = // TODO: Remove Update flag from before mutation phase by re-landing Visibility // flag logic (see #20043) Update | diff --git a/scripts/flow/config/flowconfig b/scripts/flow/config/flowconfig index ba0858e7c4163..e26b6a35d3154 100644 --- a/scripts/flow/config/flowconfig +++ b/scripts/flow/config/flowconfig @@ -43,11 +43,9 @@ untyped-type-import=error %CI_MAX_WORKERS% exact_by_default=true munge_underscores=false -enforce_local_inference_annotations=true -exact_empty_objects=true # Substituted by createFlowConfig.js: %REACT_RENDERER_FLOW_OPTIONS% [version] -^0.190.0 +^0.196.3 diff --git a/yarn.lock b/yarn.lock index 5e181ca3fdebc..5bfe110140a10 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7915,10 +7915,10 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== -flow-bin@^0.190.0: - version "0.190.0" - resolved "https://registry.yarnpkg.com/flow-bin/-/flow-bin-0.190.0.tgz#cfc50e1474facf8150232a6c498fe66a6bb75969" - integrity sha512-Qo3bvN3cmGFXsq63ZxcHFZXQDvgx84fCuq8cXuKk5xbvuebBGwMqS+ku/rH+gEkciRrcTYrXqoSzb9b6ShcoJg== +flow-bin@^0.196.3: + version "0.196.3" + resolved "https://registry.yarnpkg.com/flow-bin/-/flow-bin-0.196.3.tgz#b6df48986a2629f2c6a26fb79d73fc07c8056af0" + integrity sha512-pmvjlksi1CvkSnDHpcfhDFj/KC3hwSgE2OpzvugW57dfgqfHzqX1UfZIcScGWM5AmP/IeOsQCW383k3zIbEnrA== flow-parser@^0.196.1: version "0.196.1"