I'm using grunt to watch my coffeescript files in a towerjs project and recompile them as they change. The configuration for this is generated by towerjs and seems fairly sane. The problem is, that once I start this process I will see it pegging a cpu core (actually, just one hyperthread). If I remove a lot of the paths from being watched I can get it down to around 25% of a CPU, but that is still pretty terrible.
I've found a few references to some known issues and cross-platform inconsistence with the Node's fs API and even the fs.watch in particular. Tried grunt-simple-watch but it did not do any better.
I could setup Guard but it may be fiddlesome to get it working just right and functionally grunt seems to be just fine - I am curious though if anyone else has any other suggestions.
Give the new watch task a try: npm install grunt-contrib-watch
and add grunt.loadNpmTasks('grunt-contrib-watch');
to your gruntfile. The Grunt v0.3 watch task traverses & stats files which with a large number of files can get slow but was necessary for system compatibility. The new one will only use inotify if working properly within node.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With