From 4b0b5057779e0da0b116c21a4f2cd84b87b8e863 Mon Sep 17 00:00:00 2001 From: UebelAndre Date: Tue, 24 Mar 2026 04:30:39 -0700 Subject: [PATCH] Update shellcheck_aspect to use rules_shell providers --- MODULE.bazel | 2 +- shellcheck/internal/rules.bzl | 9 +++------ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/MODULE.bazel b/MODULE.bazel index 86dfa6a..8f52035 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -6,7 +6,7 @@ module( bazel_dep(name = "bazel_skylib", version = "1.8.2") bazel_dep(name = "platforms", version = "1.0.0") -bazel_dep(name = "rules_shell", version = "0.6.1") +bazel_dep(name = "rules_shell", version = "0.7.1") shellcheck = use_extension("//shellcheck/internal:extensions.bzl", "shellcheck") use_repo( diff --git a/shellcheck/internal/rules.bzl b/shellcheck/internal/rules.bzl index 99ad658..9864231 100644 --- a/shellcheck/internal/rules.bzl +++ b/shellcheck/internal/rules.bzl @@ -2,6 +2,8 @@ """ load("@bazel_skylib//rules:common_settings.bzl", "BuildSettingInfo") +load("@rules_shell//shell:sh_binary_info.bzl", "ShBinaryInfo") +load("@rules_shell//shell:sh_info.bzl", "ShInfo") load(":toolchain.bzl", "TOOLCHAIN_TYPE") _SHELL_CONTENT = """\ @@ -112,12 +114,6 @@ ShellcheckSrcsInfo = provider( ) def _shellcheck_srcs_aspect_impl(_target, ctx): - # TODO: Replace when a `rules_shell` provider is available - # https://github.com/bazelbuild/rules_shell/issues/16 - rule_name = ctx.rule.kind - if rule_name not in ["sh_binary", "sh_test", "sh_library"]: - return [] - srcs = getattr(ctx.rule.files, "srcs", []) source_paths = [src.dirname for src in srcs] @@ -243,4 +239,5 @@ shellcheck_aspect = aspect( }, toolchains = [TOOLCHAIN_TYPE], requires = [_shellcheck_srcs_aspect], + required_providers = [[ShInfo], [ShBinaryInfo]], )