diff --git a/internal/node/node.bzl b/internal/node/node.bzl index 72c961102b..4c2b540651 100644 --- a/internal/node/node.bzl +++ b/internal/node/node.bzl @@ -23,6 +23,7 @@ a `module_name` attribute can be `require`d by that name. load("@rules_nodejs//nodejs:providers.bzl", "DirectoryFilePathInfo", "JSModuleInfo", "UserBuildSettingInfo") load("//:providers.bzl", "ExternalNpmPackageInfo", "JSNamedModuleInfo", "NodeRuntimeDepsInfo", "node_modules_aspect") load("//internal/common:expand_into_runfiles.bzl", "expand_location_into_runfiles") +load("//internal/common:is_js_file.bzl", "is_javascript_file") load("//internal/common:maybe_directory_file_path.bzl", "maybe_directory_file_path") load("//internal/common:module_mappings.bzl", "module_mappings_runtime_aspect") load("//internal/common:path_utils.bzl", "strip_external") @@ -361,8 +362,8 @@ if (process.cwd() !== __dirname) { executable = ctx.outputs.launcher_sh # syntax sugar: allows you to avoid repeating the entry point in data - # entry point is only needed in runfiles if it is a .js file - if len(ctx.files.entry_point) == 1 and ctx.files.entry_point[0].extension == "js": + # entry point is only needed in runfiles if it is a javascript file + if len(ctx.files.entry_point) == 1 and is_javascript_file(ctx.files.entry_point[0]): runfiles.extend(ctx.files.entry_point) return [ diff --git a/internal/node/test/esm/BUILD.bazel b/internal/node/test/esm/BUILD.bazel index 9609630185..a5258c96d6 100644 --- a/internal/node/test/esm/BUILD.bazel +++ b/internal/node/test/esm/BUILD.bazel @@ -3,7 +3,6 @@ load("@build_bazel_rules_nodejs//:index.bzl", "nodejs_binary") nodejs_binary( name = "has_deps", data = [ - "has-deps.mjs", "@fine_grained_deps_yarn//typescript", ], entry_point = ":has-deps.mjs", @@ -11,6 +10,5 @@ nodejs_binary( nodejs_binary( name = "no_deps", - data = ["no-deps.mjs"], entry_point = ":no-deps.mjs", )