-
Notifications
You must be signed in to change notification settings - Fork 12.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
tsc --watch via directory-level fsevents not working on macOS 14.4 #57792
Comments
Just to add an observation: I think this issue is Sonoma specific as watch seems to work on 13.6.4 (Ventura). |
When testing this issue, make sure you don't use Vim. Creating/deleting files seems to trigger the file watcher, so it's possible for Vim users to not notice this issue (possibly due to swap files) while VSCode users do. Consistent repro can be done like: tsc --watch --watchFile usefseventsonparentdirectory
echo "console.log('Hello world!')" > main.ts
cat main.js
echo "console.log('Hello world 2!')" > main.ts
cat main.js |
I found the bisect: git checkout dc113f8170 // latest `main` as of this post
git revert e40730f
npm run build && npm run build:compiler I suspect the issue is that the |
Directories generate change event in multiple scenarios and should not filter events based on modified time Fixes #57792
Directories generate change event in multiple scenarios and should not filter events based on modified time Fixes #57792
For anyone (like me just now) who stumbles on this, the fix hasn't been released on |
π Search Terms
fsevents tsc watch macOS 14.4 not watching working detecting changes found 0 errors
π Version & Regression Information
β― Playground Link
https://gist.github.com/nfarina/d5538d16343830e41c9f3e031a65237e
π» Code
Reproducible with just this
package.json
and an arbitrarytest.ts
file (see Gist link):π Actual behavior
This is confusing to me because it seems like many people would be experiencing this right now, but I have tested quite a lot and, for me, TypeScript 5.4.2 broke folder watching completely on my system. (This is a brand new M3 MacBook Air running macOS 14.4).
This works:
And this doesn't:
On TypeScript 5.3.3 and below, both work as expected.
π Expected behavior
tsc --watch
should observe file changes using fsevents folder watchingAdditional information about the issue
I did some digging in the tsc codebase to find where fsevents is being used but was unsuccessful - I'm happy to investigate further if anyone can give me a lead.
The text was updated successfully, but these errors were encountered: