Skip to content

Commit e418332

Browse files
committed
refactor(bazel): drop interop support for spec_bundling tooling
Remove interop support for spec_bundle tooling
1 parent 361ceb6 commit e418332

15 files changed

+789
-299
lines changed

WORKSPACE

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,3 +166,14 @@ esbuild_register_toolchains(
166166
name = "esbuild",
167167
esbuild_version = LATEST_ESBUILD_VERSION,
168168
)
169+
170+
http_archive(
171+
name = "aspect_rules_jasmine",
172+
sha256 = "0d2f9c977842685895020cac721d8cc4f1b37aae15af46128cf619741dc61529",
173+
strip_prefix = "rules_jasmine-2.0.0",
174+
url = "https://github.com/aspect-build/rules_jasmine/releases/download/v2.0.0/rules_jasmine-v2.0.0.tar.gz",
175+
)
176+
177+
load("@aspect_rules_jasmine//jasmine:dependencies.bzl", "rules_jasmine_dependencies")
178+
179+
rules_jasmine_dependencies()

bazel/pnpm-lock.yaml

Lines changed: 638 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

bazel/pnpm-workspace.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
packages:
2+
- .
3+
- spec-bundling/

bazel/setup_dependencies_1.bzl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ def setup_dependencies_1():
66
data = [
77
"@devinfra//bazel:package.json",
88
"@devinfra//bazel:pnpm-workspace.yaml",
9+
"@devinfra//bazel/spec-bundling:package.json",
910
],
1011
pnpm_lock = "@devinfra//bazel:pnpm-lock.yaml",
1112
)

bazel/spec-bundling/BUILD.bazel

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
load("@devinfra_npm//:defs.bzl", "npm_link_all_packages")
2+
13
package(default_visibility = ["//visibility:public"])
24

3-
exports_files(["esbuild.config-tmpl.mjs"])
5+
npm_link_all_packages()
46

57
# Make source files available for distribution via pkg_npm
68
filegroup(

bazel/spec-bundling/esbuild.config-tmpl.mjs

Lines changed: 0 additions & 63 deletions
This file was deleted.

bazel/spec-bundling/index.bzl

Lines changed: 36 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,38 @@
1-
"""Public API for rules related to test bundling."""
1+
load("@aspect_rules_esbuild//esbuild:defs.bzl", "esbuild")
2+
load("@devinfra//bazel/spec-bundling:spec-entrypoint.bzl", "spec_entrypoint")
23

3-
load("//bazel/spec-bundling:spec-entrypoint.bzl", _spec_entrypoint = "spec_entrypoint")
4-
load("//bazel/spec-bundling:spec-bundle.bzl", _spec_bundle = "spec_bundle")
4+
def spec_bundle(name, deps, srcs = [], bootstrap = [], testonly = True, config = {}, **kwargs):
5+
spec_entrypoint(
6+
name = "%s_entrypoint" % name,
7+
deps = deps,
8+
bootstrap = bootstrap,
9+
testonly = testonly,
10+
)
511

6-
spec_bundle = _spec_bundle
7-
spec_entrypoint = _spec_entrypoint
12+
esbuild(
13+
name = name,
14+
# Note: `deps` are added here to automatically collect transitive NPM
15+
# sources etc. and make them available for bundling.
16+
srcs = srcs + deps + [
17+
":%s_entrypoint" % name,
18+
],
19+
config = dict({
20+
# Bundling specs may result in classes being aliased to avoid collisions. e.g. when
21+
# everything is bundled into a single AMD bundle. To avoid test failures for assertions
22+
# on symbol names, we instruct ESBuild to keep original names. See:
23+
# https://esbuild.github.io/api/#keep-names.
24+
"keepNames": True,
25+
# Needed for ZoneJS async await
26+
"supported": {
27+
"async-await": False,
28+
},
29+
}, **config),
30+
testonly = testonly,
31+
bundle = True,
32+
format = "iife",
33+
sourcemap = "linked",
34+
platform = kwargs.pop("platform", "node"),
35+
entry_point = ":%s_entrypoint" % name,
36+
output = "%s.spec.js" % name,
37+
**kwargs
38+
)

bazel/spec-bundling/index_rjs.bzl

Lines changed: 0 additions & 51 deletions
This file was deleted.

bazel/spec-bundling/package.json

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"dependencies": {
3+
"@angular/compiler": "20.1.4",
4+
"@angular/core": "20.1.4",
5+
"@angular/platform-browser-dynamic": "20.1.4",
6+
"@types/jasmine": "5.1.8",
7+
"@types/jsdom": "21.1.7",
8+
"@types/node": "24.2.0",
9+
"jasmine-reporters": "2.5.2",
10+
"jasmine": "5.9.0",
11+
"jsdom": "26.1.0",
12+
"tinyglobby": "0.2.14",
13+
"zone.js": "0.15.1"
14+
}
15+
}

bazel/spec-bundling/spec-bundle.bzl

Lines changed: 0 additions & 112 deletions
This file was deleted.

0 commit comments

Comments
 (0)