Skip to content

Updating branch to be in sync with upstream master#8

Merged
kannanjgithub merged 67 commits intokannanjgithub:mcsfrom
grpc:master
Feb 4, 2026
Merged

Updating branch to be in sync with upstream master#8
kannanjgithub merged 67 commits intokannanjgithub:mcsfrom
grpc:master

Conversation

@kannanjgithub
Copy link
Owner

No description provided.

ac-patel and others added 30 commits January 21, 2026 09:19
PiperOrigin-RevId: 859131244
To avoid data races and use-after-free on shutdown in Python 3.13.
It seems to have worked before due to unintended guarantees of the
Python interpreter that are gone with the new version.

Uses `threading.Event` and `threading.Lock` to coordinate between the main thread handling signals and the `flush_stdout_loop` thread. The `_quit_on_signal` handler now signals the flush thread to exit, and waits for the flush thread to complete its current sleep cycle before calling `sys.exit()`. This prevents a use-after-free that shows up as a data race.

Ref b/474047558

PiperOrigin-RevId: 859182150
…41431)

#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>
COPYBARA_INTEGRATE_REVIEW=#41069 from laramiel:laramiel-patch-1 6c14dc3
PiperOrigin-RevId: 859328344
Closes #40443

COPYBARA_INTEGRATE_REVIEW=#40443 from apolukhin:status-optimize d53b7ad
PiperOrigin-RevId: 859387690
…41460)

This option was added to the core credentials API in #41051. Now we add the same option to the corresponding C++ API.

b/203822267

<!--

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 #41460

COPYBARA_INTEGRATE_REVIEW=#41460 from murgatroid99:c++_creds_sni_override 7241f2a
PiperOrigin-RevId: 859620187
We decided that existing interop tests are sufficient for this.

<!--

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 #41459

COPYBARA_INTEGRATE_REVIEW=#41459 from murgatroid99:xds_sni_remove_env_var 96bd6c9
PiperOrigin-RevId: 859686823
- Removes all usages of `six`.
- Refactors the code to assume py3-style iterables.
- Other minor fixes related to getting rid of Python 2 syntax.
- Minor unrelated change: adds `repr` to `run_tests.Config`.

Note: This just removes the usages of `six` in code. I'll clean up CI dependencies in a separate PR.

Closes #41040

COPYBARA_INTEGRATE_REVIEW=#41040 from sergiitk:feat/py/remove-six 1e43ace
PiperOrigin-RevId: 859704528
This change should enable us to build most C/C++ tests with bzlmod.

`googleapis` is also updated because google_cloud_cpp 2.35.0 uses a modified version of googleapis. This requires us to copy some boilerplate code from upstream (BCR and google_cloud_cpp respectively).

Alternatively we could also use google_cloud_cpp from BCR, it takes less coding work but the lowest version available is 3.0.0 and requires a bunch of version bumps to other modules, so it might be more risky.

`rules_proto` version is increase to 7.1.0 (requested by google_cloud_cpp)

<!--

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 #41311

