mirror of
https://github.com/vuejs/vue-cli.git
synced 2026-05-12 23:08:26 -05:00
workflow!: vue-cli-version-marker's version now only syncs with @vue/cli
This breaks @vue/cli 3.1.2 and 3.1.3 but it's a necessary change to simplify the release workflow
This commit is contained in:
+2
-1
@@ -4,7 +4,8 @@
|
||||
"version": "4.0.0-alpha.1",
|
||||
"packages": [
|
||||
"packages/@vue/babel-preset-app",
|
||||
"packages/@vue/cli*"
|
||||
"packages/@vue/cli*",
|
||||
"packages/vue-cli-version-marker"
|
||||
],
|
||||
"changelog": {
|
||||
"repo": "vuejs/vue-cli",
|
||||
|
||||
+1
-1
@@ -14,7 +14,7 @@
|
||||
"sync": "node scripts/syncDeps.js",
|
||||
"boot": "node scripts/bootstrap.js",
|
||||
"release": "yarn --pure-lockfile && yarn clean && node scripts/release.js",
|
||||
"version": "node scripts/markVersions.js && node scripts/genChangelog.js && git add packages/vue-cli-version-marker CHANGELOG.md",
|
||||
"version": "node scripts/genChangelog.js && git add CHANGELOG.md",
|
||||
"docs": "vuepress dev docs",
|
||||
"docs:build": "vuepress build docs",
|
||||
"patch-chromedriver": "node scripts/patchChromedriver.js"
|
||||
|
||||
@@ -6,25 +6,6 @@
|
||||
"license": "MIT",
|
||||
"main": "package.json",
|
||||
"devDependencies": {
|
||||
"@vue/babel-preset-app": "4.0.0-alpha.1",
|
||||
"@vue/cli-init": "4.0.0-alpha.1",
|
||||
"@vue/cli-overlay": "4.0.0-alpha.1",
|
||||
"@vue/cli-plugin-babel": "4.0.0-alpha.1",
|
||||
"@vue/cli-plugin-e2e-cypress": "4.0.0-alpha.1",
|
||||
"@vue/cli-plugin-e2e-nightwatch": "4.0.0-alpha.1",
|
||||
"@vue/cli-plugin-eslint": "4.0.0-alpha.1",
|
||||
"@vue/cli-plugin-pwa": "4.0.0-alpha.1",
|
||||
"@vue/cli-plugin-typescript": "4.0.0-alpha.1",
|
||||
"@vue/cli-plugin-unit-jest": "4.0.0-alpha.1",
|
||||
"@vue/cli-plugin-unit-mocha": "4.0.0-alpha.1",
|
||||
"@vue/cli-service-global": "4.0.0-alpha.1",
|
||||
"@vue/cli-service": "4.0.0-alpha.1",
|
||||
"@vue/cli-shared-utils": "4.0.0-alpha.1",
|
||||
"@vue/cli-test-utils": "4.0.0-alpha.1",
|
||||
"@vue/cli-ui-addon-webpack": "4.0.0-alpha.1",
|
||||
"@vue/cli-ui-addon-widgets": "4.0.0-alpha.1",
|
||||
"@vue/cli-ui": "4.0.0-alpha.1",
|
||||
"@vue/cli-upgrade": "4.0.0-alpha.1",
|
||||
"@vue/cli": "4.0.0-alpha.1"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
|
||||
const execa = require('execa')
|
||||
const semver = require('semver')
|
||||
|
||||
// TODO:
|
||||
// in v4 we don't need version marker's package.json to store all the versions
|
||||
// so this logic can be removed
|
||||
async function markVersions () {
|
||||
const packages = JSON.parse(
|
||||
(await execa(require.resolve('lerna/cli'), ['list', '--json'])).stdout
|
||||
).filter(p => !p.private)
|
||||
const markerPath = path.resolve(__dirname, '../packages/vue-cli-version-marker/package.json')
|
||||
const marker = JSON.parse(fs.readFileSync(markerPath))
|
||||
|
||||
const curVersion = marker.version
|
||||
const mainVersion = require('../lerna.json').version
|
||||
|
||||
if (semver.prerelease(mainVersion)) {
|
||||
marker.version = mainVersion
|
||||
} else {
|
||||
const releaseType = semver.diff(curVersion, mainVersion) || 'patch'
|
||||
marker.version = semver.inc(marker.version, releaseType)
|
||||
}
|
||||
|
||||
marker.devDependencies = packages.reduce((prev, pkg) => {
|
||||
prev[pkg.name] = pkg.version
|
||||
return prev
|
||||
}, {})
|
||||
fs.writeFileSync(markerPath, JSON.stringify(marker, null, 2))
|
||||
}
|
||||
|
||||
markVersions().catch(err => {
|
||||
console.error(err)
|
||||
process.exit(1)
|
||||
})
|
||||
@@ -112,26 +112,6 @@ const release = async () => {
|
||||
}
|
||||
|
||||
await execa(require.resolve('lerna/cli'), lernaArgs, { stdio: 'inherit' })
|
||||
|
||||
// publish version marker after all other packages are published
|
||||
await execa(
|
||||
'npm',
|
||||
[
|
||||
'publish',
|
||||
'--tag',
|
||||
distTag,
|
||||
// must specify registry url: https://github.com/lerna/lerna/issues/896#issuecomment-311894609
|
||||
'--registry',
|
||||
'https://registry.npmjs.org/'
|
||||
],
|
||||
{
|
||||
stdio: 'inherit',
|
||||
cwd: require('path').resolve(
|
||||
__dirname,
|
||||
'../packages/vue-cli-version-marker'
|
||||
)
|
||||
}
|
||||
)
|
||||
}
|
||||
|
||||
release().catch(err => {
|
||||
|
||||
Reference in New Issue
Block a user