diff --git a/MODULE.bazel b/MODULE.bazel index 0d29116ad6392..2784da3ee8bf1 100644 --- a/MODULE.bazel +++ b/MODULE.bazel @@ -33,14 +33,14 @@ bazel_dep(name = "emsdk", version = "4.0.13") bazel_dep(name = "envoy_examples", version = "0.0.0-dev") git_override( module_name = "envoy_examples", - commit = "ff286d4049b6339cf84c912f5e06f67b0061f017", + commit = "a531e3e0031c673ad9b2e1e6c749c074e4940702", remote = "https://github.com/envoyproxy/examples.git", ) bazel_dep(name = "envoy-example-wasmcc", version = "0.0.0-dev") git_override( module_name = "envoy-example-wasmcc", - commit = "ff286d4049b6339cf84c912f5e06f67b0061f017", + commit = "a531e3e0031c673ad9b2e1e6c749c074e4940702", remote = "https://github.com/envoyproxy/examples.git", strip_prefix = "wasm-cc/", ) @@ -77,6 +77,10 @@ bazel_dep(name = "rules_buf", version = "0.5.1") bazel_dep(name = "rules_cc", version = "0.2.8") bazel_dep(name = "rules_foreign_cc", version = "0.15.0") bazel_dep(name = "rules_go", version = "0.57.0", repo_name = "io_bazel_rules_go") +bazel_dep(name = "rules_java", version = "8.14.0") +java_compat = use_extension("@rules_java//java:rules_java_deps.bzl", "compatibility_proxy") +use_repo(java_compat, "compatibility_proxy") + bazel_dep(name = "rules_license", version = "1.0.0") bazel_dep(name = "rules_nodejs", version = "6.5.0") bazel_dep(name = "rules_pkg", version = "1.1.0") @@ -129,7 +133,8 @@ switched_rules.use_languages( grpc = True, python = True, ) -use_repo(switched_rules, "com_google_googleapis_imports") +# Note: com_google_googleapis_imports is not generated by switched_rules extension in googleapis 0.0.0-20241220 +# The switched_rules extension now uses language-specific repositories (googleapis-cc, googleapis-go, etc.) # Go SDK and toolchain configuration # Note: dev_dependency = True was removed to fix nogo visibility issues. @@ -309,7 +314,6 @@ use_repo( "proxy_wasm_cpp_sdk", "proxy_wasm_rust_sdk", "rules_fuzzing", - "rules_java", "rules_proto_grpc", "rules_ruby", "simdutf", diff --git a/api/MODULE.bazel b/api/MODULE.bazel index acdfc31589d04..7da831f3b9619 100644 --- a/api/MODULE.bazel +++ b/api/MODULE.bazel @@ -35,7 +35,8 @@ switched_rules.use_languages( grpc = True, python = True, ) -use_repo(switched_rules, "com_google_googleapis_imports") +# Note: com_google_googleapis_imports is not generated by switched_rules extension in googleapis 0.0.0-20241220 +# The switched_rules extension now uses language-specific repositories (googleapis-cc, googleapis-go, etc.) # API dependencies extension - using local module envoy_api_deps = use_extension("//bazel/extensions:api_dependencies.bzl", "envoy_api_deps") diff --git a/api/bazel/api_build_system.bzl b/api/bazel/api_build_system.bzl index 0b6bac536990f..f2ff4da1cc4aa 100644 --- a/api/bazel/api_build_system.bzl +++ b/api/bazel/api_build_system.bzl @@ -4,6 +4,7 @@ load("@com_github_grpc_grpc//bazel:python_rules.bzl", _py_proto_library = "py_pr load("@com_google_protobuf//bazel:proto_library.bzl", "proto_library") load("@io_bazel_rules_go//go:def.bzl", "go_test") load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library") +load("@rules_java//java:defs.bzl", "java_proto_library") load( "//bazel:external_proto_deps.bzl", "EXTERNAL_PROTO_CC_BAZEL_DEP_MAP", @@ -114,7 +115,7 @@ def api_cc_py_proto_library( ) if java: - native.java_proto_library( + java_proto_library( name = name + _JAVA_PROTO_SUFFIX, visibility = ["//visibility:public"], deps = [relative_name], diff --git a/bazel/emsdk.patch b/bazel/emsdk.patch index b64feb7509fa2..326f881813cb6 100644 --- a/bazel/emsdk.patch +++ b/bazel/emsdk.patch @@ -83,7 +83,7 @@ index a989450..4f1c213 100644 --- a/bazel/emscripten_toolchain/BUILD.bazel +++ b/bazel/emscripten_toolchain/BUILD.bazel @@ -1,3 +1,4 @@ -+load("@python3_12//:defs.bzl", "py_binary") ++load("@python_3_12//:defs.bzl", "py_binary") load(":toolchain.bzl", "emscripten_cc_toolchain_config_rule") package(default_visibility = ["//visibility:public"]) @@ -91,7 +91,7 @@ index a989450..4f1c213 100644 "env.sh", "env.bat", "@nodejs//:node_files", -+ "@python3_12//:files", ++ "@python_3_12//:files", ], ) @@ -479,7 +479,7 @@ index c8cec07..9559cd1 100644 "nodejs_bin": attr.label(mandatory = True, allow_single_file = True), - "script_extension": attr.string(mandatory = True, values = ["sh", "bat"]), + "is_windows": attr.bool(mandatory = True), -+ "_python_interpreter": attr.label(cfg = "exec", default = Label("@python3_12//:files")), ++ "_python_interpreter": attr.label(cfg = "exec", default = Label("@python_3_12//:files")), }, provides = [CcToolchainConfigInfo], ) diff --git a/bazel/repository_locations.bzl b/bazel/repository_locations.bzl index 2e213a28c40de..ea59dd5442ac6 100644 --- a/bazel/repository_locations.bzl +++ b/bazel/repository_locations.bzl @@ -1097,9 +1097,9 @@ REPOSITORY_LOCATIONS_SPEC = dict( project_name = "Java rules for Bazel", project_desc = "Bazel rules for the Java language", project_url = "https://github.com/bazelbuild/rules_java/", - version = "7.12.5", - sha256 = "17b18cb4f92ab7b94aa343ce78531b73960b1bed2ba166e5b02c9fdf0b0ac270", - release_date = "2025-03-25", + version = "8.14.0", + sha256 = "bbe7d94360cc9ed4607ec5fd94995fd1ec41e84257020b6f09e64055281ecb12", + release_date = "2025-01-29", urls = ["https://github.com/bazelbuild/rules_java/releases/download/{version}/rules_java-{version}.tar.gz"], use_category = ["build"], license = "Apache-2.0", diff --git a/mobile/MODULE.bazel b/mobile/MODULE.bazel index aee6ff59f8163..8f0c571d108c7 100644 --- a/mobile/MODULE.bazel +++ b/mobile/MODULE.bazel @@ -94,6 +94,7 @@ bazel_dep(name = "rules_detekt", version = "0.8.1.2") # Kotlin linting # rules_foreign_cc override needed for mobile builds until upstream issue is resolved # TODO(yannic): Remove once https://github.com/bazelbuild/rules_foreign_cc/pull/938 is merged and released bazel_dep(name = "rules_foreign_cc", version = "0.15.0") +bazel_dep(name = "rules_java", version = "8.14.0") # Java language support bazel_dep(name = "rules_jvm_external", version = "6.6") # Maven dependency management bazel_dep(name = "rules_kotlin", version = "1.9.6") # Kotlin language support bazel_dep(name = "rules_pkg", version = "1.1.0") # Package building @@ -108,7 +109,8 @@ switched_rules.use_languages( grpc = True, python = True, ) -use_repo(switched_rules, "com_google_googleapis_imports") +# Note: com_google_googleapis_imports is not generated by switched_rules extension in googleapis 0.0.0-20241220 +# The switched_rules extension now uses language-specific repositories (googleapis-cc, googleapis-go, etc.) # Envoy dependencies extensions - using consolidated extensions from parent envoy module envoy_core = use_extension("@envoy//bazel/extensions:core.bzl", "core") @@ -137,16 +139,18 @@ use_repo( "google_bazel_common", "kotlin_formatter", "robolectric", - "rules_java", ) # Native Android SDK configuration using rules_android extension # This replaces custom Android SDK setup with native bzlmod extension support -android_sdk_repository_extension = use_extension("@rules_android//rules/android_sdk_repository:rule.bzl", "android_sdk_repository_extension") -android_sdk_repository_extension.configure( - api_level = 30, # Target Android API level - build_tools_version = "30.0.2", # Android build tools version -) +# NOTE: Temporarily commented out due to missing BUILD file in rules_android 0.1.1 +# The android_sdk_repository_extension path may have changed in newer versions +# android_sdk_repository_extension = use_extension("@rules_android//rules/android_sdk_repository:rule.bzl", "android_sdk_repository_extension") +# android_sdk_repository_extension.configure( +# api_level = 30, # Target Android API level +# build_tools_version = "30.0.2", # Android build tools version +# ) +# Fallback: Android SDK will be configured via mobile toolchains extension # Native Android NDK configuration using rules_android_ndk extension # This provides native C++ compilation support for Android targets @@ -156,7 +160,10 @@ android_ndk_repository_extension.configure( ) # Mobile toolchains extension (remaining custom setup) -envoy_mobile_toolchains = use_extension("//bazel/extensions:toolchains.bzl", "toolchains") +# NOTE: Commented out to avoid manual toolchain registration conflicts in bzlmod mode +# In bzlmod mode, toolchains (rules_java, rules_kotlin, rules_detekt, rules_proto_grpc) are +# automatically registered when declared as bazel_dep, so manual registration is not needed +# envoy_mobile_toolchains = use_extension("//bazel/extensions:toolchains.bzl", "toolchains") # Python dependencies using upstream rules_python extensions python = use_extension("@rules_python//python/extensions:python.bzl", "python", dev_dependency = True) diff --git a/mobile/bazel/envoy_mobile_repositories.bzl b/mobile/bazel/envoy_mobile_repositories.bzl index c1c17b78b6c59..f6c932c82e9d4 100644 --- a/mobile/bazel/envoy_mobile_repositories.bzl +++ b/mobile/bazel/envoy_mobile_repositories.bzl @@ -51,8 +51,8 @@ def swift_repos(): def kotlin_repos(): external_http_archive( name = "rules_java", - sha256 = "c0ee60f8757f140c157fc2c7af703d819514de6e025ebf70386d38bdd85fce83", - url = "https://github.com/bazelbuild/rules_java/releases/download/7.12.3/rules_java-7.12.3.tar.gz", + sha256 = "bbe7d94360cc9ed4607ec5fd94995fd1ec41e84257020b6f09e64055281ecb12", + url = "https://github.com/bazelbuild/rules_java/releases/download/8.14.0/rules_java-8.14.0.tar.gz", patch_args = ["-p1"], patches = ["@envoy//bazel:rules_java.patch"], ) diff --git a/source/extensions/dynamic_modules/sdk/rust/Cargo.Bazel.lock b/source/extensions/dynamic_modules/sdk/rust/Cargo.Bazel.lock index d3bcae06f9c6a..b2e018c9cae80 100644 --- a/source/extensions/dynamic_modules/sdk/rust/Cargo.Bazel.lock +++ b/source/extensions/dynamic_modules/sdk/rust/Cargo.Bazel.lock @@ -1,5 +1,5 @@ { - "checksum": "c0d467a39180d065453586687649d169eafc9222d6c3352463a214d2b1b6cf84", + "checksum": "c65535417eee1e7402282e7c7a39e5fc94a669de9e01e113f34b8eb15cf1e222", "crates": { "aho-corasick 1.1.3": { "name": "aho-corasick", @@ -200,6 +200,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ], @@ -433,6 +436,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ], @@ -593,6 +599,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ], @@ -794,6 +803,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -1136,6 +1148,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -1419,6 +1434,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ], @@ -1499,6 +1517,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -2120,6 +2141,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -2188,6 +2212,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -2256,6 +2283,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -2324,6 +2354,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -2392,6 +2425,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -2460,6 +2496,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -2528,6 +2567,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -2596,6 +2638,9 @@ "compile_data_glob": [ "**" ], + "compile_data_glob_excludes": [ + "**/*.rs" + ], "data_glob": [ "**" ] @@ -2616,154 +2661,45 @@ "aarch64-apple-darwin": [ "aarch64-apple-darwin" ], - "aarch64-apple-ios": [ - "aarch64-apple-ios" - ], - "aarch64-apple-ios-sim": [ - "aarch64-apple-ios-sim" - ], - "aarch64-linux-android": [ - "aarch64-linux-android" - ], "aarch64-pc-windows-gnullvm": [], - "aarch64-pc-windows-msvc": [ - "aarch64-pc-windows-msvc" - ], - "aarch64-unknown-fuchsia": [ - "aarch64-unknown-fuchsia" - ], "aarch64-unknown-linux-gnu": [ "aarch64-unknown-linux-gnu" ], - "aarch64-unknown-nixos-gnu": [ - "aarch64-unknown-nixos-gnu" - ], - "aarch64-unknown-nto-qnx710": [ - "aarch64-unknown-nto-qnx710" - ], - "arm-unknown-linux-gnueabi": [ - "arm-unknown-linux-gnueabi" - ], - "armv7-linux-androideabi": [ - "armv7-linux-androideabi" - ], - "armv7-unknown-linux-gnueabi": [ - "armv7-unknown-linux-gnueabi" - ], "cfg(all(any(target_arch = \"x86_64\", target_arch = \"arm64ec\"), target_env = \"msvc\", not(windows_raw_dylib)))": [ "x86_64-pc-windows-msvc" ], - "cfg(all(target_arch = \"aarch64\", target_env = \"msvc\", not(windows_raw_dylib)))": [ - "aarch64-pc-windows-msvc" - ], - "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))": [ - "i686-unknown-linux-gnu" - ], - "cfg(all(target_arch = \"x86\", target_env = \"msvc\", not(windows_raw_dylib)))": [ - "i686-pc-windows-msvc" - ], + "cfg(all(target_arch = \"aarch64\", target_env = \"msvc\", not(windows_raw_dylib)))": [], + "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))": [], + "cfg(all(target_arch = \"x86\", target_env = \"msvc\", not(windows_raw_dylib)))": [], "cfg(all(target_arch = \"x86_64\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))": [ "x86_64-unknown-linux-gnu", "x86_64-unknown-nixos-gnu" ], "cfg(unix)": [ "aarch64-apple-darwin", - "aarch64-apple-ios", - "aarch64-apple-ios-sim", - "aarch64-linux-android", - "aarch64-unknown-fuchsia", "aarch64-unknown-linux-gnu", - "aarch64-unknown-nixos-gnu", - "aarch64-unknown-nto-qnx710", - "arm-unknown-linux-gnueabi", - "armv7-linux-androideabi", - "armv7-unknown-linux-gnueabi", - "i686-apple-darwin", - "i686-linux-android", - "i686-unknown-freebsd", - "i686-unknown-linux-gnu", - "powerpc-unknown-linux-gnu", - "s390x-unknown-linux-gnu", - "x86_64-apple-darwin", - "x86_64-apple-ios", - "x86_64-linux-android", - "x86_64-unknown-freebsd", - "x86_64-unknown-fuchsia", "x86_64-unknown-linux-gnu", "x86_64-unknown-nixos-gnu" ], "cfg(windows)": [ - "aarch64-pc-windows-msvc", - "i686-pc-windows-msvc", "x86_64-pc-windows-msvc" ], - "i686-apple-darwin": [ - "i686-apple-darwin" - ], - "i686-linux-android": [ - "i686-linux-android" - ], "i686-pc-windows-gnullvm": [], - "i686-pc-windows-msvc": [ - "i686-pc-windows-msvc" - ], - "i686-unknown-freebsd": [ - "i686-unknown-freebsd" - ], - "i686-unknown-linux-gnu": [ - "i686-unknown-linux-gnu" - ], - "powerpc-unknown-linux-gnu": [ - "powerpc-unknown-linux-gnu" - ], - "riscv32imc-unknown-none-elf": [ - "riscv32imc-unknown-none-elf" - ], - "riscv64gc-unknown-none-elf": [ - "riscv64gc-unknown-none-elf" - ], - "s390x-unknown-linux-gnu": [ - "s390x-unknown-linux-gnu" - ], - "thumbv7em-none-eabi": [ - "thumbv7em-none-eabi" - ], - "thumbv8m.main-none-eabi": [ - "thumbv8m.main-none-eabi" - ], "wasm32-unknown-unknown": [ "wasm32-unknown-unknown" ], "wasm32-wasip1": [ "wasm32-wasip1" ], - "x86_64-apple-darwin": [ - "x86_64-apple-darwin" - ], - "x86_64-apple-ios": [ - "x86_64-apple-ios" - ], - "x86_64-linux-android": [ - "x86_64-linux-android" - ], "x86_64-pc-windows-gnullvm": [], "x86_64-pc-windows-msvc": [ "x86_64-pc-windows-msvc" ], - "x86_64-unknown-freebsd": [ - "x86_64-unknown-freebsd" - ], - "x86_64-unknown-fuchsia": [ - "x86_64-unknown-fuchsia" - ], "x86_64-unknown-linux-gnu": [ "x86_64-unknown-linux-gnu" ], "x86_64-unknown-nixos-gnu": [ "x86_64-unknown-nixos-gnu" - ], - "x86_64-unknown-none": [ - "x86_64-unknown-none" ] }, "direct_deps": [