build(bazel): do not build rxjs from source under Bazel (#28720)

PR Close #28720
This commit is contained in:
Greg Magolan
2019-02-13 16:31:29 -08:00
committed by Igor Minar
parent eb39633823
commit 25aae64274
105 changed files with 366 additions and 146 deletions

View File

@ -25,7 +25,6 @@ ts_library(
"@ngdeps//@angular-devkit/architect",
"@ngdeps//@angular-devkit/core",
"@ngdeps//@types/node",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -28,13 +28,6 @@ http_archive(
strip_prefix = "angular-%s" % ANGULAR_VERSION,
)
# RxJS
RXJS_VERSION = "<%= RXJS_VERSION %>"
http_archive(
name = "rxjs",
url = "https://registry.yarnpkg.com/rxjs/-/rxjs-%s.tgz" % RXJS_VERSION,
strip_prefix = "package/src",
)
<% if (sass) { %>
# Rules for compiling sass
RULES_SASS_VERSION = "<%= RULES_SASS_VERSION %>"

View File

@ -7,6 +7,15 @@ load("@build_bazel_rules_nodejs//internal/web_package:web_package.bzl", "web_pac
load("@build_bazel_rules_typescript//:defs.bzl", "ts_devserver", "ts_library")
<% if (sass) { %>load("@io_bazel_rules_sass//:defs.bzl", "multi_sass_binary")
filegroup(
name = "rxjs_umd_modules",
srcs = [
# do not sort
"@npm//node_modules/rxjs:bundles/rxjs.umd.js",
":rxjs_shims.js",
],
)
multi_sass_binary(
name = "styles",
srcs = glob(["**/*.scss"]),
@ -32,13 +41,17 @@ ng_module(
"@angular//packages/platform-browser",<% if (routing) { %>
"@angular//packages/router",<% } %>
"@npm//@types",
"@npm//rxjs",
],
)
rollup_bundle(
name = "bundle",
entry_point = "src/main.prod",
deps = ["//src"],
deps = [
"//src",
"@npm//rxjs",
],
)
web_package(
@ -63,15 +76,14 @@ history_server(
ts_devserver(
name = "devserver",
port = 4200,
additional_root_paths = [
"npm/node_modules/zone.js/dist",
"npm/node_modules/tslib",
],
entry_module = "<%= utils.underscore(name) %>/src/main.dev",
serving_path = "/bundle.min.js",
scripts = [
"@npm//node_modules/tslib:tslib.js",
":rxjs_umd_modules",
],
static_files = [
"@npm//node_modules/zone.js:dist/zone.min.js",
"@npm//node_modules/tslib:tslib.js",
],
index_html = "index.html",
deps = [":src"],
@ -116,6 +128,7 @@ ts_web_test_suite(
"@io_bazel_rules_webtesting//browsers:chromium-local",
],
deps = [
":rxjs_umd_modules",
":test_lib",
"@npm//karma-jasmine",
],

View File

@ -0,0 +1,32 @@
/**
* @fileoverview Provides named UMD shims for `rxjs/operators` and `rxjs/testing`.
* This file should be included in the "scripts" of a "ts_devserver"
* rule and the "deps" of a "ts_web_test_suite" rule.
*/
// rxjs/operators
(function(factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
} else if (typeof define === 'function' && define.amd) {
define('rxjs/operators', ['exports', 'rxjs'], factory);
}
})(function(exports, rxjs) {
'use strict';
Object.keys(rxjs.operators).forEach(function(key) { exports[key] = rxjs.operators[key]; });
Object.defineProperty(exports, '__esModule', {value: true});
});
// rxjs/testing
(function(factory) {
if (typeof module === 'object' && typeof module.exports === 'object') {
var v = factory(require, exports);
if (v !== undefined) module.exports = v;
} else if (typeof define === 'function' && define.amd) {
define('rxjs/testing', ['exports', 'rxjs'], factory);
}
})(function(exports, rxjs) {
'use strict';
Object.keys(rxjs.testing).forEach(function(key) { exports[key] = rxjs.testing[key]; });
Object.defineProperty(exports, '__esModule', {value: true});
});

View File

@ -94,7 +94,6 @@ export default function(options: BazelWorkspaceOptions): Rule {
'RULES_NODEJS_VERSION': '0.18.6',
'RULES_NODEJS_SHA256': '1416d03823fed624b49a0abbd9979f7c63bbedfd37890ddecedd2fe25cccebc6',
'ANGULAR_VERSION': existingVersions.Angular || clean(latestVersions.Angular),
'RXJS_VERSION': existingVersions.RxJs || clean(latestVersions.RxJs),
// TODO(kyliau): Consider moving this to latest-versions.ts
'RULES_SASS_VERSION': '1.17.0',
};

View File

@ -12,7 +12,7 @@ ng_module(
),
deps = [
"//packages/core",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -15,6 +15,6 @@ ng_module(
deps = [
"//packages/common",
"//packages/core",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -11,8 +11,7 @@ ts_library(
"//packages/common/http/testing",
"//packages/core",
"//packages/core/testing",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -15,6 +15,6 @@ ng_module(
deps = [
"//packages/common/http",
"//packages/core",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -9,6 +9,7 @@ ts_library(
deps = [
"//packages/common/http",
"//packages/common/http/testing",
"@ngdeps//rxjs",
],
)

View File

@ -6,6 +6,8 @@
* found in the LICENSE file at https://angular.io/license
*/
/// <reference types="rxjs" />
import {HttpClient} from '@angular/common/http';
import {HttpClientTestingBackend} from '@angular/common/http/testing/src/backend';

View File

@ -10,6 +10,6 @@ ng_module(
deps = [
"//packages/common",
"//packages/core",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -18,6 +18,6 @@ ng_module(
"//packages/platform-server",
"//packages/router",
"@ngdeps//reflect-metadata",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -12,6 +12,6 @@ ng_module(
module_name = "lib1_built",
deps = [
"//packages/core",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -13,6 +13,6 @@ ng_module(
deps = [
"//packages/compiler-cli/integrationtest/bazel/injectable_def/lib1",
"//packages/core",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -14,6 +14,6 @@ ng_module(
tags = ["ivy-only"],
deps = [
"//packages/core",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -92,6 +92,7 @@ jasmine_node_test(
"//packages/core",
"//tools/testing:node",
"@ngdeps//minimist",
"@ngdeps//rxjs",
"@ngdeps//tsickle",
],
)

View File

@ -17,9 +17,8 @@ ng_module(
"//packages/core/src/interface",
"//packages/core/src/reflection",
"//packages/core/src/util",
"@ngdeps//rxjs",
"@ngdeps//zone.js",
"@rxjs",
"@rxjs//operators",
],
)

View File

@ -15,7 +15,6 @@ ts_library(
deps = [
"//packages/core/src/interface",
"//packages/core/src/util",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -14,7 +14,6 @@ ts_library(
),
deps = [
"//packages/core/src/interface",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -31,9 +31,8 @@ ts_library(
"//packages/private/testing",
"//packages/router",
"//packages/router/testing",
"@ngdeps//rxjs",
"@ngdeps//zone.js",
"@rxjs",
"@rxjs//operators",
],
)

View File

@ -32,6 +32,7 @@ ng_rollup_bundle(
deps = [
":animation_world",
"//packages/core",
"@ngdeps//rxjs",
],
)

View File

@ -33,6 +33,7 @@ ng_rollup_bundle(
deps = [
":cyclic_import",
"//packages/core",
"@ngdeps//rxjs",
],
)

View File

@ -30,6 +30,7 @@ ng_rollup_bundle(
deps = [
":hello_world",
"//packages/core",
"@ngdeps//rxjs",
],
)

View File

@ -24,6 +24,7 @@ ng_rollup_bundle(
deps = [
":hello_world_i18n",
"//packages/core",
"@ngdeps//rxjs",
],
)

View File

@ -31,6 +31,7 @@ ng_rollup_bundle(
":hello_world",
"//packages/core",
"//packages/platform-browser",
"@ngdeps//rxjs",
],
)

View File

@ -32,6 +32,7 @@ ng_rollup_bundle(
deps = [
":injection",
"//packages/core",
"@ngdeps//rxjs",
],
)

View File

@ -35,6 +35,7 @@ ng_rollup_bundle(
"//packages/common",
"//packages/core",
"//packages/core/test/bundling/util:reflect_metadata",
"@ngdeps//rxjs",
],
)

View File

@ -37,6 +37,7 @@ ng_rollup_bundle(
"//packages/common",
"//packages/core",
"//packages/core/test/bundling/util:reflect_metadata",
"@ngdeps//rxjs",
],
)

View File

@ -38,6 +38,7 @@ ng_rollup_bundle(
"//packages/core/test/bundling/util:reflect_metadata",
"//packages/platform-browser",
"//packages/platform-browser-dynamic",
"@ngdeps//rxjs",
],
)

View File

@ -30,6 +30,7 @@ ts_library(
"//packages/platform-browser/animations",
"//packages/platform-browser/testing",
"//packages/private/testing",
"@ngdeps//rxjs",
],
)

View File

@ -6,6 +6,8 @@
* found in the LICENSE file at https://angular.io/license
*/
/// <reference types="rxjs" />
import {EventEmitter} from '@angular/core';
import {defineComponent, defineDirective} from '../../src/render3/index';

View File

@ -6,6 +6,8 @@
* found in the LICENSE file at https://angular.io/license
*/
/// <reference types="rxjs" />
import {EventEmitter} from '@angular/core';
import {defineComponent, defineDirective} from '../../src/render3/index';

View File

@ -6,6 +6,8 @@
* found in the LICENSE file at https://angular.io/license
*/
/// <reference types="rxjs" />
import {NgForOfContext} from '@angular/common';
import {ElementRef, QueryList, TemplateRef, ViewContainerRef} from '@angular/core';

View File

@ -13,7 +13,7 @@ ng_module(
deps = [
"//packages/core",
"//packages/platform-browser",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -14,7 +14,7 @@ ts_library(
"//packages/common",
"//packages/core",
"@ngdeps//@angular-devkit/schematics",
"@rxjs",
"@ngdeps//rxjs",
],
)
@ -31,8 +31,7 @@ ts_library(
"//packages/common",
"//packages/core",
"@ngdeps//@angular-devkit/schematics",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -14,7 +14,7 @@ ts_library(
"//packages/platform-browser-dynamic",
"//packages/platform-browser-dynamic/testing",
"//packages/platform-browser/testing",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -18,7 +18,7 @@ ng_module(
"//packages/platform-browser",
"//packages/platform-browser-dynamic",
"//packages/router",
"@rxjs",
"@ngdeps//rxjs",
],
)
@ -40,7 +40,10 @@ ts_devserver(
entry_module = "@angular/examples/common/main",
index_html = "//packages/examples:index.html",
port = 4200,
scripts = ["@ngdeps//node_modules/tslib:tslib.js"],
scripts = [
"@ngdeps//node_modules/tslib:tslib.js",
"//tools/rxjs:rxjs_umd_modules",
],
static_files = [
"@ngdeps//node_modules/zone.js:dist/zone.js",
# This is needed because the "ngComponentOutlet" test uses the JIT compiler

View File

@ -22,6 +22,7 @@ ng_module(
"//packages/platform-browser-dynamic",
"//packages/platform-browser/animations",
"//packages/router",
"@ngdeps//rxjs",
],
)
@ -42,7 +43,10 @@ ts_devserver(
entry_module = "@angular/examples/core/main",
index_html = "//packages/examples:index.html",
port = 4200,
scripts = ["@ngdeps//node_modules/tslib:tslib.js"],
scripts = [
"@ngdeps//node_modules/tslib:tslib.js",
"//tools/rxjs:rxjs_umd_modules",
],
static_files = [
"@ngdeps//node_modules/zone.js:dist/zone.js",
"@ngdeps//node_modules/zone.js:dist/task-tracking.js",

View File

@ -18,6 +18,7 @@ ng_module(
"//packages/platform-browser",
"//packages/platform-browser-dynamic",
"//packages/router",
"@ngdeps//rxjs",
],
)
@ -39,7 +40,10 @@ ts_devserver(
entry_module = "@angular/examples/forms/main",
index_html = "//packages/examples:index.html",
port = 4200,
scripts = ["@ngdeps//node_modules/tslib:tslib.js"],
scripts = [
"@ngdeps//node_modules/tslib:tslib.js",
"//tools/rxjs:rxjs_umd_modules",
],
static_files = [
"@ngdeps//node_modules/zone.js:dist/zone.js",
],

View File

@ -48,7 +48,10 @@ def create_upgrade_example_targets(name, srcs, e2e_srcs, entry_module, assets =
"@ngdeps//node_modules/reflect-metadata:Reflect.js",
],
index_html = "//packages/examples:index.html",
scripts = ["@ngdeps//node_modules/tslib:tslib.js"],
scripts = [
"@ngdeps//node_modules/tslib:tslib.js",
"//tools/rxjs:rxjs_umd_modules",
],
deps = [":%s_sources" % name],
data = assets,
)

View File

@ -13,7 +13,7 @@ ng_module(
deps = [
"//packages/core",
"//packages/platform-browser",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -11,8 +11,7 @@ ts_library(
"//packages/platform-browser",
"//packages/platform-browser/testing",
"//packages/private/testing",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -13,7 +13,7 @@ ng_module(
deps = [
"//packages/core",
"//packages/platform-browser",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -11,7 +11,7 @@ ts_library(
"//packages/http/testing",
"//packages/platform-browser",
"//packages/platform-browser/testing",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -10,6 +10,6 @@ ng_module(
deps = [
"//packages/core",
"//packages/http",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -12,6 +12,7 @@ ls_rollup_bundle(
visibility = ["//packages/language-service:__pkg__"],
deps = [
"//packages/language-service",
"@ngdeps//rxjs",
"@ngdeps//tslib",
],
)

View File

@ -18,7 +18,7 @@ ts_library(
"//packages/platform-browser/animations",
"//packages/platform-browser/testing",
"//packages/private/testing",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -23,7 +23,7 @@ ts_library(
"//packages/platform-browser/animations",
"//packages/platform-browser/testing",
"//packages/private/testing",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -12,6 +12,6 @@ ng_module(
"//packages/core/testing",
"//packages/platform-browser",
"@ngdeps//@types/jasmine",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -21,8 +21,8 @@ ng_module(
"//packages/platform-browser-dynamic",
"//packages/platform-browser/animations",
"@ngdeps//@types/node",
"@ngdeps//rxjs",
"@ngdeps//zone.js",
"@rxjs",
],
)

View File

@ -18,8 +18,7 @@ ts_library(
"//packages/platform-browser",
"//packages/platform-server",
"//packages/private/testing",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -16,6 +16,7 @@ ng_module(
"//packages/compiler",
"//packages/core",
"//packages/platform-browser",
"@ngdeps//rxjs",
],
)

View File

@ -14,8 +14,7 @@ ng_module(
"//packages/common",
"//packages/core",
"//packages/platform-browser",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -15,9 +15,7 @@ ts_library(
"//packages/private/testing",
"//packages/router",
"//packages/router/testing",
"@rxjs",
"@rxjs//operators",
"@rxjs//testing",
"@ngdeps//rxjs",
],
)

View File

@ -7,7 +7,7 @@ ng_module(
deps = [
"//packages/core",
"//packages/router",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -12,5 +12,6 @@ ng_module(
"//packages/common/testing",
"//packages/core",
"//packages/router",
"@ngdeps//rxjs",
],
)

View File

@ -13,8 +13,7 @@ ng_module(
deps = [
"//packages/common",
"//packages/core",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -12,8 +12,7 @@ ts_library(
"//packages/service-worker/testing",
"//packages/service-worker/worker",
"//packages/service-worker/worker/testing",
"@rxjs",
"@rxjs//operators",
"@ngdeps//rxjs",
],
)

View File

@ -8,6 +8,6 @@ ng_module(
srcs = glob(["**/*.ts"]),
deps = [
"//packages/core",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -10,6 +10,6 @@ ts_library(
"//packages:types",
"//packages/core",
"//packages/service-worker/worker",
"@rxjs",
"@ngdeps//rxjs",
],
)

View File

@ -13,7 +13,7 @@ ts_library(
"//packages/platform-browser/testing",
"//packages/upgrade",
"//packages/upgrade/static",
"@rxjs",
"@ngdeps//rxjs",
],
)