@@ -11,14 +11,13 @@ const map = (transform, flush = undefined) => new Transform({ objectMode: true,
1111const vfs = require ( 'vinyl-fs' )
1212const zip = require ( '@vscode/gulp-vinyl-zip' )
1313
14- function getNextReleaseNumber ( { octokit, owner, repo, variant } ) {
15- const prefix = `${ variant } -`
16- const filter = ( { name } ) => name . startsWith ( prefix ) && ! name . endsWith ( '-latest' )
14+ function getNextReleaseNumber ( { octokit, owner, repo, tagPrefix, latestTagName } ) {
15+ const filter = ( { name } ) => name !== latestTagName && name . startsWith ( tagPrefix )
1716 return collectReleases ( { octokit, owner, repo, filter } ) . then ( ( releases ) => {
1817 if ( releases . length ) {
1918 releases . sort ( ( a , b ) => - 1 * a . name . localeCompare ( b . name , 'en' , { numeric : true } ) )
2019 const latestName = releases [ 0 ] . name
21- return Number ( latestName . slice ( prefix . length ) ) + 1
20+ return Number ( latestName . slice ( tagPrefix . length ) ) + 1
2221 } else {
2322 return 1
2423 }
@@ -80,8 +79,9 @@ module.exports = (dest, bundleName, owner, repo, ref, token, updateBranch, lates
8079 let variant = ref ? ref . replace ( / ^ r e f s \/ h e a d s \/ / , '' ) : 'main'
8180 if ( variant === 'main' ) variant = 'prod'
8281 ref = ref . replace ( / ^ r e f s \/ / , '' )
83- const tagName = `${ variant } -${ await getNextReleaseNumber ( { octokit, owner, repo, variant } ) } `
84- const latestTagName = latestAlias === false ? undefined : `${ variant } -${ latestAlias || 'latest' } `
82+ const tagPrefix = `${ variant } -`
83+ const latestTagName = latestAlias === false ? undefined : `${ tagPrefix } ${ latestAlias || 'latest' } `
84+ const tagName = `${ tagPrefix } ${ await getNextReleaseNumber ( { octokit, owner, repo, tagPrefix, latestTagName } ) } `
8585 const message = `Release ${ tagName } `
8686 const bundleFileBasename = `${ bundleName } -bundle.zip`
8787 const bundleFile = await versionBundle ( ospath . join ( dest , bundleFileBasename ) , tagName )
0 commit comments