this repo has no description
at v1.2.1 954 B view raw
1// Update dependencies in all packages 2/* eslint-disable no-console */ 3const fs = require("fs"); 4const path = require("path"); 5const child_process = require("child_process"); 6 7const packageToUpdate = process.argv[2]; 8 9function getDeps(packageJSON) { 10 const ret = {}; 11 Object.assign(ret, packageJSON.dependencies || {}); 12 Object.assign(ret, packageJSON.devDependencies || {}); 13 Object.assign(ret, packageJSON.peerDependencies || {}); 14 return ret; 15} 16 17function exec(cmd, dir) { 18 child_process.execSync(cmd, { cwd: dir, stdio: "inherit" }); 19} 20 21for (const package of fs.readdirSync("./packages")) { 22 const packageJSON = JSON.parse( 23 fs.readFileSync(path.join("./packages", package, "package.json"), "utf8") 24 ); 25 26 const deps = getDeps(packageJSON); 27 if (Object.keys(deps).includes(packageToUpdate)) { 28 console.log(`Updating ${packageToUpdate} in ${package}`); 29 exec(`pnpm update ${packageToUpdate}`, path.join("./packages", package)); 30 } 31}