Skip to content

Commit

Permalink
build: add strict_deps requirement for ts_project
Browse files Browse the repository at this point in the history
Setup requirement for strict_deps throughout repository to ensure that the only dependencies which are imported
are directly provided as dependencies within bazel.
  • Loading branch information
josephperrott authored and clydin committed Feb 19, 2025
1 parent fbef9a4 commit 68ef24d
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 0 deletions.
16 changes: 16 additions & 0 deletions WORKSPACE
Original file line number Diff line number Diff line change
Expand Up @@ -262,3 +262,19 @@ http_archive(
load("@aspect_rules_jasmine//jasmine:dependencies.bzl", "rules_jasmine_dependencies")

rules_jasmine_dependencies()

load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")

git_repository(
name = "devinfra",
commit = "0ad6a370f70638e785d6ef1f90dc6ede34684a47",
remote = "https://github.com/angular/dev-infra.git",
)

load("@devinfra//bazel:setup_dependencies_1.bzl", "setup_dependencies_1")

setup_dependencies_1()

load("@devinfra//bazel:setup_dependencies_2.bzl", "setup_dependencies_2")

setup_dependencies_2()
9 changes: 9 additions & 0 deletions tools/interop.bzl
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
load("@aspect_rules_js//js:providers.bzl", "JsInfo", "js_info")
load("@aspect_rules_ts//ts:defs.bzl", _ts_project = "ts_project")
load("@build_bazel_rules_nodejs//:providers.bzl", "DeclarationInfo", "JSEcmaScriptModuleInfo", "JSModuleInfo", "LinkablePackageInfo")
load("@devinfra//bazel/ts_project:index.bzl", "strict_deps_test")

def _ts_deps_interop_impl(ctx):
types = []
Expand Down Expand Up @@ -104,6 +105,7 @@ def ts_project(
tsconfig = None,
testonly = False,
visibility = None,
ignore_strict_deps = False,
**kwargs):
interop_deps = []

Expand Down Expand Up @@ -144,6 +146,13 @@ def ts_project(
**kwargs
)

if not ignore_strict_deps:
strict_deps_test(
name = "%s_strict_deps_test" % name,
srcs = kwargs.get("srcs", []),
deps = deps,
)

ts_project_module(
name = name,
testonly = testonly,
Expand Down

0 comments on commit 68ef24d

Please sign in to comment.