diff options
author | Timmy Willison <timmywillisn@gmail.com> | 2015-11-12 13:18:59 -0500 |
---|---|---|
committer | Timmy Willison <timmywillisn@gmail.com> | 2015-11-16 11:22:20 -0500 |
commit | cf7102c3f1bcbd135f24947a3a3216cff272bdc2 (patch) | |
tree | 6a51615585760bb0831db372c5df93c5d5632277 /build | |
parent | 78b9eac1198627eb4dad0cc35334c7704449f310 (diff) | |
download | jquery-cf7102c3f1bcbd135f24947a3a3216cff272bdc2.tar.gz jquery-cf7102c3f1bcbd135f24947a3a3216cff272bdc2.zip |
Release: push a custom slim build to the CDN
Fixes gh-2653
Close gh-2711
Diffstat (limited to 'build')
-rw-r--r-- | build/release.js | 16 | ||||
-rw-r--r-- | build/release/cdn.js | 19 | ||||
-rw-r--r-- | build/release/dist.js | 21 | ||||
-rw-r--r-- | build/tasks/build.js | 8 | ||||
-rw-r--r-- | build/tasks/dist.js | 9 | ||||
-rw-r--r-- | build/tasks/sourcemap.js | 3 |
6 files changed, 47 insertions, 29 deletions
diff --git a/build/release.js b/build/release.js index 5feddfa24..a333d05b4 100644 --- a/build/release.js +++ b/build/release.js @@ -2,7 +2,14 @@ module.exports = function( Release ) { var - files = [ "dist/jquery.js", "dist/jquery.min.js", "dist/jquery.min.map" ], + files = [ + "dist/jquery.js", + "dist/jquery.min.js", + "dist/jquery.min.map", + "dist/jquery.slim.js", + "dist/jquery.slim.min.js", + "dist/jquery.slim.min.map" + ], cdn = require( "./release/cdn" ), dist = require( "./release/dist" ), ensureSizzle = require( "./release/ensure-sizzle" ), @@ -27,6 +34,11 @@ module.exports = function( Release ) { */ generateArtifacts: function( callback ) { Release.exec( "grunt", "Grunt command failed" ); + Release.exec( + "grunt custom:-ajax,-effects,-deprecated --filename=jquery.slim.js && " + + "grunt remove_map_comment --filename=jquery.slim.js", + "Grunt custom failed" + ); cdn.makeReleaseCopies( Release ); callback( files ); }, @@ -47,7 +59,7 @@ module.exports = function( Release ) { */ dist: function( callback ) { cdn.makeArchives( Release, function() { - dist( Release, callback ); + dist( Release, files, callback ); } ); } } ); diff --git a/build/release/cdn.js b/build/release/cdn.js index 07285a56d..3b485112e 100644 --- a/build/release/cdn.js +++ b/build/release/cdn.js @@ -5,22 +5,23 @@ var cdnFolder = "dist/cdn", - devFile = "dist/jquery.js", - minFile = "dist/jquery.min.js", - mapFile = "dist/jquery.min.map", - releaseFiles = { - "jquery-VER.js": devFile, - "jquery-VER.min.js": minFile, - "jquery-VER.min.map": mapFile + "jquery-VER.js": "dist/jquery.js", + "jquery-VER.min.js": "dist/jquery.min.js", + "jquery-VER.min.map": "dist/jquery.min.map", + "jquery-VER.slim.js": "dist/jquery.slim.js", + "jquery-VER.slim.min.js": "dist/jquery.slim.min.js", + "jquery-VER.slim.min.map": "dist/jquery.slim.min.map" }, googleFilesCDN = [ - "jquery.js", "jquery.min.js", "jquery.min.map" + "jquery.js", "jquery.min.js", "jquery.min.map", + "jquery.slim.js", "jquery.slim.min.js", "jquery.slim.min.map" ], msFilesCDN = [ - "jquery-VER.js", "jquery-VER.min.js", "jquery-VER.min.map" + "jquery-VER.js", "jquery-VER.min.js", "jquery-VER.min.map", + "jquery-VER.slim.js", "jquery-VER.slim.min.js", "jquery-VER.slim.min.map" ]; /** diff --git a/build/release/dist.js b/build/release/dist.js index 32053eafb..514d40739 100644 --- a/build/release/dist.js +++ b/build/release/dist.js @@ -1,13 +1,16 @@ -module.exports = function( Release, complete ) { +module.exports = function( Release, files, complete ) { var fs = require( "fs" ), shell = require( "shelljs" ), pkg = require( Release.dir.repo + "/package.json" ), - distRemote = Release.remote.replace( "jquery.git", "jquery-dist.git" ), + distRemote = Release.remote + + // For local and github dists + .replace( /jquery(\.git|$)/, "jquery-dist$1" ), // These files are included with the distribution - files = [ + extras = [ "src", "LICENSE.txt", "AUTHORS.txt", @@ -54,17 +57,13 @@ module.exports = function( Release, complete ) { // Copy dist files var distFolder = Release.dir.dist + "/dist"; shell.mkdir( "-p", distFolder ); - [ - "dist/jquery.js", - "dist/jquery.min.js", - "dist/jquery.min.map" - ].forEach( function( file ) { - shell.cp( Release.dir.repo + "/" + file, distFolder ); + files.forEach( function( file ) { + shell.cp( "-f", Release.dir.repo + "/" + file, distFolder ); } ); // Copy other files - files.forEach( function( file ) { - shell.cp( "-r", Release.dir.repo + "/" + file, Release.dir.dist ); + extras.forEach( function( file ) { + shell.cp( "-rf", Release.dir.repo + "/" + file, Release.dir.dist ); } ); // Write generated bower file diff --git a/build/tasks/build.js b/build/tasks/build.js index 74fa47fde..c9f1daeb8 100644 --- a/build/tasks/build.js +++ b/build/tasks/build.js @@ -15,7 +15,6 @@ module.exports = function( grunt ) { config = { baseUrl: "src", name: "jquery", - out: "dist/jquery.js", // We have multiple minify steps optimize: "none", @@ -115,7 +114,7 @@ module.exports = function( grunt ) { done = this.async(), flags = this.flags, optIn = flags[ "*" ], - name = this.data.dest, + name = grunt.option( "filename" ), minimum = this.data.minimum, removeWith = this.data.removeWith, excluded = [], @@ -205,6 +204,11 @@ module.exports = function( grunt ) { } }; + // Filename can be passed to the command line using + // command line options + // e.g. grunt build --filename=jquery-custom.js + name = name ? ( "dist/" + name ) : this.data.dest; + // append commit id to version if ( process.env.COMMIT ) { version += " " + process.env.COMMIT; diff --git a/build/tasks/dist.js b/build/tasks/dist.js index 78ce2f254..fa6920c88 100644 --- a/build/tasks/dist.js +++ b/build/tasks/dist.js @@ -2,11 +2,12 @@ module.exports = function( grunt ) { "use strict"; - var fs = require( "fs" ), + var fs = require( "fs" ), + filename = grunt.option( "filename" ), distpaths = [ - "dist/jquery.js", - "dist/jquery.min.map", - "dist/jquery.min.js" + "dist/" + filename, + "dist/" + filename.replace( ".js", ".min.map" ), + "dist/" + filename.replace( ".js", ".min.js" ) ]; // Process files for distribution diff --git a/build/tasks/sourcemap.js b/build/tasks/sourcemap.js index 3e4144de0..3f21b2afd 100644 --- a/build/tasks/sourcemap.js +++ b/build/tasks/sourcemap.js @@ -1,8 +1,9 @@ var fs = require( "fs" ); module.exports = function( grunt ) { - var minLoc = Object.keys( grunt.config( "uglify.all.files" ) )[ 0 ]; + var config = grunt.config( "uglify.all.files" ); grunt.registerTask( "remove_map_comment", function() { + var minLoc = grunt.config.process( Object.keys( config )[ 0 ] ); // Remove the source map comment; it causes way too many problems. // The map file is still generated for manual associations |