geddski/grunt-release — pull request #38 by begriffs (2013-08-07 23:47:48+00:00)
Title: Bump version in multiple files (with a multitask)

Another attempt at bumping the versions in both `package.json` and `bower.json`. Unlike the previous attempt (#34) this one uses a Grunt multitask to loop through the files. @geddski thanks for encouraging me to learn the right way to do things in Grunt.

**This PR is not ready to merge yet.** I am opening it so we can discuss the multitask approach. Here's how it works
* Rather than registering a single "release" task it registers the tasks "release-publish," "release," and the multitask "release-bump"
* The release task does nothing except require the other two

So the user's Gruntfile configuration might look like this
```js
'release-bump': {
npm: 'package.json',
bower: 'bower.json'
},
'release-publish': {
options: {
push: false,
pushTags: false,
npm: false
}
}
```

What's broken:
* If you don't want to bump any files you remove the "release-bump" task, but that makes `grunt release` fail saying

```
Running "release-bump" task
>> No "release-bump" targets found.
Warning: Task "release-bump" failed. Use --force to continue.
```

* The type (e.g. major, minor, patch, or prerelease) does not get passed to release-bump.
* Not sure if the hyphenation is the normal way to namespace things for Grunt libraries, and it forces the user to quote the tasks.