Skip to content

Commit

Permalink
Merge branch 'release/0.1.3'
Browse files Browse the repository at this point in the history
  • Loading branch information
mikaelkaron committed Aug 16, 2013
2 parents 5ad95c0 + 1e10490 commit 5226a44
Show file tree
Hide file tree
Showing 3 changed files with 63 additions and 40 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ A string value that is used to format the output JSON
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using [Grunt](http://gruntjs.com/).

## Release History
0.1.3 - Added support for event
0.1.2 - Added verbose logging
0.1.1 - Added support for templated arguments
0.1.0 - First somewhat stable release
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "grunt-semver",
"description": "Semantic versioning for grunt",
"version": "0.1.2",
"version": "0.1.3",
"homepage": "https://github.com/mikaelkaron/grunt-semver",
"author": {
"name": "Mikael Karon",
Expand Down
100 changes: 61 additions & 39 deletions tasks/semver.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,12 @@ module.exports = function(grunt) {
"use strict";

var semver = require("semver");
var SEMVER = "semver";
var SPACE = "space";
var VERSION = "version";
var SEMVER = "semver";
var SEMVER_VALIDATE = SEMVER + ".validate";
var SEMVER_SET = SEMVER + ".set";
var SEMVER_BUMP = SEMVER + ".bump";

// Default options
var OPTIONS = {};
Expand Down Expand Up @@ -78,25 +81,34 @@ module.exports = function(grunt) {

if (part) {
try {
grunt.log.writeln(format(semver(build ? semver.clean(part) + "+" + build : part)).green);
grunt.event.emit(SEMVER_VALIDATE, (function(version) {
grunt.log.writeln(version.green);

return version;
}(format(semver(build ? semver.clean(part) + "+" + build : part)))).green);
}
catch (e) {
grunt.fail.warn(e);
}
}
else {
this.files.forEach(function (file) {
try {
var src = file.src;
var json = grunt.file.readJSON(src);
file.src.forEach(function (src) {
try {
var json = grunt.file.readJSON(src);

grunt.log.verbose.writeln(src + " version : " + json[VERSION].cyan);
grunt.log.verbose.writeln(src + " version : " + json[VERSION].cyan);

grunt.log.writeln(src + " : " + format(semver(build ? semver.clean(json[VERSION]) + "+" + build : json[VERSION])).green);
}
catch (e) {
grunt.fail.warn(e);
}
var version = format(semver(build ? semver.clean(json[VERSION]) + "+" + build : json[VERSION]));

grunt.log.writeln(src + " : " + version.green);

grunt.event.emit(SEMVER_VALIDATE, version, src);
}
catch (e) {
grunt.fail.warn(e);
}
});
});
}
break;
Expand All @@ -109,25 +121,30 @@ module.exports = function(grunt) {
});

this.files.forEach(function (file) {
try {
var src = file.src;
var json = grunt.file.readJSON(src);
var dest = file.dest;

grunt.log.verbose.write(src + " version : " + json[VERSION].cyan);
if (part) {
grunt.log.verbose.write(" (but will use " + part.cyan + " instead)");
}
grunt.log.verbose.writeln();
file.src.forEach(function (src) {
try {
var json = grunt.file.readJSON(src);

grunt.log.write(src + " : ");
var version = json[VERSION] = format(semver(build ? semver.clean(part || json[VERSION]) + "+" + build : part || json[VERSION]));
grunt.log.writeln(version.green);
grunt.log.verbose.write(src + " version : " + json[VERSION].cyan);
if (part) {
grunt.log.verbose.write(" (but will use " + part.cyan + " instead)");
}
grunt.log.verbose.writeln();

grunt.file.write(file.dest, JSON.stringify(json, null, options[SPACE]));
}
catch (e) {
grunt.fail.warn(e);
}
grunt.log.write(src + " : ");
var version = json[VERSION] = format(semver(build ? semver.clean(part || json[VERSION]) + "+" + build : part || json[VERSION]));
grunt.log.writeln(version.green);

grunt.file.write(dest, JSON.stringify(json, null, options[SPACE]));

grunt.event.emit(SEMVER_SET, version, src, dest);
}
catch (e) {
grunt.fail.warn(e);
}
});
});
break;

Expand All @@ -144,21 +161,26 @@ module.exports = function(grunt) {
case "patch" :
case "prerelease" :
this.files.forEach(function (file) {
try {
var src = file.src;
var json = grunt.file.readJSON(src);
var dest = file.dest;

grunt.log.verbose.writeln(src + " version : " + json[VERSION].cyan);
file.src.forEach(function (src) {
try {
var json = grunt.file.readJSON(src);

grunt.log.write(src + " : ");
var version = json[VERSION] = format(semver(build ? semver.clean(json[VERSION]) + "+" + build : semver.clean(json[VERSION])).inc(part));
grunt.log.writeln(version.green);
grunt.log.verbose.writeln(src + " version : " + json[VERSION].cyan);

grunt.file.write(file.dest, JSON.stringify(json, null, options[SPACE]));
}
catch (e) {
grunt.fail.warn(e);
}
grunt.log.write(src + " : ");
var version = json[VERSION] = format(semver(build ? semver.clean(json[VERSION]) + "+" + build : semver.clean(json[VERSION])).inc(part));
grunt.log.writeln(version.green);

grunt.file.write(dest, JSON.stringify(json, null, options[SPACE]));

grunt.event.emit(SEMVER_BUMP, version, src, dest);
}
catch (e) {
grunt.fail.warn(e);
}
});
});
break;

Expand Down

0 comments on commit 5226a44

Please sign in to comment.