Skip to content

Commit e2f00d2

Browse files
authored
fix(ui): fix "update all plugins/dependencies" utility (#5395)
1 parent c64afc3 commit e2f00d2

File tree

1 file changed

+18
-12
lines changed

1 file changed

+18
-12
lines changed

packages/@vue/cli/lib/util/ProjectPackageManager.js

+18-12
Original file line numberDiff line numberDiff line change
@@ -290,20 +290,26 @@ class PackageManager {
290290
}
291291

292292
async upgrade (packageName) {
293-
const realname = stripVersion(packageName)
294-
if (
295-
isTestOrDebug &&
296-
(packageName === '@vue/cli-service' || isOfficialPlugin(resolvePluginId(realname)))
297-
) {
298-
// link packages in current repo for test
299-
const src = path.resolve(__dirname, `../../../../${realname}`)
300-
const dest = path.join(this.context, 'node_modules', realname)
301-
await fs.remove(dest)
302-
await fs.symlink(src, dest, 'dir')
303-
return
293+
// manage multiple packages separated by spaces
294+
const packageNamesArray = []
295+
296+
for (const packname of packageName.split(' ')) {
297+
const realname = stripVersion(packname)
298+
if (
299+
isTestOrDebug &&
300+
(packname === '@vue/cli-service' || isOfficialPlugin(resolvePluginId(realname)))
301+
) {
302+
// link packages in current repo for test
303+
const src = path.resolve(__dirname, `../../../../${realname}`)
304+
const dest = path.join(this.context, 'node_modules', realname)
305+
await fs.remove(dest)
306+
await fs.symlink(src, dest, 'dir')
307+
} else {
308+
packageNamesArray.push(packname)
309+
}
304310
}
305311

306-
return await this.runCommand('add', [packageName])
312+
if (packageNamesArray.length) return await this.runCommand('add', packageNamesArray)
307313
}
308314
}
309315

0 commit comments

Comments
 (0)