Recs.
Updated
SpecsUpdate
Pros
Pro Has tons of plugins
Grunt has been available for a long time and during this time it has garnered a large community of dedicated developers who have made more than 4000 grunt plugins available to be used.
Pro Grunt v1.0 alpha uses Orchestrator for maximum concurrency
Grunt version 1 alpha, aka grunt-next, the upcoming next major release of Grunt, uses Orchestrator to sequence and execute tasks and dependencies with maximum concurrency, potentially bringing it up to speed with Gulp in term of performance.
Pro Shell commands inside Grunt
There is a Grunt plugin called grunt-exec which allows developers to execute shell commands inside their Grunt files. This is extremely easy if a developer is developing only in Node and constantly getting out of Node environment to run something like a git command can become frustrating.
Cons
Con Large bloated configuration files
To configure Grunt, developers need to basically write large files and configure JSON objects. While it's very powerful, the sheer complexity of it's configuration file may be a large obstacle for newcomers and developers that have not used any automation tools before. This may push them to search for simpler alternatives.
Con The need to track creation/movement of files
Debugging and augmenting grunt pipelines are much harder than other build systems that clearly show the pipelines in the code.
Grunt works on files so you must track where each task puts files and try and intercept that in a task if you want to add something in the middle of a build pipeline.