Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 68ef24d

Browse files
josephperrottclydin
authored andcommitted
build: add strict_deps requirement for ts_project
Setup requirement for strict_deps throughout repository to ensure that the only dependencies which are imported are directly provided as dependencies within bazel.
1 parent fbef9a4 commit 68ef24d

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

‎WORKSPACE‎

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,3 +262,19 @@ http_archive(
262262
load("@aspect_rules_jasmine//jasmine:dependencies.bzl", "rules_jasmine_dependencies")
263263

264264
rules_jasmine_dependencies()
265+
266+
load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
267+
268+
git_repository(
269+
name = "devinfra",
270+
commit = "0ad6a370f70638e785d6ef1f90dc6ede34684a47",
271+
remote = "https://github.com/angular/dev-infra.git",
272+
)
273+
274+
load("@devinfra//bazel:setup_dependencies_1.bzl", "setup_dependencies_1")
275+
276+
setup_dependencies_1()
277+
278+
load("@devinfra//bazel:setup_dependencies_2.bzl", "setup_dependencies_2")
279+
280+
setup_dependencies_2()

‎tools/interop.bzl‎

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
load("@aspect_rules_js//js:providers.bzl", "JsInfo", "js_info")
22
load("@aspect_rules_ts//ts:defs.bzl", _ts_project = "ts_project")
33
load("@build_bazel_rules_nodejs//:providers.bzl", "DeclarationInfo", "JSEcmaScriptModuleInfo", "JSModuleInfo", "LinkablePackageInfo")
4+
load("@devinfra//bazel/ts_project:index.bzl", "strict_deps_test")
45

56
def _ts_deps_interop_impl(ctx):
67
types = []
@@ -104,6 +105,7 @@ def ts_project(
104105
tsconfig = None,
105106
testonly = False,
106107
visibility = None,
108+
ignore_strict_deps = False,
107109
**kwargs):
108110
interop_deps = []
109111

@@ -144,6 +146,13 @@ def ts_project(
144146
**kwargs
145147
)
146148

149+
if not ignore_strict_deps:
150+
strict_deps_test(
151+
name = "%s_strict_deps_test" % name,
152+
srcs = kwargs.get("srcs", []),
153+
deps = deps,
154+
)
155+
147156
ts_project_module(
148157
name = name,
149158
testonly = testonly,

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /