workflow: use workspace deps

This commit is contained in:
Evan You 2023-11-21 09:16:14 +08:00
parent 32fb79df41
commit 8fddb19c3a
14 changed files with 76 additions and 63 deletions

View File

@ -33,7 +33,7 @@
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-core#readme",
"dependencies": {
"@babel/parser": "^7.23.3",
"@vue/shared": "3.3.8",
"@vue/shared": "workspace:*",
"estree-walker": "^2.0.2",
"source-map-js": "^1.0.2"
},

View File

@ -37,7 +37,7 @@
},
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-dom#readme",
"dependencies": {
"@vue/shared": "3.3.8",
"@vue/compiler-core": "3.3.8"
"@vue/shared": "workspace:*",
"@vue/compiler-core": "workspace:*"
}
}

View File

@ -33,11 +33,11 @@
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-sfc#readme",
"dependencies": {
"@babel/parser": "^7.23.3",
"@vue/compiler-core": "3.3.8",
"@vue/compiler-dom": "3.3.8",
"@vue/compiler-ssr": "3.3.8",
"@vue/reactivity-transform": "3.3.8",
"@vue/shared": "3.3.8",
"@vue/compiler-core": "workspace:*",
"@vue/compiler-dom": "workspace:*",
"@vue/compiler-ssr": "workspace:*",
"@vue/reactivity-transform": "workspace:*",
"@vue/shared": "workspace:*",
"estree-walker": "^2.0.2",
"magic-string": "^0.30.5",
"postcss": "^8.4.31",

View File

@ -28,7 +28,7 @@
},
"homepage": "https://github.com/vuejs/core/tree/main/packages/compiler-ssr#readme",
"dependencies": {
"@vue/shared": "3.3.8",
"@vue/compiler-dom": "3.3.8"
"@vue/shared": "workspace:*",
"@vue/compiler-dom": "workspace:*"
}
}

View File

@ -29,8 +29,8 @@
"homepage": "https://github.com/vuejs/core/tree/dev/packages/reactivity-transform#readme",
"dependencies": {
"@babel/parser": "^7.23.3",
"@vue/compiler-core": "3.3.8",
"@vue/shared": "3.3.8",
"@vue/compiler-core": "workspace:*",
"@vue/shared": "workspace:*",
"estree-walker": "^2.0.2",
"magic-string": "^0.30.5"
},

View File

@ -36,6 +36,6 @@
},
"homepage": "https://github.com/vuejs/core/tree/main/packages/reactivity#readme",
"dependencies": {
"@vue/shared": "3.3.8"
"@vue/shared": "workspace:*"
}
}

View File

@ -32,7 +32,7 @@
},
"homepage": "https://github.com/vuejs/core/tree/main/packages/runtime-core#readme",
"dependencies": {
"@vue/shared": "3.3.8",
"@vue/reactivity": "3.3.8"
"@vue/shared": "workspace:*",
"@vue/reactivity": "workspace:*"
}
}

View File

@ -35,8 +35,8 @@
},
"homepage": "https://github.com/vuejs/core/tree/main/packages/runtime-dom#readme",
"dependencies": {
"@vue/shared": "3.3.8",
"@vue/runtime-core": "3.3.8",
"@vue/shared": "workspace:*",
"@vue/runtime-core": "workspace:*",
"csstype": "^3.1.2"
}
}

View File

@ -25,7 +25,7 @@
},
"homepage": "https://github.com/vuejs/core/tree/main/packages/runtime-test#readme",
"dependencies": {
"@vue/shared": "3.3.8",
"@vue/runtime-core": "3.3.8"
"@vue/shared": "workspace:*",
"@vue/runtime-core": "workspace:*"
}
}

View File

@ -32,10 +32,10 @@
},
"homepage": "https://github.com/vuejs/core/tree/main/packages/server-renderer#readme",
"peerDependencies": {
"vue": "3.3.8"
"vue": "workspace:*"
},
"dependencies": {
"@vue/shared": "3.3.8",
"@vue/compiler-ssr": "3.3.8"
"@vue/shared": "workspace:*",
"@vue/compiler-ssr": "workspace:*"
}
}

View File

@ -43,6 +43,6 @@
"source-map-js": "^1.0.2"
},
"peerDependencies": {
"vue": "3.3.8"
"vue": "workspace:*"
}
}

View File

