From f5182471e90aefab12c6b3b75e3c1e39d83f5c9a Mon Sep 17 00:00:00 2001 From: Orkun Tokdemir Date: Tue, 27 Aug 2024 18:01:25 +0200 Subject: [PATCH] ci-scripts: Speed up commands with concurrent execution * Add both sync and async versions of the commands * `_sync` commands represent the old behavior * Update `package.json` Change-Id: I5fb85b0f2c2e43d01859c74e238cbfbf3f204d21 --- package-lock.json | 239 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 32 ++++--- 2 files changed, 260 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index b079caa..cdf6779 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,6 +17,7 @@ "@typescript-eslint/eslint-plugin": "^6.7.3", "@typescript-eslint/parser": "^6.7.3", "@vscode/vsce": "^2.32.0", + "concurrently": "^8.2.2", "eslint": "^8.50.0", "license-checker": "^25.0.1", "prettier": "^3.0.3", @@ -232,6 +233,18 @@ "node": ">=16" } }, + "node_modules/@babel/runtime": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.6.tgz", + "integrity": "sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@cspotcode/source-map-support": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", @@ -1318,6 +1331,20 @@ "dev": true, "optional": true }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/cockatiel": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/cockatiel/-/cockatiel-3.2.1.tgz", @@ -1371,6 +1398,48 @@ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true }, + "node_modules/concurrently": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-8.2.2.tgz", + "integrity": "sha512-1dP4gpXFhei8IOtlXRE/T/4H88ElHgTiUzh71YUmtjTEHMSRS2Z/fgOxHSxxusGHogsRfxNq1vyAwxSC+EVyDg==", + "dev": true, + "dependencies": { + "chalk": "^4.1.2", + "date-fns": "^2.30.0", + "lodash": "^4.17.21", + "rxjs": "^7.8.1", + "shell-quote": "^1.8.1", + "spawn-command": "0.0.2", + "supports-color": "^8.1.1", + "tree-kill": "^1.2.2", + "yargs": "^17.7.2" + }, + "bin": { + "conc": "dist/bin/concurrently.js", + "concurrently": "dist/bin/concurrently.js" + }, + "engines": { + "node": "^14.13.0 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/open-cli-tools/concurrently?sponsor=1" + } + }, + "node_modules/concurrently/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, "node_modules/create-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", @@ -1419,6 +1488,22 @@ "url": "https://github.com/sponsors/fb55" } }, + "node_modules/date-fns": { + "version": "2.30.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-2.30.0.tgz", + "integrity": "sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.21.0" + }, + "engines": { + "node": ">=0.11" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/date-fns" + } + }, "node_modules/debug": { "version": "4.3.6", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz", @@ -1630,6 +1715,12 @@ "safe-buffer": "^5.0.1" } }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, "node_modules/encoding-sniffer": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.0.tgz", @@ -1686,6 +1777,15 @@ "node": ">= 0.4" } }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -2041,6 +2141,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, "node_modules/get-intrinsic": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", @@ -2419,6 +2528,15 @@ "node": ">=0.10.0" } }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -2750,6 +2868,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, "node_modules/lodash.includes": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", @@ -3508,6 +3632,21 @@ "once": "^1.3.0" } }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "dev": true + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", @@ -3583,6 +3722,15 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dev": true, + "dependencies": { + "tslib": "^2.1.0" + } + }, "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -3665,6 +3813,15 @@ "node": ">=8" } }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/side-channel": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", @@ -3748,6 +3905,12 @@ "node": "*" } }, + "node_modules/spawn-command": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/spawn-command/-/spawn-command-0.0.2.tgz", + "integrity": "sha512-zC8zGoGkmc8J9ndvml8Xksr1Amk9qBujgbF0JAIWO7kXr43w0h/0GJNM/Vustixu+YE8N/MTrQ7N31FvHUACxQ==", + "dev": true + }, "node_modules/spdx-compare": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/spdx-compare/-/spdx-compare-1.0.0.tgz", @@ -3828,6 +3991,20 @@ "safe-buffer": "~5.2.0" } }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -3933,6 +4110,15 @@ "node": ">=8.0" } }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "dev": true, + "bin": { + "tree-kill": "cli.js" + } + }, "node_modules/treeify": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", @@ -4198,6 +4384,23 @@ "node": ">=0.10.0" } }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", @@ -4226,12 +4429,48 @@ "node": ">=4.0" } }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "engines": { + "node": ">=10" + } + }, "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "engines": { + "node": ">=12" + } + }, "node_modules/yauzl": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", diff --git a/package.json b/package.json index 3624c3c..c02e6c0 100644 --- a/package.json +++ b/package.json @@ -7,51 +7,59 @@ "out" ], "scripts": { - "all_dev": "npm run ci:qt-lib && npm run compile:qt-lib && npm run ci:all && npm run pretest:all && npm run package:all && npm run install-ext:all", - "all": "npm run ci:qt-lib && npm run compile:qt-lib && npm run ci:all && npm run ci-lint:all && npm run package:all && npm run install-ext:all", "pretest": "npm run prettierWrite && eslint .", + "all_dev": "npm run ci:qt-lib && npm run compile:qt-lib && npm run ci:all && npm run pretest:all && npm run package:all && npm run install-ext:all_sync", + "all": "npm run ci:qt-lib && npm run compile:qt-lib && npm run ci:all && npm run ci-lint:all && npm run package:all && npm run install-ext:all_sync", + "all_sync": "npm run ci:qt-lib && npm run compile:qt-lib && npm run ci:all_sync && npm run ci-lint:all_sync && npm run package:all_sync && npm run install-ext:all_sync", "pretest:qt-core": "cd qt-core && npm run pretest", "pretest:qt-qml": "cd qt-qml && npm run pretest", "pretest:qt-cpp": "cd qt-cpp && npm run pretest", "pretest:qt-ui": "cd qt-ui && npm run pretest", "pretest:qt-lib": "cd qt-lib && npm run pretest", - "pretest:all": "npm run pretest && npm run pretest:qt-lib && npm run pretest:qt-core && npm run pretest:qt-cpp && npm run pretest:qt-ui && npm run pretest:qt-qml", + "pretest:all": "concurrently \"npm run pretest\" \"npm run pretest:qt-lib\" \"npm run pretest:qt-core\" \"npm run pretest:qt-cpp\" \"npm run pretest:qt-ui\" \"npm run pretest:qt-qml\"", + "pretest:all_sync": "npm run pretest && npm run pretest:qt-lib && npm run pretest:qt-core && npm run pretest:qt-cpp && npm run pretest:qt-ui && npm run pretest:qt-qml", "ci-lint:qt-core": "ts-node ./scripts/ci_lint.ts --dir=\"qt-core\" --exclude_licenses=\"qt-core\"", "ci-lint:qt-qml": "ts-node ./scripts/ci_lint.ts --dir=\"qt-qml\" --exclude_licenses=\"qt-qml\"", "ci-lint:qt-cpp": "ts-node ./scripts/ci_lint.ts --dir=\"qt-cpp\" --exclude_licenses=\"qt-cpp\"", "ci-lint:qt-ui": "ts-node ./scripts/ci_lint.ts --dir=\"qt-ui\" --exclude_licenses=\"qt-ui\"", "ci-lint:qt-lib": "npm run checkStyle -- --dir=\"qt-lib\" && npm run eslint -- --dir=\"qt-lib\" && npm run checkPackage -- --dir=\"qt-lib\"", - "ci-lint:all": "npm run ci-lint && npm run ci-lint:qt-core && npm run ci-lint:qt-cpp && npm run ci-lint:qt-ui && npm run ci-lint:qt-qml && npm run ci-lint:qt-lib && npm run checkChangelog:all_ext_pack", + "ci-lint:all": "concurrently \"npm run ci-lint\" \"npm run ci-lint:qt-lib\" \"npm run ci-lint:qt-core\" \"npm run ci-lint:qt-cpp\" \"npm run ci-lint:qt-ui\" \"npm run ci-lint:qt-qml\" \"npm run checkChangelog:all_ext_pack\"", + "ci-lint:all_sync": "npm run ci-lint && npm run ci-lint:qt-lib && npm run ci-lint:qt-core && npm run ci-lint:qt-cpp && npm run ci-lint:qt-ui && npm run ci-lint:qt-qml ", "ci-lint": "npm run prettierCheck && eslint .", "install-ext:qt-core": "ts-node ./scripts/install-ext.ts --dir=\"qt-core/out\" --name=\"qt-core\"", "install-ext:qt-qml": "ts-node ./scripts/install-ext.ts --dir=\"qt-qml/out\" --name=\"qt-qml\"", "install-ext:qt-cpp": "ts-node ./scripts/install-ext.ts --dir=\"qt-cpp/out\" --name=\"qt-cpp\"", "install-ext:qt-ui": "ts-node ./scripts/install-ext.ts --dir=\"qt-ui/out\" --name=\"qt-ui\"", - "install-ext:all": "npm run install-ext:qt-core && npm run install-ext:qt-cpp && npm run install-ext:qt-ui && npm run install-ext:qt-qml", + "install-ext:all": "concurrently \"npm run install-ext:qt-core\" \"npm run install-ext:qt-cpp\" \"npm run install-ext:qt-ui\" \"npm run install-ext:qt-qml\"", + "install-ext:all_sync": "npm run install-ext:qt-core && npm run install-ext:qt-cpp && npm run install-ext:qt-ui && npm run install-ext:qt-qml", "install:qt-core": "cd qt-core && npm install", "install:qt-qml": "cd qt-qml && npm install", "install:qt-cpp": "cd qt-cpp && npm install", "install:qt-ui": "cd qt-ui && npm install", "install:qt-lib": "cd qt-lib && npm install", - "install:all": "npm install && npm run install:qt-core && npm run install:qt-cpp && npm run install:qt-ui && npm run install:qt-qml && npm run install:qt-lib", + "install:all": "concurrently \"npm install\" \"npm run install:qt-lib\" \"npm run install:qt-core\" \"npm run install:qt-cpp\" \"npm run install:qt-ui\" \"npm run install:qt-qml\"", + "install:all_sync": "npm install && npm run install:qt-lib && npm run install:qt-core && npm run install:qt-cpp && npm run install:qt-ui && npm run install:qt-qml", "eslint": "ts-node ./scripts/eslint.ts", "ci:qt-core": "cd qt-core && npm ci", "ci:qt-qml": "cd qt-qml && npm ci", "ci:qt-cpp": "cd qt-cpp && npm ci", "ci:qt-ui": "cd qt-ui && npm ci", "ci:qt-lib": "cd qt-lib && npm ci", - "ci:all": "npm ci && npm run ci:qt-core && npm run ci:qt-cpp && npm run ci:qt-ui && npm run ci:qt-qml", + "ci:all": "concurrently \"npm ci\" \"npm run ci:qt-lib\" \"npm run ci:qt-core\" \"npm run ci:qt-cpp\" \"npm run ci:qt-ui\" \"npm run ci:qt-qml\"", + "ci:all_sync": "npm ci && npm run ci:qt-lib && npm run ci:qt-core && npm run ci:qt-cpp && npm run ci:qt-ui && npm run ci:qt-qml", "package:qt-core": "cd qt-core && npm run package", "package:qt-qml": "cd qt-qml && npm run package", "package:qt-cpp": "cd qt-cpp && npm run package", "package:qt-ui": "cd qt-ui && npm run package", - "package:all": "npm run package:qt-core && npm run package:qt-cpp && npm run package:qt-ui && npm run package:qt-qml", + "package:all": "concurrently \"npm run package:qt-core\" \"npm run package:qt-cpp\" \"npm run package:qt-ui\" \"npm run package:qt-qml\"", + "package:all_sync": "npm run package:qt-core && npm run package:qt-cpp && npm run package:qt-ui && npm run package:qt-qml", "compile:qt-core": "cd qt-core && npm run compile", "compile:qt-qml": "cd qt-qml && npm run compile", "compile:qt-cpp": "cd qt-cpp && npm run compile", "compile:qt-ui": "cd qt-ui && npm run compile", "compile:qt-lib": "cd qt-lib && npm run compile", - "compile:all": "npm run compile:qt-core && npm run compile:qt-cpp && npm run compile:qt-ui && npm run compile:qt-qml && npm run compile:qt-lib", + "compile:all": "concurrently \"npm run compile:qt-core\" \"npm run compile:qt-cpp\" \"npm run compile:qt-ui\" \"npm run compile:qt-qml\"", + "compile:all_sync": "npm run compile:qt-core && npm run compile:qt-cpp && npm run compile:qt-ui && npm run compile:qt-qml && npm run compile:qt-lib", "checkLicenses": "ts-node ./scripts/check_licenses.ts", "checkPackage": "ts-node ./scripts/check_package.ts", "checkStyle": "ts-node ./scripts/check_style.ts", @@ -65,7 +73,6 @@ "generateLicenses:qt-qml": "npm run generateLicenses -- --dir=\"qt-qml\" --exclude=\"qt-qml\" --output=\"qt-qml/ThirdPartyNotices.txt\"", "generateLicenses:qt-cpp": "npm run generateLicenses -- --dir=\"qt-cpp\" --exclude=\"qt-cpp\" --output=\"qt-cpp/ThirdPartyNotices.txt\"", "generateLicenses:qt-ui": "npm run generateLicenses -- --dir=\"qt-ui\" --exclude=\"qt-ui\" --output=\"qt-ui/ThirdPartyNotices.txt\"", - "generateLicenses:all": "npm run generateLicenses:qt-core && npm run generateLicenses:qt-cpp && npm run generateLicenses:qt-ui && npm run generateLicenses:qt-qml", "_prepublish": "git reset --hard && git clean -ffdx && npm ci && npm run ci:qt-lib && npm run compile:qt-lib && npm run ci-lint:qt-lib", "publish:qt-core": "ts-node ./scripts/publish.ts --extension=\"qt-core\"", "publish:qt-qml": "ts-node ./scripts/publish.ts --extension=\"qt-qml\"", @@ -74,6 +81,8 @@ "publish:qt-cpp-pack": "npm run checkChangelog:qt-cpp-pack && cd extension_packs/cpp && npx vsce publish", "publish:qt-wasm-pack": "npm run checkChangelog:qt-wasm-pack && cd extension_packs/wasm && npx vsce publish", "publish:qt-all-pack": "npm run checkChangelog:qt-all-pack && cd extension_packs/qt && npx vsce publish", + "generateLicenses:all": "concurrently \"npm run generateLicenses:qt-core\" \"npm run generateLicenses:qt-cpp\" \"npm run generateLicenses:qt-ui\" \"npm run generateLicenses:qt-qml\"", + "generateLicenses:all_sync": "npm run generateLicenses:qt-core && npm run generateLicenses:qt-cpp && npm run generateLicenses:qt-ui && npm run generateLicenses:qt-qml", "prettierWrite": "npm run prettierBase -- --write \"scripts/**/*.{js,ts,json,mjs,cjs}\" --log-level silent", "prettierCheck": "npm run prettierBase -- --check \"scripts/**/*.{js,ts,json,mjs,cjs}\"", "prettierBase": "prettier --config \"common/.prettierrc\" --ignore-path \"common/.prettierignore\"" @@ -88,7 +97,8 @@ "license-checker": "^25.0.1", "prettier": "^3.0.3", "ts-node": "^10.4.0", - "typescript": "^5.2.2" + "typescript": "^5.2.2", + "concurrently": "^8.2.2" }, "dependencies": { "commander": "^12.1.0",