PiperOrigin-RevId: 859764899
The native rules are disabled by default in Bazel 9 via [`--incompatible_autoload_externally=`](bazelbuild/bazel#23043) (empty list).

Closes #41304

PiperOrigin-RevId: 859767890
…on (#41455)

In the core, the default value of the `GRPC_ENABLE_FORK_SUPPORT` environment variable is determined by the value of the `GRPC_ENABLE_FORK_SUPPORT_DEFAULT` macro, which is by default derived from the value of the `GRPC_ENABLE_FORK_SUPPORT` macro. Python sets `GRPC_ENABLE_FORK_SUPPORT`, so the feature is enabled there by default. However, Python also reads the value of the `GRPC_ENABLE_FORK_SUPPORT` environment variable and sets its own default in `fork_posix.pyx.pxi`, and the feature is disabled there by default. The result is a mixed state that causes problems.

This change fixes that by disabling the feature by default in both places. In the long run we want to enable it by default everywhere, but for now we don't have confidence in its stability.

Closes #41455

COPYBARA_INTEGRATE_REVIEW=#41455 from sergiitk:fix/py/fork-defaults 73be72d
PiperOrigin-RevId: 859928704
PiperOrigin-RevId: 859967650
PiperOrigin-RevId: 859975752
…experiments.

This change removes the experiment flags `channelz_use_v2_for_v1_api` and `channelz_use_v2_for_v1_service`, making the V2-based implementation the default for both the legacy C-style channelz API and the C++ Channelz service. The old V1 rendering code paths and helper functions are removed from `legacy_api.cc` and `channelz_service.cc`.

PiperOrigin-RevId: 860142585
Introduces a new layout intent `kCode` to render text with a monospace font and preserved whitespace. This is used for formatting `grpc::channelz::v2::Promise` objects in Zviz, making their structure clearer. Also, applies `white-space: pre-wrap` to the general `.zviz-data` style.

PiperOrigin-RevId: 860187243
Updates expiration dates for the following experiments:
- call_tracer_in_transport: This is already enabled in OSS but is blocked internally, so the experiment will have to stick around for a while longer.
- error_flatten and rr_wrr_connect_from_random_index: These are both fully rolled out internally and have not caused any problems.  It looks like I never enabled them in OSS, though, so I'll plan to do that in subsequent PRs, and I'll keep the experiments around for one more OSS release, just to be safe.
- pick_first_ready_to_connecting: This is in the process of rolling out internally, but I expect the change to be a no-op, so I will enable it in OSS in a subsequent PR.  The experiment will need to stick around until the internal rollout completes.
- subchannel_wrapper_cleanup_on_orphan: This is in the process of rolling out internally.  Once that completes, I'll enable it in OSS.
- subchannel_connection_scaling: This feature hasn't even fully landed yet, much less started rolling out, so it will need a while.

Closes #41468

COPYBARA_INTEGRATE_REVIEW=#41468 from markdroth:experiment_expiration 918275c
PiperOrigin-RevId: 860191357
The plan for the `event_engine_poller_for_python` experiment is to roll it out in the next release, and then potentially remove it for the release after that.  So I pushed that one out to around the 1.80 release date. Resolving the other EventEngine experiments is blocked on Python, so I moved those to April. And the fork support experiment will require some extra testing that I'm not sure of yet, so I pushed that one to May

<!--

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 #41470

COPYBARA_INTEGRATE_REVIEW=#41470 from murgatroid99:experiments_update 7ffba81
PiperOrigin-RevId: 860252919
Enable a change for RR and WRR LB policies to start connecting from a random index in the subchannel list, to avoid sending too much traffic to the first address on the list.

See #40235 for original implementation.

Closes #41472

COPYBARA_INTEGRATE_REVIEW=#41472 from markdroth:rr_wrr_connect_from_random_index_enable 1000ab3
PiperOrigin-RevId: 860273422
…1191)

Splitting this out of #40938.

In preparation for changing how we pass configs to xDS HTTP filters, this PR changes the ConfigSelector API such that it returns the filter chain for each RPC rather than just once when the ConfigSelector is first returned to the resolver.

Currently, all ConfigSelector impls return the same filter chain for every RPC, so there is no functional change here.

In a future PR, I will change the xDS ConfigSelector to create a separate filter chain for each route and then return the corresponding filter chain when it chooses the route for each RPC.

Closes #41191

COPYBARA_INTEGRATE_REVIEW=#41191 from markdroth:config_selector_returns_filters da7da1f
PiperOrigin-RevId: 860301573
This should be a no-op unless subchannel connection scaling is enabled, and that's controlled by a separate experiment.

See #41029 for implementation.

Closes #41475

COPYBARA_INTEGRATE_REVIEW=#41475 from markdroth:pf_experiment_enable a2d316b
PiperOrigin-RevId: 860319677
The gRPC project is primarily covered by the Apache License v2.0. Over the years, several files were added to the repo carrying other licenses, Mozilla Public License Version 2.0, and BSD 3-Clause License. These additional licenses were never
intended to cover the entire repository, and were intended to be scoped to the specific files that carried in those different licenses. This change clarifies the scoping of which files are covered by either the MPL v2.0 or BSD 3-Clause License.

Closes #41476

COPYBARA_INTEGRATE_REVIEW=#41476 from emil10001:license-scope b5f7fdd
PiperOrigin-RevId: 860326676
Adds an AddData method to MessageChunker to expose max_chunk_size and alignment via channelz, and integrates this into both the client and server ChaoticGood transports.

PiperOrigin-RevId: 861218769
…entity certs (#41445)

<!--

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 #41445

COPYBARA_INTEGRATE_REVIEW=#41445 from anniefrchz:providers_split e229a46
PiperOrigin-RevId: 861237972
…t_test (#41395)

Previously we did a global init/shutdown for gRPC. This change delays that to each test - this ensures that gRPC does not create threads prior to the EXPECT_DEATH in CrashIfTimeoutExpires.

Closes #41395

COPYBARA_INTEGRATE_REVIEW=#41395 from ctiller:testtest 52ff6a0
PiperOrigin-RevId: 861259239
PiperOrigin-RevId: 861339351
Update issue template for 'ask a question' template. Removes the
reference to StackOverflow.
Enable bzlmod by default for remote tests (exceptions apply on a per-check basis).

Linux tests seem mostly fine. MacOS and Windows have different issues.

Language specific testings (like csharp, ruby, php etc) don't seem affected by `tools/remote_build` at all so we need a separate change to migrate them.

The end goal is to enable bzlmod for everything from `tools/bazel.rc`, and we'll need to come up with a better strategy for testing.

More about known issues: see #41487

Closes #41488

COPYBARA_INTEGRATE_REVIEW=#41488 from yuanweiz:linux_bzlmod e43e9fb
PiperOrigin-RevId: 862021150
Fixes the issue with upload_rbe_results.py

```pytb
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
  File "/home/kbuilder/.local/lib/python3.10/site-packages/apiclient/__init__.py", line 3, in <module>
    from googleapiclient import channel, discovery, errors, http, mimeparse, model
  File "/home/kbuilder/.local/lib/python3.10/site-packages/googleapiclient/discovery.py", line 64, in <module>
    from googleapiclient import _auth, mimeparse
  File "/home/kbuilder/.local/lib/python3.10/site-packages/googleapiclient/_auth.py", line 34, in <module>
    import oauth2client.client
  File "/home/kbuilder/.local/lib/python3.10/site-packages/oauth2client/client.py", line 45, in <module>
    from oauth2client import crypt
  File "/home/kbuilder/.local/lib/python3.10/site-packages/oauth2client/crypt.py", line 45, in <module>
    from oauth2client import _openssl_crypt
  File "/home/kbuilder/.local/lib/python3.10/site-packages/oauth2client/_openssl_crypt.py", line 16, in <module>
    from OpenSSL import crypto
  File "/usr/lib/python3/dist-packages/OpenSSL/__init__.py", line 8, in <module>
    from OpenSSL import crypto, SSL
  File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1579, in <module>
    class X509StoreFlags(object):
  File "/usr/lib/python3/dist-packages/OpenSSL/crypto.py", line 1598, in X509StoreFlags
    NOTIFY_POLICY = _lib.X509_V_FLAG_NOTIFY_POLICY
AttributeError: module 'lib' has no attribute 'X509_V_FLAG_NOTIFY_POLICY'. Did you mean: 'X509_V_FLAG_EXPLICIT_POLICY'?
```

oauth2client is deprecated for a while and didn't account for declaring its dependency correctly.

Problematic code:

```
try:
    from oauth2client import _openssl_crypt
    OpenSSLSigner = _openssl_crypt.OpenSSLSigner
    OpenSSLVerifier = _openssl_crypt.OpenSSLVerifier
    pkcs12_key_as_pem = _openssl_crypt.pkcs12_key_as_pem
except ImportError:  # pragma: NO COVER
    OpenSSLVerifier = None
    OpenSSLSigner = None
    pkcs12_key_as_pem = _bad_pkcs12_key_as_pem
```

However, oauth2client._openssl_crypt will fail to load when `cryptography` is out of sync with `pyOpenSSL`. Both had `X509_V_FLAG_NOTIFY_POLICY` removed: in PyOpenSSL v23.2.0, cryptography v42.0.0.

Our default infra setup had `PyOpenSSL` 21.0.0, but `oauth2client` pulls in `cryptography` 46.0.4.

This PR changes our build scripts to explicitly require `pyOpenSSL>=23.2.0`.

Closes #41506

COPYBARA_INTEGRATE_REVIEW=#41506 from sergiitk:fix/ci/upload_rbe_results 563315b
PiperOrigin-RevId: 862603978
This should fix a build problem we are seeing with the error message

> Root composer.json requires phpunit/phpunit 9.5.9 (exact version match: 9.5.9 or 9.5.9.0), found phpunit/phpunit[9.5.9] but these were not loaded, because they are affected by security advisories ("PKSA-z3gr-8qht-p93v"). Go to https://packagist.org/security-advisories/ to find advisory details. To ignore the advisories, add them to the audit "ignore" config. To turn the feature off entirely, you can set "block-insecure" to false in your "audit" config.

[The referenced vulnerability](GHSA-vvj3-c3rp-c85p) says that the impacted function is `cleanupForCoverage()`, which we don't call as far as I can tell, so we shouldn't be impacted by this. In the long run, it would probably be good to upgrade to a newer version of PHPUnit, but this should get the build to work in the short term.

<!--

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 #41504

COPYBARA_INTEGRATE_REVIEW=#41504 from murgatroid99:phpunit_ignore_advisory 31be947
PiperOrigin-RevId: 862772952
markdroth and others added 24 commits February 2, 2026 07:40
The main part of gRFC A105 (grpc/proposal#516).

Closes #40984

COPYBARA_INTEGRATE_REVIEW=#40984 from markdroth:subchannel_call_queueing 8cc9d32
PiperOrigin-RevId: 864350042
The xDS protos are actually split between two repos, and I forgot to update the second one when I did the first one.  Updating these protos also required adding a new dependency on the CEL protos.

Closes #41421

PiperOrigin-RevId: 864390170
The expiry dates for multiple experiments in experiments.yaml are updated from February 2026 to May 2026.

PiperOrigin-RevId: 864433030
PiperOrigin-RevId: 864589994
Closes #41537

COPYBARA_INTEGRATE_REVIEW=#41537 from AananthV:cq_experiment 62e04c7
PiperOrigin-RevId: 864760567
Closes #41081

COPYBARA_INTEGRATE_REVIEW=#41081 from ejona86:java-1.77.0 05de3bf
PiperOrigin-RevId: 864823869
Bumps the github-actions group with 3 updates:
[actions/cache](https://github.com/actions/cache),
[styfle/cancel-workflow-action](https://github.com/styfle/cancel-workflow-action)
and
[peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request).

Updates `actions/cache` from 5.0.1 to 5.0.3
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/actions/cache/releases">actions/cache's
releases</a>.</em></p>
<blockquote>
<h2>v5.0.3</h2>
<h2>What's Changed</h2>
<ul>
<li>Bump <code>@actions/cache</code> to v5.0.5 (Resolves: <a
href="https://github.com/actions/cache/security/dependabot/33">https://github.com/actions/cache/security/dependabot/33</a>)</li>
<li>Bump <code>@actions/core</code> to v2.0.3</li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/actions/cache/compare/v5...v5.0.3">https://github.com/actions/cache/compare/v5...v5.0.3</a></p>
<h2>v.5.0.2</h2>
<h1>v5.0.2</h1>
<h2>What's Changed</h2>
<p>When creating cache entries, 429s returned from the cache service
will not be retried.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/actions/cache/blob/main/RELEASES.md">actions/cache's
changelog</a>.</em></p>
<blockquote>
<h1>Releases</h1>
<h2>How to prepare a release</h2>
<blockquote>
<p>[!NOTE]<br />
Relevant for maintainers with write access only.</p>
</blockquote>
<ol>
<li>Switch to a new branch from <code>main</code>.</li>
<li>Run <code>npm test</code> to ensure all tests are passing.</li>
<li>Update the version in <a
href="https://github.com/actions/cache/blob/main/package.json"><code>https://github.com/actions/cache/blob/main/package.json</code></a>.</li>
<li>Run <code>npm run build</code> to update the compiled files.</li>
<li>Update this <a
href="https://github.com/actions/cache/blob/main/RELEASES.md"><code>https://github.com/actions/cache/blob/main/RELEASES.md</code></a>
with the new version and changes in the <code>## Changelog</code>
section.</li>
<li>Run <code>licensed cache</code> to update the license report.</li>
<li>Run <code>licensed status</code> and resolve any warnings by
updating the <a
href="https://github.com/actions/cache/blob/main/.licensed.yml"><code>https://github.com/actions/cache/blob/main/.licensed.yml</code></a>
file with the exceptions.</li>
<li>Commit your changes and push your branch upstream.</li>
<li>Open a pull request against <code>main</code> and get it reviewed
and merged.</li>
<li>Draft a new release <a
href="https://github.com/actions/cache/releases">https://github.com/actions/cache/releases</a>
use the same version number used in <code>package.json</code>
<ol>
<li>Create a new tag with the version number.</li>
<li>Auto generate release notes and update them to match the changes you
made in <code>RELEASES.md</code>.</li>
<li>Toggle the set as the latest release option.</li>
<li>Publish the release.</li>
</ol>
</li>
<li>Navigate to <a
href="https://github.com/actions/cache/actions/workflows/release-new-action-version.yml">https://github.com/actions/cache/actions/workflows/release-new-action-version.yml</a>
<ol>
<li>There should be a workflow run queued with the same version
number.</li>
<li>Approve the run to publish the new version and update the major tags
for this action.</li>
</ol>
</li>
</ol>
<h2>Changelog</h2>
<h3>5.0.3</h3>
<ul>
<li>Bump <code>@actions/cache</code> to v5.0.5 (Resolves: <a
href="https://github.com/actions/cache/security/dependabot/33">https://github.com/actions/cache/security/dependabot/33</a>)</li>
<li>Bump <code>@actions/core</code> to v2.0.3</li>
</ul>
<h3>5.0.2</h3>
<ul>
<li>Bump <code>@actions/cache</code> to v5.0.3 <a
href="https://redirect.github.com/actions/cache/pull/1692">#1692</a></li>
</ul>
<h3>5.0.1</h3>
<ul>
<li>Update <code>@azure/storage-blob</code> to <code>^12.29.1</code> via
<code>@actions/cache@5.0.1</code> <a
href="https://redirect.github.com/actions/cache/pull/1685">#1685</a></li>
</ul>
<h3>5.0.0</h3>
<blockquote>
<p>[!IMPORTANT]
<code>actions/cache@v5</code> runs on the Node.js 24 runtime and
requires a minimum Actions Runner version of <code>2.327.1</code>.
If you are using self-hosted runners, ensure they are updated before
upgrading.</p>
</blockquote>
<h3>4.3.0</h3>
<ul>
<li>Bump <code>@actions/cache</code> to <a
href="https://redirect.github.com/actions/toolkit/pull/2132">v4.1.0</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/actions/cache/commit/cdf6c1fa76f9f475f3d7449005a359c84ca0f306"><code>cdf6c1f</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/cache/issues/1695">#1695</a>
from actions/Link-/prepare-5.0.3</li>
<li><a
href="https://github.com/actions/cache/commit/a1bee22673bee4afb9ce4e0a1dc3da1c44060b7d"><code>a1bee22</code></a>
Add review for the <code>@​actions/http-client</code> license</li>
<li><a
href="https://github.com/actions/cache/commit/46957638dc5c5ff0c34c0143f443c07d3a7c769f"><code>4695763</code></a>
Add licensed output</li>
<li><a
href="https://github.com/actions/cache/commit/dc73bb9f7bf74a733c05ccd2edfd1f2ac9e5f502"><code>dc73bb9</code></a>
Upgrade dependencies and address security warnings</li>
<li><a
href="https://github.com/actions/cache/commit/345d5c2f761565bace4b6da356737147e9041e3a"><code>345d5c2</code></a>
Add 5.0.3 builds</li>
<li><a
href="https://github.com/actions/cache/commit/8b402f58fbc84540c8b491a91e594a4576fec3d7"><code>8b402f5</code></a>
Merge pull request <a
href="https://redirect.github.com/actions/cache/issues/1692">#1692</a>
from GhadimiR/main</li>
<li><a
href="https://github.com/actions/cache/commit/304ab5a0701ee61908ccb4b5822347949a2e2002"><code>304ab5a</code></a>
license for httpclient</li>
<li><a
href="https://github.com/actions/cache/commit/609fc19e67cd310e97eb36af42355843ffcb35be"><code>609fc19</code></a>
Update licensed record for cache</li>
<li><a
href="https://github.com/actions/cache/commit/b22231e43df11a67538c05e88835f1fa097599c5"><code>b22231e</code></a>
Build</li>
<li><a
href="https://github.com/actions/cache/commit/93150cdfb36a9d84d4e8628c8870bec84aedcf8a"><code>93150cd</code></a>
Add PR link to releases</li>
<li>Additional commits viewable in <a
href="https://github.com/actions/cache/compare/9255dc7a253b0ccc959486e2bca901246202afeb...cdf6c1fa76f9f475f3d7449005a359c84ca0f306">compare
view</a></li>
</ul>
</details>
<br />

Updates `styfle/cancel-workflow-action` from 0.12.1 to 0.13.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/styfle/cancel-workflow-action/releases">styfle/cancel-workflow-action's
releases</a>.</em></p>
<blockquote>
<h2>0.13.0</h2>
<h2>Minor changes</h2>
<ul>
<li>feat: add force_cancel option (<a
href="https://redirect.github.com/styfle/cancel-workflow-action/pull/215">styfle/cancel-workflow-action#215</a>)</li>
</ul>
<h2>Credits</h2>
<p>Huge thanks to <a
href="https://github.com/epicgames-mokeeffe"><code>@​epicgames-mokeeffe</code></a>
for helping!</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/styfle/cancel-workflow-action/commit/3155a141048f8f89c06b4cdae32e7853e97536bc"><code>3155a14</code></a>
0.13.0</li>
<li><a
href="https://github.com/styfle/cancel-workflow-action/commit/0e31114e8d09982a3de8595f6e51b0ea240c1005"><code>0e31114</code></a>
feat: add <code>force_cancel</code> option (<a
href="https://redirect.github.com/styfle/cancel-workflow-action/issues/215">#215</a>)</li>
<li><a
href="https://github.com/styfle/cancel-workflow-action/commit/bdaa46e4662006504ca6b0cfb7488010126dc98c"><code>bdaa46e</code></a>
chore(readme): update markdown admonition</li>
<li>See full diff in <a
href="https://github.com/styfle/cancel-workflow-action/compare/85880fa0301c86cca9da44039ee3bb12d3bedbfa...3155a141048f8f89c06b4cdae32e7853e97536bc">compare
view</a></li>
</ul>
</details>
<br />

Updates `peter-evans/create-pull-request` from 8.0.0 to 8.1.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/peter-evans/create-pull-request/releases">peter-evans/create-pull-request's
releases</a>.</em></p>
<blockquote>
<h2>Create Pull Request v8.1.0</h2>
<h2>What's Changed</h2>
<ul>
<li>README.md: bump given GitHub actions to their latest versions by <a
href="https://github.com/deining"><code>@​deining</code></a> in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/4265">peter-evans/create-pull-request#4265</a></li>
<li>build(deps): bump the github-actions group with 2 updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/4273">peter-evans/create-pull-request#4273</a></li>
<li>build(deps-dev): bump the npm group with 2 updates by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/4274">peter-evans/create-pull-request#4274</a></li>
<li>build(deps-dev): bump undici from 6.22.0 to 6.23.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a>[bot]
in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/4284">peter-evans/create-pull-request#4284</a></li>
<li>Update distribution by <a
href="https://github.com/actions-bot"><code>@​actions-bot</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/4289">peter-evans/create-pull-request#4289</a></li>
<li>fix: Handle remote prune failures gracefully on self-hosted runners
by <a
href="https://github.com/peter-evans"><code>@​peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/4295">peter-evans/create-pull-request#4295</a></li>
<li>feat: add <code>@​octokit/plugin-retry</code> to handle retriable
server errors by <a
href="https://github.com/peter-evans"><code>@​peter-evans</code></a> in
<a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/4298">peter-evans/create-pull-request#4298</a></li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/deining"><code>@​deining</code></a> made
their first contribution in <a
href="https://redirect.github.com/peter-evans/create-pull-request/pull/4265">peter-evans/create-pull-request#4265</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/peter-evans/create-pull-request/compare/v8.0.0...v8.1.0">https://github.com/peter-evans/create-pull-request/compare/v8.0.0...v8.1.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/c0f553fe549906ede9cf27b5156039d195d2ece0"><code>c0f553f</code></a>
feat: add <code>@​octokit/plugin-retry</code> to handle retriable server
errors (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/4298">#4298</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/70001242bfa9ec7844891e620fdda69a2a2a06c7"><code>7000124</code></a>
fix: Handle remote prune failures gracefully (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/4295">#4295</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/34aa40e9cf0bb8b5be745a552003fdeb25e4dd3a"><code>34aa40e</code></a>
build: update distribution (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/4289">#4289</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/641099ddca097df58c3369dd5e1f33322b223029"><code>641099d</code></a>
build(deps-dev): bump undici from 6.22.0 to 6.23.0 (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/4284">#4284</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/2271f1ddcf09437ed8f019733eb5cfba58ac76f0"><code>2271f1d</code></a>
build(deps-dev): bump the npm group with 2 updates (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/4274">#4274</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/437c31a11dd02128dd37633ad8d3832853477e7a"><code>437c31a</code></a>
build(deps): bump the github-actions group with 2 updates (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/4273">#4273</a>)</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/0979079bc20c05bbbb590a56c21c4e2b1d1f1bbe"><code>0979079</code></a>
docs: update readme</li>
<li><a
href="https://github.com/peter-evans/create-pull-request/commit/5b751cdf403b4f0314c656b2618939e4c8bdf824"><code>5b751cd</code></a>
README.md: bump given GitHub actions to their latest versions (<a
href="https://redirect.github.com/peter-evans/create-pull-request/issues/4265">#4265</a>)</li>
<li>See full diff in <a
href="https://github.com/peter-evans/create-pull-request/compare/98357b18bf14b5342f975ff684046ec3b2a07725...c0f553fe549906ede9cf27b5156039d195d2ece0">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Reformat criteria for Commit Access and related responsibilities into a bulleted list for better readability.

I suspect this was the original intended format

Closes #40916

COPYBARA_INTEGRATE_REVIEW=#40916 from FidelSch:patch-1 30c8260
PiperOrigin-RevId: 864895989
lang: Python

Closes #37589

PiperOrigin-RevId: 864907267
### Description

Fixes issue #31706, removes `pytype: disable=pyi-error`

### Testing

CI

Closes #41480

COPYBARA_INTEGRATE_REVIEW=#41480 from asheshvidyut:fix/issue/31706 85a70c7
PiperOrigin-RevId: 864910687
This change removes the chttp2_bound_write_size experiment flag and makes the experimental behavior the default. The experiment was already rolled out and defaulted to true.

PiperOrigin-RevId: 864928093
…structor (#41502)

This should fix #40141. The `std::move` call there is incorrect, because the `engine_` field can be used later in `LookupSRV` and `LookupTXT`.

<!--

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 #41502

COPYBARA_INTEGRATE_REVIEW=#41502 from murgatroid99:dns_service_resolver_move_fix b4bdd77
PiperOrigin-RevId: 864932736
Closes #41083

COPYBARA_INTEGRATE_REVIEW=#41083 from easwars:go_release_v1.77.0 c8d2345
PiperOrigin-RevId: 864973691
- [transport] Expanding the TCP metric set of choatic_good v2.
- [transport] Formatting timestamp for EndpoinWriteMetricsTrace.
- [channelz] Exposing const reference to underlying property list for PropertyList.
- [test-util] Update expectations to match the added TCP metrics.

PiperOrigin-RevId: 865191430
#41324)

- Run CI and normal specs with Ruby 4.0.1
- Updates ruby-compiler-dock to `1.11.1` to bring Ruby 4.0 cross compile support.
- updates Rubocop and resolves latent warnings since update is needed for compatibility to avoid runtime warnings on modern Ruby
- Adds missing `syslog` development dependency to resolve nag on more recent Ruby versions where it has moved to a bundled gem, rather than default gem as in `<= 3.3`
- Weakens a single test assertion for bidi servers since `.inspect` of certain Ruby errors (e.g `NoMethodError`) serialize differently in `4.0` onwards

Closes #41324

PiperOrigin-RevId: 865208597
This change introduces `InstrumentLabel` to represent telemetry labels as small integer indices, backed by a global string interning table. `InstrumentLabelSet` uses a `BitSet` for efficient storage and operations on sets of labels. This improves performance by reducing string comparisons and hash table lookups in label-related operations within the telemetry system.

PiperOrigin-RevId: 865221135
…tems() or list(metadata.values()) etc. (#41481)

### Description

Fixes #41412

### Testing

CI

```py
>>> from grpc.aio._metadata import Metadata
>>> m = Metadata(("user", "tjstum"), ("source", "keyboard"), ("source", "typing"))
>>> m.keys()
KeysView(OrderedDict([('user', ['tjstum']), ('source', ['keyboard', 'typing'])]))
>>> m.values()
ValuesView(OrderedDict([('user', ['tjstum']), ('source', ['keyboard', 'typing'])]))
>>> m.items()
ItemsView(OrderedDict([('user', ['tjstum']), ('source', ['keyboard', 'typing'])]))
>>> for k in m.keys():
...     print(k)
...
user
source
>>> for v in m.values():
...     print(v)
...
['tjstum']
['keyboard', 'typing']
>>> for i in m.items():
...     print(i)
...
('user', ['tjstum'])
('source', ['keyboard', 'typing'])
>>> list(m.keys())
['user', 'source']
>>> list(m.values())
[['tjstum'], ['keyboard', 'typing']]
>>> list(m.items())
[('user', ['tjstum']), ('source', ['keyboard', 'typing'])]
```

Closes #41481

COPYBARA_INTEGRATE_REVIEW=#41481 from asheshvidyut:fix/issue/41412 1c1a897
PiperOrigin-RevId: 865240012
PiperOrigin-RevId: 865286790
@kannanjgithub kannanjgithub merged commit 6bfb39e into kannanjgithub:mcs Feb 4, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.