Closed drewwyatt closed 7 years ago
Same Error: React Native CLI version: 2.0.1 React Native version: 0.40.0 Yosemite
Having the same issue!
Same class of issue here, flow keeps reporting errors in files under node_modules/react-native/
.
flow: 0.37.4
react-native-cli: 2.0.1
react-native: 0.40.0
+1
flow: 0.37.4, react: 15.4.2, react-native: 0.41.2
Flow has been completely broken for me since around RN 0.39.0. Not only do I get lots of errors stemming from node_modules/
but it no longer reports anything for my actual project.
Hmm, I can't repro - can anyone else still repro on the latest everything?
$ react-native init FlowTest
This will walk you through creating a new React Native project in /Users/sahrens/react-native/FlowTest
Installing react-native package from npm...
Setting up new React Native app in /Users/sahrens/react-native/FlowTest
Installing React...
FlowTest@0.0.1 /Users/sahrens/react-native/FlowTest
βββ react@15.4.2
Installing Jest...
FlowTest@0.0.1 /Users/sahrens/react-native/FlowTest
βββ¬ babel-jest@19.0.0
β βββ¬ babel-plugin-istanbul@4.0.0
β β βββ¬ find-up@2.1.0
β β β βββ¬ locate-path@2.0.0
β β β βββ¬ p-locate@2.0.0
β β β β βββ p-limit@1.1.0
β β β βββ path-exists@3.0.0
β β βββ istanbul-lib-instrument@1.4.2
β β βββ test-exclude@4.0.0
β βββ¬ babel-preset-jest@19.0.0
β βββ babel-plugin-jest-hoist@19.0.0
βββ babel-preset-react-native@1.9.1
βββ¬ jest@19.0.1
β βββ¬ jest-cli@19.0.1
β βββ callsites@2.0.0
β βββ¬ is-ci@1.0.10
β β βββ ci-info@1.0.0
β βββ¬ istanbul-api@1.1.1
β β βββ¬ fileset@2.0.3
β β β βββ glob@7.1.1
β β βββ¬ istanbul-lib-hook@1.0.0
β β β βββ¬ append-transform@0.4.0
β β β βββ default-require-extensions@1.0.0
β β βββ¬ istanbul-lib-report@1.0.0-alpha.3
β β β βββ async@1.5.2
β β β βββ path-parse@1.0.5
β β β βββ¬ supports-color@3.2.3
β β β βββ has-flag@1.0.0
β β βββ istanbul-lib-source-maps@1.1.0
β β βββ¬ istanbul-reports@1.0.1
β β β βββ¬ handlebars@4.0.6
β β β βββ async@1.5.2
β β β βββ¬ source-map@0.4.4
β β β βββ amdefine@1.0.1
β β βββ¬ js-yaml@3.8.1
β β βββ¬ argparse@1.0.9
β β β βββ sprintf-js@1.0.3
β β βββ esprima@3.1.3
β βββ istanbul-lib-coverage@1.0.1
β βββ jest-changed-files@19.0.0
β βββ¬ jest-config@19.0.1
β β βββ jest-environment-node@19.0.1
β β βββ¬ jest-resolve@19.0.0
β β β βββ¬ browser-resolve@1.11.2
β β β β βββ resolve@1.1.7
β β β βββ¬ jest-haste-map@19.0.0
β β β β βββ¬ fb-watchman@2.0.0
β β β β β βββ bser@2.0.0
β β β β βββ¬ sane@1.5.0
β β β β βββ¬ fb-watchman@1.9.2
β β β β βββ bser@1.0.2
β β β βββ resolve@1.2.0
β β βββ jest-validate@19.0.0
β β βββ¬ pretty-format@19.0.0
β β βββ¬ ansi-styles@3.0.0
β β βββ¬ color-convert@1.9.0
β β βββ color-name@1.1.1
β βββ¬ jest-environment-jsdom@19.0.1
β β βββ jest-mock@19.0.0
β β βββ¬ jsdom@9.11.0
β β βββ abab@1.0.3
β β βββ acorn@4.0.11
β β βββ acorn-globals@3.1.0
β β βββ array-equal@1.0.0
β β βββ content-type-parser@1.0.1
β β βββ cssom@0.3.2
β β βββ cssstyle@0.2.37
β β βββ¬ escodegen@1.8.1
β β β βββ esprima@2.7.3
β β β βββ estraverse@1.9.3
β β β βββ¬ optionator@0.8.2
β β β β βββ deep-is@0.1.3
β β β β βββ fast-levenshtein@2.0.6
β β β β βββ levn@0.3.0
β β β β βββ prelude-ls@1.1.2
β β β β βββ type-check@0.3.2
β β β βββ source-map@0.2.0
β β βββ html-encoding-sniffer@1.0.1
β β βββ nwmatcher@1.3.9
β β βββ parse5@1.5.1
β β βββ sax@1.2.2
β β βββ symbol-tree@3.2.2
β β βββ webidl-conversions@4.0.1
β β βββ¬ whatwg-encoding@1.0.1
β β β βββ iconv-lite@0.4.13
β β βββ¬ whatwg-url@4.5.0
β β β βββ tr46@0.0.3
β β β βββ webidl-conversions@3.0.1
β β βββ xml-name-validator@2.0.1
β βββ¬ jest-haste-map@19.0.0
β β βββ¬ fb-watchman@2.0.0
β β β βββ bser@2.0.0
β β βββ¬ sane@1.5.0
β β βββ anymatch@1.3.0
β β βββ¬ fb-watchman@1.9.2
β β βββ bser@1.0.2
β βββ¬ jest-jasmine2@19.0.1
β β βββ jest-matcher-utils@19.0.0
β β βββ jest-matchers@19.0.0
β βββ jest-message-util@19.0.0
β βββ jest-regex-util@19.0.0
β βββ¬ jest-resolve-dependencies@19.0.0
β β βββ jest-file-exists@19.0.0
β βββ¬ jest-runtime@19.0.1
β β βββ¬ jest-haste-map@19.0.0
β β β βββ¬ fb-watchman@2.0.0
β β β β βββ bser@2.0.0
β β β βββ¬ sane@1.5.0
β β β βββ¬ fb-watchman@1.9.2
β β β βββ bser@1.0.2
β β βββ strip-bom@3.0.0
β βββ¬ jest-snapshot@19.0.1
β β βββ¬ jest-diff@19.0.0
β β β βββ diff@3.2.0
β β βββ natural-compare@1.4.0
β βββ¬ jest-util@19.0.1
β β βββ leven@2.1.0
β βββ¬ micromatch@2.3.11
β β βββ¬ arr-diff@2.0.0
β β β βββ arr-flatten@1.0.1
β β βββ array-unique@0.2.1
β β βββ¬ braces@1.8.5
β β β βββ¬ expand-range@1.8.2
β β β β βββ¬ fill-range@2.2.3
β β β β βββ is-number@2.1.0
β β β β βββ¬ isobject@2.1.0
β β β β β βββ isarray@1.0.0
β β β β βββ randomatic@1.1.6
β β β βββ preserve@0.2.0
β β β βββ repeat-element@1.1.2
β β βββ¬ expand-brackets@0.1.5
β β β βββ is-posix-bracket@0.1.1
β β βββ extglob@0.3.2
β β βββ filename-regex@2.0.0
β β βββ is-extglob@1.0.0
β β βββ is-glob@2.0.1
β β βββ normalize-path@2.0.1
β β βββ¬ object.omit@2.0.1
β β β βββ¬ for-own@0.1.4
β β β β βββ for-in@0.1.6
β β β βββ is-extendable@0.1.1
β β βββ¬ parse-glob@3.0.4
β β β βββ¬ glob-base@0.3.0
β β β β βββ glob-parent@2.0.0
β β β βββ is-dotfile@1.0.2
β β βββ¬ regex-cache@0.4.3
β β βββ is-equal-shallow@0.1.3
β β βββ is-primitive@2.0.0
β βββ¬ node-notifier@5.0.2
β β βββ growly@1.3.0
β β βββ shellwords@0.1.0
β βββ string-length@1.0.1
βββ react-test-renderer@15.4.2
To run your app on iOS:
cd /Users/sahrens/react-native/FlowTest
react-native run-ios
- or -
Open ios/FlowTest.xcodeproj in Xcode
Hit the Run button
To run your app on Android:
cd /Users/sahrens/react-native/FlowTest
Have an Android emulator running (quickest way to get started), or a device connected
react-native run-android
Wed Feb 22 13:24:20 [~/react-native (master)]
$ cd FlowTest/
Wed Feb 22 13:27:27 [~/react-native/FlowTest (master)]
$ flow
Launching Flow server for /Users/sahrens/react-native/FlowTest
Spawned flow server (pid=72082)
Logs will go to /private/tmp/flow/zSUserszSsahrenszSreact-nativezSFlowTest.log
No errors!
Wed Feb 22 13:27:46 [~/react-native/FlowTest (master)]
$ react-native --version
0.41.2
Wed Feb 22 13:28:44 [~/react-native/FlowTest (master)]
$ flow version
Flow, a static type checker for JavaScript, version 0.37.4
This should get fixed by https://github.com/facebook/react-native/pull/12533 (or at least won't get broken again when the next version is released...)
@sahrens Thanks for testing on your end. For me, it turned out to be something I added to my .flowconfig
to solve an issue that worked at that time (see #11099) but has since caused the issues I was having; it doesn't seem to be needed by flow anymore anyway so I was able to simply remove it.
I started the process again and am still having issues. This is on a new-newly initialized project:
node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:160
160: this._callbacks[this._callbackID++] = onFail;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assignment of computed property/element. Flow will only let you modify a tuple if it knows exactly which element of the tuple you are mutating. Unsafe mutation of
160: this._callbacks[this._callbackID++] = onFail;
^^^^^^^^^^^^^^^ tuple type
node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:162
162: this._callbacks[this._callbackID++] = onSucc;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ assignment of computed property/element. Flow will only let you modify a tuple if it knows exactly which element of the tuple you are mutating. Unsafe mutation of
162: this._callbacks[this._callbackID++] = onSucc;
^^^^^^^^^^^^^^^ tuple type
node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:273
273: this._callbacks[cbID & ~1] = null;
^^^^^^^^^^^^^^^^^^^^^^^^^^ assignment of computed property/element. Flow will only let you modify a tuple if it knows exactly which element of the tuple you are mutating. Unsafe mutation of
273: this._callbacks[cbID & ~1] = null;
^^^^^^^^^^^^^^^ tuple type
node_modules/react-native/Libraries/BatchedBridge/MessageQueue.js:274
274: this._callbacks[cbID | 1] = null;
^^^^^^^^^^^^^^^^^^^^^^^^^^ assignment of computed property/element. Flow will only let you modify a tuple if it knows exactly which element of the tuple you are mutating. Unsafe mutation of
274: this._callbacks[cbID | 1] = null;
^^^^^^^^^^^^^^^ tuple type
node_modules/react-native/Libraries/Core/Timers/JSTimersExecution.js:115
115: JSTimersExecution.errors.push(e);
^^^^ property `push`. Property not found in
115: JSTimersExecution.errors.push(e);
^^^^^^^^^^^^^^^^^^^^^^^^ $ReadOnlyArray
node_modules/react-native/Libraries/Network/XMLHttpRequest.js:396
396: this._subscriptions = [];
^^^^^^^^^^^^^^^^^^^ assignment of property `_subscriptions`
396: this._subscriptions = [];
^^ empty array literal. Tuple arity mismatch. This tuple has 0 elements and cannot flow to the 1 elements of
396: this._subscriptions = [];
^^^^^^^^^^^^^^^^^^^ tuple type
node_modules/react-native/Libraries/Network/XMLHttpRequest.js:460
460: this._subscriptions.push(RCTNetworking.addListener(
^^^^ property `push`. Property not found in
460: this._subscriptions.push(RCTNetworking.addListener(
^^^^^^^^^^^^^^^^^^^ $ReadOnlyArray
node_modules/react-native/Libraries/Network/XMLHttpRequest.js:464
464: this._subscriptions.push(RCTNetworking.addListener(
^^^^ property `push`. Property not found in
464: this._subscriptions.push(RCTNetworking.addListener(
^^^^^^^^^^^^^^^^^^^ $ReadOnlyArray
node_modules/react-native/Libraries/Network/XMLHttpRequest.js:468
468: this._subscriptions.push(RCTNetworking.addListener(
^^^^ property `push`. Property not found in
468: this._subscriptions.push(RCTNetworking.addListener(
^^^^^^^^^^^^^^^^^^^ $ReadOnlyArray
node_modules/react-native/Libraries/Network/XMLHttpRequest.js:472
472: this._subscriptions.push(RCTNetworking.addListener(
^^^^ property `push`. Property not found in
472: this._subscriptions.push(RCTNetworking.addListener(
^^^^^^^^^^^^^^^^^^^ $ReadOnlyArray
node_modules/react-native/Libraries/Network/XMLHttpRequest.js:476
476: this._subscriptions.push(RCTNetworking.addListener(
^^^^ property `push`. Property not found in
476: this._subscriptions.push(RCTNetworking.addListener(
^^^^^^^^^^^^^^^^^^^ $ReadOnlyArray
node_modules/react-native/Libraries/Network/XMLHttpRequest.js:480
480: this._subscriptions.push(RCTNetworking.addListener(
^^^^ property `push`. Property not found in
480: this._subscriptions.push(RCTNetworking.addListener(
^^^^^^^^^^^^^^^^^^^ $ReadOnlyArray
node_modules/react-native/Libraries/ReactNative/requireNativeComponent.js:115
115: return colors && colors.map(processColor);
^^^^^^^^^^^^^^^^^^^^^^^^ array type. Only tuples and array literals with known elements can flow to
114: function processColorArray(colors: []): [] {
^^ tuple type
node_modules/react-native/Libraries/Renderer/src/renderers/shared/fiber/ReactFiberCompleteWork.js:82
82: // $FlowFixMe: Refinement issue. If it is not a Fiber or null, it is a yield
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Error suppressing comment. Unused suppression
node_modules/react-native/local-cli/server/middleware/heapCapture/src/AggrowTable.jsx:50
50: document.body.addEventListener('keydown', this.keydown);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call of method `addEventListener`. Method cannot be called on possibly null value
50: document.body.addEventListener('keydown', this.keydown);
^^^^^^^^^^^^^ null
node_modules/react-native/local-cli/server/middleware/heapCapture/src/AggrowTable.jsx:64
64: document.body.removeEventListener('keydown', this.keydown);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call of method `removeEventListener`. Method cannot be called on possibly null value
64: document.body.removeEventListener('keydown', this.keydown);
^^^^^^^^^^^^^ null
node_modules/react-native/local-cli/server/util/inspectorProxy.js:43
43: const querystring = require('querystring');
^^^^^^^^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/querystring/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/local-cli/server/util/inspectorProxy.js:43
43: const querystring = require('querystring');
^^^^^^^^^^^^^^^^^^^^^^ querystring. Required module not found
node_modules/react-native/local-cli/server/util/inspectorProxy.js:45
45: const parseUrl = require('url').parse;
^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/url/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/local-cli/util/Config.js:13
13: const assert = require('assert');
^^^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/assert/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/packager/react-packager/src/Bundler/index.js:14
14: const assert = require('assert');
^^^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/assert/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/packager/react-packager/src/JSTransformer/index.js:19
19: const util = require('util');
^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/util/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/packager/react-packager/src/Logger/index.js:17
17: const {EventEmitter} = require('events');
^^^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/events/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/packager/react-packager/src/ModuleGraph/worker/optimize-module.js:74
74: return babel.transform(code, {
^ call of method `transform`
76: [constantFolding],
^^^^^^^^^^^^^^^^^ array literal. This type is incompatible with
59: plugins?: Array<string | Object | InlinePlugin>,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ union: string | object type | InlinePlugin. See lib: node_modules/react-native/flow/babel.js.flow:59
Member 1:
59: plugins?: Array<string | Object | InlinePlugin>,
^^^^^^ string. See lib: node_modules/react-native/flow/babel.js.flow:59
Error:
76: [constantFolding],
^^^^^^^^^^^^^^^^^ array literal. This type is incompatible with
59: plugins?: Array<string | Object | InlinePlugin>,
^^^^^^ string. See lib: node_modules/react-native/flow/babel.js.flow:59
Member 2:
59: plugins?: Array<string | Object | InlinePlugin>,
^^^^^^ object type. See lib: node_modules/react-native/flow/babel.js.flow:59
Error:
76: [constantFolding],
^^^^^^^^^^^^^^^^^ array literal. This type is incompatible with
59: plugins?: Array<string | Object | InlinePlugin>,
^^^^^^ object type. See lib: node_modules/react-native/flow/babel.js.flow:59
Member 3:
59: plugins?: Array<string | Object | InlinePlugin>,
^^^^^^^^^^^^ InlinePlugin. See lib: node_modules/react-native/flow/babel.js.flow:59
Error:
76: [constantFolding],
^^^^^^^^^^^^^^^^^ array literal. Tuple arity mismatch. This tuple has 1 elements and cannot flow to the 2 elements of
59: plugins?: Array<string | Object | InlinePlugin>,
^^^^^^^^^^^^ tuple type. See lib: node_modules/react-native/flow/babel.js.flow:59
node_modules/react-native/packager/react-packager/src/Server/index.js:25
25: const url = require('url');
^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/url/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/packager/react-packager/src/lib/TerminalReporter.js:18
18: const util = require('util');
^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/util/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/packager/react-packager/src/lib/reporting.js:15
15: const util = require('util');
^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/util/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/packager/react-packager/src/lib/terminal.js:16
16: const util = require('util');
^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/util/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/packager/react-packager/src/node-haste/DependencyGraph/ResolutionRequest.js:17
17: const util = require('util');
^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/util/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
node_modules/react-native/packager/react-packager/src/node-haste/index.js:32
32: const util = require('util');
^^^^^^^^^^^^^^^ This modules resolves to "<<PROJECT_ROOT>>/../../../node_modules/util/package.json", which is outside both your root directory and all of the entries in the [include] section of your .flowconfig. You should either add this directory to the [include] section of your .flowconfig, move your .flowconfig file higher in the project directory tree, or move this package under your Flow root directory.
Found 30 errors
@drewwyatt Can you specify your RN version, flow version and post your .flowconfig
file?
I'm having issues using numerous flow versions with RN as well. Hundreds of errors in node_modules/react-native
each time with numerous different versions of flow including the latest.
I will probably just rely on PropTypes for similar effect in the meantime, but it's pretty bad practice to even mention a tool like Flow (see https://facebook.github.io/react/docs/typechecking-with-proptypes.html) when there are so many errors out of the box in the core project and no clear way to circumvent them.
This is not the first ticket of this nature and past tickets have even claimed that upgrading to RN 0.42 will fix the issue, but I have not found that to be true as I am on 0.42 and have tried several things including using the .flowconfig in the RN project itself and the Flow version listed therein.
Perhaps I'm misunderstanding something about Flow, but if not, please either treat this issue more seriously (maybe add a flow run to your CI?) or stop promoting Flow until your own project passes or at least suppresses your own errors. This has been a waste of time for everyone who has come across the string of tickets raising this issue.
I was having the same problem.
But then I realised that on a fresh react-native install, the .flowconfig file stated a specific version at the end of the file (in my case ^0.38.0). So then I installed flow-bin with that same version.
Previously I was trying the oposite direction (install latest flow-bin version and then updating that version on the .flowconfig file).
If you use brew...
I install flow via brew on macOS and it's not possible to pick the version you want to install. If you upgraded your flow version but still have the older one installed you can switch back to it via something like brew switch flow 0.38.0
otherwise, you'll need to get the older version elsewhere.
I've created a brew tap for those who still need version 0.38.0. To install it:
brew tap ryanhomer/flow
brew install flow@0.38.0
It seems like react-native should target a specific flow version rather than a ^
version. At least use ~
. Minor flow versions have breaking changes all of the time, so it doesn't make sense to allow the latest minor version to install when it hasn't been tested.
I had the same problem using flow@0.43. Rolling back to 0.38 solved the issue.
@Kureev, it solved the issue for me too.
I added .*/Libraries/.*/__flowtests__/.*
to the [ignore]
section of the .flowconfig
to remove errors generated by some files of the react-native package (in react-native@0.43.2
).
@mediaxtend thanks! If it works, then we need to update our react-native init
template with your solution.
UPD: I tried your solution, but it doesn't seem to work π
...
98 more errors (only 50 out of 148 errors displayed)
Facing the same issue. Anyone resolved it ?
RN 0.43.3 now support flow-bin@0.40.0. This works:
$ react-native init MyRNProject
$ cd MyRNProject/
$ npm i -SD flow-bin@0.40.0
$ ./node_modules/.bin/flow
Same issue. I resolved it by going back to 0.40 and adding .*/Libraries/.*/__flowtests__/.*
to ignore
i also getting this problem because i have in folder up node_modules when i remove node_modules it pass
Still applies
$ react-native -v
react-native-cli: 2.0.1
$ react-native init RNApp
<...>
$ cd RNApp
$ cat .flowconfig
<...>
[version]
^0.42.0
$yarn add flow-bin@0.42.0
$ yarn flow
<...>
Found 18 errors
$react-native -V
0.44.2
I suppose that template should be kept in sync with actual flowconfig. Alternatively, RN community could maintain libdefs on flow-typed repo, and the generator could install a libdef, based on RN and flow versions.
Is this solved? I tried the solutions mentioned above, but I still have 145 errors, related to react_native/Libraries files This is the version I'm using
$react-native -v
react-native-cli: 2.0.1
react-native: 0.36.1
$flow version
Flow, a static type checker for JavaScript, version 0.47.0
Hi there! This issue is being closed because it has been inactive for a while. Maybe the issue has been fixed in a recent release, or perhaps it is not affecting a lot of people. Either way, we're automatically closing issues after a period of inactivity. Please do not take it personally!
If you think this issue should definitely remain open, please let us know. The following information is helpful when it comes to determining if the issue should be re-opened:
If you would like to work on a patch to fix the issue, contributions are very welcome! Read through the contribution guide, and feel free to hop into #react-native if you need help planning your contribution.
Still having this issue after creating new project with react-nativi init helloworld
$ flow version
Flow, a static type checker for JavaScript, version 0.59.0
$ react-native --version
react-native-cli: 2.0.1
react-native: 0.50.4
Updated the .flowconfig to use the correct flow version I have installed.
Running flow
results in 22 errors:
Error: node_modules/metro-bundler/src/JSTransformer/index.js.flow:204
204: static TransformError;
^^^^^^^^^^^^^^^^^^^^^^ property `TransformError`. Missing annotation
Error: node_modules/metro-bundler/src/Server/index.js.flow:1323
1323: static DEFAULT_BUNDLE_OPTIONS;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ property `DEFAULT_BUNDLE_OPTIONS`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:65
65: static step0(n) {
^ parameter `n`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:72
72: static step1(n) {
^ parameter `n`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:82
82: static linear(t) {
^ parameter `t`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:105
105: static quad(t) {
^ parameter `t`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:115
115: static cubic(t) {
^ parameter `t`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:125
125: static poly(n) {
^ parameter `n`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:126
126: return (t) => Math.pow(t, n);
^ parameter `t`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:134
134: static sin(t) {
^ parameter `t`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:143
143: static circle(t) {
^ parameter `t`. Missing annotation
Error: node_modules/react-native/Libraries/Animated/src/Easing.js:152
152: static exp(t) {
^ parameter `t`. Missing annotation
Error: node_modules/react-native/Libraries/CameraRoll/CameraRoll.js:258
258: static getPhotos(params) {
^^^^^^ parameter `params`. Missing annotation
Error: node_modules/react-native/Libraries/Experimental/WindowedListView.js:179
179: renderScrollComponent: (props) => <ScrollView {...props} />,
^^^^^ parameter `props`. Missing annotation
Error: node_modules/react-native/Libraries/Lists/ListView/__mocks__/ListViewMock.js:22
22: renderScrollComponent: props => <ScrollView {...props} />,
^^^^^ parameter `props`. Missing annotation
Error: node_modules/react-native/Libraries/Share/Share.js:108
108: static get sharedAction() { return 'sharedAction'; }
^ return. Missing annotation
Error: node_modules/react-native/Libraries/Share/Share.js:114
114: static get dismissedAction() { return 'dismissedAction'; }
^ return. Missing annotation
Error: node_modules/react-native/Libraries/StyleSheet/StyleSheetValidation.js:27
27: static validateStyleProp(prop, style, caller) {
^^^^ parameter `prop`. Missing annotation
Error: node_modules/react-native/Libraries/StyleSheet/StyleSheetValidation.js:27
27: static validateStyleProp(prop, style, caller) {
^^^^^ parameter `style`. Missing annotation
Error: node_modules/react-native/Libraries/StyleSheet/StyleSheetValidation.js:27
27: static validateStyleProp(prop, style, caller) {
^^^^^^ parameter `caller`. Missing annotation
Error: node_modules/react-native/Libraries/StyleSheet/StyleSheetValidation.js:62
62: static validateStyle(name, styles) {
^^^^ parameter `name`. Missing annotation
Error: node_modules/react-native/Libraries/StyleSheet/StyleSheetValidation.js:62
62: static validateStyle(name, styles) {
^^^^^^ parameter `styles`. Missing annotation
Found 22 errors
Description
The long and short of it is, I'm getting flow errors on brand new projects created with the react native cli (version 2.0.1). Do I have a weird version mismatch or something?
Reproduction
Solution
Right now I'm just not using flow and ignoring the issues. I've tried switching some versions around but keep coming up empty handed.
Additional Information