mirror of
https://github.com/jquery/jquery.git
synced 2024-11-23 02:54:22 +00:00
2cf659189e
*Authors* - Checking and updating authors has been migrated to a custom script in the repo *Changelog* - changelogplease is no longer maintained - generate changelog in markdown for GitHub releases - generate changelog in HTML for blog posts - generate contributors list in HTML for blog posts *dist* - clone dist repo, copy files, and commit/push - commit tag with dist files on main branch; remove dist files from main branch after release *cdn* - clone cdn repo, copy files, and commit/push - create versioned and unversioned copies in cdn/ - generate md5 sums and archives for Google and MSFT *build* - implement reproducible builds and verify release builds * uses the last modified date for the latest commit * See https://reproducible-builds.org/ - the verify workflow also ensures all files were properly published to the CDN and npm *docs* - the new release workflow is documented at build/release/README.md *verify* - use the last modified date of the commit before the tag - use versioned filenames when checking map files on the CDN - skip factory and package.json files when verifying CDN *misc* - now that we don't need the jquery-release script and now that we no longer need to build on Node 10, we can use ESM in all files in the build folder - limit certain workflows to the main repo (not forks) - version has been set to the previously released version 3.7.1, as release-it expects - release-it added the `preReleaseBase` option and we now always set it to `1` in the npm script. This is a noop for stable releases. - include post-release script to be run manually after a release, with further steps that should be verified manually Ref jquery/jquery-release#114 Closes gh-5522
68 lines
1.6 KiB
JavaScript
Executable File
68 lines
1.6 KiB
JavaScript
Executable File
import yargs from "yargs/yargs";
|
|
import { build } from "./tasks/build.js";
|
|
import slimExclude from "./tasks/lib/slim-exclude.js";
|
|
|
|
const argv = yargs( process.argv.slice( 2 ) )
|
|
.version( false )
|
|
.command( {
|
|
command: "[options]",
|
|
describe: "Build a jQuery bundle"
|
|
} )
|
|
.option( "filename", {
|
|
alias: "f",
|
|
type: "string",
|
|
description:
|
|
"Set the filename of the built file. Defaults to jquery.js."
|
|
} )
|
|
.option( "dir", {
|
|
alias: "d",
|
|
type: "string",
|
|
description:
|
|
"Set the dir to which to output the built file. Defaults to /dist."
|
|
} )
|
|
.option( "version", {
|
|
alias: "v",
|
|
type: "string",
|
|
description:
|
|
"Set the version to include in the built file. " +
|
|
"Defaults to the version in package.json plus the " +
|
|
"short commit SHA and any excluded modules."
|
|
} )
|
|
.option( "watch", {
|
|
alias: "w",
|
|
type: "boolean",
|
|
description:
|
|
"Watch the source files and rebuild when they change."
|
|
} )
|
|
.option( "exclude", {
|
|
alias: "e",
|
|
type: "array",
|
|
description:
|
|
"Modules to exclude from the build. " +
|
|
"Specifying this option will cause the " +
|
|
"specified modules to be excluded from the build."
|
|
} )
|
|
.option( "include", {
|
|
alias: "i",
|
|
type: "array",
|
|
description:
|
|
"Modules to include in the build. " +
|
|
"Specifying this option will override the " +
|
|
"default included modules and only include these modules."
|
|
} )
|
|
.option( "slim", {
|
|
alias: "s",
|
|
type: "boolean",
|
|
description: "Build a slim bundle, which excludes " +
|
|
slimExclude.join( ", " )
|
|
} )
|
|
.option( "amd", {
|
|
type: "string",
|
|
description:
|
|
"Set the name of the AMD module. Leave blank to make an anonymous module."
|
|
} )
|
|
.help()
|
|
.argv;
|
|
|
|
build( argv );
|