@@ -44,6 +44,8 @@ module.exports = function(grunt) {
4444 grunt . file . write ( 'numeral.js' , numeral ) ;
4545 } ;
4646
47+ require ( 'load-grunt-tasks' ) ( grunt ) ;
48+
4749 grunt . initConfig ( {
4850 mochaTest : {
4951 all : [
@@ -152,12 +154,6 @@ module.exports = function(grunt) {
152154 }
153155 } ) ;
154156
155- grunt . loadNpmTasks ( 'grunt-contrib-copy' ) ;
156- grunt . loadNpmTasks ( 'grunt-contrib-uglify' ) ;
157- grunt . loadNpmTasks ( 'grunt-contrib-jshint' ) ;
158- grunt . loadNpmTasks ( 'grunt-mocha-test' ) ;
159- grunt . loadNpmTasks ( 'grunt-karma' ) ;
160-
161157 grunt . registerTask ( 'default' , [
162158 'test'
163159 ] ) ;
@@ -194,6 +190,32 @@ module.exports = function(grunt) {
194190 'uglify'
195191 ] ) ;
196192
193+ grunt . registerTask ( 'version' , function ( version ) {
194+ if ( ! version || version . split ( '.' ) . length !== 3 ) {
195+ grunt . fail . fatal ( 'malformed version. Use\n\n grunt version:1.2.3' ) ;
196+ }
197+
198+ grunt . config ( 'string-replace.json' , {
199+ files : {
200+ 'package.json' : 'package.json' ,
201+ 'component.json' : 'component.json' ,
202+ 'bower.json' : 'bower.json'
203+ } ,
204+ options : {
205+ replacements : [
206+ {
207+ pattern : / " v e r s i o n " : .* / ,
208+ replacement : '"version": "' + version + '",'
209+ }
210+ ]
211+ }
212+ } ) ;
213+
214+ grunt . task . run ( [
215+ 'string-replace:json'
216+ ] ) ;
217+ } ) ;
218+
197219 // Travis CI task.
198220 grunt . registerTask ( 'travis' , [
199221 'build' ,
0 commit comments