-
-
Notifications
You must be signed in to change notification settings - Fork 27.1k
Closed
Milestone
Description
I'm running into this error on master with a project created with npm run create-react-app ../test
jest-haste-map: Watchman crawl failed. Retrying once with node crawler.
Error: Watchman error: resolve_projpath: none of the files listed in global config root_files are present in path/Users/vjeux/random/test
or any of its parent directories. Make sure watchman is running for this project. See https://facebook.github.io/watchman/docs/troubleshooting.html.
I came up with the "Painless unit testing" sentence. It's now a reality :)
Metadata
Metadata
Assignees
Type
Projects
Milestone
Relationships
Development
Select code repository
Activity
gaearon commentedon Aug 3, 2016
None of these words make any sense to our users:
jest-haste-map watchman crawl node crawler resolve_projpath config root_files
. They shouldn’t be in our messages.If we recommend installing Watchman we should explain why and what it gives you (faster watching)? The message should not include any references to configs and jargon.
gaearon commentedon Aug 3, 2016
Also the warning links to https://facebook.github.io/watchman/docs/troubleshooting.html which says nothing about how to install Watchman.
https://facebook.github.io/watchman/docs/install.html suggests to use
brew
ormacports
which is not at all beginner-friendly.I think we need a flag to completely disable this warning/suggestion because it’s optional, and instructions are unfortunately confusing. We can still put instructions on “how to speed up watching” in our Howto.
vjeux commentedon Aug 3, 2016
cc @cpojer
gaearon commentedon Aug 3, 2016
@vjeux Did you previously install RN? @cpojer told me this warning only shows up if:
vjeux commentedon Aug 3, 2016
I'm a Facebook engineer so watchman is installed on my machine by default ;)
gaearon commentedon Aug 3, 2016
Ah that explains it. 😄
cpojer commentedon Aug 4, 2016
I confirmed that this error is only thrown when using Facebook equipment so I think this isn't actionable and we can close it. I expect FB engineers to figure out how to use watchman, however we might want to improve the error message in Jest to make sure people understand it is no reason to panic.
how to repro a non fb-environment:
create
~/watchman
and put{}
into the file then run:watchman shutdown-server; WATCHMAN_CONFIG_FILE=~/watchman watchman --foreground --logfile=/dev/stdout --no-save-state --statefile=/dev/null
then run
jest --no-cache
and you shouldn't see the error.gaearon commentedon Aug 4, 2016
Thanks for checking.
pjm17971 commentedon Sep 6, 2016
For what it's worth, I got this error as well, so it can happen on non-fb equipment. It was because I'd tried jest in the past and ended up with watchman installed on my machine. At least I think that's how I ended up with it. Uninstalling it made the error go away. It would be nice to not ever show this message though. It was cryptic.
10 remaining items
epitaphmike commentedon Feb 24, 2017
Don't tell anyone! Though 2015 sounds better.
VikramK commentedon Jul 5, 2017
This fixed for me.
npm r -g watchman
brew update && brew upgrade
brew install watchman
Vincent-Lz-Zhang commentedon Jul 9, 2017
Hi @cpojer ,
I tried your instructions:
And it does not work, btw, 'WATCHMAN_CONFIG_FILE=~/watchman' does not look like a command.
On the other hand, my situation is:
I would really appreciate if you can help me out. Thank you.
shireen commentedon Jul 11, 2017
My error is slightly different:
jest-haste-map: Watchman crawl failed. Retrying once with node crawler.
Usually this happens when watchman isn't running. Create an empty
.watchmanconfig
file in your project's root folder or initialize a git or hg repository in your project.Error: Watchman error: fileData.mtime_ms.toNumber is not a function. Make sure watchman is running for this project. See https://facebook.github.io/watchman/docs/troubleshooting.html.
Loading dependency graph, done.
Any ideas on what this means and/or how I can fix it?
valetarton commentedon Aug 11, 2017
@shireen I am having the exact same error
rttomlinson commentedon Oct 11, 2017
@shireen @valetarton I'm running into this issue now. Did ya'll figure out a solution or workaround?
My specific error is
Error: Watchman error: query failed: synchronization failed: Unknown error.
I'm on Windows 7. Thanks
lvlinhaohan2010 commentedon Oct 30, 2017
it fixed in my solution:
re init react-native project,it will work.
arnoldbird commentedon Apr 4, 2018
Still having this issue. The solutions presented above do not work for me. I tried Vikram's solution and lvlinha's solution. I still see the same error message. I also have created a .watchman file in my project root as instructed by the message, to no avail.
UPDATE: Fixed when I did some module upgrades. Not sure what fixed it, but I upgraded to npm ^5.8.0, react ^16.3.0, and expo SDK v26.
UPDATE: Nope, it's still happening, but it depends on if I run react-native run-ios as root or not. If I run the simulator as root, I don't get the watchman error, but the packager behaves strangely... very labored. If I don't run it as root, I get the error but the packager runs smoothly and the simulator loads much more quickly. I guess the upgrades didn't help.
UPDATE: Fixed by recursively changing the owner of .git to my non-root user.
Manoj002 commentedon May 25, 2018
After reading all comments and implementing them again getting same error
expo: 27.0.1
react: 16.3.1
react-native: 0.55.2
theapache64 commentedon Jun 19, 2018
watchman shutdown-server
worked for me.Manoj002 commentedon Jun 19, 2018
i simply copied the code from my project, created a new project and pasted there...
and it works:)
UPDATE:
@theapache64 ,
I guess after i ran "npm audit" and resolved some vulnerabilities after that watchman stopped working in that project and when i created new project, copied the code from previous project and run the packager, it worked (:
ajmalpkc commentedon Jun 21, 2018
@theapache64 worked for me too.
fix: don't let uglify-es inline functions with arguments