@ -96,11 +96,11 @@
},
"homepage": "https://github.com/vuejs/core/tree/main/packages/vue#readme",
"dependencies": {
"@vue/shared": "3.3.8",
"@vue/compiler-dom": "3.3.8",
"@vue/runtime-dom": "3.3.8",
"@vue/compiler-sfc": "3.3.8",
"@vue/server-renderer": "3.3.8"
"@vue/shared": "workspace:*",
"@vue/compiler-dom": "workspace:*",
"@vue/runtime-dom": "workspace:*",
"@vue/compiler-sfc": "workspace:*",
"@vue/server-renderer": "workspace:*"
},
"peerDependencies": {
"typescript": "*"

View File

@ -162,7 +162,7 @@ importers:
specifier: ^7.23.3
version: 7.23.3
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
estree-walker:
specifier: ^2.0.2
@ -178,10 +178,10 @@ importers:
packages/compiler-dom:
dependencies:
'@vue/compiler-core':
specifier: 3.3.8
specifier: workspace:*
version: link:../compiler-core
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
packages/compiler-sfc:
@ -190,19 +190,19 @@ importers:
specifier: ^7.23.3
version: 7.23.3
'@vue/compiler-core':
specifier: 3.3.8
specifier: workspace:*
version: link:../compiler-core
'@vue/compiler-dom':
specifier: 3.3.8
specifier: workspace:*
version: link:../compiler-dom
'@vue/compiler-ssr':
specifier: 3.3.8
specifier: workspace:*
version: link:../compiler-ssr
'@vue/reactivity-transform':
specifier: 3.3.8
specifier: workspace:*
version: link:../reactivity-transform
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
estree-walker:
specifier: ^2.0.2
@ -251,10 +251,10 @@ importers:
packages/compiler-ssr:
dependencies:
'@vue/compiler-dom':
specifier: 3.3.8
specifier: workspace:*
version: link:../compiler-dom
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
packages/dts-built-test:
@ -281,7 +281,7 @@ importers:
packages/reactivity:
dependencies:
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
packages/reactivity-transform:
@ -290,10 +290,10 @@ importers:
specifier: ^7.23.3
version: 7.23.3
'@vue/compiler-core':
specifier: 3.3.8
specifier: workspace:*
version: link:../compiler-core
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
estree-walker:
specifier: ^2.0.2
@ -312,19 +312,19 @@ importers:
packages/runtime-core:
dependencies:
'@vue/reactivity':
specifier: 3.3.8
specifier: workspace:*
version: link:../reactivity
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
packages/runtime-dom:
dependencies:
'@vue/runtime-core':
specifier: 3.3.8
specifier: workspace:*
version: link:../runtime-core
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
csstype:
specifier: ^3.1.2
@ -333,22 +333,22 @@ importers:
packages/runtime-test:
dependencies:
'@vue/runtime-core':
specifier: 3.3.8
specifier: workspace:*
version: link:../runtime-core
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
packages/server-renderer:
dependencies:
'@vue/compiler-ssr':
specifier: 3.3.8
specifier: workspace:*
version: link:../compiler-ssr
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
vue:
specifier: 3.3.8
specifier: workspace:*
version: link:../vue
packages/sfc-playground:
@ -387,19 +387,19 @@ importers:
packages/vue:
dependencies:
'@vue/compiler-dom':
specifier: 3.3.8
specifier: workspace:*
version: link:../compiler-dom
'@vue/compiler-sfc':
specifier: 3.3.8
specifier: workspace:*
version: link:../compiler-sfc
'@vue/runtime-dom':
specifier: 3.3.8
specifier: workspace:*
version: link:../runtime-dom
'@vue/server-renderer':
specifier: 3.3.8
specifier: workspace:*
version: link:../server-renderer
'@vue/shared':
specifier: 3.3.8
specifier: workspace:*
version: link:../shared
typescript:
specifier: '*'
@ -417,7 +417,7 @@ importers:
specifier: ^1.0.2
version: 1.0.2
vue:
specifier: 3.3.8
specifier: workspace:*
version: link:../vue
packages:

View File

@ -325,10 +325,22 @@ async function isInSyncWithRemote() {
`https://api.github.com/repos/vuejs/core/commits/${branch}?per_page=1`
)
const data = await res.json()
return data.sha === sha
if (data.sha === sha) {
return true
} else {
// @ts-ignore
const { yes } = await prompt({
type: 'confirm',
name: 'yes',
message: pico.red(
`Local HEAD is not up-to-date with remote. Are you sure you want to continue?`
)
})
return yes
}
} catch (e) {
console.error(
'Failed to check whether local HEAD is up-to-date with remote.'
pico.red('Failed to check whether local HEAD is up-to-date with remote.')
)
return false
}
@ -348,8 +360,10 @@ function updatePackage(pkgRoot, version, getNewPackageName) {
const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf-8'))
pkg.name = getNewPackageName(pkg.name)
pkg.version = version
updateDeps(pkg, 'dependencies', version, getNewPackageName)
updateDeps(pkg, 'peerDependencies', version, getNewPackageName)
if (isCanary) {
updateDeps(pkg, 'dependencies', version, getNewPackageName)
updateDeps(pkg, 'peerDependencies', version, getNewPackageName)
}
fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + '\n')
}
@ -357,9 +371,6 @@ function updateDeps(pkg, depType, version, getNewPackageName) {
const deps = pkg[depType]
if (!deps) return
Object.keys(deps).forEach(dep => {
if (deps[dep] === 'workspace:*') {
return
}
if (isCorePackage(dep)) {
const newName = getNewPackageName(dep)
const newVersion = newName === dep ? version : `npm:${newName}@${version}`
@ -395,6 +406,8 @@ async function publishPackage(pkgName, version) {
step(`Publishing ${pkgName}...`)
try {
// Don't change the package manager here as we rely on pnpm to handle
// workspace:* deps
await run(
'pnpm',
[