From 5f0d5e9ccf4d2f1773974479787d02f4ab0dfdeb Mon Sep 17 00:00:00 2001 From: Greg Magolan Date: Wed, 24 Jul 2019 08:52:26 -0700 Subject: [PATCH] build: update to nodejs rules 0.34.0 and bazel 0.28.1 (#31824) nodejs rules 0.34.0 now includes protractor_web_test_suite rule (via new @bazel/protractor rule) so we switch to that location for that rule in this PR so that /packages/bazel/src/protractor can be removed in a future PR this PR also brings in node toolchain support which was released in nodejs rules 0.33.0. this is a prerequisite for RBE for mac & windows users bazel schematics also updated with the same. @bazel/bazel 0.28.1 npm package includes transitive dep on hide-bazel-files so we're able to remove an explicit dep on that as well. PR Close #31824 --- WORKSPACE | 12 +- integration/bazel/WORKSPACE | 9 +- integration/bazel/package.json | 7 +- integration/bazel/test/e2e/BUILD.bazel | 16 +- integration/bazel/test/e2e/on-prepare.ts | 2 +- integration/bazel/yarn.lock | 276 +++++++----------- modules/benchmarks/benchmark_test.bzl | 3 +- .../src/tree/render3/protractor.on_prepare.js | 2 +- modules/benchmarks/start-server.js | 2 +- modules/playground/e2e_test/example_test.bzl | 5 +- modules/playground/e2e_test/start-server.js | 2 +- package.json | 10 +- packages/bazel/package.bzl | 7 +- .../src/builders/files/WORKSPACE.template | 9 +- .../builders/files/e2e/BUILD.bazel.template | 10 +- .../e2e/protractor.on-prepare.js.template | 4 +- packages/bazel/src/schematics/ng-add/index.ts | 8 +- .../bazel/src/schematics/ng-add/index_spec.ts | 3 +- packages/compiler-cli/integrationtest/test.js | 21 +- packages/core/test/strict_types/BUILD.bazel | 2 +- packages/examples/common/BUILD.bazel | 2 +- packages/examples/common/start-server.js | 2 +- packages/examples/core/BUILD.bazel | 2 +- packages/examples/core/start-server.js | 2 +- packages/examples/forms/BUILD.bazel | 2 +- packages/examples/forms/start-server.js | 2 +- .../registration-options/BUILD.bazel | 2 +- .../registration-options/start-server.js | 2 +- packages/examples/upgrade/start-server.js | 2 +- packages/examples/upgrade/upgrade_example.bzl | 2 +- yarn.lock | 95 +++--- 31 files changed, 243 insertions(+), 282 deletions(-) diff --git a/WORKSPACE b/WORKSPACE index ecac00d56e..326ee03c96 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -21,8 +21,8 @@ http_archive( patch_args = ["-p1"], # Patch https://github.com/bazelbuild/rules_nodejs/pull/903 patches = ["//tools:rollup_bundle_commonjs_ignoreGlobal.patch"], - sha256 = "6d4edbf28ff6720aedf5f97f9b9a7679401bf7fca9d14a0fff80f644a99992b4", - urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.32.2/rules_nodejs-0.32.2.tar.gz"], + sha256 = "7c4a690268be97c96f04d505224ec4cb1ae53c2c2b68be495c9bd2634296a5cd", + urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.34.0/rules_nodejs-0.34.0.tar.gz"], ) # Check the bazel version and download npm dependencies @@ -53,7 +53,8 @@ Try running `yarn bazel` instead. # - 0.32.0 yarn_install and npm_install no longer puts build files under symlinked node_modules # - 0.32.1 remove override of @bazel/tsetse & exclude typescript lib declarations in node_module_library transitive_declarations # - 0.32.2 resolves bug in @bazel/hide-bazel-files postinstall step -check_rules_nodejs_version(minimum_version_string = "0.32.2") +# - 0.34.0 introduces protractor rule +check_rules_nodejs_version(minimum_version_string = "0.34.0") # Setup the Node.js toolchain node_repositories( @@ -91,6 +92,11 @@ load("//packages/bazel:package.bzl", "rules_angular_dev_dependencies") rules_angular_dev_dependencies() +# Load protractor dependencies +load("@npm_bazel_protractor//:package.bzl", "npm_bazel_protractor_dependencies") + +npm_bazel_protractor_dependencies() + # Load karma dependencies load("@npm_bazel_karma//:package.bzl", "rules_karma_dependencies") diff --git a/integration/bazel/WORKSPACE b/integration/bazel/WORKSPACE index e315661260..3c91650588 100644 --- a/integration/bazel/WORKSPACE +++ b/integration/bazel/WORKSPACE @@ -8,8 +8,8 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") # Fetch rules_nodejs so we can install our npm dependencies http_archive( name = "build_bazel_rules_nodejs", - sha256 = "6d4edbf28ff6720aedf5f97f9b9a7679401bf7fca9d14a0fff80f644a99992b4", - urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.32.2/rules_nodejs-0.32.2.tar.gz"], + sha256 = "7c4a690268be97c96f04d505224ec4cb1ae53c2c2b68be495c9bd2634296a5cd", + urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.34.0/rules_nodejs-0.34.0.tar.gz"], ) # Fetch sass rules for compiling sass files @@ -62,6 +62,11 @@ load("@npm//:install_bazel_dependencies.bzl", "install_bazel_dependencies") install_bazel_dependencies() +# Load protractor dependencies +load("@npm_bazel_protractor//:package.bzl", "npm_bazel_protractor_dependencies") + +npm_bazel_protractor_dependencies() + # Load karma dependencies load("@npm_bazel_karma//:package.bzl", "rules_karma_dependencies") diff --git a/integration/bazel/package.json b/integration/bazel/package.json index bdae6a981d..8d4e8b184e 100644 --- a/integration/bazel/package.json +++ b/integration/bazel/package.json @@ -23,11 +23,10 @@ "@angular/compiler": "file:../../dist/packages-dist/compiler", "@angular/compiler-cli": "file:../../dist/packages-dist/compiler-cli", "@bazel/bazel": "file:../../node_modules/@bazel/bazel", - "@bazel/hide-bazel-files": "0.32.2", - "@bazel/karma": "0.32.2", - "@bazel/typescript": "0.32.2", + "@bazel/karma": "0.34.0", + "@bazel/protractor": "0.34.0", + "@bazel/typescript": "0.34.0", "@types/jasmine": "2.8.8", - "protractor": "5.1.2", "typescript": "3.4.2" }, "scripts": { diff --git a/integration/bazel/test/e2e/BUILD.bazel b/integration/bazel/test/e2e/BUILD.bazel index 45f82c4af1..933e7fc1b9 100644 --- a/integration/bazel/test/e2e/BUILD.bazel +++ b/integration/bazel/test/e2e/BUILD.bazel @@ -1,5 +1,5 @@ +load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite") load("@npm_bazel_typescript//:index.bzl", "ts_library") -load("@npm_angular_bazel//:index.bzl", "protractor_web_test_suite") ts_library( name = "e2e", @@ -7,7 +7,7 @@ ts_library( srcs = ["app.spec.ts"], tsconfig = ":tsconfig.json", deps = [ - "@npm//@types", + "@npm//@types/jasmine", "@npm//protractor", ], ) @@ -18,8 +18,8 @@ ts_library( srcs = ["on-prepare.ts"], tsconfig = ":tsconfig.json", deps = [ - "@npm//@angular/bazel", - "@npm//@types", + "@npm//@bazel/protractor", + "@npm//@types/node", "@npm//protractor", ], ) @@ -27,10 +27,6 @@ ts_library( protractor_web_test_suite( name = "devserver_test", configuration = "//:protractor.conf.js", - data = [ - "@npm//@angular/bazel", - "@npm//protractor", - ], on_prepare = ":ts_on_prepare", server = "//src:devserver", deps = [":e2e"], @@ -39,10 +35,6 @@ protractor_web_test_suite( protractor_web_test_suite( name = "prodserver_test", configuration = "//:protractor.conf.js", - data = [ - "@npm//@angular/bazel", - "@npm//protractor", - ], on_prepare = ":ts_on_prepare", server = "//src:prodserver", deps = [":e2e"], diff --git a/integration/bazel/test/e2e/on-prepare.ts b/integration/bazel/test/e2e/on-prepare.ts index c18d57c81f..973a41ed5e 100644 --- a/integration/bazel/test/e2e/on-prepare.ts +++ b/integration/bazel/test/e2e/on-prepare.ts @@ -1,5 +1,5 @@ import { browser } from 'protractor'; -import {OnPrepareConfig, runServer} from '@angular/bazel/protractor-utils'; +import {OnPrepareConfig, runServer} from '@bazel/protractor/protractor-utils'; export = function(config: OnPrepareConfig) { const portFlag = /prodserver(\.exe)?$/.test(config.server) ? '-p' : '-port'; diff --git a/integration/bazel/yarn.lock b/integration/bazel/yarn.lock index 1ecdde8514..3c17ef5111 100644 --- a/integration/bazel/yarn.lock +++ b/integration/bazel/yarn.lock @@ -30,12 +30,12 @@ rxjs "6.4.0" "@angular/animations@file:../../dist/packages-dist/animations": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: tslib "^1.9.0" "@angular/bazel@file:../../dist/packages-dist/bazel": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: "@angular-devkit/architect" "^0.800.0-beta.15" "@angular-devkit/core" "^8.0.0-beta.15" @@ -57,12 +57,12 @@ parse5 "^5.0.0" "@angular/common@file:../../dist/packages-dist/common": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: tslib "^1.9.0" "@angular/compiler-cli@file:../../dist/packages-dist/compiler-cli": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: canonical-path "1.0.0" chokidar "^2.1.1" @@ -76,17 +76,17 @@ yargs "13.1.0" "@angular/compiler@file:../../dist/packages-dist/compiler": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: tslib "^1.9.0" "@angular/core@file:../../dist/packages-dist/core": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: tslib "^1.9.0" "@angular/forms@file:../../dist/packages-dist/forms": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: tslib "^1.9.0" @@ -98,51 +98,53 @@ tslib "^1.7.1" "@angular/platform-browser-dynamic@file:../../dist/packages-dist/platform-browser-dynamic": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: tslib "^1.9.0" "@angular/platform-browser@file:../../dist/packages-dist/platform-browser": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: tslib "^1.9.0" "@angular/router@file:../../dist/packages-dist/router": - version "8.1.0-next.3" + version "8.2.0-next.2" dependencies: tslib "^1.9.0" -"@bazel/bazel-darwin_x64@0.27.0": - version "0.27.0" - resolved "https://registry.yarnpkg.com/@bazel/bazel-darwin_x64/-/bazel-darwin_x64-0.27.0.tgz#83a03c92d52ae60e48e86a1ee697e69e12ddbdf6" - integrity sha512-CyavIbRKRa/55aMyfEM9hjbt4TVISfv7HLeymHTGTLWzS8uQokQ8W9tR/pgc7YJn8F0x64dd7nQKxhbYHM1Qfg== +"@bazel/bazel-darwin_x64@0.28.1": + version "0.28.1" + resolved "https://registry.yarnpkg.com/@bazel/bazel-darwin_x64/-/bazel-darwin_x64-0.28.1.tgz#415658785e1dbd6f7ab5c8f2b98c1c99c614e1d5" + integrity sha512-VDKWmplAfa4uCAbkIQ5nRn04MFQqtsPNuc2HkluJ8OIum773yC2dPR+OlLBKxrlBuKJYB27TtbOwOa6w/uK7aw== -"@bazel/bazel-linux_x64@0.27.0": - version "0.27.0" - resolved "https://registry.yarnpkg.com/@bazel/bazel-linux_x64/-/bazel-linux_x64-0.27.0.tgz#2358292aa4901f526ba9b90874256f63d6d6608c" - integrity sha512-hO04v7C6M3Jf+qNlLE+IticZZKkkS7Nv6+pXDnENgFWrqLV2H93un6kNQnk83B0hP2cEqRQ8rw5yrIcqXNNuSQ== +"@bazel/bazel-linux_x64@0.28.1": + version "0.28.1" + resolved "https://registry.yarnpkg.com/@bazel/bazel-linux_x64/-/bazel-linux_x64-0.28.1.tgz#f78006089e17660261088272a0e04fc886572e34" + integrity sha512-n4XfNxagYhejQD32V4XSxT/qzuH1l/2jxslbKSak66/uQ+wad8Ew9rjNb4JUin3xtrfFtzmxx2jpQkybZsRVGA== -"@bazel/bazel-win32_x64@0.27.0": - version "0.27.0" - resolved "https://registry.yarnpkg.com/@bazel/bazel-win32_x64/-/bazel-win32_x64-0.27.0.tgz#0e5e498de5ccccc9a6cf481cd46904ee938ab6c2" - integrity sha512-7hIGNhdgaxRt9ceSOCs3eSTtCNi4GXz3nu6OjfgSp+QiqLbW/iAVWa8M8vD5aemZ1BSHek4/LISdWUTncLJk+w== +"@bazel/bazel-win32_x64@0.28.1": + version "0.28.1" + resolved "https://registry.yarnpkg.com/@bazel/bazel-win32_x64/-/bazel-win32_x64-0.28.1.tgz#60a2819618cf7582cc35ac16c01763a5e807b414" + integrity sha512-T4xksGfKikaHS4zxnGT6r5R436mz9j2lz//L1vc5sJnaEF/1e2Gv6MLl86vfZW2Xxo6iIEi6ntSzgYxP2Blohw== "@bazel/bazel@file:../../node_modules/@bazel/bazel": - version "0.27.0" + version "0.28.1" + dependencies: + "@bazel/hide-bazel-files" latest optionalDependencies: - "@bazel/bazel-darwin_x64" "0.27.0" - "@bazel/bazel-linux_x64" "0.27.0" - "@bazel/bazel-win32_x64" "0.27.0" + "@bazel/bazel-darwin_x64" "0.28.1" + "@bazel/bazel-linux_x64" "0.28.1" + "@bazel/bazel-win32_x64" "0.28.1" -"@bazel/hide-bazel-files@0.32.2": - version "0.32.2" - resolved "https://registry.yarnpkg.com/@bazel/hide-bazel-files/-/hide-bazel-files-0.32.2.tgz#a482855eafbccb56b1fce0d92ff922c2c6e0a90c" - integrity sha512-585XY53mhMZaCjEQJ+aDqkmydWZbuXsKrZsSpoW9YeAVEH0poQY3YhdyCPmMVBo7/l1mkrqpFuOK5BpECfwdtA== +"@bazel/hide-bazel-files@latest": + version "0.34.0" + resolved "https://registry.yarnpkg.com/@bazel/hide-bazel-files/-/hide-bazel-files-0.34.0.tgz#368ea84db2756ff80ead23bb9eb179e9ed24b462" + integrity sha512-suyO6cZf8iV6W2LkM1X1spWBt7CsRRXH7gU1wYNuAuHYkkfI0A6qj84yPiIXiOt/2G44kbioGyC1bUsI3fKv7A== -"@bazel/karma@0.32.2": - version "0.32.2" - resolved "https://registry.yarnpkg.com/@bazel/karma/-/karma-0.32.2.tgz#0f6adf0cf1970c50cfdcf9cb2b10a8d3e21731fe" - integrity sha512-iWb8aqE+llpZhlreDweM7llwnSAQ9QTYdz4VvIcZBGVD0KtHxHaKiqK4Zo4Qrmr9H0kcOhT7nvRBg3QOUJVrUw== +"@bazel/karma@0.34.0": + version "0.34.0" + resolved "https://registry.yarnpkg.com/@bazel/karma/-/karma-0.34.0.tgz#ee468501a408244a2c1844b48ca5a938874d9444" + integrity sha512-9EziieE3Zkf7D5tBuX4rO+hhpI4ypNAWReiO/fykjj5oYpLYhhhGGUyFQ8PCIfduPcGZooCTMsctmwZJUb3rRA== dependencies: jasmine-core "2.8.0" karma "^4.0.0" @@ -156,10 +158,17 @@ semver "5.6.0" tmp "0.0.33" -"@bazel/typescript@0.32.2": - version "0.32.2" - resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-0.32.2.tgz#c296bb44cb6362a0e3a08ca88752852bc9591ecf" - integrity sha512-32zDyvHdYjIa63vtImhl6wy5ErOFVWPkjMT2T035D0UPSKI1tvENW/bRZ3QFlFHqfmJZRBpaI3GiUpO3vUvzmw== +"@bazel/protractor@0.34.0": + version "0.34.0" + resolved "https://registry.yarnpkg.com/@bazel/protractor/-/protractor-0.34.0.tgz#af166306518bf1319e8ca255f798712c8714b5e9" + integrity sha512-U6O8hRlerkQ/WfnEVct1yipVQr5epdYaLiOW1eLpmiRMM4RuMhIpIyKkpum5xqFlYP5kwqwje8BS8NHvBfvZnQ== + dependencies: + protractor "^5.4.2" + +"@bazel/typescript@0.34.0": + version "0.34.0" + resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-0.34.0.tgz#ca0fdf15343a930fc1418dbbf7d6cae49e6bc89b" + integrity sha512-GXVSADXdbPyWLskIYAzQsBB1LhZgWF5+M6WCQGOvRWjZfXgRP5QDG5pKJavRGzVd6ofigLPA1xT6Vc7dUEDNtg== dependencies: protobufjs "6.8.8" semver "5.6.0" @@ -327,20 +336,15 @@ resolved "https://registry.yarnpkg.com/@types/node/-/node-10.14.9.tgz#2e8d678039d27943ce53a1913386133227fd9066" integrity sha512-NelG/dSahlXYtSoVPErrp06tYFrvzj8XLWmKA+X8x0W//4MqbUyZu++giUG/v0bjAT6/Qxa8IjodrfdACyb0Fg== -"@types/node@^6.0.46": - version "6.14.6" - resolved "https://registry.yarnpkg.com/@types/node/-/node-6.14.6.tgz#31df045b4c7618ff74d84f542fc3d29445dd566b" - integrity sha512-rFs9zCFtSHuseiNXxYxFlun8ibu+jtZPgRM+2ILCmeLiGeGLiIGxuOzD+cNyHegI1GD+da3R/cIbs9+xCLp13w== - "@types/q@^0.0.32": version "0.0.32" resolved "https://registry.yarnpkg.com/@types/q/-/q-0.0.32.tgz#bd284e57c84f1325da702babfc82a5328190c0c5" integrity sha1-vShOV8hPEyXacCur/IKlMoGQwMU= -"@types/selenium-webdriver@^2.53.35", "@types/selenium-webdriver@~2.53.39": - version "2.53.43" - resolved "https://registry.yarnpkg.com/@types/selenium-webdriver/-/selenium-webdriver-2.53.43.tgz#2de3d718819bc20165754c4a59afb7e9833f6707" - integrity sha512-UBYHWph6P3tutkbXpW6XYg9ZPbTKjw/YC2hGG1/GEvWwTbvezBUv3h+mmUFw79T3RFPnmedpiXdOBbXX+4l0jg== +"@types/selenium-webdriver@^3.0.0": + version "3.0.16" + resolved "https://registry.yarnpkg.com/@types/selenium-webdriver/-/selenium-webdriver-3.0.16.tgz#50a4755f8e33edacd9c406729e9b930d2451902a" + integrity sha512-lMC2G0ItF2xv4UCiwbJGbnJlIuUixHrioOhNGHSCsYCJ8l4t9hMCUimCytvFv7qy6AfSzRxhRHoGa+UqaqwyeA== "@types/z-schema@3.16.31": version "3.16.31" @@ -360,12 +364,7 @@ accepts@~1.3.4: mime-types "~2.1.24" negotiator "0.6.2" -adm-zip@0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.4.tgz#a61ed5ae6905c3aea58b3a657d25033091052736" - integrity sha1-ph7VrmkFw66lizplfSUDMJEFJzY= - -adm-zip@^0.4.7, adm-zip@^0.4.9, adm-zip@~0.4.3: +adm-zip@^0.4.9, adm-zip@~0.4.3: version "0.4.13" resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.13.tgz#597e2f8cc3672151e1307d3e95cddbc75672314a" integrity sha512-fERNJX8sOXfel6qCBCMPvZLzENBEhZTzKqg6vrOW5pvoEaQuJhRU4ndTAh6lHOxn1I6jnz2NHra56ZODM751uw== @@ -375,14 +374,6 @@ after@0.8.2: resolved "https://registry.yarnpkg.com/after/-/after-0.8.2.tgz#fedb394f9f0e02aa9768e702bda23b505fae7e1f" integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8= -agent-base@2: - version "2.1.1" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-2.1.1.tgz#d6de10d5af6132d5bd692427d46fc538539094c7" - integrity sha1-1t4Q1a9hMtW9aSQn1G/FOFOQlMc= - dependencies: - extend "~3.0.0" - semver "~5.0.1" - agent-base@^4.1.0: version "4.3.0" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" @@ -601,10 +592,10 @@ blob@0.0.5: resolved "https://registry.yarnpkg.com/blob/-/blob-0.0.5.tgz#d680eeef25f8cd91ad533f5b01eed48e64caf683" integrity sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig== -blocking-proxy@0.0.5: - version "0.0.5" - resolved "https://registry.yarnpkg.com/blocking-proxy/-/blocking-proxy-0.0.5.tgz#462905e0dcfbea970f41aa37223dda9c07b1912b" - integrity sha1-RikF4Nz76pcPQao3Ij3anAexkSs= +blocking-proxy@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/blocking-proxy/-/blocking-proxy-1.0.1.tgz#81d6fd1fe13a4c0d6957df7f91b75e98dac40cb2" + integrity sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA== dependencies: minimist "^1.2.0" @@ -653,6 +644,13 @@ braces@^2.3.1, braces@^2.3.2: split-string "^3.0.2" to-regex "^3.0.1" +browserstack@^1.5.1: + version "1.5.2" + resolved "https://registry.yarnpkg.com/browserstack/-/browserstack-1.5.2.tgz#17d8bb76127a1cc0ea416424df80d218f803673f" + integrity sha512-+6AFt9HzhKykcPF79W6yjEUJcdvZOV0lIXdkORXMJftGrDl0OKWqRF4GHqpDNkxiceDT/uB7Fb/aDwktvXX7dg== + dependencies: + https-proxy-agent "^2.2.1" + buffer-alloc-unsafe@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz#bd7dc26ae2972d0eda253be061dba992349c19f0" @@ -905,7 +903,7 @@ date-format@^2.0.0: resolved "https://registry.yarnpkg.com/date-format/-/date-format-2.0.0.tgz#7cf7b172f1ec564f0003b39ea302c5498fb98c8f" integrity sha512-M6UqVvZVgFYqZL1SfHsRGIQSz3ZL+qgbsV5Lp1Vj61LZVYuEwcMXYay7DRDtYs2HQQBK5hQtQ0fD9aEJ89V0LA== -debug@2, debug@2.6.9, debug@^2.2.0, debug@^2.3.3: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== @@ -1171,7 +1169,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@3, extend@^3.0.0, extend@~3.0.0, extend@~3.0.2: +extend@^3.0.0, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -1486,15 +1484,6 @@ http-signature@~1.2.0: jsprim "^1.2.2" sshpk "^1.7.0" -https-proxy-agent@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz#35f7da6c48ce4ddbfa264891ac593ee5ff8671e6" - integrity sha1-NffabEjOTdv6JkiRrFk+5f+GceY= - dependencies: - agent-base "2" - debug "2" - extend "3" - https-proxy-agent@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz#51552970fa04d723e04c56d04178c3f92592bbc0" @@ -1748,7 +1737,7 @@ isstream@~0.1.2: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= -jasmine-core@2.8.0: +jasmine-core@2.8.0, jasmine-core@~2.8.0: version "2.8.0" resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.8.0.tgz#bcc979ae1f9fd05701e45e52e65d3a5d63f1a24e" integrity sha1-vMl5rh+f0FcB5F5S5l06XWPxok4= @@ -1758,19 +1747,14 @@ jasmine-core@^3.3: resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-3.4.0.tgz#2a74618e966026530c3518f03e9f845d26473ce3" integrity sha512-HU/YxV4i6GcmiH4duATwAbJQMlE0MsDIR5XmSVxURxKHn3aGAdbY1/ZJFmVRbKtnLwIxxMJD7gYaPsypcbYimg== -jasmine-core@~2.99.0: - version "2.99.1" - resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.99.1.tgz#e6400df1e6b56e130b61c4bcd093daa7f6e8ca15" - integrity sha1-5kAN8ea1bhMLYcS80JPap/boyhU= - -jasmine@^2.5.3: - version "2.99.0" - resolved "https://registry.yarnpkg.com/jasmine/-/jasmine-2.99.0.tgz#8ca72d102e639b867c6489856e0e18a9c7aa42b7" - integrity sha1-jKctEC5jm4Z8ZImFbg4YqceqQrc= +jasmine@2.8.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/jasmine/-/jasmine-2.8.0.tgz#6b089c0a11576b1f16df11b80146d91d4e8b8a3e" + integrity sha1-awicChFXax8W3xG4AUbZHU6Lij4= dependencies: exit "^0.1.2" glob "^7.0.6" - jasmine-core "~2.99.0" + jasmine-core "~2.8.0" jasminewd2@^2.1.0: version "2.2.0" @@ -1819,6 +1803,16 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" +jszip@^3.1.3: + version "3.2.2" + resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.2.2.tgz#b143816df7e106a9597a94c77493385adca5bd1d" + integrity sha512-NmKajvAFQpbg3taXQXr/ccS2wcucR1AZ+NtyWp2Nq7HHVsXhcJFR8p0Baf32C2yVvBylFWVeKf+WI2AnvlPhpA== + dependencies: + lie "~3.3.0" + pako "~1.0.2" + readable-stream "~2.3.6" + set-immediate-shim "~1.0.1" + jszip@^3.1.5: version "3.2.1" resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.2.1.tgz#c5d32df7274042282b157efb16e522b43435e01a" @@ -2308,11 +2302,6 @@ optimist@^0.6.1, optimist@~0.6.0: minimist "~0.0.1" wordwrap "~0.0.2" -options@>=0.0.5: - version "0.0.6" - resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" - integrity sha1-7CLTEoBrtT5zF3Pnza788cZDEo8= - os-homedir@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" @@ -2489,25 +2478,25 @@ protobufjs@6.8.8: "@types/node" "^10.1.0" long "^4.0.0" -protractor@5.1.2: - version "5.1.2" - resolved "https://registry.yarnpkg.com/protractor/-/protractor-5.1.2.tgz#9b221741709a4c62d5cd53c6aadd54a71137e95f" - integrity sha1-myIXQXCaTGLVzVPGqt1UpxE36V8= +protractor@^5.4.2: + version "5.4.2" + resolved "https://registry.yarnpkg.com/protractor/-/protractor-5.4.2.tgz#329efe37f48b2141ab9467799be2d4d12eb48c13" + integrity sha512-zlIj64Cr6IOWP7RwxVeD8O4UskLYPoyIcg0HboWJL9T79F1F0VWtKkGTr/9GN6BKL+/Q/GmM7C9kFVCfDbP5sA== dependencies: - "@types/node" "^6.0.46" "@types/q" "^0.0.32" - "@types/selenium-webdriver" "~2.53.39" - blocking-proxy "0.0.5" + "@types/selenium-webdriver" "^3.0.0" + blocking-proxy "^1.0.0" + browserstack "^1.5.1" chalk "^1.1.3" glob "^7.0.3" - jasmine "^2.5.3" + jasmine "2.8.0" jasminewd2 "^2.1.0" optimist "~0.6.0" q "1.4.1" - saucelabs "~1.3.0" - selenium-webdriver "3.0.1" + saucelabs "^1.5.0" + selenium-webdriver "3.6.0" source-map-support "~0.4.0" - webdriver-js-extender "^1.0.0" + webdriver-js-extender "2.1.0" webdriver-manager "^12.0.6" pseudomap@^1.0.2: @@ -2774,44 +2763,21 @@ saucelabs@^1.5.0: dependencies: https-proxy-agent "^2.2.1" -saucelabs@~1.3.0: - version "1.3.0" - resolved "https://registry.yarnpkg.com/saucelabs/-/saucelabs-1.3.0.tgz#d240e8009df7fa87306ec4578a69ba3b5c424fee" - integrity sha1-0kDoAJ33+ocwbsRXimm6O1xCT+4= - dependencies: - https-proxy-agent "^1.0.0" - -sax@0.6.x: - version "0.6.1" - resolved "https://registry.yarnpkg.com/sax/-/sax-0.6.1.tgz#563b19c7c1de892e09bfc4f2fc30e3c27f0952b9" - integrity sha1-VjsZx8HeiS4Jv8Ty/DDjwn8JUrk= - sax@>=0.6.0, sax@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== -selenium-webdriver@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-3.0.1.tgz#a2dea5da4a97f6672e89e7ca7276cefa365147a7" - integrity sha1-ot6l2kqX9mcuiefKcnbO+jZRR6c= +selenium-webdriver@3.6.0, selenium-webdriver@^3.0.1: + version "3.6.0" + resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-3.6.0.tgz#2ba87a1662c020b8988c981ae62cb2a01298eafc" + integrity sha512-WH7Aldse+2P5bbFBO4Gle/nuQOdVwpHMTL6raL3uuBj/vPG07k6uzt3aiahu352ONBr5xXh0hDlM3LhtXPOC4Q== dependencies: - adm-zip "^0.4.7" + jszip "^3.1.3" rimraf "^2.5.4" tmp "0.0.30" xml2js "^0.4.17" -selenium-webdriver@^2.53.2: - version "2.53.3" - resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-2.53.3.tgz#d29ff5a957dff1a1b49dc457756e4e4bfbdce085" - integrity sha1-0p/1qVff8aG0ncRXdW5OS/vc4IU= - dependencies: - adm-zip "0.4.4" - rimraf "^2.2.8" - tmp "0.0.24" - ws "^1.0.1" - xml2js "0.4.4" - selenium-webdriver@^4.0.0-alpha.1: version "4.0.0-alpha.3" resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-4.0.0-alpha.3.tgz#fb974f29696a6801ecaf203e38a65c3dbe7e363a" @@ -2832,11 +2798,6 @@ semver@^5.3.0, semver@^5.5.0, semver@^5.6.0: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b" integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA== -semver@~5.0.1: - version "5.0.3" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.0.3.tgz#77466de589cd5d3c95f138aa78bc569a3cb5d27a" - integrity sha1-d0Zt5YnNXTyV8TiqeLxWmjy10no= - set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" @@ -3158,11 +3119,6 @@ tar@^4: safe-buffer "^5.1.2" yallist "^3.0.3" -tmp@0.0.24: - version "0.0.24" - resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.24.tgz#d6a5e198d14a9835cc6f2d7c3d9e302428c8cf12" - integrity sha1-1qXhmNFKmDXMby18PZ4wJCjIzxI= - tmp@0.0.30: version "0.0.30" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.30.tgz#72419d4a8be7d6ce75148fd8b324e593a711c2ed" @@ -3276,11 +3232,6 @@ typescript@~3.4.3: resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.4.5.tgz#2d2618d10bb566572b8d7aad5180d84257d70a99" integrity sha512-YycBxUb49UUhdNMU5aJ7z5Ej2XGmaIBL0x34vZ82fn3hGvD+bgrMrVDpatgz2f7YxUMJxMkbWxJZeAvDxVe7Vw== -ultron@1.0.x: - version "1.0.2" - resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" - integrity sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po= - ultron@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.1.1.tgz#9fe1536a10a664a65266a1e3ccf85fd36302bc9c" @@ -3378,13 +3329,13 @@ void-elements@^2.0.0: resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-2.0.1.tgz#c066afb582bb1cb4128d60ea92392e94d5e9dbec" integrity sha1-wGavtYK7HLQSjWDqkjkulNXp2+w= -webdriver-js-extender@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/webdriver-js-extender/-/webdriver-js-extender-1.0.0.tgz#81c533a9e33d5bfb597b4e63e2cdb25b54777515" - integrity sha1-gcUzqeM9W/tZe05j4s2yW1R3dRU= +webdriver-js-extender@2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz#57d7a93c00db4cc8d556e4d3db4b5db0a80c3bb7" + integrity sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ== dependencies: - "@types/selenium-webdriver" "^2.53.35" - selenium-webdriver "^2.53.2" + "@types/selenium-webdriver" "^3.0.0" + selenium-webdriver "^3.0.1" webdriver-manager@^12.0.6: version "12.1.5" @@ -3440,14 +3391,6 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -ws@^1.0.1: - version "1.1.5" - resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.5.tgz#cbd9e6e75e09fc5d2c90015f21f0c40875e0dd51" - integrity sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w== - dependencies: - options ">=0.0.5" - ultron "1.0.x" - ws@~3.3.1: version "3.3.3" resolved "https://registry.yarnpkg.com/ws/-/ws-3.3.3.tgz#f1cf84fe2d5e901ebce94efaece785f187a228f2" @@ -3457,14 +3400,6 @@ ws@~3.3.1: safe-buffer "~5.1.0" ultron "~1.1.0" -xml2js@0.4.4: - version "0.4.4" - resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.4.tgz#3111010003008ae19240eba17497b57c729c555d" - integrity sha1-MREBAAMAiuGSQOuhdJe1fHKcVV0= - dependencies: - sax "0.6.x" - xmlbuilder ">=1.0.0" - xml2js@^0.4.17, xml2js@^0.4.19: version "0.4.19" resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" @@ -3473,11 +3408,6 @@ xml2js@^0.4.17, xml2js@^0.4.19: sax ">=0.6.0" xmlbuilder "~9.0.1" -xmlbuilder@>=1.0.0: - version "13.0.2" - resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-13.0.2.tgz#02ae33614b6a047d1c32b5389c1fdacb2bce47a7" - integrity sha512-Eux0i2QdDYKbdbA6AM6xE4m6ZTZr4G4xF9kahI2ukSEMCzwce2eX9WlTI5J3s+NU7hpasFsr8hWIONae7LluAQ== - xmlbuilder@~9.0.1: version "9.0.7" resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" diff --git a/modules/benchmarks/benchmark_test.bzl b/modules/benchmarks/benchmark_test.bzl index 0948985cdc..051729eef4 100644 --- a/modules/benchmarks/benchmark_test.bzl +++ b/modules/benchmarks/benchmark_test.bzl @@ -1,4 +1,4 @@ -load("//packages/bazel:index.bzl", "protractor_web_test_suite") +load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite") """ Macro that can be used to define a benchmark test. This differentiates from @@ -18,7 +18,6 @@ def benchmark_test(name, server, deps, tags = []): server = server, tags = tags, deps = [ - "@npm//protractor", "@npm//yargs", ] + deps, ) diff --git a/modules/benchmarks/src/tree/render3/protractor.on_prepare.js b/modules/benchmarks/src/tree/render3/protractor.on_prepare.js index 509208c84e..9b26351618 100644 --- a/modules/benchmarks/src/tree/render3/protractor.on_prepare.js +++ b/modules/benchmarks/src/tree/render3/protractor.on_prepare.js @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -const protractorUtils = require('@angular/bazel/protractor-utils'); +const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); module.exports = async function(config) { diff --git a/modules/benchmarks/start-server.js b/modules/benchmarks/start-server.js index 98fbaf25f8..c43be5f8e9 100644 --- a/modules/benchmarks/start-server.js +++ b/modules/benchmarks/start-server.js @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -const protractorUtils = require('@angular/bazel/protractor-utils'); +const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); module.exports = async function(config) { diff --git a/modules/playground/e2e_test/example_test.bzl b/modules/playground/e2e_test/example_test.bzl index 70eaa43388..719512a270 100644 --- a/modules/playground/e2e_test/example_test.bzl +++ b/modules/playground/e2e_test/example_test.bzl @@ -1,4 +1,4 @@ -load("//packages/bazel:index.bzl", "protractor_web_test_suite") +load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite") load("//tools:defaults.bzl", "ts_library") def example_test(name, srcs, server, data = [], **kwargs): @@ -18,12 +18,11 @@ def example_test(name, srcs, server, data = [], **kwargs): protractor_web_test_suite( name = "protractor_tests", - data = ["//packages/bazel/src/protractor/utils"] + data, + data = data, on_prepare = "//modules/playground/e2e_test:start-server.js", server = server, deps = [ ":%s_lib" % name, - "@npm//protractor", "@npm//selenium-webdriver", "@npm//yargs", "@npm//source-map", diff --git a/modules/playground/e2e_test/start-server.js b/modules/playground/e2e_test/start-server.js index e7d432281a..cd47c54c05 100644 --- a/modules/playground/e2e_test/start-server.js +++ b/modules/playground/e2e_test/start-server.js @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -const protractorUtils = require('@angular/bazel/protractor-utils'); +const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); module.exports = async function(config) { diff --git a/package.json b/package.json index 86e953ef30..07c4bdd630 100644 --- a/package.json +++ b/package.json @@ -35,10 +35,10 @@ "@angular-devkit/core": "^8.0.0-beta.15", "@angular-devkit/schematics": "^8.0.0-beta.15", "@angular/bazel": "file:./tools/npm/@angular_bazel", - "@bazel/jasmine": "0.32.2", - "@bazel/hide-bazel-files": "0.32.2", - "@bazel/karma": "0.32.2", - "@bazel/typescript": "0.32.2", + "@bazel/jasmine": "0.34.0", + "@bazel/karma": "0.34.0", + "@bazel/protractor": "0.34.0", + "@bazel/typescript": "0.34.0", "@microsoft/api-extractor": "^7.0.21", "@schematics/angular": "^8.0.0-beta.15", "@types/angular": "^1.6.47", @@ -120,7 +120,7 @@ "// 3": "when updating @bazel/bazel version you also need to update the RBE settings in .bazelrc (see https://github.com/angular/angular/pull/27935)", "devDependencies": { "@angular/cli": "^8.0.0-beta.15", - "@bazel/bazel": "0.27.0", + "@bazel/bazel": "0.28.1", "@bazel/buildifier": "^0.26.0", "@bazel/ibazel": "~0.9.0", "@types/minimist": "^1.2.0", diff --git a/packages/bazel/package.bzl b/packages/bazel/package.bzl index f5e40fb711..893b9d01b7 100644 --- a/packages/bazel/package.bzl +++ b/packages/bazel/package.bzl @@ -25,12 +25,13 @@ def rules_angular_dev_dependencies(): """ # Needed for Remote Execution + # https://github.com/bazelbuild/bazel-toolchains/releases _maybe( http_archive, name = "bazel_toolchains", - sha256 = "4598bf5a8b4f5ced82c782899438a7ba695165d47b3bf783ce774e89a8c6e617", - strip_prefix = "bazel-toolchains-0.27.0", - url = "https://github.com/bazelbuild/bazel-toolchains/archive/0.27.0.tar.gz", + sha256 = "dcb58e7e5f0b4da54c6c5f8ebc65e63fcfb37414466010cf82ceff912162296e", + strip_prefix = "bazel-toolchains-0.28.2", + url = "https://github.com/bazelbuild/bazel-toolchains/archive/0.28.2.tar.gz", ) ############################################# diff --git a/packages/bazel/src/builders/files/WORKSPACE.template b/packages/bazel/src/builders/files/WORKSPACE.template index 90adba2e2e..1c4238d3c6 100644 --- a/packages/bazel/src/builders/files/WORKSPACE.template +++ b/packages/bazel/src/builders/files/WORKSPACE.template @@ -15,8 +15,8 @@ workspace( load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") -RULES_NODEJS_VERSION = "0.32.2" -RULES_NODEJS_SHA256 = "6d4edbf28ff6720aedf5f97f9b9a7679401bf7fca9d14a0fff80f644a99992b4" +RULES_NODEJS_VERSION = "0.34.0" +RULES_NODEJS_SHA256 = "7c4a690268be97c96f04d505224ec4cb1ae53c2c2b68be495c9bd2634296a5cd" http_archive( name = "build_bazel_rules_nodejs", sha256 = RULES_NODEJS_SHA256, @@ -63,8 +63,6 @@ node_repositories( yarn_install( name = "npm", - # TODO(gregmagolan): fix rules_nodejs so that if @bazel/hide-bazel-files is detected then this is forced true - always_hide_bazel_files = True, package_json = "//:package.json", yarn_lock = "//:yarn.lock", ) @@ -72,6 +70,9 @@ yarn_install( load("@npm//:install_bazel_dependencies.bzl", "install_bazel_dependencies") install_bazel_dependencies() +load("@npm_bazel_protractor//:package.bzl", "npm_bazel_protractor_dependencies") +npm_bazel_protractor_dependencies() + load("@npm_bazel_karma//:package.bzl", "rules_karma_dependencies") rules_karma_dependencies() diff --git a/packages/bazel/src/builders/files/e2e/BUILD.bazel.template b/packages/bazel/src/builders/files/e2e/BUILD.bazel.template index 9bf7e4360f..296b97e2f6 100644 --- a/packages/bazel/src/builders/files/e2e/BUILD.bazel.template +++ b/packages/bazel/src/builders/files/e2e/BUILD.bazel.template @@ -1,5 +1,5 @@ +load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite") load("@npm_bazel_typescript//:index.bzl", "ts_library") -load("@npm_angular_bazel//:index.bzl", "protractor_web_test_suite") ts_library( name = "e2e_lib", @@ -21,10 +21,6 @@ ts_library( protractor_web_test_suite( name = "prodserver_test", - data = [ - "@npm//@angular/bazel", - "@npm//protractor", - ], on_prepare = ":protractor.on-prepare.js", server = "//src:prodserver", deps = [":e2e_lib"], @@ -32,10 +28,6 @@ protractor_web_test_suite( protractor_web_test_suite( name = "devserver_test", - data = [ - "@npm//@angular/bazel", - "@npm//protractor", - ], on_prepare = ":protractor.on-prepare.js", server = "//src:devserver", deps = [":e2e_lib"], diff --git a/packages/bazel/src/schematics/ng-add/files/e2e/protractor.on-prepare.js.template b/packages/bazel/src/schematics/ng-add/files/e2e/protractor.on-prepare.js.template index 3c4205e227..8371f20a86 100644 --- a/packages/bazel/src/schematics/ng-add/files/e2e/protractor.on-prepare.js.template +++ b/packages/bazel/src/schematics/ng-add/files/e2e/protractor.on-prepare.js.template @@ -5,11 +5,11 @@ // If the function returns a promise, as it does here, protractor will wait // for the promise to resolve before running tests. -const protractorUtils = require('@angular/bazel/protractor-utils'); +const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); module.exports = function(config) { - // In this example, `@angular/bazel/protractor-utils` is used to run + // In this example, `@bazel/protractor/protractor-utils` is used to run // the server. protractorUtils.runServer() runs the server on a randomly // selected port (given a port flag to pass to the server as an argument). // The port used is returned in serverSpec and the protractor serverUrl diff --git a/packages/bazel/src/schematics/ng-add/index.ts b/packages/bazel/src/schematics/ng-add/index.ts index 50569e18dc..a265935e5b 100755 --- a/packages/bazel/src/schematics/ng-add/index.ts +++ b/packages/bazel/src/schematics/ng-add/index.ts @@ -48,11 +48,11 @@ function addDevDependenciesToPackageJson(options: Schema) { const devDependencies: {[k: string]: string} = { '@angular/bazel': angularCoreVersion, - '@bazel/bazel': '^0.27.0', - '@bazel/hide-bazel-files': '0.32.2', + '@bazel/bazel': '^0.28.1', '@bazel/ibazel': '^0.10.2', - '@bazel/karma': '0.32.2', - '@bazel/typescript': '0.32.2', + '@bazel/karma': '0.34.0', + '@bazel/protractor': '0.34.0', + '@bazel/typescript': '0.34.0', }; const recorder = host.beginUpdate(packageJson); diff --git a/packages/bazel/src/schematics/ng-add/index_spec.ts b/packages/bazel/src/schematics/ng-add/index_spec.ts index 888ebb0e78..5f1ccc588d 100644 --- a/packages/bazel/src/schematics/ng-add/index_spec.ts +++ b/packages/bazel/src/schematics/ng-add/index_spec.ts @@ -113,9 +113,10 @@ describe('ng-add schematic', () => { const json = JSON.parse(content); const devDeps = Object.keys(json.devDependencies); expect(devDeps).toContain('@bazel/bazel'); - expect(devDeps).toContain('@bazel/hide-bazel-files'); expect(devDeps).toContain('@bazel/ibazel'); expect(devDeps).toContain('@bazel/karma'); + expect(devDeps).toContain('@bazel/protractor'); + expect(devDeps).toContain('@bazel/typescript'); }); it('should replace an existing dev dependency', async() => { diff --git a/packages/compiler-cli/integrationtest/test.js b/packages/compiler-cli/integrationtest/test.js index 67d93e3beb..030529c6e3 100644 --- a/packages/compiler-cli/integrationtest/test.js +++ b/packages/compiler-cli/integrationtest/test.js @@ -11,9 +11,28 @@ const shx = require('shelljs'); const os = require('os'); const {runCommand, setupTestDirectory} = require('./test_helpers'); +// Nodejs toolchains were included in nodejs rules 0.33.0 so the +// repository name for the nodejs toolchain now depends on the platform +// being run on. The following function returns the nodejs repository +// name of the runtime platform platform. These come from +// https://github.com/bazelbuild/rules_nodejs/blob/2a0be492c5d506665798f04673ab1a646c883626/internal/node/node_repositories.bzl#L598. +function nodejs_repository() { + switch (os.platform()) { + case 'darwin': + return 'nodejs_darwin_amd64'; + case 'linux': + return 'nodejs_linux_amd64'; + case 'win32': + return 'nodejs_windows_amd64'; + default: + throw 'Platform not supported'; + } +} + const ngcBin = require.resolve('./ngc_bin'); const xi18nBin = require.resolve('./ng_xi18n'); -const nodeBin = require.resolve(`nodejs/bin/node${(os.platform() === 'win32' ? '.cmd' : '')}`); +const nodeBin = + require.resolve(`${nodejs_repository()}/bin/node${(os.platform() === 'win32' ? '.cmd' : '')}`); const jasmineBin = require.resolve('npm/node_modules/jasmine/bin/jasmine.js'); // Prepare the test directory before building the integration test output. This ensures that diff --git a/packages/core/test/strict_types/BUILD.bazel b/packages/core/test/strict_types/BUILD.bazel index c5a4e33792..ca42c4422d 100644 --- a/packages/core/test/strict_types/BUILD.bazel +++ b/packages/core/test/strict_types/BUILD.bazel @@ -7,7 +7,7 @@ ts_config( name = "tsconfig", src = "tsconfig.json", deps = [ - "//tools:tsconfig-test", + "//packages:tsconfig-test", ], ) diff --git a/packages/examples/common/BUILD.bazel b/packages/examples/common/BUILD.bazel index 4bb4348722..6eda75f979 100644 --- a/packages/examples/common/BUILD.bazel +++ b/packages/examples/common/BUILD.bazel @@ -1,7 +1,7 @@ package(default_visibility = ["//visibility:public"]) -load("//packages/bazel:index.bzl", "protractor_web_test_suite") load("//tools:defaults.bzl", "ng_module", "ts_library") +load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite") load("@npm_bazel_typescript//:index.bzl", "ts_devserver") ng_module( diff --git a/packages/examples/common/start-server.js b/packages/examples/common/start-server.js index e7d432281a..cd47c54c05 100644 --- a/packages/examples/common/start-server.js +++ b/packages/examples/common/start-server.js @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -const protractorUtils = require('@angular/bazel/protractor-utils'); +const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); module.exports = async function(config) { diff --git a/packages/examples/core/BUILD.bazel b/packages/examples/core/BUILD.bazel index 19f93ac1ac..c1b7b5ad45 100644 --- a/packages/examples/core/BUILD.bazel +++ b/packages/examples/core/BUILD.bazel @@ -1,7 +1,7 @@ package(default_visibility = ["//visibility:public"]) -load("//packages/bazel:index.bzl", "protractor_web_test_suite") load("//tools:defaults.bzl", "jasmine_node_test", "ng_module", "ts_library") +load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite") load("@npm_bazel_typescript//:index.bzl", "ts_devserver") ng_module( diff --git a/packages/examples/core/start-server.js b/packages/examples/core/start-server.js index e7d432281a..cd47c54c05 100644 --- a/packages/examples/core/start-server.js +++ b/packages/examples/core/start-server.js @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -const protractorUtils = require('@angular/bazel/protractor-utils'); +const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); module.exports = async function(config) { diff --git a/packages/examples/forms/BUILD.bazel b/packages/examples/forms/BUILD.bazel index 18ae2b9c20..eade263185 100644 --- a/packages/examples/forms/BUILD.bazel +++ b/packages/examples/forms/BUILD.bazel @@ -1,7 +1,7 @@ package(default_visibility = ["//visibility:public"]) -load("//packages/bazel:index.bzl", "protractor_web_test_suite") load("//tools:defaults.bzl", "ng_module", "ts_library") +load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite") load("@npm_bazel_typescript//:index.bzl", "ts_devserver") ng_module( diff --git a/packages/examples/forms/start-server.js b/packages/examples/forms/start-server.js index e7d432281a..cd47c54c05 100644 --- a/packages/examples/forms/start-server.js +++ b/packages/examples/forms/start-server.js @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -const protractorUtils = require('@angular/bazel/protractor-utils'); +const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); module.exports = async function(config) { diff --git a/packages/examples/service-worker/registration-options/BUILD.bazel b/packages/examples/service-worker/registration-options/BUILD.bazel index 65f3a8b39a..8256e4e7dd 100644 --- a/packages/examples/service-worker/registration-options/BUILD.bazel +++ b/packages/examples/service-worker/registration-options/BUILD.bazel @@ -1,7 +1,7 @@ package(default_visibility = ["//visibility:public"]) -load("//packages/bazel:index.bzl", "protractor_web_test_suite") load("//tools:defaults.bzl", "ng_module", "ts_library") +load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite") load("@npm_bazel_typescript//:index.bzl", "ts_devserver") ng_module( diff --git a/packages/examples/service-worker/registration-options/start-server.js b/packages/examples/service-worker/registration-options/start-server.js index e7d432281a..cd47c54c05 100644 --- a/packages/examples/service-worker/registration-options/start-server.js +++ b/packages/examples/service-worker/registration-options/start-server.js @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -const protractorUtils = require('@angular/bazel/protractor-utils'); +const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); module.exports = async function(config) { diff --git a/packages/examples/upgrade/start-server.js b/packages/examples/upgrade/start-server.js index e7d432281a..cd47c54c05 100644 --- a/packages/examples/upgrade/start-server.js +++ b/packages/examples/upgrade/start-server.js @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.io/license */ -const protractorUtils = require('@angular/bazel/protractor-utils'); +const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); module.exports = async function(config) { diff --git a/packages/examples/upgrade/upgrade_example.bzl b/packages/examples/upgrade/upgrade_example.bzl index 4f01f57e24..32fe2f0ae0 100644 --- a/packages/examples/upgrade/upgrade_example.bzl +++ b/packages/examples/upgrade/upgrade_example.bzl @@ -1,5 +1,5 @@ -load("//packages/bazel:index.bzl", "protractor_web_test_suite") load("//tools:defaults.bzl", "ng_module", "ts_library") +load("@npm_bazel_protractor//:index.bzl", "protractor_web_test_suite") load("@npm_bazel_typescript//:index.bzl", "ts_devserver") """ diff --git a/yarn.lock b/yarn.lock index b1a2b4ccd4..16dbe8c4a7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -90,29 +90,31 @@ esutils "^2.0.2" js-tokens "^4.0.0" -"@bazel/bazel-darwin_x64@0.27.0": - version "0.27.0" - resolved "https://registry.yarnpkg.com/@bazel/bazel-darwin_x64/-/bazel-darwin_x64-0.27.0.tgz#83a03c92d52ae60e48e86a1ee697e69e12ddbdf6" - integrity sha512-CyavIbRKRa/55aMyfEM9hjbt4TVISfv7HLeymHTGTLWzS8uQokQ8W9tR/pgc7YJn8F0x64dd7nQKxhbYHM1Qfg== +"@bazel/bazel-darwin_x64@0.28.1": + version "0.28.1" + resolved "https://registry.yarnpkg.com/@bazel/bazel-darwin_x64/-/bazel-darwin_x64-0.28.1.tgz#415658785e1dbd6f7ab5c8f2b98c1c99c614e1d5" + integrity sha512-VDKWmplAfa4uCAbkIQ5nRn04MFQqtsPNuc2HkluJ8OIum773yC2dPR+OlLBKxrlBuKJYB27TtbOwOa6w/uK7aw== -"@bazel/bazel-linux_x64@0.27.0": - version "0.27.0" - resolved "https://registry.yarnpkg.com/@bazel/bazel-linux_x64/-/bazel-linux_x64-0.27.0.tgz#2358292aa4901f526ba9b90874256f63d6d6608c" - integrity sha512-hO04v7C6M3Jf+qNlLE+IticZZKkkS7Nv6+pXDnENgFWrqLV2H93un6kNQnk83B0hP2cEqRQ8rw5yrIcqXNNuSQ== +"@bazel/bazel-linux_x64@0.28.1": + version "0.28.1" + resolved "https://registry.yarnpkg.com/@bazel/bazel-linux_x64/-/bazel-linux_x64-0.28.1.tgz#f78006089e17660261088272a0e04fc886572e34" + integrity sha512-n4XfNxagYhejQD32V4XSxT/qzuH1l/2jxslbKSak66/uQ+wad8Ew9rjNb4JUin3xtrfFtzmxx2jpQkybZsRVGA== -"@bazel/bazel-win32_x64@0.27.0": - version "0.27.0" - resolved "https://registry.yarnpkg.com/@bazel/bazel-win32_x64/-/bazel-win32_x64-0.27.0.tgz#0e5e498de5ccccc9a6cf481cd46904ee938ab6c2" - integrity sha512-7hIGNhdgaxRt9ceSOCs3eSTtCNi4GXz3nu6OjfgSp+QiqLbW/iAVWa8M8vD5aemZ1BSHek4/LISdWUTncLJk+w== +"@bazel/bazel-win32_x64@0.28.1": + version "0.28.1" + resolved "https://registry.yarnpkg.com/@bazel/bazel-win32_x64/-/bazel-win32_x64-0.28.1.tgz#60a2819618cf7582cc35ac16c01763a5e807b414" + integrity sha512-T4xksGfKikaHS4zxnGT6r5R436mz9j2lz//L1vc5sJnaEF/1e2Gv6MLl86vfZW2Xxo6iIEi6ntSzgYxP2Blohw== -"@bazel/bazel@0.27.0": - version "0.27.0" - resolved "https://registry.yarnpkg.com/@bazel/bazel/-/bazel-0.27.0.tgz#4e72c8e1cbb4da41022b6de1afe28731f5f58e09" - integrity sha512-yIj64IkesNzjHsoeehQUMBOgrCK/JMSuon5CvBqo6+izPXAmt+OW05uqaLL/FPAYAFQ2mHxsYtDsPxsM8DUbqA== +"@bazel/bazel@0.28.1": + version "0.28.1" + resolved "https://registry.yarnpkg.com/@bazel/bazel/-/bazel-0.28.1.tgz#3a6b9b7a74d566c66805242ccaa2f907592b5bff" + integrity sha512-s4bn5/vegEec66l15ZjyUe4jNybQ5J/cg9gFzR5f8deKj8lM+2WtCfvTLO3XfUe2pbrB4BG7C31jpyFPOC+6aw== + dependencies: + "@bazel/hide-bazel-files" latest optionalDependencies: - "@bazel/bazel-darwin_x64" "0.27.0" - "@bazel/bazel-linux_x64" "0.27.0" - "@bazel/bazel-win32_x64" "0.27.0" + "@bazel/bazel-darwin_x64" "0.28.1" + "@bazel/bazel-linux_x64" "0.28.1" + "@bazel/bazel-win32_x64" "0.28.1" "@bazel/buildifier-darwin_x64@0.26.0": version "0.26.0" @@ -138,29 +140,29 @@ "@bazel/buildifier-linux_x64" "0.26.0" "@bazel/buildifier-win32_x64" "0.26.0" -"@bazel/hide-bazel-files@0.32.2": - version "0.32.2" - resolved "https://registry.yarnpkg.com/@bazel/hide-bazel-files/-/hide-bazel-files-0.32.2.tgz#a482855eafbccb56b1fce0d92ff922c2c6e0a90c" - integrity sha512-585XY53mhMZaCjEQJ+aDqkmydWZbuXsKrZsSpoW9YeAVEH0poQY3YhdyCPmMVBo7/l1mkrqpFuOK5BpECfwdtA== +"@bazel/hide-bazel-files@latest": + version "0.34.0" + resolved "https://registry.yarnpkg.com/@bazel/hide-bazel-files/-/hide-bazel-files-0.34.0.tgz#368ea84db2756ff80ead23bb9eb179e9ed24b462" + integrity sha512-suyO6cZf8iV6W2LkM1X1spWBt7CsRRXH7gU1wYNuAuHYkkfI0A6qj84yPiIXiOt/2G44kbioGyC1bUsI3fKv7A== "@bazel/ibazel@~0.9.0": version "0.9.0" resolved "https://registry.yarnpkg.com/@bazel/ibazel/-/ibazel-0.9.0.tgz#fd60023acd36313d304cc2f8c2e181b88b5445cd" integrity sha512-E31cefDcdJsx/oii6p/gqKZXSVw0kEg1O73DD2McFcSvnf/p1GYWcQtVgdRQmlviBEytJkJgdX8rtThitRvcow== -"@bazel/jasmine@0.32.2": - version "0.32.2" - resolved "https://registry.yarnpkg.com/@bazel/jasmine/-/jasmine-0.32.2.tgz#6375b5b0de3f352c2b2280c54878dd30915fc139" - integrity sha512-izF9hBcbTOj1VhJVeo8G479dXo9KlibX0N6Yag15GaIk1fibW4iRyTBC2fy4ihm31CYIId6Zd9AABVShd+1Sgw== +"@bazel/jasmine@0.34.0": + version "0.34.0" + resolved "https://registry.yarnpkg.com/@bazel/jasmine/-/jasmine-0.34.0.tgz#74497def9766dee2c6b43e87ee288308d50bfd3f" + integrity sha512-vNUxQ1ss0aT7S3CQvQ6U6vJF8H+Cg/jr7kVUCesHQNYaNKqxwZOlZ8cevR/xUKRTcltE6PeJA+Ezgm5mP7sckg== dependencies: - jasmine "~3.3.1" - jasmine-core "~3.3.0" + jasmine "~3.4.0" + jasmine-core "~3.4.0" v8-coverage "1.0.9" -"@bazel/karma@0.32.2": - version "0.32.2" - resolved "https://registry.yarnpkg.com/@bazel/karma/-/karma-0.32.2.tgz#0f6adf0cf1970c50cfdcf9cb2b10a8d3e21731fe" - integrity sha512-iWb8aqE+llpZhlreDweM7llwnSAQ9QTYdz4VvIcZBGVD0KtHxHaKiqK4Zo4Qrmr9H0kcOhT7nvRBg3QOUJVrUw== +"@bazel/karma@0.34.0": + version "0.34.0" + resolved "https://registry.yarnpkg.com/@bazel/karma/-/karma-0.34.0.tgz#ee468501a408244a2c1844b48ca5a938874d9444" + integrity sha512-9EziieE3Zkf7D5tBuX4rO+hhpI4ypNAWReiO/fykjj5oYpLYhhhGGUyFQ8PCIfduPcGZooCTMsctmwZJUb3rRA== dependencies: jasmine-core "2.8.0" karma "^4.0.0" @@ -174,10 +176,17 @@ semver "5.6.0" tmp "0.0.33" -"@bazel/typescript@0.32.2": - version "0.32.2" - resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-0.32.2.tgz#c296bb44cb6362a0e3a08ca88752852bc9591ecf" - integrity sha512-32zDyvHdYjIa63vtImhl6wy5ErOFVWPkjMT2T035D0UPSKI1tvENW/bRZ3QFlFHqfmJZRBpaI3GiUpO3vUvzmw== +"@bazel/protractor@0.34.0": + version "0.34.0" + resolved "https://registry.yarnpkg.com/@bazel/protractor/-/protractor-0.34.0.tgz#af166306518bf1319e8ca255f798712c8714b5e9" + integrity sha512-U6O8hRlerkQ/WfnEVct1yipVQr5epdYaLiOW1eLpmiRMM4RuMhIpIyKkpum5xqFlYP5kwqwje8BS8NHvBfvZnQ== + dependencies: + protractor "^5.4.2" + +"@bazel/typescript@0.34.0": + version "0.34.0" + resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-0.34.0.tgz#ca0fdf15343a930fc1418dbbf7d6cae49e6bc89b" + integrity sha512-GXVSADXdbPyWLskIYAzQsBB1LhZgWF5+M6WCQGOvRWjZfXgRP5QDG5pKJavRGzVd6ofigLPA1xT6Vc7dUEDNtg== dependencies: protobufjs "6.8.8" semver "5.6.0" @@ -6112,7 +6121,7 @@ jasmine-core@^3.1.0: resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-3.1.0.tgz#a4785e135d5df65024dfc9224953df585bd2766c" integrity sha1-pHheE11d9lAk38kiSVPfWFvSdmw= -jasmine-core@^3.3: +jasmine-core@^3.3, jasmine-core@~3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-3.4.0.tgz#2a74618e966026530c3518f03e9f845d26473ce3" integrity sha512-HU/YxV4i6GcmiH4duATwAbJQMlE0MsDIR5XmSVxURxKHn3aGAdbY1/ZJFmVRbKtnLwIxxMJD7gYaPsypcbYimg== @@ -6131,7 +6140,7 @@ jasmine@2.8.0: glob "^7.0.6" jasmine-core "~2.8.0" -jasmine@^3.1.0, jasmine@~3.3.1: +jasmine@^3.1.0: version "3.3.1" resolved "https://registry.yarnpkg.com/jasmine/-/jasmine-3.3.1.tgz#d61bb1dd8888859bd11ea83074a78ee13d949905" integrity sha512-/vU3/H7U56XsxIXHwgEuWpCgQ0bRi2iiZeUpx7Nqo8n1TpoDHfZhkPIc7CO8I4pnMzYsi3XaSZEiy8cnTfujng== @@ -6139,6 +6148,14 @@ jasmine@^3.1.0, jasmine@~3.3.1: glob "^7.0.6" jasmine-core "~3.3.0" +jasmine@~3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/jasmine/-/jasmine-3.4.0.tgz#0fa68903ff0c9697459cd044b44f4dcef5ec8bdc" + integrity sha512-sR9b4n+fnBFDEd7VS2el2DeHgKcPiMVn44rtKFumq9q7P/t8WrxsVIZPob4UDdgcDNCwyDqwxCt4k9TDRmjPoQ== + dependencies: + glob "^7.1.3" + jasmine-core "~3.4.0" + jasminewd2@^2.1.0: version "2.2.0" resolved "https://registry.yarnpkg.com/jasminewd2/-/jasminewd2-2.2.0.tgz#e37cf0b17f199cce23bea71b2039395246b4ec4e"