From b8605b4feb245bd9a94beb3e331fab1c6fa72f70 Mon Sep 17 00:00:00 2001 From: regro-cf-autotick-bot <36490558+regro-cf-autotick-bot@users.noreply.github.com> Date: Wed, 26 Mar 2025 03:04:30 +0000 Subject: [PATCH 1/8] Rebuild for libabseil 20250127, libgrpc 1.71 & libprotobuf 5.29.3 --- .ci_support/migrations/absl_grpc_proto.yaml | 21 +++++++++++++++++++++ recipe/meta.yaml | 2 +- 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 .ci_support/migrations/absl_grpc_proto.yaml diff --git a/.ci_support/migrations/absl_grpc_proto.yaml b/.ci_support/migrations/absl_grpc_proto.yaml new file mode 100644 index 00000000..058ccee2 --- /dev/null +++ b/.ci_support/migrations/absl_grpc_proto.yaml @@ -0,0 +1,21 @@ +__migrator: + build_number: 1 + commit_message: Rebuild for libabseil 20250127, libgrpc 1.71 & libprotobuf 5.29.3 + kind: version + migration_number: 1 + exclude: + - abseil-cpp + - grpc-cpp + - libprotobuf + - protobuf + - re2 +libabseil: +- 20250127 +libgrpc: +- "1.71" +libprotobuf: +- 5.29.3 +# see https://github.com/grpc/grpc/commit/14ac94d923b80650e0df55bed17be5efa0e4becd +c_stdlib_version: # [osx and x86_64] + - 10.14 # [osx and x86_64] +migrator_ts: 1741118046.5882597 diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 532550a5..f84f1eda 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -28,7 +28,7 @@ source: - patches/0011-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch build: - number: 0 + number: 1 # Need these up here for conda-smithy to handle them properly. requirements: From 875515e4bba79a2f1482e9f6767cf741aa4f3538 Mon Sep 17 00:00:00 2001 From: regro-cf-autotick-bot <36490558+regro-cf-autotick-bot@users.noreply.github.com> Date: Wed, 26 Mar 2025 03:07:24 +0000 Subject: [PATCH 2/8] MNT: Re-rendered with conda-build 25.1.2, conda-smithy 3.47.0, and conda-forge-pinning 2025.03.25.21.45.18 --- .ci_support/linux_64_python3.10.____cpython.yaml | 2 +- .ci_support/linux_64_python3.11.____cpython.yaml | 2 +- .ci_support/linux_64_python3.12.____cpython.yaml | 2 +- .ci_support/linux_64_python3.9.____cpython.yaml | 2 +- .ci_support/osx_64_python3.10.____cpython.yaml | 2 +- .ci_support/osx_64_python3.11.____cpython.yaml | 2 +- .ci_support/osx_64_python3.12.____cpython.yaml | 2 +- .ci_support/osx_64_python3.9.____cpython.yaml | 2 +- .ci_support/osx_arm64_python3.10.____cpython.yaml | 2 +- .ci_support/osx_arm64_python3.11.____cpython.yaml | 2 +- .ci_support/osx_arm64_python3.12.____cpython.yaml | 2 +- .ci_support/osx_arm64_python3.9.____cpython.yaml | 2 +- .ci_support/win_64_python3.10.____cpython.yaml | 2 +- .ci_support/win_64_python3.11.____cpython.yaml | 2 +- .ci_support/win_64_python3.12.____cpython.yaml | 2 +- .ci_support/win_64_python3.9.____cpython.yaml | 2 +- 16 files changed, 16 insertions(+), 16 deletions(-) diff --git a/.ci_support/linux_64_python3.10.____cpython.yaml b/.ci_support/linux_64_python3.10.____cpython.yaml index a3255ee5..fb31baa3 100644 --- a/.ci_support/linux_64_python3.10.____cpython.yaml +++ b/.ci_support/linux_64_python3.10.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler_version: docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 libgrpc: -- '1.67' +- '1.71' nodejs: - '20' - '22' diff --git a/.ci_support/linux_64_python3.11.____cpython.yaml b/.ci_support/linux_64_python3.11.____cpython.yaml index fd56f06b..d8d370ff 100644 --- a/.ci_support/linux_64_python3.11.____cpython.yaml +++ b/.ci_support/linux_64_python3.11.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler_version: docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 libgrpc: -- '1.67' +- '1.71' nodejs: - '20' - '22' diff --git a/.ci_support/linux_64_python3.12.____cpython.yaml b/.ci_support/linux_64_python3.12.____cpython.yaml index 3210fd8e..30b40d39 100644 --- a/.ci_support/linux_64_python3.12.____cpython.yaml +++ b/.ci_support/linux_64_python3.12.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler_version: docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 libgrpc: -- '1.67' +- '1.71' nodejs: - '20' - '22' diff --git a/.ci_support/linux_64_python3.9.____cpython.yaml b/.ci_support/linux_64_python3.9.____cpython.yaml index b4e23b60..d282af93 100644 --- a/.ci_support/linux_64_python3.9.____cpython.yaml +++ b/.ci_support/linux_64_python3.9.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler_version: docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 libgrpc: -- '1.67' +- '1.71' nodejs: - '20' - '22' diff --git a/.ci_support/osx_64_python3.10.____cpython.yaml b/.ci_support/osx_64_python3.10.____cpython.yaml index 4d4d3223..ff0ccd65 100644 --- a/.ci_support/osx_64_python3.10.____cpython.yaml +++ b/.ci_support/osx_64_python3.10.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler: cxx_compiler_version: - '18' libgrpc: -- '1.67' +- '1.71' macos_machine: - x86_64-apple-darwin13.4.0 nodejs: diff --git a/.ci_support/osx_64_python3.11.____cpython.yaml b/.ci_support/osx_64_python3.11.____cpython.yaml index 677d1614..d6e2ef58 100644 --- a/.ci_support/osx_64_python3.11.____cpython.yaml +++ b/.ci_support/osx_64_python3.11.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler: cxx_compiler_version: - '18' libgrpc: -- '1.67' +- '1.71' macos_machine: - x86_64-apple-darwin13.4.0 nodejs: diff --git a/.ci_support/osx_64_python3.12.____cpython.yaml b/.ci_support/osx_64_python3.12.____cpython.yaml index de2a8c8a..47267b54 100644 --- a/.ci_support/osx_64_python3.12.____cpython.yaml +++ b/.ci_support/osx_64_python3.12.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler: cxx_compiler_version: - '18' libgrpc: -- '1.67' +- '1.71' macos_machine: - x86_64-apple-darwin13.4.0 nodejs: diff --git a/.ci_support/osx_64_python3.9.____cpython.yaml b/.ci_support/osx_64_python3.9.____cpython.yaml index 7852be9e..6584ade9 100644 --- a/.ci_support/osx_64_python3.9.____cpython.yaml +++ b/.ci_support/osx_64_python3.9.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler: cxx_compiler_version: - '18' libgrpc: -- '1.67' +- '1.71' macos_machine: - x86_64-apple-darwin13.4.0 nodejs: diff --git a/.ci_support/osx_arm64_python3.10.____cpython.yaml b/.ci_support/osx_arm64_python3.10.____cpython.yaml index f6def247..b75a0277 100644 --- a/.ci_support/osx_arm64_python3.10.____cpython.yaml +++ b/.ci_support/osx_arm64_python3.10.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler: cxx_compiler_version: - '18' libgrpc: -- '1.67' +- '1.71' macos_machine: - arm64-apple-darwin20.0.0 nodejs: diff --git a/.ci_support/osx_arm64_python3.11.____cpython.yaml b/.ci_support/osx_arm64_python3.11.____cpython.yaml index 4e05675b..3604a07c 100644 --- a/.ci_support/osx_arm64_python3.11.____cpython.yaml +++ b/.ci_support/osx_arm64_python3.11.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler: cxx_compiler_version: - '18' libgrpc: -- '1.67' +- '1.71' macos_machine: - arm64-apple-darwin20.0.0 nodejs: diff --git a/.ci_support/osx_arm64_python3.12.____cpython.yaml b/.ci_support/osx_arm64_python3.12.____cpython.yaml index 1902fe7d..fb32043e 100644 --- a/.ci_support/osx_arm64_python3.12.____cpython.yaml +++ b/.ci_support/osx_arm64_python3.12.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler: cxx_compiler_version: - '18' libgrpc: -- '1.67' +- '1.71' macos_machine: - arm64-apple-darwin20.0.0 nodejs: diff --git a/.ci_support/osx_arm64_python3.9.____cpython.yaml b/.ci_support/osx_arm64_python3.9.____cpython.yaml index 422e47a4..093d59d7 100644 --- a/.ci_support/osx_arm64_python3.9.____cpython.yaml +++ b/.ci_support/osx_arm64_python3.9.____cpython.yaml @@ -21,7 +21,7 @@ cxx_compiler: cxx_compiler_version: - '18' libgrpc: -- '1.67' +- '1.71' macos_machine: - arm64-apple-darwin20.0.0 nodejs: diff --git a/.ci_support/win_64_python3.10.____cpython.yaml b/.ci_support/win_64_python3.10.____cpython.yaml index 1dcabdf5..9b948541 100644 --- a/.ci_support/win_64_python3.10.____cpython.yaml +++ b/.ci_support/win_64_python3.10.____cpython.yaml @@ -11,7 +11,7 @@ curl: cxx_compiler: - vs2019 libgrpc: -- '1.67' +- '1.71' nodejs: - '20' - '22' diff --git a/.ci_support/win_64_python3.11.____cpython.yaml b/.ci_support/win_64_python3.11.____cpython.yaml index 8765b4a7..68a799ba 100644 --- a/.ci_support/win_64_python3.11.____cpython.yaml +++ b/.ci_support/win_64_python3.11.____cpython.yaml @@ -11,7 +11,7 @@ curl: cxx_compiler: - vs2019 libgrpc: -- '1.67' +- '1.71' nodejs: - '20' - '22' diff --git a/.ci_support/win_64_python3.12.____cpython.yaml b/.ci_support/win_64_python3.12.____cpython.yaml index 26e01847..baa15f74 100644 --- a/.ci_support/win_64_python3.12.____cpython.yaml +++ b/.ci_support/win_64_python3.12.____cpython.yaml @@ -11,7 +11,7 @@ curl: cxx_compiler: - vs2019 libgrpc: -- '1.67' +- '1.71' nodejs: - '20' - '22' diff --git a/.ci_support/win_64_python3.9.____cpython.yaml b/.ci_support/win_64_python3.9.____cpython.yaml index 2e278967..5c54f13f 100644 --- a/.ci_support/win_64_python3.9.____cpython.yaml +++ b/.ci_support/win_64_python3.9.____cpython.yaml @@ -11,7 +11,7 @@ curl: cxx_compiler: - vs2019 libgrpc: -- '1.67' +- '1.71' nodejs: - '20' - '22' From 1a7b8838fb8cafd7c0c1b08787e37d3fe13fb9c8 Mon Sep 17 00:00:00 2001 From: Austin Morton Date: Wed, 26 Mar 2025 09:54:23 -0500 Subject: [PATCH 3/8] Update patch --- recipe/meta.yaml | 4 +- ....1.patch => 0005-Vendor-grpc-1.71.0.patch} | 51 ++++++++++--------- 2 files changed, 29 insertions(+), 26 deletions(-) rename recipe/patches/{0005-Vendor-grpc-1.67.1.patch => 0005-Vendor-grpc-1.71.0.patch} (88%) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index f84f1eda..b00cf187 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -15,11 +15,11 @@ source: # See https://github.com/conda-forge/ray-packages-feedstock/issues/136 # Keep in sync with current or active migration of libgrpc to avoid # ABI breakage - - patches/0005-Vendor-grpc-1.67.1.patch + - patches/0005-Vendor-grpc-1.71.0.patch # Patch out old zlib-1.3.0 to remove fdopen, part of zlib-1.3.1 - patches/0007-patch-zlib-to-remove-define-fdopen-on-macos.patch # Patch around non-const NAN on windows in protobuf 27.5 - - patches/0008-patch-protobuf-use-of-nan-on-windows.patch + # - patches/0008-patch-protobuf-use-of-nan-on-windows.patch # Patch out zlib-1.2.13 to remove fdopen, part of zlib-1.3.1 - patches/0009-patch-zlib-in-prometheus-cpp-and-boost-as-well.patch # Add misisng include in new logging code for different absl diff --git a/recipe/patches/0005-Vendor-grpc-1.67.1.patch b/recipe/patches/0005-Vendor-grpc-1.71.0.patch similarity index 88% rename from recipe/patches/0005-Vendor-grpc-1.67.1.patch rename to recipe/patches/0005-Vendor-grpc-1.71.0.patch index 60295c8c..58aabba1 100644 --- a/recipe/patches/0005-Vendor-grpc-1.67.1.patch +++ b/recipe/patches/0005-Vendor-grpc-1.71.0.patch @@ -1,7 +1,7 @@ -From 5a734425222fd2c132601981bd6a4689e81a7154 Mon Sep 17 00:00:00 2001 +From 7f7d6f4e20cf459567daae264f283a7d6281d0c4 Mon Sep 17 00:00:00 2001 From: Austin Morton -Date: Sun, 19 Jan 2025 22:15:00 +1100 -Subject: [PATCH 05/11] Vendor grpc-1.67.1.patch +Date: Wed, 26 Mar 2025 09:24:39 -0500 +Subject: [PATCH] Vendor grpc-1.71.0 --- bazel/ray_deps_setup.bzl | 31 +++++++------------ @@ -13,7 +13,7 @@ Subject: [PATCH 05/11] Vendor grpc-1.67.1.patch 6 files changed, 23 insertions(+), 30 deletions(-) diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl -index 04acf73beb..55805bc0f6 100644 +index 952cbc855a..1f657c6ba3 100644 --- a/bazel/ray_deps_setup.bzl +++ b/bazel/ray_deps_setup.bzl @@ -86,20 +86,13 @@ def auto_http_archive( @@ -27,59 +27,59 @@ index 04acf73beb..55805bc0f6 100644 name = "com_google_protobuf", - sha256 = "76a33e2136f23971ce46c72fd697cd94dc9f73d56ab23b753c3e16854c90ddfd", - strip_prefix = "protobuf-2c5fa078d8e86e5f4bd34e6f4c9ea9e8d7d4d44a", -+ sha256 = "b2340aa47faf7ef10a0328190319d3f3bee1b24f426d4ce8f4253b6f27ce16db", -+ strip_prefix = "protobuf-28.2", ++ sha256 = "008a11cc56f9b96679b4c285fd05f46d317d685be3ab524b2a310be0fbad987e", ++ strip_prefix = "protobuf-29.3", urls = [ - "https://github.com/protocolbuffers/protobuf/archive/2c5fa078d8e86e5f4bd34e6f4c9ea9e8d7d4d44a.tar.gz", - ], - patches = [ - "@com_github_grpc_grpc//third_party:protobuf.patch", -+ "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v28.2.tar.gz", ++ "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v29.3.tar.gz", ], - patch_args = ["-p1"], ) # NOTE(lingxuan.zlx): 3rd party dependencies could be accessed, so it suggests -@@ -223,10 +216,10 @@ def ray_deps_setup(): +@@ -228,10 +221,10 @@ def ray_deps_setup(): # TODO(owner): Upgrade abseil to latest version after protobuf updated, which requires to upgrade `rules_cc` first. auto_http_archive( name = "com_google_absl", - sha256 = "987ce98f02eefbaf930d6e38ab16aa05737234d7afbab2d5c4ea7adbe50c28ed", - strip_prefix = "abseil-cpp-20230802.1", -+ sha256 = "f50e5ac311a81382da7fa75b97310e4b9006474f9560ac46f54a9967f07d4ae3", -+ strip_prefix = "abseil-cpp-20240722.0", ++ sha256 = "b396401fd29e2e679cace77867481d388c807671dc2acc602a0259eeb79b7811", ++ strip_prefix = "abseil-cpp-20250127.1", urls = [ - "https://github.com/abseil/abseil-cpp/archive/refs/tags/20230802.1.tar.gz", -+ "https://github.com/abseil/abseil-cpp/archive/refs/tags/20240722.0.tar.gz", ++ "https://github.com/abseil/abseil-cpp/archive/refs/tags/20250127.1.tar.gz", ], ) -@@ -246,8 +239,8 @@ def ray_deps_setup(): +@@ -251,8 +244,8 @@ def ray_deps_setup(): auto_http_archive( name = "com_github_grpc_grpc", # NOTE: If you update this, also update @boringssl's hash. - url = "https://github.com/grpc/grpc/archive/refs/tags/v1.57.1.tar.gz", - sha256 = "0762f809b9de845e6a7c809cabccad6aa4143479fd43b396611fe5a086c0aeeb", -+ url = "https://github.com/grpc/grpc/archive/refs/tags/v1.67.1.tar.gz", -+ sha256 = "d74f8e99a433982a12d7899f6773e285c9824e1d9a173ea1d1fb26c9bd089299", ++ url = "https://github.com/grpc/grpc/archive/refs/tags/v1.71.0.tar.gz", ++ sha256 = "0d631419e54ec5b29def798623ee3bf5520dac77abeab3284ef7027ec2363f91", patches = [ "@com_github_ray_project_ray//thirdparty/patches:grpc-cython-copts.patch", ], -@@ -289,13 +282,13 @@ def ray_deps_setup(): +@@ -294,13 +287,13 @@ def ray_deps_setup(): http_archive( # This rule is used by @com_github_grpc_grpc, and using a GitHub mirror # provides a deterministic archive hash for caching. Explanation here: - # https://github.com/grpc/grpc/blob/1ff1feaa83e071d87c07827b0a317ffac673794f/bazel/grpc_deps.bzl#L189 # Ensure this rule matches the rule used by grpc's bazel/grpc_deps.bzl -+ # https://github.com/grpc/grpc/blob/v1.67.1/bazel/grpc_deps.bzl#L33 ++ # https://github.com/grpc/grpc/blob/v1.71.0/bazel/grpc_deps.bzl#L33 name = "boringssl", - sha256 = "0675a4f86ce5e959703425d6f9063eaadf6b61b7f3399e77a154c0e85bad46b1", - strip_prefix = "boringssl-342e805bc1f5dfdd650e3f031686d6c939b095d9", -+ sha256 = "c70d519e4ee709b7a74410a5e3a937428b8198d793a3d771be3dd2086ae167c8", -+ strip_prefix = "boringssl-b8b3e6e11166719a8ebfa43c0cde9ad7d57a84f6", ++ sha256 = "cea4c77cd69279585ea53efa2bb2ae6eb5f31fb39c214213c5b7cdf3c44d7b52", ++ strip_prefix = "boringssl-c64b8fefbba9a9dadda73138062fc449bdf11e2a", urls = [ - "https://github.com/google/boringssl/archive/342e805bc1f5dfdd650e3f031686d6c939b095d9.tar.gz", -+ "https://github.com/google/boringssl/archive/b8b3e6e11166719a8ebfa43c0cde9ad7d57a84f6.tar.gz", ++ "https://github.com/google/boringssl/archive/c64b8fefbba9a9dadda73138062fc449bdf11e2a.tar.gz", ], ) @@ -164,10 +164,10 @@ index e4b3a663cc..2625555d3e 100644 ASSERT_EQ(reply_2.actor_table_data().size(), 2); ASSERT_EQ(reply_2.total(), 3); diff --git a/src/ray/raylet_client/raylet_client.cc b/src/ray/raylet_client/raylet_client.cc -index c08c13ebe6..fbb68ca64b 100644 +index 5ad695d2f5..f8b9ca2d4f 100644 --- a/src/ray/raylet_client/raylet_client.cc +++ b/src/ray/raylet_client/raylet_client.cc -@@ -253,7 +253,7 @@ void RayletClient::RequestWorkerLease( +@@ -246,7 +246,7 @@ void RayletClient::RequestWorkerLease( const bool is_selected_based_on_locality) { google::protobuf::Arena arena; auto request = @@ -177,7 +177,7 @@ index c08c13ebe6..fbb68ca64b 100644 // task_spec is longer than request. // Request will be sent before the end of this call, and after that, it won't be diff --git a/src/ray/rpc/server_call.h b/src/ray/rpc/server_call.h -index 659ee5841d..a806ded3b7 100644 +index 635f02cd7c..d646ffa991 100644 --- a/src/ray/rpc/server_call.h +++ b/src/ray/rpc/server_call.h @@ -193,7 +193,7 @@ class ServerCallImpl : public ServerCall { @@ -190,10 +190,10 @@ index 659ee5841d..a806ded3b7 100644 RAY_CHECK(!call_name_.empty()) << "Call name is empty"; if (record_metrics_) { diff --git a/src/ray/util/event.cc b/src/ray/util/event.cc -index 4de0e14ea4..6520d7449e 100644 +index 16c723e27c..e99df202c9 100644 --- a/src/ray/util/event.cc +++ b/src/ray/util/event.cc -@@ -136,7 +136,7 @@ std::string LogEventReporter::ExportEventToString(const rpc::ExportEvent &export +@@ -140,7 +140,7 @@ std::string LogEventReporter::ExportEventToString(const rpc::ExportEvent &export google::protobuf::util::JsonPrintOptions options; options.preserve_proto_field_names = true; // Required so enum with value 0 is not omitted @@ -202,3 +202,6 @@ index 4de0e14ea4..6520d7449e 100644 if (export_event.has_task_event_data()) { RAY_CHECK(google::protobuf::util::MessageToJsonString( export_event.task_event_data(), &event_data_as_string, options) +-- +2.43.0 + From 902e755de38d2d6acb41835cee15d0d345dca935 Mon Sep 17 00:00:00 2001 From: Austin Morton Date: Wed, 26 Mar 2025 13:01:00 -0500 Subject: [PATCH 4/8] yikes --- recipe/patches/0005-Vendor-grpc-1.71.0.patch | 127 ++++++++++++++++++- 1 file changed, 122 insertions(+), 5 deletions(-) diff --git a/recipe/patches/0005-Vendor-grpc-1.71.0.patch b/recipe/patches/0005-Vendor-grpc-1.71.0.patch index 58aabba1..2a5ce0ee 100644 --- a/recipe/patches/0005-Vendor-grpc-1.71.0.patch +++ b/recipe/patches/0005-Vendor-grpc-1.71.0.patch @@ -1,17 +1,134 @@ -From 7f7d6f4e20cf459567daae264f283a7d6281d0c4 Mon Sep 17 00:00:00 2001 +From 39f6b8b4aeb34f2273f82bc96d6c6694235b4c8c Mon Sep 17 00:00:00 2001 From: Austin Morton -Date: Wed, 26 Mar 2025 09:24:39 -0500 +Date: Wed, 26 Mar 2025 12:43:17 -0500 Subject: [PATCH] Vendor grpc-1.71.0 --- - bazel/ray_deps_setup.bzl | 31 +++++++------------ + BUILD.bazel | 41 +------------------ + WORKSPACE | 35 ---------------- + bazel/ray_deps_setup.bzl | 31 ++++++-------- .../task_event_buffer_export_event_test.cc | 2 +- - .../gcs_server/test/gcs_actor_manager_test.cc | 14 ++++----- + .../gcs_server/test/gcs_actor_manager_test.cc | 14 +++---- src/ray/raylet_client/raylet_client.cc | 2 +- src/ray/rpc/server_call.h | 2 +- src/ray/util/event.cc | 2 +- - 6 files changed, 23 insertions(+), 30 deletions(-) + 8 files changed, 24 insertions(+), 105 deletions(-) +diff --git a/BUILD.bazel b/BUILD.bazel +index 7237ab205e..be56c7f383 100644 +--- a/BUILD.bazel ++++ b/BUILD.bazel +@@ -11,53 +11,14 @@ load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library") + load("@com_github_grpc_grpc//bazel:cc_grpc_library.bzl", "cc_grpc_library") + load("@com_github_grpc_grpc//bazel:cython_library.bzl", "pyx_library") + load("@hedron_compile_commands//:refresh_compile_commands.bzl", "refresh_compile_commands") +-load("@python3_9//:defs.bzl", python39 = "interpreter") + load("@rules_cc//cc:defs.bzl", "cc_proto_library") + load("@rules_proto//proto:defs.bzl", "proto_library") +-load("@rules_python//python:defs.bzl", "py_library", "py_runtime", "py_runtime_pair") + load("//bazel:ray.bzl", "COPTS", "PYX_COPTS", "PYX_SRCS", "copy_to_workspace", "ray_cc_binary", "ray_cc_library", "ray_cc_test") + + package( + default_visibility = ["//visibility:public"], + ) + +-# Hermetic python environment, currently only used for CI infra and scripts. +- +-py_runtime( +- name = "python3_runtime", +- interpreter = python39, +- python_version = "PY3", +- visibility = ["//visibility:private"], +-) +- +-py_runtime_pair( +- name = "python_runtime_pair", +- py2_runtime = None, +- py3_runtime = ":python3_runtime", +- visibility = ["//visibility:private"], +-) +- +-constraint_setting(name = "hermetic") +- +-constraint_value( +- name = "hermetic_python", +- constraint_setting = ":hermetic", +-) +- +-toolchain( +- name = "python_toolchain", +- exec_compatible_with = [":hermetic_python"], +- toolchain = ":python_runtime_pair", +- toolchain_type = "@bazel_tools//tools/python:toolchain_type", +-) +- +-platform( +- name = "hermetic_python_platform", +- constraint_values = [":hermetic_python"], +- parents = ["@local_config_platform//:host"], +- visibility = ["//visibility:private"], +-) +- + # C/C++ toolchain constraint configs. + + config_setting( +@@ -796,7 +757,7 @@ ray_cc_library( + "//src/ray/util:throttler", + "//src/ray/util:type_traits", + "@boost//:bimap", +- "@com_github_grpc_grpc//src/proto/grpc/health/v1:health_proto", ++ "@com_github_grpc_grpc//src/proto/grpc/health/v1:health_cc_grpc", + "@com_google_absl//absl/container:btree", + ], + ) +diff --git a/WORKSPACE b/WORKSPACE +index 7aa6899af6..eec152bf60 100644 +--- a/WORKSPACE ++++ b/WORKSPACE +@@ -37,43 +37,8 @@ load("@hedron_compile_commands//:workspace_setup.bzl", "hedron_compile_commands_ + + hedron_compile_commands_setup() + +-http_archive( +- name = "rules_python", +- sha256 = "c68bdc4fbec25de5b5493b8819cfc877c4ea299c0dcb15c244c5a00208cde311", +- strip_prefix = "rules_python-0.31.0", +- url = "https://github.com/bazelbuild/rules_python/releases/download/0.31.0/rules_python-0.31.0.tar.gz", +-) +- +-load("@rules_python//python:repositories.bzl", "python_register_toolchains") +- +-python_register_toolchains( +- name = "python3_9", +- python_version = "3.9", +- register_toolchains = False, +-) +- +-load("@python3_9//:defs.bzl", python39 = "interpreter") +-load("@rules_python//python/pip_install:repositories.bzl", "pip_install_dependencies") +- +-pip_install_dependencies() +- +-load("@rules_python//python:pip.bzl", "pip_parse") +- +-pip_parse( +- name = "py_deps_buildkite", +- python_interpreter_target = python39, +- requirements_lock = "//release:requirements_buildkite.txt", +-) +- +-load("@py_deps_buildkite//:requirements.bzl", install_py_deps_buildkite = "install_deps") +- +-install_py_deps_buildkite() +- +-register_toolchains("//:python_toolchain") +- + register_execution_platforms( + "@local_config_platform//:host", +- "//:hermetic_python_platform", + ) + + http_archive( diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl index 952cbc855a..1f657c6ba3 100644 --- a/bazel/ray_deps_setup.bzl From 55a69a3bd312dff82ce1a3412c7284304639e429 Mon Sep 17 00:00:00 2001 From: "conda-forge-webservices[bot]" <91080706+conda-forge-webservices[bot]@users.noreply.github.com> Date: Fri, 2 May 2025 20:45:37 +0000 Subject: [PATCH 5/8] MNT: Re-rendered with conda-build 25.4.2, conda-smithy 3.48.1, and conda-forge-pinning 2025.05.02.10.53.25 --- .scripts/run_docker_build.sh | 2 +- .scripts/run_win_build.bat | 2 +- build-locally.py | 47 +++++++++++++++++++++++++----------- 3 files changed, 35 insertions(+), 16 deletions(-) diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh index 00f377a8..6ee04aa1 100755 --- a/.scripts/run_docker_build.sh +++ b/.scripts/run_docker_build.sh @@ -12,7 +12,7 @@ source .scripts/logging_utils.sh set -xeo pipefail THISDIR="$( cd "$( dirname "$0" )" >/dev/null && pwd )" -PROVIDER_DIR="$(basename $THISDIR)" +PROVIDER_DIR="$(basename "$THISDIR")" FEEDSTOCK_ROOT="$( cd "$( dirname "$0" )/.." >/dev/null && pwd )" RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat index 283e1438..297498b1 100755 --- a/.scripts/run_win_build.bat +++ b/.scripts/run_win_build.bat @@ -25,7 +25,7 @@ set "MICROMAMBA_EXE=%MICROMAMBA_TMPDIR%\micromamba.exe" echo Downloading micromamba %MICROMAMBA_VERSION% if not exist "%MICROMAMBA_TMPDIR%" mkdir "%MICROMAMBA_TMPDIR%" -certutil -urlcache -split -f "%MICROMAMBA_URL%" "%MICROMAMBA_EXE%" +powershell -ExecutionPolicy Bypass -Command "(New-Object Net.WebClient).DownloadFile('%MICROMAMBA_URL%', '%MICROMAMBA_EXE%')" if !errorlevel! neq 0 exit /b !errorlevel! echo Creating environment diff --git a/build-locally.py b/build-locally.py index c4a56c66..02c23747 100755 --- a/build-locally.py +++ b/build-locally.py @@ -10,6 +10,7 @@ import os import platform import subprocess +import sys from argparse import ArgumentParser @@ -44,10 +45,19 @@ def run_osx_build(ns): subprocess.check_call([script]) +def run_win_build(ns): + script = ".scripts/run_win_build.bat" + subprocess.check_call(["cmd", "/D", "/Q", "/C", f"CALL {script}"]) + + def verify_config(ns): + choices_filter = ns.filter or "*" valid_configs = { - os.path.basename(f)[:-5] for f in glob.glob(".ci_support/*.yaml") + os.path.basename(f)[:-5] + for f in glob.glob(f".ci_support/{choices_filter}.yaml") } + if choices_filter != "*": + print(f"filtering for '{choices_filter}.yaml' configs") print(f"valid configs are {valid_configs}") if ns.config in valid_configs: print("Using " + ns.config + " configuration") @@ -60,30 +70,37 @@ def verify_config(ns): selections = list(enumerate(sorted(valid_configs), 1)) for i, c in selections: print(f"{i}. {c}") - s = input("\n> ") + try: + s = input("\n> ") + except KeyboardInterrupt: + print("\nno option selected, bye!", file=sys.stderr) + sys.exit(1) idx = int(s) - 1 ns.config = selections[idx][1] print(f"selected {ns.config}") else: raise ValueError("config " + ns.config + " is not valid") - # Remove the following, as implemented - if ns.config.startswith("win"): - raise ValueError( - f"only Linux/macOS configs currently supported, got {ns.config}" + if ( + ns.config.startswith("osx") + and platform.system() == "Darwin" + and not os.environ.get("OSX_SDK_DIR") + ): + raise RuntimeError( + "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=$PWD/SDKs' " + "to download the SDK automatically to '$PWD/SDKs/MacOSX.sdk'. " + "Note: OSX_SDK_DIR must be set to an absolute path. " + "Setting this variable implies agreement to the licensing terms of the SDK by Apple." ) - elif ns.config.startswith("osx"): - if "OSX_SDK_DIR" not in os.environ: - raise RuntimeError( - "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=$PWD/SDKs' " - "to download the SDK automatically to '$PWD/SDKs/MacOSX.sdk'. " - "Note: OSX_SDK_DIR must be set to an absolute path. " - "Setting this variable implies agreement to the licensing terms of the SDK by Apple." - ) def main(args=None): p = ArgumentParser("build-locally") p.add_argument("config", default=None, nargs="?") + p.add_argument( + "--filter", + default=None, + help="Glob string to filter which build choices are presented in interactive mode.", + ) p.add_argument( "--debug", action="store_true", @@ -104,6 +121,8 @@ def main(args=None): run_docker_build(ns) elif ns.config.startswith("osx"): run_osx_build(ns) + elif ns.config.startswith("win"): + run_win_build(ns) finally: recipe_license_file = os.path.join( "recipe", "recipe-scripts-license.txt" From f4753cb096b92d17ee2b0a49842a1e8a055a6782 Mon Sep 17 00:00:00 2001 From: Austin Morton Date: Fri, 2 May 2025 16:53:55 -0500 Subject: [PATCH 6/8] some things, maybe fix macos build? --- .azure-pipelines/azure-pipelines-linux.yml | 8 +-- .../linux_64_python3.10.____cpython.yaml | 4 +- .../linux_64_python3.11.____cpython.yaml | 4 +- .../linux_64_python3.12.____cpython.yaml | 4 +- .../linux_64_python3.9.____cpython.yaml | 4 +- recipe/build-core.sh | 12 ++-- recipe/conda_build_config.yaml | 9 --- recipe/meta.yaml | 2 - ...patch-protobuf-use-of-nan-on-windows.patch | 64 ------------------- 9 files changed, 16 insertions(+), 95 deletions(-) delete mode 100644 recipe/patches/0008-patch-protobuf-use-of-nan-on-windows.patch diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index 3db01d7b..96252642 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -11,19 +11,19 @@ jobs: linux_64_python3.10.____cpython: CONFIG: linux_64_python3.10.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 linux_64_python3.11.____cpython: CONFIG: linux_64_python3.11.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 linux_64_python3.12.____cpython: CONFIG: linux_64_python3.12.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 linux_64_python3.9.____cpython: CONFIG: linux_64_python3.9.____cpython UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 timeoutInMinutes: 360 variables: {} diff --git a/.ci_support/linux_64_python3.10.____cpython.yaml b/.ci_support/linux_64_python3.10.____cpython.yaml index fb31baa3..79e677e7 100644 --- a/.ci_support/linux_64_python3.10.____cpython.yaml +++ b/.ci_support/linux_64_python3.10.____cpython.yaml @@ -7,7 +7,7 @@ c_stdlib: c_stdlib_version: - '2.17' cdt_name: -- cos7 +- conda channel_sources: - conda-forge channel_targets: @@ -19,7 +19,7 @@ cxx_compiler: cxx_compiler_version: - '13' docker_image: -- quay.io/condaforge/linux-anvil-cos7-x86_64 +- quay.io/condaforge/linux-anvil-x86_64:alma9 libgrpc: - '1.71' nodejs: diff --git a/.ci_support/linux_64_python3.11.____cpython.yaml b/.ci_support/linux_64_python3.11.____cpython.yaml index d8d370ff..c4a0b5c9 100644 --- a/.ci_support/linux_64_python3.11.____cpython.yaml +++ b/.ci_support/linux_64_python3.11.____cpython.yaml @@ -7,7 +7,7 @@ c_stdlib: c_stdlib_version: - '2.17' cdt_name: -- cos7 +- conda channel_sources: - conda-forge channel_targets: @@ -19,7 +19,7 @@ cxx_compiler: cxx_compiler_version: - '13' docker_image: -- quay.io/condaforge/linux-anvil-cos7-x86_64 +- quay.io/condaforge/linux-anvil-x86_64:alma9 libgrpc: - '1.71' nodejs: diff --git a/.ci_support/linux_64_python3.12.____cpython.yaml b/.ci_support/linux_64_python3.12.____cpython.yaml index 30b40d39..b91002d6 100644 --- a/.ci_support/linux_64_python3.12.____cpython.yaml +++ b/.ci_support/linux_64_python3.12.____cpython.yaml @@ -7,7 +7,7 @@ c_stdlib: c_stdlib_version: - '2.17' cdt_name: -- cos7 +- conda channel_sources: - conda-forge channel_targets: @@ -19,7 +19,7 @@ cxx_compiler: cxx_compiler_version: - '13' docker_image: -- quay.io/condaforge/linux-anvil-cos7-x86_64 +- quay.io/condaforge/linux-anvil-x86_64:alma9 libgrpc: - '1.71' nodejs: diff --git a/.ci_support/linux_64_python3.9.____cpython.yaml b/.ci_support/linux_64_python3.9.____cpython.yaml index d282af93..59e314f4 100644 --- a/.ci_support/linux_64_python3.9.____cpython.yaml +++ b/.ci_support/linux_64_python3.9.____cpython.yaml @@ -7,7 +7,7 @@ c_stdlib: c_stdlib_version: - '2.17' cdt_name: -- cos7 +- conda channel_sources: - conda-forge channel_targets: @@ -19,7 +19,7 @@ cxx_compiler: cxx_compiler_version: - '13' docker_image: -- quay.io/condaforge/linux-anvil-cos7-x86_64 +- quay.io/condaforge/linux-anvil-x86_64:alma9 libgrpc: - '1.71' nodejs: diff --git a/recipe/build-core.sh b/recipe/build-core.sh index 3a8039fe..98fa67c4 100644 --- a/recipe/build-core.sh +++ b/recipe/build-core.sh @@ -16,17 +16,13 @@ if [[ "$target_platform" == osx* ]]; then sed -i"''" -e'/stdlib=libc/d' $CONDA_PREFIX/share/bazel_toolchain/CROSSTOOL.template source gen-bazel-toolchain cat >> .bazelrc < -Date: Wed, 5 Feb 2025 22:39:59 +1100 -Subject: [PATCH 08/11] patch protobuf use of nan on windows - ---- - bazel/ray_deps_setup.bzl | 4 +++ - .../patches/protobuf-windows-const-nan.patch | 32 +++++++++++++++++++ - 2 files changed, 36 insertions(+) - create mode 100644 thirdparty/patches/protobuf-windows-const-nan.patch - -diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl -index 79ab6931b1..4854ebf558 100644 ---- a/bazel/ray_deps_setup.bzl -+++ b/bazel/ray_deps_setup.bzl -@@ -93,6 +93,10 @@ def ray_deps_setup(): - urls = [ - "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v28.2.tar.gz", - ], -+ patches = [ -+ "@com_github_ray_project_ray//thirdparty/patches:protobuf-windows-const-nan.patch", -+ -+ ], - ) - - # NOTE(lingxuan.zlx): 3rd party dependencies could be accessed, so it suggests -diff --git a/thirdparty/patches/protobuf-windows-const-nan.patch b/thirdparty/patches/protobuf-windows-const-nan.patch -new file mode 100644 -index 0000000000..ad30746c72 ---- /dev/null -+++ b/thirdparty/patches/protobuf-windows-const-nan.patch -@@ -0,0 +1,32 @@ -+diff -u upb/message/internal/message.c /tmp/message.c -+--- upb/message/internal/message.c -++++ upb/message/internal/message.c -+@@ -19,7 +19,27 @@ -+ -+ const float kUpb_FltInfinity = INFINITY; -+ const double kUpb_Infinity = INFINITY; -+-const double kUpb_NaN = NAN; -++ -++// The latest win32 SDKs have an invalid definition of NAN. -++// https://developercommunity.visualstudio.com/t/NAN-is-no-longer-compile-time-constant-i/10688907 -++// -++// Unfortunately, the `0.0 / 0.0` workaround doesn't work in Clang under C23, so -++// try __builtin_nan first, if that exists. -++#ifdef _WIN32 -++#ifdef __has_builtin -++#if __has_builtin(__builtin_nan) -++#define UPB_NAN __builtin_nan("0") -++#endif -++#endif -++#ifndef UPB_NAN -++#define UPB_NAN 0.0 / 0.0 -++#endif -++#else -++// For !_WIN32, assume math.h works. -++#define UPB_NAN NAN -++#endif -++const double kUpb_NaN = UPB_NAN; -++ -+ -+ bool UPB_PRIVATE(_upb_Message_Realloc)(struct upb_Message* msg, size_t need, -+ upb_Arena* a) { From a624e6367d237008e66df802811e8682924d72e2 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 13 May 2025 17:49:38 +1100 Subject: [PATCH 7/8] rebase patches --- recipe/meta.yaml | 6 +- .../0001-Disable-making-entry-scripts.patch | 7 +- ...-warnings-in-event.cc-and-logging.cc.patch | 11 ++- recipe/patches/0003-remove-dependencies.patch | 7 +- recipe/patches/0004-Vendor-grpc-1.71.0.patch | 70 ++++++++----------- ...005-remove-stdlib-libc-from-.bazelrc.patch | 9 +-- ...ch-zlib-in-prometheus-cpp-and-boost.patch} | 11 ++- ...e.patch => 0007-add-missing-include.patch} | 7 +- ...mt-in-spdlog-for-invalid-char8_type.patch} | 11 ++- 9 files changed, 53 insertions(+), 86 deletions(-) rename recipe/patches/{0007-patch-zlib-in-prometheus-cpp-and-boost.patch => 0006-patch-zlib-in-prometheus-cpp-and-boost.patch} (88%) rename recipe/patches/{0008-add-missing-include.patch => 0007-add-missing-include.patch} (84%) rename recipe/patches/{0009-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch => 0008-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch} (91%) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index f9fefb04..09a47707 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -16,11 +16,11 @@ source: # ABI breakage - patches/0004-Vendor-grpc-1.71.0.patch - patches/0005-remove-stdlib-libc-from-.bazelrc.patch - - patches/0007-patch-zlib-in-prometheus-cpp-and-boost.patch + - patches/0006-patch-zlib-in-prometheus-cpp-and-boost.patch # Add missing include in new logging code for different absl - - patches/0008-add-missing-include.patch + - patches/0007-add-missing-include.patch # Patch bundled fmtlib/fmt in spdlog for char8_type which is invalid on macOS - - patches/0009-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch + - patches/0008-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch build: number: 1 diff --git a/recipe/patches/0001-Disable-making-entry-scripts.patch b/recipe/patches/0001-Disable-making-entry-scripts.patch index d56fd9f0..d0d8ebb8 100644 --- a/recipe/patches/0001-Disable-making-entry-scripts.patch +++ b/recipe/patches/0001-Disable-making-entry-scripts.patch @@ -1,7 +1,7 @@ -From 4572d7fc7e2cbf02c2d520577d7c50344b272c64 Mon Sep 17 00:00:00 2001 +From 40f7950780aa2a522a9daf866f91b10e96c9b68e Mon Sep 17 00:00:00 2001 From: Vasily Litvinov Date: Tue, 10 Nov 2020 23:26:35 +0300 -Subject: [PATCH 1/9] Disable making entry scripts +Subject: [PATCH 1/8] Disable making entry scripts --- python/setup.py | 6 +++--- @@ -24,6 +24,3 @@ index 838f3aa744..c287eb4cc1 100644 ] }, package_data={ --- -2.43.0 - diff --git a/recipe/patches/0002-Ignore-warnings-in-event.cc-and-logging.cc.patch b/recipe/patches/0002-Ignore-warnings-in-event.cc-and-logging.cc.patch index 31ec02f0..a864fba5 100644 --- a/recipe/patches/0002-Ignore-warnings-in-event.cc-and-logging.cc.patch +++ b/recipe/patches/0002-Ignore-warnings-in-event.cc-and-logging.cc.patch @@ -1,14 +1,14 @@ -From 4d2046a891d75eb52f0837fe41065756dc2cf642 Mon Sep 17 00:00:00 2001 +From 9c56c8b45e86273f7ffe9e2e5bbf9b8321599048 Mon Sep 17 00:00:00 2001 From: Vasily Litvinov -Date: Fri, 9 May 2025 13:12:32 +0300 -Subject: [PATCH 2/9] Ignore warnings in event.cc and logging.cc +Date: Sun, 19 Jan 2025 22:56:08 +1100 +Subject: [PATCH 2/8] Ignore warnings in event.cc and logging.cc --- .bazelrc | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.bazelrc b/.bazelrc -index 13774dda7c..575538c5f1 100644 +index 13774dda7c..7db790a4bf 100644 --- a/.bazelrc +++ b/.bazelrc @@ -57,6 +57,9 @@ build:clang-cl --per_file_copt="-\\.(asm|S)$@-Werror" @@ -21,6 +21,3 @@ index 13774dda7c..575538c5f1 100644 build:linux --per_file_copt="-\\.(asm|S)$,external/.*@-w,-Wno-error=implicit-function-declaration,-Wno-error=unused-function" build:macos --per_file_copt="-\\.(asm|S)$,external/.*@-w,-Wno-error=implicit-function-declaration,-Wno-error=unused-function,-Wno-missing-template-arg-list-after-template-kw" # Ignore warnings for host tools, which we generally can't control. --- -2.43.0 - diff --git a/recipe/patches/0003-remove-dependencies.patch b/recipe/patches/0003-remove-dependencies.patch index 636829c4..2e2ec1d4 100644 --- a/recipe/patches/0003-remove-dependencies.patch +++ b/recipe/patches/0003-remove-dependencies.patch @@ -1,7 +1,7 @@ -From 2595ec41a9d00d40b8b56442087f109307f403ec Mon Sep 17 00:00:00 2001 +From 1b737bc4a1a98662566759c6b3f73ecfe2fabb0c Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 28 Feb 2025 15:22:50 +0200 -Subject: [PATCH 3/9] remove dependencies +Subject: [PATCH 3/8] remove dependencies --- python/setup.py | 159 +++++------------------------------------------- @@ -203,6 +203,3 @@ index c287eb4cc1..25b08d3540 100644 extras_require=setup_spec.extras, entry_points={ "console_scripts": [ --- -2.43.0 - diff --git a/recipe/patches/0004-Vendor-grpc-1.71.0.patch b/recipe/patches/0004-Vendor-grpc-1.71.0.patch index 2a5ce0ee..688e7e61 100644 --- a/recipe/patches/0004-Vendor-grpc-1.71.0.patch +++ b/recipe/patches/0004-Vendor-grpc-1.71.0.patch @@ -1,21 +1,21 @@ -From 39f6b8b4aeb34f2273f82bc96d6c6694235b4c8c Mon Sep 17 00:00:00 2001 +From 33595f15768c853eed73513fd82c85efcaf056ce Mon Sep 17 00:00:00 2001 From: Austin Morton Date: Wed, 26 Mar 2025 12:43:17 -0500 -Subject: [PATCH] Vendor grpc-1.71.0 +Subject: [PATCH 4/8] Vendor grpc-1.71.0 --- - BUILD.bazel | 41 +------------------ - WORKSPACE | 35 ---------------- - bazel/ray_deps_setup.bzl | 31 ++++++-------- + BUILD.bazel | 39 ------------------- + WORKSPACE | 35 ----------------- + bazel/ray_deps_setup.bzl | 31 ++++++--------- .../task_event_buffer_export_event_test.cc | 2 +- .../gcs_server/test/gcs_actor_manager_test.cc | 14 +++---- src/ray/raylet_client/raylet_client.cc | 2 +- src/ray/rpc/server_call.h | 2 +- src/ray/util/event.cc | 2 +- - 8 files changed, 24 insertions(+), 105 deletions(-) + 8 files changed, 23 insertions(+), 104 deletions(-) diff --git a/BUILD.bazel b/BUILD.bazel -index 7237ab205e..be56c7f383 100644 +index 1760705429..c1e4849ecf 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -11,53 +11,14 @@ load("@com_github_google_flatbuffers//:build_defs.bzl", "flatbuffer_cc_library") @@ -26,7 +26,7 @@ index 7237ab205e..be56c7f383 100644 load("@rules_cc//cc:defs.bzl", "cc_proto_library") load("@rules_proto//proto:defs.bzl", "proto_library") -load("@rules_python//python:defs.bzl", "py_library", "py_runtime", "py_runtime_pair") - load("//bazel:ray.bzl", "COPTS", "PYX_COPTS", "PYX_SRCS", "copy_to_workspace", "ray_cc_binary", "ray_cc_library", "ray_cc_test") + load("//bazel:ray.bzl", "COPTS", "FLATC_ARGS", "PYX_COPTS", "PYX_SRCS", "copy_to_workspace", "ray_cc_binary", "ray_cc_library", "ray_cc_test") package( default_visibility = ["//visibility:public"], @@ -72,17 +72,8 @@ index 7237ab205e..be56c7f383 100644 # C/C++ toolchain constraint configs. config_setting( -@@ -796,7 +757,7 @@ ray_cc_library( - "//src/ray/util:throttler", - "//src/ray/util:type_traits", - "@boost//:bimap", -- "@com_github_grpc_grpc//src/proto/grpc/health/v1:health_proto", -+ "@com_github_grpc_grpc//src/proto/grpc/health/v1:health_cc_grpc", - "@com_google_absl//absl/container:btree", - ], - ) diff --git a/WORKSPACE b/WORKSPACE -index 7aa6899af6..eec152bf60 100644 +index 590d4cb0b6..0667f90f6a 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -37,43 +37,8 @@ load("@hedron_compile_commands//:workspace_setup.bzl", "hedron_compile_commands_ @@ -130,7 +121,7 @@ index 7aa6899af6..eec152bf60 100644 http_archive( diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl -index 952cbc855a..1f657c6ba3 100644 +index 0db8ebee2d..0febc47491 100644 --- a/bazel/ray_deps_setup.bzl +++ b/bazel/ray_deps_setup.bzl @@ -86,20 +86,13 @@ def auto_http_archive( @@ -148,16 +139,16 @@ index 952cbc855a..1f657c6ba3 100644 + strip_prefix = "protobuf-29.3", urls = [ - "https://github.com/protocolbuffers/protobuf/archive/2c5fa078d8e86e5f4bd34e6f4c9ea9e8d7d4d44a.tar.gz", -- ], -- patches = [ -- "@com_github_grpc_grpc//third_party:protobuf.patch", + "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v29.3.tar.gz", ], +- patches = [ +- "@com_github_grpc_grpc//third_party:protobuf.patch", +- ], - patch_args = ["-p1"], ) # NOTE(lingxuan.zlx): 3rd party dependencies could be accessed, so it suggests -@@ -228,10 +221,10 @@ def ray_deps_setup(): +@@ -229,10 +222,10 @@ def ray_deps_setup(): # TODO(owner): Upgrade abseil to latest version after protobuf updated, which requires to upgrade `rules_cc` first. auto_http_archive( name = "com_google_absl", @@ -171,7 +162,7 @@ index 952cbc855a..1f657c6ba3 100644 ], ) -@@ -251,8 +244,8 @@ def ray_deps_setup(): +@@ -253,8 +246,8 @@ def ray_deps_setup(): auto_http_archive( name = "com_github_grpc_grpc", # NOTE: If you update this, also update @boringssl's hash. @@ -181,8 +172,8 @@ index 952cbc855a..1f657c6ba3 100644 + sha256 = "0d631419e54ec5b29def798623ee3bf5520dac77abeab3284ef7027ec2363f91", patches = [ "@com_github_ray_project_ray//thirdparty/patches:grpc-cython-copts.patch", - ], -@@ -294,13 +287,13 @@ def ray_deps_setup(): + "@com_github_ray_project_ray//thirdparty/patches:grpc-zlib-fdopen.patch", +@@ -297,13 +290,13 @@ def ray_deps_setup(): http_archive( # This rule is used by @com_github_grpc_grpc, and using a GitHub mirror # provides a deterministic archive hash for caching. Explanation here: @@ -201,10 +192,10 @@ index 952cbc855a..1f657c6ba3 100644 ) diff --git a/src/ray/core_worker/test/task_event_buffer_export_event_test.cc b/src/ray/core_worker/test/task_event_buffer_export_event_test.cc -index aff5cc624f..8968f98576 100644 +index f3869be7ff..36873eda0f 100644 --- a/src/ray/core_worker/test/task_event_buffer_export_event_test.cc +++ b/src/ray/core_worker/test/task_event_buffer_export_event_test.cc -@@ -135,7 +135,7 @@ TEST_F(TaskEventTestWriteExport, TestWriteTaskExportEvents) { +@@ -139,7 +139,7 @@ TEST_F(TaskEventTestWriteExport, TestWriteTaskExportEvents) { auto task_ids = GenTaskIDs(num_events); google::protobuf::util::JsonPrintOptions options; options.preserve_proto_field_names = true; @@ -214,10 +205,10 @@ index aff5cc624f..8968f98576 100644 std::vector source_types = { rpc::ExportEvent_SourceType::ExportEvent_SourceType_EXPORT_TASK}; diff --git a/src/ray/gcs/gcs_server/test/gcs_actor_manager_test.cc b/src/ray/gcs/gcs_server/test/gcs_actor_manager_test.cc -index e4b3a663cc..2625555d3e 100644 +index 810f6c3c2c..e51317806c 100644 --- a/src/ray/gcs/gcs_server/test/gcs_actor_manager_test.cc +++ b/src/ray/gcs/gcs_server/test/gcs_actor_manager_test.cc -@@ -1284,7 +1284,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { +@@ -1288,7 +1288,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { request.mutable_filters()->set_actor_id(actor->GetActorID().Binary()); auto &reply = @@ -226,7 +217,7 @@ index e4b3a663cc..2625555d3e 100644 gcs_actor_manager_->HandleGetAllActorInfo(request, &reply, callback); ASSERT_EQ(reply.actor_table_data().size(), 1); ASSERT_EQ(reply.total(), 1 + num_other_actors); -@@ -1297,7 +1297,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { +@@ -1301,7 +1301,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { request.mutable_filters()->set_job_id(job_id.Binary()); auto &reply = @@ -235,7 +226,7 @@ index e4b3a663cc..2625555d3e 100644 gcs_actor_manager_->HandleGetAllActorInfo(request, &reply, callback); ASSERT_EQ(reply.actor_table_data().size(), 1); ASSERT_EQ(reply.num_filtered(), num_other_actors); -@@ -1309,7 +1309,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { +@@ -1313,7 +1313,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { request.mutable_filters()->set_state(rpc::ActorTableData::ALIVE); auto &reply = @@ -244,7 +235,7 @@ index e4b3a663cc..2625555d3e 100644 gcs_actor_manager_->HandleGetAllActorInfo(request, &reply, callback); ASSERT_EQ(reply.actor_table_data().size(), 1); ASSERT_EQ(reply.num_filtered(), num_other_actors); -@@ -1322,7 +1322,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { +@@ -1326,7 +1326,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { request.mutable_filters()->set_job_id(job_id.Binary()); auto &reply = @@ -253,7 +244,7 @@ index e4b3a663cc..2625555d3e 100644 gcs_actor_manager_->HandleGetAllActorInfo(request, &reply, callback); ASSERT_EQ(reply.actor_table_data().size(), 1); ASSERT_EQ(reply.num_filtered(), num_other_actors); -@@ -1333,7 +1333,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { +@@ -1337,7 +1337,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoFilters) { request.mutable_filters()->set_job_id(job_id.Binary()); auto &reply = @@ -262,7 +253,7 @@ index e4b3a663cc..2625555d3e 100644 gcs_actor_manager_->HandleGetAllActorInfo(request, &reply, callback); ASSERT_EQ(reply.num_filtered(), num_other_actors + 1); ASSERT_EQ(reply.actor_table_data().size(), 0); -@@ -1358,7 +1358,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoLimit) { +@@ -1362,7 +1362,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoLimit) { { rpc::GetAllActorInfoRequest request; auto &reply = @@ -271,7 +262,7 @@ index e4b3a663cc..2625555d3e 100644 auto callback = [](Status status, std::function success, std::function failure) {}; -@@ -1367,7 +1367,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoLimit) { +@@ -1371,7 +1371,7 @@ TEST_F(GcsActorManagerTest, TestGetAllActorInfoLimit) { request.set_limit(2); auto &reply_2 = @@ -281,7 +272,7 @@ index e4b3a663cc..2625555d3e 100644 ASSERT_EQ(reply_2.actor_table_data().size(), 2); ASSERT_EQ(reply_2.total(), 3); diff --git a/src/ray/raylet_client/raylet_client.cc b/src/ray/raylet_client/raylet_client.cc -index 5ad695d2f5..f8b9ca2d4f 100644 +index aeeb53ee77..c191f39e16 100644 --- a/src/ray/raylet_client/raylet_client.cc +++ b/src/ray/raylet_client/raylet_client.cc @@ -246,7 +246,7 @@ void RayletClient::RequestWorkerLease( @@ -294,7 +285,7 @@ index 5ad695d2f5..f8b9ca2d4f 100644 // task_spec is longer than request. // Request will be sent before the end of this call, and after that, it won't be diff --git a/src/ray/rpc/server_call.h b/src/ray/rpc/server_call.h -index 635f02cd7c..d646ffa991 100644 +index 4ad1885ca6..fd0cb3fbd9 100644 --- a/src/ray/rpc/server_call.h +++ b/src/ray/rpc/server_call.h @@ -193,7 +193,7 @@ class ServerCallImpl : public ServerCall { @@ -319,6 +310,3 @@ index 16c723e27c..e99df202c9 100644 if (export_event.has_task_event_data()) { RAY_CHECK(google::protobuf::util::MessageToJsonString( export_event.task_event_data(), &event_data_as_string, options) --- -2.43.0 - diff --git a/recipe/patches/0005-remove-stdlib-libc-from-.bazelrc.patch b/recipe/patches/0005-remove-stdlib-libc-from-.bazelrc.patch index 753439ae..4ddd6f6f 100644 --- a/recipe/patches/0005-remove-stdlib-libc-from-.bazelrc.patch +++ b/recipe/patches/0005-remove-stdlib-libc-from-.bazelrc.patch @@ -1,14 +1,14 @@ -From a043bfba8d99a0afaed2a8094e98ce6e5807cb39 Mon Sep 17 00:00:00 2001 +From 94162bf16702514ebf9edbe57800487ffd9357eb Mon Sep 17 00:00:00 2001 From: Matti Picus Date: Thu, 9 May 2024 05:13:50 +1000 -Subject: [PATCH 5/9] remove stdlib=libc++ from .bazelrc +Subject: [PATCH 5/8] remove stdlib=libc++ from .bazelrc --- .bazelrc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.bazelrc b/.bazelrc -index 575538c5f1..985fa85a8c 100644 +index 7db790a4bf..1e261f8e23 100644 --- a/.bazelrc +++ b/.bazelrc @@ -105,9 +105,9 @@ build:windows-debug --cxxopt="-D_ITERATOR_DEBUG_LEVEL=2" @@ -24,6 +24,3 @@ index 575538c5f1..985fa85a8c 100644 build:llvm --action_env=BAZEL_LINKLIBS=-l%:libc++.a:-l%:libc++abi.a build:llvm --action_env=BAZEL_LINKOPTS=-lm:-pthread build:llvm --define force_libcpp=enabled --- -2.43.0 - diff --git a/recipe/patches/0007-patch-zlib-in-prometheus-cpp-and-boost.patch b/recipe/patches/0006-patch-zlib-in-prometheus-cpp-and-boost.patch similarity index 88% rename from recipe/patches/0007-patch-zlib-in-prometheus-cpp-and-boost.patch rename to recipe/patches/0006-patch-zlib-in-prometheus-cpp-and-boost.patch index 75fc7eea..b95483bb 100644 --- a/recipe/patches/0007-patch-zlib-in-prometheus-cpp-and-boost.patch +++ b/recipe/patches/0006-patch-zlib-in-prometheus-cpp-and-boost.patch @@ -1,7 +1,7 @@ -From aa78d2977d03c61f5bf6e0fad847ab53ac02e2a9 Mon Sep 17 00:00:00 2001 +From 720d344df4c999a94a6345e759fac937ae4412f4 Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 9 May 2025 13:54:01 +0300 -Subject: [PATCH 7/9] patch zlib in prometheus-cpp and boost +Subject: [PATCH 6/8] patch zlib in prometheus-cpp and boost --- bazel/ray_deps_setup.bzl | 3 +++ @@ -10,10 +10,10 @@ Subject: [PATCH 7/9] patch zlib in prometheus-cpp and boost create mode 100644 thirdparty/patches/boost-zlib-fdopen.patch diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl -index a4117d0ca2..3e4569f8f1 100644 +index 0febc47491..495479f67d 100644 --- a/bazel/ray_deps_setup.bzl +++ b/bazel/ray_deps_setup.bzl -@@ -172,6 +172,9 @@ def ray_deps_setup(): +@@ -165,6 +165,9 @@ def ray_deps_setup(): # If you update the Boost version, remember to update the 'boost' rule. url = "https://github.com/nelhage/rules_boost/archive/57c99395e15720e287471d79178d36a85b64d6f6.tar.gz", sha256 = "490d11425393eed068966a4990ead1ff07c658f823fd982fddac67006ccc44ab", @@ -44,6 +44,3 @@ index 0000000000..026703b3b0 + maybe( + + --- -2.43.0 - diff --git a/recipe/patches/0008-add-missing-include.patch b/recipe/patches/0007-add-missing-include.patch similarity index 84% rename from recipe/patches/0008-add-missing-include.patch rename to recipe/patches/0007-add-missing-include.patch index 479a5cf1..1aa96bef 100644 --- a/recipe/patches/0008-add-missing-include.patch +++ b/recipe/patches/0007-add-missing-include.patch @@ -1,7 +1,7 @@ -From 8d3d2d6d1ea3ab789607917526fc9c7b7f0db3ed Mon Sep 17 00:00:00 2001 +From d1b03b28b8a2bb9c359a90080591d9ff5115cd53 Mon Sep 17 00:00:00 2001 From: mattip Date: Fri, 28 Feb 2025 15:29:57 +0200 -Subject: [PATCH 8/9] add-missing-include +Subject: [PATCH 7/8] add-missing-include --- src/ray/util/pipe_logger.cc | 1 + @@ -19,6 +19,3 @@ index 495ff3462a..a81a64f5dd 100644 #include "spdlog/sinks/basic_file_sink.h" #include "spdlog/sinks/rotating_file_sink.h" #include "spdlog/sinks/stdout_color_sinks.h" --- -2.43.0 - diff --git a/recipe/patches/0009-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch b/recipe/patches/0008-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch similarity index 91% rename from recipe/patches/0009-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch rename to recipe/patches/0008-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch index f8aead0a..df9de70c 100644 --- a/recipe/patches/0009-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch +++ b/recipe/patches/0008-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch @@ -1,7 +1,7 @@ -From f41db7dfb2133ced69ff7efb337c992ac14a3aef Mon Sep 17 00:00:00 2001 +From 52e7acdf0fa5af74ae90becd62b0badb3d3c92cd Mon Sep 17 00:00:00 2001 From: Matti Picus Date: Sun, 19 Jan 2025 23:17:01 +1100 -Subject: [PATCH 9/9] patch bundled fmt in spdlog for invalid char8_type +Subject: [PATCH 8/8] patch bundled fmt in spdlog for invalid char8_type --- bazel/ray_deps_setup.bzl | 1 + @@ -10,10 +10,10 @@ Subject: [PATCH 9/9] patch bundled fmt in spdlog for invalid char8_type create mode 100644 thirdparty/patches/spdlog-fmt-no-char8_type.patch diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl -index 3e4569f8f1..d04ec3442b 100644 +index 495479f67d..a96f0d10db 100644 --- a/bazel/ray_deps_setup.bzl +++ b/bazel/ray_deps_setup.bzl -@@ -134,6 +134,7 @@ def ray_deps_setup(): +@@ -127,6 +127,7 @@ def ray_deps_setup(): # spdlog rotation filename format conflict with ray, update the format. patches = [ "@com_github_ray_project_ray//thirdparty/patches:spdlog-rotation-file-format.patch", @@ -68,6 +68,3 @@ index 0000000000..fdcbba413d + #ifndef FMT_USE_FLOAT128 + # ifdef __SIZEOF_FLOAT128__ + # define FMT_USE_FLOAT128 1 --- -2.43.0 - From f6372962ccb9a35ed1e70d918bce4d0a94b02720 Mon Sep 17 00:00:00 2001 From: mattip Date: Wed, 14 May 2025 10:21:59 +0300 Subject: [PATCH 8/8] add patch to remove patching of zlib/zutil.h for fdopen in newer zlib --- recipe/meta.yaml | 2 ++ ...ve-zlib-patching-for-fdopen-on-macos.patch | 26 +++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 recipe/patches/0009-remove-zlib-patching-for-fdopen-on-macos.patch diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 09a47707..634d85d7 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -21,6 +21,8 @@ source: - patches/0007-add-missing-include.patch # Patch bundled fmtlib/fmt in spdlog for char8_type which is invalid on macOS - patches/0008-patch-bundled-fmt-in-spdlog-for-invalid-char8_type.patch + # Newer libgrpc does not need to patch zlib + - patches/0009-remove-zlib-patching-for-fdopen-on-macos.patch build: number: 1 diff --git a/recipe/patches/0009-remove-zlib-patching-for-fdopen-on-macos.patch b/recipe/patches/0009-remove-zlib-patching-for-fdopen-on-macos.patch new file mode 100644 index 00000000..e846cc01 --- /dev/null +++ b/recipe/patches/0009-remove-zlib-patching-for-fdopen-on-macos.patch @@ -0,0 +1,26 @@ +From cba149286e38c0deadf2649751b43e3732a1dba3 Mon Sep 17 00:00:00 2001 +From: mattip +Date: Wed, 14 May 2025 09:22:27 +0300 +Subject: [PATCH] remove zlib patching for fdopen on macos + +--- + bazel/ray_deps_setup.bzl | 1 - + thirdparty/patches/grpc-zlib-fdopen.patch | 13 ------------- + thirdparty/patches/zlib-fdopen.patch | 19 ------------------- + 3 files changed, 33 deletions(-) + delete mode 100644 thirdparty/patches/grpc-zlib-fdopen.patch + delete mode 100644 thirdparty/patches/zlib-fdopen.patch + +diff --git a/bazel/ray_deps_setup.bzl b/bazel/ray_deps_setup.bzl +index 0db8ebee2d..5607bba9d2 100644 +--- a/bazel/ray_deps_setup.bzl ++++ b/bazel/ray_deps_setup.bzl +@@ -254,7 +254,6 @@ def ray_deps_setup(): + sha256 = "0762f809b9de845e6a7c809cabccad6aa4143479fd43b396611fe5a086c0aeeb", + patches = [ + "@com_github_ray_project_ray//thirdparty/patches:grpc-cython-copts.patch", +- "@com_github_ray_project_ray//thirdparty/patches:grpc-zlib-fdopen.patch", + ], + ) + +