diff --git a/.github/workflows/dismiss_approvals.yml b/.github/workflows/dismiss_approvals.yml index 8cb5f574853..9ae4b551b47 100644 --- a/.github/workflows/dismiss_approvals.yml +++ b/.github/workflows/dismiss_approvals.yml @@ -15,7 +15,7 @@ jobs: egress-policy: audit - name: Run BCR PR Reviewer - uses: bazelbuild/continuous-integration/actions/bcr-pr-reviewer@68dea4fe63a2ad44caaa8f3c44df19094b3dd395 # master + uses: bazelbuild/continuous-integration/actions/bcr-pr-reviewer@ecb81a9f161e6a560633222436406e41b93f6991 # master with: # This token needs to be updated annually on Feb 05. token: ${{ secrets.BCR_PR_REVIEW_HELPER_TOKEN }} diff --git a/.github/workflows/notify_maintainers.yml b/.github/workflows/notify_maintainers.yml index a811c1cca9f..f132b11201b 100644 --- a/.github/workflows/notify_maintainers.yml +++ b/.github/workflows/notify_maintainers.yml @@ -16,7 +16,7 @@ jobs: egress-policy: audit - name: Run BCR PR Reviewer - uses: bazelbuild/continuous-integration/actions/bcr-pr-reviewer@68dea4fe63a2ad44caaa8f3c44df19094b3dd395 # master + uses: bazelbuild/continuous-integration/actions/bcr-pr-reviewer@ecb81a9f161e6a560633222436406e41b93f6991 # master with: # This token needs to be updated annually on Feb 05. token: ${{ secrets.BCR_PR_REVIEW_HELPER_TOKEN }} diff --git a/.github/workflows/review_prs.yml b/.github/workflows/review_prs.yml index 0e0048f7531..61fb5eea97a 100644 --- a/.github/workflows/review_prs.yml +++ b/.github/workflows/review_prs.yml @@ -16,7 +16,7 @@ jobs: - name: Run BCR PR Reviewer if: github.repository_owner == 'bazelbuild' - uses: bazelbuild/continuous-integration/actions/bcr-pr-reviewer@68dea4fe63a2ad44caaa8f3c44df19094b3dd395 # master + uses: bazelbuild/continuous-integration/actions/bcr-pr-reviewer@ecb81a9f161e6a560633222436406e41b93f6991 # master with: # This token needs to be updated annually on Feb 05. token: ${{ secrets.BCR_PR_REVIEW_HELPER_TOKEN }} diff --git a/docs/README.md b/docs/README.md index 551cbd7b79f..c52e7f82d60 100644 --- a/docs/README.md +++ b/docs/README.md @@ -79,7 +79,7 @@ Then the presubmit will verify building `@zlib//:zlib` succeeds on all specified While you can also specify `test_targets`, it may not always work since test targets can require additional dev dependencies that are not available when your project is not the root module. -**Note that** the task config syntax follows [Bazel CI's specifications](https://github.com/bazelbuild/continuous-integration/tree/master/buildkite#configuring-a-pipeline). +**Note that** the task config syntax follows [Bazel CI's specifications](https://github.com/bazelbuild/continuous-integration/tree/master/buildkite#configuring-a-pipeline). BCR requires the bazel version to be specified for each task via the `bazel` field. ### Test module @@ -119,7 +119,7 @@ local_path_override( ) ``` -**Note that** the task config syntax also follows [Bazel CI's specifications](https://github.com/bazelbuild/continuous-integration/tree/master/buildkite#configuring-a-pipeline), but just one level deeper under `bcr_test_module` and you have to specify the subdirectory of the test module via `module_path`. +**Note that** the task config syntax also follows [Bazel CI's specifications](https://github.com/bazelbuild/continuous-integration/tree/master/buildkite#configuring-a-pipeline), but just one level deeper under `bcr_test_module` and you have to specify the subdirectory of the test module via `module_path`. BCR requires the bazel version to be specified for each task via the `bazel` field. ## Yank a module version diff --git a/modules/apple_support/1.16.0/MODULE.bazel b/modules/apple_support/1.16.0/MODULE.bazel new file mode 100644 index 00000000000..37052de37c5 --- /dev/null +++ b/modules/apple_support/1.16.0/MODULE.bazel @@ -0,0 +1,23 @@ +module( + name = "apple_support", + version = "1.16.0", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 1, + repo_name = "build_bazel_apple_support", +) + +bazel_dep(name = "bazel_features", version = "1.10.0") +bazel_dep(name = "bazel_skylib", version = "1.3.0") +bazel_dep(name = "platforms", version = "0.0.9") + +bazel_dep( + name = "stardoc", + version = "0.6.2", + dev_dependency = True, + repo_name = "io_bazel_stardoc", +) + +apple_cc_configure = use_extension("//crosstool:setup.bzl", "apple_cc_configure_extension") +use_repo(apple_cc_configure, "local_config_apple_cc", "local_config_apple_cc_toolchains") + +register_toolchains("@local_config_apple_cc_toolchains//:all") diff --git a/modules/apple_support/1.16.0/patches/module_dot_bazel_version.patch b/modules/apple_support/1.16.0/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..0cf826c773d --- /dev/null +++ b/modules/apple_support/1.16.0/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "apple_support", +- version = "0", ++ version = "1.16.0", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 1, + repo_name = "build_bazel_apple_support", + ) diff --git a/modules/apple_support/1.16.0/presubmit.yml b/modules/apple_support/1.16.0/presubmit.yml new file mode 100644 index 00000000000..e598bc4291c --- /dev/null +++ b/modules/apple_support/1.16.0/presubmit.yml @@ -0,0 +1,22 @@ +matrix: + bazel: ["7.x", "rolling"] + +tasks: + verify_targets: + name: "Build targets under //lib" + platform: ubuntu2004 + bazel: ${{ bazel }} + build_targets: + - '@apple_support//lib/...' + run_tests: + name: "Run test targets" + platform: "macos_arm64" + bazel: ${{ bazel }} + build_targets: + - '@apple_support//lib/...' + test_targets: + - '@apple_support//test/...' + - '--' + # Needs visionOS SDK + - '-@apple_support//test:binary_visionos_arm64_simulator_test' + - '-@apple_support//test:binary_visionos_device_test' diff --git a/modules/apple_support/1.16.0/source.json b/modules/apple_support/1.16.0/source.json new file mode 100644 index 00000000000..302cb66f2e9 --- /dev/null +++ b/modules/apple_support/1.16.0/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-wxzo5TG1DvEzg5LuKd09s2iWaHAewyN7nGHiahk3qwc=", + "strip_prefix": "", + "url": "https://github.com/bazelbuild/apple_support/releases/download/1.16.0/apple_support.1.16.0.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-T2PMrL6Gg5lmiSIAFUDqU9SgDLcMo9WZ7+M3Uuw9Law=" + }, + "patch_strip": 1 +} diff --git a/modules/apple_support/metadata.json b/modules/apple_support/metadata.json index fe40886a71c..aa49ad40a18 100644 --- a/modules/apple_support/metadata.json +++ b/modules/apple_support/metadata.json @@ -37,7 +37,8 @@ "1.12.0", "1.13.0", "1.14.0", - "1.15.1" + "1.15.1", + "1.16.0" ], "yanked_versions": {} } diff --git a/modules/aspect_rules_lint/1.0.0-rc5/MODULE.bazel b/modules/aspect_rules_lint/1.0.0-rc5/MODULE.bazel new file mode 100644 index 00000000000..2f44cc5c85e --- /dev/null +++ b/modules/aspect_rules_lint/1.0.0-rc5/MODULE.bazel @@ -0,0 +1,39 @@ +"Bazel dependencies" + +module( + name = "aspect_rules_lint", + version = "1.0.0-rc5", + compatibility_level = 1, +) + +bazel_dep(name = "aspect_bazel_lib", version = "2.5.0") + +# Needed in the root because we use js_lib_helpers in our aspect impl +# Minimum version needs 'chore: bump bazel-lib to 2.0 by @alexeagle in #1311' +# to allow users on bazel-lib 2.0 +bazel_dep(name = "aspect_rules_js", version = "1.40.0") +bazel_dep(name = "bazel_skylib", version = "1.4.2") +bazel_dep(name = "platforms", version = "0.0.7") +bazel_dep(name = "rules_multirun", version = "0.9.0") +bazel_dep(name = "rules_multitool", version = "0.4.0") + +# Needed in the root because we dereference ProtoInfo in our aspect impl +bazel_dep(name = "rules_proto", version = "6.0.0") + +# Needed in the root because we dereference the toolchain in our aspect impl +bazel_dep(name = "rules_buf", version = "0.1.1") +bazel_dep(name = "toolchains_protoc", version = "0.2.1") + +multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool") +multitool.hub(lockfile = "//format:multitool.lock.json") +multitool.hub(lockfile = "//lint:multitool.lock.json") +use_repo(multitool, "multitool") + +# Locally, use newer bazel-lib for stardoc +single_version_override( + module_name = "aspect_bazel_lib", + version = "2.7.7", +) + +# 0.5.4 is the first version with bzlmod support +bazel_dep(name = "stardoc", version = "0.5.4", dev_dependency = True, repo_name = "io_bazel_stardoc") diff --git a/modules/aspect_rules_lint/1.0.0-rc5/patches/module_dot_bazel_version.patch b/modules/aspect_rules_lint/1.0.0-rc5/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..f0fbc03a9da --- /dev/null +++ b/modules/aspect_rules_lint/1.0.0-rc5/patches/module_dot_bazel_version.patch @@ -0,0 +1,14 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,9 +1,9 @@ + "Bazel dependencies" + + module( + name = "aspect_rules_lint", +- version = "0.0.0", ++ version = "1.0.0-rc5", + compatibility_level = 1, + ) + + bazel_dep(name = "aspect_bazel_lib", version = "2.5.0") diff --git a/modules/aspect_rules_lint/1.0.0-rc5/presubmit.yml b/modules/aspect_rules_lint/1.0.0-rc5/presubmit.yml new file mode 100644 index 00000000000..33462e87a38 --- /dev/null +++ b/modules/aspect_rules_lint/1.0.0-rc5/presubmit.yml @@ -0,0 +1,14 @@ +bcr_test_module: + module_path: "example" + matrix: + bazel: ["7.x", "6.x"] + platform: ["debian10", "ubuntu2004"] + tasks: + run_tests: + name: "Run test module" + bazel: ${{ bazel }} + platform: ${{ platform }} + environment: + BAZELISK_BASE_URL: "https://github.com/bazelbuild/bazel/releases/download/" + test_targets: + - "//..." diff --git a/modules/aspect_rules_lint/1.0.0-rc5/source.json b/modules/aspect_rules_lint/1.0.0-rc5/source.json new file mode 100644 index 00000000000..f4366f1b42a --- /dev/null +++ b/modules/aspect_rules_lint/1.0.0-rc5/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-RVV9MjYCSiEZWY+MpPsKsgNWa8mYAihbwMh2S7XuLjo=", + "strip_prefix": "rules_lint-1.0.0-rc5", + "url": "https://github.com/aspect-build/rules_lint/releases/download/v1.0.0-rc5/rules_lint-v1.0.0-rc5.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-q/gRx7aUbuxvXl42pl2qpxU8LOt0UMJkPnl3pw4fxWo=" + }, + "patch_strip": 1 +} diff --git a/modules/aspect_rules_lint/metadata.json b/modules/aspect_rules_lint/metadata.json index 5ecb3eab446..ad062a6475f 100644 --- a/modules/aspect_rules_lint/metadata.json +++ b/modules/aspect_rules_lint/metadata.json @@ -40,7 +40,8 @@ "1.0.0-rc1", "1.0.0-rc2", "1.0.0-rc3", - "1.0.0-rc4" + "1.0.0-rc4", + "1.0.0-rc5" ], "yanked_versions": {} } diff --git a/modules/bzlws/0.2.0/MODULE.bazel b/modules/bzlws/0.2.0/MODULE.bazel new file mode 100644 index 00000000000..1cc32fd5672 --- /dev/null +++ b/modules/bzlws/0.2.0/MODULE.bazel @@ -0,0 +1,27 @@ +module( + name = "bzlws", + version = "0.2.0", + compatibility_level = 1, +) + +bazel_dep(name = "bazel_skylib", version = "1.6.1") +bazel_dep(name = "rules_cc", version = "0.0.9") +bazel_dep(name = "yaml-cpp", version = "0.8.0") + +bazel_dep(name = "stardoc", version = "0.7.0", dev_dependency = True) +bazel_dep(name = "toolchains_llvm", version = "1.0.0", dev_dependency = True) +bazel_dep(name = "hedron_compile_commands", dev_dependency = True) +git_override( + module_name = "hedron_compile_commands", + commit = "204aa593e002cbd177d30f11f54cff3559110bb9", + remote = "https://github.com/hedronvision/bazel-compile-commands-extractor.git", +) + +llvm = use_extension("@toolchains_llvm//toolchain/extensions:llvm.bzl", "llvm", dev_dependency = True) +llvm.toolchain(llvm_version = "17.0.6") +use_repo(llvm, "llvm_toolchain") + +register_toolchains( + "@llvm_toolchain//:all", + dev_dependency = True, +) diff --git a/modules/bzlws/0.2.0/presubmit.yml b/modules/bzlws/0.2.0/presubmit.yml new file mode 100644 index 00000000000..05448549fde --- /dev/null +++ b/modules/bzlws/0.2.0/presubmit.yml @@ -0,0 +1,18 @@ +bcr_test_module: + module_path: test + matrix: + platform: + - ubuntu2204 + - windows + - macos_arm64 + # https://github.com/zaucy/bzlws/issues/19 + # - macos + bazel: [7.x] + tasks: + run_test_module: + name: Build test module + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: ['//...'] + # https://github.com/zaucy/bzlws/issues/16 + # test_targets: ['//...'] diff --git a/modules/bzlws/0.2.0/source.json b/modules/bzlws/0.2.0/source.json new file mode 100644 index 00000000000..5c8e1202b4a --- /dev/null +++ b/modules/bzlws/0.2.0/source.json @@ -0,0 +1,4 @@ +{ + "integrity": "sha256-jl+BOXQ4QpE2DpndYZ6tN2TSMPvrL023GjfMtL9JjhQ=", + "url": "https://github.com/zaucy/bzlws/releases/download/0.2.0/bzlws-0.2.0.tar.gz" +} diff --git a/modules/bzlws/metadata.json b/modules/bzlws/metadata.json new file mode 100644 index 00000000000..5f3f792e99c --- /dev/null +++ b/modules/bzlws/metadata.json @@ -0,0 +1,17 @@ +{ + "homepage": "https://github.com/zaucy/bzlws", + "maintainers": [ + { + "email": "ezekiel@seaube.com", + "github": "zaucy", + "name": "Ezekiel Warren" + } + ], + "repository": [ + "github:zaucy/bzlws" + ], + "versions": [ + "0.2.0" + ], + "yanked_versions": {} +} diff --git a/modules/cppregpattern/1.0.1/MODULE.bazel b/modules/cppregpattern/1.0.1/MODULE.bazel new file mode 100644 index 00000000000..27a7e481965 --- /dev/null +++ b/modules/cppregpattern/1.0.1/MODULE.bazel @@ -0,0 +1,5 @@ +module( + name = "cppregpattern", + version = "1.0.1", +) +bazel_dep(name = "rules_license", version = "0.0.8") diff --git a/modules/cppregpattern/1.0.1/patches/add_build_file.patch b/modules/cppregpattern/1.0.1/patches/add_build_file.patch new file mode 100644 index 00000000000..f7542185f0e --- /dev/null +++ b/modules/cppregpattern/1.0.1/patches/add_build_file.patch @@ -0,0 +1,29 @@ +diff --git BUILD.bazel BUILD.bazel +new file mode 100644 +index 00000000..d99b09e7 +--- /dev/null ++++ BUILD.bazel +@@ -0,0 +1,22 @@ ++load("@rules_license//rules:license.bzl", "license") ++ ++package( ++ default_applicable_licenses = [":license"], ++ default_visibility = ["//visibility:public"], ++) ++ ++exports_files(["LICENSE"]) ++ ++license( ++ name = "license", ++ package_name = "cppregpattern", ++ license_kinds = [ ++ "@rules_license//licenses/spdx:MIT", ++ ], ++) ++ ++cc_library( ++ name = "registry", ++ hdrs = ["include/cppregpattern/registry.h"], ++ strip_include_prefix = "include/", ++) +\ No newline at end of file diff --git a/modules/cppregpattern/1.0.1/patches/module_dot_bazel.patch b/modules/cppregpattern/1.0.1/patches/module_dot_bazel.patch new file mode 100644 index 00000000000..797760b929a --- /dev/null +++ b/modules/cppregpattern/1.0.1/patches/module_dot_bazel.patch @@ -0,0 +1,8 @@ +--- MODULE.bazel ++++ MODULE.bazel +@@ -0,0 +1,5 @@ ++module( ++ name = "cppregpattern", ++ version = "1.0.1", ++) ++bazel_dep(name = "rules_license", version = "0.0.8") diff --git a/modules/cppregpattern/1.0.1/presubmit.yml b/modules/cppregpattern/1.0.1/presubmit.yml new file mode 100644 index 00000000000..c333fe327bd --- /dev/null +++ b/modules/cppregpattern/1.0.1/presubmit.yml @@ -0,0 +1,17 @@ +matrix: + platform: + - debian10 + - ubuntu2004 + - macos + - macos_arm64 + - windows + bazel: + - 7.x + - 6.x +tasks: + verify_targets: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@cppregpattern//:registry' diff --git a/modules/cppregpattern/1.0.1/source.json b/modules/cppregpattern/1.0.1/source.json new file mode 100644 index 00000000000..fb060a5f943 --- /dev/null +++ b/modules/cppregpattern/1.0.1/source.json @@ -0,0 +1,10 @@ +{ + "url": "https://github.com/psalvaggio/cppregpattern/archive/17342e50c8248c750e8d35ca93d9f072e388ab58.tar.gz", + "integrity": "sha256-n/WIg6GYEkBrynLuBZg3C/V86ty3Vlf+YU/waFZr/6g=", + "strip_prefix": "cppregpattern-17342e50c8248c750e8d35ca93d9f072e388ab58", + "patch_strip": 0, + "patches": { + "module_dot_bazel.patch": "sha256-zmSrN0nyy0/42l47nd5U4xG0w6PHXxYTVDEPjSAMntM=", + "add_build_file.patch": "sha256-0TC1453qisEqtN4KhEnsUO3wSwT8E7vLp9afBfcxEXI=" + } +} diff --git a/modules/cppregpattern/metadata.json b/modules/cppregpattern/metadata.json new file mode 100644 index 00000000000..d10ce595a2f --- /dev/null +++ b/modules/cppregpattern/metadata.json @@ -0,0 +1,17 @@ +{ + "homepage": "https://github.com/psalvaggio/cppregpattern", + "maintainers": [ + { + "email": "udayaprakash2899@gmail.com", + "github": "udaya2899", + "name": "Udaya Prakash Nageswaran" + } + ], + "repository": [ + "github:psalvaggio/cppregpattern" + ], + "versions": [ + "1.0.1" + ], + "yanked_versions": {} +} diff --git a/modules/curl/8.8.0.bcr.1/MODULE.bazel b/modules/curl/8.8.0.bcr.1/MODULE.bazel new file mode 100644 index 00000000000..e1fcda8dcdc --- /dev/null +++ b/modules/curl/8.8.0.bcr.1/MODULE.bazel @@ -0,0 +1,10 @@ +module( + name = "curl", + version = "8.8.0.bcr.1", + compatibility_level = 0, +) + +bazel_dep(name = "bazel_skylib", version = "1.7.1") +bazel_dep(name = "mbedtls", version = "3.6.0") +bazel_dep(name = "platforms", version = "0.0.10") +bazel_dep(name = "boringssl", version = "0.0.0-20230215-5c22014") diff --git a/modules/curl/8.8.0.bcr.1/patches/add_build_file.patch b/modules/curl/8.8.0.bcr.1/patches/add_build_file.patch new file mode 100644 index 00000000000..5cc3e61a28d --- /dev/null +++ b/modules/curl/8.8.0.bcr.1/patches/add_build_file.patch @@ -0,0 +1,347 @@ +diff --git a/BUILD.bazel b/BUILD.bazel +new file mode 100644 +index 0000000..9b7c8c6 +--- /dev/null ++++ b/BUILD.bazel +@@ -0,0 +1,341 @@ ++# Copyright The OpenTelemetry Authors ++# SPDX-License-Identifier: Apache-2.0 ++ ++load("@bazel_skylib//rules:common_settings.bzl", "bool_flag", "string_flag") ++load("@bazel_skylib//lib:selects.bzl", "selects") ++ ++package(features = ["no_copts_tokenization"]) ++ ++bool_flag( ++ name = "use_mbedtls", ++ build_setting_default = False, ++) ++ ++config_setting( ++ name = "use_mbedtls_setting", ++ flag_values = {":use_mbedtls": "true"}, ++) ++ ++config_setting( ++ name = "not_use_mbedtls_setting", ++ flag_values = {":use_mbedtls": "false"}, ++) ++ ++selects.config_setting_group( ++ name = "use_boringssl", ++ match_all = [":not_use_mbedtls_setting", "@platforms//os:linux"], ++) ++ ++selects.config_setting_group( ++ name = "use_sectransport", ++ match_all = [":not_use_mbedtls_setting", "@platforms//os:macos"], ++) ++ ++bool_flag( ++ name = "http_only", ++ build_setting_default = True, ++) ++ ++config_setting( ++ name = "http_only_setting", ++ flag_values = {":http_only": "true"}, ++) ++ ++# Curl's default CA path depends on the OS. If CURL_CA_BUNDLE/CURL_CA_PATH are not set, ++# (and you don't `curl_easy_setopt(curl_, CURLOPT_CAPATH, "/etc/ssl/certs");`), curl ++# will fail to verify server certificates. ++# The string_flag below allows the user to specify their (OS-specific) default CA path ++# like `--@curl//:ca_bundle=/etc/ssl/certs/ca-certificates.crt` on the command line or ++# in .bazelrc. See also https://github.com/curl/curl/blob/curl-8_8_0/acinclude.m4#L1202 ++ ++string_flag( ++ name = "ca_bundle", ++ build_setting_default = "", ++ make_variable = "CURL_CA_BUNDLE", ++) ++ ++config_setting( ++ name = "ca_bundle_is_unset", ++ flag_values = {":ca_bundle": ""}, ++) ++ ++string_flag( ++ name = "ca_path", ++ build_setting_default = "", ++ make_variable = "CURL_CA_PATH", ++) ++ ++config_setting( ++ name = "ca_path_is_unset", ++ flag_values = {":ca_path": ""}, ++) ++ ++_BASE_CURL_COPTS = [ ++ "-DCURL_DISABLE_LDAP=1", ++ "-DENABLE_IPV6=1", ++ "-DGETHOSTNAME_TYPE_ARG2=size_t", ++ "-DGETSERVBYPORT_R_ARGS=6", ++ "-DGETSERVBYPORT_R_BUFSIZE=4096", ++ "-DHAVE_ALARM=1", ++ "-DHAVE_ALLOCA_H=1", ++ "-DHAVE_ARPA_INET_H=1", ++ "-DHAVE_ARPA_TFTP_H=1", ++ "-DHAVE_ASSERT_H=1", ++ "-DHAVE_BASENAME=1", ++ "-DHAVE_BOOL_T=1", ++ "-DHAVE_CLOCK_GETTIME_MONOTONIC=1", ++ "-DHAVE_CONNECT=1", ++ "-DHAVE_DIRENT_H=1", ++ "-DHAVE_DLFCN_H=1", ++ "-DHAVE_ENGINE_LOAD_BUILTIN_ENGINES=1", ++ "-DHAVE_ERRNO_H=1", ++ "-DHAVE_FCNTL=1", ++ "-DHAVE_FCNTL_H=1", ++ "-DHAVE_FCNTL_O_NONBLOCK=1", ++ "-DHAVE_FDOPEN=1", ++ "-DHAVE_FREEADDRINFO=1", ++ "-DHAVE_FREEIFADDRS=1", ++ "-DHAVE_FSETXATTR=1", ++ "-DHAVE_FSETXATTR_5=1", ++ "-DHAVE_FTRUNCATE=1", ++ "-DHAVE_GAI_STRERROR=1", ++ "-DHAVE_GETADDRINFO=1", ++ "-DHAVE_GETADDRINFO_THREADSAFE=1", ++ "-DHAVE_GETEUID=1", ++ "-DHAVE_GETHOSTBYADDR=1", ++ "-DHAVE_GETHOSTBYADDR_R=1", ++ "-DHAVE_GETHOSTBYADDR_R_8=1", ++ "-DHAVE_GETHOSTBYNAME=1", ++ "-DHAVE_GETHOSTBYNAME_R=1", ++ "-DHAVE_GETHOSTBYNAME_R_6=1", ++ "-DHAVE_GETHOSTNAME=1", ++ "-DHAVE_GETIFADDRS=1", ++ "-DHAVE_GETNAMEINFO=1", ++ "-DHAVE_GETPPID=1", ++ "-DHAVE_GETPWUID=1", ++ "-DHAVE_GETPWUID_R=1", ++ "-DHAVE_GETRLIMIT=1", ++ "-DHAVE_GETSERVBYPORT_R=1", ++ "-DHAVE_GETSOCKNAME=1", ++ "-DHAVE_GETTIMEOFDAY=1", ++ "-DHAVE_GMTIME_R=1", ++ "-DHAVE_IFADDRS_H=1", ++ "-DHAVE_IF_NAMETOINDEX=1", ++ "-DHAVE_INET_NTOP=1", ++ "-DHAVE_INET_PTON=1", ++ "-DHAVE_INTTYPES_H=1", ++ "-DHAVE_IOCTL=1", ++ "-DHAVE_IOCTL_FIONBIO=1", ++ "-DHAVE_IOCTL_SIOCGIFADDR=1", ++ "-DHAVE_LIBGEN_H=1", ++ "-DHAVE_LL=1", ++ "-DHAVE_LOCALE_H=1", ++ "-DHAVE_LOCALTIME_R=1", ++ "-DHAVE_LONGLONG=1", ++ "-DHAVE_MALLOC_H=1", ++ "-DHAVE_MEMORY_H=1", ++ "-DHAVE_NETDB_H=1", ++ "-DHAVE_NETINET_IN_H=1", ++ "-DHAVE_NETINET_TCP_H=1", ++ "-DHAVE_NET_IF_H=1", ++ "-DHAVE_OPENDIR=1", ++ "-DHAVE_PIPE=1", ++ "-DHAVE_POLL=1", ++ "-DHAVE_POLL_FINE=1", ++ "-DHAVE_POLL_H=1", ++ "-DHAVE_POSIX_STRERROR_R=1", ++ "-DHAVE_PTHREAD_H=1", ++ "-DHAVE_PWD_H=1", ++ "-DHAVE_RECV=1", ++ "-DHAVE_SELECT=1", ++ "-DHAVE_SEND=1", ++ "-DHAVE_SETJMP_H=1", ++ "-DHAVE_SETLOCALE=1", ++ "-DHAVE_SETRLIMIT=1", ++ "-DHAVE_SETSOCKOPT=1", ++ "-DHAVE_SGTTY_H=1", ++ "-DHAVE_SIGACTION=1", ++ "-DHAVE_SIGINTERRUPT=1", ++ "-DHAVE_SIGNAL=1", ++ "-DHAVE_SIGNAL_H=1", ++ "-DHAVE_SIGSETJMP=1", ++ "-DHAVE_SIG_ATOMIC_T=1", ++ "-DHAVE_SOCKADDR_IN6_SIN6_SCOPE_ID=1", ++ "-DHAVE_SOCKET=1", ++ "-DHAVE_SOCKETPAIR=1", ++ "-DHAVE_STDBOOL_H=1", ++ "-DHAVE_STDINT_H=1", ++ "-DHAVE_STDIO_H=1", ++ "-DHAVE_STDLIB_H=1", ++ "-DHAVE_STRCASECMP=1", ++ "-DHAVE_STRDUP=1", ++ "-DHAVE_STRERROR_R=1", ++ "-DHAVE_STRINGS_H=1", ++ "-DHAVE_STRING_H=1", ++ "-DHAVE_STRNCASECMP=1", ++ "-DHAVE_STRSTR=1", ++ "-DHAVE_STRTOK_R=1", ++ "-DHAVE_STRTOLL=1", ++ "-DHAVE_STRUCT_SOCKADDR_STORAGE=1", ++ "-DHAVE_STRUCT_TIMEVAL=1", ++ "-DHAVE_SYS_IOCTL_H=1", ++ "-DHAVE_SYS_PARAM_H=1", ++ "-DHAVE_SYS_POLL_H=1", ++ "-DHAVE_SYS_RESOURCE_H=1", ++ "-DHAVE_SYS_SELECT_H=1", ++ "-DHAVE_SYS_SOCKET_H=1", ++ "-DHAVE_SYS_STAT_H=1", ++ "-DHAVE_SYS_TIME_H=1", ++ "-DHAVE_SYS_TYPES_H=1", ++ "-DHAVE_SYS_UIO_H=1", ++ "-DHAVE_SYS_UN_H=1", ++ "-DHAVE_SYS_WAIT_H=1", ++ "-DHAVE_SYS_XATTR_H=1", ++ "-DHAVE_TERMIOS_H=1", ++ "-DHAVE_TERMIO_H=1", ++ "-DHAVE_TIME_H=1", ++ "-DHAVE_UNISTD_H=1", ++ "-DHAVE_UTIME=1", ++ "-DHAVE_UTIMES=1", ++ "-DHAVE_UTIME_H=1", ++ "-DHAVE_VARIADIC_MACROS_C99=1", ++ "-DHAVE_VARIADIC_MACROS_GCC=1", ++ "-DHAVE_WRITABLE_ARGV=1", ++ "-DHAVE_WRITEV=1", ++ "-DRECV_TYPE_ARG1=int", ++ "-DRECV_TYPE_ARG2=void*", ++ "-DRECV_TYPE_ARG3=size_t", ++ "-DRECV_TYPE_ARG4=int", ++ "-DRECV_TYPE_RETV=ssize_t", ++ "-DRETSIGTYPE=void", ++ "-DSELECT_QUAL_ARG5=", ++ "-DSELECT_TYPE_ARG1=int", ++ "-DSELECT_TYPE_ARG234=fd_set*", ++ "-DSELECT_TYPE_RETV=int", ++ "-DSEND_QUAL_ARG2=const", ++ "-DSEND_TYPE_ARG1=int", ++ "-DSEND_TYPE_ARG2=void*", ++ "-DSEND_TYPE_ARG3=size_t", ++ "-DSEND_TYPE_ARG4=int", ++ "-DSEND_TYPE_RETV=ssize_t", ++ "-DSIZEOF_CURL_OFF_T=8", ++ "-DSIZEOF_INT=4", ++ "-DSIZEOF_LONG=8", ++ "-DSIZEOF_OFF_T=8", ++ "-DSIZEOF_SHORT=2", ++ "-DSIZEOF_SIZE_T=8", ++ "-DSIZEOF_TIME_T=8", ++ "-DSTDC_HEADERS=1", ++ "-DSTRERROR_R_TYPE_ARG3=size_t", ++ "-DTIME_WITH_SYS_TIME=1", ++ "-DUSE_THREADS_POSIX=1", ++ "-DUSE_UNIX_SOCKETS=1", ++ ++ # Extra defines needed by curl ++ "-DBUILDING_LIBCURL", ++ "-DCURL_HIDDEN_SYMBOLS", ++] ++ ++cc_library( ++ name = "curl", ++ srcs = glob([ ++ "lib/**/*.c", ++ "lib/**/*.h", ++ ]), ++ hdrs = glob(["include/curl/*.h"]), ++ copts = select({ ++ "@platforms//os:windows": [ ++ "/DWIN32", ++ "/DBUILDING_LIBCURL", ++ "/DUSE_WIN32_IDN", ++ "/DWANT_IDN_PROTOTYPES", ++ "/DUSE_IPV6", ++ "/DUSE_WINDOWS_SSPI", ++ "/DUSE_SCHANNEL", ++ ], ++ "@platforms//os:macos": _BASE_CURL_COPTS, ++ "//conditions:default": _BASE_CURL_COPTS + [ ++ "-DHAVE_LINUX_TCP_H=1", ++ "-DHAVE_MSG_NOSIGNAL=1", ++ ], ++ }) + [ ++ "-DOS=\"os\"", ++ ], ++ defines = ["CURL_STATICLIB"], ++ includes = [ ++ "include/", ++ "lib/", ++ ], ++ linkopts = select({ ++ ":use_sectransport": [ ++ "-Wl,-framework,CoreFoundation", ++ "-Wl,-framework,Security", ++ ], ++ "//conditions:default": [], ++ }) + select({ ++ "@platforms//os:windows": [ ++ "-DEFAULTLIB:ws2_32.lib", ++ "-DEFAULTLIB:advapi32.lib", ++ "-DEFAULTLIB:crypt32.lib", ++ "-DEFAULTLIB:Normaliz.lib", ++ ], ++ "@platforms//os:macos": [ ++ "-Wl,-framework,SystemConfiguration", ++ ], ++ "//conditions:default": [ ++ "-lpthread", ++ ], ++ }), ++ local_defines = select({ ++ "@platforms//os:macos": [ ++ 'CURL_CA_BUNDLE=\\"/etc/ssl/cert.pem\\"', ++ 'CURL_CA_PATH=\\"/etc/ssl/certs\\"', ++ ], ++ "@platforms//os:linux": [ ++ 'CURL_CA_BUNDLE=\\"/etc/ssl/certs/ca-certificates.crt\\"', ++ 'CURL_CA_PATH=\\"/etc/ssl/certs\\"', ++ ], ++ "//conditions:default": [], ++ }) + select({ ++ ":use_mbedtls_setting": ["USE_MBEDTLS"], ++ "//conditions:default": [], ++ }) + select({ ++ ":use_sectransport": ["USE_SECTRANSP"], ++ "//conditions:default": [], ++ }) + select({ ++ ":use_boringssl": ["USE_OPENSSL", "HAVE_BORING_SSL=1"], ++ "//conditions:default": [], ++ }) + select({ ++ ":http_only_setting": ["HTTP_ONLY"], ++ "//conditions:default": [], ++ }) + select({ ++ ":ca_bundle_is_unset": [], ++ "//conditions:default": ['CURL_CA_BUNDLE=\\"$(CURL_CA_BUNDLE)\\"'], ++ }) + select({ ++ ":ca_path_is_unset": [], ++ "//conditions:default": ['CURL_CA_PATH=\\"$(CURL_CA_PATH)\\"'], ++ }), ++ toolchains = [ ++ ":ca_bundle", ++ ":ca_path", ++ ], ++ visibility = ["//visibility:public"], ++ deps = select({ ++ ":use_mbedtls_setting": ["@mbedtls"], ++ "//conditions:default": [], ++ }) + select({ ++ ":use_boringssl": ["@boringssl//:ssl", "@boringssl//:crypto"], ++ "//conditions:default": [], ++ }), ++) ++ ++cc_binary( ++ name = "linktest", ++ linkopts = select({ ++ "@platforms//os:macos": ["-all_load"], ++ "//conditions:default": [], ++ }), ++ linkshared = True, ++ visibility = ["//visibility:private"], ++ deps = [":curl"], ++) diff --git a/modules/curl/8.8.0.bcr.1/patches/module_dot_bazel.patch b/modules/curl/8.8.0.bcr.1/patches/module_dot_bazel.patch new file mode 100644 index 00000000000..d4b64689cca --- /dev/null +++ b/modules/curl/8.8.0.bcr.1/patches/module_dot_bazel.patch @@ -0,0 +1,16 @@ +diff --git a/MODULE.bazel b/MODULE.bazel +new file mode 100644 +index 0000000..e1fcda8 +--- /dev/null ++++ b/MODULE.bazel +@@ -0,0 +1,10 @@ ++module( ++ name = "curl", ++ version = "8.8.0.bcr.1", ++ compatibility_level = 0, ++) ++ ++bazel_dep(name = "bazel_skylib", version = "1.7.1") ++bazel_dep(name = "mbedtls", version = "3.6.0") ++bazel_dep(name = "platforms", version = "0.0.10") ++bazel_dep(name = "boringssl", version = "0.0.0-20230215-5c22014") diff --git a/modules/curl/8.8.0.bcr.1/presubmit.yml b/modules/curl/8.8.0.bcr.1/presubmit.yml new file mode 100644 index 00000000000..972feb71f2a --- /dev/null +++ b/modules/curl/8.8.0.bcr.1/presubmit.yml @@ -0,0 +1,35 @@ +matrix: + platform: + - debian10 + - ubuntu2004 + - macos + - macos_arm64 + - windows + bazel: + - 7.x + - 6.x +tasks: + verify_targets: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@curl//:curl' + + verify_targets_mbedtls: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@curl//:curl' + build_flags: + - '--@curl//:use_mbedtls=true' + + verify_targets_http_only_disabled: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@curl//:curl' + build_flags: + - '--@curl//:http_only=false' diff --git a/modules/curl/8.8.0.bcr.1/source.json b/modules/curl/8.8.0.bcr.1/source.json new file mode 100644 index 00000000000..326e97648bd --- /dev/null +++ b/modules/curl/8.8.0.bcr.1/source.json @@ -0,0 +1,10 @@ +{ + "integrity": "sha256-d8DhzTWrW0W2WWRak7RtZgIk0AJPEYXoqVzbJ649eH0=", + "strip_prefix": "curl-8.8.0", + "url": "https://github.com/curl/curl/releases/download/curl-8_8_0/curl-8.8.0.tar.gz", + "patch_strip": 1, + "patches": { + "add_build_file.patch": "sha256-Y7LIwC/duLAwZVEeLqsGyXNUk2lQOPz2+IjffqL7wos=", + "module_dot_bazel.patch": "sha256-8X2BKYprbNHxQmBmclzbH1aV2fbr800J0ypG4AwqTJs=" + } +} diff --git a/modules/curl/8.8.0/MODULE.bazel b/modules/curl/8.8.0/MODULE.bazel new file mode 100644 index 00000000000..24b6c8297b8 --- /dev/null +++ b/modules/curl/8.8.0/MODULE.bazel @@ -0,0 +1,9 @@ +module( + name = "curl", + version = "8.8.0", + compatibility_level = 0, +) + +bazel_dep(name = "bazel_skylib", version = "1.7.1") +bazel_dep(name = "mbedtls", version = "3.6.0") +bazel_dep(name = "platforms", version = "0.0.10") diff --git a/modules/curl/8.8.0/patches/add_build_file.patch b/modules/curl/8.8.0/patches/add_build_file.patch new file mode 100644 index 00000000000..d9447c92626 --- /dev/null +++ b/modules/curl/8.8.0/patches/add_build_file.patch @@ -0,0 +1,317 @@ +diff --git a/BUILD.bazel b/BUILD.bazel +new file mode 100644 +index 000000000..5dab91dfe +--- /dev/null ++++ b/BUILD.bazel +@@ -0,0 +1,311 @@ ++# Copyright The OpenTelemetry Authors ++# SPDX-License-Identifier: Apache-2.0 ++ ++load("@bazel_skylib//rules:common_settings.bzl", "bool_flag", "string_flag") ++ ++package(features = ["no_copts_tokenization"]) ++ ++bool_flag( ++ name = "use_mbedtls", ++ build_setting_default = False, ++) ++ ++config_setting( ++ name = "use_mbedtls_setting", ++ flag_values = {":use_mbedtls": "true"}, ++) ++ ++bool_flag( ++ name = "http_only", ++ build_setting_default = True, ++) ++ ++config_setting( ++ name = "http_only_setting", ++ flag_values = {":http_only": "true"}, ++) ++ ++# Curl's default CA path depends on the OS. If CURL_CA_BUNDLE/CURL_CA_PATH are not set, ++# (and you don't `curl_easy_setopt(curl_, CURLOPT_CAPATH, "/etc/ssl/certs");`), curl ++# will fail to verify server certificates. ++# The string_flag below allows the user to specify their (OS-specific) default CA path ++# like `--@curl//:ca_bundle=/etc/ssl/certs/ca-certificates.crt` on the command line or ++# in .bazelrc. See also https://github.com/curl/curl/blob/curl-8_8_0/acinclude.m4#L1202 ++ ++string_flag( ++ name = "ca_bundle", ++ build_setting_default = "", ++ make_variable = "CURL_CA_BUNDLE", ++) ++ ++config_setting( ++ name = "ca_bundle_is_unset", ++ flag_values = {":ca_bundle": ""}, ++) ++ ++string_flag( ++ name = "ca_path", ++ build_setting_default = "", ++ make_variable = "CURL_CA_PATH", ++) ++ ++config_setting( ++ name = "ca_path_is_unset", ++ flag_values = {":ca_path": ""}, ++) ++ ++_BASE_CURL_COPTS = [ ++ "-DCURL_DISABLE_LDAP=1", ++ "-DENABLE_IPV6=1", ++ "-DGETHOSTNAME_TYPE_ARG2=size_t", ++ "-DGETSERVBYPORT_R_ARGS=6", ++ "-DGETSERVBYPORT_R_BUFSIZE=4096", ++ "-DHAVE_ALARM=1", ++ "-DHAVE_ALLOCA_H=1", ++ "-DHAVE_ARPA_INET_H=1", ++ "-DHAVE_ARPA_TFTP_H=1", ++ "-DHAVE_ASSERT_H=1", ++ "-DHAVE_BASENAME=1", ++ "-DHAVE_BOOL_T=1", ++ "-DHAVE_CLOCK_GETTIME_MONOTONIC=1", ++ "-DHAVE_CONNECT=1", ++ "-DHAVE_DIRENT_H=1", ++ "-DHAVE_DLFCN_H=1", ++ "-DHAVE_ENGINE_LOAD_BUILTIN_ENGINES=1", ++ "-DHAVE_ERRNO_H=1", ++ "-DHAVE_FCNTL=1", ++ "-DHAVE_FCNTL_H=1", ++ "-DHAVE_FCNTL_O_NONBLOCK=1", ++ "-DHAVE_FDOPEN=1", ++ "-DHAVE_FREEADDRINFO=1", ++ "-DHAVE_FREEIFADDRS=1", ++ "-DHAVE_FSETXATTR=1", ++ "-DHAVE_FSETXATTR_5=1", ++ "-DHAVE_FTRUNCATE=1", ++ "-DHAVE_GAI_STRERROR=1", ++ "-DHAVE_GETADDRINFO=1", ++ "-DHAVE_GETADDRINFO_THREADSAFE=1", ++ "-DHAVE_GETEUID=1", ++ "-DHAVE_GETHOSTBYADDR=1", ++ "-DHAVE_GETHOSTBYADDR_R=1", ++ "-DHAVE_GETHOSTBYADDR_R_8=1", ++ "-DHAVE_GETHOSTBYNAME=1", ++ "-DHAVE_GETHOSTBYNAME_R=1", ++ "-DHAVE_GETHOSTBYNAME_R_6=1", ++ "-DHAVE_GETHOSTNAME=1", ++ "-DHAVE_GETIFADDRS=1", ++ "-DHAVE_GETNAMEINFO=1", ++ "-DHAVE_GETPPID=1", ++ "-DHAVE_GETPWUID=1", ++ "-DHAVE_GETPWUID_R=1", ++ "-DHAVE_GETRLIMIT=1", ++ "-DHAVE_GETSERVBYPORT_R=1", ++ "-DHAVE_GETSOCKNAME=1", ++ "-DHAVE_GETTIMEOFDAY=1", ++ "-DHAVE_GMTIME_R=1", ++ "-DHAVE_IFADDRS_H=1", ++ "-DHAVE_IF_NAMETOINDEX=1", ++ "-DHAVE_INET_NTOP=1", ++ "-DHAVE_INET_PTON=1", ++ "-DHAVE_INTTYPES_H=1", ++ "-DHAVE_IOCTL=1", ++ "-DHAVE_IOCTL_FIONBIO=1", ++ "-DHAVE_IOCTL_SIOCGIFADDR=1", ++ "-DHAVE_LIBGEN_H=1", ++ "-DHAVE_LL=1", ++ "-DHAVE_LOCALE_H=1", ++ "-DHAVE_LOCALTIME_R=1", ++ "-DHAVE_LONGLONG=1", ++ "-DHAVE_MALLOC_H=1", ++ "-DHAVE_MEMORY_H=1", ++ "-DHAVE_NETDB_H=1", ++ "-DHAVE_NETINET_IN_H=1", ++ "-DHAVE_NETINET_TCP_H=1", ++ "-DHAVE_NET_IF_H=1", ++ "-DHAVE_OPENDIR=1", ++ "-DHAVE_PIPE=1", ++ "-DHAVE_POLL=1", ++ "-DHAVE_POLL_FINE=1", ++ "-DHAVE_POLL_H=1", ++ "-DHAVE_POSIX_STRERROR_R=1", ++ "-DHAVE_PTHREAD_H=1", ++ "-DHAVE_PWD_H=1", ++ "-DHAVE_RECV=1", ++ "-DHAVE_SELECT=1", ++ "-DHAVE_SEND=1", ++ "-DHAVE_SETJMP_H=1", ++ "-DHAVE_SETLOCALE=1", ++ "-DHAVE_SETRLIMIT=1", ++ "-DHAVE_SETSOCKOPT=1", ++ "-DHAVE_SGTTY_H=1", ++ "-DHAVE_SIGACTION=1", ++ "-DHAVE_SIGINTERRUPT=1", ++ "-DHAVE_SIGNAL=1", ++ "-DHAVE_SIGNAL_H=1", ++ "-DHAVE_SIGSETJMP=1", ++ "-DHAVE_SIG_ATOMIC_T=1", ++ "-DHAVE_SOCKADDR_IN6_SIN6_SCOPE_ID=1", ++ "-DHAVE_SOCKET=1", ++ "-DHAVE_SOCKETPAIR=1", ++ "-DHAVE_STDBOOL_H=1", ++ "-DHAVE_STDINT_H=1", ++ "-DHAVE_STDIO_H=1", ++ "-DHAVE_STDLIB_H=1", ++ "-DHAVE_STRCASECMP=1", ++ "-DHAVE_STRDUP=1", ++ "-DHAVE_STRERROR_R=1", ++ "-DHAVE_STRINGS_H=1", ++ "-DHAVE_STRING_H=1", ++ "-DHAVE_STRNCASECMP=1", ++ "-DHAVE_STRSTR=1", ++ "-DHAVE_STRTOK_R=1", ++ "-DHAVE_STRTOLL=1", ++ "-DHAVE_STRUCT_SOCKADDR_STORAGE=1", ++ "-DHAVE_STRUCT_TIMEVAL=1", ++ "-DHAVE_SYS_IOCTL_H=1", ++ "-DHAVE_SYS_PARAM_H=1", ++ "-DHAVE_SYS_POLL_H=1", ++ "-DHAVE_SYS_RESOURCE_H=1", ++ "-DHAVE_SYS_SELECT_H=1", ++ "-DHAVE_SYS_SOCKET_H=1", ++ "-DHAVE_SYS_STAT_H=1", ++ "-DHAVE_SYS_TIME_H=1", ++ "-DHAVE_SYS_TYPES_H=1", ++ "-DHAVE_SYS_UIO_H=1", ++ "-DHAVE_SYS_UN_H=1", ++ "-DHAVE_SYS_WAIT_H=1", ++ "-DHAVE_SYS_XATTR_H=1", ++ "-DHAVE_TERMIOS_H=1", ++ "-DHAVE_TERMIO_H=1", ++ "-DHAVE_TIME_H=1", ++ "-DHAVE_UNISTD_H=1", ++ "-DHAVE_UTIME=1", ++ "-DHAVE_UTIMES=1", ++ "-DHAVE_UTIME_H=1", ++ "-DHAVE_VARIADIC_MACROS_C99=1", ++ "-DHAVE_VARIADIC_MACROS_GCC=1", ++ "-DHAVE_WRITABLE_ARGV=1", ++ "-DHAVE_WRITEV=1", ++ "-DRECV_TYPE_ARG1=int", ++ "-DRECV_TYPE_ARG2=void*", ++ "-DRECV_TYPE_ARG3=size_t", ++ "-DRECV_TYPE_ARG4=int", ++ "-DRECV_TYPE_RETV=ssize_t", ++ "-DRETSIGTYPE=void", ++ "-DSELECT_QUAL_ARG5=", ++ "-DSELECT_TYPE_ARG1=int", ++ "-DSELECT_TYPE_ARG234=fd_set*", ++ "-DSELECT_TYPE_RETV=int", ++ "-DSEND_QUAL_ARG2=const", ++ "-DSEND_TYPE_ARG1=int", ++ "-DSEND_TYPE_ARG2=void*", ++ "-DSEND_TYPE_ARG3=size_t", ++ "-DSEND_TYPE_ARG4=int", ++ "-DSEND_TYPE_RETV=ssize_t", ++ "-DSIZEOF_CURL_OFF_T=8", ++ "-DSIZEOF_INT=4", ++ "-DSIZEOF_LONG=8", ++ "-DSIZEOF_OFF_T=8", ++ "-DSIZEOF_SHORT=2", ++ "-DSIZEOF_SIZE_T=8", ++ "-DSIZEOF_TIME_T=8", ++ "-DSTDC_HEADERS=1", ++ "-DSTRERROR_R_TYPE_ARG3=size_t", ++ "-DTIME_WITH_SYS_TIME=1", ++ "-DUSE_THREADS_POSIX=1", ++ "-DUSE_UNIX_SOCKETS=1", ++ ++ # Extra defines needed by curl ++ "-DBUILDING_LIBCURL", ++ "-DCURL_HIDDEN_SYMBOLS", ++] ++ ++cc_library( ++ name = "curl", ++ srcs = glob([ ++ "lib/**/*.c", ++ "lib/**/*.h", ++ ]), ++ hdrs = glob(["include/curl/*.h"]), ++ copts = select({ ++ "@platforms//os:windows": [ ++ "/DWIN32", ++ "/DBUILDING_LIBCURL", ++ "/DUSE_WIN32_IDN", ++ "/DWANT_IDN_PROTOTYPES", ++ "/DUSE_IPV6", ++ "/DUSE_WINDOWS_SSPI", ++ "/DUSE_SCHANNEL", ++ ], ++ "@platforms//os:macos": _BASE_CURL_COPTS, ++ "//conditions:default": _BASE_CURL_COPTS + [ ++ "-DHAVE_LINUX_TCP_H=1", ++ "-DHAVE_MSG_NOSIGNAL=1", ++ ], ++ }) + [ ++ "-DOS=\"os\"", ++ ], ++ defines = ["CURL_STATICLIB"], ++ includes = [ ++ "include/", ++ "lib/", ++ ], ++ linkopts = select({ ++ "@platforms//os:windows": [ ++ "-DEFAULTLIB:ws2_32.lib", ++ "-DEFAULTLIB:advapi32.lib", ++ "-DEFAULTLIB:crypt32.lib", ++ "-DEFAULTLIB:Normaliz.lib", ++ ], ++ "@platforms//os:macos": [ ++ "-Wl,-framework,SystemConfiguration", ++ "-lpthread", ++ ], ++ "//conditions:default": [ ++ "-lpthread", ++ ], ++ }), ++ local_defines = select({ ++ "@platforms//os:macos": [ ++ 'CURL_CA_BUNDLE=\\"/etc/ssl/cert.pem\\"', ++ 'CURL_CA_PATH=\\"/etc/ssl/certs\\"', ++ ], ++ "@platforms//os:linux": [ ++ 'CURL_CA_BUNDLE=\\"/etc/ssl/certs/ca-certificates.crt\\"', ++ 'CURL_CA_PATH=\\"/etc/ssl/certs\\"', ++ ], ++ "//conditions:default": [], ++ }) + select({ ++ ":use_mbedtls_setting": ["USE_MBEDTLS"], ++ "//conditions:default": [], ++ }) + select({ ++ ":http_only_setting": ["HTTP_ONLY"], ++ "//conditions:default": [], ++ }) + select({ ++ ":ca_bundle_is_unset": [], ++ "//conditions:default": ['CURL_CA_BUNDLE=\\"$(CURL_CA_BUNDLE)\\"'], ++ }) + select({ ++ ":ca_path_is_unset": [], ++ "//conditions:default": ['CURL_CA_PATH=\\"$(CURL_CA_PATH)\\"'], ++ }), ++ toolchains = [ ++ ":ca_bundle", ++ ":ca_path", ++ ], ++ visibility = ["//visibility:public"], ++ deps = select({ ++ ":use_mbedtls_setting": ["@mbedtls"], ++ "//conditions:default": [], ++ }), ++) ++ ++cc_binary( ++ name = "linktest", ++ linkopts = select({ ++ "@platforms//os:macos": ["-all_load"], ++ "//conditions:default": [], ++ }), ++ linkshared = True, ++ visibility = ["//visibility:private"], ++ deps = [":curl"], ++) diff --git a/modules/curl/8.8.0/patches/module_dot_bazel.patch b/modules/curl/8.8.0/patches/module_dot_bazel.patch new file mode 100644 index 00000000000..20ce181784a --- /dev/null +++ b/modules/curl/8.8.0/patches/module_dot_bazel.patch @@ -0,0 +1,15 @@ +diff --git a/MODULE.bazel b/MODULE.bazel +new file mode 100644 +index 000000000..24b6c8297 +--- /dev/null ++++ b/MODULE.bazel +@@ -0,0 +1,9 @@ ++module( ++ name = "curl", ++ version = "8.8.0", ++ compatibility_level = 0, ++) ++ ++bazel_dep(name = "bazel_skylib", version = "1.7.1") ++bazel_dep(name = "mbedtls", version = "3.6.0") ++bazel_dep(name = "platforms", version = "0.0.10") diff --git a/modules/curl/8.8.0/presubmit.yml b/modules/curl/8.8.0/presubmit.yml new file mode 100644 index 00000000000..972feb71f2a --- /dev/null +++ b/modules/curl/8.8.0/presubmit.yml @@ -0,0 +1,35 @@ +matrix: + platform: + - debian10 + - ubuntu2004 + - macos + - macos_arm64 + - windows + bazel: + - 7.x + - 6.x +tasks: + verify_targets: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@curl//:curl' + + verify_targets_mbedtls: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@curl//:curl' + build_flags: + - '--@curl//:use_mbedtls=true' + + verify_targets_http_only_disabled: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@curl//:curl' + build_flags: + - '--@curl//:http_only=false' diff --git a/modules/curl/8.8.0/source.json b/modules/curl/8.8.0/source.json new file mode 100644 index 00000000000..34223aa8598 --- /dev/null +++ b/modules/curl/8.8.0/source.json @@ -0,0 +1,10 @@ +{ + "integrity": "sha256-d8DhzTWrW0W2WWRak7RtZgIk0AJPEYXoqVzbJ649eH0=", + "strip_prefix": "curl-8.8.0", + "url": "https://github.com/curl/curl/releases/download/curl-8_8_0/curl-8.8.0.tar.gz", + "patch_strip": 1, + "patches": { + "add_build_file.patch": "sha256-UxdkF/Urcn01corjD/UhKI6VQCGPqv2GvuHE2FiQRHw=", + "module_dot_bazel.patch": "sha256-QcYejB5CL4QORcinUW701hWtraX+OFWe/sISBxzwy94=" + } +} diff --git a/modules/curl/metadata.json b/modules/curl/metadata.json index 9464bc57396..365a34468d1 100644 --- a/modules/curl/metadata.json +++ b/modules/curl/metadata.json @@ -13,7 +13,9 @@ "versions": [ "8.4.0", "8.4.0.bcr.1", - "8.7.1" + "8.7.1", + "8.8.0", + "8.8.0.bcr.1" ], "yanked_versions": {} } diff --git a/modules/earcut/2.2.4/MODULE.bazel b/modules/earcut/2.2.4/MODULE.bazel new file mode 100644 index 00000000000..f9fb1863f32 --- /dev/null +++ b/modules/earcut/2.2.4/MODULE.bazel @@ -0,0 +1,5 @@ +module( + name = "earcut", + version = "2.2.4", + compatibility_level = 2, +) diff --git a/modules/earcut/2.2.4/patches/build_dot_bazel.patch b/modules/earcut/2.2.4/patches/build_dot_bazel.patch new file mode 100644 index 00000000000..ce46aa3e32c --- /dev/null +++ b/modules/earcut/2.2.4/patches/build_dot_bazel.patch @@ -0,0 +1,10 @@ +--- /dev/null ++++ BUILD.bazel +@@ -0,0 +1,7 @@ ++package(default_visibility = ["//visibility:public"]) ++ ++cc_library( ++ name = "earcut", ++ hdrs = ["include/mapbox/earcut.hpp"], ++ strip_include_prefix = "include/mapbox", ++) diff --git a/modules/earcut/2.2.4/patches/module_dot_bazel.patch b/modules/earcut/2.2.4/patches/module_dot_bazel.patch new file mode 100644 index 00000000000..0c90cfb8089 --- /dev/null +++ b/modules/earcut/2.2.4/patches/module_dot_bazel.patch @@ -0,0 +1,8 @@ +--- /dev/null ++++ MODULE.bazel +@@ -0,0 +1,5 @@ ++module( ++ name = "earcut", ++ version = "2.2.4", ++ compatibility_level = 2, ++) diff --git a/modules/earcut/2.2.4/presubmit.yml b/modules/earcut/2.2.4/presubmit.yml new file mode 100644 index 00000000000..12c364051f0 --- /dev/null +++ b/modules/earcut/2.2.4/presubmit.yml @@ -0,0 +1,11 @@ +matrix: + bazel: ["6.x", "7.x"] + platform: ["debian10", "macos", "macos_arm64", "ubuntu2004", "windows"] + +tasks: + verify_targets: + name: Verify build targets + bazel: ${{ bazel }} + platform: ${{ platform }} + build_targets: + - '@earcut//:earcut' diff --git a/modules/earcut/2.2.4/source.json b/modules/earcut/2.2.4/source.json new file mode 100644 index 00000000000..a20284ffe70 --- /dev/null +++ b/modules/earcut/2.2.4/source.json @@ -0,0 +1,10 @@ +{ + "integrity": "sha256-/PpqR6UtTJTclgvbdH8X4HdgkjVRewu1zoCX1rdHaVo=", + "patch_strip": 0, + "patches": { + "build_dot_bazel.patch": "sha256-zL81MX2I23IFPheCBOxGJodROgLfYspapZTvQKse72g=", + "module_dot_bazel.patch": "sha256-8ALtnH924elDl8U4ZLwPO6lxDxLnX9xilCMvwo4ZxeU=" + }, + "strip_prefix": "earcut.hpp-2.2.4", + "url": "https://github.com/mapbox/earcut.hpp/archive/refs/tags/v2.2.4.tar.gz" +} diff --git a/modules/earcut/metadata.json b/modules/earcut/metadata.json new file mode 100644 index 00000000000..a056bca576d --- /dev/null +++ b/modules/earcut/metadata.json @@ -0,0 +1,15 @@ +{ + "homepage": "https://github.com/mapbox/earcut.hpp", + "maintainers": [ + { + "email": "shaban_ziad@hotmail.com", + "github": "shabanzd", + "name": "Ziad Shaban" + } + ], + "repository": [ + "https://github.com/mapbox/earcut.hpp" + ], + "versions": ["2.2.4"], + "yanked_versions": {} +} diff --git a/modules/fmt/11.0.1/MODULE.bazel b/modules/fmt/11.0.1/MODULE.bazel new file mode 100644 index 00000000000..77b7f4294c6 --- /dev/null +++ b/modules/fmt/11.0.1/MODULE.bazel @@ -0,0 +1,8 @@ +module( + name = "fmt", + version = "11.0.1", + bazel_compatibility = [">=7.2.1"], + compatibility_level = 10, +) + +bazel_dep(name = "platforms", version = "0.0.10") diff --git a/modules/fmt/11.0.1/overlay/BUILD.bazel b/modules/fmt/11.0.1/overlay/BUILD.bazel new file mode 100644 index 00000000000..dba44eb267f --- /dev/null +++ b/modules/fmt/11.0.1/overlay/BUILD.bazel @@ -0,0 +1,18 @@ +cc_library( + name = "fmt", + srcs = [ + #"src/fmt.cc", # No C++ module support, yet in Bazel (https://github.com/bazelbuild/bazel/pull/19940) + "src/format.cc", + "src/os.cc", + ], + hdrs = glob([ + "include/fmt/*.h", + ]), + copts = select({ + "@platforms//os:windows": ["-utf-8"], + "//conditions:default": [], + }), + includes = ["include"], + strip_include_prefix = "include", # workaround: only needed on some macOS systems (see https://github.com/bazelbuild/bazel-central-registry/issues/1537) + visibility = ["//visibility:public"], +) diff --git a/modules/fmt/11.0.1/overlay/MODULE.bazel b/modules/fmt/11.0.1/overlay/MODULE.bazel new file mode 120000 index 00000000000..9b599e3ad9c --- /dev/null +++ b/modules/fmt/11.0.1/overlay/MODULE.bazel @@ -0,0 +1 @@ +../MODULE.bazel \ No newline at end of file diff --git a/modules/fmt/11.0.1/presubmit.yml b/modules/fmt/11.0.1/presubmit.yml new file mode 100644 index 00000000000..487e9389b60 --- /dev/null +++ b/modules/fmt/11.0.1/presubmit.yml @@ -0,0 +1,26 @@ +matrix: + unix_platform: + - debian10 + - debian11 + - macos + - macos_arm64 + - ubuntu2004 + - ubuntu2204 + windows_test: + - windows + bazel: [7.x] +tasks: + unix_test: + name: Verify build targets + platform: ${{ unix_platform }} + bazel: ${{ bazel }} + build_targets: + - '@fmt//:fmt' + windows_test: + name: Verify build targets + platform: ${{ windows_test }} + bazel: ${{ bazel }} + build_flags: + - --cxxopt=/utf-8 + build_targets: + - '@fmt//:fmt' diff --git a/modules/fmt/11.0.1/source.json b/modules/fmt/11.0.1/source.json new file mode 100644 index 00000000000..feabd01193a --- /dev/null +++ b/modules/fmt/11.0.1/source.json @@ -0,0 +1,10 @@ +{ + "url": "https://github.com/fmtlib/fmt/releases/download/11.0.1/fmt-11.0.1.zip", + "integrity": "sha256-YspFUxgUEJtdbO8M8v0X25LDKjDdIwEpdudoxoVTSBQ=", + "strip_prefix": "fmt-11.0.1", + "patch_strip": 0, + "overlay": { + "MODULE.bazel": "sha256-c3HCT6IgOILopTREemiOqkPvzQLG80/svQplDbJCALE=", + "BUILD.bazel": "sha256-n/TmPiGOx6HketgmAHPAweorXhPcP7OUUBbm9g9tQTs=" + } +} diff --git a/modules/fmt/metadata.json b/modules/fmt/metadata.json index 2dd63b2bb8e..9ed2925410f 100644 --- a/modules/fmt/metadata.json +++ b/modules/fmt/metadata.json @@ -19,7 +19,8 @@ "10.2.0", "10.2.1", "10.2.1.bcr.1", - "11.0.0" + "11.0.0", + "11.0.1" ], "yanked_versions": {} } diff --git a/modules/grpc/1.63.1.bcr.1/MODULE.bazel b/modules/grpc/1.63.1.bcr.1/MODULE.bazel new file mode 100644 index 00000000000..2cb1ebc2298 --- /dev/null +++ b/modules/grpc/1.63.1.bcr.1/MODULE.bazel @@ -0,0 +1,81 @@ +module( + name = "grpc", + version = "1.63.1.bcr.1", + compatibility_level = 1, + repo_name = "com_github_grpc_grpc", +) + +bazel_dep(name = "bazel_skylib", version = "1.5.0") +bazel_dep(name = "platforms", version = "0.0.8") +bazel_dep(name = "boringssl", version = "0.0.0-20230215-5c22014") +bazel_dep(name = "c-ares", version = "1.15.0", repo_name = "com_github_cares_cares") +bazel_dep(name = "abseil-cpp", version = "20240116.0", repo_name = "com_google_absl") +bazel_dep(name = "protobuf", version = "26.0.bcr.1", repo_name = "com_google_protobuf") +bazel_dep(name = "re2", version = "2021-09-01", repo_name = "com_googlesource_code_re2") +bazel_dep(name = "rules_proto", version = "4.0.0") +bazel_dep(name = "zlib", version = "1.2.13") +bazel_dep(name = "opentelemetry-cpp", version = "1.14.2", repo_name = "io_opentelemetry_cpp") +bazel_dep(name = "rules_java", version = "5.1.0") +bazel_dep(name = "rules_go", version = "0.39.1", repo_name = "io_bazel_rules_go") +bazel_dep(name = "googletest", version = "1.14.0.bcr.1", repo_name = "com_google_googletest") +bazel_dep(name = "rules_cc", version = "0.0.9") +bazel_dep(name = "googleapis", version = "0.0.0-20240326-1c8d509c5", repo_name = "com_google_googleapis") +bazel_dep(name = "google_benchmark", version = "1.8.4", repo_name = "com_github_google_benchmark") +bazel_dep(name = "rules_apple", version = "3.5.1", repo_name = "build_bazel_rules_apple") +bazel_dep(name = "apple_support", version = "1.15.1", repo_name = "build_bazel_apple_support") + + +grpc_repo_deps_ext = use_extension("//bazel:grpc_deps.bzl", "grpc_repo_deps_ext") +use_repo( + grpc_repo_deps_ext, + "com_envoyproxy_protoc_gen_validate", + "com_github_cncf_udpa", + "com_github_cncf_xds", + "envoy_api", + "google_cloud_cpp", + "io_opencensus_cpp", +) + +switched_rules = use_extension("@com_google_googleapis//:extensions.bzl", "switched_rules") +switched_rules.use_languages( + cc = True, + grpc = True, + python = True, +) +use_repo(switched_rules, "com_google_googleapis_imports") + +bazel_dep(name = "rules_python", version = "0.29.0") + +PYTHON_VERSIONS = [ + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", +] + +python = use_extension("@rules_python//python/extensions:python.bzl", "python") + +[ + python.toolchain( + is_default = python_version == PYTHON_VERSIONS[-1], + python_version = python_version, + ) + for python_version in PYTHON_VERSIONS +] + +pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") + +[ + pip.parse( + hub_name = "grpc_python_dependencies", + python_version = python_version, + requirements_lock = "//:requirements.bazel.txt", + ) + for python_version in PYTHON_VERSIONS +] + +use_repo(pip, "grpc_python_dependencies") + +grpc_python_deps_ext = use_extension("//bazel:grpc_python_deps.bzl", "grpc_python_deps_ext") +use_repo(grpc_python_deps_ext, "cython") diff --git a/modules/grpc/1.63.1.bcr.1/patches/add_module_bazel.patch b/modules/grpc/1.63.1.bcr.1/patches/add_module_bazel.patch new file mode 100644 index 00000000000..a6e97f99a7f --- /dev/null +++ b/modules/grpc/1.63.1.bcr.1/patches/add_module_bazel.patch @@ -0,0 +1,87 @@ +diff --git a/MODULE.bazel b/MODULE.bazel +new file mode 100644 +index 0000000000..f5fa74e4bc +--- /dev/null ++++ b/MODULE.bazel +@@ -0,0 +1,81 @@ ++module( ++ name = "grpc", ++ version = "1.63.1.bcr.1", ++ compatibility_level = 1, ++ repo_name = "com_github_grpc_grpc", ++) ++ ++bazel_dep(name = "bazel_skylib", version = "1.5.0") ++bazel_dep(name = "platforms", version = "0.0.8") ++bazel_dep(name = "boringssl", version = "0.0.0-20230215-5c22014") ++bazel_dep(name = "c-ares", version = "1.15.0", repo_name = "com_github_cares_cares") ++bazel_dep(name = "abseil-cpp", version = "20240116.0", repo_name = "com_google_absl") ++bazel_dep(name = "protobuf", version = "26.0.bcr.1", repo_name = "com_google_protobuf") ++bazel_dep(name = "re2", version = "2021-09-01", repo_name = "com_googlesource_code_re2") ++bazel_dep(name = "rules_proto", version = "4.0.0") ++bazel_dep(name = "zlib", version = "1.2.13") ++bazel_dep(name = "opentelemetry-cpp", version = "1.14.2", repo_name = "io_opentelemetry_cpp") ++bazel_dep(name = "rules_java", version = "5.1.0") ++bazel_dep(name = "rules_go", version = "0.39.1", repo_name = "io_bazel_rules_go") ++bazel_dep(name = "googletest", version = "1.14.0.bcr.1", repo_name = "com_google_googletest") ++bazel_dep(name = "rules_cc", version = "0.0.9") ++bazel_dep(name = "googleapis", version = "0.0.0-20240326-1c8d509c5", repo_name = "com_google_googleapis") ++bazel_dep(name = "google_benchmark", version = "1.8.4", repo_name = "com_github_google_benchmark") ++bazel_dep(name = "rules_apple", version = "3.5.1", repo_name = "build_bazel_rules_apple") ++bazel_dep(name = "apple_support", version = "1.15.1", repo_name = "build_bazel_apple_support") ++ ++ ++grpc_repo_deps_ext = use_extension("//bazel:grpc_deps.bzl", "grpc_repo_deps_ext") ++use_repo( ++ grpc_repo_deps_ext, ++ "com_envoyproxy_protoc_gen_validate", ++ "com_github_cncf_udpa", ++ "com_github_cncf_xds", ++ "envoy_api", ++ "google_cloud_cpp", ++ "io_opencensus_cpp", ++) ++ ++switched_rules = use_extension("@com_google_googleapis//:extensions.bzl", "switched_rules") ++switched_rules.use_languages( ++ cc = True, ++ grpc = True, ++ python = True, ++) ++use_repo(switched_rules, "com_google_googleapis_imports") ++ ++bazel_dep(name = "rules_python", version = "0.29.0") ++ ++PYTHON_VERSIONS = [ ++ "3.8", ++ "3.9", ++ "3.10", ++ "3.11", ++ "3.12", ++] ++ ++python = use_extension("@rules_python//python/extensions:python.bzl", "python") ++ ++[ ++ python.toolchain( ++ is_default = python_version == PYTHON_VERSIONS[-1], ++ python_version = python_version, ++ ) ++ for python_version in PYTHON_VERSIONS ++] ++ ++pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") ++ ++[ ++ pip.parse( ++ hub_name = "grpc_python_dependencies", ++ python_version = python_version, ++ requirements_lock = "//:requirements.bazel.txt", ++ ) ++ for python_version in PYTHON_VERSIONS ++] ++ ++use_repo(pip, "grpc_python_dependencies") ++ ++grpc_python_deps_ext = use_extension("//bazel:grpc_python_deps.bzl", "grpc_python_deps_ext") ++use_repo(grpc_python_deps_ext, "cython") diff --git a/modules/grpc/1.63.1.bcr.1/patches/adopt_bzlmod.patch b/modules/grpc/1.63.1.bcr.1/patches/adopt_bzlmod.patch new file mode 100644 index 00000000000..2459161122d --- /dev/null +++ b/modules/grpc/1.63.1.bcr.1/patches/adopt_bzlmod.patch @@ -0,0 +1,974 @@ +diff --git a/BUILD b/BUILD +index 2b01d516fc..f6426d06d2 100644 +--- a/BUILD ++++ b/BUILD +@@ -31,7 +31,7 @@ package( + default_visibility = ["//visibility:public"], + features = [ + "-parse_headers", +- "layering_check", ++ "-layering_check", + ], + ) + +diff --git a/bazel/cython_library.bzl b/bazel/cython_library.bzl +index dc2ef7a890..fd2881ed8c 100644 +--- a/bazel/cython_library.bzl ++++ b/bazel/cython_library.bzl +@@ -72,7 +72,7 @@ def pyx_library(name, deps = [], py_deps = [], srcs = [], **kwargs): + native.cc_binary( + name = shared_object_name, + srcs = [stem + ".cpp"], +- deps = deps + ["@local_config_python//:python_headers"], ++ deps = deps + ["@rules_python//python/cc:current_py_cc_headers"], + defines = defines, + linkshared = 1, + ) +diff --git a/bazel/generate_cc.bzl b/bazel/generate_cc.bzl +index c0eb9401ee..a2c7f3a1bb 100644 +--- a/bazel/generate_cc.bzl ++++ b/bazel/generate_cc.bzl +@@ -187,7 +187,7 @@ _generate_cc = rule( + mandatory = False, + ), + "_protoc": attr.label( +- default = Label("//external:protocol_compiler"), ++ default = Label("@com_google_protobuf//:protoc"), + executable = True, + cfg = "exec", + ), +diff --git a/bazel/generate_objc.bzl b/bazel/generate_objc.bzl +index d9518af7d8..d6eeb4cab0 100644 +--- a/bazel/generate_objc.bzl ++++ b/bazel/generate_objc.bzl +@@ -180,7 +180,7 @@ generate_objc = rule( + default = "@com_google_protobuf//:well_known_type_protos", + ), + "_protoc": attr.label( +- default = Label("//external:protocol_compiler"), ++ default = Label("@com_google_protobuf//:protoc"), + executable = True, + cfg = "exec", + ), +diff --git a/bazel/grpc_build_system.bzl b/bazel/grpc_build_system.bzl +index 0a679a0b2a..cc88adbc27 100644 +--- a/bazel/grpc_build_system.bzl ++++ b/bazel/grpc_build_system.bzl +@@ -27,8 +27,6 @@ + Contains macros used throughout the repo. + """ + +-load("@build_bazel_rules_apple//apple:ios.bzl", "ios_unit_test") +-load("@build_bazel_rules_apple//apple/testing/default_runner:ios_test_runner.bzl", "ios_test_runner") + load("@com_google_protobuf//bazel:upb_proto_library.bzl", "upb_proto_library", "upb_proto_reflection_library") + load("//bazel:cc_grpc_library.bzl", "cc_grpc_library") + load("//bazel:copts.bzl", "GRPC_DEFAULT_COPTS") +@@ -65,7 +63,7 @@ def _get_external_deps(external_deps): + elif dep == "cares": + ret += select({ + "//:grpc_no_ares": [], +- "//conditions:default": ["//external:cares"], ++ "//conditions:default": ["//third_party:cares"], + }) + elif dep == "cronet_c_for_grpc": + ret.append("//third_party/objective_c/Cronet:cronet_c_for_grpc") +@@ -80,7 +78,7 @@ def _get_external_deps(external_deps): + elif dep == "libprotobuf_mutator": + ret.append("@com_google_libprotobuf_mutator//:libprotobuf_mutator") + else: +- ret.append("//external:" + dep) ++ ret.append("//third_party:" + dep) + return ret + + def _update_visibility(visibility): +@@ -256,10 +254,6 @@ def ios_cc_test( + test_lib_ios = name + "_test_lib_ios" + ios_tags = tags + ["manual", "ios_cc_test"] + test_runner = "ios_x86_64_sim_runner_" + name +- ios_test_runner( +- name = test_runner, +- device_type = "iPhone X", +- ) + if not any([t for t in tags if t.startswith("no_test_ios")]): + native.objc_library( + name = test_lib_ios, +@@ -272,15 +266,6 @@ def ios_cc_test( + testonly = 1, + ) + ios_test_deps = [":" + test_lib_ios] +- ios_unit_test( +- name = name + "_on_ios", +- size = kwargs.get("size"), +- data = kwargs.get("data"), +- tags = ios_tags, +- minimum_os_version = "9.0", +- runner = test_runner, +- deps = ios_test_deps, +- ) + + def expand_poller_config(name, srcs, deps, tags, args, exclude_pollers, uses_polling, uses_event_engine, flaky): + """Common logic used to parameterize tests for every poller and EventEngine. +diff --git a/bazel/grpc_deps.bzl b/bazel/grpc_deps.bzl +index 0873c63ab1..6d83f4dc47 100644 +--- a/bazel/grpc_deps.bzl ++++ b/bazel/grpc_deps.bzl +@@ -19,274 +19,6 @@ load("@com_github_grpc_grpc//bazel:grpc_python_deps.bzl", "grpc_python_deps") + # buildifier: disable=unnamed-macro + def grpc_deps(): + """Loads dependencies need to compile and test the grpc library.""" +- +- native.bind( +- name = "upb_amalgamation_lib", +- actual = "@com_google_protobuf//upb:amalgamation", +- ) +- +- native.bind( +- name = "upb_base_lib", +- actual = "@com_google_protobuf//upb/base", +- ) +- +- native.bind( +- name = "upb_message_lib", +- actual = "@com_google_protobuf//upb:message", +- ) +- +- native.bind( +- name = "upb_mem_lib", +- actual = "@com_google_protobuf//upb/mem", +- ) +- +- native.bind( +- name = "upb_reflection", +- actual = "@com_google_protobuf//upb:reflection", +- ) +- +- native.bind( +- name = "upb_lib_descriptor", +- actual = "@com_google_protobuf//upb:descriptor_upb_proto", +- ) +- +- native.bind( +- name = "upb_lib_descriptor_reflection", +- actual = "@com_google_protobuf//upb:descriptor_upb_proto_reflection", +- ) +- +- native.bind( +- name = "upb_textformat_lib", +- actual = "@com_google_protobuf//upb/text", +- ) +- +- native.bind( +- name = "upb_json_lib", +- actual = "@com_google_protobuf//upb/json", +- ) +- +- native.bind( +- name = "upb_generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me", +- actual = "@com_google_protobuf//upb:generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me", +- ) +- +- native.bind( +- name = "libssl", +- actual = "@boringssl//:ssl", +- ) +- +- native.bind( +- name = "libcrypto", +- actual = "@boringssl//:crypto", +- ) +- +- native.bind( +- name = "madler_zlib", +- actual = "@zlib//:zlib", +- ) +- +- native.bind( +- name = "protobuf", +- actual = "@com_google_protobuf//:protobuf", +- ) +- +- native.bind( +- name = "protobuf_clib", +- actual = "@com_google_protobuf//:protoc_lib", +- ) +- +- native.bind( +- name = "protobuf_headers", +- actual = "@com_google_protobuf//:protobuf_headers", +- ) +- +- native.bind( +- name = "protocol_compiler", +- actual = "@com_google_protobuf//:protoc", +- ) +- +- native.bind( +- name = "cares", +- actual = "@com_github_cares_cares//:ares", +- ) +- +- native.bind( +- name = "gtest", +- actual = "@com_google_googletest//:gtest", +- ) +- +- native.bind( +- name = "fuzztest", +- actual = "@com_google_fuzztest//fuzztest", +- ) +- +- native.bind( +- name = "fuzztest_main", +- actual = "@com_google_fuzztest//fuzztest:fuzztest_gtest_main", +- ) +- +- native.bind( +- name = "benchmark", +- actual = "@com_github_google_benchmark//:benchmark", +- ) +- +- native.bind( +- name = "re2", +- actual = "@com_googlesource_code_re2//:re2", +- ) +- +- native.bind( +- name = "grpc_cpp_plugin", +- actual = "@com_github_grpc_grpc//src/compiler:grpc_cpp_plugin", +- ) +- +- native.bind( +- name = "grpc++_codegen_proto", +- actual = "@com_github_grpc_grpc//:grpc++_codegen_proto", +- ) +- +- native.bind( +- name = "opencensus-context", +- actual = "@io_opencensus_cpp//opencensus/context:context", +- ) +- +- native.bind( +- name = "opencensus-trace", +- actual = "@io_opencensus_cpp//opencensus/trace:trace", +- ) +- +- native.bind( +- name = "opencensus-trace-context_util", +- actual = "@io_opencensus_cpp//opencensus/trace:context_util", +- ) +- +- native.bind( +- name = "opencensus-trace-propagation", +- actual = "@io_opencensus_cpp//opencensus/trace:grpc_trace_bin", +- ) +- +- native.bind( +- name = "opencensus-trace-span_context", +- actual = "@io_opencensus_cpp//opencensus/trace:span_context", +- ) +- +- native.bind( +- name = "opencensus-stats", +- actual = "@io_opencensus_cpp//opencensus/stats:stats", +- ) +- +- native.bind( +- name = "opencensus-stats-test", +- actual = "@io_opencensus_cpp//opencensus/stats:test_utils", +- ) +- +- native.bind( +- name = "opencensus-with-tag-map", +- actual = "@io_opencensus_cpp//opencensus/tags:with_tag_map", +- ) +- +- native.bind( +- name = "opencensus-tags", +- actual = "@io_opencensus_cpp//opencensus/tags:tags", +- ) +- +- native.bind( +- name = "opencensus-tags-context_util", +- actual = "@io_opencensus_cpp//opencensus/tags:context_util", +- ) +- +- native.bind( +- name = "opencensus-trace-stackdriver_exporter", +- actual = "@io_opencensus_cpp//opencensus/exporters/trace/stackdriver:stackdriver_exporter", +- ) +- +- native.bind( +- name = "opencensus-stats-stackdriver_exporter", +- actual = "@io_opencensus_cpp//opencensus/exporters/stats/stackdriver:stackdriver_exporter", +- ) +- +- native.bind( +- name = "googleapis_trace_grpc_service", +- actual = "@com_google_googleapis//google/devtools/cloudtrace/v2:cloudtrace_cc_grpc", +- ) +- +- native.bind( +- name = "googleapis_monitoring_grpc_service", +- actual = "@com_google_googleapis//google/monitoring/v3:monitoring_cc_grpc", +- ) +- +- native.bind( +- name = "googleapis_logging_grpc_service", +- actual = "@com_google_googleapis//google/logging/v2:logging_cc_grpc", +- ) +- +- native.bind( +- name = "googleapis_logging_cc_proto", +- actual = "@com_google_googleapis//google/logging/v2:logging_cc_proto", +- ) +- +- if "platforms" not in native.existing_rules(): +- http_archive( +- name = "platforms", +- sha256 = "8150406605389ececb6da07cbcb509d5637a3ab9a24bc69b1101531367d89d74", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/platforms/releases/download/0.0.8/platforms-0.0.8.tar.gz", +- "https://github.com/bazelbuild/platforms/releases/download/0.0.8/platforms-0.0.8.tar.gz", +- ], +- ) +- +- if "boringssl" not in native.existing_rules(): +- http_archive( +- name = "boringssl", +- # Use github mirror instead of https://boringssl.googlesource.com/boringssl +- # to obtain a boringssl archive with consistent sha256 +- sha256 = "06ba43ff1825c8a9a45dae7f85e532153a531707f6a3e56be1e892fd2d3b75f6", +- strip_prefix = "boringssl-e14d29f68c2d1b02e06f10c83b9b8ea4d061f8df", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/e14d29f68c2d1b02e06f10c83b9b8ea4d061f8df.tar.gz", +- "https://github.com/google/boringssl/archive/e14d29f68c2d1b02e06f10c83b9b8ea4d061f8df.tar.gz", +- ], +- ) +- +- if "zlib" not in native.existing_rules(): +- http_archive( +- name = "zlib", +- build_file = "@com_github_grpc_grpc//third_party:zlib.BUILD", +- sha256 = "18337cdb32562003c39d9f7322b9a166ad4abfb2b909566428e11f96d2385586", +- strip_prefix = "zlib-09155eaa2f9270dc4ed1fa13e2b4b2613e6e4851", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/madler/zlib/archive/09155eaa2f9270dc4ed1fa13e2b4b2613e6e4851.tar.gz", +- "https://github.com/madler/zlib/archive/09155eaa2f9270dc4ed1fa13e2b4b2613e6e4851.tar.gz", +- ], +- ) +- +- if "com_google_protobuf" not in native.existing_rules(): +- http_archive( +- name = "com_google_protobuf", +- sha256 = "387478260190c540388839a3449c635a69708d92fc38ea6e2364b1196db90ea5", +- strip_prefix = "protobuf-2434ef2adf0c74149b9d547ac5fb545a1ff8b6b5", +- urls = [ +- # https://github.com/protocolbuffers/protobuf/commits/v26.1 +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/protobuf/archive/2434ef2adf0c74149b9d547ac5fb545a1ff8b6b5.tar.gz", +- "https://github.com/protocolbuffers/protobuf/archive/2434ef2adf0c74149b9d547ac5fb545a1ff8b6b5.tar.gz", +- ], +- patches = [ +- "@com_github_grpc_grpc//third_party:protobuf.patch", +- ], +- patch_args = ["-p1"], +- ) +- +- if "com_google_googletest" not in native.existing_rules(): +- http_archive( +- name = "com_google_googletest", +- sha256 = "31bf78bd91b96dd5e24fab3bb1d7f3f7453ccbaceec9afb86d6e4816a15ab109", +- strip_prefix = "googletest-2dd1c131950043a8ad5ab0d2dda0e0970596586a", +- urls = [ +- # 2023-10-09 +- "https://github.com/google/googletest/archive/2dd1c131950043a8ad5ab0d2dda0e0970596586a.tar.gz", +- ], +- ) +- + if "com_google_fuzztest" not in native.existing_rules(): + # when updating this remember to run: + # bazel run @com_google_fuzztest//bazel:setup_configs > tools/fuzztest.bazelrc +@@ -300,62 +32,6 @@ def grpc_deps(): + ], + ) + +- if "rules_cc" not in native.existing_rules(): +- http_archive( +- name = "rules_cc", +- sha256 = "2037875b9a4456dce4a79d112a8ae885bbc4aad968e6587dca6e64f3a0900cdf", +- strip_prefix = "rules_cc-0.0.9", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/rules_cc/releases/download/0.0.9/rules_cc-0.0.9.tar.gz", +- "https://github.com/bazelbuild/rules_cc/releases/download/0.0.9/rules_cc-0.0.9.tar.gz", +- ], +- ) +- +- if "com_github_google_benchmark" not in native.existing_rules(): +- http_archive( +- name = "com_github_google_benchmark", +- sha256 = "8e7b955f04bc6984e4f14074d0d191474f76a6c8e849e04a9dced49bc975f2d4", +- strip_prefix = "benchmark-344117638c8ff7e239044fd0fa7085839fc03021", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/benchmark/archive/344117638c8ff7e239044fd0fa7085839fc03021.tar.gz", +- "https://github.com/google/benchmark/archive/344117638c8ff7e239044fd0fa7085839fc03021.tar.gz", +- ], +- ) +- +- if "com_googlesource_code_re2" not in native.existing_rules(): +- http_archive( +- name = "com_googlesource_code_re2", +- sha256 = "1ae8ccfdb1066a731bba6ee0881baad5efd2cd661acd9569b689f2586e1a50e9", +- strip_prefix = "re2-2022-04-01", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/re2/archive/2022-04-01.tar.gz", +- "https://github.com/google/re2/archive/2022-04-01.tar.gz", +- ], +- ) +- +- if "com_github_cares_cares" not in native.existing_rules(): +- http_archive( +- name = "com_github_cares_cares", +- build_file = "@com_github_grpc_grpc//third_party:cares/cares.BUILD", +- sha256 = "bf26e5b25e259911914a85ae847b6d723488adb5af4f8bdeb9d0871a318476e3", +- strip_prefix = "c-ares-6360e96b5cf8e5980c887ce58ef727e53d77243a", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/c-ares/c-ares/archive/6360e96b5cf8e5980c887ce58ef727e53d77243a.tar.gz", +- "https://github.com/c-ares/c-ares/archive/6360e96b5cf8e5980c887ce58ef727e53d77243a.tar.gz", +- ], +- ) +- +- if "com_google_absl" not in native.existing_rules(): +- http_archive( +- name = "com_google_absl", +- sha256 = "338420448b140f0dfd1a1ea3c3ce71b3bc172071f24f4d9a57d59b45037da440", +- strip_prefix = "abseil-cpp-20240116.0", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/abseil/abseil-cpp/archive/20240116.0.tar.gz", +- "https://github.com/abseil/abseil-cpp/archive/20240116.0.tar.gz", +- ], +- ) +- + if "bazel_toolchains" not in native.existing_rules(): + # list of releases is at https://github.com/bazelbuild/bazel-toolchains/releases + http_archive( +@@ -368,27 +44,6 @@ def grpc_deps(): + ], + ) + +- if "bazel_skylib" not in native.existing_rules(): +- http_archive( +- name = "bazel_skylib", +- urls = [ +- "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz", +- "https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz", +- ], +- sha256 = "1c531376ac7e5a180e0237938a2536de0c54d93f5c278634818e0efc952dd56c", +- ) +- +- if "bazel_compdb" not in native.existing_rules(): +- http_archive( +- name = "bazel_compdb", +- sha256 = "bcecfd622c4ef272fd4ba42726a52e140b961c4eac23025f18b346c968a8cfb4", +- strip_prefix = "bazel-compilation-database-0.4.5", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/grailbio/bazel-compilation-database/archive/0.4.5.tar.gz", +- "https://github.com/grailbio/bazel-compilation-database/archive/0.4.5.tar.gz", +- ], +- ) +- + if "io_opencensus_cpp" not in native.existing_rules(): + http_archive( + name = "io_opencensus_cpp", +@@ -411,48 +66,6 @@ def grpc_deps(): + ], + ) + +- if "io_bazel_rules_go" not in native.existing_rules(): +- http_archive( +- name = "io_bazel_rules_go", +- sha256 = "69de5c704a05ff37862f7e0f5534d4f479418afc21806c887db544a316f3cb6b", +- urls = [ +- "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.27.0/rules_go-v0.27.0.tar.gz", +- "https://github.com/bazelbuild/rules_go/releases/download/v0.27.0/rules_go-v0.27.0.tar.gz", +- ], +- ) +- +- if "build_bazel_rules_apple" not in native.existing_rules(): +- http_archive( +- name = "build_bazel_rules_apple", +- sha256 = "34c41bfb59cdaea29ac2df5a2fa79e5add609c71bb303b2ebb10985f93fa20e7", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/rules_apple/releases/download/3.1.1/rules_apple.3.1.1.tar.gz", +- "https://github.com/bazelbuild/rules_apple/releases/download/3.1.1/rules_apple.3.1.1.tar.gz", +- ], +- ) +- +- if "build_bazel_apple_support" not in native.existing_rules(): +- http_archive( +- name = "build_bazel_apple_support", +- sha256 = "cf4d63f39c7ba9059f70e995bf5fe1019267d3f77379c2028561a5d7645ef67c", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/apple_support/releases/download/1.11.1/apple_support.1.11.1.tar.gz", +- "https://github.com/bazelbuild/apple_support/releases/download/1.11.1/apple_support.1.11.1.tar.gz", +- ], +- ) +- +- if "com_google_googleapis" not in native.existing_rules(): +- http_archive( +- name = "com_google_googleapis", +- sha256 = "5bb6b0253ccf64b53d6c7249625a7e3f6c3bc6402abd52d3778bfa48258703a0", +- strip_prefix = "googleapis-2f9af297c84c55c8b871ba4495e01ade42476c92", +- build_file = Label("//bazel:googleapis.BUILD"), +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/googleapis/googleapis/archive/2f9af297c84c55c8b871ba4495e01ade42476c92.tar.gz", +- "https://github.com/googleapis/googleapis/archive/2f9af297c84c55c8b871ba4495e01ade42476c92.tar.gz", +- ], +- ) +- + if "bazel_gazelle" not in native.existing_rules(): + http_archive( + name = "bazel_gazelle", +@@ -514,17 +127,6 @@ def grpc_deps(): + ], + ) + +- if "io_opentelemetry_cpp" not in native.existing_rules(): +- http_archive( +- name = "io_opentelemetry_cpp", +- sha256 = "ed681d20a684b7d485a49288e7cfb2d182bf882e5c112c5f2fa3f9e9da2278fc", +- strip_prefix = "opentelemetry-cpp-4bd64c9a336fd438d6c4c9dad2e6b61b0585311f", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/open-telemetry/opentelemetry-cpp/archive/4bd64c9a336fd438d6c4c9dad2e6b61b0585311f.tar.gz", +- "https://github.com/open-telemetry/opentelemetry-cpp/archive/4bd64c9a336fd438d6c4c9dad2e6b61b0585311f.tar.gz", +- ], +- ) +- + if "google_cloud_cpp" not in native.existing_rules(): + http_archive( + name = "google_cloud_cpp", +@@ -535,8 +137,15 @@ def grpc_deps(): + "https://github.com/googleapis/google-cloud-cpp/archive/refs/tags/v2.16.0.tar.gz", + ], + ) +- +- grpc_python_deps() ++ http_archive( ++ name = "com_github_cncf_udpa", ++ sha256 = "0d33b83f8c6368954e72e7785539f0d272a8aba2f6e2e336ed15fd1514bc9899", ++ strip_prefix = "xds-e9ce68804cb4e64cab5a52e3c8baf840d4ff87b7", ++ urls = [ ++ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/cncf/xds/archive/e9ce68804cb4e64cab5a52e3c8baf840d4ff87b7.tar.gz", ++ "https://github.com/cncf/xds/archive/e9ce68804cb4e64cab5a52e3c8baf840d4ff87b7.tar.gz", ++ ], ++ ) + + # TODO: move some dependencies from "grpc_deps" here? + # buildifier: disable=unnamed-macro +@@ -626,3 +235,5 @@ def grpc_test_only_deps(): + strip_prefix = "libprotobuf-mutator-1f95f8083066f5b38fd2db172e7e7f9aa7c49d2d", + build_file = "@com_github_grpc_grpc//third_party:libprotobuf_mutator.BUILD", + ) ++ ++grpc_repo_deps_ext = module_extension(implementation = lambda ctx: grpc_deps()) +diff --git a/bazel/grpc_python_deps.bzl b/bazel/grpc_python_deps.bzl +index dbfff526a1..8948fc573d 100644 +--- a/bazel/grpc_python_deps.bzl ++++ b/bazel/grpc_python_deps.bzl +@@ -16,6 +16,18 @@ + load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + load("@com_github_grpc_grpc//third_party/py:python_configure.bzl", "python_configure") + ++# buildifier: disable=unnamed-macro ++def cython(): ++ http_archive( ++ name = "cython", ++ build_file = "@com_github_grpc_grpc//third_party:cython.BUILD", ++ sha256 = "a2da56cc22be823acf49741b9aa3aa116d4f07fa8e8b35a3cb08b8447b37c607", ++ strip_prefix = "cython-0.29.35", ++ urls = [ ++ "https://github.com/cython/cython/archive/0.29.35.tar.gz", ++ ], ++ ) ++ + # buildifier: disable=unnamed-macro + def grpc_python_deps(): + """Loads dependencies for gRPC Python.""" +@@ -35,12 +47,6 @@ def grpc_python_deps(): + ) + + if "cython" not in native.existing_rules(): +- http_archive( +- name = "cython", +- build_file = "@com_github_grpc_grpc//third_party:cython.BUILD", +- sha256 = "a2da56cc22be823acf49741b9aa3aa116d4f07fa8e8b35a3cb08b8447b37c607", +- strip_prefix = "cython-0.29.35", +- urls = [ +- "https://github.com/cython/cython/archive/0.29.35.tar.gz", +- ], +- ) ++ cython() ++ ++grpc_python_deps_ext = module_extension(implementation = lambda ctx: cython()) +diff --git a/bazel/python_rules.bzl b/bazel/python_rules.bzl +index 9c19d7ac2f..5924fd5b5e 100644 +--- a/bazel/python_rules.bzl ++++ b/bazel/python_rules.bzl +@@ -110,7 +110,7 @@ _gen_py_aspect = aspect( + fragments = ["py"], + attrs = { + "_protoc": attr.label( +- default = Label("//external:protocol_compiler"), ++ default = Label("@com_google_protobuf//:protoc"), + providers = ["files_to_run"], + executable = True, + cfg = "exec", +@@ -166,7 +166,7 @@ py_proto_library = rule( + aspects = [_gen_py_aspect], + ), + "_protoc": attr.label( +- default = Label("//external:protocol_compiler"), ++ default = Label("@com_google_protobuf//:protoc"), + providers = ["files_to_run"], + executable = True, + cfg = "exec", +@@ -190,11 +190,7 @@ def _generate_pb2_grpc_src_impl(context): + arguments = [] + tools = [context.executable._protoc, context.executable._grpc_plugin] + out_dir = get_out_dir(protos, context) +- if out_dir.import_path: +- # is virtual imports +- out_path = out_dir.path +- else: +- out_path = context.genfiles_dir.path ++ out_path = out_dir.path + arguments += get_plugin_args( + context.executable._grpc_plugin, + plugin_flags, +@@ -259,7 +255,7 @@ _generate_pb2_grpc_src = rule( + executable = True, + providers = ["files_to_run"], + cfg = "exec", +- default = Label("//external:protocol_compiler"), ++ default = Label("@com_google_protobuf//:protoc"), + ), + "grpc_library": attr.label( + default = Label("//src/python/grpcio/grpc:grpcio"), +diff --git a/src/core/BUILD b/src/core/BUILD +index 9e247f4fb7..5e30a4d064 100644 +--- a/src/core/BUILD ++++ b/src/core/BUILD +@@ -25,7 +25,7 @@ licenses(["reciprocal"]) + package( + default_visibility = ["//:__subpackages__"], + features = [ +- "layering_check", ++ "-layering_check", + ], + ) + +diff --git a/src/cpp/ext/csm/BUILD b/src/cpp/ext/csm/BUILD +index e822ea37b6..5ee61db1cc 100644 +--- a/src/cpp/ext/csm/BUILD ++++ b/src/cpp/ext/csm/BUILD +@@ -24,7 +24,7 @@ licenses(["reciprocal"]) + package( + default_visibility = ["//visibility:public"], + features = [ +- "layering_check", ++ "-layering_check", + ], + ) + +diff --git a/src/cpp/ext/gcp/BUILD b/src/cpp/ext/gcp/BUILD +index e5466a4cdd..8335995901 100644 +--- a/src/cpp/ext/gcp/BUILD ++++ b/src/cpp/ext/gcp/BUILD +@@ -24,7 +24,7 @@ licenses(["reciprocal"]) + package( + default_visibility = ["//visibility:public"], + features = [ +- "layering_check", ++ "-layering_check", + ], + ) + +diff --git a/src/cpp/ext/otel/BUILD b/src/cpp/ext/otel/BUILD +index 588c769652..aa7ce738a4 100644 +--- a/src/cpp/ext/otel/BUILD ++++ b/src/cpp/ext/otel/BUILD +@@ -24,7 +24,7 @@ licenses(["reciprocal"]) + package( + default_visibility = ["//visibility:public"], + features = [ +- "layering_check", ++ "-layering_check", + ], + ) + +diff --git a/src/objective-c/grpc_objc_internal_library.bzl b/src/objective-c/grpc_objc_internal_library.bzl +index c5ad083b3e..7ed8882351 100644 +--- a/src/objective-c/grpc_objc_internal_library.bzl ++++ b/src/objective-c/grpc_objc_internal_library.bzl +@@ -23,11 +23,6 @@ Each rule listed must be re-written for Google's internal build system, and + each change must be ported from one to the other. + """ + +-load("@build_bazel_rules_apple//apple:ios.bzl", "ios_unit_test") +-load( +- "@build_bazel_rules_apple//apple/testing/default_runner:ios_test_runner.bzl", +- "ios_test_runner", +-) + load("@rules_proto//proto:defs.bzl", "proto_library") + load( + "//bazel:generate_objc.bzl", +@@ -56,19 +51,6 @@ def grpc_objc_ios_unit_test( + env: Optional test environment variables passed to the test + """ + test_runner = "grpc_ios_sim_runner_" + name +- ios_test_runner( +- name = test_runner, +- device_type = IOS_UNIT_TEST_DEVICE_TYPE, +- # os_version = IOS_UNIT_TEST_OS_VERSION, +- test_environment = env, +- ) +- +- ios_unit_test( +- name = name, +- minimum_os_version = "9.0", +- runner = test_runner, +- deps = deps, +- ) + + def proto_library_objc_wrapper( + name, +diff --git a/test/core/transport/binder/end2end/fuzzers/BUILD b/test/core/transport/binder/end2end/fuzzers/BUILD +index 85427723f0..d7ddfe918b 100644 +--- a/test/core/transport/binder/end2end/fuzzers/BUILD ++++ b/test/core/transport/binder/end2end/fuzzers/BUILD +@@ -18,7 +18,7 @@ load("//test/core/util:grpc_fuzzer.bzl", "grpc_proto_fuzzer") + grpc_package( + name = "test/core/transport/binder/end2end/fuzzers", + features = [ +- "layering_check", ++ "-layering_check", + ], + ) + +diff --git a/third_party/BUILD b/third_party/BUILD +index f588409ff7..727f9db80d 100644 +--- a/third_party/BUILD ++++ b/third_party/BUILD +@@ -1,3 +1,5 @@ ++package(default_visibility = ["//:__subpackages__"]) ++ + exports_files([ + "gtest.BUILD", + "zlib.BUILD", +@@ -13,3 +15,208 @@ exports_files([ + "protobuf.patch", + "protoc-gen-validate.patch", + ]) ++ ++alias( ++ name = "upb_amalgamation_lib", ++ actual = "@com_google_protobuf//upb:amalgamation", ++) ++ ++alias( ++ name = "upb_base_lib", ++ actual = "@com_google_protobuf//upb/base", ++) ++ ++alias( ++ name = "upb_message_lib", ++ actual = "@com_google_protobuf//upb:message", ++) ++ ++alias( ++ name = "upb_mem_lib", ++ actual = "@com_google_protobuf//upb/mem", ++) ++ ++alias( ++ name = "upb_reflection", ++ actual = "@com_google_protobuf//upb:reflection", ++) ++ ++alias( ++ name = "upb_lib_descriptor", ++ actual = "@com_google_protobuf//upb:descriptor_upb_proto", ++) ++ ++alias( ++ name = "upb_lib_descriptor_reflection", ++ actual = "@com_google_protobuf//upb:descriptor_upb_proto_reflection", ++) ++ ++alias( ++ name = "upb_textformat_lib", ++ actual = "@com_google_protobuf//upb/text", ++) ++ ++alias( ++ name = "upb_json_lib", ++ actual = "@com_google_protobuf//upb/json", ++) ++ ++alias( ++ name = "upb_generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me", ++ actual = "@com_google_protobuf//upb:generated_code_support__only_for_generated_code_do_not_use__i_give_permission_to_break_me", ++) ++ ++alias( ++ name = "libssl", ++ actual = "@boringssl//:ssl", ++) ++ ++alias( ++ name = "libcrypto", ++ actual = "@boringssl//:crypto", ++) ++ ++alias( ++ name = "madler_zlib", ++ actual = "@zlib//:zlib", ++) ++ ++alias( ++ name = "protobuf", ++ actual = "@com_google_protobuf//:protobuf", ++) ++ ++alias( ++ name = "protobuf_clib", ++ actual = "@com_google_protobuf//:protoc_lib", ++) ++ ++alias( ++ name = "protobuf_headers", ++ actual = "@com_google_protobuf//:protobuf_headers", ++) ++ ++alias( ++ name = "protocol_compiler", ++ actual = "@com_google_protobuf//:protoc", ++) ++ ++alias( ++ name = "cares", ++ actual = "@com_github_cares_cares//:ares", ++) ++ ++alias( ++ name = "gtest", ++ actual = "@com_google_googletest//:gtest", ++) ++ ++alias( ++ name = "fuzztest", ++ actual = "@com_google_fuzztest//fuzztest", ++) ++ ++alias( ++ name = "fuzztest_main", ++ actual = "@com_google_fuzztest//fuzztest:fuzztest_gtest_main", ++) ++ ++alias( ++ name = "benchmark", ++ actual = "@com_github_google_benchmark//:benchmark", ++) ++ ++alias( ++ name = "re2", ++ actual = "@com_googlesource_code_re2//:re2", ++) ++ ++alias( ++ name = "grpc_cpp_plugin", ++ actual = "@com_github_grpc_grpc//src/compiler:grpc_cpp_plugin", ++) ++ ++alias( ++ name = "grpc++_codegen_proto", ++ actual = "@com_github_grpc_grpc//:grpc++_codegen_proto", ++) ++ ++alias( ++ name = "opencensus-context", ++ actual = "@io_opencensus_cpp//opencensus/context:context", ++) ++ ++alias( ++ name = "opencensus-trace", ++ actual = "@io_opencensus_cpp//opencensus/trace:trace", ++) ++ ++alias( ++ name = "opencensus-trace-context_util", ++ actual = "@io_opencensus_cpp//opencensus/trace:context_util", ++) ++ ++alias( ++ name = "opencensus-trace-propagation", ++ actual = "@io_opencensus_cpp//opencensus/trace:grpc_trace_bin", ++) ++ ++alias( ++ name = "opencensus-trace-span_context", ++ actual = "@io_opencensus_cpp//opencensus/trace:span_context", ++) ++ ++alias( ++ name = "opencensus-stats", ++ actual = "@io_opencensus_cpp//opencensus/stats:stats", ++) ++ ++alias( ++ name = "opencensus-stats-test", ++ actual = "@io_opencensus_cpp//opencensus/stats:test_utils", ++) ++ ++alias( ++ name = "opencensus-with-tag-map", ++ actual = "@io_opencensus_cpp//opencensus/tags:with_tag_map", ++) ++ ++alias( ++ name = "opencensus-tags", ++ actual = "@io_opencensus_cpp//opencensus/tags:tags", ++) ++ ++alias( ++ name = "opencensus-tags-context_util", ++ actual = "@io_opencensus_cpp//opencensus/tags:context_util", ++) ++ ++alias( ++ name = "opencensus-trace-stackdriver_exporter", ++ actual = "@io_opencensus_cpp//opencensus/exporters/trace/stackdriver:stackdriver_exporter", ++) ++ ++alias( ++ name = "opencensus-stats-stackdriver_exporter", ++ actual = "@io_opencensus_cpp//opencensus/exporters/stats/stackdriver:stackdriver_exporter", ++) ++ ++alias( ++ name = "googleapis_trace_grpc_service", ++ actual = "@com_google_googleapis//google/devtools/cloudtrace/v2:cloudtrace_cc_grpc", ++) ++ ++alias( ++ name = "googleapis_monitoring_grpc_service", ++ actual = "@com_google_googleapis//google/monitoring/v3:monitoring_cc_grpc", ++) ++ ++alias( ++ name = "googleapis_logging_grpc_service", ++ actual = "@com_google_googleapis//google/logging/v2:logging_cc_grpc", ++) ++ ++alias( ++ name = "googleapis_logging_cc_proto", ++ actual = "@com_google_googleapis//google/logging/v2:logging_cc_proto", ++) diff --git a/modules/grpc/1.63.1.bcr.1/presubmit.yml b/modules/grpc/1.63.1.bcr.1/presubmit.yml new file mode 100644 index 00000000000..b7b9f33e8d3 --- /dev/null +++ b/modules/grpc/1.63.1.bcr.1/presubmit.yml @@ -0,0 +1,33 @@ +matrix: + platform: ["debian10", "ubuntu2004"] + bazel: + - 7.x + +tasks: + verify_targets: + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@grpc//:grpc' + - '@grpc//:grpc_unsecure' + - '@grpc//:grpc++' + - '@grpc//:grpc++_unsecure' + - '@grpc//examples/protos/...' + + verify_windows: + platform: windows + bazel: ${{ bazel }} + build_targets: + - '@grpc//:grpc' + - '@grpc//:grpc_unsecure' + - '@grpc//:grpc++' + - '@grpc//:grpc++_unsecure' + + verify_macos: + platform: macos + bazel: ${{ bazel }} + build_targets: + - '@grpc//:grpc' + - '@grpc//:grpc_unsecure' + - '@grpc//:grpc++' + - '@grpc//:grpc++_unsecure' diff --git a/modules/grpc/1.63.1.bcr.1/source.json b/modules/grpc/1.63.1.bcr.1/source.json new file mode 100644 index 00000000000..b860a36d20a --- /dev/null +++ b/modules/grpc/1.63.1.bcr.1/source.json @@ -0,0 +1,10 @@ +{ + "integrity": "sha256-MRmOz27Ip5sMQqkEQd3OhY5frmkMLjANXQip9F1xNt8=", + "strip_prefix": "grpc-1.63.1", + "url": "https://github.com/grpc/grpc/archive/refs/tags/v1.63.1.tar.gz", + "patch_strip": 1, + "patches": { + "add_module_bazel.patch": "sha256-c2cptV6iq0VZXRffBVAYLjGcf7SYjt3f1bCfwJ3VMss=", + "adopt_bzlmod.patch": "sha256-/01nyA8FZJEG0YuH+HPwD5ffP6p8LubbgPHahiZ5G4E=" + } +} diff --git a/modules/grpc/1.65.0/MODULE.bazel b/modules/grpc/1.65.0/MODULE.bazel new file mode 100644 index 00000000000..c2c79011357 --- /dev/null +++ b/modules/grpc/1.65.0/MODULE.bazel @@ -0,0 +1,82 @@ +module( + name = "grpc", + version = "1.65.0", + compatibility_level = 1, + repo_name = "com_github_grpc_grpc", +) + +bazel_dep(name = "abseil-cpp", version = "20240116.0", repo_name = "com_google_absl") +bazel_dep(name = "apple_support", version = "1.15.1", repo_name = "build_bazel_apple_support") +bazel_dep(name = "bazel_skylib", version = "1.5.0") +bazel_dep(name = "boringssl", version = "0.0.0-20230215-5c22014") +bazel_dep(name = "c-ares", version = "1.15.0", repo_name = "com_github_cares_cares") +bazel_dep(name = "gazelle", version = "0.36.0", repo_name = "bazel_gazelle") +bazel_dep(name = "google_benchmark", version = "1.8.4", repo_name = "com_github_google_benchmark") +bazel_dep(name = "googleapis", version = "0.0.0-20240326-1c8d509c5", repo_name = "com_google_googleapis") +bazel_dep(name = "googletest", version = "1.14.0.bcr.1", repo_name = "com_google_googletest") +bazel_dep(name = "opentelemetry-cpp", version = "1.14.2", repo_name = "io_opentelemetry_cpp") +bazel_dep(name = "platforms", version = "0.0.10") +bazel_dep(name = "prometheus-cpp", version = "1.2.4", repo_name = "com_github_jupp0r_prometheus_cpp") +bazel_dep(name = "protobuf", version = "26.0.bcr.2", repo_name = "com_google_protobuf") +bazel_dep(name = "re2", version = "2023-09-01", repo_name = "com_googlesource_code_re2") +bazel_dep(name = "rules_apple", version = "3.5.1", repo_name = "build_bazel_rules_apple") +bazel_dep(name = "rules_cc", version = "0.0.9") +bazel_dep(name = "rules_go", version = "0.48.0", repo_name = "io_bazel_rules_go") +bazel_dep(name = "rules_java", version = "7.4.0") +bazel_dep(name = "rules_proto", version = "6.0.0") +bazel_dep(name = "zlib", version = "1.3.1.bcr.1") + +grpc_repo_deps_ext = use_extension("//bazel:grpc_deps.bzl", "grpc_repo_deps_ext") +use_repo( + grpc_repo_deps_ext, + "com_envoyproxy_protoc_gen_validate", + "com_github_cncf_udpa", + "com_github_cncf_xds", + "envoy_api", + "google_cloud_cpp", + "io_opencensus_cpp", +) + +switched_rules = use_extension("@com_google_googleapis//:extensions.bzl", "switched_rules") +switched_rules.use_languages( + cc = True, + grpc = True, + python = True, +) +use_repo(switched_rules, "com_google_googleapis_imports") + +bazel_dep(name = "rules_python", version = "0.31.0") + +PYTHON_VERSIONS = [ + "3.8", + "3.9", + "3.10", + "3.11", + "3.12", +] + +python = use_extension("@rules_python//python/extensions:python.bzl", "python") + +[ + python.toolchain( + is_default = python_version == PYTHON_VERSIONS[-1], + python_version = python_version, + ) + for python_version in PYTHON_VERSIONS +] + +pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") + +[ + pip.parse( + hub_name = "grpc_python_dependencies", + python_version = python_version, + requirements_lock = "//:requirements.bazel.txt", + ) + for python_version in PYTHON_VERSIONS +] + +use_repo(pip, "grpc_python_dependencies") + +grpc_python_deps_ext = use_extension("//bazel:grpc_python_deps.bzl", "grpc_python_deps_ext") +use_repo(grpc_python_deps_ext, "cython") diff --git a/modules/grpc/1.65.0/patches/add_module_bazel.patch b/modules/grpc/1.65.0/patches/add_module_bazel.patch new file mode 100644 index 00000000000..aa45e3d42b3 --- /dev/null +++ b/modules/grpc/1.65.0/patches/add_module_bazel.patch @@ -0,0 +1,88 @@ +diff --git a/MODULE.bazel b/MODULE.bazel +new file mode 100644 +index 0000000000..c2c7901135 +--- /dev/null ++++ b/MODULE.bazel +@@ -0,0 +1,82 @@ ++module( ++ name = "grpc", ++ version = "1.65.0", ++ compatibility_level = 1, ++ repo_name = "com_github_grpc_grpc", ++) ++ ++bazel_dep(name = "abseil-cpp", version = "20240116.0", repo_name = "com_google_absl") ++bazel_dep(name = "apple_support", version = "1.15.1", repo_name = "build_bazel_apple_support") ++bazel_dep(name = "bazel_skylib", version = "1.5.0") ++bazel_dep(name = "boringssl", version = "0.0.0-20230215-5c22014") ++bazel_dep(name = "c-ares", version = "1.15.0", repo_name = "com_github_cares_cares") ++bazel_dep(name = "gazelle", version = "0.36.0", repo_name = "bazel_gazelle") ++bazel_dep(name = "google_benchmark", version = "1.8.4", repo_name = "com_github_google_benchmark") ++bazel_dep(name = "googleapis", version = "0.0.0-20240326-1c8d509c5", repo_name = "com_google_googleapis") ++bazel_dep(name = "googletest", version = "1.14.0.bcr.1", repo_name = "com_google_googletest") ++bazel_dep(name = "opentelemetry-cpp", version = "1.14.2", repo_name = "io_opentelemetry_cpp") ++bazel_dep(name = "platforms", version = "0.0.10") ++bazel_dep(name = "prometheus-cpp", version = "1.2.4", repo_name = "com_github_jupp0r_prometheus_cpp") ++bazel_dep(name = "protobuf", version = "26.0.bcr.2", repo_name = "com_google_protobuf") ++bazel_dep(name = "re2", version = "2023-09-01", repo_name = "com_googlesource_code_re2") ++bazel_dep(name = "rules_apple", version = "3.5.1", repo_name = "build_bazel_rules_apple") ++bazel_dep(name = "rules_cc", version = "0.0.9") ++bazel_dep(name = "rules_go", version = "0.48.0", repo_name = "io_bazel_rules_go") ++bazel_dep(name = "rules_java", version = "7.4.0") ++bazel_dep(name = "rules_proto", version = "6.0.0") ++bazel_dep(name = "zlib", version = "1.3.1.bcr.1") ++ ++grpc_repo_deps_ext = use_extension("//bazel:grpc_deps.bzl", "grpc_repo_deps_ext") ++use_repo( ++ grpc_repo_deps_ext, ++ "com_envoyproxy_protoc_gen_validate", ++ "com_github_cncf_udpa", ++ "com_github_cncf_xds", ++ "envoy_api", ++ "google_cloud_cpp", ++ "io_opencensus_cpp", ++) ++ ++switched_rules = use_extension("@com_google_googleapis//:extensions.bzl", "switched_rules") ++switched_rules.use_languages( ++ cc = True, ++ grpc = True, ++ python = True, ++) ++use_repo(switched_rules, "com_google_googleapis_imports") ++ ++bazel_dep(name = "rules_python", version = "0.31.0") ++ ++PYTHON_VERSIONS = [ ++ "3.8", ++ "3.9", ++ "3.10", ++ "3.11", ++ "3.12", ++] ++ ++python = use_extension("@rules_python//python/extensions:python.bzl", "python") ++ ++[ ++ python.toolchain( ++ is_default = python_version == PYTHON_VERSIONS[-1], ++ python_version = python_version, ++ ) ++ for python_version in PYTHON_VERSIONS ++] ++ ++pip = use_extension("@rules_python//python/extensions:pip.bzl", "pip") ++ ++[ ++ pip.parse( ++ hub_name = "grpc_python_dependencies", ++ python_version = python_version, ++ requirements_lock = "//:requirements.bazel.txt", ++ ) ++ for python_version in PYTHON_VERSIONS ++] ++ ++use_repo(pip, "grpc_python_dependencies") ++ ++grpc_python_deps_ext = use_extension("//bazel:grpc_python_deps.bzl", "grpc_python_deps_ext") ++use_repo(grpc_python_deps_ext, "cython") diff --git a/modules/grpc/1.65.0/patches/adopt_bzlmod.patch b/modules/grpc/1.65.0/patches/adopt_bzlmod.patch new file mode 100644 index 00000000000..362c86f4920 --- /dev/null +++ b/modules/grpc/1.65.0/patches/adopt_bzlmod.patch @@ -0,0 +1,364 @@ +diff --git a/bazel/cython_library.bzl b/bazel/cython_library.bzl +index dc2ef7a890..fd2881ed8c 100644 +--- a/bazel/cython_library.bzl ++++ b/bazel/cython_library.bzl +@@ -72,7 +72,7 @@ def pyx_library(name, deps = [], py_deps = [], srcs = [], **kwargs): + native.cc_binary( + name = shared_object_name, + srcs = [stem + ".cpp"], +- deps = deps + ["@local_config_python//:python_headers"], ++ deps = deps + ["@rules_python//python/cc:current_py_cc_headers"], + defines = defines, + linkshared = 1, + ) +diff --git a/bazel/grpc_deps.bzl b/bazel/grpc_deps.bzl +index b9d5fe47c9..257beb26e0 100644 +--- a/bazel/grpc_deps.bzl ++++ b/bazel/grpc_deps.bzl +@@ -19,172 +19,6 @@ load("//bazel:grpc_python_deps.bzl", "grpc_python_deps") + # buildifier: disable=unnamed-macro + def grpc_deps(): + """Loads dependencies need to compile and test the grpc library.""" +- +- if "platforms" not in native.existing_rules(): +- http_archive( +- name = "platforms", +- sha256 = "8150406605389ececb6da07cbcb509d5637a3ab9a24bc69b1101531367d89d74", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/platforms/releases/download/0.0.8/platforms-0.0.8.tar.gz", +- "https://github.com/bazelbuild/platforms/releases/download/0.0.8/platforms-0.0.8.tar.gz", +- ], +- ) +- +- if "boringssl" not in native.existing_rules(): +- http_archive( +- name = "boringssl", +- # Use github mirror instead of https://boringssl.googlesource.com/boringssl +- # to obtain a boringssl archive with consistent sha256 +- sha256 = "9f441d72fccb9a3faf96470478c8ccfaaeb8db1cffd4d78b698f782124dad1b0", +- strip_prefix = "boringssl-b8a2bffc598f230484ff48a247526a9820facfc2", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/boringssl/archive/b8a2bffc598f230484ff48a247526a9820facfc2.tar.gz", +- "https://github.com/google/boringssl/archive/b8a2bffc598f230484ff48a247526a9820facfc2.tar.gz", +- ], +- ) +- +- if "zlib" not in native.existing_rules(): +- http_archive( +- name = "zlib", +- build_file = "@com_github_grpc_grpc//third_party:zlib.BUILD", +- sha256 = "18337cdb32562003c39d9f7322b9a166ad4abfb2b909566428e11f96d2385586", +- strip_prefix = "zlib-09155eaa2f9270dc4ed1fa13e2b4b2613e6e4851", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/madler/zlib/archive/09155eaa2f9270dc4ed1fa13e2b4b2613e6e4851.tar.gz", +- "https://github.com/madler/zlib/archive/09155eaa2f9270dc4ed1fa13e2b4b2613e6e4851.tar.gz", +- ], +- ) +- +- if "com_google_protobuf" not in native.existing_rules(): +- http_archive( +- name = "com_google_protobuf", +- sha256 = "387478260190c540388839a3449c635a69708d92fc38ea6e2364b1196db90ea5", +- strip_prefix = "protobuf-2434ef2adf0c74149b9d547ac5fb545a1ff8b6b5", +- urls = [ +- # https://github.com/protocolbuffers/protobuf/commits/v26.1 +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/protobuf/archive/2434ef2adf0c74149b9d547ac5fb545a1ff8b6b5.tar.gz", +- "https://github.com/protocolbuffers/protobuf/archive/2434ef2adf0c74149b9d547ac5fb545a1ff8b6b5.tar.gz", +- ], +- patches = [ +- "@com_github_grpc_grpc//third_party:protobuf.patch", +- "@com_github_grpc_grpc//third_party:protobuf.10007.patch", +- ], +- patch_args = ["-p1"], +- ) +- +- if "com_google_googletest" not in native.existing_rules(): +- http_archive( +- name = "com_google_googletest", +- sha256 = "31bf78bd91b96dd5e24fab3bb1d7f3f7453ccbaceec9afb86d6e4816a15ab109", +- strip_prefix = "googletest-2dd1c131950043a8ad5ab0d2dda0e0970596586a", +- urls = [ +- # 2023-10-09 +- "https://github.com/google/googletest/archive/2dd1c131950043a8ad5ab0d2dda0e0970596586a.tar.gz", +- ], +- ) +- +- if "com_google_fuzztest" not in native.existing_rules(): +- # when updating this remember to run: +- # bazel run @com_google_fuzztest//bazel:setup_configs > tools/fuzztest.bazelrc +- http_archive( +- name = "com_google_fuzztest", +- sha256 = "cdf8d8cd3cdc77280a7c59b310edf234e489a96b6e727cb271e7dfbeb9bcca8d", +- strip_prefix = "fuzztest-4ecaeb5084a061a862af8f86789ee184cd3d3f18", +- urls = [ +- # 2023-05-16 +- "https://github.com/google/fuzztest/archive/4ecaeb5084a061a862af8f86789ee184cd3d3f18.tar.gz", +- ], +- ) +- +- if "rules_cc" not in native.existing_rules(): +- http_archive( +- name = "rules_cc", +- sha256 = "2037875b9a4456dce4a79d112a8ae885bbc4aad968e6587dca6e64f3a0900cdf", +- strip_prefix = "rules_cc-0.0.9", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/rules_cc/releases/download/0.0.9/rules_cc-0.0.9.tar.gz", +- "https://github.com/bazelbuild/rules_cc/releases/download/0.0.9/rules_cc-0.0.9.tar.gz", +- ], +- ) +- +- if "com_github_google_benchmark" not in native.existing_rules(): +- http_archive( +- name = "com_github_google_benchmark", +- sha256 = "8e7b955f04bc6984e4f14074d0d191474f76a6c8e849e04a9dced49bc975f2d4", +- strip_prefix = "benchmark-344117638c8ff7e239044fd0fa7085839fc03021", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/benchmark/archive/344117638c8ff7e239044fd0fa7085839fc03021.tar.gz", +- "https://github.com/google/benchmark/archive/344117638c8ff7e239044fd0fa7085839fc03021.tar.gz", +- ], +- ) +- +- if "com_googlesource_code_re2" not in native.existing_rules(): +- http_archive( +- name = "com_googlesource_code_re2", +- sha256 = "1ae8ccfdb1066a731bba6ee0881baad5efd2cd661acd9569b689f2586e1a50e9", +- strip_prefix = "re2-2022-04-01", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/google/re2/archive/2022-04-01.tar.gz", +- "https://github.com/google/re2/archive/2022-04-01.tar.gz", +- ], +- ) +- +- if "com_github_cares_cares" not in native.existing_rules(): +- http_archive( +- name = "com_github_cares_cares", +- build_file = "@com_github_grpc_grpc//third_party:cares/cares.BUILD", +- sha256 = "bf26e5b25e259911914a85ae847b6d723488adb5af4f8bdeb9d0871a318476e3", +- strip_prefix = "c-ares-6360e96b5cf8e5980c887ce58ef727e53d77243a", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/c-ares/c-ares/archive/6360e96b5cf8e5980c887ce58ef727e53d77243a.tar.gz", +- "https://github.com/c-ares/c-ares/archive/6360e96b5cf8e5980c887ce58ef727e53d77243a.tar.gz", +- ], +- ) +- +- if "com_google_absl" not in native.existing_rules(): +- http_archive( +- name = "com_google_absl", +- sha256 = "338420448b140f0dfd1a1ea3c3ce71b3bc172071f24f4d9a57d59b45037da440", +- strip_prefix = "abseil-cpp-20240116.0", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/abseil/abseil-cpp/archive/20240116.0.tar.gz", +- "https://github.com/abseil/abseil-cpp/archive/20240116.0.tar.gz", +- ], +- ) +- +- if "bazel_toolchains" not in native.existing_rules(): +- # list of releases is at https://github.com/bazelbuild/bazel-toolchains/releases +- http_archive( +- name = "bazel_toolchains", +- sha256 = "179ec02f809e86abf56356d8898c8bd74069f1bd7c56044050c2cd3d79d0e024", +- strip_prefix = "bazel-toolchains-4.1.0", +- urls = [ +- "https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/releases/download/4.1.0/bazel-toolchains-4.1.0.tar.gz", +- "https://github.com/bazelbuild/bazel-toolchains/releases/download/4.1.0/bazel-toolchains-4.1.0.tar.gz", +- ], +- ) +- +- if "bazel_skylib" not in native.existing_rules(): +- http_archive( +- name = "bazel_skylib", +- urls = [ +- "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz", +- "https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.3/bazel-skylib-1.0.3.tar.gz", +- ], +- sha256 = "1c531376ac7e5a180e0237938a2536de0c54d93f5c278634818e0efc952dd56c", +- ) +- +- if "bazel_compdb" not in native.existing_rules(): +- http_archive( +- name = "bazel_compdb", +- sha256 = "bcecfd622c4ef272fd4ba42726a52e140b961c4eac23025f18b346c968a8cfb4", +- strip_prefix = "bazel-compilation-database-0.4.5", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/grailbio/bazel-compilation-database/archive/0.4.5.tar.gz", +- "https://github.com/grailbio/bazel-compilation-database/archive/0.4.5.tar.gz", +- ], +- ) +- + if "io_opencensus_cpp" not in native.existing_rules(): + http_archive( + name = "io_opencensus_cpp", +@@ -207,58 +41,6 @@ def grpc_deps(): + ], + ) + +- if "io_bazel_rules_go" not in native.existing_rules(): +- http_archive( +- name = "io_bazel_rules_go", +- sha256 = "69de5c704a05ff37862f7e0f5534d4f479418afc21806c887db544a316f3cb6b", +- urls = [ +- "https://mirror.bazel.build/github.com/bazelbuild/rules_go/releases/download/v0.27.0/rules_go-v0.27.0.tar.gz", +- "https://github.com/bazelbuild/rules_go/releases/download/v0.27.0/rules_go-v0.27.0.tar.gz", +- ], +- ) +- +- if "build_bazel_rules_apple" not in native.existing_rules(): +- http_archive( +- name = "build_bazel_rules_apple", +- sha256 = "34c41bfb59cdaea29ac2df5a2fa79e5add609c71bb303b2ebb10985f93fa20e7", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/rules_apple/releases/download/3.1.1/rules_apple.3.1.1.tar.gz", +- "https://github.com/bazelbuild/rules_apple/releases/download/3.1.1/rules_apple.3.1.1.tar.gz", +- ], +- ) +- +- if "build_bazel_apple_support" not in native.existing_rules(): +- http_archive( +- name = "build_bazel_apple_support", +- sha256 = "cf4d63f39c7ba9059f70e995bf5fe1019267d3f77379c2028561a5d7645ef67c", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/bazelbuild/apple_support/releases/download/1.11.1/apple_support.1.11.1.tar.gz", +- "https://github.com/bazelbuild/apple_support/releases/download/1.11.1/apple_support.1.11.1.tar.gz", +- ], +- ) +- +- if "com_google_googleapis" not in native.existing_rules(): +- http_archive( +- name = "com_google_googleapis", +- sha256 = "5bb6b0253ccf64b53d6c7249625a7e3f6c3bc6402abd52d3778bfa48258703a0", +- strip_prefix = "googleapis-2f9af297c84c55c8b871ba4495e01ade42476c92", +- build_file = Label("//bazel:googleapis.BUILD"), +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/googleapis/googleapis/archive/2f9af297c84c55c8b871ba4495e01ade42476c92.tar.gz", +- "https://github.com/googleapis/googleapis/archive/2f9af297c84c55c8b871ba4495e01ade42476c92.tar.gz", +- ], +- ) +- +- if "bazel_gazelle" not in native.existing_rules(): +- http_archive( +- name = "bazel_gazelle", +- sha256 = "d76bf7a60fd8b050444090dfa2837a4eaf9829e1165618ee35dceca5cbdf58d5", +- urls = [ +- "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.37.0/bazel-gazelle-v0.37.0.tar.gz", +- "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.37.0/bazel-gazelle-v0.37.0.tar.gz", +- ], +- ) +- + if "opencensus_proto" not in native.existing_rules(): + http_archive( + name = "opencensus_proto", +@@ -293,34 +75,6 @@ def grpc_deps(): + ], + ) + +- # TODO(stanleycheung): remove this when prometheus-cpp AND +- # opentelemetry-cpp cut a new release +- # This override is needed because this fix +- # https://github.com/jupp0r/prometheus-cpp/pull/626 +- # has not been included in the latest prometheus-cpp release yet. +- # We also need opentelemetry-cpp to update their dependency on +- # prometheus-cpp after that fix is released. +- # Without the fix, we cannot build the prometheus exporter with bazel 6 +- if "com_github_jupp0r_prometheus_cpp" not in native.existing_rules(): +- http_archive( +- name = "com_github_jupp0r_prometheus_cpp", +- strip_prefix = "prometheus-cpp-b1234816facfdda29845c46696a02998a4af115a", +- urls = [ +- "https://github.com/jupp0r/prometheus-cpp/archive/b123481.zip", +- ], +- ) +- +- if "io_opentelemetry_cpp" not in native.existing_rules(): +- http_archive( +- name = "io_opentelemetry_cpp", +- sha256 = "ed681d20a684b7d485a49288e7cfb2d182bf882e5c112c5f2fa3f9e9da2278fc", +- strip_prefix = "opentelemetry-cpp-4bd64c9a336fd438d6c4c9dad2e6b61b0585311f", +- urls = [ +- "https://storage.googleapis.com/grpc-bazel-mirror/github.com/open-telemetry/opentelemetry-cpp/archive/4bd64c9a336fd438d6c4c9dad2e6b61b0585311f.tar.gz", +- "https://github.com/open-telemetry/opentelemetry-cpp/archive/4bd64c9a336fd438d6c4c9dad2e6b61b0585311f.tar.gz", +- ], +- ) +- + if "google_cloud_cpp" not in native.existing_rules(): + http_archive( + name = "google_cloud_cpp", +@@ -331,8 +85,15 @@ def grpc_deps(): + "https://github.com/googleapis/google-cloud-cpp/archive/refs/tags/v2.16.0.tar.gz", + ], + ) +- +- grpc_python_deps() ++ http_archive( ++ name = "com_github_cncf_udpa", ++ sha256 = "0d33b83f8c6368954e72e7785539f0d272a8aba2f6e2e336ed15fd1514bc9899", ++ strip_prefix = "xds-e9ce68804cb4e64cab5a52e3c8baf840d4ff87b7", ++ urls = [ ++ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/cncf/xds/archive/e9ce68804cb4e64cab5a52e3c8baf840d4ff87b7.tar.gz", ++ "https://github.com/cncf/xds/archive/e9ce68804cb4e64cab5a52e3c8baf840d4ff87b7.tar.gz", ++ ], ++ ) + + # TODO: move some dependencies from "grpc_deps" here? + # buildifier: disable=unnamed-macro +@@ -413,3 +174,5 @@ def grpc_test_only_deps(): + strip_prefix = "libprotobuf-mutator-1f95f8083066f5b38fd2db172e7e7f9aa7c49d2d", + build_file = "@com_github_grpc_grpc//third_party:libprotobuf_mutator.BUILD", + ) ++ ++grpc_repo_deps_ext = module_extension(implementation = lambda ctx: grpc_deps()) +diff --git a/bazel/grpc_python_deps.bzl b/bazel/grpc_python_deps.bzl +index dbfff526a1..8948fc573d 100644 +--- a/bazel/grpc_python_deps.bzl ++++ b/bazel/grpc_python_deps.bzl +@@ -16,6 +16,18 @@ + load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + load("@com_github_grpc_grpc//third_party/py:python_configure.bzl", "python_configure") + ++# buildifier: disable=unnamed-macro ++def cython(): ++ http_archive( ++ name = "cython", ++ build_file = "@com_github_grpc_grpc//third_party:cython.BUILD", ++ sha256 = "a2da56cc22be823acf49741b9aa3aa116d4f07fa8e8b35a3cb08b8447b37c607", ++ strip_prefix = "cython-0.29.35", ++ urls = [ ++ "https://github.com/cython/cython/archive/0.29.35.tar.gz", ++ ], ++ ) ++ + # buildifier: disable=unnamed-macro + def grpc_python_deps(): + """Loads dependencies for gRPC Python.""" +@@ -35,12 +47,6 @@ def grpc_python_deps(): + ) + + if "cython" not in native.existing_rules(): +- http_archive( +- name = "cython", +- build_file = "@com_github_grpc_grpc//third_party:cython.BUILD", +- sha256 = "a2da56cc22be823acf49741b9aa3aa116d4f07fa8e8b35a3cb08b8447b37c607", +- strip_prefix = "cython-0.29.35", +- urls = [ +- "https://github.com/cython/cython/archive/0.29.35.tar.gz", +- ], +- ) ++ cython() ++ ++grpc_python_deps_ext = module_extension(implementation = lambda ctx: cython()) +diff --git a/bazel/python_rules.bzl b/bazel/python_rules.bzl +index e195d2790b..5924fd5b5e 100644 +--- a/bazel/python_rules.bzl ++++ b/bazel/python_rules.bzl +@@ -190,11 +190,7 @@ def _generate_pb2_grpc_src_impl(context): + arguments = [] + tools = [context.executable._protoc, context.executable._grpc_plugin] + out_dir = get_out_dir(protos, context) +- if out_dir.import_path: +- # is virtual imports +- out_path = out_dir.path +- else: +- out_path = context.genfiles_dir.path ++ out_path = out_dir.path + arguments += get_plugin_args( + context.executable._grpc_plugin, + plugin_flags, diff --git a/modules/grpc/1.65.0/patches/disable-layering-check.patch b/modules/grpc/1.65.0/patches/disable-layering-check.patch new file mode 100644 index 00000000000..e6de461ce33 --- /dev/null +++ b/modules/grpc/1.65.0/patches/disable-layering-check.patch @@ -0,0 +1,13 @@ +diff --git a/src/core/BUILD b/src/core/BUILD +index 757aaad95b..de60930421 100644 +--- a/src/core/BUILD ++++ b/src/core/BUILD +@@ -25,7 +25,7 @@ licenses(["reciprocal"]) + package( + default_visibility = ["//:__subpackages__"], + features = [ +- "layering_check", ++ "-layering_check", + ], + ) + diff --git a/modules/grpc/1.65.0/presubmit.yml b/modules/grpc/1.65.0/presubmit.yml new file mode 100644 index 00000000000..b7b9f33e8d3 --- /dev/null +++ b/modules/grpc/1.65.0/presubmit.yml @@ -0,0 +1,33 @@ +matrix: + platform: ["debian10", "ubuntu2004"] + bazel: + - 7.x + +tasks: + verify_targets: + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@grpc//:grpc' + - '@grpc//:grpc_unsecure' + - '@grpc//:grpc++' + - '@grpc//:grpc++_unsecure' + - '@grpc//examples/protos/...' + + verify_windows: + platform: windows + bazel: ${{ bazel }} + build_targets: + - '@grpc//:grpc' + - '@grpc//:grpc_unsecure' + - '@grpc//:grpc++' + - '@grpc//:grpc++_unsecure' + + verify_macos: + platform: macos + bazel: ${{ bazel }} + build_targets: + - '@grpc//:grpc' + - '@grpc//:grpc_unsecure' + - '@grpc//:grpc++' + - '@grpc//:grpc++_unsecure' diff --git a/modules/grpc/1.65.0/source.json b/modules/grpc/1.65.0/source.json new file mode 100644 index 00000000000..6530a124103 --- /dev/null +++ b/modules/grpc/1.65.0/source.json @@ -0,0 +1,11 @@ +{ + "integrity": "sha256-68Os/ecM+uP08EuNu3IllUDLHcQnvjYlafvCYH2r/jk=", + "strip_prefix": "grpc-1.65.0", + "url": "https://github.com/grpc/grpc/archive/refs/tags/v1.65.0.tar.gz", + "patch_strip": 1, + "patches": { + "add_module_bazel.patch": "sha256-MASGzFiPj53S1c6CgHyYuLD0XXklG95eABIZLhdZGk8=", + "adopt_bzlmod.patch": "sha256-xj3GrXJKe+M3L/Jukz8a4eRTcnSuKIIwh8BnyTomNRw=", + "disable-layering-check.patch": "sha256-v3IG7eZiEgWJ7hoaE1zRvXdSEjxbfPFIEIZrTEwt4IU=" + } +} diff --git a/modules/grpc/metadata.json b/modules/grpc/metadata.json index 9c0a82e17d6..b106ed6c9cf 100644 --- a/modules/grpc/metadata.json +++ b/modules/grpc/metadata.json @@ -21,7 +21,9 @@ "1.62.1", "1.62.1.bcr.1", "1.62.1.bcr.2", - "1.63.1" + "1.63.1", + "1.63.1.bcr.1", + "1.65.0" ], "yanked_versions": {} } diff --git a/modules/gsl/4.0.0/MODULE.bazel b/modules/gsl/4.0.0/MODULE.bazel new file mode 100644 index 00000000000..01c788b34ad --- /dev/null +++ b/modules/gsl/4.0.0/MODULE.bazel @@ -0,0 +1,5 @@ +module( + name = "gsl", + version = "4.0.0", + compatibility_level = 4, +) diff --git a/modules/gsl/4.0.0/patches/build_dot_bazel.patch b/modules/gsl/4.0.0/patches/build_dot_bazel.patch new file mode 100644 index 00000000000..958b10e08f6 --- /dev/null +++ b/modules/gsl/4.0.0/patches/build_dot_bazel.patch @@ -0,0 +1,25 @@ +--- /dev/null ++++ BUILD.bazel +@@ -0,0 +1,22 @@ ++cc_library( ++ name = "gsl", ++ hdrs = [ ++ "gsl/algorithm", ++ "gsl/assert", ++ "gsl/byte", ++ "gsl/gsl", ++ "gsl/gsl_algorithm", ++ "gsl/gsl_assert", ++ "gsl/gsl_byte", ++ "gsl/gsl_narrow", ++ "gsl/gsl_util", ++ "gsl/narrow", ++ "gsl/pointers", ++ "gsl/span", ++ "gsl/span_ext", ++ "gsl/string_span", ++ "gsl/util", ++ ], ++ includes = ["."], ++ visibility = ["//visibility:public"], ++) diff --git a/modules/gsl/4.0.0/patches/module_dot_bazel.patch b/modules/gsl/4.0.0/patches/module_dot_bazel.patch new file mode 100644 index 00000000000..8fa14c32bae --- /dev/null +++ b/modules/gsl/4.0.0/patches/module_dot_bazel.patch @@ -0,0 +1,8 @@ +--- /dev/null ++++ MODULE.bazel +@@ -0,0 +1,5 @@ ++module( ++ name = "gsl", ++ version = "4.0.0", ++ compatibility_level = 4, ++) diff --git a/modules/gsl/4.0.0/presubmit.yml b/modules/gsl/4.0.0/presubmit.yml new file mode 100644 index 00000000000..9ac563c1247 --- /dev/null +++ b/modules/gsl/4.0.0/presubmit.yml @@ -0,0 +1,11 @@ +matrix: + bazel: ["6.x", "7.x"] + platform: ["debian10", "macos", "macos_arm64", "ubuntu2004", "windows"] + +tasks: + verify_targets: + name: Verify build targets + bazel: ${{ bazel }} + platform: ${{ platform }} + build_targets: + - '@gsl//:gsl' diff --git a/modules/gsl/4.0.0/source.json b/modules/gsl/4.0.0/source.json new file mode 100644 index 00000000000..69949d726f2 --- /dev/null +++ b/modules/gsl/4.0.0/source.json @@ -0,0 +1,10 @@ +{ + "integrity": "sha256-65H8sQpqpcyx0iTgelbI7P/pobtgH6GEgnbsRqIgC/s=", + "patches": { + "build_dot_bazel.patch": "sha256-3liG34A3S/xTIz/NlV1JbBs0sM+IZzXiXOsTnHiTlKo=", + "module_dot_bazel.patch": "sha256-I5KhvDC32BRXw0A8KKVQ4MTaSFRWPo7Nhiy/bxy7Oic=" + }, + "strip_prefix": "GSL-4.0.0/include", + "patch_strip": 0, + "url": "https://github.com/microsoft/GSL/archive/refs/tags/v4.0.0.zip" +} diff --git a/modules/gsl/metadata.json b/modules/gsl/metadata.json new file mode 100644 index 00000000000..07f58fe45bf --- /dev/null +++ b/modules/gsl/metadata.json @@ -0,0 +1,15 @@ +{ + "homepage": "https://github.com/microsoft/GSL", + "maintainers": [ + { + "email": "shaban_ziad@hotmail.com", + "github": "shabanzd", + "name": "Ziad Shaban" + } + ], + "repository": [ + "https://github.com/microsoft/GSL" + ], + "versions": ["4.0.0"], + "yanked_versions": {} +} diff --git a/modules/opentelemetry-cpp/1.16.0/MODULE.bazel b/modules/opentelemetry-cpp/1.16.0/MODULE.bazel new file mode 100644 index 00000000000..c4dd9595e46 --- /dev/null +++ b/modules/opentelemetry-cpp/1.16.0/MODULE.bazel @@ -0,0 +1,25 @@ +# Copyright The OpenTelemetry Authors +# SPDX-License-Identifier: Apache-2.0 + +module( + name = "opentelemetry-cpp", + version = "1.16.0", + compatibility_level = 0, + repo_name = "io_opentelemetry_cpp", +) + +bazel_dep(name = "abseil-cpp", version = "20240116.1", repo_name = "com_google_absl") +bazel_dep(name = "bazel_skylib", version = "1.5.0") +bazel_dep(name = "curl", version = "8.4.0") +bazel_dep(name = "grpc", version = "1.62.1", repo_name = "com_github_grpc_grpc") +bazel_dep(name = "nlohmann_json", version = "3.11.3", repo_name = "github_nlohmann_json") +bazel_dep(name = "opentelemetry-proto", version = "1.3.1", repo_name = "com_github_opentelemetry_proto") +bazel_dep(name = "opentracing-cpp", version = "1.6.0", repo_name = "com_github_opentracing") +bazel_dep(name = "platforms", version = "0.0.8") +bazel_dep(name = "prometheus-cpp", version = "1.2.4", repo_name = "com_github_jupp0r_prometheus_cpp") +bazel_dep(name = "protobuf", version = "26.0", repo_name = "com_google_protobuf") +bazel_dep(name = "rules_proto", version = "5.3.0-21.7") +bazel_dep(name = "zlib", version = "1.3.1.bcr.1") + +bazel_dep(name = "google_benchmark", version = "1.8.3", dev_dependency = True, repo_name = "com_github_google_benchmark") +bazel_dep(name = "googletest", version = "1.14.0.bcr.1", dev_dependency = True, repo_name = "com_google_googletest") diff --git a/modules/opentelemetry-cpp/1.16.0/patches/0001-Fix-Version-in-MODULE.bazel.patch b/modules/opentelemetry-cpp/1.16.0/patches/0001-Fix-Version-in-MODULE.bazel.patch new file mode 100644 index 00000000000..af0880d021f --- /dev/null +++ b/modules/opentelemetry-cpp/1.16.0/patches/0001-Fix-Version-in-MODULE.bazel.patch @@ -0,0 +1,13 @@ +diff --git a/MODULE.bazel b/MODULE.bazel +index 7b84c2b7..a28f7184 100644 +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -3,7 +3,7 @@ + + module( + name = "opentelemetry-cpp", +- version = "0", ++ version = "1.16.0", + compatibility_level = 0, + repo_name = "io_opentelemetry_cpp", + ) diff --git a/modules/opentelemetry-cpp/1.16.0/presubmit.yml b/modules/opentelemetry-cpp/1.16.0/presubmit.yml new file mode 100644 index 00000000000..bfe90185b04 --- /dev/null +++ b/modules/opentelemetry-cpp/1.16.0/presubmit.yml @@ -0,0 +1,12 @@ +matrix: + platform: ["debian10", "macos", "ubuntu2004", "windows"] + bazel: ["7.x"] +tasks: + verify_targets: + platform: ${{ platform }} + bazel: ${{ bazel }} + build_flags: + - '--cxxopt=-std=c++14' + - '--host_cxxopt=-std=c++14' + build_targets: + - '@opentelemetry-cpp//api' diff --git a/modules/opentelemetry-cpp/1.16.0/source.json b/modules/opentelemetry-cpp/1.16.0/source.json new file mode 100644 index 00000000000..8bc36f25ef4 --- /dev/null +++ b/modules/opentelemetry-cpp/1.16.0/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-IgmvI/QwlGUd3wB9RBU8I/rNQdmJG5stjLwtybuAZN0=", + "strip_prefix": "opentelemetry-cpp-1.16.0", + "url": "https://github.com/open-telemetry/opentelemetry-cpp/archive/refs/tags/v1.16.0.tar.gz", + "patch_strip": 1, + "patches": { + "0001-Fix-Version-in-MODULE.bazel.patch": "sha256-l4mMA2IrIwu342uJcHhXCijPsvtTeEts77zdzpYV+2s=" + } +} diff --git a/modules/opentelemetry-cpp/metadata.json b/modules/opentelemetry-cpp/metadata.json index 6b5ee3ddb61..7c7f45ca115 100644 --- a/modules/opentelemetry-cpp/metadata.json +++ b/modules/opentelemetry-cpp/metadata.json @@ -12,7 +12,8 @@ ], "versions": [ "1.14.2", - "1.14.2.bcr.1" + "1.14.2.bcr.1", + "1.16.0" ], "yanked_versions": {} } diff --git a/modules/opentelemetry-proto/1.3.2/MODULE.bazel b/modules/opentelemetry-proto/1.3.2/MODULE.bazel new file mode 100644 index 00000000000..702346f9ce6 --- /dev/null +++ b/modules/opentelemetry-proto/1.3.2/MODULE.bazel @@ -0,0 +1,8 @@ +module( + name = "opentelemetry-proto", + version = "1.3.2", + compatibility_level = 0, +) + +bazel_dep(name = "grpc", version = "1.56.3.bcr.1", repo_name = "com_github_grpc_grpc") +bazel_dep(name = "rules_proto", version = "5.3.0-21.7") diff --git a/modules/opentelemetry-proto/1.3.2/patches/0001-Add-MODULE.bazel.patch b/modules/opentelemetry-proto/1.3.2/patches/0001-Add-MODULE.bazel.patch new file mode 100644 index 00000000000..e5b43ac4402 --- /dev/null +++ b/modules/opentelemetry-proto/1.3.2/patches/0001-Add-MODULE.bazel.patch @@ -0,0 +1,171 @@ +diff --git a/BUILD.bazel b/BUILD.bazel +new file mode 100644 +index 0000000..07d6a90 +--- /dev/null ++++ b/BUILD.bazel +@@ -0,0 +1,151 @@ ++# Copyright The OpenTelemetry Authors ++# SPDX-License-Identifier: Apache-2.0 ++ ++load("@com_github_grpc_grpc//bazel:cc_grpc_library.bzl", "cc_grpc_library") ++load("@rules_proto//proto:defs.bzl", "proto_library") ++ ++package(default_visibility = ["//visibility:public"]) ++ ++proto_library( ++ name = "common_proto", ++ srcs = [ ++ "opentelemetry/proto/common/v1/common.proto", ++ ], ++) ++ ++cc_proto_library( ++ name = "common_proto_cc", ++ deps = [":common_proto"], ++) ++ ++proto_library( ++ name = "resource_proto", ++ srcs = [ ++ "opentelemetry/proto/resource/v1/resource.proto", ++ ], ++ deps = [ ++ ":common_proto", ++ ], ++) ++ ++cc_proto_library( ++ name = "resource_proto_cc", ++ deps = [":resource_proto"], ++) ++ ++proto_library( ++ name = "trace_proto", ++ srcs = [ ++ "opentelemetry/proto/trace/v1/trace.proto", ++ ], ++ deps = [ ++ ":common_proto", ++ ":resource_proto", ++ ], ++) ++ ++cc_proto_library( ++ name = "trace_proto_cc", ++ deps = [":trace_proto"], ++) ++ ++proto_library( ++ name = "trace_service_proto", ++ srcs = [ ++ "opentelemetry/proto/collector/trace/v1/trace_service.proto", ++ ], ++ deps = [ ++ ":trace_proto", ++ ], ++) ++ ++cc_proto_library( ++ name = "trace_service_proto_cc", ++ deps = [":trace_service_proto"], ++) ++ ++cc_grpc_library( ++ name = "trace_service_grpc_cc", ++ srcs = [":trace_service_proto"], ++ generate_mocks = True, ++ grpc_only = True, ++ deps = [":trace_service_proto_cc"], ++) ++ ++proto_library( ++ name = "logs_proto", ++ srcs = [ ++ "opentelemetry/proto/logs/v1/logs.proto", ++ ], ++ deps = [ ++ ":common_proto", ++ ":resource_proto", ++ ], ++) ++ ++cc_proto_library( ++ name = "logs_proto_cc", ++ deps = [":logs_proto"], ++) ++ ++proto_library( ++ name = "logs_service_proto", ++ srcs = [ ++ "opentelemetry/proto/collector/logs/v1/logs_service.proto", ++ ], ++ deps = [ ++ ":logs_proto", ++ ], ++) ++ ++cc_proto_library( ++ name = "logs_service_proto_cc", ++ deps = [":logs_service_proto"], ++) ++ ++cc_grpc_library( ++ name = "logs_service_grpc_cc", ++ srcs = [":logs_service_proto"], ++ generate_mocks = True, ++ grpc_only = True, ++ deps = [":logs_service_proto_cc"], ++) ++ ++proto_library( ++ name = "metrics_proto", ++ srcs = [ ++ "opentelemetry/proto/metrics/v1/metrics.proto", ++ ], ++ deps = [ ++ ":common_proto", ++ ":resource_proto", ++ ], ++) ++ ++cc_proto_library( ++ name = "metrics_proto_cc", ++ deps = [":metrics_proto"], ++) ++ ++proto_library( ++ name = "metrics_service_proto", ++ srcs = [ ++ "opentelemetry/proto/collector/metrics/v1/metrics_service.proto", ++ ], ++ deps = [ ++ ":metrics_proto", ++ ], ++) ++ ++cc_proto_library( ++ name = "metrics_service_proto_cc", ++ deps = [":metrics_service_proto"], ++) ++ ++cc_grpc_library( ++ name = "metrics_service_grpc_cc", ++ srcs = [":metrics_service_proto"], ++ generate_mocks = True, ++ grpc_only = True, ++ deps = [":metrics_service_proto_cc"], ++) +diff --git a/MODULE.bazel b/MODULE.bazel +new file mode 100644 +index 0000000..a5a5e54 +--- /dev/null ++++ b/MODULE.bazel +@@ -0,0 +1,8 @@ ++module( ++ name = "opentelemetry-proto", ++ version = "1.3.2", ++ compatibility_level = 0, ++) ++ ++bazel_dep(name = "grpc", version = "1.56.3.bcr.1", repo_name = "com_github_grpc_grpc") ++bazel_dep(name = "rules_proto", version = "5.3.0-21.7") diff --git a/modules/opentelemetry-proto/1.3.2/presubmit.yml b/modules/opentelemetry-proto/1.3.2/presubmit.yml new file mode 100644 index 00000000000..0a6384a3fd1 --- /dev/null +++ b/modules/opentelemetry-proto/1.3.2/presubmit.yml @@ -0,0 +1,12 @@ +matrix: + platform: ["debian10", "macos", "ubuntu2004", "windows"] + bazel: ["6.x", "7.x"] +tasks: + verify_targets: + platform: ${{ platform }} + bazel: ${{ bazel }} + build_flags: + - '--cxxopt=-std=c++14' + - '--host_cxxopt=-std=c++14' + build_targets: + - '@opentelemetry-proto//...' diff --git a/modules/opentelemetry-proto/1.3.2/source.json b/modules/opentelemetry-proto/1.3.2/source.json new file mode 100644 index 00000000000..2bdac81f1ca --- /dev/null +++ b/modules/opentelemetry-proto/1.3.2/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-wGnA2WE3zwBdNEEfpn3TtvH4xkrx5/sv4AiaQcQlrNc=", + "strip_prefix": "opentelemetry-proto-1.3.2", + "url": "https://github.com/open-telemetry/opentelemetry-proto/archive/refs/tags/v1.3.2.tar.gz", + "patch_strip": 1, + "patches": { + "0001-Add-MODULE.bazel.patch": "sha256-+zc1zb08g8qwt8yYDqh/MVE5jYYrvNvIwOUG5dqmMBA=" + } +} diff --git a/modules/opentelemetry-proto/metadata.json b/modules/opentelemetry-proto/metadata.json index 037ccd2599a..60a4f2ea575 100644 --- a/modules/opentelemetry-proto/metadata.json +++ b/modules/opentelemetry-proto/metadata.json @@ -12,7 +12,8 @@ ], "versions": [ "1.1.0", - "1.3.1" + "1.3.1", + "1.3.2" ], "yanked_versions": {} } diff --git a/modules/pugixml/1.14.bcr.1/MODULE.bazel b/modules/pugixml/1.14.bcr.1/MODULE.bazel new file mode 100644 index 00000000000..06e19eec259 --- /dev/null +++ b/modules/pugixml/1.14.bcr.1/MODULE.bazel @@ -0,0 +1,6 @@ +module( + name = "pugixml", + version = "1.14.bcr.1", + compatibility_level = 1, +) +bazel_dep(name = "rules_cc", version = "0.0.9") diff --git a/modules/pugixml/1.14.bcr.1/patches/add_build_file.patch b/modules/pugixml/1.14.bcr.1/patches/add_build_file.patch new file mode 100644 index 00000000000..65435c08b0f --- /dev/null +++ b/modules/pugixml/1.14.bcr.1/patches/add_build_file.patch @@ -0,0 +1,18 @@ +--- /dev/null ++++ BUILD.bazel +@@ -0,0 +1,15 @@ ++""" Builds pugixml. ++""" ++ ++load("@rules_cc//cc:defs.bzl", "cc_library") ++ ++cc_library( ++ name = "pugixml", ++ srcs = ["pugixml.cpp"], ++ hdrs = [ ++ "pugiconfig.hpp", ++ "pugixml.hpp", ++ ], ++ includes = ["."], ++ visibility = ["//visibility:public"], ++) diff --git a/modules/pugixml/1.14.bcr.1/patches/module_dot_bazel.patch b/modules/pugixml/1.14.bcr.1/patches/module_dot_bazel.patch new file mode 100644 index 00000000000..859250a263f --- /dev/null +++ b/modules/pugixml/1.14.bcr.1/patches/module_dot_bazel.patch @@ -0,0 +1,9 @@ +--- MODULE.bazel ++++ MODULE.bazel +@@ -0,0 +1,6 @@ ++module( ++ name = "pugixml", ++ version = "1.14.bcr.1", ++ compatibility_level = 1, ++) ++bazel_dep(name = "rules_cc", version = "0.0.9") diff --git a/modules/pugixml/1.14.bcr.1/presubmit.yml b/modules/pugixml/1.14.bcr.1/presubmit.yml new file mode 100644 index 00000000000..005b8c0eb5a --- /dev/null +++ b/modules/pugixml/1.14.bcr.1/presubmit.yml @@ -0,0 +1,10 @@ +matrix: + platform: ["debian10", "ubuntu2004", "macos", "macos_arm64", "windows"] + bazel: ["7.x"] +tasks: + verify_targets: + name: Verify build targets + bazel: ${{ bazel }} + platform: ${{ platform }} + build_targets: + - '@pugixml' diff --git a/modules/pugixml/1.14.bcr.1/source.json b/modules/pugixml/1.14.bcr.1/source.json new file mode 100644 index 00000000000..9db711676e9 --- /dev/null +++ b/modules/pugixml/1.14.bcr.1/source.json @@ -0,0 +1,10 @@ +{ + "url": "https://github.com/zeux/pugixml/releases/download/v1.14/pugixml-1.14.tar.gz", + "integrity": "sha256-LxDidocMZLHbaAkFCnXhGol6jXRWxL5cay41oRFooBU=", + "strip_prefix": "pugixml-1.14/src", + "patches": { + "add_build_file.patch": "sha256-G4BTgkVmpPFVxSudpzCzKX9j4q6ecn4s/pnq9xq8WPQ=", + "module_dot_bazel.patch": "sha256-koYokgnmPZ4opnO9z8Ilk9dCJP50JMh+piOXxdYG4ic=" + }, + "patch_strip": 0 +} diff --git a/modules/pugixml/metadata.json b/modules/pugixml/metadata.json index 848e69b6d86..a3a46824fad 100644 --- a/modules/pugixml/metadata.json +++ b/modules/pugixml/metadata.json @@ -10,7 +10,8 @@ "github:zeux/pugixml" ], "versions": [ - "1.14" + "1.14", + "1.14.bcr.1" ], "yanked_versions": {} } diff --git a/modules/rules_go/0.49.0/MODULE.bazel b/modules/rules_go/0.49.0/MODULE.bazel new file mode 100644 index 00000000000..c1af0602d38 --- /dev/null +++ b/modules/rules_go/0.49.0/MODULE.bazel @@ -0,0 +1,46 @@ +module( + name = "rules_go", + version = "0.49.0", + compatibility_level = 0, + repo_name = "io_bazel_rules_go", +) + +# The custom repo_name is used to prevent our bazel_features polyfill for WORKSPACE builds from +# conflicting with the real bazel_features repo. +bazel_dep(name = "bazel_features", version = "1.9.1", repo_name = "io_bazel_rules_go_bazel_features") +bazel_dep(name = "bazel_skylib", version = "1.2.0") +bazel_dep(name = "platforms", version = "0.0.10") +bazel_dep(name = "rules_proto", version = "6.0.0") +bazel_dep(name = "protobuf", version = "3.19.2", repo_name = "com_google_protobuf") + +go_sdk = use_extension("//go:extensions.bzl", "go_sdk") +go_sdk.download( + name = "go_default_sdk", + version = "1.21.8", +) +use_repo( + go_sdk, + "go_toolchains", + # This name is ugly on purpose to avoid a conflict with a user-named SDK. + "io_bazel_rules_nogo", +) +register_toolchains("@go_toolchains//:all") + +bazel_dep(name = "gazelle", version = "0.36.0") + +go_deps = use_extension("@gazelle//:extensions.bzl", "go_deps") +go_deps.from_file(go_mod = "//:go.mod") +use_repo( + go_deps, + "com_github_gogo_protobuf", + "com_github_golang_mock", + "com_github_golang_protobuf", + "org_golang_google_genproto", + "org_golang_google_grpc", + "org_golang_google_grpc_cmd_protoc_gen_go_grpc", + "org_golang_google_protobuf", + "org_golang_x_net", + "org_golang_x_tools", + # Exported by gazelle specifically for rules_go. + "bazel_gazelle_go_repository_config", +) diff --git a/modules/rules_go/0.49.0/presubmit.yml b/modules/rules_go/0.49.0/presubmit.yml new file mode 100644 index 00000000000..078639a1917 --- /dev/null +++ b/modules/rules_go/0.49.0/presubmit.yml @@ -0,0 +1,35 @@ +matrix: + platform: + - debian10 + - ubuntu2004 + - macos + - macos_arm64 + - windows + bazel: [6.x, 7.x] +tasks: + verify_targets: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@rules_go//go/tools/bzltestutil/...' +bcr_test_module: + module_path: tests/bcr + matrix: + platform: + - debian10 + - ubuntu2004 + - macos + - macos_arm64 + - windows + bazel: [6.x, 7.x] + tasks: + run_test_module: + name: Run test module + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - //... + - '@go_default_sdk//...' + test_targets: + - //... diff --git a/modules/rules_go/0.49.0/source.json b/modules/rules_go/0.49.0/source.json new file mode 100644 index 00000000000..3be57aa56cc --- /dev/null +++ b/modules/rules_go/0.49.0/source.json @@ -0,0 +1,5 @@ +{ + "integrity": "sha256-2T7wLx5yyC2Ls9UWlRmzYWezPPaMJSUl47nT1d0UPec=", + "strip_prefix": "", + "url": "https://github.com/bazelbuild/rules_go/releases/download/v0.49.0/rules_go-v0.49.0.zip" +} diff --git a/modules/rules_go/metadata.json b/modules/rules_go/metadata.json index e0196791516..e7ad63d79b2 100644 --- a/modules/rules_go/metadata.json +++ b/modules/rules_go/metadata.json @@ -43,7 +43,8 @@ "0.47.0", "0.47.1", "0.48.0", - "0.48.1" + "0.48.1", + "0.49.0" ], "yanked_versions": { "0.33.0": "Obsolete experimental version that emits debug prints. Update to 0.39.1 or higher", diff --git a/modules/rules_ios/4.8.1/MODULE.bazel b/modules/rules_ios/4.8.1/MODULE.bazel new file mode 100644 index 00000000000..b9a3099ca66 --- /dev/null +++ b/modules/rules_ios/4.8.1/MODULE.bazel @@ -0,0 +1,103 @@ +""" +Defines all the external repositories and dependencies for rules_ios. +""" + +# Defines the rules_ios bzlmod module. +# Version is updated during release to the registry. +module( + name = "rules_ios", + version = "4.8.1", + bazel_compatibility = [ + ">=6.0.0", + ], + compatibility_level = 1, + repo_name = "build_bazel_rules_ios", +) + +# Declare the bzlmod dependencies needed by rules_ios and users of rules_ios +bazel_dep( + name = "apple_support", + version = "1.15.1", + repo_name = "build_bazel_apple_support", +) +bazel_dep( + name = "rules_apple", + version = "3.5.1", + repo_name = "build_bazel_rules_apple", +) +bazel_dep( + name = "rules_cc", + version = "0.0.6", +) +bazel_dep( + name = "rules_swift", + version = "1.18.0", + repo_name = "build_bazel_rules_swift", +) +bazel_dep( + name = "bazel_skylib", + version = "1.4.2", +) + +# Declare the development dependencies needed for rules_ios development +bazel_dep( + name = "buildifier_prebuilt", + version = "6.1.0", + dev_dependency = True, +) +bazel_dep( + name = "rules_pkg", + version = "0.9.1", + dev_dependency = True, +) +bazel_dep( + name = "stardoc", + version = "0.6.2", + dev_dependency = True, + repo_name = "io_bazel_stardoc", +) + +# Load non-bzlmod dependencies from rules_ios +non_module_deps = use_extension("//rules:module_extensions.bzl", "non_module_deps") +use_repo( + non_module_deps, + "arm64-to-sim", + "com_github_yonaskolb_xcodegen", + "tart", +) + +non_module_dev_deps = use_extension( + "//rules:module_extensions.bzl", + "non_module_dev_deps", + dev_dependency = True, +) +use_repo( + non_module_dev_deps, + "com_github_apple_swiftcollections", +) + +# Configure Xcode +xcode_configure = use_extension( + "//rules:module_extensions.bzl", + "xcode_configure", + dev_dependency = True, +) +xcode_configure.configure( + remote_xcode_label = "", + xcode_locator_label = "//tools/toolchains/xcode_configure:xcode_locator.m", +) + +# Load non-bzlmod dependencies used in this repo from rules_swift +swift_non_module_deps = use_extension("@build_bazel_rules_swift//swift:extensions.bzl", "non_module_deps") +use_repo( + swift_non_module_deps, + "build_bazel_rules_swift_index_import", + "build_bazel_rules_swift_local_config", +) + +# Load non-bzlmod dependencies used in this repo from rules_apple +apple_non_module_deps = use_extension("@build_bazel_rules_apple//apple:extensions.bzl", "non_module_deps") +use_repo( + apple_non_module_deps, + "xctestrunner", +) diff --git a/modules/rules_ios/4.8.1/patches/module_dot_bazel_version.patch b/modules/rules_ios/4.8.1/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..72b2ab0407f --- /dev/null +++ b/modules/rules_ios/4.8.1/patches/module_dot_bazel_version.patch @@ -0,0 +1,14 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -5,9 +5,9 @@ + # Defines the rules_ios bzlmod module. + # Version is updated during release to the registry. + module( + name = "rules_ios", +- version = "0", ++ version = "4.8.1", + bazel_compatibility = [ + ">=6.0.0", + ], + compatibility_level = 1, diff --git a/modules/rules_ios/4.8.1/presubmit.yml b/modules/rules_ios/4.8.1/presubmit.yml new file mode 100644 index 00000000000..13feb413e34 --- /dev/null +++ b/modules/rules_ios/4.8.1/presubmit.yml @@ -0,0 +1,17 @@ +matrix: + bazel: ["6.x", "7.x"] +tasks: + verify_build_targets_bazel_6: + name: Verify Build targets on macOS with Bazel 6 + platform: macos_arm64 + bazel: 6.x + build_targets: + - "@rules_ios//rules/..." + verify_build_targets_bazel_7: + name: Verify Build targets on macOS with Bazel 7 + platform: macos_arm64 + bazel: 7.x + build_targets: + - "@rules_ios//rules/..." + build_flags: + - "--repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1" diff --git a/modules/rules_ios/4.8.1/source.json b/modules/rules_ios/4.8.1/source.json new file mode 100644 index 00000000000..b851cc474eb --- /dev/null +++ b/modules/rules_ios/4.8.1/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-7kFZvrnJd9CSIz9S7u9D9VOdQwntkdy8xyCqSRYPRRo=", + "strip_prefix": "", + "url": "https://github.com/bazel-ios/rules_ios/releases/download/4.8.1/rules_ios.4.8.1.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-HDl7eLVe1qSJPV+y3CJl5usfGkAIILXbEJQFwSYD9Qs=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_ios/4.8.2/MODULE.bazel b/modules/rules_ios/4.8.2/MODULE.bazel new file mode 100644 index 00000000000..4fca1b59ed9 --- /dev/null +++ b/modules/rules_ios/4.8.2/MODULE.bazel @@ -0,0 +1,104 @@ +""" +Defines all the external repositories and dependencies for rules_ios. +""" + +# Defines the rules_ios bzlmod module. +# Version is updated during release to the registry. +module( + name = "rules_ios", + version = "4.8.2", + bazel_compatibility = [ + ">=6.0.0", + ], + compatibility_level = 1, + repo_name = "build_bazel_rules_ios", +) + +# Declare the bzlmod dependencies needed by rules_ios and users of rules_ios +bazel_dep( + name = "apple_support", + version = "1.15.1", + repo_name = "build_bazel_apple_support", +) +bazel_dep( + name = "rules_apple", + version = "3.5.1", + repo_name = "build_bazel_rules_apple", +) +bazel_dep( + name = "rules_cc", + version = "0.0.6", +) +bazel_dep( + name = "rules_swift", + version = "1.18.0", + max_compatibility_level = 2, + repo_name = "build_bazel_rules_swift", +) +bazel_dep( + name = "bazel_skylib", + version = "1.4.2", +) + +# Declare the development dependencies needed for rules_ios development +bazel_dep( + name = "buildifier_prebuilt", + version = "6.1.0", + dev_dependency = True, +) +bazel_dep( + name = "rules_pkg", + version = "0.9.1", + dev_dependency = True, +) +bazel_dep( + name = "stardoc", + version = "0.6.2", + dev_dependency = True, + repo_name = "io_bazel_stardoc", +) + +# Load non-bzlmod dependencies from rules_ios +non_module_deps = use_extension("//rules:module_extensions.bzl", "non_module_deps") +use_repo( + non_module_deps, + "arm64-to-sim", + "com_github_yonaskolb_xcodegen", + "tart", +) + +non_module_dev_deps = use_extension( + "//rules:module_extensions.bzl", + "non_module_dev_deps", + dev_dependency = True, +) +use_repo( + non_module_dev_deps, + "com_github_apple_swiftcollections", +) + +# Configure Xcode +xcode_configure = use_extension( + "//rules:module_extensions.bzl", + "xcode_configure", + dev_dependency = True, +) +xcode_configure.configure( + remote_xcode_label = "", + xcode_locator_label = "//tools/toolchains/xcode_configure:xcode_locator.m", +) + +# Load non-bzlmod dependencies used in this repo from rules_swift +swift_non_module_deps = use_extension("@build_bazel_rules_swift//swift:extensions.bzl", "non_module_deps") +use_repo( + swift_non_module_deps, + "build_bazel_rules_swift_index_import", + "build_bazel_rules_swift_local_config", +) + +# Load non-bzlmod dependencies used in this repo from rules_apple +apple_non_module_deps = use_extension("@build_bazel_rules_apple//apple:extensions.bzl", "non_module_deps") +use_repo( + apple_non_module_deps, + "xctestrunner", +) diff --git a/modules/rules_ios/4.8.2/patches/module_dot_bazel_version.patch b/modules/rules_ios/4.8.2/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..fd3f55bf2ce --- /dev/null +++ b/modules/rules_ios/4.8.2/patches/module_dot_bazel_version.patch @@ -0,0 +1,14 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -5,9 +5,9 @@ + # Defines the rules_ios bzlmod module. + # Version is updated during release to the registry. + module( + name = "rules_ios", +- version = "0", ++ version = "4.8.2", + bazel_compatibility = [ + ">=6.0.0", + ], + compatibility_level = 1, diff --git a/modules/rules_ios/4.8.2/presubmit.yml b/modules/rules_ios/4.8.2/presubmit.yml new file mode 100644 index 00000000000..13feb413e34 --- /dev/null +++ b/modules/rules_ios/4.8.2/presubmit.yml @@ -0,0 +1,17 @@ +matrix: + bazel: ["6.x", "7.x"] +tasks: + verify_build_targets_bazel_6: + name: Verify Build targets on macOS with Bazel 6 + platform: macos_arm64 + bazel: 6.x + build_targets: + - "@rules_ios//rules/..." + verify_build_targets_bazel_7: + name: Verify Build targets on macOS with Bazel 7 + platform: macos_arm64 + bazel: 7.x + build_targets: + - "@rules_ios//rules/..." + build_flags: + - "--repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1" diff --git a/modules/rules_ios/4.8.2/source.json b/modules/rules_ios/4.8.2/source.json new file mode 100644 index 00000000000..dcda234040f --- /dev/null +++ b/modules/rules_ios/4.8.2/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-NA6zFiKjLvoK+CUx4MnJSssRKyIa3a6kmPiWPE85Vtk=", + "strip_prefix": "", + "url": "https://github.com/bazel-ios/rules_ios/releases/download/4.8.2/rules_ios.4.8.2.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-McPKgxhBNGiBFZbyqmOvpdsuLKT2O396wIGJWLSQqjw=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_ios/metadata.json b/modules/rules_ios/metadata.json index 143b72a2ab8..271fade8d1d 100644 --- a/modules/rules_ios/metadata.json +++ b/modules/rules_ios/metadata.json @@ -34,7 +34,9 @@ "4.6.0", "4.7.0", "4.7.1", - "4.8.0" + "4.8.0", + "4.8.1", + "4.8.2" ], "yanked_versions": {} } diff --git a/modules/rules_itest/0.0.17/MODULE.bazel b/modules/rules_itest/0.0.17/MODULE.bazel new file mode 100644 index 00000000000..0eba8cd488f --- /dev/null +++ b/modules/rules_itest/0.0.17/MODULE.bazel @@ -0,0 +1,11 @@ +module( + name = "rules_itest", + version = "0.0.17", + compatibility_level = 1, +) + +bazel_dep(name = "aspect_bazel_lib", version = "1.42.0") +bazel_dep(name = "bazel_skylib", version = "1.5.0") +bazel_dep(name = "rules_go", version = "0.44.0") + +bazel_dep(name = "gazelle", version = "0.34.0", dev_dependency = True) diff --git a/modules/rules_itest/0.0.17/patches/module_dot_bazel_version.patch b/modules/rules_itest/0.0.17/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..d2b084caf39 --- /dev/null +++ b/modules/rules_itest/0.0.17/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_itest", +- version = "0.0.1", ++ version = "0.0.17", + compatibility_level = 1, + ) + + bazel_dep(name = "aspect_bazel_lib", version = "1.42.0") diff --git a/modules/rules_itest/0.0.17/presubmit.yml b/modules/rules_itest/0.0.17/presubmit.yml new file mode 100644 index 00000000000..3634ad00842 --- /dev/null +++ b/modules/rules_itest/0.0.17/presubmit.yml @@ -0,0 +1,12 @@ +bcr_test_module: + module_path: "tests" + matrix: + platform: ["debian10", "macos", "ubuntu2004", "windows"] + bazel: [6.x, 7.x, rolling] + tasks: + run_tests: + name: "Run tests" + platform: ${{ platform }} + bazel: ${{ bazel }} + test_targets: + - "//..." diff --git a/modules/rules_itest/0.0.17/source.json b/modules/rules_itest/0.0.17/source.json new file mode 100644 index 00000000000..919e48f049e --- /dev/null +++ b/modules/rules_itest/0.0.17/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-bCBURa2kifCfkaydgFvlej+eq92Ee7HAdxZUdzgRndI=", + "strip_prefix": "rules_itest-0.0.17", + "url": "https://github.com/dzbarsky/rules_itest/releases/download/v0.0.17/rules_itest-v0.0.17.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-X6wLbaOCIfH288poEsZyWrqEZdcBD7y8j1+EWvmkwRc=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_itest/metadata.json b/modules/rules_itest/metadata.json index f5e062dbd1c..72f9b7e374b 100644 --- a/modules/rules_itest/metadata.json +++ b/modules/rules_itest/metadata.json @@ -14,7 +14,8 @@ "0.0.9", "0.0.13", "0.0.14", - "0.0.15" + "0.0.15", + "0.0.17" ], "yanked_versions": {} } diff --git a/modules/rules_java/7.7.0/MODULE.bazel b/modules/rules_java/7.7.0/MODULE.bazel new file mode 100644 index 00000000000..d12cb04d4d4 --- /dev/null +++ b/modules/rules_java/7.7.0/MODULE.bazel @@ -0,0 +1,99 @@ +module( + name = "rules_java", + version = "7.7.0", + # Requires @bazel_tools//tools/jdk:bootstrap_runtime_toolchain_type. + bazel_compatibility = [">=7.0.0"], + compatibility_level = 1, +) + +bazel_dep(name = "platforms", version = "0.0.4") +bazel_dep(name = "rules_cc", version = "0.0.2") +bazel_dep(name = "bazel_features", version = "1.11.0") +bazel_dep(name = "bazel_skylib", version = "1.6.1") + +# Required by @remote_java_tools, which is loaded via module extension. +bazel_dep(name = "rules_proto", version = "4.0.0") +bazel_dep(name = "rules_license", version = "0.0.3") + +register_toolchains("//toolchains:all") + +toolchains = use_extension("//java:extensions.bzl", "toolchains") + +# Declare remote java tools repos +use_repo(toolchains, "remote_java_tools") +use_repo(toolchains, "remote_java_tools_linux") +use_repo(toolchains, "remote_java_tools_windows") +use_repo(toolchains, "remote_java_tools_darwin_x86_64") +use_repo(toolchains, "remote_java_tools_darwin_arm64") + +# Declare local jdk repo +use_repo(toolchains, "local_jdk") + +register_toolchains( + "@local_jdk//:runtime_toolchain_definition", + "@local_jdk//:bootstrap_runtime_toolchain_definition", +) + +# Declare all remote jdk toolchain config repos +JDKS = { + # Must match JDK repos defined in remote_jdk8_repos() + "8": [ + "linux", + "linux_aarch64", + "linux_s390x", + "macos", + "macos_aarch64", + "windows", + ], + # Must match JDK repos defined in remote_jdk11_repos() + "11": [ + "linux", + "linux_aarch64", + "linux_ppc64le", + "linux_s390x", + "macos", + "macos_aarch64", + "win", + "win_arm64", + ], + # Must match JDK repos defined in remote_jdk17_repos() + "17": [ + "linux", + "linux_aarch64", + "linux_ppc64le", + "linux_s390x", + "macos", + "macos_aarch64", + "win", + "win_arm64", + ], + # Must match JDK repos defined in remote_jdk21_repos() + "21": [ + "linux", + "linux_aarch64", + "linux_ppc64le", + "linux_s390x", + "macos", + "macos_aarch64", + "win", + "win_arm64", + ], +} + +REMOTE_JDK_REPOS = [(("remote_jdk" if version == "8" else "remotejdk") + version + "_" + platform) for version in JDKS for platform in JDKS[version]] + +[use_repo( + toolchains, + repo + "_toolchain_config_repo", +) for repo in REMOTE_JDK_REPOS] + +[register_toolchains("@" + name + "_toolchain_config_repo//:all") for name in REMOTE_JDK_REPOS] + +# Dev dependencies +bazel_dep(name = "rules_pkg", version = "0.9.1", dev_dependency = True) + +# Override rules_python version to deal with #161 and https://github.com/bazelbuild/bazel/issues/20458 +single_version_override( + module_name = "rules_python", + version = "0.24.0", +) diff --git a/modules/rules_java/7.7.0/presubmit.yml b/modules/rules_java/7.7.0/presubmit.yml new file mode 100644 index 00000000000..a99433433d0 --- /dev/null +++ b/modules/rules_java/7.7.0/presubmit.yml @@ -0,0 +1,16 @@ +matrix: + platform: + - centos7 + - debian10 + - macos + - ubuntu2004 + - windows + bazel: + - 7.x +tasks: + verify_build_targets: + name: "Verify build targets" + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - "@rules_java//java/..." diff --git a/modules/rules_java/7.7.0/source.json b/modules/rules_java/7.7.0/source.json new file mode 100644 index 00000000000..14fdef8c9ce --- /dev/null +++ b/modules/rules_java/7.7.0/source.json @@ -0,0 +1,5 @@ +{ + "integrity": "sha256-eQ0atcdaYjayzq7wH1Boep0Yohmq/3CGXLIDJstQu8I=", + "strip_prefix": "", + "url": "https://github.com/bazelbuild/rules_java/releases/download/7.7.0/rules_java-7.7.0.tar.gz" +} diff --git a/modules/rules_java/metadata.json b/modules/rules_java/metadata.json index efd3f2030db..25e52915d85 100644 --- a/modules/rules_java/metadata.json +++ b/modules/rules_java/metadata.json @@ -42,7 +42,8 @@ "7.6.2", "7.6.3", "7.6.4", - "7.6.5" + "7.6.5", + "7.7.0" ], "yanked_versions": { "6.3.3": "6.3.3 is a broken version.", diff --git a/modules/rules_multitool/0.11.0/MODULE.bazel b/modules/rules_multitool/0.11.0/MODULE.bazel new file mode 100644 index 00000000000..9d16a452279 --- /dev/null +++ b/modules/rules_multitool/0.11.0/MODULE.bazel @@ -0,0 +1,18 @@ +"multitool" + +module( + name = "rules_multitool", + version = "0.11.0", + compatibility_level = 1, +) + +bazel_dep(name = "bazel_features", version = "1.9.0") +bazel_dep(name = "bazel_skylib", version = "1.5.0") +bazel_dep(name = "buildifier_prebuilt", version = "6.4.0") +bazel_dep(name = "platforms", version = "0.0.8") + +# ensure toolchains get registered +multitool = use_extension("//multitool:extension.bzl", "multitool") +use_repo(multitool, "multitool") + +register_toolchains("@multitool//toolchains:all") diff --git a/modules/rules_multitool/0.11.0/presubmit.yml b/modules/rules_multitool/0.11.0/presubmit.yml new file mode 100644 index 00000000000..a90b2cabc28 --- /dev/null +++ b/modules/rules_multitool/0.11.0/presubmit.yml @@ -0,0 +1,15 @@ +matrix: + platform: + - debian10 + - ubuntu2004 + - macos + - macos_arm64 + bazel: + - 7.x +tasks: + verify_targets: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@rules_multitool//...' diff --git a/modules/rules_multitool/0.11.0/source.json b/modules/rules_multitool/0.11.0/source.json new file mode 100644 index 00000000000..c6f0ca32477 --- /dev/null +++ b/modules/rules_multitool/0.11.0/source.json @@ -0,0 +1,5 @@ +{ + "integrity": "sha256-rJfzqyhp0UkBMOaCgDZtRVlRAmalshXGKMWv1L0kXU4=", + "strip_prefix": "rules_multitool-0.11.0", + "url": "https://github.com/theoremlp/rules_multitool/releases/download/v0.11.0/rules_multitool-0.11.0.tar.gz" +} diff --git a/modules/rules_multitool/0.12.0/MODULE.bazel b/modules/rules_multitool/0.12.0/MODULE.bazel new file mode 100644 index 00000000000..9d4189d1b2e --- /dev/null +++ b/modules/rules_multitool/0.12.0/MODULE.bazel @@ -0,0 +1,18 @@ +"multitool" + +module( + name = "rules_multitool", + version = "0.12.0", + compatibility_level = 1, +) + +bazel_dep(name = "bazel_features", version = "1.9.0") +bazel_dep(name = "bazel_skylib", version = "1.5.0") +bazel_dep(name = "buildifier_prebuilt", version = "6.4.0") +bazel_dep(name = "platforms", version = "0.0.8") + +# ensure toolchains get registered +multitool = use_extension("//multitool:extension.bzl", "multitool") +use_repo(multitool, "multitool") + +register_toolchains("@multitool//toolchains:all") diff --git a/modules/rules_multitool/0.12.0/presubmit.yml b/modules/rules_multitool/0.12.0/presubmit.yml new file mode 100644 index 00000000000..a90b2cabc28 --- /dev/null +++ b/modules/rules_multitool/0.12.0/presubmit.yml @@ -0,0 +1,15 @@ +matrix: + platform: + - debian10 + - ubuntu2004 + - macos + - macos_arm64 + bazel: + - 7.x +tasks: + verify_targets: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@rules_multitool//...' diff --git a/modules/rules_multitool/0.12.0/source.json b/modules/rules_multitool/0.12.0/source.json new file mode 100644 index 00000000000..d711c8ccfd7 --- /dev/null +++ b/modules/rules_multitool/0.12.0/source.json @@ -0,0 +1,5 @@ +{ + "integrity": "sha256-m2hc6ORUyTjb7lRIj3w2vt18HDnbigyYDBHCEVyyY4g=", + "strip_prefix": "rules_multitool-0.12.0", + "url": "https://github.com/theoremlp/rules_multitool/releases/download/v0.12.0/rules_multitool-0.12.0.tar.gz" +} diff --git a/modules/rules_multitool/metadata.json b/modules/rules_multitool/metadata.json index c5167a96976..acdf91bfe3a 100644 --- a/modules/rules_multitool/metadata.json +++ b/modules/rules_multitool/metadata.json @@ -26,7 +26,9 @@ "0.7.1", "0.8.0", "0.9.0", - "0.10.0" + "0.10.0", + "0.11.0", + "0.12.0" ], "yanked_versions": {} } diff --git a/modules/rules_nixpkgs_core/0.12.0/MODULE.bazel b/modules/rules_nixpkgs_core/0.12.0/MODULE.bazel new file mode 100644 index 00000000000..1c8819d4058 --- /dev/null +++ b/modules/rules_nixpkgs_core/0.12.0/MODULE.bazel @@ -0,0 +1,15 @@ +module( + name = "rules_nixpkgs_core", + version = "0.12.0", +) + +bazel_dep(name = "platforms", version = "0.0.4") +bazel_dep(name = "bazel_skylib", version = "1.0.3") + +nix_repo = use_extension("//extensions:repository.bzl", "nix_repo") +nix_repo.github( + name = "nixpkgs", + tag = "24.05", + sha256 = "911314b81780f26fdaf87e17174210bdbd40c86bac1795212f257cdc236a1e78", +) +use_repo(nix_repo, "nixpkgs") diff --git a/modules/rules_nixpkgs_core/0.12.0/presubmit.yml b/modules/rules_nixpkgs_core/0.12.0/presubmit.yml new file mode 100644 index 00000000000..b0ae6e8137d --- /dev/null +++ b/modules/rules_nixpkgs_core/0.12.0/presubmit.yml @@ -0,0 +1,19 @@ +bcr_test_module: + module_path: "testing" + matrix: + platform: ["ubuntu2204"] + bazel: + - "6.x" + tasks: + run_tests: + name: "Run test module" + platform: ${{ platform }} + bazel: ${{ bazel }} + environment: + # The Nix installer updates ~/.profile to set PATH. However, the Bazel + # CI setup seems to disregard ~/.profile. So we set PATH manually here. + PATH: /var/lib/buildkite-agent/.nix-profile/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + shell_commands: + - curl -L https://nixos.org/nix/install | sh -s -- --no-daemon + test_targets: + - "//..." diff --git a/modules/rules_nixpkgs_core/0.12.0/source.json b/modules/rules_nixpkgs_core/0.12.0/source.json new file mode 100644 index 00000000000..cdebb064173 --- /dev/null +++ b/modules/rules_nixpkgs_core/0.12.0/source.json @@ -0,0 +1,5 @@ +{ + "integrity": "sha256-GtsE3AQWkV/vQndX9CcsT32s7+zu78UPaDrsf36beHo=", + "strip_prefix": "rules_nixpkgs-0.12.0/core", + "url": "https://github.com/tweag/rules_nixpkgs/releases/download/v0.12.0/rules_nixpkgs-0.12.0.tar.gz" +} diff --git a/modules/rules_nixpkgs_core/metadata.json b/modules/rules_nixpkgs_core/metadata.json index 0f2c0ffedc8..111f248081d 100644 --- a/modules/rules_nixpkgs_core/metadata.json +++ b/modules/rules_nixpkgs_core/metadata.json @@ -17,7 +17,8 @@ ], "versions": [ "0.10.0", - "0.11.1" + "0.11.1", + "0.12.0" ], "yanked_versions": {} } diff --git a/modules/rules_nixpkgs_nodejs/0.12.0/MODULE.bazel b/modules/rules_nixpkgs_nodejs/0.12.0/MODULE.bazel new file mode 100644 index 00000000000..9b154e7cca5 --- /dev/null +++ b/modules/rules_nixpkgs_nodejs/0.12.0/MODULE.bazel @@ -0,0 +1,17 @@ +module( + name = "rules_nixpkgs_nodejs", + version = "0.12.0", +) + +bazel_dep(name = "rules_nixpkgs_core", version = "0.12.0") +bazel_dep(name = "platforms", version = "0.0.4") +bazel_dep(name = "rules_nodejs", version = "5.5.3") +bazel_dep(name = "bazel_skylib", version = "1.0.3") + +nix_repo = use_extension("@rules_nixpkgs_core//extensions:repository.bzl", "nix_repo") +nix_repo.default(name = "nixpkgs") +use_repo(nix_repo, "nixpkgs") + +nix_nodejs = use_extension("//extensions:toolchain.bzl", "nix_nodejs") +use_repo(nix_nodejs, "nixpkgs_nodejs_toolchains") +register_toolchains("@nixpkgs_nodejs_toolchains//:all") diff --git a/modules/rules_nixpkgs_nodejs/0.12.0/presubmit.yml b/modules/rules_nixpkgs_nodejs/0.12.0/presubmit.yml new file mode 100644 index 00000000000..db8f7b4e9b5 --- /dev/null +++ b/modules/rules_nixpkgs_nodejs/0.12.0/presubmit.yml @@ -0,0 +1,18 @@ +matrix: + platform: + - debian10 + - ubuntu2004 + - macos + # XXX not fully supported yet + #- macos_arm64 + bazel: + - 7.x + - 6.x +tasks: + verify_targets: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@rules_nixpkgs_nodejs//:nodejs' + - '@rules_nixpkgs_nodejs//extensions:toolchain' diff --git a/modules/rules_nixpkgs_nodejs/0.12.0/source.json b/modules/rules_nixpkgs_nodejs/0.12.0/source.json new file mode 100644 index 00000000000..f70a21e0eb0 --- /dev/null +++ b/modules/rules_nixpkgs_nodejs/0.12.0/source.json @@ -0,0 +1,5 @@ +{ + "url": "https://github.com/tweag/rules_nixpkgs/releases/download/v0.12.0/rules_nixpkgs-0.12.0.tar.gz", + "integrity": "sha256-GtsE3AQWkV/vQndX9CcsT32s7+zu78UPaDrsf36beHo=", + "strip_prefix": "rules_nixpkgs-0.12.0/toolchains/nodejs" +} diff --git a/modules/rules_nixpkgs_nodejs/metadata.json b/modules/rules_nixpkgs_nodejs/metadata.json new file mode 100644 index 00000000000..c5f8ddb2f52 --- /dev/null +++ b/modules/rules_nixpkgs_nodejs/metadata.json @@ -0,0 +1,22 @@ +{ + "homepage": "https://nix-bazel.build", + "maintainers": [ + { + "email": "benjamin.radford@tweag.io ", + "github": "benradf", + "name": "Benjamin Radford" + }, + { + "email": "andreas.herrmann@tweag.io", + "github": "aherrmann", + "name": "Andreas Herrmann" + } + ], + "repository": [ + "github:tweag/rules_nixpkgs" + ], + "versions": [ + "0.12.0" + ], + "yanked_versions": {} +} diff --git a/modules/rules_oci/1.8.0/MODULE.bazel b/modules/rules_oci/1.8.0/MODULE.bazel new file mode 100644 index 00000000000..57a1d7f321f --- /dev/null +++ b/modules/rules_oci/1.8.0/MODULE.bazel @@ -0,0 +1,30 @@ +"bazel-contrib/rules_oci" + +module( + name = "rules_oci", + version = "1.8.0", + compatibility_level = 1, +) + +bazel_dep(name = "aspect_bazel_lib", version = "1.42.1") +bazel_dep(name = "bazel_skylib", version = "1.4.1") +bazel_dep(name = "platforms", version = "0.0.5") + +oci = use_extension("//oci:extensions.bzl", "oci") +oci.toolchains(crane_version = "v0.18.0") +use_repo(oci, "oci_crane_registry_toolchains", "oci_crane_toolchains") + +register_toolchains("@oci_crane_toolchains//:all", "@oci_crane_registry_toolchains//:all") + +# Dev dependencies +bazel_lib = use_extension("@aspect_bazel_lib//lib:extensions.bzl", "toolchains") +bazel_lib.jq() +bazel_lib.yq() +use_repo(bazel_lib, "jq_toolchains", "yq_toolchains") + +bazel_dep(name = "rules_go", version = "0.46.0", dev_dependency = True, repo_name = "io_bazel_rules_go") +bazel_dep(name = "rules_pkg", version = "0.7.0", dev_dependency = True) +bazel_dep(name = "gazelle", version = "0.35.0", dev_dependency = True, repo_name = "bazel_gazelle") +bazel_dep(name = "bazel_skylib_gazelle_plugin", version = "1.4.1", dev_dependency = True) + +bazel_dep(name = "container_structure_test", version = "1.16.0") diff --git a/modules/rules_oci/1.8.0/patches/module_dot_bazel_version.patch b/modules/rules_oci/1.8.0/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..6cca8a1e27b --- /dev/null +++ b/modules/rules_oci/1.8.0/patches/module_dot_bazel_version.patch @@ -0,0 +1,14 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,9 +1,9 @@ + "bazel-contrib/rules_oci" + + module( + name = "rules_oci", +- version = "0.0.0", ++ version = "1.8.0", + compatibility_level = 1, + ) + + bazel_dep(name = "aspect_bazel_lib", version = "1.42.1") diff --git a/modules/rules_oci/1.8.0/presubmit.yml b/modules/rules_oci/1.8.0/presubmit.yml new file mode 100644 index 00000000000..6dbe9b1ecab --- /dev/null +++ b/modules/rules_oci/1.8.0/presubmit.yml @@ -0,0 +1,16 @@ +bcr_test_module: + module_path: "e2e/crane_as_registry" + matrix: + bazel: ["6.x", "7.x"] + # TODO(#97): add windows + # File "C:/b/eznkjcld/external/rules_oci~override/oci/repositories.bzl", line 100, column 64, in _stucture_test_repo_impl + # integrity = ST_VERSIONS[repository_ctx.attr.st_version][platform], + # Error: key "windows-amd64" not found in dictionary + platform: ["debian10", "macos", "ubuntu2004"] + tasks: + run_tests: + name: "Run test module" + bazel: ${{ bazel }} + platform: ${{ platform }} + test_targets: + - "//..." diff --git a/modules/rules_oci/1.8.0/source.json b/modules/rules_oci/1.8.0/source.json new file mode 100644 index 00000000000..5f3dd889405 --- /dev/null +++ b/modules/rules_oci/1.8.0/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-Rs6e3P9NPXs6VQd0uCOWwPphnMnOnaAMGwmgi0XqWhQ=", + "strip_prefix": "rules_oci-1.8.0", + "url": "https://github.com/bazel-contrib/rules_oci/releases/download/v1.8.0/rules_oci-v1.8.0.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-10v8nJKMTuyip1IE9wmo6MikxHD0GwRyKvyzqSd4a84=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_oci/metadata.json b/modules/rules_oci/metadata.json index a9cfcb4f15a..9b6bf514c32 100644 --- a/modules/rules_oci/metadata.json +++ b/modules/rules_oci/metadata.json @@ -43,6 +43,7 @@ "1.7.4", "1.7.5", "1.7.6", + "1.8.0", "2.0.0-alpha1", "2.0.0-alpha2", "2.0.0-alpha3", diff --git a/modules/rules_pkg/1.0.1/MODULE.bazel b/modules/rules_pkg/1.0.1/MODULE.bazel new file mode 100644 index 00000000000..50f759097d1 --- /dev/null +++ b/modules/rules_pkg/1.0.1/MODULE.bazel @@ -0,0 +1,25 @@ +module( + name = "rules_pkg", + version = "1.0.1", # Must sync with version.bzl. + compatibility_level = 1, + repo_name = "rules_pkg", +) + +# Do not update to newer versions until you need a specific new feature. +bazel_dep(name = "rules_license", version = "0.0.7") +bazel_dep(name = "rules_python", version = "0.31.0") +bazel_dep(name = "bazel_skylib", version = "1.4.2") + +# Only for development +bazel_dep(name = "platforms", version = "0.0.9", dev_dependency = True) +bazel_dep(name = "rules_cc", version = "0.0.9", dev_dependency = True) +bazel_dep(name = "stardoc", version = "0.6.2", dev_dependency = True) + +# Find the system rpmbuild if one is available. +find_rpm = use_extension("//toolchains/rpm:rpmbuild_configure.bzl", "find_system_rpmbuild_bzlmod", dev_dependency = True) +use_repo(find_rpm, "rules_pkg_rpmbuild") + +register_toolchains( + "@rules_pkg_rpmbuild//:all", + dev_dependency = True, +) diff --git a/modules/rules_pkg/1.0.1/presubmit.yml b/modules/rules_pkg/1.0.1/presubmit.yml new file mode 100644 index 00000000000..112ed230dbe --- /dev/null +++ b/modules/rules_pkg/1.0.1/presubmit.yml @@ -0,0 +1,19 @@ +matrix: + platform: + - debian10 + - ubuntu2004 + - macos + - macos_arm64 + - windows + bazel: + - 7.x + - 6.x +tasks: + verify_targets: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - '@rules_pkg//...' + - '-@rules_pkg//toolchains/...' + - '-@rules_pkg//pkg:make_rpm' diff --git a/modules/rules_pkg/1.0.1/source.json b/modules/rules_pkg/1.0.1/source.json new file mode 100644 index 00000000000..850defab21e --- /dev/null +++ b/modules/rules_pkg/1.0.1/source.json @@ -0,0 +1,4 @@ +{ + "url": "https://github.com/bazelbuild/rules_pkg/releases/download/1.0.1/rules_pkg-1.0.1.tar.gz", + "integrity": "sha256-0gyVGWDtd8t7NBwqWUiFNOSU1a0dMMSBjHNtV3cqn+8=" +} diff --git a/modules/rules_pkg/metadata.json b/modules/rules_pkg/metadata.json index 4c10e29f657..f9d7c62069a 100644 --- a/modules/rules_pkg/metadata.json +++ b/modules/rules_pkg/metadata.json @@ -1,22 +1,23 @@ { - "homepage": "https://github.com/bazelbuild/rules_pkg.git", - "maintainers": [ - { - "email": "bcr-maintainers@bazel.build", - "name": "No Maintainer Specified" - } - ], - "repository": [ - "github:bazelbuild/rules_pkg" - ], - "versions": [ - "0.5.1", - "0.7.0", - "0.8.1", - "0.9.0", - "0.9.1", - "0.10.0", - "0.10.1" - ], - "yanked_versions": {} -} \ No newline at end of file + "homepage": "https://github.com/bazelbuild/rules_pkg.git", + "maintainers": [ + { + "email": "bcr-maintainers@bazel.build", + "name": "No Maintainer Specified" + } + ], + "repository": [ + "github:bazelbuild/rules_pkg" + ], + "versions": [ + "0.5.1", + "0.7.0", + "0.8.1", + "0.9.0", + "0.9.1", + "0.10.0", + "0.10.1", + "1.0.1" + ], + "yanked_versions": {} +} diff --git a/modules/rules_python/0.34.0/MODULE.bazel b/modules/rules_python/0.34.0/MODULE.bazel new file mode 100644 index 00000000000..304f3b92dde --- /dev/null +++ b/modules/rules_python/0.34.0/MODULE.bazel @@ -0,0 +1,132 @@ +module( + name = "rules_python", + version = "0.34.0", + compatibility_level = 1, +) + +bazel_dep(name = "bazel_features", version = "1.9.1") +bazel_dep(name = "bazel_skylib", version = "1.6.1") +bazel_dep(name = "rules_cc", version = "0.0.9") +bazel_dep(name = "platforms", version = "0.0.4") + +# Those are loaded only when using py_proto_library +bazel_dep(name = "rules_proto", version = "6.0.0-rc1") +bazel_dep(name = "protobuf", version = "24.4", repo_name = "com_google_protobuf") + +internal_deps = use_extension("//python/private:internal_deps.bzl", "internal_deps") +use_repo( + internal_deps, + "pypi__build", + "pypi__click", + "pypi__colorama", + "pypi__importlib_metadata", + "pypi__installer", + "pypi__more_itertools", + "pypi__packaging", + "pypi__pep517", + "pypi__pip", + "pypi__pip_tools", + "pypi__pyproject_hooks", + "pypi__setuptools", + "pypi__tomli", + "pypi__wheel", + "pypi__zipp", + "rules_python_internal", +) + +# We need to do another use_extension call to expose the "pythons_hub" +# repo. +python = use_extension("//python/extensions:python.bzl", "python") + +# The default toolchain to use if nobody configures a toolchain. +# NOTE: This is not a stable version. It is provided for convenience, but will +# change frequently to track the most recent Python version. +# NOTE: The root module can override this. +python.toolchain( + is_default = True, + python_version = "3.11", +) +use_repo(python, "python_3_11", "python_versions", "pythons_hub") + +# This call registers the Python toolchains. +register_toolchains("@pythons_hub//:all") + +##################### +# Install twine for our own runfiles wheel publishing and allow bzlmod users to use it. + +pip = use_extension("//python/private/pypi:pip.bzl", "pip_internal") +pip.parse( + hub_name = "rules_python_publish_deps", + python_version = "3.11", + requirements_by_platform = { + "//tools/publish:requirements.txt": "linux_*", + "//tools/publish:requirements_darwin.txt": "osx_*", + "//tools/publish:requirements_windows.txt": "windows_*", + }, +) +use_repo(pip, "rules_python_publish_deps") + +# ===== DEV ONLY DEPS AND SETUP BELOW HERE ===== +bazel_dep(name = "stardoc", version = "0.6.2", dev_dependency = True, repo_name = "io_bazel_stardoc") +bazel_dep(name = "rules_bazel_integration_test", version = "0.20.0", dev_dependency = True) +bazel_dep(name = "rules_testing", version = "0.6.0", dev_dependency = True) + +# Extra gazelle plugin deps so that WORKSPACE.bzlmod can continue including it for e2e tests. +# We use `WORKSPACE.bzlmod` because it is impossible to have dev-only local overrides. +bazel_dep(name = "rules_go", version = "0.41.0", dev_dependency = True, repo_name = "io_bazel_rules_go") +bazel_dep(name = "gazelle", version = "0.33.0", dev_dependency = True, repo_name = "bazel_gazelle") + +dev_pip = use_extension( + "//python/private/pypi:pip.bzl", + "pip_internal", + dev_dependency = True, +) +dev_pip.parse( + experimental_requirement_cycles = { + "sphinx": [ + "sphinx", + "sphinxcontrib-serializinghtml", + "sphinxcontrib-qthelp", + "sphinxcontrib-htmlhelp", + "sphinxcontrib-devhelp", + "sphinxcontrib-applehelp", + ], + }, + hub_name = "dev_pip", + python_version = "3.11", + requirements_by_platform = { + "//docs/sphinx:requirements.txt": "linux_*,osx_*", + }, +) +dev_pip.parse( + hub_name = "pypiserver", + python_version = "3.11", + requirements_lock = "//examples/wheel:requirements_server.txt", +) +use_repo(dev_pip, "dev_pip", "pypiserver") + +# Bazel integration test setup below + +bazel_binaries = use_extension( + "@rules_bazel_integration_test//:extensions.bzl", + "bazel_binaries", + dev_dependency = True, +) + +# Keep in sync with //:version.bzl +bazel_binaries.local( + name = "self", + path = "tests/integration/bazel_from_env", +) +bazel_binaries.download(version = "6.4.0") +bazel_binaries.download(version = "rolling") +use_repo( + bazel_binaries, + "bazel_binaries", + # These don't appear necessary, but are reported as direct dependencies + # that should be use_repo()'d, so we add them as requested + "bazel_binaries_bazelisk", + "build_bazel_bazel_6_4_0", + "build_bazel_bazel_rolling", + "build_bazel_bazel_self", +) diff --git a/modules/rules_python/0.34.0/patches/module_dot_bazel_version.patch b/modules/rules_python/0.34.0/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..2327a164c0f --- /dev/null +++ b/modules/rules_python/0.34.0/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_python", +- version = "0.0.0", ++ version = "0.34.0", + compatibility_level = 1, + ) + + bazel_dep(name = "bazel_features", version = "1.9.1") diff --git a/modules/rules_python/0.34.0/presubmit.yml b/modules/rules_python/0.34.0/presubmit.yml new file mode 100644 index 00000000000..6be334ebfe9 --- /dev/null +++ b/modules/rules_python/0.34.0/presubmit.yml @@ -0,0 +1,26 @@ +# Copyright 2023 The Bazel Authors. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +bcr_test_module: + module_path: "examples/bzlmod" + matrix: + platform: ["debian11", "macos", "ubuntu2004", "windows"] + bazel: [6.x, 7.x] + tasks: + run_tests: + name: "Run test module" + platform: ${{ platform }} + bazel: ${{ bazel }} + test_targets: + - "//..." diff --git a/modules/rules_python/0.34.0/source.json b/modules/rules_python/0.34.0/source.json new file mode 100644 index 00000000000..ff32f7b6e97 --- /dev/null +++ b/modules/rules_python/0.34.0/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-d4quqz5s/VbWgcifXBDXrWv40vGnLeneVbIwgbLTFhg=", + "strip_prefix": "rules_python-0.34.0", + "url": "https://github.com/bazelbuild/rules_python/releases/download/0.34.0/rules_python-0.34.0.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-9Hwgtvb4RwCw/H1tVHuzJFpDSLvbPWD0dw4elwjeHQM=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_python/metadata.json b/modules/rules_python/metadata.json index f3c50e46dbb..63e15d9de95 100644 --- a/modules/rules_python/metadata.json +++ b/modules/rules_python/metadata.json @@ -10,6 +10,11 @@ "name": "Thulio Ferraz Assis", "email": "thulio@aspect.dev", "github": "f0rmiga" + }, + { + "name": "Ignas Anikevicius", + "email": "bcr-ignas@use.startmail.com", + "github": "aignas" } ], "repository": [ @@ -48,7 +53,8 @@ "0.32.2", "0.33.0", "0.33.1", - "0.33.2" + "0.33.2", + "0.34.0" ], "yanked_versions": { "0.14.0": "rules_python 0.14.0 is broken due to https://github.com/bazelbuild/bazel-central-registry/issues/287, please upgrade to version >= 0.15.0" diff --git a/modules/rules_python_gazelle_plugin/0.34.0/MODULE.bazel b/modules/rules_python_gazelle_plugin/0.34.0/MODULE.bazel new file mode 100644 index 00000000000..cd72e7624d9 --- /dev/null +++ b/modules/rules_python_gazelle_plugin/0.34.0/MODULE.bazel @@ -0,0 +1,39 @@ +module( + name = "rules_python_gazelle_plugin", + version = "0.34.0", + compatibility_level = 1, +) + +bazel_dep(name = "bazel_skylib", version = "1.6.1") +bazel_dep(name = "rules_python", version = "0.18.0") +bazel_dep(name = "rules_go", version = "0.41.0", repo_name = "io_bazel_rules_go") +bazel_dep(name = "gazelle", version = "0.33.0", repo_name = "bazel_gazelle") + +local_path_override( + module_name = "rules_python", + path = "..", +) + +go_deps = use_extension("@bazel_gazelle//:extensions.bzl", "go_deps") +go_deps.from_file(go_mod = "//:go.mod") +use_repo( + go_deps, + "com_github_bazelbuild_buildtools", + "com_github_bmatcuk_doublestar_v4", + "com_github_emirpasic_gods", + "com_github_ghodss_yaml", + "com_github_smacker_go_tree_sitter", + "com_github_stretchr_testify", + "in_gopkg_yaml_v2", + "org_golang_x_sync", +) + +python_stdlib_list = use_extension("//python:extensions.bzl", "python_stdlib_list") +use_repo( + python_stdlib_list, + "python_stdlib_list_3_10", + "python_stdlib_list_3_11", + "python_stdlib_list_3_12", + "python_stdlib_list_3_8", + "python_stdlib_list_3_9", +) diff --git a/modules/rules_python_gazelle_plugin/0.34.0/patches/module_dot_bazel_version.patch b/modules/rules_python_gazelle_plugin/0.34.0/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..777f40b2505 --- /dev/null +++ b/modules/rules_python_gazelle_plugin/0.34.0/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_python_gazelle_plugin", +- version = "0.0.0", ++ version = "0.34.0", + compatibility_level = 1, + ) + + bazel_dep(name = "bazel_skylib", version = "1.6.1") diff --git a/modules/rules_python_gazelle_plugin/0.34.0/presubmit.yml b/modules/rules_python_gazelle_plugin/0.34.0/presubmit.yml new file mode 100644 index 00000000000..659beab5256 --- /dev/null +++ b/modules/rules_python_gazelle_plugin/0.34.0/presubmit.yml @@ -0,0 +1,29 @@ +# Copyright 2023 The Bazel Authors. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +bcr_test_module: + module_path: "../examples/bzlmod_build_file_generation" + matrix: + platform: ["debian11", "macos", "ubuntu2004", "windows"] + bazel: [6.x, 7.x] + tasks: + run_tests: + name: "Run test module" + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - "//..." + - ":modules_map" + test_targets: + - "//..." diff --git a/modules/rules_python_gazelle_plugin/0.34.0/source.json b/modules/rules_python_gazelle_plugin/0.34.0/source.json new file mode 100644 index 00000000000..986fb36e244 --- /dev/null +++ b/modules/rules_python_gazelle_plugin/0.34.0/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-d4quqz5s/VbWgcifXBDXrWv40vGnLeneVbIwgbLTFhg=", + "strip_prefix": "rules_python-0.34.0/gazelle", + "url": "https://github.com/bazelbuild/rules_python/releases/download/0.34.0/rules_python-0.34.0.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-8NfQ7pebdMif7e8vvAcEcFNTcwmt/g15cfv6o74tbIg=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_python_gazelle_plugin/metadata.json b/modules/rules_python_gazelle_plugin/metadata.json index 085332502cb..c87564eac62 100644 --- a/modules/rules_python_gazelle_plugin/metadata.json +++ b/modules/rules_python_gazelle_plugin/metadata.json @@ -31,7 +31,8 @@ "0.32.2", "0.33.0", "0.33.1", - "0.33.2" + "0.33.2", + "0.34.0" ], "yanked_versions": {} } diff --git a/modules/rules_robolectric/4.12.2/MODULE.bazel b/modules/rules_robolectric/4.12.2/MODULE.bazel new file mode 100644 index 00000000000..98e78783373 --- /dev/null +++ b/modules/rules_robolectric/4.12.2/MODULE.bazel @@ -0,0 +1,34 @@ +"Bazel dependencies" + +module( + name = "rules_robolectric", + # Note: the publish-to-BCR app will patch this line to stamp the version being published. + version = "4.12.2", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 1, +) + +robolectric_repository_extensions = use_extension("//bazel:extensions.bzl", "robolectric_repository_extensions") +use_repo( + robolectric_repository_extensions, + "org_robolectric_android_all_instrumented_10_robolectric_5803371_i6", + "org_robolectric_android_all_instrumented_11_robolectric_6757853_i6", + "org_robolectric_android_all_instrumented_12_1_robolectric_8229987_i6", + "org_robolectric_android_all_instrumented_12_robolectric_7732740_i6", + "org_robolectric_android_all_instrumented_13_robolectric_9030017_i6", + "org_robolectric_android_all_instrumented_14_robolectric_10818077_i6", + "org_robolectric_android_all_instrumented_4_4_r1_robolectric_r2_i6", + "org_robolectric_android_all_instrumented_5_0_2_r3_robolectric_r0_i6", + "org_robolectric_android_all_instrumented_5_1_1_r9_robolectric_r2_i6", + "org_robolectric_android_all_instrumented_6_0_1_r3_robolectric_r1_i6", + "org_robolectric_android_all_instrumented_7_0_0_r1_robolectric_r1_i6", + "org_robolectric_android_all_instrumented_7_1_0_r7_robolectric_r1_i6", + "org_robolectric_android_all_instrumented_8_0_0_r4_robolectric_r1_i6", + "org_robolectric_android_all_instrumented_8_1_0_robolectric_4611349_i6", + "org_robolectric_android_all_instrumented_9_robolectric_4913185_2_i6", +) + +bazel_dep(name = "rules_java", version = "7.0.6") + +bazel_dep(name = "bazel_skylib", version = "1.4.2", dev_dependency = True) +bazel_dep(name = "buildifier_prebuilt", version = "6.3.3", dev_dependency = True) diff --git a/modules/rules_robolectric/4.12.2/patches/module_dot_bazel_version.patch b/modules/rules_robolectric/4.12.2/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..f10498db20b --- /dev/null +++ b/modules/rules_robolectric/4.12.2/patches/module_dot_bazel_version.patch @@ -0,0 +1,14 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -2,9 +2,9 @@ + + module( + name = "rules_robolectric", + # Note: the publish-to-BCR app will patch this line to stamp the version being published. +- version = "0.0.0", ++ version = "4.12.2", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 1, + ) + diff --git a/modules/rules_robolectric/4.12.2/presubmit.yml b/modules/rules_robolectric/4.12.2/presubmit.yml new file mode 100644 index 00000000000..28e80311112 --- /dev/null +++ b/modules/rules_robolectric/4.12.2/presubmit.yml @@ -0,0 +1,11 @@ +matrix: + platform: ["macos", "ubuntu2004"] + bazel: ["6.x", "7.x"] + +tasks: + verify_targets: + name: "Verify build targets" + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - "@rules_robolectric//bazel:android-all" diff --git a/modules/rules_robolectric/4.12.2/source.json b/modules/rules_robolectric/4.12.2/source.json new file mode 100644 index 00000000000..85d3d6b6527 --- /dev/null +++ b/modules/rules_robolectric/4.12.2/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-97jgjyRvKfJv3dl7erXfoBqqYXDMwkubaiGTG94BrW8=", + "strip_prefix": "robolectric-bazel-4.12.2", + "url": "https://github.com/robolectric/robolectric-bazel/releases/download/4.12.2/robolectric-bazel-4.12.2.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-7hgdDPhQhnVH3aDjHhgCtlQABh3adpn+oA7X12Hw4ec=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_robolectric/4.13/MODULE.bazel b/modules/rules_robolectric/4.13/MODULE.bazel new file mode 100644 index 00000000000..623aa46562f --- /dev/null +++ b/modules/rules_robolectric/4.13/MODULE.bazel @@ -0,0 +1,34 @@ +"Bazel dependencies" + +module( + name = "rules_robolectric", + # Note: the publish-to-BCR app will patch this line to stamp the version being published. + version = "4.13", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 1, +) + +robolectric_repository_extensions = use_extension("//bazel:extensions.bzl", "robolectric_repository_extensions") +use_repo( + robolectric_repository_extensions, + "org_robolectric_android_all_instrumented_10_robolectric_5803371_i6", + "org_robolectric_android_all_instrumented_11_robolectric_6757853_i6", + "org_robolectric_android_all_instrumented_12_1_robolectric_8229987_i6", + "org_robolectric_android_all_instrumented_12_robolectric_7732740_i6", + "org_robolectric_android_all_instrumented_13_robolectric_9030017_i6", + "org_robolectric_android_all_instrumented_14_robolectric_10818077_i6", + "org_robolectric_android_all_instrumented_4_4_r1_robolectric_r2_i6", + "org_robolectric_android_all_instrumented_5_0_2_r3_robolectric_r0_i6", + "org_robolectric_android_all_instrumented_5_1_1_r9_robolectric_r2_i6", + "org_robolectric_android_all_instrumented_6_0_1_r3_robolectric_r1_i6", + "org_robolectric_android_all_instrumented_7_0_0_r1_robolectric_r1_i6", + "org_robolectric_android_all_instrumented_7_1_0_r7_robolectric_r1_i6", + "org_robolectric_android_all_instrumented_8_0_0_r4_robolectric_r1_i6", + "org_robolectric_android_all_instrumented_8_1_0_robolectric_4611349_i6", + "org_robolectric_android_all_instrumented_9_robolectric_4913185_2_i6", +) + +bazel_dep(name = "rules_java", version = "7.0.6") +bazel_dep(name = "bazel_skylib", version = "1.6.1") + +bazel_dep(name = "buildifier_prebuilt", version = "6.4.0", dev_dependency = True) diff --git a/modules/rules_robolectric/4.13/patches/module_dot_bazel_version.patch b/modules/rules_robolectric/4.13/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..43a9d8040d7 --- /dev/null +++ b/modules/rules_robolectric/4.13/patches/module_dot_bazel_version.patch @@ -0,0 +1,14 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -2,9 +2,9 @@ + + module( + name = "rules_robolectric", + # Note: the publish-to-BCR app will patch this line to stamp the version being published. +- version = "0.0.0", ++ version = "4.13", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 1, + ) + diff --git a/modules/rules_robolectric/4.13/presubmit.yml b/modules/rules_robolectric/4.13/presubmit.yml new file mode 100644 index 00000000000..28e80311112 --- /dev/null +++ b/modules/rules_robolectric/4.13/presubmit.yml @@ -0,0 +1,11 @@ +matrix: + platform: ["macos", "ubuntu2004"] + bazel: ["6.x", "7.x"] + +tasks: + verify_targets: + name: "Verify build targets" + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - "@rules_robolectric//bazel:android-all" diff --git a/modules/rules_robolectric/4.13/source.json b/modules/rules_robolectric/4.13/source.json new file mode 100644 index 00000000000..53eb51395ba --- /dev/null +++ b/modules/rules_robolectric/4.13/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-onD9b9g/nwJGI+eHaW5rc8RGZLfJXz2TftNb8KlKZ64=", + "strip_prefix": "robolectric-bazel-4.13", + "url": "https://github.com/robolectric/robolectric-bazel/releases/download/4.13/robolectric-bazel-4.13.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-6CiMpIBxchdc0NiHD254gsNlslI3b22qG6vWoslNpHM=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_robolectric/metadata.json b/modules/rules_robolectric/metadata.json index 750280bee6e..bf8120f8de4 100644 --- a/modules/rules_robolectric/metadata.json +++ b/modules/rules_robolectric/metadata.json @@ -18,7 +18,9 @@ "4.11", "4.11.1", "4.12", - "4.12.1" + "4.12.1", + "4.12.2", + "4.13" ], "yanked_versions": {} } diff --git a/modules/rules_rust/0.47.1/MODULE.bazel b/modules/rules_rust/0.47.1/MODULE.bazel new file mode 100644 index 00000000000..5484512013f --- /dev/null +++ b/modules/rules_rust/0.47.1/MODULE.bazel @@ -0,0 +1,185 @@ +"""bazelbuild/rules_rust""" + +module( + name = "rules_rust", + version = "0.47.1", +) + +bazel_dep( + name = "bazel_features", + version = "1.9.1", +) +bazel_dep( + name = "bazel_skylib", + version = "1.5.0", +) +bazel_dep( + name = "platforms", + version = "0.0.8", +) +bazel_dep( + name = "rules_cc", + version = "0.0.9", +) +bazel_dep( + name = "rules_license", + version = "0.0.8", +) +bazel_dep( + name = "rules_proto", + version = "5.3.0-21.7", +) +bazel_dep( + name = "apple_support", + version = "1.13.0", + repo_name = "build_bazel_apple_support", +) +bazel_dep( + name = "protobuf", + version = "21.7", + repo_name = "com_google_protobuf", +) +bazel_dep( + name = "aspect_rules_js", + version = "1.39.0", +) + +bazel_dep( + name = "bazel_ci_rules", + version = "1.0.0", + dev_dependency = True, +) +bazel_dep( + name = "rules_python", + version = "0.31.0", + dev_dependency = True, +) +bazel_dep( + name = "rules_testing", + version = "0.6.0", + dev_dependency = True, +) + +internal_deps = use_extension("//rust/private:extensions.bzl", "i") +use_repo( + internal_deps, + "cargo_bazel.buildifier-darwin-amd64", + "cargo_bazel.buildifier-darwin-arm64", + "cargo_bazel.buildifier-linux-amd64", + "cargo_bazel.buildifier-linux-arm64", + "cargo_bazel.buildifier-windows-amd64.exe", + "com_google_googleapis", + "cui", + "cui__anyhow-1.0.75", + "cui__camino-1.1.6", + "cui__cargo-lock-9.0.0", + "cui__cargo-platform-0.1.4", + "cui__cargo_metadata-0.18.1", + "cui__cargo_toml-0.19.2", + "cui__cfg-expr-0.15.5", + "cui__clap-4.3.11", + "cui__crates-index-2.2.0", + "cui__hex-0.4.3", + "cui__indoc-2.0.4", + "cui__itertools-0.12.0", + "cui__maplit-1.0.2", + "cui__normpath-1.1.1", + "cui__pathdiff-0.2.1", + "cui__regex-1.10.2", + "cui__semver-1.0.20", + "cui__serde-1.0.190", + "cui__serde_json-1.0.108", + "cui__serde_starlark-0.1.14", + "cui__sha2-0.10.8", + "cui__spdx-0.10.3", + "cui__spectral-0.6.0", + "cui__tempfile-3.8.1", + "cui__tera-1.19.1", + "cui__textwrap-0.16.0", + "cui__toml-0.8.10", + "cui__tracing-0.1.40", + "cui__tracing-subscriber-0.3.17", + "generated_inputs_in_external_repo", + "libc", + "llvm-raw", + "rrra__anyhow-1.0.71", + "rrra__clap-4.3.11", + "rrra__env_logger-0.10.0", + "rrra__itertools-0.11.0", + "rrra__log-0.4.19", + "rrra__serde-1.0.171", + "rrra__serde_json-1.0.102", + "rules_rust_bindgen__bindgen-0.69.1", + "rules_rust_bindgen__bindgen-cli-0.69.1", + "rules_rust_bindgen__clang-sys-1.6.1", + "rules_rust_bindgen__clap-4.3.3", + "rules_rust_bindgen__clap_complete-4.3.1", + "rules_rust_bindgen__env_logger-0.10.0", + "rules_rust_prost", + "rules_rust_prost__h2-0.3.19", + "rules_rust_prost__heck", + "rules_rust_prost__prost-0.11.9", + "rules_rust_prost__prost-types-0.11.9", + "rules_rust_prost__protoc-gen-prost-0.2.2", + "rules_rust_prost__protoc-gen-tonic-0.2.2", + "rules_rust_prost__tokio-1.28.2", + "rules_rust_prost__tokio-stream-0.1.14", + "rules_rust_prost__tonic-0.9.2", + "rules_rust_proto__grpc-0.6.2", + "rules_rust_proto__grpc-compiler-0.6.2", + "rules_rust_proto__log-0.4.17", + "rules_rust_proto__protobuf-2.8.2", + "rules_rust_proto__protobuf-codegen-2.8.2", + "rules_rust_proto__tls-api-0.1.22", + "rules_rust_proto__tls-api-stub-0.1.22", + "rules_rust_test_load_arbitrary_tool", + "rules_rust_tinyjson", + "rules_rust_toolchain_test_target_json", + "rules_rust_wasm_bindgen__anyhow-1.0.71", + "rules_rust_wasm_bindgen__assert_cmd-1.0.8", + "rules_rust_wasm_bindgen__diff-0.1.13", + "rules_rust_wasm_bindgen__docopt-1.1.1", + "rules_rust_wasm_bindgen__env_logger-0.8.4", + "rules_rust_wasm_bindgen__log-0.4.19", + "rules_rust_wasm_bindgen__predicates-1.0.8", + "rules_rust_wasm_bindgen__rayon-1.7.0", + "rules_rust_wasm_bindgen__rouille-3.6.2", + "rules_rust_wasm_bindgen__serde-1.0.171", + "rules_rust_wasm_bindgen__serde_derive-1.0.171", + "rules_rust_wasm_bindgen__serde_json-1.0.102", + "rules_rust_wasm_bindgen__tempfile-3.6.0", + "rules_rust_wasm_bindgen__ureq-2.8.0", + "rules_rust_wasm_bindgen__walrus-0.20.3", + "rules_rust_wasm_bindgen__wasm-bindgen-0.2.92", + "rules_rust_wasm_bindgen__wasm-bindgen-cli-support-0.2.92", + "rules_rust_wasm_bindgen__wasm-bindgen-shared-0.2.92", + "rules_rust_wasm_bindgen__wasmparser-0.102.0", + "rules_rust_wasm_bindgen__wasmprinter-0.2.60", + "rules_rust_wasm_bindgen_cli", +) + +rust = use_extension("//rust:extensions.bzl", "rust") +rust.toolchain(edition = "2021") +use_repo(rust, "rust_toolchains") + +register_toolchains( + "@rust_toolchains//:all", +) + +register_toolchains( + "//proto/protobuf:default-proto-toolchain", +) + +register_toolchains( + "//proto/prost:default_prost_toolchain", +) + +register_toolchains( + "//bindgen:default_bindgen_toolchain", +) + +rust_host_tools = use_extension("//rust:extensions.bzl", "rust_host_tools") +use_repo(rust_host_tools, "rust_host_tools") + +cargo_bazel_bootstrap = use_extension("//crate_universe/private/module_extensions:cargo_bazel_bootstrap.bzl", "cargo_bazel_bootstrap") +use_repo(cargo_bazel_bootstrap, "cargo_bazel_bootstrap") diff --git a/modules/rules_rust/0.47.1/presubmit.yml b/modules/rules_rust/0.47.1/presubmit.yml new file mode 100644 index 00000000000..81b8a777128 --- /dev/null +++ b/modules/rules_rust/0.47.1/presubmit.yml @@ -0,0 +1,39 @@ +bcr_test_module: + module_path: "" + matrix: + platform: ["macos", "ubuntu2004"] + bazel: ["6.x", "7.x"] + tasks: + run_tests: + working_directory: examples/bzlmod/hello_world + name: "Run test module" + platform: ${{ platform }} + bazel: ${{ bazel }} + # Remove the lockfile because we generate on Bazel 7, but test on Bazel 6 which may not be able to parse a future-generated lockfile. + shell_commands: + - "rm MODULE.bazel.lock" + run_targets: + - "//third-party:vendor" + - "@rules_rust//tools/rust_analyzer:gen_rust_project" + test_targets: + - "//..." +# Windows is run separately because currently gen_rust_project doesn't run on windows, although it does build +bcr_test_module_windows: + module_path: "" + matrix: + bazel: ["6.x", "7.x"] + tasks: + run_tests: + working_directory: examples/bzlmod/hello_world + name: "Run test module" + platform: windows + bazel: ${{ bazel }} + # Remove the lockfile because we generate on Bazel 7, but test on Bazel 6 which may not be able to parse a future-generated lockfile. + shell_commands: + - "rm MODULE.bazel.lock" + run_targets: + - "//third-party:vendor" + build_targets: + - "@rules_rust//tools/rust_analyzer:gen_rust_project" + test_targets: + - "//..." diff --git a/modules/rules_rust/0.47.1/source.json b/modules/rules_rust/0.47.1/source.json new file mode 100644 index 00000000000..3c98df0d036 --- /dev/null +++ b/modules/rules_rust/0.47.1/source.json @@ -0,0 +1,5 @@ +{ + "integrity": "sha256-35cwdTOaqqu4y+aXgIUU2C2PAKMz4+uyJ7/UMIGCmFs=", + "strip_prefix": "", + "url": "https://github.com/bazelbuild/rules_rust/releases/download/0.47.1/rules_rust-v0.47.1.tar.gz" +} diff --git a/modules/rules_rust/metadata.json b/modules/rules_rust/metadata.json index 6ce5343ff45..1b6b6e343fc 100644 --- a/modules/rules_rust/metadata.json +++ b/modules/rules_rust/metadata.json @@ -31,7 +31,8 @@ "0.44.0", "0.45.0", "0.45.1", - "0.46.0" + "0.46.0", + "0.47.1" ], "yanked_versions": {} } diff --git a/modules/rules_swift/2.0.0/MODULE.bazel b/modules/rules_swift/2.0.0/MODULE.bazel new file mode 100644 index 00000000000..f087c7734b8 --- /dev/null +++ b/modules/rules_swift/2.0.0/MODULE.bazel @@ -0,0 +1,44 @@ +module( + name = "rules_swift", + version = "2.0.0", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 2, + repo_name = "build_bazel_rules_swift", +) + +bazel_dep(name = "bazel_features", version = "1.3.0") +bazel_dep(name = "bazel_skylib", version = "1.3.0") +bazel_dep(name = "apple_support", version = "1.15.1", repo_name = "build_bazel_apple_support") +bazel_dep(name = "rules_cc", version = "0.0.2") +bazel_dep(name = "platforms", version = "0.0.9") +bazel_dep(name = "protobuf", version = "21.7", repo_name = "com_google_protobuf") +bazel_dep(name = "rules_proto", version = "5.3.0-21.7") +bazel_dep(name = "nlohmann_json", version = "3.6.1", repo_name = "com_github_nlohmann_json") +bazel_dep( + name = "swift_argument_parser", + version = "1.3.1.1", + repo_name = "com_github_apple_swift_argument_parser", +) + +non_module_deps = use_extension("//swift:extensions.bzl", "non_module_deps") +use_repo( + non_module_deps, + "build_bazel_rules_swift_index_import", + "build_bazel_rules_swift_local_config", + "com_github_apple_swift_docc_symbolkit", + "com_github_apple_swift_log", + "com_github_apple_swift_nio", + "com_github_apple_swift_nio_extras", + "com_github_apple_swift_nio_http2", + "com_github_apple_swift_nio_transport_services", + "com_github_apple_swift_protobuf", + "com_github_grpc_grpc_swift", +) + +apple_cc_configure = use_extension("@build_bazel_apple_support//crosstool:setup.bzl", "apple_cc_configure_extension") +use_repo(apple_cc_configure, "local_config_apple_cc") + +# Dev dependencies +bazel_dep(name = "bazel_skylib_gazelle_plugin", version = "1.5.0", dev_dependency = True) +bazel_dep(name = "gazelle", version = "0.33.0", dev_dependency = True, repo_name = "bazel_gazelle") +bazel_dep(name = "stardoc", version = "0.6.2", dev_dependency = True, repo_name = "io_bazel_stardoc") diff --git a/modules/rules_swift/2.0.0/patches/module_dot_bazel_version.patch b/modules/rules_swift/2.0.0/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..cd05c5e7527 --- /dev/null +++ b/modules/rules_swift/2.0.0/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_swift", +- version = "0", ++ version = "2.0.0", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 2, + repo_name = "build_bazel_rules_swift", + ) diff --git a/modules/rules_swift/2.0.0/presubmit.yml b/modules/rules_swift/2.0.0/presubmit.yml new file mode 100644 index 00000000000..9eee4598655 --- /dev/null +++ b/modules/rules_swift/2.0.0/presubmit.yml @@ -0,0 +1,36 @@ +shell_commands: &shell_commands +- "echo --- Downloading and extracting Swift $SWIFT_VERSION to $SWIFT_HOME" +- "mkdir $SWIFT_HOME" +- "curl https://download.swift.org/swift-${SWIFT_VERSION}-release/ubuntu2004/swift-${SWIFT_VERSION}-RELEASE/swift-${SWIFT_VERSION}-RELEASE-ubuntu20.04.tar.gz | tar xvz --strip-components=1 -C $SWIFT_HOME" + +matrix: + bazel: + - 7.x + - last_green + platform: + - ubuntu2004 +tasks: + verify_targets: + name: Verify build targets + bazel: ${{ bazel }} + platform: ${{ platform }} + environment: + CC: "clang" + SWIFT_VERSION: "5.9.2" + SWIFT_HOME: "$HOME/swift-$SWIFT_VERSION" + PATH: "$PATH:$SWIFT_HOME/usr/bin" + shell_commands: *shell_commands + build_flags: + - "--action_env=PATH" + build_targets: + - "@rules_swift//examples/xplatform/..." + - "-@rules_swift//examples/xplatform/grpc/..." # TODO: Fix grpc on Linux + - "-@rules_swift//examples/xplatform/proto_library_group/..." # TODO: Fix grpc on Linux + verify_targets_macos: + name: Verify build targets + bazel: ${{ bazel }} + platform: macos + build_targets: + - "@rules_swift//examples/apple/..." + build_flags: + - "--repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1" diff --git a/modules/rules_swift/2.0.0/source.json b/modules/rules_swift/2.0.0/source.json new file mode 100644 index 00000000000..badd6f50282 --- /dev/null +++ b/modules/rules_swift/2.0.0/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-Mu607zPHCNnJpO4PqEdTIu8UnavIGITdw7UOsu//eEM=", + "strip_prefix": "", + "url": "https://github.com/bazelbuild/rules_swift/releases/download/2.0.0/rules_swift.2.0.0.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-RkuvO6fcoi4NwNmTBLyV6doI3uNXmZyAOWqGaBGCDC8=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_swift/2.1.0/MODULE.bazel b/modules/rules_swift/2.1.0/MODULE.bazel new file mode 100644 index 00000000000..6f30c89ce16 --- /dev/null +++ b/modules/rules_swift/2.1.0/MODULE.bazel @@ -0,0 +1,44 @@ +module( + name = "rules_swift", + version = "2.1.0", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 2, + repo_name = "build_bazel_rules_swift", +) + +bazel_dep(name = "bazel_features", version = "1.3.0") +bazel_dep(name = "bazel_skylib", version = "1.3.0") +bazel_dep(name = "apple_support", version = "1.15.1", repo_name = "build_bazel_apple_support") +bazel_dep(name = "rules_cc", version = "0.0.2") +bazel_dep(name = "platforms", version = "0.0.9") +bazel_dep(name = "protobuf", version = "21.7", repo_name = "com_google_protobuf") +bazel_dep(name = "rules_proto", version = "5.3.0-21.7") +bazel_dep(name = "nlohmann_json", version = "3.6.1", repo_name = "com_github_nlohmann_json") +bazel_dep( + name = "swift_argument_parser", + version = "1.3.1.1", + repo_name = "com_github_apple_swift_argument_parser", +) + +non_module_deps = use_extension("//swift:extensions.bzl", "non_module_deps") +use_repo( + non_module_deps, + "build_bazel_rules_swift_index_import", + "build_bazel_rules_swift_local_config", + "com_github_apple_swift_docc_symbolkit", + "com_github_apple_swift_log", + "com_github_apple_swift_nio", + "com_github_apple_swift_nio_extras", + "com_github_apple_swift_nio_http2", + "com_github_apple_swift_nio_transport_services", + "com_github_apple_swift_protobuf", + "com_github_grpc_grpc_swift", +) + +apple_cc_configure = use_extension("@build_bazel_apple_support//crosstool:setup.bzl", "apple_cc_configure_extension") +use_repo(apple_cc_configure, "local_config_apple_cc") + +# Dev dependencies +bazel_dep(name = "bazel_skylib_gazelle_plugin", version = "1.5.0", dev_dependency = True) +bazel_dep(name = "gazelle", version = "0.33.0", dev_dependency = True, repo_name = "bazel_gazelle") +bazel_dep(name = "stardoc", version = "0.6.2", dev_dependency = True, repo_name = "io_bazel_stardoc") diff --git a/modules/rules_swift/2.1.0/patches/module_dot_bazel_version.patch b/modules/rules_swift/2.1.0/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..509930f89ef --- /dev/null +++ b/modules/rules_swift/2.1.0/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_swift", +- version = "0", ++ version = "2.1.0", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 2, + repo_name = "build_bazel_rules_swift", + ) diff --git a/modules/rules_swift/2.1.0/presubmit.yml b/modules/rules_swift/2.1.0/presubmit.yml new file mode 100644 index 00000000000..9eee4598655 --- /dev/null +++ b/modules/rules_swift/2.1.0/presubmit.yml @@ -0,0 +1,36 @@ +shell_commands: &shell_commands +- "echo --- Downloading and extracting Swift $SWIFT_VERSION to $SWIFT_HOME" +- "mkdir $SWIFT_HOME" +- "curl https://download.swift.org/swift-${SWIFT_VERSION}-release/ubuntu2004/swift-${SWIFT_VERSION}-RELEASE/swift-${SWIFT_VERSION}-RELEASE-ubuntu20.04.tar.gz | tar xvz --strip-components=1 -C $SWIFT_HOME" + +matrix: + bazel: + - 7.x + - last_green + platform: + - ubuntu2004 +tasks: + verify_targets: + name: Verify build targets + bazel: ${{ bazel }} + platform: ${{ platform }} + environment: + CC: "clang" + SWIFT_VERSION: "5.9.2" + SWIFT_HOME: "$HOME/swift-$SWIFT_VERSION" + PATH: "$PATH:$SWIFT_HOME/usr/bin" + shell_commands: *shell_commands + build_flags: + - "--action_env=PATH" + build_targets: + - "@rules_swift//examples/xplatform/..." + - "-@rules_swift//examples/xplatform/grpc/..." # TODO: Fix grpc on Linux + - "-@rules_swift//examples/xplatform/proto_library_group/..." # TODO: Fix grpc on Linux + verify_targets_macos: + name: Verify build targets + bazel: ${{ bazel }} + platform: macos + build_targets: + - "@rules_swift//examples/apple/..." + build_flags: + - "--repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1" diff --git a/modules/rules_swift/2.1.0/source.json b/modules/rules_swift/2.1.0/source.json new file mode 100644 index 00000000000..b1aaad37625 --- /dev/null +++ b/modules/rules_swift/2.1.0/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-jgxyqivlrkTaRFIcRuBwDfGElT6NvF1UIyIrjLFBxk8=", + "strip_prefix": "", + "url": "https://github.com/bazelbuild/rules_swift/releases/download/2.1.0/rules_swift.2.1.0.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-gkv3ebttlFmQNS0tJTF8Y+gY/XRTmsOSMFjDjYeFQiE=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_swift/2.1.1/MODULE.bazel b/modules/rules_swift/2.1.1/MODULE.bazel new file mode 100644 index 00000000000..50ce40ed4c7 --- /dev/null +++ b/modules/rules_swift/2.1.1/MODULE.bazel @@ -0,0 +1,44 @@ +module( + name = "rules_swift", + version = "2.1.1", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 2, + repo_name = "build_bazel_rules_swift", +) + +bazel_dep(name = "bazel_features", version = "1.3.0") +bazel_dep(name = "bazel_skylib", version = "1.3.0") +bazel_dep(name = "apple_support", version = "1.15.1", repo_name = "build_bazel_apple_support") +bazel_dep(name = "rules_cc", version = "0.0.2") +bazel_dep(name = "platforms", version = "0.0.9") +bazel_dep(name = "protobuf", version = "21.7", repo_name = "com_google_protobuf") +bazel_dep(name = "rules_proto", version = "5.3.0-21.7") +bazel_dep(name = "nlohmann_json", version = "3.6.1", repo_name = "com_github_nlohmann_json") +bazel_dep( + name = "swift_argument_parser", + version = "1.3.1.1", + repo_name = "com_github_apple_swift_argument_parser", +) + +non_module_deps = use_extension("//swift:extensions.bzl", "non_module_deps") +use_repo( + non_module_deps, + "build_bazel_rules_swift_index_import", + "build_bazel_rules_swift_local_config", + "com_github_apple_swift_docc_symbolkit", + "com_github_apple_swift_log", + "com_github_apple_swift_nio", + "com_github_apple_swift_nio_extras", + "com_github_apple_swift_nio_http2", + "com_github_apple_swift_nio_transport_services", + "com_github_apple_swift_protobuf", + "com_github_grpc_grpc_swift", +) + +apple_cc_configure = use_extension("@build_bazel_apple_support//crosstool:setup.bzl", "apple_cc_configure_extension") +use_repo(apple_cc_configure, "local_config_apple_cc") + +# Dev dependencies +bazel_dep(name = "bazel_skylib_gazelle_plugin", version = "1.5.0", dev_dependency = True) +bazel_dep(name = "gazelle", version = "0.33.0", dev_dependency = True, repo_name = "bazel_gazelle") +bazel_dep(name = "stardoc", version = "0.6.2", dev_dependency = True, repo_name = "io_bazel_stardoc") diff --git a/modules/rules_swift/2.1.1/patches/module_dot_bazel_version.patch b/modules/rules_swift/2.1.1/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..1e359d47bd1 --- /dev/null +++ b/modules/rules_swift/2.1.1/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_swift", +- version = "0", ++ version = "2.1.1", + bazel_compatibility = [">=6.0.0"], + compatibility_level = 2, + repo_name = "build_bazel_rules_swift", + ) diff --git a/modules/rules_swift/2.1.1/presubmit.yml b/modules/rules_swift/2.1.1/presubmit.yml new file mode 100644 index 00000000000..9eee4598655 --- /dev/null +++ b/modules/rules_swift/2.1.1/presubmit.yml @@ -0,0 +1,36 @@ +shell_commands: &shell_commands +- "echo --- Downloading and extracting Swift $SWIFT_VERSION to $SWIFT_HOME" +- "mkdir $SWIFT_HOME" +- "curl https://download.swift.org/swift-${SWIFT_VERSION}-release/ubuntu2004/swift-${SWIFT_VERSION}-RELEASE/swift-${SWIFT_VERSION}-RELEASE-ubuntu20.04.tar.gz | tar xvz --strip-components=1 -C $SWIFT_HOME" + +matrix: + bazel: + - 7.x + - last_green + platform: + - ubuntu2004 +tasks: + verify_targets: + name: Verify build targets + bazel: ${{ bazel }} + platform: ${{ platform }} + environment: + CC: "clang" + SWIFT_VERSION: "5.9.2" + SWIFT_HOME: "$HOME/swift-$SWIFT_VERSION" + PATH: "$PATH:$SWIFT_HOME/usr/bin" + shell_commands: *shell_commands + build_flags: + - "--action_env=PATH" + build_targets: + - "@rules_swift//examples/xplatform/..." + - "-@rules_swift//examples/xplatform/grpc/..." # TODO: Fix grpc on Linux + - "-@rules_swift//examples/xplatform/proto_library_group/..." # TODO: Fix grpc on Linux + verify_targets_macos: + name: Verify build targets + bazel: ${{ bazel }} + platform: macos + build_targets: + - "@rules_swift//examples/apple/..." + build_flags: + - "--repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1" diff --git a/modules/rules_swift/2.1.1/source.json b/modules/rules_swift/2.1.1/source.json new file mode 100644 index 00000000000..67ebe689334 --- /dev/null +++ b/modules/rules_swift/2.1.1/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-mRntHY2uUJZFv9OAU3rmUBUo2N6XHK6+1tUYW5lw3E0=", + "strip_prefix": "", + "url": "https://github.com/bazelbuild/rules_swift/releases/download/2.1.1/rules_swift.2.1.1.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-/kZbNxPjPQxNaVxijhzrPhwIf8mGwidxih95QYLXSo4=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_swift/metadata.json b/modules/rules_swift/metadata.json index 4e5b542259a..7b10fac7df5 100644 --- a/modules/rules_swift/metadata.json +++ b/modules/rules_swift/metadata.json @@ -46,7 +46,10 @@ "1.16.0", "1.17.0", "1.18.0", - "2.0.0-rc1" + "2.0.0-rc1", + "2.0.0", + "2.1.0", + "2.1.1" ], "yanked_versions": {} } diff --git a/modules/rules_swift_package_manager/0.35.1/MODULE.bazel b/modules/rules_swift_package_manager/0.35.1/MODULE.bazel new file mode 100644 index 00000000000..5bc5490c95a --- /dev/null +++ b/modules/rules_swift_package_manager/0.35.1/MODULE.bazel @@ -0,0 +1,79 @@ +module( + name = "rules_swift_package_manager", + version = "0.35.1", +) + +# MARK: - Runtime Dependencies + +bazel_dep(name = "cgrindel_bazel_starlib", version = "0.18.1") +bazel_dep(name = "bazel_skylib", version = "1.4.2") +bazel_dep( + name = "rules_go", + version = "0.47.0", + repo_name = "io_bazel_rules_go", +) + +# The apple_support bazel_dep must come before the rules_cc. +# https://github.com/bazelbuild/apple_support#incompatible-toolchain-resolution +bazel_dep(name = "apple_support", version = "1.11.1") +bazel_dep(name = "rules_cc", version = "0.0.6") +bazel_dep(name = "platforms", version = "0.0.6") + +# With bzlmod enabled, any dependencies for repositories generated by +# rules_swift_package_manager _must_ be a runtime dependency of rules_swift_package_manager. +bazel_dep( + name = "rules_swift", + version = "2.1.1", + repo_name = "build_bazel_rules_swift", +) +bazel_dep( + name = "rules_apple", + version = "3.6.0", + repo_name = "build_bazel_rules_apple", +) +bazel_dep( + name = "gazelle", + version = "0.37.0", + repo_name = "bazel_gazelle", +) + +apple_cc_configure = use_extension( + "@apple_support//crosstool:setup.bzl", + "apple_cc_configure_extension", +) +use_repo(apple_cc_configure, "local_config_apple_cc") + +go_deps = use_extension("@bazel_gazelle//:extensions.bzl", "go_deps") +go_deps.from_file(go_mod = "//:go.mod") +use_repo( + go_deps, + "com_github_bazelbuild_buildtools", + "com_github_creasty_defaults", + "com_github_deckarep_golang_set_v2", + "com_github_spf13_cobra", + "com_github_stretchr_testify", + "in_gopkg_yaml_v3", + "org_golang_x_exp", + "org_golang_x_text", +) + +# MARK: - Dev Dependencies + +bazel_dep( + name = "rules_bazel_integration_test", + version = "0.14.1", + dev_dependency = True, +) +bazel_dep( + name = "bazel_skylib_gazelle_plugin", + version = "1.4.1", + dev_dependency = True, +) + +bazel_binaries = use_extension( + "@rules_bazel_integration_test//:extensions.bzl", + "bazel_binaries", + dev_dependency = True, +) +bazel_binaries.download(version_file = "//:.bazelversion") +use_repo(bazel_binaries, "bazel_binaries") diff --git a/modules/rules_swift_package_manager/0.35.1/patches/module_dot_bazel_version.patch b/modules/rules_swift_package_manager/0.35.1/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..75a30207bc8 --- /dev/null +++ b/modules/rules_swift_package_manager/0.35.1/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_swift_package_manager", +- version = "0.0.0", ++ version = "0.35.1", + ) + + # MARK: - Runtime Dependencies + diff --git a/modules/rules_swift_package_manager/0.35.1/presubmit.yml b/modules/rules_swift_package_manager/0.35.1/presubmit.yml new file mode 100644 index 00000000000..1db373c9e9a --- /dev/null +++ b/modules/rules_swift_package_manager/0.35.1/presubmit.yml @@ -0,0 +1,14 @@ +bcr_test_module: + module_path: "" + matrix: + platform: ["macos"] + bazel: + # This needs to exactly match the value used in .bazelversion at the root. + - 7.2.1 + tasks: + run_tests: + name: "Run test module" + platform: ${{ platform }} + bazel: ${{ bazel }} + test_targets: + - "//bzlmod:e2e_test" diff --git a/modules/rules_swift_package_manager/0.35.1/source.json b/modules/rules_swift_package_manager/0.35.1/source.json new file mode 100644 index 00000000000..c928b52cc2f --- /dev/null +++ b/modules/rules_swift_package_manager/0.35.1/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-0dHwhvBl10zf+Rt1hlS3RwWk4vtFzlL3lieo4whcDvU=", + "strip_prefix": "", + "url": "https://github.com/cgrindel/rules_swift_package_manager/releases/download/v0.35.1/rules_swift_package_manager.v0.35.1.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-M8vcUv/ouUrDrl7L8AT6Kcb2D61e+Qz8lH/s1XUHblo=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_swift_package_manager/metadata.json b/modules/rules_swift_package_manager/metadata.json index 9f6d8a438f0..5ea9db6600b 100644 --- a/modules/rules_swift_package_manager/metadata.json +++ b/modules/rules_swift_package_manager/metadata.json @@ -48,7 +48,8 @@ "0.32.0", "0.33.0", "0.34.0", - "0.34.1" + "0.34.1", + "0.35.1" ], "yanked_versions": {} } diff --git a/modules/rules_uv/0.18.0/MODULE.bazel b/modules/rules_uv/0.18.0/MODULE.bazel new file mode 100644 index 00000000000..15178889ff7 --- /dev/null +++ b/modules/rules_uv/0.18.0/MODULE.bazel @@ -0,0 +1,16 @@ +"rules_uv" + +module( + name = "rules_uv", + version = "0.18.0", + compatibility_level = 1, +) + +bazel_dep(name = "bazel_skylib", version = "1.4.1") +bazel_dep(name = "buildifier_prebuilt", version = "6.1.2") +bazel_dep(name = "platforms", version = "0.0.8") +bazel_dep(name = "rules_multitool", version = "0.4.0") + +multitool = use_extension("@rules_multitool//multitool:extension.bzl", "multitool") +multitool.hub(lockfile = "//uv/private:uv.lock.json") +use_repo(multitool, "multitool") diff --git a/modules/rules_uv/0.18.0/presubmit.yml b/modules/rules_uv/0.18.0/presubmit.yml new file mode 100644 index 00000000000..3a2a60fd70a --- /dev/null +++ b/modules/rules_uv/0.18.0/presubmit.yml @@ -0,0 +1,15 @@ +matrix: + platform: + - debian10 + - ubuntu2004 + - macos + - macos_arm64 + bazel: + - 7.x +tasks: + verify_targets: + name: Verify build targets + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - "@rules_uv//..." diff --git a/modules/rules_uv/0.18.0/source.json b/modules/rules_uv/0.18.0/source.json new file mode 100644 index 00000000000..ea8f31133bd --- /dev/null +++ b/modules/rules_uv/0.18.0/source.json @@ -0,0 +1,5 @@ +{ + "integrity": "sha256-dvRZUesm6v9sIVaGRPWrbqaTk+q9Sen7KYr0mFg0AhU=", + "strip_prefix": "rules_uv-0.18.0", + "url": "https://github.com/theoremlp/rules_uv/releases/download/v0.18.0/rules_uv-0.18.0.tar.gz" +} diff --git a/modules/rules_uv/metadata.json b/modules/rules_uv/metadata.json index bde59c01337..045e29a1dc8 100644 --- a/modules/rules_uv/metadata.json +++ b/modules/rules_uv/metadata.json @@ -33,7 +33,8 @@ "0.14.0", "0.15.0", "0.16.0", - "0.17.0" + "0.17.0", + "0.18.0" ], "yanked_versions": {} } diff --git a/modules/rules_xcodeproj/2.5.0/MODULE.bazel b/modules/rules_xcodeproj/2.5.0/MODULE.bazel new file mode 100644 index 00000000000..d4be1d57c02 --- /dev/null +++ b/modules/rules_xcodeproj/2.5.0/MODULE.bazel @@ -0,0 +1,31 @@ +module( + name = "rules_xcodeproj", + version = "2.5.0", + bazel_compatibility = [">=6.3.0"], + compatibility_level = 1, + repo_name = "rules_xcodeproj", +) + +bazel_dep(name = "bazel_features", version = "1.3.0") +bazel_dep(name = "bazel_skylib", version = "1.3.0") +bazel_dep( + name = "rules_swift", + version = "1.6.0", + max_compatibility_level = 2, + repo_name = "build_bazel_rules_swift", +) +bazel_dep( + name = "rules_apple", + version = "2.0.0", + repo_name = "build_bazel_rules_apple", +) +bazel_dep(name = "rules_python", version = "0.27.1") + +internal = use_extension("//xcodeproj:extensions.bzl", "internal") +use_repo(internal, "rules_xcodeproj_generated") + +non_module_deps = use_extension("//xcodeproj:extensions.bzl", "non_module_deps") +use_repo( + non_module_deps, + "rules_xcodeproj_index_import", +) diff --git a/modules/rules_xcodeproj/2.5.0/patches/module_dot_bazel_version.patch b/modules/rules_xcodeproj/2.5.0/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..938dda24006 --- /dev/null +++ b/modules/rules_xcodeproj/2.5.0/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_xcodeproj", +- version = "0.0.0", ++ version = "2.5.0", + bazel_compatibility = [">=6.3.0"], + compatibility_level = 1, + repo_name = "rules_xcodeproj", + ) diff --git a/modules/rules_xcodeproj/2.5.0/presubmit.yml b/modules/rules_xcodeproj/2.5.0/presubmit.yml new file mode 100644 index 00000000000..ba9b059f938 --- /dev/null +++ b/modules/rules_xcodeproj/2.5.0/presubmit.yml @@ -0,0 +1,7 @@ +tasks: + verify_targets_macos: + name: Verify build targets + bazel: 7.x + platform: macos + build_targets: + - '@rules_xcodeproj//tools/generators/pbxproj_prefix:universal_pbxproj_prefix' diff --git a/modules/rules_xcodeproj/2.5.0/source.json b/modules/rules_xcodeproj/2.5.0/source.json new file mode 100644 index 00000000000..f7d54ac161b --- /dev/null +++ b/modules/rules_xcodeproj/2.5.0/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-1b61qkteXQw0V+oYwpdNjmF5V9J9d6Jao0ZBgGcBdqc=", + "strip_prefix": "", + "url": "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.5.0/release.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-jXpKRpyS2RtOojIq8keygNyjP+bsFlsCmNY4tPKeUXk=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_xcodeproj/2.5.1/MODULE.bazel b/modules/rules_xcodeproj/2.5.1/MODULE.bazel new file mode 100644 index 00000000000..deac21d2995 --- /dev/null +++ b/modules/rules_xcodeproj/2.5.1/MODULE.bazel @@ -0,0 +1,31 @@ +module( + name = "rules_xcodeproj", + version = "2.5.1", + bazel_compatibility = [">=6.3.0"], + compatibility_level = 1, + repo_name = "rules_xcodeproj", +) + +bazel_dep(name = "bazel_features", version = "1.3.0") +bazel_dep(name = "bazel_skylib", version = "1.3.0") +bazel_dep( + name = "rules_swift", + version = "1.6.0", + max_compatibility_level = 2, + repo_name = "build_bazel_rules_swift", +) +bazel_dep( + name = "rules_apple", + version = "2.0.0", + repo_name = "build_bazel_rules_apple", +) +bazel_dep(name = "rules_python", version = "0.27.1") + +internal = use_extension("//xcodeproj:extensions.bzl", "internal") +use_repo(internal, "rules_xcodeproj_generated") + +non_module_deps = use_extension("//xcodeproj:extensions.bzl", "non_module_deps") +use_repo( + non_module_deps, + "rules_xcodeproj_index_import", +) diff --git a/modules/rules_xcodeproj/2.5.1/patches/module_dot_bazel_version.patch b/modules/rules_xcodeproj/2.5.1/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..8cec8344e82 --- /dev/null +++ b/modules/rules_xcodeproj/2.5.1/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_xcodeproj", +- version = "0.0.0", ++ version = "2.5.1", + bazel_compatibility = [">=6.3.0"], + compatibility_level = 1, + repo_name = "rules_xcodeproj", + ) diff --git a/modules/rules_xcodeproj/2.5.1/presubmit.yml b/modules/rules_xcodeproj/2.5.1/presubmit.yml new file mode 100644 index 00000000000..ba9b059f938 --- /dev/null +++ b/modules/rules_xcodeproj/2.5.1/presubmit.yml @@ -0,0 +1,7 @@ +tasks: + verify_targets_macos: + name: Verify build targets + bazel: 7.x + platform: macos + build_targets: + - '@rules_xcodeproj//tools/generators/pbxproj_prefix:universal_pbxproj_prefix' diff --git a/modules/rules_xcodeproj/2.5.1/source.json b/modules/rules_xcodeproj/2.5.1/source.json new file mode 100644 index 00000000000..d00f5e1da66 --- /dev/null +++ b/modules/rules_xcodeproj/2.5.1/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-fOmJemM/moauYzk4zjLheL43hgSt7m7WROQlW5NXYFI=", + "strip_prefix": "", + "url": "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.5.1/release.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-m5SjWtRvOyhF5FprwAfu6NBJp212UV9XUO2Q2iG/zUY=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_xcodeproj/metadata.json b/modules/rules_xcodeproj/metadata.json index 7de06134d83..b6c3e929081 100644 --- a/modules/rules_xcodeproj/metadata.json +++ b/modules/rules_xcodeproj/metadata.json @@ -58,7 +58,9 @@ "2.2.0", "2.3.0", "2.3.1", - "2.4.0" + "2.4.0", + "2.5.0", + "2.5.1" ], "yanked_versions": {} } diff --git a/modules/rules_zig/0.5.0/MODULE.bazel b/modules/rules_zig/0.5.0/MODULE.bazel new file mode 100644 index 00000000000..c0f10f2049a --- /dev/null +++ b/modules/rules_zig/0.5.0/MODULE.bazel @@ -0,0 +1,68 @@ +module( + name = "rules_zig", + version = "0.5.0", + compatibility_level = 1, +) + +bazel_dep(name = "aspect_bazel_lib", version = "2.7.8") +bazel_dep(name = "bazel_skylib", version = "1.7.1") +bazel_dep(name = "platforms", version = "0.0.10") + +zig = use_extension("//zig:extensions.bzl", "zig") +zig.index(file = "//zig/private:versions.json") +use_repo(zig, "zig_toolchains") + +register_toolchains("@rules_zig//zig/target:all") + +register_toolchains("@zig_toolchains//:all") + +zig_dev = use_extension( + "//zig:extensions.bzl", + "zig", + dev_dependency = True, +) +zig_dev.toolchain(zig_version = "0.13.0") +zig_dev.toolchain(zig_version = "0.12.1") +zig_dev.toolchain(zig_version = "0.12.0") +zig_dev.toolchain(zig_version = "0.11.0") + +bazel_dep(name = "rules_cc", version = "0.0.9", dev_dependency = True) +bazel_dep(name = "stardoc", version = "0.7.0", dev_dependency = True, repo_name = "io_bazel_stardoc") +bazel_dep(name = "gazelle", version = "0.37.0", dev_dependency = True, repo_name = "bazel_gazelle") +bazel_dep(name = "bazel_skylib_gazelle_plugin", version = "1.7.1", dev_dependency = True) +bazel_dep( + name = "buildifier_prebuilt", + version = "6.4.0", + dev_dependency = True, +) +bazel_dep(name = "rules_multirun", version = "0.9.0", dev_dependency = True) +bazel_dep(name = "rules_python", version = "0.33.2", dev_dependency = True) +bazel_dep( + name = "rules_bazel_integration_test", + version = "0.24.1", + dev_dependency = True, +) + +bazel_binaries = use_extension( + "@rules_bazel_integration_test//:extensions.bzl", + "bazel_binaries", + dev_dependency = True, +) + +# NOTE: Keep in sync with WORKSPACE. +bazel_binaries.download(version_file = "//:.bazelversion") +bazel_binaries.download(version = "7.0.0") +use_repo( + bazel_binaries, + "bazel_binaries", + "bazel_binaries_bazelisk", + "build_bazel_bazel_.bazelversion", + "build_bazel_bazel_7_0_0", +) + +# TODO[AH] Should be an implicit transitive dependency through rules_bazel_integration_test. +# However, if we do not include it explicitly, then the runfiles resolution for +# cgrindel_bazel_starlib/shlib/lib/message.sh fails in +# rules_bazel_integration_test/tools/update_deleted_packages.sh when invoked +# through the rules_multirun target //util:update. +bazel_dep(name = "cgrindel_bazel_starlib", version = "0.20.2", dev_dependency = True) diff --git a/modules/rules_zig/0.5.0/patches/module_dot_bazel_version.patch b/modules/rules_zig/0.5.0/patches/module_dot_bazel_version.patch new file mode 100644 index 00000000000..5d9d8ece5ca --- /dev/null +++ b/modules/rules_zig/0.5.0/patches/module_dot_bazel_version.patch @@ -0,0 +1,12 @@ +=================================================================== +--- a/MODULE.bazel ++++ b/MODULE.bazel +@@ -1,7 +1,7 @@ + module( + name = "rules_zig", +- version = "0.0.0", ++ version = "0.5.0", + compatibility_level = 1, + ) + + bazel_dep(name = "aspect_bazel_lib", version = "2.7.8") diff --git a/modules/rules_zig/0.5.0/presubmit.yml b/modules/rules_zig/0.5.0/presubmit.yml new file mode 100644 index 00000000000..268d748bed5 --- /dev/null +++ b/modules/rules_zig/0.5.0/presubmit.yml @@ -0,0 +1,22 @@ +matrix: + platform: ["ubuntu2204", "macos"] # ["windows"] + bazel: [7.x] +tasks: + run_tests: + name: "Run tests" + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - "//..." +bcr_test_module: + module_path: "e2e/workspace" + matrix: + platform: ["ubuntu2204", "macos"] # ["windows"] + bazel: [7.x] + tasks: + run_tests: + name: "Run test module" + platform: ${{ platform }} + bazel: ${{ bazel }} + test_targets: + - "//..." diff --git a/modules/rules_zig/0.5.0/source.json b/modules/rules_zig/0.5.0/source.json new file mode 100644 index 00000000000..ff9b953089a --- /dev/null +++ b/modules/rules_zig/0.5.0/source.json @@ -0,0 +1,9 @@ +{ + "integrity": "sha256-SB89GREp/paA9DGGWUlTa7Hf8g/Hf0pU0KS75ygjQ18=", + "strip_prefix": "rules_zig-0.5.0", + "url": "https://github.com/aherrmann/rules_zig/releases/download/v0.5.0/rules_zig-0.5.0.tar.gz", + "patches": { + "module_dot_bazel_version.patch": "sha256-I5gjxCKWo3xZD9mI5a5qtsS2lc3u/l8qQS7HNosFH50=" + }, + "patch_strip": 1 +} diff --git a/modules/rules_zig/metadata.json b/modules/rules_zig/metadata.json index 98a202ae5b4..5a522246bd1 100644 --- a/modules/rules_zig/metadata.json +++ b/modules/rules_zig/metadata.json @@ -14,7 +14,8 @@ "0.1.0", "0.2.0", "0.3.0", - "0.4.0" + "0.4.0", + "0.5.0" ], "yanked_versions": {} } diff --git a/modules/swxmlhash/7.0.2.1/MODULE.bazel b/modules/swxmlhash/7.0.2.1/MODULE.bazel new file mode 100644 index 00000000000..5904a8f1a6e --- /dev/null +++ b/modules/swxmlhash/7.0.2.1/MODULE.bazel @@ -0,0 +1,8 @@ +module( + name = "swxmlhash", + version = "7.0.2.1", + compatibility_level = 1, +) + +bazel_dep(name = "apple_support", version = "1.11.1") +bazel_dep(name = "rules_swift", version = "1.14.0", max_compatibility_level = 2) diff --git a/modules/swxmlhash/7.0.2.1/patches/add_build_file.patch b/modules/swxmlhash/7.0.2.1/patches/add_build_file.patch new file mode 100644 index 00000000000..230c214373f --- /dev/null +++ b/modules/swxmlhash/7.0.2.1/patches/add_build_file.patch @@ -0,0 +1,11 @@ +--- /dev/null ++++ BUILD.bazel +@@ -0,0 +1,8 @@ ++load("@rules_swift//swift:swift.bzl", "swift_library") ++ ++swift_library( ++ name = "SWXMLHash", ++ srcs = glob(["Source/**/*.swift"]), ++ module_name = "SWXMLHash", ++ visibility = ["//visibility:public"], ++) diff --git a/modules/swxmlhash/7.0.2.1/patches/module_dot_bazel.patch b/modules/swxmlhash/7.0.2.1/patches/module_dot_bazel.patch new file mode 100644 index 00000000000..a8a24409c1d --- /dev/null +++ b/modules/swxmlhash/7.0.2.1/patches/module_dot_bazel.patch @@ -0,0 +1,11 @@ +--- MODULE.bazel ++++ MODULE.bazel +@@ -0,0 +1,8 @@ ++module( ++ name = "swxmlhash", ++ version = "7.0.2.1", ++ compatibility_level = 1, ++) ++ ++bazel_dep(name = "apple_support", version = "1.11.1") ++bazel_dep(name = "rules_swift", version = "1.14.0", max_compatibility_level = 2) diff --git a/modules/swxmlhash/7.0.2.1/presubmit.yml b/modules/swxmlhash/7.0.2.1/presubmit.yml new file mode 100644 index 00000000000..9c0dbba1fd2 --- /dev/null +++ b/modules/swxmlhash/7.0.2.1/presubmit.yml @@ -0,0 +1,9 @@ +tasks: + verify_targets: + name: Verify build targets + bazel: 7.x + platform: macos + build_targets: + - '@swxmlhash//:SWXMLHash' + build_flags: + - "--repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1" diff --git a/modules/swxmlhash/7.0.2.1/source.json b/modules/swxmlhash/7.0.2.1/source.json new file mode 100644 index 00000000000..a7c20318c27 --- /dev/null +++ b/modules/swxmlhash/7.0.2.1/source.json @@ -0,0 +1,10 @@ +{ + "url": "https://github.com/drmohundro/SWXMLHash/archive/refs/tags/7.0.2.tar.gz", + "integrity": "sha256-19YA8GLWhAsDf8H7KsOvznocQ65DDXjiLXvW+OAs/J0=", + "strip_prefix": "SWXMLHash-7.0.2", + "patches": { + "add_build_file.patch": "sha256-5pHn+5q51/aanOaesI4fs+wcihKIsTPALKb9wUfJJxA=", + "module_dot_bazel.patch": "sha256-6Eo1k9Dd6SKH4vNS9QW55I5XeXcCQSIAXoJO9MoP5U8=" + }, + "patch_strip": 0 +} diff --git a/modules/swxmlhash/metadata.json b/modules/swxmlhash/metadata.json index 8fee4efb773..7763ca46657 100644 --- a/modules/swxmlhash/metadata.json +++ b/modules/swxmlhash/metadata.json @@ -17,7 +17,8 @@ ], "versions": [ "7.0.1", - "7.0.2" + "7.0.2", + "7.0.2.1" ], "yanked_versions": {} } diff --git a/modules/toolchain_utils/1.0.0-beta.12/MODULE.bazel b/modules/toolchain_utils/1.0.0-beta.12/MODULE.bazel new file mode 100644 index 00000000000..84f228463c2 --- /dev/null +++ b/modules/toolchain_utils/1.0.0-beta.12/MODULE.bazel @@ -0,0 +1,24 @@ +module( + name = "toolchain_utils", + version = "1.0.0-beta.12", + bazel_compatibility = [ + ">=7.0.0", + ], + compatibility_level = 1, +) + +bazel_dep(name = "bazel_skylib", version = "1.4.2") +bazel_dep(name = "bazel_features", version = "1.13.0") +bazel_dep(name = "platforms", version = "0.0.7") + +triplet = use_repo_rule("//toolchain/local/triplet:defs.bzl", "toolchain_local_triplet") + +triplet( + name = "local", +) + +launcher = use_repo_rule("//toolchain/launcher:repository.bzl", "launcher") + +launcher( + name = "launcher", +) diff --git a/modules/toolchain_utils/1.0.0-beta.12/presubmit.yml b/modules/toolchain_utils/1.0.0-beta.12/presubmit.yml new file mode 100644 index 00000000000..8902f1f38a7 --- /dev/null +++ b/modules/toolchain_utils/1.0.0-beta.12/presubmit.yml @@ -0,0 +1,22 @@ +bcr_test_module: + module_path: e2e + matrix: + bazel: + - 7.x + platform: + - centos7_java11_devtoolset10 + - debian10 + - debian11 + - ubuntu2004 + - ubuntu2204 + - fedora39 + - macos + - macos_arm64 + - windows + tasks: + e2e_tests: + name: Run end-to-end Tests + bazel: ${{ bazel }} + platform: ${{ platform }} + test_targets: + - "//..." diff --git a/modules/toolchain_utils/1.0.0-beta.12/source.json b/modules/toolchain_utils/1.0.0-beta.12/source.json new file mode 100644 index 00000000000..6e879c1a067 --- /dev/null +++ b/modules/toolchain_utils/1.0.0-beta.12/source.json @@ -0,0 +1,5 @@ +{ + "url": "https://gitlab.arm.com/bazel/toolchain_utils/-/releases/v1.0.0-beta.12/downloads/src.tar.gz", + "integrity": "sha512-sAw4pX7AyfYyPtPRJf3ktMavW1iMR6dYHl2L1GkUXRAmJcO/nLDtktn9nl3fA86hNdkUh87l52xbmGCIdzNDHA==", + "strip_prefix": "toolchain_utils-v1.0.0-beta.12" +} diff --git a/modules/toolchain_utils/metadata.json b/modules/toolchain_utils/metadata.json index 5475fad827c..bed5c33054a 100644 --- a/modules/toolchain_utils/metadata.json +++ b/modules/toolchain_utils/metadata.json @@ -12,7 +12,8 @@ "1.0.0-beta.6", "1.0.0-beta.9", "1.0.0-beta.10", - "1.0.0-beta.11" + "1.0.0-beta.11", + "1.0.0-beta.12" ], "maintainers": [ { diff --git a/modules/toolchains_musl/0.1.17/MODULE.bazel b/modules/toolchains_musl/0.1.17/MODULE.bazel new file mode 100644 index 00000000000..8cbf913b57f --- /dev/null +++ b/modules/toolchains_musl/0.1.17/MODULE.bazel @@ -0,0 +1,12 @@ +module( + name = "toolchains_musl", + version = "0.1.17", +) + +bazel_dep(name = "bazel_features", version = "1.9.0") +bazel_dep(name = "platforms", version = "0.0.9") + +toolchains_musl = use_extension("//:toolchains_musl.bzl", "toolchains_musl") +use_repo(toolchains_musl, "musl_toolchains_hub") + +register_toolchains("@musl_toolchains_hub//:all") diff --git a/modules/toolchains_musl/0.1.17/presubmit.yml b/modules/toolchains_musl/0.1.17/presubmit.yml new file mode 100644 index 00000000000..363abff306a --- /dev/null +++ b/modules/toolchains_musl/0.1.17/presubmit.yml @@ -0,0 +1,24 @@ +bcr_test_module: + module_path: "bcr_test" + matrix: + platform: ["debian10", "macos", "macos_arm64", "ubuntu2004"] + bazel: [6.x, 7.x] + tasks: + run_tests: + name: "Run test module" + platform: ${{ platform }} + bazel: ${{ bazel }} + build_targets: + - "//..." + build_flags: + - "--test_output=errors" + - "--verbose_failures" + # Required with Bazel 6 + - "--incompatible_enable_cc_toolchain_resolution" + test_targets: + - "//..." + test_flags: + - "--test_output=errors" + - "--verbose_failures" + # Required with Bazel 6 + - "--incompatible_enable_cc_toolchain_resolution" diff --git a/modules/toolchains_musl/0.1.17/source.json b/modules/toolchains_musl/0.1.17/source.json new file mode 100644 index 00000000000..e12522985f8 --- /dev/null +++ b/modules/toolchains_musl/0.1.17/source.json @@ -0,0 +1,5 @@ +{ + "integrity": "sha256-Hmz5nzUnfbucOzQamYbQ8zz3DgzHaljwYtLZt6tW7us=", + "strip_prefix": "", + "url": "https://github.com/bazel-contrib/musl-toolchain/releases/download/v0.1.17/musl_toolchain-v0.1.17.tar.gz" +} diff --git a/modules/toolchains_musl/metadata.json b/modules/toolchains_musl/metadata.json index b6e4c1e3009..5ceb58217ca 100644 --- a/modules/toolchains_musl/metadata.json +++ b/modules/toolchains_musl/metadata.json @@ -15,7 +15,8 @@ "versions": [ "0.1.14", "0.1.15", - "0.1.16" + "0.1.16", + "0.1.17" ], "yanked_versions": {} } diff --git a/modules/yams/5.1.3/MODULE.bazel b/modules/yams/5.1.3/MODULE.bazel new file mode 100644 index 00000000000..cf7ab293f4f --- /dev/null +++ b/modules/yams/5.1.3/MODULE.bazel @@ -0,0 +1,11 @@ +module( + name = "yams", + version = "5.1.3", + compatibility_level = 1, +) + +bazel_dep(name = "apple_support", version = "1.15.1") +bazel_dep(name = "rules_swift", version = "1.18.0", repo_name = "build_bazel_rules_swift", max_compatibility_level = 2) + +bazel_dep(name = "platforms", version = "0.0.9", dev_dependency = True) +bazel_dep(name = "rules_apple", version = "3.5.1", dev_dependency = True) diff --git a/modules/yams/5.1.3/presubmit.yml b/modules/yams/5.1.3/presubmit.yml new file mode 100644 index 00000000000..cfaa79bd56f --- /dev/null +++ b/modules/yams/5.1.3/presubmit.yml @@ -0,0 +1,9 @@ +tasks: + verify_targets: + name: Verify build targets + platform: macos + bazel: 7.x + build_targets: + - '@yams//:Yams' + build_flags: + - "--repo_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1" diff --git a/modules/yams/5.1.3/source.json b/modules/yams/5.1.3/source.json new file mode 100644 index 00000000000..109dbe265c6 --- /dev/null +++ b/modules/yams/5.1.3/source.json @@ -0,0 +1,5 @@ +{ + "url": "https://github.com/jpsim/Yams/releases/download/5.1.3/Yams-5.1.3.tar.gz", + "integrity": "sha256-0Pjs7X7zRilFveH+Djcoi332pQyoVN9Ts6/0POTTjjk=", + "strip_prefix": "Yams-5.1.3" +} diff --git a/modules/yams/metadata.json b/modules/yams/metadata.json index 0f406eb4352..1d13a15199a 100644 --- a/modules/yams/metadata.json +++ b/modules/yams/metadata.json @@ -15,7 +15,8 @@ "5.0.4", "5.0.5", "5.0.6", - "5.1.0" + "5.1.0", + "5.1.3" ], "yanked_versions": {} } diff --git a/tools/requirements_lock.txt b/tools/requirements_lock.txt index 21374f920d5..fcbd3d79a04 100644 --- a/tools/requirements_lock.txt +++ b/tools/requirements_lock.txt @@ -61,7 +61,7 @@ pyyaml==6.0.1 \ --hash=sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d \ --hash=sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f # via -r tools/requirements.in -validators==0.28.1 \ - --hash=sha256:5ac88e7916c3405f0ce38ac2ac82a477fcf4d90dbbeddd04c8193171fc17f7dc \ - --hash=sha256:890c98789ad884037f059af6ea915ec2d667129d509180c2c590b8009a4c4219 +validators==0.31.0 \ + --hash=sha256:de7574fc56a231c788162f3e7da15bc2053c5ff9e0281d9ff1afb3a7b69498df \ + --hash=sha256:e15a600d81555a4cd409b17bf55946c5edec7748e776afc85ed0a19bdee54e56 # via -r tools/requirements.in