diff options
author | Timmy Willison <timmywillisn@gmail.com> | 2014-05-23 12:45:51 -0400 |
---|---|---|
committer | Timmy Willison <timmywillisn@gmail.com> | 2014-05-27 15:17:54 -0400 |
commit | 523c87138afc23acd7d0817504d254bd25ae04a0 (patch) | |
tree | 700446c9ce5214330876fd3057d958273afcb6f8 | |
parent | 43756f6e7afb3ee8fe8100ef530e04f5b0cc4cae (diff) | |
download | jquery-523c87138afc23acd7d0817504d254bd25ae04a0.tar.gz jquery-523c87138afc23acd7d0817504d254bd25ae04a0.zip |
Release: ensure Sizzle is the latest tag
Fixes #14915
-rw-r--r-- | build/ensure-sizzle.js | 40 | ||||
-rw-r--r-- | build/release.js | 8 | ||||
-rw-r--r-- | package.json | 1 |
3 files changed, 49 insertions, 0 deletions
diff --git a/build/ensure-sizzle.js b/build/ensure-sizzle.js new file mode 100644 index 000000000..01a128efb --- /dev/null +++ b/build/ensure-sizzle.js @@ -0,0 +1,40 @@ +var fs = require( "fs" ), + bower = require( "grunt-bowercopy/node_modules/bower" ), + sizzleLoc = __dirname + "/../src/sizzle/dist/sizzle.js", + rversion = /Engine v(\d+\.\d+\.\d+(?:-\w+)?)/; + +/** + * Retrieve the latest tag of Sizzle from bower + * @param {Function(string)} callback + */ +function getLatestSizzle( callback ) { + bower.commands.info( "sizzle", "version" ) + .on( "end", callback ); +} + +/** + * Ensure the /src folder has the latest tag of Sizzle + * @param {Object} Release + * @param {Function} callback + */ +function ensureSizzle( Release, callback ) { + console.log(); + console.log( "Checking Sizzle version..." ); + getLatestSizzle(function( latest ) { + var match = rversion.exec( fs.readFileSync( sizzleLoc, "utf8" ) ), + version = match ? match[ 1 ] : "Not Found"; + + if ( version !== latest ) { + console.log( + "The Sizzle version in the src folder (" + version.red + + ") is not the latest tag (" + latest.green + ")." + ); + Release.confirm( callback ); + } else { + console.log( "Sizzle is latest (" + latest.green + ")" ); + callback(); + } + }); +} + +module.exports = ensureSizzle; diff --git a/build/release.js b/build/release.js index 1818d4d9e..8a2b98e58 100644 --- a/build/release.js +++ b/build/release.js @@ -3,6 +3,7 @@ module.exports = function( Release ) { var fs = require( "fs" ), shell = require( "shelljs" ), + ensureSizzle = require( "./ensure-sizzle" ), devFile = "dist/jquery.js", minFile = "dist/jquery.min.js", @@ -119,6 +120,13 @@ module.exports = function( Release ) { issueTracker: "trac", contributorReportId: 508, /** + * Ensure the repo is in a proper state before release + * @param {Function} callback + */ + checkRepoState: function( callback ) { + ensureSizzle( Release, callback ); + }, + /** * Generates any release artifacts that should be included in the release. * The callback must be invoked with an array of files that should be * committed before creating the tag. diff --git a/package.json b/package.json index 86def159e..c1ff29da1 100644 --- a/package.json +++ b/package.json @@ -30,6 +30,7 @@ ], "dependencies": {}, "devDependencies": { + "colors": "^0.6.2", "commitplease": "1.7.0", "grunt": "0.4.2", "grunt-bowercopy": "0.7.1", |