mirror of
https://github.com/jquery/jquery.git
synced 2024-11-23 02:54:22 +00:00
358b769a00
Use a dist README fixture kept in the jQuery repository instead of modifying an existing one. This makes the jQuery repository the single source of truth when it comes to jQuery releases and it makes it easier to make changes to README without worrying how it will affect older jQuery lines. The commit also ES6ifies build/release.js & build/release/dist.js Closes gh-4614
92 lines
2.2 KiB
JavaScript
92 lines
2.2 KiB
JavaScript
"use strict";
|
|
|
|
var fs = require( "fs" );
|
|
|
|
module.exports = function( Release ) {
|
|
|
|
const distFiles = [
|
|
"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"
|
|
];
|
|
const filesToCommit = [
|
|
...distFiles,
|
|
"src/core.js"
|
|
];
|
|
const cdn = require( "./release/cdn" );
|
|
const dist = require( "./release/dist" );
|
|
|
|
const npmTags = Release.npmTags;
|
|
|
|
function setSrcVersion( filepath ) {
|
|
var contents = fs.readFileSync( filepath, "utf8" );
|
|
contents = contents.replace( /@VERSION/g, Release.newVersion );
|
|
fs.writeFileSync( filepath, contents, "utf8" );
|
|
}
|
|
|
|
Release.define( {
|
|
npmPublish: true,
|
|
issueTracker: "github",
|
|
|
|
/**
|
|
* Set the version in the src folder for distributing ES modules
|
|
* and in the amd folder for AMD.
|
|
*/
|
|
_setSrcVersion: function() {
|
|
setSrcVersion( `${ __dirname }/../src/core.js` );
|
|
setSrcVersion( `${ __dirname }/../amd/core.js` );
|
|
},
|
|
|
|
/**
|
|
* 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.
|
|
* @param {Function} callback
|
|
*/
|
|
generateArtifacts: function( callback ) {
|
|
Release.exec( "grunt", "Grunt command failed" );
|
|
Release.exec(
|
|
"grunt custom:slim --filename=jquery.slim.js && " +
|
|
"grunt remove_map_comment --filename=jquery.slim.js",
|
|
"Grunt custom failed"
|
|
);
|
|
cdn.makeReleaseCopies( Release );
|
|
Release._setSrcVersion();
|
|
callback( filesToCommit );
|
|
},
|
|
|
|
/**
|
|
* Acts as insertion point for restoring Release.dir.repo
|
|
* It was changed to reuse npm publish code in jquery-release
|
|
* for publishing the distribution repo instead
|
|
*/
|
|
npmTags: function() {
|
|
|
|
// origRepo is not defined if dist was skipped
|
|
Release.dir.repo = Release.dir.origRepo || Release.dir.repo;
|
|
return npmTags();
|
|
},
|
|
|
|
/**
|
|
* Publish to distribution repo and npm
|
|
* @param {Function} callback
|
|
*/
|
|
dist: function( callback ) {
|
|
cdn.makeArchives( Release, function() {
|
|
dist( Release, distFiles, callback );
|
|
} );
|
|
}
|
|
} );
|
|
};
|
|
|
|
module.exports.dependencies = [
|
|
"archiver@1.3.0",
|
|
"shelljs@0.7.7",
|
|
"inquirer@7.0.4",
|
|
"npm@4.4.1",
|
|
"chalk@1.1.3"
|
|
];
|