14951 Commits

Author SHA1 Message Date
yuanweiz
0111e45a64 [Bzlmod] Add --nobuild to bzlmod build test for cheaper validation. (#41431)
https://github.com/grpc/grpc/pull/41309 caused timeout because a full
build is too expensive.

This PR changes the new bazel command to use the --nobuild option. This
triggers bazel's "static" dependency analysis without compiling C++
code. This test does NOT detect issues caused by module
incompatibilities (e.g. some package doesn't build with new version of
absl).

---------

Co-authored-by: Mark D. Roth <roth@google.com>
2026-01-21 14:54:19 -08:00
Craig Tiller
b1eb9dea81 [tdigest] Remove code (#40933)
I added this in anticipation of wanting to use it, but that hasn't transpired... and we're seeing flaky tests. Removing for now.

Closes #40933

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40933 from ctiller:tdigest-- ba911bfe96cba57e0bfc97e13f0132c68dd67e64
PiperOrigin-RevId: 858731635
2026-01-20 13:38:52 -08:00
gRPC Team Bot
8679637161 Internal change
PiperOrigin-RevId: 858231029
2026-01-19 18:27:40 +00:00
Craig Tiller
f931c4a5e7 Revert "[Python] Modernize and revamp Public API Docs (#41287)" (#41443)
This reverts commit 977dd13944.

Temporary revert to help fix internal tooling
2026-01-19 10:09:11 -08:00
Sreenithi Sridharan
977dd13944 [Python] Modernize and revamp Public API Docs (#41287)
Modernize docs using pydata_sphinx_theme

[Screen recording 2025-12-22 4.54.40 PM.webm](https://github.com/user-attachments/assets/58b5254f-1357-4c09-9278-fb4763b5337d)

Also visible in Dark mode. (default is auto based on system settings)
<img width="2560" height="1440" alt="Screenshot 2025-12-22 5 01 55 PM" src="https://github.com/user-attachments/assets/f11e3705-d92c-4dfc-85d9-b09ae6a83661" />

Closes #41287

PiperOrigin-RevId: 857006550
2026-01-16 00:28:13 -08:00
yuanweiz
9e803bad0c [Bzlmod] upgrade googleapis to fix build failure with envoy_apis. (#41363)
What happened:
* An upgrade of envoy_api was introduced https://github.com/grpc/grpc/pull/41242
* Bazel now pick googleapis@0.0.0-20251003-2193a2bf because envoy_api requested it.
* googleapis has gone through a refactor somewhere in between 0.0.0-20240819-fe8ba054a and googleapis@0.0.0-20251003-2193a2bf. As a result `switched_rules` became completely broken for bzlmod. The new recommended approach for bzlmod is to use `googleapis-{cc,python,grpc-cc}`
* v1.78.0-pre1 BCR release is blocked, I had to add an overlay [patch](https://github.com/bazelbuild/bazel-central-registry/blob/main/modules/grpc/1.78.0-pre1/patches/add_deps_for_googleapis_switched_rules.patch) to unblock release.
* This PR is created to integrate the change to master.

Related discussion:
https://github.com/bazelbuild/bazel-central-registry/issues/3941

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #41363

PiperOrigin-RevId: 856792330
2026-01-15 13:23:39 -08:00
yuanweiz
bbad1cdc4b [Bzlmod] Make fuzztests build properly with bzlmod. (#41309)
Pin versions for riegeli so fuzztests can properly compile with bzlmod.

Caveat: in workspace we use fuzztest from 2023-05-16 but in bzlmod we use fuzztest@20241028.0. The reason is likely that BCR doesn't have older version of fuzztest, and it might cause some behavioral difference between our workspace and bzlmod settings.
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #41309

PiperOrigin-RevId: 856401926
2026-01-14 15:55:53 -08:00
Michael Lumish
088436d01c [xds] Implement gRFC A101 (#41051)
This includes two major changes:

 1. An additional credentials option `sni_override` with the type `optional<string>`. If `nullopt`, it has no effect, and if set to the empty string it disables sending SNI entirely. Otherwise, the specified string will be sent.
 2. The implementation of [gRFC A101](https://github.com/grpc/proposal/blob/master/A101-SNI-setting-and-SNI-SAN-validation.md) using that new option. This includes options to set SNI and to validate SAN values against the set SNI value.

Closes #41051

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41051 from murgatroid99:xds_sni_support 6a1f8667dedc19947532720495b2932889236a12
PiperOrigin-RevId: 855765736
2026-01-13 09:48:39 -08:00
yuanweiz
e26388c56d [Bzlmod] Support use of repo @grpc_custom_exec_properties with bzlmod. (#41252)
Building RBE tests require `custom_exec_properties` which can only be used from WORKSPACE. This PR introduces a wrapper module extension for `bazel_toolchains` so they can be used from MODULE.bazel.

See also:
https://bazel.build/external/extension
https://github.com/bazelbuild/bazel-toolchains/blob/master/rules/exec_properties/README.md

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #41252

PiperOrigin-RevId: 854383508
2026-01-09 16:31:28 -08:00
Siddharth Nohria
42ff45f92d Replace Call::PerformOps with a direct call to CallOpSet::FillOps, and remove all dependance on CallHook.
PiperOrigin-RevId: 853570227
2026-01-07 23:00:17 -08:00
Craig Tiller
2fd66e865e [test] Timeout utility class (#41265)
Closes #41265

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41265 from ctiller:opt 71396e3c2e4d71167ba1838a8fcb46c144c1c88b
PiperOrigin-RevId: 852447067
2026-01-05 14:07:37 -08:00
Alisha Nanda
d3afb84946 Rename HttpConnectHandshaker to HttpConnectClientHandshaker in preparation for adding a HttpConnectServerHandshaker.
PiperOrigin-RevId: 852382782
2026-01-05 11:24:22 -08:00
Mark D. Roth
dabda5fea8 [xDS] update version of xDS protos (#41242)
This temporarily disables the bzlmod version consistency check, because the new version of the xDS protos winds up pulling in a lot of upgraded dependencies that will take some work to get working.

Closes #41242

PiperOrigin-RevId: 852345420
2026-01-05 10:03:24 -08:00
Tanvi Jagtap - Google LLC
d7509f9913 [PH2][BUILD][Trivial] Build files (#41301)
[PH2][BUILD][Trivial] Build files

Closes #41301

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41301 from tanvi-jagtap:ph2_more_files 8b396d0f4b5cbb7559eebc4612cecb4ce0506361
PiperOrigin-RevId: 848476035
2025-12-24 01:34:53 -08:00
yuanweiz
178a00309e [bzlmod] Add check to ensure requested versions match selected versions. (#41244)
Bzlmod uses Minimal Version Selection algorithm for building dependency graph (see https://bazel.build/external/module#version-selection) which can cause resolved version number to be higher than requested versions. This may lead to nuanced bugs and hide behavioral differences between WORKSPACE and MODULE.bazel settings.

This PR does a few things:
* explicitly turn on --check_direct_dependencies=error for bzlmod tests, so version mismatch will now be an error
* Bump versions in MODULE.bazel to fix tests in `tools/bazelify_tests/test/bazel_build_with_bzlmod_linux.sh`.
* update bzl extensions accordingly to minimize the difference between workspace and bzlmod settings.

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #41244

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41244 from yuanweiz:direct_deps dd43d3007e8c88be1fc59cc895d832e430421d97
PiperOrigin-RevId: 848257936
2025-12-23 12:12:17 -08:00
Michael Lumish
522dbbbb25 [Release] Bump version to 1.79.0-dev (on master branch) (#41291)
Change was **not** created by the release automation script, because it doesn't handle a +2 version bump. See go/grpc-release

Closes #41291

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41291 from murgatroid99:v1.79.0-dev_bump 9a9bf54e5a891459390792dc9d547bdc17b7dd4d
PiperOrigin-RevId: 848168598
2025-12-23 07:26:31 -08:00
Michael Lumish
8d22d62392 [Release] Bump core version to 52.0.0 for upcoming release (#41288)
Change was created by the release automation script. See go/grpc-release.

Closes #41288

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41288 from murgatroid99:bump_core_version_202512220753 e8273425781ce92dbded8b295f3f0e438b3dbccc
PiperOrigin-RevId: 847898275
2025-12-22 15:11:01 -08:00
Mark D. Roth
0a6901dcd9 [python xDS protos] move to a shallower directory (#41261)
This will avoid exceeding the Windows 150-character path length limit when we upgrade the xDS protos.

Closes #41261

PiperOrigin-RevId: 847800132
2025-12-22 10:00:34 -08:00
Tanvi Jagtap - Google LLC
560e95a3f4 [PH2][Trivial][BUILD] Adding new files (#41286)
[PH2][Trivial][BUILD] Adding new files

Closes #41286

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41286 from tanvi-jagtap:new_files_01 81fcc2e4244b07758454e89c70ec666254e56e80
PiperOrigin-RevId: 847787819
2025-12-22 09:14:16 -08:00
Sergii Tkachenko
75731fd2a7 [CI][Python] Upgrade deps assuming python 3.9+ (#40323)
- Regen requirements.bazel.lock with Python 3.9
- bump isort to 6.0.1 (except in pylint, which needs to be updated separately)
- fix python version specifiers for black, isort and pylint, typeguard
- fix default ignore patterns for isort and pylint
- consistent debug info: python version, pip list
- consistent virtualenv naming: `.venv-ci-*`
- bazel: bump typeguard to 4.4.2
- bazel: bumped gevent to `25.9.1`, greenlet to `3.2.4` to support Python 3.13, closes #40685
- bazel: bump pyyaml for python 3.14 support
- bazel: take care of temporary pins to support 3.8-based CIs

Bazel RBE CIs upgraded in the following changelists, and currently run Python 3.10:
- cl/845778848
- cl/845816768

Relevant testing was done in #41239.

Closes #40323

PiperOrigin-RevId: 846423001
2025-12-18 14:51:43 -08:00
Sergii Tkachenko
5339da7b80 [Fix][CI] Fix master Bazel RBE jobs running on vanilla Ubuntu 22 (#41251)
Fixes

```pytb
+ python3 ./tools/run_tests/python_utils/upload_rbe_results.py --invocation_id=c9453d05-8c0a-43bc-abb8-1b5d34a163b8
Traceback (most recent call last):
  File "/tmpfs/altsrc/github/grpc/./tools/run_tests/python_utils/upload_rbe_results.py", line 31, in <module>
    import big_query_utils
  File "/tmpfs/altsrc/github/grpc/tools/gcp/utils/big_query_utils.py", line 21, in <module>
    from apiclient import discovery
ModuleNotFoundError: No module named 'apiclient'
```

Closes #41251

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41251 from sergiitk:fix/ci/rbe-vanilla-ubuntu22 4e7095021b2065fde224659c41d70b51db2021d6
PiperOrigin-RevId: 845995209
2025-12-17 18:19:33 -08:00
Sergii Tkachenko
4ffdf21dd1 [Fix][CI] grpc_bazel_rbe_nonbazel job: align kokoro and bazel timeouts (#41231)
Target `//tools/bazelify_tests/test:cpp_distribtest_cmake_aarch64_cross_linux` seems to go over Bazel's `--test_timeout` limit from time to time.

Bazel `--test_timeout` flag was initially introduced in #38123 and set to 30 minutes below Kokoro's job `timeout_mins`. Since then, we've increased Kokoro's timeout several times without making corresponding changes to bazel's `test_timeout`.

This PR updates Bazel's test timeout to aligned with Kokoro's job timeout, and adds a reminder to keep those in sync. In addition, I've broken `BAZEL_FLAGS` in multiple lines for better readability, proto text format spec [allows it](https://protobuf.dev/reference/protobuf/textformat-spec/#string).

Closes #41231

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41231 from sergiitk:fix/ci/rbe-nonbazel-bazel-test-timeout 22970a18ce2768693292f566f31dd765916fbca0
PiperOrigin-RevId: 843999341
2025-12-13 00:53:33 -08:00
Sergii Tkachenko
46b1795eac [Fix][CI] Skip tests build in gcc-8 portability tests (#41204)
Fixes "Bazel RBE Non-Bazel Tests" job timeouts. This affects:

-
[`grpc/core/master/linux/bazel_rbe/grpc_bazel_rbe_nonbazel`](https://btx.cloud.google.com/invocations;p=830293263384?q=JOB_NAME:grpc%2Fcore%2Fmaster%2Flinux%2Fbazel_rbe%2Fgrpc_bazel_rbe_nonbazel)
-
[`grpc/core/pull_request/linux/bazel_rbe/grpc_bazel_rbe_nonbazel`](https://btx.cloud.google.com/invocations;p=830293263384?q=JOB_NAME:grpc%2Fcore%2Fpull_request%2Flinux%2Fbazel_rbe%2Fgrpc_bazel_rbe_nonbazel)

The issue is with the
`//tools/bazelify_tests/test:runtests_cpp_linux_dbg_gcc_8_build_only`
target, which is a part of the portability suite
(`//tools/bazelify_tests/test:portability_tests_linux`). With gcc-8,
building `buildtests_cxx` make target either times out, or fails with
`collect2: fatal error: ld terminated with signal 9`.

I've investigated this as an OOM issue (a common cause of `collect2:
fatal error: ld terminated`), but increasing memory limits does not
help. I've updated RBE stack from `n1-standard-16` (60 GB RAM) to
`e2-standard-32` (128 GB RAM) with no effect. Increasing various job
timeouts (kokoro, bazel, target, etc) didn't help either. See PR #41028
for more details and other attempts at root-causing.

The most important part of portability tests is to verify that gRPC can
be built with all supported compilers. Since we are having a problem
with building the tests with gcc-8, we've decided to stop covering the
tests for that compiler..

Specifically, this PR changes `runtests_c*_linux_dbg_gcc_8_build_only`
bazel target to skip building test make targets (via
`--cmake_configure_extra_args=-DgRPC_BUILD_TESTS=OFF`), and only build
`grpc++` make target. See `build_cxx.sh`:
cb2db8fc21/tools/run_tests/helper_scripts/build_cxx.sh (L49-L55)

Notes and observations:
- Only gcc-8 and only cpp version is affected:
- Portability tests for other gcc versions have no problems building
`buildtests_cxx` of their corresponding
`runtests_c*_linux_dbg_gcc_*_build_only`.
- The C version of gcc-8 portability test
(`runtests_c_linux_dbg_gcc_8_build_only`) has not issues building tests
([sample run with full target
log](https://btx.cloud.google.com/invocations/0b3d41e7-3cf2-4ff8-b6d5-2bc0d52179cd/targets/%2F%2Ftools%2Fbazelify_tests%2Ftest:runtests_c_linux_dbg_gcc_8_build_only;config=815e4ca9071c7e1d8ca72b9c87c1347399a51eb1246eb9c49dd54d9a24ef5cba/tests)).
- However, unfortunately, this change skips the test targets for
`runtests_c_linux_dbg_gcc_8_build_only` too.
- We already had the logic to skip tests for gcc-7, but for a different
reason: #37257
2025-12-09 10:34:07 -08:00
Yousuk Seung
0a34a8cbc8 Skip sleuth.so and sleuth tests on Windows
PiperOrigin-RevId: 841929574
2025-12-08 15:06:45 -08:00
Mark D. Roth
0645d831c5 [ValidationErrors] de-dup error messages (#41198)
Also mark the test as non-polling, so we don't run it multiple times.

Closes #41198

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41198 from markdroth:validation_errors_no_dups 2ebe0f9846e9199a9ec1a3bfceeab58b7d3b65f9
PiperOrigin-RevId: 841792148
2025-12-08 09:18:24 -08:00
Craig Tiller
d726db68d5 Optionalize linking postmortem library entirely
PiperOrigin-RevId: 837871164
2025-11-28 10:21:31 -08:00
Craig Tiller
4944adfc14 Add call inspection to channelz
Add a new config to enable active call inspection with channelz, disabled by default. Plumb through promise_based_filter, call-v3.

PiperOrigin-RevId: 837614415
2025-11-27 14:28:08 -08:00
Sreenithi Sridharan
5db63228c8 [Python] Disable layering check in grpc_tools:protoc_lib (#41142)
Python Bazel tests have been failing since yesterday after layering check was enabled in grpcio_tools build in commit: 756389e9e7

Temporarily disabling it after discussing IRL with @rishesh007

Closes #41142

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41142 from sreenithi:temp_fix_python_bazel_test 751c420bf3a27066d6cdd912e0e08e9c0acaebb8
PiperOrigin-RevId: 837494537
2025-11-27 05:21:50 -08:00
Rishesh Agarwal
7c14fdbfdf remove default_applicable_licenses to tools/codegen BUILD files.
PiperOrigin-RevId: 837063317
2025-11-26 04:34:23 -08:00
Rishesh Agarwal
eaae0ff558 Adding layering_check and parse_headers in each bazel codegen build file
PiperOrigin-RevId: 837002393
2025-11-26 01:10:53 -08:00
Rishesh Agarwal
756389e9e7 Adding layering_check and parse_headers in each bazel distrib python build file
PiperOrigin-RevId: 836934818
2025-11-25 21:34:44 -08:00
Alexander Thomas
f21ac437a3 Update dart interop Dockerfile (#41090)
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #41090

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41090 from athomas:patch-1 b691ea897456c182a4d0385b8b46fb85c24c0928
PiperOrigin-RevId: 834474588
2025-11-19 15:50:43 -08:00
siddharth nohria
c4b87395ce Server Wide Max Outstanding Streams: Add Build changes (#41076)
Allow servers to set max outstanding streams limit per server. This pull request only adds the BUILD changes required for this. The core logic will follow in a later PR.

Closes #41076

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41076 from siddharthnohria:max_outstanding_streams 392d962fc78be66c075952977bc3a28f2298b7ce
PiperOrigin-RevId: 833196338
2025-11-17 00:16:50 -08:00
Vignesh Babu
95775d0c91 [Call] Skip clearing peer string during call cancellation (#41062)
Potential fix for b/428185413

Closes #41062

PiperOrigin-RevId: 832462330
2025-11-14 14:41:52 -08:00
Sergii Tkachenko
2f514a8d4b [Bazel] Fixes the issue of copt cache discarded between test and build (#41038)
This solves the issue with with copt cache dropped between `bazel build` and `bazel test`:

```
WARNING: Build option --copt has changed, discarding analysis cache.
```

This issue was introduced in #39945, which added `--copt=-DGRPC_POSTMORTEM_CHECKS` unconditionally to all `basel test`, but not `build`:

1d6841f7d8/tools/bazel.rc (L155-L156)

This PR moves the macro to a separate bazel profile config called `postmortem`, which is not enabled by default.
Instead, this config will be enabled in all remote CIs via tools/remote_build/include/test_config_common.bazelrc: ba4984e8a0/tools/remote_build/include/test_config_common.bazelrc (L26-L27)

For the list of affected CI jobs, see my comment on this PR.

Closes #41038

PiperOrigin-RevId: 832339240
2025-11-14 09:09:54 -08:00
Tanvi Jagtap - Google LLC
e70eb0d553 [PH2][BUILD] Adding dependencies (#41070)
[PH2][BUILD] Adding dependencies

Closes #41070

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41070 from tanvi-jagtap:new_file_010 8a0630e5c7ab89583440f4c87f8b91aac8c24ec9
PiperOrigin-RevId: 832181048
2025-11-13 23:40:29 -08:00
Tanvi Jagtap - Google LLC
05f4eda5a3 [PH2][BUILD] Adding new file for IncomingMetadataTracker (#41058)
[PH2][BUILD] Adding new file for IncomingMetadataTracker

Closes #41058

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41058 from tanvi-jagtap:new_files 6c0da18b7c8980d6ab133cb8e543e6ad13e5d69d
PiperOrigin-RevId: 832130354
2025-11-13 20:43:14 -08:00
Mark D. Roth
ccd635ea24 [client channel] refactor v1 call buffering code (#40945)
This refactors the call buffering code for the v1 stack, which avoids some repetition between the resolver queue and the LB pick queue.  This code will also be used in the future in the subchannel as part of implementing the MAX_CONCURRENT_STREAMS design.

As part of this, I also eliminated the subclassing in the v1 client channel implementation, which has not been necessary since the v2 code was removed.

Closes #40945

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40945 from markdroth:call_buffer_v1_refactoring 0a471be6ed862c3cc3225644fb2a3e1456e60fbf
PiperOrigin-RevId: 829566551
2025-11-07 13:57:35 -08:00
Nathan Baulch
5dfeafa56c Fix tools typos (#38030)
Continuation of #37541 but focused on tools.

FYI, typos are:
* atifacts
* building
* certern
* commadline
* dependences
* displayes
* docstinrg
* doesn
* faied
* ifle
* manylinx
* onveniently
* passthough
* reqistration
* slighly
* subsituding
* testca
* unices
* uniqifies

Closes #38030

PiperOrigin-RevId: 827772625
2025-11-03 21:11:49 -08:00
Sreenithi Sridharan
17d19bd7cf [Python] Exclude test files in grpcio_tools wheels (#40999)
This PR removes some additional files that were included in the grpcio_tools package wheels after migrating to pyproject.toml build system in #40833

Closes #40999

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40999 from sreenithi:fix_grpc_tools_wheels_2 a261b2160e3ddd34a5c0b74e6d84b2f8c1bda1cd
PiperOrigin-RevId: 827755815
2025-11-03 20:09:57 -08:00
Sreenithi Sridharan
f994c9f735 [Fix][Python] Increase timeout for linux distribtests jobs for release and master branch (#41000)
The newly migrated pyproject.toml build system (in #40833) seems to have much slower build times compared to the previous setup.py builds. This difference has also been noted by few users ([Ref1](https://github.com/pypa/pip/issues/7294), [Ref2](https://zameermanji.com/blog/2021/6/14/building-wheels-with-pip-is-getting-slower/)) most likely due to the overhead of creating isolated build environments for each build.

Some new runtimes for each variant target noted from different recent runs below:
```
2025-11-01 10:19:02,937 PASSED: build_artifact.python_musllinux_1_2_x86_cp312-cp312 [time=4267.1sec, retries=0:0]
2025-11-01 10:19:05,501 PASSED: build_artifact.python_musllinux_1_2_x86_cp311-cp311 [time=4269.7sec, retries=0:0]
2025-11-01 10:19:07,152 PASSED: build_artifact.python_musllinux_1_2_x86_cp310-cp310 [time=4287.0sec, retries=0:0]

2025-11-01 11:43:22,269 PASSED: build_artifact.python_manylinux2014_x86_cp312-cp312 [time=4644.4sec, retries=0:0]
2025-11-01 11:43:37,257 PASSED: build_artifact.python_manylinux2014_x86_cp314-cp314 [time=4659.4sec, retries=0:0]
2025-11-01 11:43:37,525 PASSED: build_artifact.python_manylinux2014_x86_cp311-cp311 [time=4659.7sec, retries=0:0]
2025-11-01 11:43:40,671 PASSED: build_artifact.python_manylinux2014_x86_cp310-cp310 [time=4662.8sec, retries=0:0]
2025-11-01 11:43:51,663 PASSED: build_artifact.python_manylinux2014_x86_cp39-cp39 [time=4673.8sec, retries=0:0]
2025-11-01 11:43:51,708 PASSED: build_artifact.python_manylinux2014_x86_cp313-cp313 [time=4673.8sec, retries=0:0]

2025-11-01 04:59:11,117 PASSED: build_artifact.python_linux_extra_armv7_cp311-cp311 [time=5172.2sec, retries=0:0]
2025-11-01 04:59:31,002 PASSED: build_artifact.python_linux_extra_armv7_cp314-cp314 [time=5157.0sec, retries=0:0]
2025-11-01 04:59:53,485 PASSED: build_artifact.python_linux_extra_armv7_cp39-cp39 [time=5221.7sec, retries=0:0]
```

The builds take anywhere between 70-90 minutes for each target. We have a total of 30 targets currently and 12 targets  are built parallelly in a batch. So for about 3 batches of 12 targets each and a worst case time of 90 minutes per batch, the `build_artifact` phase itself should take about 4.5 hours to complete, followed by the remaining `package` and `distribtest` phases which should be comparatively shorter.

So, I believe about 7 hours should be enough, but just keeping an extra buffer and increasing the timeout to 8 hours.

Closes #41000

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/41000 from sreenithi:increase_distribtests_timeout 44c94b0ffd83469856d9a62f8edcee8e69fa252a
PiperOrigin-RevId: 827672050
2025-11-03 15:27:12 -08:00
Rishesh Agarwal
7b79871906 Enable layering_check in grpc/tools
PiperOrigin-RevId: 827297707
2025-11-02 20:26:58 -08:00
Sreenithi Sridharan
d8698ff717 [Python] Migrate to pyproject.toml build system (#40833)
Fixes #40744.

Closes #40833

PiperOrigin-RevId: 826625632
2025-10-31 14:19:57 -07:00
Sergii Tkachenko
caaa581253 [interop] Add v1.76.0 for C++, Ruby, PHP (#40975)
Python version not updated because the image build is broken by a runtime dependency issue. The fix #40959 can't be backported retroactively to the tag.

Closes #40975

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40975 from sergiitk:interop-1.76.0 cd18cfff23e61f9d0d643c41ee149bf2e8334aaf
PiperOrigin-RevId: 826173165
2025-10-30 13:56:48 -07:00
Sergii Tkachenko
14fbc5c189 [PSM Interop] Extend cross-branch and cross-lang Kokoro test timeout (#40980)
ref b/456231211

Closes #40980

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40980 from sergiitk:psm/xtest/timeout f35a361280140a41639221e3c7d8c3221261d584
PiperOrigin-RevId: 825909156
2025-10-30 01:02:49 -07:00
Yousuk Seung
ec7a527145 Revert "Add submodule cel-spec (#40968)" (#40977)
Probably broke distribtests.

https://btx.cloud.google.com/invocations/f4395f89-f592-4ada-9149-a0c0b5befff3/targets/%2F%2Ftools%2Fbazelify_tests%2Ftest:bazel_distribtest_7.4.1_buildtest;config=815e4ca9071c7e1d8ca72b9c87c1347399a51eb1246eb9c49dd54d9a24ef5cba/log

<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #40977

PiperOrigin-RevId: 825866763
2025-10-29 22:44:34 -07:00
Yousuk Seung
71940fba01 Add submodule cel-spec (#40968)
<!--

If you know who should review your pull request, please assign it to that
person, otherwise the pull request would get assigned randomly.

If your pull request is for a specific language, please add the appropriate
lang label.

-->

Closes #40968

PiperOrigin-RevId: 825567114
2025-10-29 08:55:24 -07:00
Vignesh Babu
749844fd38 [Build Cleanup] Change sanitize script to use C++ trace flags and stats data code generators instead of python scripts (#40906)
- The python code generators are deleted
- In a future PR, the sanitize script will be updated to use the C++ experiments code generator and the python script will also be deleted

Closes #40906

PiperOrigin-RevId: 825223102
2025-10-28 15:14:27 -07:00
Sreenithi Sridharan
ce9f0496e7 [Fix][Python] Pin pip version to 25.2 in Python tests (#40959)
Pip released [v25.3](https://pip.pypa.io/en/stable/news/#v25-3) a few days back which doesn't support `setup.py` builds anymore, while we are yet to migrate to use the `pyproject.toml` build system in #40833.

Hence some of our Python tests using the most recent versions of pip for the build have started to fail with errors like:
```
  ERROR: Failed building wheel for grpcio
Failed to build grpcio
error: failed-wheel-build-for-install

× Failed to build installable wheels for some pyproject.toml based projects
```

This PR hence pins the pip version to 25.2 which still supports setup.py build until #40833 is submitted.

Closes #40959

COPYBARA_INTEGRATE_REVIEW=https://github.com/grpc/grpc/pull/40959 from sreenithi:pin_pip_version d72e0563ce0f00a962bd03ddd279cf587494fd3e
PiperOrigin-RevId: 824584176
2025-10-27 10:46:00 -07:00
Sreenithi Sridharan
bca7762d1c [Python] Update setuptools min version to 77.0.1 (#40931)
This PR updates the minimum version of `setuptools` package required across different Python setup files to v77.0.1. This version contains Python 3.14 support as well as deprecates a format for defining project license in `pyproject.toml` files ([Reference](https://setuptools.pypa.io/en/stable/history.html#id71)) which is a prerequisite for #40833

Closes #40931

PiperOrigin-RevId: 823008815
2025-10-23 06:15:35 -07:00