Modern watcher: had "Failed to start watcher for ..." Error message

This is an example message:

Failed to start watcher for /home/minhna/.meteor/packages/ecmascript/0.16.11/os: [Error: unable to resolve root /home/minhna/.meteor/packages/ecmascript/0.16.11/os: “/home/minhna/.meteor/packages/ecmascript/0.16.11/os” resolved to “/home/minhna/.meteor/packages/ecmascript/.0.16.11.wf6sbx0zi8p++os+web.browser+web.browser.legacy+web.cordova/os” but we were unable to examine “/home/minhna/.meteor/packages/ecmascript/0.16.11/os” using strict case sensitive rules. Please check each component of the path and make sure that that path exactly matches the correct case of the files on your filesystem.]

The package directory exists:

$ ls -l /home/minhna/.meteor/packages/ecmascript/0.16.11/os
total 4
-r--r--r-- 1 minhna minhna 163 Jun 18 14:07 ecmascript.js

and “resolved to” directory also exists:

$ ls -l /home/minhna/.meteor/packages/ecmascript/.0.16.11.wf6sbx0zi8p++os+web.browser+web.browser.legacy+web.cordova/os
total 4
-r--r--r-- 1 minhna minhna 163 Jun 18 14:07 ecmascript.js

The parent directory:

$ ls -l /home/minhna/.meteor/packages/ecmascript
total 100
... other versions here
lrwxrwxrwx 1 minhna minhna 67 Jun 18 14:07 0.16.11 -> .0.16.11.wf6sbx0zi8p++os+web.browser+web.browser.legacy+web.cordova
... other versions here

Meteor version: 3.3
OS: Linux Ubuntu 24.04

Temporary solution:
I had to disable the modern watcher in package.json file:

"meteor": {
  "modern": {
    "watcher": false
  }
}

Im having exactly the same issue on my ubuntu pc. And weirdly enough it only happens with my existing projects. If I create a new one it doesnt happen.

I wish I could reproduce the issue. I’m using WSL with an Ubuntu backend and haven’t seen this problem in my tests.

Does this happen with any app you create, even other boilerplates made with meteor create? I’m trying to find out if it’s a general issue (it errors on the .meteor global context) or if it’s tied to a specific app so we can reproduce it.


Note: The new watcher uses @parcel/watcher and can switch to a different backend. Try installing Watchman to see if the issue goes away. If it doesn’t help, just uninstall it. We’ll need a way to reproduce the problem for a proper fix.

The issue is not resolved using Watchman, I actually have it installed for react native development and meteor is using it but still getting a similar issue to @minhna.

[Error: watchman::RootResolveError: failed to resolve root: unable to resolve root /home/wanchope/.meteor/packages/ostrio_flow-router-extra/3.12.0/os: failed to resolve root: "/home/wanchope/.meteor/packages/ostrio_flow-router-extra/3.12.0/os" resolved to "/home/wanchope/.meteor/packages/ostrio_flow-router-extra/.3.12.0.50wn0900xn++os+web.browser+web.browser.legacy+web.cordova/os" but we were unable to examine "/home/wanchope/.meteor/packages/ostrio_flow-router-extra/3.12.0/os" using strict case sensitive rules.  Please check each component of the path and make sure that that path exactly matches the correct case of the files on your filesystem.]

The issue is basically the same but im using Watchman. And I can confirm watchman is working on that pc using react native and even using a new meteor project it works.

In your case, the error looks different in wording, since you don’t have Watchman installed. Is it blocking you? Does the watcher stop on every file change, or does the app fail to rebuild and run? I’m trying to see if it’s just a warning for you or if it actually breaks things.

If you upgrade to the latest 3.3.1, does the issue still occur? We recently refactored the related code and I’d like to know if that made a difference.