From 63c64b42b5aa6b5d9d013a521886287e6a9f740a Mon Sep 17 00:00:00 2001 From: Niklas Mischkulnig <4586894+mischnic@users.noreply.github.com> Date: Wed, 27 Oct 2021 23:51:39 +0200 Subject: [PATCH] Add script to sync engines with core version --- scripts/update-engines.js | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 scripts/update-engines.js diff --git a/scripts/update-engines.js b/scripts/update-engines.js new file mode 100644 index 00000000000..0c3efe3924b --- /dev/null +++ b/scripts/update-engines.js @@ -0,0 +1,25 @@ +const fs = require('fs'); +const path = require('path'); +const exec = require('child_process').execSync; + +let packages = JSON.parse( + exec( + `${path.join(__dirname, '..', 'node_modules', '.bin', 'lerna')} ls --json`, + ), +); +let packageVersions = new Map( + packages.map(pkg => [ + pkg.name, + {version: pkg.version, location: pkg.location}, + ]), +); +let coreVersion = packageVersions.get('@parcel/core').version; + +for (let [, {location}] of packageVersions) { + let pkgPath = path.join(location, 'package.json'); + let pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8')); + if (pkg.engines?.parcel != null) { + pkg.engines.parcel = coreVersion; + fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + '\n'); + } +}