fix: #8547, remove old deps during upgrade (#8557)

This commit is contained in:
Peter Jaszkowiak
2020-08-11 12:32:44 -06:00
committed by GitHub
parent 12edd18b46
commit 1d170e0c1c
2 changed files with 41 additions and 2 deletions

View File

@@ -8,6 +8,8 @@ const packageFilePath = path.join(__dirname, '../../package.json');
const packageDefaultFilePath = path.join(__dirname, '../../install/package.json');
const modulesPath = path.join(__dirname, '../../node_modules');
const isPackage = /^nodebb-(plugin|theme|widget|reward)-\w+/;
function updatePackageFile() {
let oldPackageContents = {};
@@ -20,7 +22,15 @@ function updatePackageFile() {
}
const defaultPackageContents = JSON.parse(fs.readFileSync(packageDefaultFilePath, 'utf8'));
const packageContents = { ...oldPackageContents, ...defaultPackageContents, dependencies: { ...oldPackageContents.dependencies, ...defaultPackageContents.dependencies } };
const dependencies = {};
Object.entries(oldPackageContents.dependencies).forEach(([dep, version]) => {
if (isPackage.test(dep)) {
dependencies[dep] = version;
}
});
const packageContents = { ...oldPackageContents, ...defaultPackageContents, dependencies: { ...dependencies, ...defaultPackageContents.dependencies } };
fs.writeFileSync(packageFilePath, JSON.stringify(packageContents, null, 2));
}
@@ -83,7 +93,6 @@ function preserveExtraneousPlugins() {
return;
}
const isPackage = /^nodebb-(plugin|theme|widget|reward)-\w+/;
const packages = fs.readdirSync(modulesPath).filter(function (pkgName) {
return isPackage.test(pkgName);
});