diff --git a/internal_deps.bzl b/internal_deps.bzl index 5120e1b..c719660 100644 --- a/internal_deps.bzl +++ b/internal_deps.bzl @@ -4,68 +4,65 @@ Users should *not* need to install these. If users see a load() statement from these, that's a bug in our distribution. """ -load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") - -# Note: we don't use "maybe" because renovate doesn't understand the syntax, see -# https://github.com/renovatebot/renovate/pull/16003/ +load("@bazel_tools//tools/build_defs/repo:http.bzl", _http_archive = "http_archive") +load("@bazel_tools//tools/build_defs/repo:utils.bzl", "maybe") load("//lib:repositories.bzl", "register_jq_toolchains", "register_yq_toolchains") +# Don't wrap later calls with maybe() as that prevents renovate from parsing our deps +def http_archive(name, **kwargs): + maybe(_http_archive, name = name, **kwargs) + # buildifier: disable=unnamed-macro def bazel_lib_internal_deps(): "Fetch deps needed for local development" - if not native.existing_rule("build_bazel_integration_testing"): - http_archive( - name = "build_bazel_integration_testing", - urls = [ - "https://github.com/bazelbuild/bazel-integration-testing/archive/165440b2dbda885f8d1ccb8d0f417e6cf8c54f17.zip", - ], - strip_prefix = "bazel-integration-testing-165440b2dbda885f8d1ccb8d0f417e6cf8c54f17", - sha256 = "2401b1369ef44cc42f91dc94443ef491208dbd06da1e1e10b702d8c189f098e3", - ) + http_archive( + name = "build_bazel_integration_testing", + urls = [ + "https://github.com/bazelbuild/bazel-integration-testing/archive/165440b2dbda885f8d1ccb8d0f417e6cf8c54f17.zip", + ], + strip_prefix = "bazel-integration-testing-165440b2dbda885f8d1ccb8d0f417e6cf8c54f17", + sha256 = "2401b1369ef44cc42f91dc94443ef491208dbd06da1e1e10b702d8c189f098e3", + ) - if not native.existing_rule("io_bazel_rules_go"): - http_archive( - name = "io_bazel_rules_go", - sha256 = "2b1641428dff9018f9e85c0384f03ec6c10660d935b750e3fa1492a281a53b0f", - urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.29.0/rules_go-v0.29.0.zip", - "https://github.com/bazelbuild/rules_go/releases/download/v0.29.0/rules_go-v0.29.0.zip", - ], - ) + http_archive( + name = "io_bazel_rules_go", + sha256 = "2b1641428dff9018f9e85c0384f03ec6c10660d935b750e3fa1492a281a53b0f", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.29.0/rules_go-v0.29.0.zip", + "https://github.com/bazelbuild/rules_go/releases/download/v0.29.0/rules_go-v0.29.0.zip", + ], + ) - if not native.existing_rule("bazel_gazelle"): - http_archive( - name = "bazel_gazelle", - sha256 = "de69a09dc70417580aabf20a28619bb3ef60d038470c7cf8442fafcf627c21cb", - urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.24.0/bazel-gazelle-v0.24.0.tar.gz", - "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.24.0/bazel-gazelle-v0.24.0.tar.gz", - ], - ) + http_archive( + name = "bazel_gazelle", + sha256 = "de69a09dc70417580aabf20a28619bb3ef60d038470c7cf8442fafcf627c21cb", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.24.0/bazel-gazelle-v0.24.0.tar.gz", + "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.24.0/bazel-gazelle-v0.24.0.tar.gz", + ], + ) # Override bazel_skylib distribution to fetch sources instead # so that the gazelle extension is included # see https://github.com/bazelbuild/bazel-skylib/issues/250 - if not native.existing_rule("bazel_skylib"): - http_archive( - name = "bazel_skylib", - sha256 = "07b4117379dde7ab382345c3b0f5edfc6b7cff6c93756eac63da121e0bbcc5de", - strip_prefix = "bazel-skylib-1.1.1", - urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/archive/1.1.1.tar.gz", - "https://github.com/bazelbuild/bazel-skylib/archive/refs/tags/1.1.1.tar.gz", - ], - ) + http_archive( + name = "bazel_skylib", + sha256 = "07b4117379dde7ab382345c3b0f5edfc6b7cff6c93756eac63da121e0bbcc5de", + strip_prefix = "bazel-skylib-1.1.1", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/archive/1.1.1.tar.gz", + "https://github.com/bazelbuild/bazel-skylib/archive/refs/tags/1.1.1.tar.gz", + ], + ) - if not native.existing_rule("io_bazel_stardoc"): - http_archive( - name = "io_bazel_stardoc", - sha256 = "aa814dae0ac400bbab2e8881f9915c6f47c49664bf087c409a15f90438d2c23e", - urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/stardoc/releases/download/0.5.1/stardoc-0.5.1.tar.gz", - "https://github.com/bazelbuild/stardoc/releases/download/0.5.1/stardoc-0.5.1.tar.gz", - ], - ) + http_archive( + name = "io_bazel_stardoc", + sha256 = "aa814dae0ac400bbab2e8881f9915c6f47c49664bf087c409a15f90438d2c23e", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/stardoc/releases/download/0.5.1/stardoc-0.5.1.tar.gz", + "https://github.com/bazelbuild/stardoc/releases/download/0.5.1/stardoc-0.5.1.tar.gz", + ], + ) # Register toolchains for tests register_jq_toolchains() diff --git a/lib/repositories.bzl b/lib/repositories.bzl index b6a7f23..0d23a46 100644 --- a/lib/repositories.bzl +++ b/lib/repositories.bzl @@ -1,23 +1,24 @@ "Macros for loading dependencies and registering toolchains" -load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") - -# Note: we don't use "maybe" because renovate doesn't understand the syntax, see -# https://github.com/renovatebot/renovate/pull/16003/ +load("@bazel_tools//tools/build_defs/repo:http.bzl", _http_archive = "http_archive") +load("@bazel_tools//tools/build_defs/repo:utils.bzl", "maybe") load("//lib/private:jq_toolchain.bzl", "JQ_PLATFORMS", "jq_host_alias_repo", "jq_platform_repo", "jq_toolchains_repo", _DEFAULT_JQ_VERSION = "DEFAULT_JQ_VERSION") load("//lib/private:yq_toolchain.bzl", "YQ_PLATFORMS", "yq_host_alias_repo", "yq_platform_repo", "yq_toolchains_repo", _DEFAULT_YQ_VERSION = "DEFAULT_YQ_VERSION") +# Don't wrap later calls with maybe() as that prevents renovate from parsing our deps +def http_archive(name, **kwargs): + maybe(_http_archive, name = name, **kwargs) + def aspect_bazel_lib_dependencies(): "Load dependencies required by aspect rules" - if not native.existing_rule("bazel_skylib"): - http_archive( - name = "bazel_skylib", - sha256 = "c6966ec828da198c5d9adbaa94c05e3a1c7f21bd012a0b29ba8ddbccb2c93b0d", - urls = [ - "https://github.com/bazelbuild/bazel-skylib/releases/download/1.1.1/bazel-skylib-1.1.1.tar.gz", - "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.1.1/bazel-skylib-1.1.1.tar.gz", - ], - ) + http_archive( + name = "bazel_skylib", + sha256 = "c6966ec828da198c5d9adbaa94c05e3a1c7f21bd012a0b29ba8ddbccb2c93b0d", + urls = [ + "https://github.com/bazelbuild/bazel-skylib/releases/download/1.1.1/bazel-skylib-1.1.1.tar.gz", + "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.1.1/bazel-skylib-1.1.1.tar.gz", + ], + ) # Re-export the default versions DEFAULT_JQ_VERSION = _DEFAULT_JQ_VERSION