diff --git a/WORKSPACE b/WORKSPACE index d60ffe2b9c..92cfc7b0a5 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 = "7c4a690268be97c96f04d505224ec4cb1ae53c2c2b68be495c9bd2634296a5cd", - urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.34.0/rules_nodejs-0.34.0.tar.gz"], + sha256 = "da217044d24abd16667324626a33581f3eaccabf80985b2688d6a08ed2f864be", + urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.37.1/rules_nodejs-0.37.1.tar.gz"], ) # Check the bazel version and download npm dependencies @@ -54,7 +54,8 @@ Try running `yarn bazel` instead. # - 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 # - 0.34.0 introduces protractor rule -check_rules_nodejs_version(minimum_version_string = "0.34.0") +# - 0.37.1 windows fixes +check_rules_nodejs_version(minimum_version_string = "0.37.1") # Setup the Node.js toolchain node_repositories( @@ -110,11 +111,12 @@ load("@io_bazel_rules_webtesting//web:repositories.bzl", "web_test_repositories" web_test_repositories() -# Temporary work-around for https://github.com/angular/angular/issues/28681 -# TODO(gregmagolan): go back to @io_bazel_rules_webtesting browser_repositories -load("//:browser_repositories.bzl", "browser_repositories") +load("@io_bazel_rules_webtesting//web/versioned:browsers-0.3.2.bzl", "browser_repositories") -browser_repositories() +browser_repositories( + chromium = True, + firefox = True, +) # Setup the rules_typescript tooolchain load("@npm_bazel_typescript//:index.bzl", "ts_setup_workspace") diff --git a/browser_repositories.bzl b/browser_repositories.bzl deleted file mode 100644 index 8c7b04462d..0000000000 --- a/browser_repositories.bzl +++ /dev/null @@ -1,114 +0,0 @@ -# Copyright 2018 The Bazel Authors. All rights reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -"""Pinned browser versions for karma testing -""" - -load("@io_bazel_rules_webtesting//web/internal:platform_http_file.bzl", "platform_http_file") - -def browser_repositories(): - """Load pinned rules_webtesting browser versions.""" - - platform_http_file( - name = "org_chromium_chromium", - amd64_sha256 = - "eb6754c7918da5eab42a42bbda7efdf7f1661eaa3802b8940841f0c2c312299f", - amd64_urls = [ - # Chromium 74.0.3729.0 (2019-03-08 snaphot 638880) - # https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html?prefix=Linux_x64/638880/ - # Current linux stable as of 2019-05-15 - # https://www.chromium.org/developers/calendar - "https://commondatastorage.googleapis.com/chromium-browser-snapshots/Linux_x64/638880/chrome-linux.zip", - ], - licenses = ["notice"], # BSD 3-clause (maybe more?) - macos_sha256 = - "c48bdffac6a91c85c17a848012b1a45fbf36e3a2d4aaac5b6ded8ac65b1d96e3", - macos_urls = [ - # Chromium 74.0.3729.0 (2019-03-08 snaphot 638880) - # https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html?prefix=Mac/638880/ - # Current mac stable as of 2019-05-15 - # https://www.chromium.org/developers/calendar - "https://commondatastorage.googleapis.com/chromium-browser-snapshots/Mac/638880/chrome-mac.zip", - ], - windows_sha256 = - "d1bb728118c12ea436d8ea07dba980789e7d860aa664dd1fad78bc20e8d9391c", - windows_urls = [ - # Chromium 66.0.3359.0 (2018-03-01 snaphot 540270) - # https://commondatastorage.googleapis.com/chromium-browser-snapshots/index.html?prefix=Win_x64/612439/ - # NOTE: There is an issue with chromium 68-71 with Windows: https://bugs.chromium.org/p/chromium/issues/detail?id=540270 - # and pinning to 72 is not possible as the archive name has changed to chrome-win.zip which breaks - # as the executable path the hard-coded in rules_webtesting and includes the archive name. - "https://commondatastorage.googleapis.com/chromium-browser-snapshots/Win_x64/540270/chrome-win32.zip", - ], - ) - - platform_http_file( - name = "org_chromium_chromedriver", - amd64_sha256 = - "ec9dbe021338f0befaecca702abc576cb7cc31a2f5a852c2c41e94721af5d3ad", - amd64_urls = [ - # ChromeDriver 74.0.3729.6 supports Chrome 74 - # http://chromedriver.chromium.org/downloads - "https://chromedriver.storage.googleapis.com/74.0.3729.6/chromedriver_linux64.zip", - ], - licenses = ["reciprocal"], # BSD 3-clause, ICU, MPL 1.1, libpng (BSD/MIT-like), Academic Free License v. 2.0, BSD 2-clause, MIT - macos_sha256 = - "b4b73681404d231d81a9b7ab9d4f0cb090f3e69240296eca2eb46e2629519152", - macos_urls = [ - # ChromeDriver 74.0.3729.6 supports Chrome 74 - # http://chromedriver.chromium.org/downloads - "https://chromedriver.storage.googleapis.com/74.0.3729.6/chromedriver_mac64.zip", - ], - windows_sha256 = - "a8fa028acebef7b931ef9cb093f02865f9f7495e49351f556e919f7be77f072e", - windows_urls = [ - # ChromeDriver 2.38 supports Chrome v65-67 - # http://chromedriver.chromium.org/downloads - "https://chromedriver.storage.googleapis.com/2.38/chromedriver_win32.zip", - ], - ) - - platform_http_file( - name = "org_mozilla_firefox", - amd64_sha256 = - "3a729ddcb1e0f5d63933177a35177ac6172f12edbf9fbbbf45305f49333608de", - amd64_urls = [ - "https://mirror.bazel.build/ftp.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/en-US/firefox-61.0.2.tar.bz2", - "https://ftp.mozilla.org/pub/firefox/releases/61.0.2/linux-x86_64/en-US/firefox-61.0.2.tar.bz2", - ], - licenses = ["reciprocal"], # MPL 2.0 - macos_sha256 = - "bf23f659ae34832605dd0576affcca060d1077b7bf7395bc9874f62b84936dc5", - macos_urls = [ - "https://mirror.bazel.build/ftp.mozilla.org/pub/firefox/releases/61.0.2/mac/en-US/Firefox%2061.0.2.dmg", - "https://ftp.mozilla.org/pub/firefox/releases/61.0.2/mac/en-US/Firefox%2061.0.2.dmg", - ], - ) - - platform_http_file( - name = "org_mozilla_geckodriver", - amd64_sha256 = - "c9ae92348cf00aa719be6337a608fae8304691a95668e8e338d92623ba9e0ec6", - amd64_urls = [ - "https://mirror.bazel.build/github.com/mozilla/geckodriver/releases/download/v0.21.0/geckodriver-v0.21.0-linux64.tar.gz", - "https://github.com/mozilla/geckodriver/releases/download/v0.21.0/geckodriver-v0.21.0-linux64.tar.gz", - ], - licenses = ["reciprocal"], # MPL 2.0 - macos_sha256 = - "ce4a3e9d706db94e8760988de1ad562630412fa8cf898819572522be584f01ce", - macos_urls = [ - "https://mirror.bazel.build/github.com/mozilla/geckodriver/releases/download/v0.21.0/geckodriver-v0.21.0-macos.tar.gz", - "https://github.com/mozilla/geckodriver/releases/download/v0.21.0/geckodriver-v0.21.0-macos.tar.gz", - ], - ) diff --git a/integration/bazel-schematics/yarn.lock b/integration/bazel-schematics/yarn.lock index 433e6ddaed..9aa6c33fb8 100644 --- a/integration/bazel-schematics/yarn.lock +++ b/integration/bazel-schematics/yarn.lock @@ -30,12 +30,12 @@ rxjs "6.4.0" "@angular/bazel@file:../../dist/packages-dist/bazel": - version "0.0.0" + version "9.0.0-next.6" dependencies: "@angular-devkit/architect" "^0.800.0-beta.15" "@angular-devkit/core" "^8.0.0-beta.15" "@angular-devkit/schematics" "^8.0.0-beta.15" - "@microsoft/api-extractor" "^7.0.21" + "@microsoft/api-extractor" "^7.3.9" "@schematics/angular" "^8.0.0-beta.15" "@types/node" "6.0.84" semver "^5.6.0" @@ -62,49 +62,63 @@ universal-analytics "^0.4.20" uuid "^3.3.2" -"@bazel/bazel-darwin_x64@0.26.1": - version "0.26.1" - resolved "https://registry.yarnpkg.com/@bazel/bazel-darwin_x64/-/bazel-darwin_x64-0.26.1.tgz#1b5c69b635e5c2a8c3090fa5f6bcb45735f06045" - integrity sha512-9VjrR+ce+iS9xS1lgeAo1RAPXlxCvez/r3smN1lP4s4YNF0s5LAT0cevIl6Zz2nwyEha/6JvY3v6Euemy36F0w== +"@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.26.1": - version "0.26.1" - resolved "https://registry.yarnpkg.com/@bazel/bazel-linux_x64/-/bazel-linux_x64-0.26.1.tgz#04dd194bdcd6b9d45bd865a9a60c280d0d600251" - integrity sha512-oZooDxI1C4p7o18zx2Uns2cK/NN2hgF2YSBKH0aVDPAAxQA85h+g124CWDEbsghOdRMSBM0Hd0SSeIqwZcqLSw== +"@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.26.1": - version "0.26.1" - resolved "https://registry.yarnpkg.com/@bazel/bazel-win32_x64/-/bazel-win32_x64-0.26.1.tgz#9351f07313173b1f98006da8131c94db7aa7c506" - integrity sha512-0FkOo8+bxw13X2m6ALhXX2241gG9ZXgcLu0E/IbCWy/TmOB5bR0Z73CslszWbXIldVYnANuhFmnkxIa745Du5Q== +"@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.26.1" - optionalDependencies: - "@bazel/bazel-darwin_x64" "0.26.1" - "@bazel/bazel-linux_x64" "0.26.1" - "@bazel/bazel-win32_x64" "0.26.1" - -"@microsoft/api-extractor@^7.0.21": - version "7.0.22" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.0.22.tgz#9c6eb0500168811ed14194de413ddd310622533a" - integrity sha512-1mNMbmUeqtjNmS9hgrONio2uRZL2eeZk39zCKq04ReImFXnMR+fnMTQG98B+SAkFFGJuOucwke5U0bgWnrG6kw== + version "0.28.1" dependencies: - "@microsoft/node-core-library" "3.12.0" - "@microsoft/ts-command-line" "4.2.3" - "@microsoft/tsdoc" "0.12.7" + "@bazel/hide-bazel-files" latest + optionalDependencies: + "@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@latest": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@bazel/hide-bazel-files/-/hide-bazel-files-0.37.1.tgz#70702139318996672d279024076427f2b8ab6879" + integrity sha512-9wDXQHG4MitPIFvQOKi1zFzSI79mzH5R3iWa/e/nuhD+uVfeOaoyAGTCiwxm13/sGt/Hjlx3vRb8WT7ucq0ouw== + +"@microsoft/api-extractor-model@7.4.1": + version "7.4.1" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.4.1.tgz#3376f72570d336960c9b7b0dd44c8a0dbbe34604" + integrity sha512-rBO/QbrOMCdL8e9qwhIu1aH4C5sKOnUO1YhEh3+kVieFzTjiRnync7ghyQOtCaCVl2VXtp4LuOIv02e82oRqUg== + dependencies: + "@microsoft/node-core-library" "3.14.2" + "@microsoft/tsdoc" "0.12.14" "@types/node" "8.5.8" - "@types/z-schema" "3.16.31" + +"@microsoft/api-extractor@^7.3.9": + version "7.4.2" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.4.2.tgz#440023cf05c69840e054cdb5f85cab9680227a40" + integrity sha512-O8OEaFvsvWEuwkOcVyWegIAFDY6TBZBvSIoOKLsSQYiQZtryGf13e2ym83iewhbUN7RmuOJtyQUKlBvcJbpgQA== + dependencies: + "@microsoft/api-extractor-model" "7.4.1" + "@microsoft/node-core-library" "3.14.2" + "@microsoft/ts-command-line" "4.2.8" + "@microsoft/tsdoc" "0.12.14" colors "~1.2.1" - lodash "~4.17.5" + lodash "~4.17.15" resolve "1.8.1" source-map "~0.6.1" - typescript "~3.1.6" - z-schema "~3.18.3" + typescript "~3.5.3" -"@microsoft/node-core-library@3.12.0": - version "3.12.0" - resolved "https://registry.yarnpkg.com/@microsoft/node-core-library/-/node-core-library-3.12.0.tgz#f9c27b8bb6b55d60b91d4e1962f42b03b9f8f47f" - integrity sha512-9T2dEXmmxZqnqcpHuIB8mTAOM/DNSi/QcAwKYDjvZvkd+PGT5lCUXjM9GL7SaR2NPa3UrWDGgFhNoqLqLfEPbw== +"@microsoft/node-core-library@3.14.2": + version "3.14.2" + resolved "https://registry.yarnpkg.com/@microsoft/node-core-library/-/node-core-library-3.14.2.tgz#255d421963f2d447a19f935e3c8eb3053e8e381b" + integrity sha512-bd8XhqhIvXsWg/SSNsZJdJxkN8Ucj7XKQkRe4cdYiKqpVdAREvW/shw8AoZIdgvjLI53029I/MO2Wn/AjGD3Jw== dependencies: "@types/fs-extra" "5.0.4" "@types/jju" "~1.4.0" @@ -115,20 +129,20 @@ jju "~1.4.0" z-schema "~3.18.3" -"@microsoft/ts-command-line@4.2.3": - version "4.2.3" - resolved "https://registry.yarnpkg.com/@microsoft/ts-command-line/-/ts-command-line-4.2.3.tgz#20d6a1684148b9fc0df25ee7335c3bb227d47d4f" - integrity sha512-SIs4q7RcG7efBbh5Ffrf6V4jVLxWihD4NDRY3+gPiOG8CYawBzE22tTEloZ1yj/FBvBZQkQ0GYwXoPhn6ElYXA== +"@microsoft/ts-command-line@4.2.8": + version "4.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/ts-command-line/-/ts-command-line-4.2.8.tgz#92f4c85d0a4b893090fe6605f255e272b270495e" + integrity sha512-K4sc8/OJ/y5uQPWJFACMExS2UIqF+t3vdQ2A9Mhl9tMsp70CXf0sp6Y9ENYju1K7XWwR5Clh8dkP2jO1Ntlg1g== dependencies: "@types/argparse" "1.0.33" "@types/node" "8.5.8" argparse "~1.0.9" colors "~1.2.1" -"@microsoft/tsdoc@0.12.7": - version "0.12.7" - resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.12.7.tgz#8fb4a9f4fdf01f1469c9fc54b0ad2d36ec57c25d" - integrity sha512-0bqNlQT8aR4Iq9xx/OsY579Zeqon9uTZDIuvl+XXu16TPPN2sASeKojwm366jA2MjgXd9iyTWpJM5/P1QJ4Dxg== +"@microsoft/tsdoc@0.12.14": + version "0.12.14" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.12.14.tgz#0e0810a0a174e50e22dfe8edb30599840712f22d" + integrity sha512-518yewjSga1jLdiLrcmpMFlaba5P+50b0TWNFUpC+SL9Yzf0kMi57qw+bMl+rQ08cGqH1vLx4eg9YFUbZXgZ0Q== "@schematics/angular@8.0.0-beta.15", "@schematics/angular@^8.0.0-beta.15": version "8.0.0-beta.15" @@ -902,11 +916,16 @@ lodash.isequal@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= -lodash@^4.17.11, lodash@~4.17.5: +lodash@^4.17.11: version "4.17.11" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== +lodash@~4.17.15: + version "4.17.15" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== + lru-cache@^4.1.2, lru-cache@^4.1.3: version "4.1.5" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" @@ -1641,10 +1660,10 @@ typedarray@^0.0.6: resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= -typescript@~3.1.6: - version "3.1.6" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.1.6.tgz#b6543a83cfc8c2befb3f4c8fba6896f5b0c9be68" - integrity sha512-tDMYfVtvpb96msS1lDX9MEdHrW4yOuZ4Kdc4Him9oU796XldPYF/t2+uKoX0BBa0hXXwDlqYQbXY5Rzjzc5hBA== +typescript@~3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.5.3.tgz#c830f657f93f1ea846819e929092f5fe5983e977" + integrity sha512-ACzBtm/PhXBDId6a6sDJfroT2pOWt/oOnk4/dElG5G33ZL776N3Y6/6bKZJBFpd+b05F3Ct9qDjMeJmRWtE2/g== unique-filename@^1.1.1: version "1.1.1" diff --git a/integration/bazel/WORKSPACE b/integration/bazel/WORKSPACE index 3c91650588..865cac877e 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 = "7c4a690268be97c96f04d505224ec4cb1ae53c2c2b68be495c9bd2634296a5cd", - urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.34.0/rules_nodejs-0.34.0.tar.gz"], + sha256 = "da217044d24abd16667324626a33581f3eaccabf80985b2688d6a08ed2f864be", + urls = ["https://github.com/bazelbuild/rules_nodejs/releases/download/0.37.1/rules_nodejs-0.37.1.tar.gz"], ) # Fetch sass rules for compiling sass files @@ -77,11 +77,12 @@ load("@io_bazel_rules_webtesting//web:repositories.bzl", "web_test_repositories" web_test_repositories() -# Temporary work-around for https://github.com/angular/angular/issues/28681 -# TODO(gregmagolan): go back to @io_bazel_rules_webtesting browser_repositories -load("@npm_bazel_karma//:browser_repositories.bzl", "browser_repositories") +load("@io_bazel_rules_webtesting//web/versioned:browsers-0.3.2.bzl", "browser_repositories") -browser_repositories() +browser_repositories( + chromium = True, + firefox = True, +) # Setup the rules_typescript tooolchain load("@npm_bazel_typescript//:index.bzl", "ts_setup_workspace") diff --git a/integration/bazel/package.json b/integration/bazel/package.json index 90cc8a16c4..b8fcb4c80f 100644 --- a/integration/bazel/package.json +++ b/integration/bazel/package.json @@ -23,9 +23,9 @@ "@angular/compiler": "file:../../dist/packages-dist/compiler", "@angular/compiler-cli": "file:../../dist/packages-dist/compiler-cli", "@bazel/bazel": "file:../../node_modules/@bazel/bazel", - "@bazel/karma": "0.34.0", - "@bazel/protractor": "0.34.0", - "@bazel/typescript": "0.34.0", + "@bazel/karma": "0.37.1", + "@bazel/protractor": "0.37.1", + "@bazel/typescript": "0.37.1", "@types/jasmine": "2.8.8", "typescript": "3.4.2" }, diff --git a/integration/bazel/src/BUILD.bazel b/integration/bazel/src/BUILD.bazel index af4ae8a8b6..55b4334142 100644 --- a/integration/bazel/src/BUILD.bazel +++ b/integration/bazel/src/BUILD.bazel @@ -47,6 +47,7 @@ ts_devserver( rollup_bundle( name = "bundle", + enable_code_splitting = False, entry_point = ":main.ts", deps = [ "//src", diff --git a/integration/bazel/src/hello-world/BUILD.bazel b/integration/bazel/src/hello-world/BUILD.bazel index 49e46b1245..db264f327a 100644 --- a/integration/bazel/src/hello-world/BUILD.bazel +++ b/integration/bazel/src/hello-world/BUILD.bazel @@ -55,6 +55,8 @@ ts_web_test_suite( # See https://github.com/bazelbuild/rules_typescript/issues/296 # "@io_bazel_rules_webtesting//browsers:firefox-local", ], + # rules_webtesting has a required_tag "native" for `chromium-local` browser + tags = ["native"], deps = [ ":test_lib", "//src:rxjs_umd_modules", diff --git a/integration/bazel/test/e2e/on-prepare.ts b/integration/bazel/test/e2e/on-prepare.ts index 973a41ed5e..525596a2ca 100644 --- a/integration/bazel/test/e2e/on-prepare.ts +++ b/integration/bazel/test/e2e/on-prepare.ts @@ -1,9 +1,10 @@ import { browser } from 'protractor'; import {OnPrepareConfig, runServer} from '@bazel/protractor/protractor-utils'; +import * as path from 'path'; export = function(config: OnPrepareConfig) { - const portFlag = /prodserver(\.exe)?$/.test(config.server) ? '-p' : '-port'; - return runServer(config.workspace, config.server, portFlag, []) + const isProdserver = path.basename(config.server, path.extname(config.server)) === 'prodserver'; + return runServer(config.workspace, config.server, isProdserver ? '-p' : '-port', []) .then(serverSpec => { const serverUrl = `http://localhost:${serverSpec.port}`; console.log(`Server has been started, starting tests against ${serverUrl}`); diff --git a/integration/bazel/yarn.lock b/integration/bazel/yarn.lock index cbb3e76c1a..d52d9aed26 100644 --- a/integration/bazel/yarn.lock +++ b/integration/bazel/yarn.lock @@ -30,17 +30,17 @@ rxjs "6.4.0" "@angular/animations@file:../../dist/packages-dist/animations": - version "8.2.0-next.2" + version "9.0.0-next.6" dependencies: tslib "^1.9.0" "@angular/bazel@file:../../dist/packages-dist/bazel": - version "8.2.0-next.2" + version "9.0.0-next.6" dependencies: "@angular-devkit/architect" "^0.800.0-beta.15" "@angular-devkit/core" "^8.0.0-beta.15" "@angular-devkit/schematics" "^8.0.0-beta.15" - "@microsoft/api-extractor" "^7.0.21" + "@microsoft/api-extractor" "^7.3.9" "@schematics/angular" "^8.0.0-beta.15" "@types/node" "6.0.84" semver "^5.6.0" @@ -57,12 +57,12 @@ parse5 "^5.0.0" "@angular/common@file:../../dist/packages-dist/common": - version "8.2.0-next.2" + version "9.0.0-next.6" dependencies: tslib "^1.9.0" "@angular/compiler-cli@file:../../dist/packages-dist/compiler-cli": - version "8.2.0-next.2" + version "9.0.0-next.6" 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.2.0-next.2" + version "9.0.0-next.6" dependencies: tslib "^1.9.0" "@angular/core@file:../../dist/packages-dist/core": - version "8.2.0-next.2" + version "9.0.0-next.6" dependencies: tslib "^1.9.0" "@angular/forms@file:../../dist/packages-dist/forms": - version "8.2.0-next.2" + version "9.0.0-next.6" dependencies: tslib "^1.9.0" @@ -98,17 +98,17 @@ tslib "^1.7.1" "@angular/platform-browser-dynamic@file:../../dist/packages-dist/platform-browser-dynamic": - version "8.2.0-next.2" + version "9.0.0-next.6" dependencies: tslib "^1.9.0" "@angular/platform-browser@file:../../dist/packages-dist/platform-browser": - version "8.2.0-next.2" + version "9.0.0-next.6" dependencies: tslib "^1.9.0" "@angular/router@file:../../dist/packages-dist/router": - version "8.2.0-next.2" + version "9.0.0-next.6" dependencies: tslib "^1.9.0" @@ -141,10 +141,10 @@ resolved "https://registry.yarnpkg.com/@bazel/hide-bazel-files/-/hide-bazel-files-0.34.0.tgz#368ea84db2756ff80ead23bb9eb179e9ed24b462" integrity sha512-suyO6cZf8iV6W2LkM1X1spWBt7CsRRXH7gU1wYNuAuHYkkfI0A6qj84yPiIXiOt/2G44kbioGyC1bUsI3fKv7A== -"@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== +"@bazel/karma@0.37.1": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@bazel/karma/-/karma-0.37.1.tgz#1c2ba937f8a2a442a629d4edd5219c3623192b12" + integrity sha512-LwcvQkZJvlSWf7jvZY48GG1PJFINDrKHp59hupK8tTWN726sAAoQzQUp8ZO0e/pHKGcl4X6AvqWw3+MvXsGS7Q== dependencies: jasmine-core "2.8.0" karma "^4.0.0" @@ -158,51 +158,51 @@ semver "5.6.0" tmp "0.0.33" -"@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== +"@bazel/protractor@0.37.1": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@bazel/protractor/-/protractor-0.37.1.tgz#932aaac40a4fc87a62e3ee52f9d748accf339032" + integrity sha512-kJNVOlPXhTIuZ7Hfjy4+QPSnj0lifvgw/mFUvP1C+XSlZGV9Jg2FfxX6t7gwl0AI6NXFb5JWOG/igL7W3dJ+hA== 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== +"@bazel/typescript@0.37.1": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-0.37.1.tgz#e740f311597dc0ed9d479ae7a88ea35cb2411e34" + integrity sha512-RrZ6rYZTQz0tSwGIGoKykNkhpu8xY3IOAzLA3cmtpNa0pCGEb+PpFBlh//wjcnP8jLg5vK2Qa6jh3SZ2pcYZbg== dependencies: protobufjs "6.8.8" semver "5.6.0" source-map-support "0.5.9" tsutils "2.27.2" -"@microsoft/api-extractor-model@7.2.0": - version "7.2.0" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.2.0.tgz#9d081c44f704acba773b18dc5849b59b8c353242" - integrity sha512-LYMnA1cB2W3YuCOAFruNvnQBZ64OzEnsHxzcxclBhTcUGag6NrtGnip90AVTvVzFlXDLoT7trvPEenlWflWZFQ== +"@microsoft/api-extractor-model@7.4.1": + version "7.4.1" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor-model/-/api-extractor-model-7.4.1.tgz#3376f72570d336960c9b7b0dd44c8a0dbbe34604" + integrity sha512-rBO/QbrOMCdL8e9qwhIu1aH4C5sKOnUO1YhEh3+kVieFzTjiRnync7ghyQOtCaCVl2VXtp4LuOIv02e82oRqUg== dependencies: - "@microsoft/node-core-library" "3.13.0" - "@microsoft/tsdoc" "0.12.9" + "@microsoft/node-core-library" "3.14.2" + "@microsoft/tsdoc" "0.12.14" "@types/node" "8.5.8" -"@microsoft/api-extractor@^7.0.21": - version "7.2.1" - resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.2.1.tgz#4aaf807a7bd63d2c8867cea1758b1de2ed88db81" - integrity sha512-ClUKSplAoeVMQntRR+bydS+MziJ8EK44RzELVvNpjtV7L2+1SalafsOw5qo4kL1qcsSh1ZFB2NoO9EzfDSP7/g== +"@microsoft/api-extractor@^7.3.9": + version "7.4.2" + resolved "https://registry.yarnpkg.com/@microsoft/api-extractor/-/api-extractor-7.4.2.tgz#440023cf05c69840e054cdb5f85cab9680227a40" + integrity sha512-O8OEaFvsvWEuwkOcVyWegIAFDY6TBZBvSIoOKLsSQYiQZtryGf13e2ym83iewhbUN7RmuOJtyQUKlBvcJbpgQA== dependencies: - "@microsoft/api-extractor-model" "7.2.0" - "@microsoft/node-core-library" "3.13.0" - "@microsoft/ts-command-line" "4.2.6" - "@microsoft/tsdoc" "0.12.9" + "@microsoft/api-extractor-model" "7.4.1" + "@microsoft/node-core-library" "3.14.2" + "@microsoft/ts-command-line" "4.2.8" + "@microsoft/tsdoc" "0.12.14" colors "~1.2.1" - lodash "~4.17.5" + lodash "~4.17.15" resolve "1.8.1" source-map "~0.6.1" - typescript "~3.4.3" + typescript "~3.5.3" -"@microsoft/node-core-library@3.13.0": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@microsoft/node-core-library/-/node-core-library-3.13.0.tgz#ba24e16182149dc817bf52a886d22aced5cd8070" - integrity sha512-mnsL/1ikVWHl8sPNssavaAgtUaIM3hkQ8zeySuApU5dNmsMPzovJPfx9m5JGiMvs1v5QNAIVeiS9jnWwe/7anw== +"@microsoft/node-core-library@3.14.2": + version "3.14.2" + resolved "https://registry.yarnpkg.com/@microsoft/node-core-library/-/node-core-library-3.14.2.tgz#255d421963f2d447a19f935e3c8eb3053e8e381b" + integrity sha512-bd8XhqhIvXsWg/SSNsZJdJxkN8Ucj7XKQkRe4cdYiKqpVdAREvW/shw8AoZIdgvjLI53029I/MO2Wn/AjGD3Jw== dependencies: "@types/fs-extra" "5.0.4" "@types/jju" "~1.4.0" @@ -213,20 +213,20 @@ jju "~1.4.0" z-schema "~3.18.3" -"@microsoft/ts-command-line@4.2.6": - version "4.2.6" - resolved "https://registry.yarnpkg.com/@microsoft/ts-command-line/-/ts-command-line-4.2.6.tgz#c88a5d474f8c4f411598cdf17d23c1b6090e8fe9" - integrity sha512-GFLPg9Z5yiNca3di/V6Zt3tAvj1de9EK0eL88tE+1eckQSH405UQcm7D+H8LbEhRpqpG+ZqN9LXCAEw4L5uchg== +"@microsoft/ts-command-line@4.2.8": + version "4.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/ts-command-line/-/ts-command-line-4.2.8.tgz#92f4c85d0a4b893090fe6605f255e272b270495e" + integrity sha512-K4sc8/OJ/y5uQPWJFACMExS2UIqF+t3vdQ2A9Mhl9tMsp70CXf0sp6Y9ENYju1K7XWwR5Clh8dkP2jO1Ntlg1g== dependencies: "@types/argparse" "1.0.33" "@types/node" "8.5.8" argparse "~1.0.9" colors "~1.2.1" -"@microsoft/tsdoc@0.12.9": - version "0.12.9" - resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.12.9.tgz#f92538bebf649b1b9d00bdd34a9c9971aef17d01" - integrity sha512-sDhulvuVk65eMppYOE6fr6mMI6RUqs53KUg9deYzNCBpP+2FhR0OFB5innEfdtSedk0LK+1Ppu6MxkfiNjS/Cw== +"@microsoft/tsdoc@0.12.14": + version "0.12.14" + resolved "https://registry.yarnpkg.com/@microsoft/tsdoc/-/tsdoc-0.12.14.tgz#0e0810a0a174e50e22dfe8edb30599840712f22d" + integrity sha512-518yewjSga1jLdiLrcmpMFlaba5P+50b0TWNFUpC+SL9Yzf0kMi57qw+bMl+rQ08cGqH1vLx4eg9YFUbZXgZ0Q== "@protobufjs/aspromise@^1.1.1", "@protobufjs/aspromise@^1.1.2": version "1.1.2" @@ -1953,11 +1953,16 @@ lodash.isequal@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= -lodash@^4.16.6, lodash@^4.17.11, lodash@~4.17.5: +lodash@^4.16.6, lodash@^4.17.11: version "4.17.11" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== +lodash@~4.17.15: + version "4.17.15" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" + integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== + log4js@^4.0.0: version "4.3.2" resolved "https://registry.yarnpkg.com/log4js/-/log4js-4.3.2.tgz#2c1d97c2ebeb5172d92df63ebf8750af4a1d91ea" @@ -3227,10 +3232,10 @@ typescript@3.4.2: resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.4.2.tgz#9ed4e6475d906f589200193be056f5913caed481" integrity sha512-Og2Vn6Mk7JAuWA1hQdDQN/Ekm/SchX80VzLhjKN9ETYrIepBFAd8PkOdOTK2nKt0FCkmMZKBJvQ1dV1gIxPu/A== -typescript@~3.4.3: - version "3.4.5" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.4.5.tgz#2d2618d10bb566572b8d7aad5180d84257d70a99" - integrity sha512-YycBxUb49UUhdNMU5aJ7z5Ej2XGmaIBL0x34vZ82fn3hGvD+bgrMrVDpatgz2f7YxUMJxMkbWxJZeAvDxVe7Vw== +typescript@~3.5.3: + version "3.5.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.5.3.tgz#c830f657f93f1ea846819e929092f5fe5983e977" + integrity sha512-ACzBtm/PhXBDId6a6sDJfroT2pOWt/oOnk4/dElG5G33ZL776N3Y6/6bKZJBFpd+b05F3Ct9qDjMeJmRWtE2/g== ultron@~1.1.0: version "1.1.1" diff --git a/package.json b/package.json index 73eb21b743..6fffe4f031 100644 --- a/package.json +++ b/package.json @@ -39,10 +39,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.34.0", - "@bazel/karma": "0.34.0", - "@bazel/protractor": "0.34.0", - "@bazel/typescript": "0.34.0", + "@bazel/jasmine": "0.37.1", + "@bazel/karma": "0.37.1", + "@bazel/protractor": "0.37.1", + "@bazel/typescript": "0.37.1", "@microsoft/api-extractor": "^7.3.9", "@schematics/angular": "^8.0.0-beta.15", "@types/angular": "^1.6.47", diff --git a/packages/bazel/src/builders/files/WORKSPACE.template b/packages/bazel/src/builders/files/WORKSPACE.template index 1c4238d3c6..626314fec9 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.34.0" -RULES_NODEJS_SHA256 = "7c4a690268be97c96f04d505224ec4cb1ae53c2c2b68be495c9bd2634296a5cd" +RULES_NODEJS_VERSION = "0.37.1" +RULES_NODEJS_SHA256 = "da217044d24abd16667324626a33581f3eaccabf80985b2688d6a08ed2f864be" http_archive( name = "build_bazel_rules_nodejs", sha256 = RULES_NODEJS_SHA256, @@ -79,8 +79,8 @@ rules_karma_dependencies() load("@io_bazel_rules_webtesting//web:repositories.bzl", "web_test_repositories") web_test_repositories() -load("@npm_bazel_karma//:browser_repositories.bzl", "browser_repositories") -browser_repositories() +load("@io_bazel_rules_webtesting//web/versioned:browsers-0.3.2.bzl", "browser_repositories") +browser_repositories(chromium = True, firefox = True) load("@npm_bazel_typescript//:index.bzl", "ts_setup_workspace") ts_setup_workspace() diff --git a/packages/bazel/src/builders/files/src/BUILD.bazel.template b/packages/bazel/src/builders/files/src/BUILD.bazel.template index bde8bd7c9d..afa6102806 100644 --- a/packages/bazel/src/builders/files/src/BUILD.bazel.template +++ b/packages/bazel/src/builders/files/src/BUILD.bazel.template @@ -47,6 +47,7 @@ ng_module( rollup_bundle( name = "bundle", + enable_code_splitting = False, entry_point = ":main.prod.ts", deps = [ "//src", @@ -145,6 +146,7 @@ ts_web_test_suite( browsers = [ "@io_bazel_rules_webtesting//browsers:chromium-local", ], + tags = ["native"], deps = [ ":rxjs_umd_modules", ":test_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 8371f20a86..b45a62d07f 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 @@ -7,6 +7,7 @@ const protractorUtils = require('@bazel/protractor/protractor-utils'); const protractor = require('protractor'); +const path = require('path'); module.exports = function(config) { // In this example, `@bazel/protractor/protractor-utils` is used to run @@ -14,8 +15,8 @@ module.exports = function(config) { // 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 // is the configured. - const portFlag = /prodserver(\.exe)?$/.test(config.server) ? '-p' : '-port'; - return protractorUtils.runServer(config.workspace, config.server, portFlag, []) + const isProdserver = path.basename(config.server, path.extname(config.server)) === 'prodserver'; + return protractorUtils.runServer(config.workspace, config.server, isProdserver ? '-p' : '-port', []) .then(serverSpec => { const serverUrl = `http://localhost:${serverSpec.port}`; protractor.browser.baseUrl = serverUrl; diff --git a/packages/bazel/src/schematics/ng-add/index.ts b/packages/bazel/src/schematics/ng-add/index.ts index a265935e5b..acd1c49a10 100755 --- a/packages/bazel/src/schematics/ng-add/index.ts +++ b/packages/bazel/src/schematics/ng-add/index.ts @@ -50,9 +50,9 @@ function addDevDependenciesToPackageJson(options: Schema) { '@angular/bazel': angularCoreVersion, '@bazel/bazel': '^0.28.1', '@bazel/ibazel': '^0.10.2', - '@bazel/karma': '0.34.0', - '@bazel/protractor': '0.34.0', - '@bazel/typescript': '0.34.0', + '@bazel/karma': '0.37.1', + '@bazel/protractor': '0.37.1', + '@bazel/typescript': '0.37.1', }; const recorder = host.beginUpdate(packageJson); diff --git a/packages/compiler-cli/integrationtest/test.js b/packages/compiler-cli/integrationtest/test.js index 030529c6e3..e8b9da6b83 100644 --- a/packages/compiler-cli/integrationtest/test.js +++ b/packages/compiler-cli/integrationtest/test.js @@ -29,8 +29,11 @@ function nodejs_repository() { } } -const ngcBin = require.resolve('./ngc_bin'); -const xi18nBin = require.resolve('./ng_xi18n'); +// Since rules nodejs 0.37.1, the nodejs_binary executable now has a different extension depending +// on platform +const nodejsBinaryExt = os.platform() === 'win32' ? '.bat' : '.sh'; +const ngcBin = require.resolve(`./ngc_bin${nodejsBinaryExt}`); +const xi18nBin = require.resolve(`./ng_xi18n${nodejsBinaryExt}`); const nodeBin = require.resolve(`${nodejs_repository()}/bin/node${(os.platform() === 'win32' ? '.cmd' : '')}`); const jasmineBin = require.resolve('npm/node_modules/jasmine/bin/jasmine.js'); diff --git a/packages/core/test/strict_types/BUILD.bazel b/packages/core/test/strict_types/BUILD.bazel index 3412b43966..ca42c4422d 100644 --- a/packages/core/test/strict_types/BUILD.bazel +++ b/packages/core/test/strict_types/BUILD.bazel @@ -7,7 +7,6 @@ ts_config( name = "tsconfig", src = "tsconfig.json", deps = [ - "//packages:tsconfig-build.json", "//packages:tsconfig-test", ], ) diff --git a/packages/zone.js/dist/BUILD.bazel b/packages/zone.js/dist/BUILD.bazel index dbbe26a88a..10f5b02f63 100644 --- a/packages/zone.js/dist/BUILD.bazel +++ b/packages/zone.js/dist/BUILD.bazel @@ -1,4 +1,4 @@ -load("@build_bazel_rules_nodejs//:defs.bzl", "rollup_bundle") +load("//tools:defaults.bzl", "rollup_bundle") load("//packages/zone.js:bundles.bzl", "ES2015_BUNDLES", "ES5_BUNDLES", "ES5_GLOBAL_BUNDLES") package(default_visibility = ["//packages/zone.js:__subpackages__"]) diff --git a/packages/zone.js/test/karma_test.bzl b/packages/zone.js/test/karma_test.bzl index a0ea9cb724..bb03db6de7 100644 --- a/packages/zone.js/test/karma_test.bzl +++ b/packages/zone.js/test/karma_test.bzl @@ -1,5 +1,4 @@ -load("//tools:defaults.bzl", "ts_library") -load("@build_bazel_rules_nodejs//:defs.bzl", "rollup_bundle") +load("//tools:defaults.bzl", "rollup_bundle", "ts_library") load("@npm_bazel_karma//:index.bzl", "karma_web_test_suite") def karma_test_prepare(name, env_srcs, env_deps, env_entry_point, test_srcs, test_deps, test_entry_point): diff --git a/tools/defaults.bzl b/tools/defaults.bzl index 5c4dae6d0f..592b8eefe6 100644 --- a/tools/defaults.bzl +++ b/tools/defaults.bzl @@ -1,6 +1,6 @@ """Re-export of some bazel rules with repository-wide defaults.""" -load("@build_bazel_rules_nodejs//:defs.bzl", _nodejs_binary = "nodejs_binary", _npm_package = "npm_package") +load("@build_bazel_rules_nodejs//:defs.bzl", _nodejs_binary = "nodejs_binary", _npm_package = "npm_package", _rollup_bundle = "rollup_bundle") load("@npm_bazel_jasmine//:index.bzl", _jasmine_node_test = "jasmine_node_test") load("@npm_bazel_karma//:index.bzl", _karma_web_test = "karma_web_test", _karma_web_test_suite = "karma_web_test_suite", _ts_web_test = "ts_web_test", _ts_web_test_suite = "ts_web_test_suite") load("@npm_bazel_typescript//:index.bzl", _ts_library = "ts_library") @@ -187,6 +187,12 @@ def ts_web_test_suite(bootstrap = [], deps = [], runtime_deps = [], **kwargs): "//tools/testing:browser", ] + runtime_deps + tags = kwargs.pop("tags", []) + + # rules_webtesting has a required_tag "native" for `chromium-local` browser + if not "native" in tags: + tags = tags + ["native"] + _ts_web_test_suite( runtime_deps = local_runtime_deps, bootstrap = bootstrap, @@ -202,6 +208,7 @@ def ts_web_test_suite(bootstrap = [], deps = [], runtime_deps = [], **kwargs): # "@io_bazel_rules_webtesting//browsers:firefox-local", # TODO(alexeagle): add remote browsers on SauceLabs ], + tags = tags, **kwargs ) @@ -240,6 +247,12 @@ def karma_web_test_suite(bootstrap = [], deps = [], **kwargs): "//tools/rxjs:rxjs_umd_modules", ] + deps + tags = kwargs.pop("tags", []) + + # rules_webtesting has a required_tag "native" for `chromium-local` browser + if not "native" in tags: + tags = tags + ["native"] + _karma_web_test_suite( bootstrap = bootstrap, deps = local_deps, @@ -254,6 +267,7 @@ def karma_web_test_suite(bootstrap = [], deps = [], **kwargs): # "@io_bazel_rules_webtesting//browsers:firefox-local", # TODO(alexeagle): add remote browsers on SauceLabs ], + tags = tags, **kwargs ) @@ -295,3 +309,12 @@ def ng_rollup_bundle(deps = [], **kwargs): deps = deps, **kwargs ) + +def rollup_bundle(**kwargs): + """Default values for rollup_bundle""" + _rollup_bundle( + # code-splitting is turned on by default in nodejs rules 0.35.0 + # we want to default to remain off + enable_code_splitting = False, + **kwargs + ) diff --git a/tools/rollup_bundle_commonjs_ignoreGlobal.patch b/tools/rollup_bundle_commonjs_ignoreGlobal.patch index 5a0ebecd8b..056c6ea0b6 100644 --- a/tools/rollup_bundle_commonjs_ignoreGlobal.patch +++ b/tools/rollup_bundle_commonjs_ignoreGlobal.patch @@ -1,15 +1,13 @@ diff --git a/internal/rollup/rollup.config.js b/internal/rollup/rollup.config.js -index 720b5f6..cbfa99c 100644 +index 5e4e0aa..fe2848c 100644 --- a/internal/rollup/rollup.config.js +++ b/internal/rollup/rollup.config.js -@@ -189,7 +189,9 @@ const config = { +@@ -173,7 +173,7 @@ const config = { // with the amd plugin. include: /\.ngfactory\.js$/i, }), -- commonjs(), -+ commonjs({ -+ ignoreGlobal: true, -+ }), - { +- commonjs(), { ++ commonjs({ignoreGlobal: true}), { name: 'notResolved', resolveId: notResolved, + }, diff --git a/yarn.lock b/yarn.lock index fcaffc8016..c2f820635f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -150,19 +150,19 @@ resolved "https://registry.yarnpkg.com/@bazel/ibazel/-/ibazel-0.10.3.tgz#2e2b8a1d3e885946eac41db2b1aa6801fb319887" integrity sha512-v1nXbMTHVlMM4z4uWp6XiRoHAyUlYggF1SOboLLWRp0+D22kWixqArWqnozLw2mOtnxr97BdLjluWiho6A8Hjg== -"@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== +"@bazel/jasmine@0.37.1": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@bazel/jasmine/-/jasmine-0.37.1.tgz#e5111f4f913b542cbfad767e0f903be026246c5a" + integrity sha512-EQJ2bbmF3w+BeoCMEDY8mKd5lrVuZ4tEc1wqth4Jl2UIYwyEepDAKVMiEeM+seXxmzqle38ksdsf7uSUWMjthA== dependencies: jasmine "~3.4.0" jasmine-core "~3.4.0" v8-coverage "1.0.9" -"@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== +"@bazel/karma@0.37.1": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@bazel/karma/-/karma-0.37.1.tgz#1c2ba937f8a2a442a629d4edd5219c3623192b12" + integrity sha512-LwcvQkZJvlSWf7jvZY48GG1PJFINDrKHp59hupK8tTWN726sAAoQzQUp8ZO0e/pHKGcl4X6AvqWw3+MvXsGS7Q== dependencies: jasmine-core "2.8.0" karma "^4.0.0" @@ -176,17 +176,17 @@ semver "5.6.0" tmp "0.0.33" -"@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== +"@bazel/protractor@0.37.1": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@bazel/protractor/-/protractor-0.37.1.tgz#932aaac40a4fc87a62e3ee52f9d748accf339032" + integrity sha512-kJNVOlPXhTIuZ7Hfjy4+QPSnj0lifvgw/mFUvP1C+XSlZGV9Jg2FfxX6t7gwl0AI6NXFb5JWOG/igL7W3dJ+hA== 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== +"@bazel/typescript@0.37.1": + version "0.37.1" + resolved "https://registry.yarnpkg.com/@bazel/typescript/-/typescript-0.37.1.tgz#e740f311597dc0ed9d479ae7a88ea35cb2411e34" + integrity sha512-RrZ6rYZTQz0tSwGIGoKykNkhpu8xY3IOAzLA3cmtpNa0pCGEb+PpFBlh//wjcnP8jLg5vK2Qa6jh3SZ2pcYZbg== dependencies: protobufjs "6.8.8" semver "5.6.0"