diff options
author | David Ostrovsky <david@ostrovsky.org> | 2020-11-21 09:30:20 +0100 |
---|---|---|
committer | Thomas Dräbing <thomas.draebing@sap.com> | 2022-03-17 10:51:50 +0000 |
commit | db0d286414b04c9301a6d01e6ff13a3c7238a7cf (patch) | |
tree | 13f4d8bd9fbd33d2231ad3849aafece0dc600e39 | |
parent | 8ea9fec379c61e7ee6cebabb18649d1f9e203fca (diff) |
Bump rules_nodejs to version 3.0.0
Version 3.0.0 fixed some bugs and added new features: [1].
yarn_install and npm_install will now fail if the lockfile is
out-of-date, rather than update it. This assumes that the tooling to
manually update the lockfile is used.
yarn_install now passes --frozen_lockfile by default, but it can use
yarn_install(frozen_lockfile = False) to go back to the old behavior.
New @bazel/typescript module is stricter now and added third party
strictness checks to the typescript compiler.
The new check is flagging this code as invalid:
tools/node_tools/node_modules_licenses/installed-node-modules-map.ts:75:25 - error TS21231: [tsetse] type assert `JSON.parse() as SomeExplicitType` for type & optimization safety.
See http://tsetse.info/must-type-assert-json-parse.
const version = JSON.parse(fs.readFileSync(packageJsonFile, {encoding: 'utf-8'}))["version"];
Disable this check: must-type-assert-json-parse, as fixing it is
outside of the scope of this change.
[1] https://github.com/bazelbuild/rules_nodejs/releases/tag/3.0.0
Release-Notes: skip
Bug: Issue 15771
Change-Id: I6835e29a00080ca90b649663361e261ad6ef0f8b
-rw-r--r-- | WORKSPACE | 9 | ||||
-rw-r--r-- | package.json | 7 | ||||
-rw-r--r-- | polygerrit-ui/README.md | 8 | ||||
-rw-r--r-- | tools/node_tools/node_modules_licenses/tsconfig.json | 8 | ||||
-rw-r--r-- | tools/node_tools/package.json | 6 | ||||
-rw-r--r-- | tools/node_tools/yarn.lock | 30 | ||||
-rw-r--r-- | yarn.lock | 42 |
7 files changed, 78 insertions, 32 deletions
@@ -57,8 +57,8 @@ protobuf_deps() http_archive( name = "build_bazel_rules_nodejs", - sha256 = "5bf77cc2d13ddf9124f4c1453dd96063774d755d4fc75d922471540d1c9a8ea8", - urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/2.0.0/rules_nodejs-2.0.0.tar.gz"], + sha256 = "84b1d11b1f3bda68c24d992dc6e830bca9db8fa12276f2ca7fcb7761c893976b", + urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/3.0.0-rc.1/rules_nodejs-3.0.0-rc.1.tar.gz"], ) # Golang support for PolyGerrit local dev server. @@ -935,6 +935,7 @@ load("@build_bazel_rules_nodejs//:index.bzl", "yarn_install") yarn_install( name = "npm", + frozen_lockfile = False, package_json = "//:package.json", yarn_lock = "//:yarn.lock", ) @@ -942,18 +943,21 @@ yarn_install( yarn_install( name = "ui_npm", args = ["--prod"], + frozen_lockfile = False, package_json = "//:polygerrit-ui/app/package.json", yarn_lock = "//:polygerrit-ui/app/yarn.lock", ) yarn_install( name = "ui_dev_npm", + frozen_lockfile = False, package_json = "//:polygerrit-ui/package.json", yarn_lock = "//:polygerrit-ui/yarn.lock", ) yarn_install( name = "tools_npm", + frozen_lockfile = False, package_json = "//:tools/node_tools/package.json", yarn_lock = "//:tools/node_tools/yarn.lock", ) @@ -961,6 +965,7 @@ yarn_install( yarn_install( name = "plugins_npm", args = ["--prod"], + frozen_lockfile = False, package_json = "//:plugins/package.json", yarn_lock = "//:plugins/yarn.lock", ) diff --git a/package.json b/package.json index 70f290b3fc..be73d16d10 100644 --- a/package.json +++ b/package.json @@ -4,9 +4,9 @@ "description": "Gerrit Code Review", "dependencies": {}, "devDependencies": { - "@bazel/rollup": "^2.0.0", - "@bazel/terser": "^2.0.0", - "@bazel/typescript": "^2.0.0", + "@bazel/rollup": "^3.0.0-rc.1", + "@bazel/terser": "^3.0.0-rc.1", + "@bazel/typescript": "^3.0.0-rc.1", "eslint": "^6.6.0", "eslint-config-google": "^0.13.0", "eslint-plugin-html": "^6.0.0", @@ -16,6 +16,7 @@ "gts": "^2.0.2", "polymer-cli": "^1.9.11", "prettier": "2.0.5", + "rollup": "^2.3.4", "terser": "^4.8.0", "typescript": "3.9.5" }, diff --git a/polygerrit-ui/README.md b/polygerrit-ui/README.md index 2266ba0142..41ee468d6c 100644 --- a/polygerrit-ui/README.md +++ b/polygerrit-ui/README.md @@ -74,6 +74,14 @@ bazel fetch @tools_npm//:node_modules More information for installing and using nodejs rules can be found here https://bazelbuild.github.io/rules_nodejs/install.html +### Upgrade to @bazel-scoped packages + +It might be necessary to run this command to upgrade to major `rules_nodejs` release: + +```sh +yarn remove @bazel/... +``` + ## Setup typescript support in the IDE Modern IDE should automatically handle typescript settings from the diff --git a/tools/node_tools/node_modules_licenses/tsconfig.json b/tools/node_tools/node_modules_licenses/tsconfig.json index 2046c39403..cb7bb602a5 100644 --- a/tools/node_tools/node_modules_licenses/tsconfig.json +++ b/tools/node_tools/node_modules_licenses/tsconfig.json @@ -1,5 +1,13 @@ { "compilerOptions": { + "plugins": [ + { + "name": "@bazel/tsetse", + "disabledRules": [ + "must-type-assert-json-parse" + ] + } + ], "target": "es6", "module": "commonjs", "allowSyntheticDefaultImports": true, diff --git a/tools/node_tools/package.json b/tools/node_tools/package.json index 10308775d7..81448e9ab6 100644 --- a/tools/node_tools/package.json +++ b/tools/node_tools/package.json @@ -3,8 +3,8 @@ "description": "Gerrit Build Tools", "browser": false, "dependencies": { - "@bazel/rollup": "^2.0.0", - "@bazel/typescript": "^2.0.0", + "@bazel/rollup": "^3.0.0-rc.1", + "@bazel/typescript": "^3.0.0-rc.1", "@types/node": "^10.17.12", "@types/parse5": "^4.0.0", "@types/parse5-html-rewriting-stream": "^5.1.2", @@ -13,7 +13,7 @@ "parse5-html-rewriting-stream": "^5.1.1", "polymer-bundler": "^4.0.10", "polymer-cli": "^1.9.11", - "rollup": "^1.27.5", + "rollup": "^2.3.4", "rollup-plugin-node-resolve": "^5.2.0", "rollup-plugin-terser": "^5.1.3", "typescript": "3.9.5" diff --git a/tools/node_tools/yarn.lock b/tools/node_tools/yarn.lock index 993bfe9326..3ac0c20cd4 100644 --- a/tools/node_tools/yarn.lock +++ b/tools/node_tools/yarn.lock @@ -492,15 +492,15 @@ lodash "^4.17.13" to-fast-properties "^2.0.0" -"@bazel/rollup@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@bazel/rollup/-/rollup-2.0.0.tgz#1980cb3f6922227659260bfdca99c457889a5bc1" - integrity sha512-mifUfCZbD1RIhfowh4N8E4881ag3FChz7F4z35wxMOP52g1q3+6Bvh5wv9iysFQopxGmS5jNEj3Dq/CWtSoOnw== +"@bazel/rollup@^3.0.0-rc.1": + version "3.0.0-rc.1" + resolved "https://registry.yarnpkg.com/@bazel/rollup/-/rollup-3.0.0-rc.1.tgz#153fb7ca556dfb0397aa3a86cbef71bcefb00733" + integrity sha512-O2WGfDw17aiQfUF6t5aL1kbVGeR6BnCImmtCOoFf1I8/Nw0dx+iE9x2qfqPyvSivZRuL2EBTI+xUcti42bpWgA== -"@bazel/typescript@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-2.0.0.tgz#2ff5615f09c733cc681ba2ada92b11c356b694cd" - integrity sha512-5FPkxULWIjAKLG5J1XvpXpY1/4IK39dAoWA/Hhg+16gXTES32fT8w42k96pb6BTaNnyBuYgIHBpELEAJ40OOAQ== +"@bazel/typescript@^3.0.0-rc.1": + version "3.0.0-rc.1" + resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-3.0.0-rc.1.tgz#4a80682124475db63abc97b7da358caaadbd3077" + integrity sha512-KaGaCEbXjCKaRuwH/hLjW7aBuNyU8p/9yUe4KlP4KKoRqHAmjYISbUOw7VAksOW6BxXHgknOcZYaVF6PzE4CgQ== dependencies: protobufjs "6.8.8" semver "5.6.0" @@ -3732,6 +3732,11 @@ fsevents@^1.0.0: bindings "^1.5.0" nan "^2.12.1" +fsevents@~2.1.2: + version "2.1.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" + integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== + function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -6827,7 +6832,7 @@ rollup-pluginutils@^2.8.1, rollup-pluginutils@^2.8.2: dependencies: estree-walker "^0.6.1" -rollup@^1.27.5, rollup@^1.3.0: +rollup@^1.3.0: version "1.30.0" resolved "https://registry.yarnpkg.com/rollup/-/rollup-1.30.0.tgz#ae9c893804e8eaa8f8f74b0aaf7e7fb4374a9d01" integrity sha512-ANcmfaSQwpcJtZUTA0ZMNBtFcQ1B4A5FldlNqEK0WdWm9sHSKu93ffa2KV1ux8HA/yKIV/ZARV28m7rNdXJgEw== @@ -6836,6 +6841,13 @@ rollup@^1.27.5, rollup@^1.3.0: "@types/node" "*" acorn "^7.1.0" +rollup@^2.3.4: + version "2.35.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.35.1.tgz#e6bc8d10893556a638066f89e8c97f422d03968c" + integrity sha512-q5KxEyWpprAIcainhVy6HfRttD9kutQpHbeqDTWnqAFNJotiojetK6uqmcydNMymBEtC4I8bCYR+J3mTMqeaUA== + optionalDependencies: + fsevents "~2.1.2" + run-async@^2.0.0, run-async@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" @@ -485,20 +485,20 @@ lodash "^4.17.11" to-fast-properties "^2.0.0" -"@bazel/rollup@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@bazel/rollup/-/rollup-2.0.0.tgz#1980cb3f6922227659260bfdca99c457889a5bc1" - integrity sha512-mifUfCZbD1RIhfowh4N8E4881ag3FChz7F4z35wxMOP52g1q3+6Bvh5wv9iysFQopxGmS5jNEj3Dq/CWtSoOnw== +"@bazel/rollup@^3.0.0-rc.1": + version "3.0.0-rc.1" + resolved "https://registry.yarnpkg.com/@bazel/rollup/-/rollup-3.0.0-rc.1.tgz#153fb7ca556dfb0397aa3a86cbef71bcefb00733" + integrity sha512-O2WGfDw17aiQfUF6t5aL1kbVGeR6BnCImmtCOoFf1I8/Nw0dx+iE9x2qfqPyvSivZRuL2EBTI+xUcti42bpWgA== -"@bazel/terser@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@bazel/terser/-/terser-2.0.0.tgz#a841db8aefd7c51c216b34a26bc02a6c93d5e56a" - integrity sha512-6mBYcfzP6pWxycYZ8r4Lz5kgiWZ7n08bVHZBIRExFeqs7Yy92dD92LPeA9FZIzFiX00IuR9Q1Lqy23xH5q7FeQ== +"@bazel/terser@^3.0.0-rc.1": + version "3.0.0-rc.1" + resolved "https://registry.yarnpkg.com/@bazel/terser/-/terser-3.0.0-rc.1.tgz#62398c1702d3eecbc41764c9ef24a6a232abb1b3" + integrity sha512-iaJTYl/oUBqLFG6MFYODwqBWGTshFFdVCClTmpZwdnwnAkcGf7kU1noX2vz3VcwOOHoJseBG/dhluvRmFerJ3g== -"@bazel/typescript@^2.0.0": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-2.0.0.tgz#2ff5615f09c733cc681ba2ada92b11c356b694cd" - integrity sha512-5FPkxULWIjAKLG5J1XvpXpY1/4IK39dAoWA/Hhg+16gXTES32fT8w42k96pb6BTaNnyBuYgIHBpELEAJ40OOAQ== +"@bazel/typescript@^3.0.0-rc.1": + version "3.0.0-rc.1" + resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-3.0.0-rc.1.tgz#4a80682124475db63abc97b7da358caaadbd3077" + integrity sha512-KaGaCEbXjCKaRuwH/hLjW7aBuNyU8p/9yUe4KlP4KKoRqHAmjYISbUOw7VAksOW6BxXHgknOcZYaVF6PzE4CgQ== dependencies: protobufjs "6.8.8" semver "5.6.0" @@ -937,9 +937,9 @@ integrity sha512-rp7La3m845mSESCgsJePNL/JQyhkOJA6G4vcwvVgkDAwHhGdq5GCumxmPjEk1MZf+8p5ZQAUE7tqgQRQTXN7uQ== "@types/node@^10.1.0": - version "10.17.24" - resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.24.tgz#c57511e3a19c4b5e9692bb2995c40a3a52167944" - integrity sha512-5SCfvCxV74kzR3uWgTYiGxrd69TbT1I6+cMx1A5kEly/IVveJBimtAMlXiEyVFn5DvUFewQWxOOiJhlxeQwxgA== + version "10.17.49" + resolved "https://registry.yarnpkg.com/@types/node/-/node-10.17.49.tgz#ecf0b67bab4b84d0ec9b0709db4aac3824a51c4a" + integrity sha512-PGaJNs5IZz5XgzwJvL/1zRfZB7iaJ5BydZ8/Picm+lUNYoNO9iVTQkVy5eUh0dZDrx3rBOIs3GCbCRmMuYyqwg== "@types/node@^4.0.30": version "4.9.3" @@ -4257,6 +4257,11 @@ fsevents@^1.0.0: nan "^2.12.1" node-pre-gyp "^0.12.0" +fsevents@~2.1.2: + version "2.1.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.1.3.tgz#fb738703ae8d2f9fe900c33836ddebee8b97f23e" + integrity sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ== + function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -8122,6 +8127,13 @@ rollup@^1.3.0: "@types/node" "^12.0.10" acorn "^6.1.1" +rollup@^2.3.4: + version "2.35.1" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-2.35.1.tgz#e6bc8d10893556a638066f89e8c97f422d03968c" + integrity sha512-q5KxEyWpprAIcainhVy6HfRttD9kutQpHbeqDTWnqAFNJotiojetK6uqmcydNMymBEtC4I8bCYR+J3mTMqeaUA== + optionalDependencies: + fsevents "~2.1.2" + run-async@^2.0.0, run-async@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.3.0.tgz#0371ab4ae0bdd720d4166d7dfda64ff7a445a6c0" |