diff options
author | Timmy Willison <timmywil@users.noreply.github.com> | 2023-07-27 11:24:49 -0400 |
---|---|---|
committer | Timmy Willison <timmywil@users.noreply.github.com> | 2024-07-11 10:00:56 -0400 |
commit | 2646a8b07fcc2cf7cf384724f622eb0c27f9166c (patch) | |
tree | 3367ad18d492486a692bb4a7a23b216ba155451f /build/release.js | |
parent | 3a98ef91dfa0b4897df7562f40bfd1715f5fc30e (diff) | |
download | jquery-2646a8b07fcc2cf7cf384724f622eb0c27f9166c.tar.gz jquery-2646a8b07fcc2cf7cf384724f622eb0c27f9166c.zip |
Release: migrate release process to release-it
*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
*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
- move dist wrappers to "wrappers" folders for easy removal
of all built files
- limit certain workflows to the main repo (not forks)
- version in package.json has been set to beta.1 so that
the next release will be beta.2
- 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.
Fixes jquery/jquery-release#114
Closes gh-5512
Diffstat (limited to 'build/release.js')
-rw-r--r-- | build/release.js | 96 |
1 files changed, 0 insertions, 96 deletions
diff --git a/build/release.js b/build/release.js deleted file mode 100644 index bdfb0bc3b..000000000 --- a/build/release.js +++ /dev/null @@ -1,96 +0,0 @@ -"use strict"; - -const fs = require( "node: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", - "dist/jquery.factory.js", - "dist/jquery.factory.slim.js", - "dist-module/jquery.module.js", - "dist-module/jquery.module.min.js", - "dist-module/jquery.module.min.map", - "dist-module/jquery.slim.module.js", - "dist-module/jquery.slim.module.min.js", - "dist-module/jquery.slim.module.min.map", - "dist-module/jquery.factory.module.js", - "dist-module/jquery.factory.slim.module.js" - ]; - const filesToCommit = [ - ...distFiles, - "src/core.js" - ]; - const cdn = require( "./release/cdn" ); - const dist = require( "./release/dist" ); - const { buildDefaultFiles } = require( "./tasks/build" ); - - 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", - - // Update cdn location to versioned files - cdnPublish: "dist/cdn/versioned", - - /** - * Set the version in the src folder for distributing ES modules. - */ - _setSrcVersion: function() { - setSrcVersion( `${ __dirname }/../src/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: async function( callback ) { - await buildDefaultFiles( { version: Release.newVersion } ); - - 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: async function( callback ) { - await cdn.makeArchives( Release ); - dist( Release, distFiles, callback ); - } - } ); -}; - -module.exports.dependencies = [ - "archiver@5.2.0", - "shelljs@0.8.4", - "inquirer@8.0.0" -]; |