mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-26 16:46:12 +01:00
feat: sort dependencies alphabetically
... when merging from install/package.json /cc @pitaj
This commit is contained in:
@@ -23,14 +23,20 @@ function updatePackageFile() {
|
||||
|
||||
const defaultPackageContents = JSON.parse(fs.readFileSync(packageDefaultFilePath, 'utf8'));
|
||||
|
||||
const dependencies = {};
|
||||
let dependencies = {};
|
||||
Object.entries(oldPackageContents.dependencies || {}).forEach(([dep, version]) => {
|
||||
if (isPackage.test(dep)) {
|
||||
dependencies[dep] = version;
|
||||
}
|
||||
});
|
||||
|
||||
const packageContents = { ...oldPackageContents, ...defaultPackageContents, dependencies: { ...dependencies, ...defaultPackageContents.dependencies } };
|
||||
// Sort dependencies alphabetically
|
||||
dependencies = Object.entries({ ...dependencies, ...defaultPackageContents.dependencies }).sort((a, b) => (a < b ? -1 : 1)).reduce((memo, pkg) => {
|
||||
memo[pkg[0]] = pkg[1];
|
||||
return memo;
|
||||
}, {});
|
||||
|
||||
const packageContents = { ...oldPackageContents, ...defaultPackageContents, dependencies: dependencies };
|
||||
|
||||
fs.writeFileSync(packageFilePath, JSON.stringify(packageContents, null, 2));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user