grunt-contrib-watch plugin provides nice auto-build feature but in some occasions does not display warning message from tasks, here is my grunt.js:
min: {
app: {
src: [
'some.js',
],
dest: 'some.min.js'
},
}
watch: {
app: {
files: 'some.js',
tasks: ['min:app']
},
}
if source is fine, that everything goes smoothly; however when UglifyJS aborts:
run grunt min:app directly
Running "min:app" (min) task
Minifying with UglifyJS...ERROR
[L360:C46] Unexpected token name, expected punc (position: 8529)
<WARN> UglifyJS found errors. Use --force to continue. </WARN>
Aborted due to warnings.
auto-build via watch plugin
Waiting...OK
>> File "some.js" changed.
Running "min:app" (min) task
so there is no way to know if build is successful without looking at output itself.
similar setup with css less does display error to CLI, I am wondering if there is something I need to pass to grunt/watch plugin/uglify to makes it work?
Looks like Grunt v0.3.x + grunt-contrib-watch v0.1.4 is indeed the problem…
https://github.com/gruntjs/grunt-contrib-watch/issues/19
https://github.com/gruntjs/grunt-contrib-watch/issues/7
(EDIT: after upgrading to Grunt v0.4.x + grunt-contrib-watch v0.2.x, issue is resolved; though I should note this is a breaking upgrade, most v0.3 plugins are not converted to support Grunt v0.4 yet)
I closed my ticket on their repo as well, for reference: https://github.com/gruntjs/grunt-contrib-watch/issues/51