grpc/grpc
### [`v1.56.0`](https://togithub.com/grpc/grpc/releases/tag/v1.56.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.55.0...v1.56.0)
This is release 1.56.0 ([galvanized](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- \[c-ares] Backport "\[c-ares] Upgrade c-ares dependency to 1.19.1 ([#33392](https://togithub.com/grpc/grpc/issues/33392))" to v1.56.x. ([#33411](https://togithub.com/grpc/grpc/pull/33411))
- \[Rls] Backport "\[Rls] de-experimentalize RLS in XDS ([#33290](https://togithub.com/grpc/grpc/issues/33290))" to v1.56.x. ([#33330](https://togithub.com/grpc/grpc/pull/33330))
- \[core] Add support for vsock transport. ([#32847](https://togithub.com/grpc/grpc/pull/32847))
- \[JSON] fix bug that incorrectly allowed trailing commas after an empty container. ([#33158](https://togithub.com/grpc/grpc/pull/33158))
- \[BoringSSL] Update third_party/boringssl-with-bazel. ([#33150](https://togithub.com/grpc/grpc/pull/33150))
- \[outlier detection] fix crash with pick_first and add tests. ([#33069](https://togithub.com/grpc/grpc/pull/33069))
- \[EventEngine] Change TXT lookup result type to `std::vector`. ([#33030](https://togithub.com/grpc/grpc/pull/33030))
- \[Build] Removed gRPC_PROTOBUF_PACKAGE_TYPE, supporting config only. ([#32988](https://togithub.com/grpc/grpc/pull/32988))
- \[EventEngine] Update contract for Listener's on_shutdown execution. ([#33003](https://togithub.com/grpc/grpc/pull/33003))
- \[Documentation] Update docs for TryCancel() on ServerContext. ([#32889](https://togithub.com/grpc/grpc/pull/32889))
- \[Compiler Fix] Bring declarations and definitions to be in sync. ([#32911](https://togithub.com/grpc/grpc/pull/32911))
## C++
- \[Authz] Support customizable audit functionality for authorization policy. ([#33145](https://togithub.com/grpc/grpc/pull/33145), [#32995](https://togithub.com/grpc/grpc/pull/32995), [#32944](https://togithub.com/grpc/grpc/pull/32944), [#32970](https://togithub.com/grpc/grpc/pull/32970), [#33196](https://togithub.com/grpc/grpc/pull/33196), [#32750](https://togithub.com/grpc/grpc/pull/32750), [#33183](https://togithub.com/grpc/grpc/pull/33183), [#33026](https://togithub.com/grpc/grpc/pull/33026), [#32828](https://togithub.com/grpc/grpc/pull/32828), [#33252](https://togithub.com/grpc/grpc/pull/33252), [#33004](https://togithub.com/grpc/grpc/pull/33004), [#32976](https://togithub.com/grpc/grpc/pull/32976))
- \[example] Server reflection. ([#33162](https://togithub.com/grpc/grpc/pull/33162))
## C\#
- \[CSHARP] Add base_namespace experimental option to C# plugin. ([#32636](https://togithub.com/grpc/grpc/pull/32636))
- \[csharp proto plugin] Apply Obsolete attribute to deprecated services and methods in C# generated code. ([#32414](https://togithub.com/grpc/grpc/pull/32414))
## Objective-C
- \[Deps] Upgrade Protobuf to v23.1. ([#33164](https://togithub.com/grpc/grpc/pull/33164))
## Python
- \[aio types] Fix some grpc.aio python types. ([#32475](https://togithub.com/grpc/grpc/pull/32475))
## Ruby
- \[ruby] fix re2 compilation when older system version installed. ([#32580](https://togithub.com/grpc/grpc/pull/32580))
### [`v1.55.0`](https://togithub.com/grpc/grpc/releases/tag/v1.55.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.54.2...v1.55.0)
This is release 1.55.0 ([grandslam](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- \[Compiler Fix] Backport - Bring declarations and definitions to be in sync ([#32911](https://togithub.com/grpc/grpc/issues/32911)). ([#32915](https://togithub.com/grpc/grpc/pull/32915))
- \[XDS] Revert "Revert "XDS: enable XDS federation by default ([#32711](https://togithub.com/grpc/grpc/issues/32711))" ([#32814](https://togithub.com/grpc/grpc/issues/32814)). ([#32902](https://togithub.com/grpc/grpc/pull/32902))
- \[cleanup] Remove public_headers_must_be_c89 test. ([#32898](https://togithub.com/grpc/grpc/pull/32898))
- \[tcp] Add channel argument for SO_RVCBUF size. ([#32887](https://togithub.com/grpc/grpc/pull/32887))
- \[xds] Remove variable protection from custom LB policies. ([#32888](https://togithub.com/grpc/grpc/pull/32888))
- \[BoringSSL] Update third_party/boringssl-with-bazel. ([#32868](https://togithub.com/grpc/grpc/pull/32868))
- \[protobuf] Upgrade third_party/protobuf to 22.x. ([#32606](https://togithub.com/grpc/grpc/pull/32606))
- \[HTTP Proxy] Support CIDR blocks in `no_proxy` config. ([#31119](https://togithub.com/grpc/grpc/pull/31119))
## All wrapped languages
- \[Deps] Backport-1.55: Upgrade Protobuf to v23.1. ([#33165](https://togithub.com/grpc/grpc/pull/33165))
## C++
- \[Build] Backport-1.55: Removed gRPC_PROTOBUF_PACKAGE_TYPE, supporting config only. ([#33018](https://togithub.com/grpc/grpc/pull/33018))
- FindProtobuf doesn’t work with Protobuf v22 and later so gRPC stops giving an option to choose a search mode when finding a Protobuf Package, expecting Protobuf is installed using CMake.
## Ruby
- \[Ruby] rubify type names start with lower case or non-alpha characters. ([#32604](https://togithub.com/grpc/grpc/pull/32604))
### [`v1.54.2`](https://togithub.com/grpc/grpc/releases/tag/v1.54.2)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.54.0...v1.54.2)
This is release gRPC Core 1.54.2 (gracious).
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes.
- Fixed [CVE-2023-32731](https://www.cve.org/cverecord?id=CVE-2023-32731)
- Fixed [CVE-2023-32732](https://www.cve.org/cverecord?id=CVE-2023-32732)
### [`v1.54.0`](https://togithub.com/grpc/grpc/releases/tag/v1.54.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.53.1...v1.54.0)
This is release 1.54.0 ([gracious](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- Per [Foundational C++ Support](https://togithub.com/google/oss-policies-info/blob/main/foundational-cxx-support-matrix.md), gRPC dropped Visual Studio 2017 support, the minimum version of Visual Studio that gRPC supports is 2019.
- XDS: enable XDS federation by default. ([#32711](https://togithub.com/grpc/grpc/pull/32711))
- \[EventEngine] Add EventEngine::\*Handle equality operators. ([#32695](https://togithub.com/grpc/grpc/pull/32695))
- TlsCreds: Support revocation of intermediate in chain. ([#32544](https://togithub.com/grpc/grpc/pull/32544))
- \[config] Move global config alongside core configuration. ([#30788](https://togithub.com/grpc/grpc/pull/30788))
- feat: Auth lib: Remove 3PI config url validation. ([#32450](https://togithub.com/grpc/grpc/pull/32450))
## C++
- Upgrade abseil to [`2023012`](https://togithub.com/grpc/grpc/commit/20230125).2. ([#32733](https://togithub.com/grpc/grpc/pull/32733))
- Update minimum MSVC version to 2019. ([#32614](https://togithub.com/grpc/grpc/pull/32614))
- \[GcpObservability C++] Backport: De-experimentalize API ([#32715](https://togithub.com/grpc/grpc/issues/32715)). ([#32813](https://togithub.com/grpc/grpc/pull/32813))
- The GCP Observability API provides users with a simple way to export logging, tracing, and metrics to Google Cloud Operations. For more information, please see [this blog post](https://cloud.google.com/blog/products/networking/introducing-grpc-observability-for-microservices).
- OpenCensus: Fix round_trip time. ([#32694](https://togithub.com/grpc/grpc/pull/32694))
- Update OpenCensus to HEAD ([`5501a1a`](https://togithub.com/grpc/grpc/commit/5501a1a)). ([#32687](https://togithub.com/grpc/grpc/pull/32687))
- OpenCensus: Add annotations for messages. ([#32646](https://togithub.com/grpc/grpc/pull/32646))
## PHP
- Use correct namespace for checking if the isDefaultRootsPemSet method exists. ([#31580](https://togithub.com/grpc/grpc/pull/31580))
## Python
- Fix DeprecationWarning when calling asyncio.get_event_loop(). ([#32533](https://togithub.com/grpc/grpc/pull/32533))
- Remove references to deprecated syntax field. ([#32497](https://togithub.com/grpc/grpc/pull/32497))
### [`v1.53.1`](https://togithub.com/grpc/grpc/releases/tag/v1.53.1)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.53.0...v1.53.1)
This is release gRPC Core 1.53.1 (glockenspiel).
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes.
- Fixed [CVE-2023-32731](https://www.cve.org/cverecord?id=CVE-2023-32731)
- Fixed [CVE-2023-32732](https://www.cve.org/cverecord?id=CVE-2023-32732)
### [`v1.53.0`](https://togithub.com/grpc/grpc/releases/tag/v1.53.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.52.0...v1.53.0)
This is release 1.53.0 ([glockenspiel](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- xDS: fix crash when removing the last endpoint from the last locality in weighted_target. ([#32592](https://togithub.com/grpc/grpc/pull/32592))
- filter stack: pass peer name up via recv_initial_metadata batch. ([#31933](https://togithub.com/grpc/grpc/pull/31933))
- \[EventEngine] Add advice against blocking work in callbacks. ([#32397](https://togithub.com/grpc/grpc/pull/32397))
- \[http2] Dont drop connections on metadata limit exceeded. ([#32309](https://togithub.com/grpc/grpc/pull/32309))
- xDS: reject aggregate cluster with empty cluster list. ([#32238](https://togithub.com/grpc/grpc/pull/32238))
- Fix Python epoll1 Fork Support. ([#32196](https://togithub.com/grpc/grpc/pull/32196))
- server: introduce ServerMetricRecorder API and move per-call reporting from a C++ interceptor to a C-core filter. ([#32106](https://togithub.com/grpc/grpc/pull/32106))
- \[EventEngine] Add invalid handle types to the public API. ([#32202](https://togithub.com/grpc/grpc/pull/32202))
- \[EventEngine] Refactoring the EventEngine Test Suite: Part 1. ([#32127](https://togithub.com/grpc/grpc/pull/32127))
- xDS: fix WeightedClusters total weight handling. ([#32134](https://togithub.com/grpc/grpc/pull/32134))
## C++
- Update minimum MSVC version to 2019. ([#32615](https://togithub.com/grpc/grpc/pull/32615))
- Use CMake variables for paths in pkg-config files. ([#31671](https://togithub.com/grpc/grpc/pull/31671))
## C\#
- Grpc.Tools: Use x86 protoc binaries on arm64 Windows. ([#32017](https://togithub.com/grpc/grpc/pull/32017))
## Python
- Support python 3.11 on aarch64. ([#32270](https://togithub.com/grpc/grpc/pull/32270))
- Include .pyi file. ([#32268](https://togithub.com/grpc/grpc/pull/32268))
- De-experimentalize wait-for-ready. ([#32143](https://togithub.com/grpc/grpc/pull/32143))
- De-experimentalize compression. ([#32138](https://togithub.com/grpc/grpc/pull/32138))
## Ruby
- \[ruby]: add pre-compiled binaries for ruby 3.2; drop them for ruby 2.6. ([#32089](https://togithub.com/grpc/grpc/pull/32089))
### [`v1.52.0`](https://togithub.com/grpc/grpc/releases/tag/v1.52.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.51.3...v1.52.0)
This is release 1.52.0 ([gribkoff](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- \[༺ EventEngine ༻] Specify requirements for Run\* immediate execution. ([#32028](https://togithub.com/grpc/grpc/pull/32028))
- Tracing: Add annotations for when call is removed from resolver result queue and lb pick queue. ([#31913](https://togithub.com/grpc/grpc/pull/31913))
- ring_hash LB: cap ring size to 4096 with channel arg to override. ([#31692](https://togithub.com/grpc/grpc/pull/31692))
## C++
- Cmake add separate export for plugin targets. ([#31525](https://togithub.com/grpc/grpc/pull/31525))
## C\#
- Add internal documentation for Grpc.Tools MSBuild integration. ([#31784](https://togithub.com/grpc/grpc/pull/31784))
## Python
- Change Aio abort() function return type to NoReturn. ([#31984](https://togithub.com/grpc/grpc/pull/31984))
- Change the annotated return type of `UnaryStreamCall` and `StreamStreamCall` from `AsyncIterable` to `AsyncIterator`. ([#31906](https://togithub.com/grpc/grpc/pull/31906))
- Build native MacOS arm64 artifacts (universal2). ([#31747](https://togithub.com/grpc/grpc/pull/31747))
- Respect CC variable in grpcio python build. ([#26480](https://togithub.com/grpc/grpc/pull/26480))
- Revert "Build with System OpenSSL on Mac OS arm64 ([#31096](https://togithub.com/grpc/grpc/issues/31096))". ([#31741](https://togithub.com/grpc/grpc/pull/31741))
## Ruby
- Backport "\[ruby]: add pre-compiled binaries for ruby 3.2; drop them for ruby 2.6 [#32089](https://togithub.com/grpc/grpc/issues/32089)" to v1.52.x. ([#32157](https://togithub.com/grpc/grpc/pull/32157))
- remove some default allocators. ([#30434](https://togithub.com/grpc/grpc/pull/30434))
- Fix Ruby build errors in 3.2.0 on Apple M1. ([#31997](https://togithub.com/grpc/grpc/pull/31997))
- \[Ruby] build: make exported symbol files platform-specific. ([#31970](https://togithub.com/grpc/grpc/pull/31970))
### [`v1.51.3`](https://togithub.com/grpc/grpc/releases/tag/v1.51.3)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.51.1...v1.51.3)
This is release gRPC Core 1.51.3 (galaxy).
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release is a Python-only patch to release universal2 Mac OS artifacts compatible with both x86 and arm64.
## Python
- Backport of [#31747](https://togithub.com/grpc/grpc/issues/31747) to v1.51.x (Build native MacOS arm64 artifacts (universal2)) ([#32424](https://togithub.com/grpc/grpc/pull/32424))
### [`v1.51.1`](https://togithub.com/grpc/grpc/releases/tag/v1.51.1)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.51.0...v1.51.1)
This is release gRPC Core 1.51.1 (galaxy).
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes.
## Python
- Revert "Build with System OpenSSL on Mac OS arm64 ([#31096](https://togithub.com/grpc/grpc/issues/31096))". ([#31739](https://togithub.com/grpc/grpc/pull/31739))
### [`v1.51.0`](https://togithub.com/grpc/grpc/releases/tag/v1.51.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.50.0...v1.51.0)
This is release gRPC Core 1.51.0 (galaxy).
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes.
## Core
- Bump core version [`2022110`](https://togithub.com/grpc/grpc/commit/202211082118). ([#31585](https://togithub.com/grpc/grpc/pull/31585))
- c-ares DNS resolver: fix logical race between resolution timeout/cancellation and fd readability. ([#31443](https://togithub.com/grpc/grpc/pull/31443))
- \[log] Longer space for filenames. ([#31432](https://togithub.com/grpc/grpc/pull/31432))
- c-ares DNS resolver: remove unnecessary code in SRV callback. ([#31426](https://togithub.com/grpc/grpc/pull/31426))
- Correct the domain-socket client address read out from the ServerContext. ([#31108](https://togithub.com/grpc/grpc/pull/31108))
- outlier detection: remove env var protection. ([#31251](https://togithub.com/grpc/grpc/pull/31251))
- EventEngineFactoryReset - remove custom factory and reset default engine. ([#30554](https://togithub.com/grpc/grpc/pull/30554))
- \[tls] Remove support for pthread tls. ([#31040](https://togithub.com/grpc/grpc/pull/31040))
## C++
- Added version macros to gRPC C++. ([#31033](https://togithub.com/grpc/grpc/pull/31033))
- OpenCensus: Move measures, views and CensusContext to include file. ([#31341](https://togithub.com/grpc/grpc/pull/31341))
- GcpObservability: Add experimental public target. ([#31339](https://togithub.com/grpc/grpc/pull/31339))
## C\#
- Fix msbuild failing when '@' is present in path (2nd attempt). ([#31527](https://togithub.com/grpc/grpc/pull/31527))
- Revert "Fix msbuild failing when '@' is present in path". ([#31464](https://togithub.com/grpc/grpc/pull/31464))
- Fix msbuild failing when '@' is present in path. ([#31133](https://togithub.com/grpc/grpc/pull/31133))
## PHP
- fixing php 8.2 deprecations. ([#30997](https://togithub.com/grpc/grpc/pull/30997))
## Python
- Fix lack of cooldown between poll attempts. ([#31550](https://togithub.com/grpc/grpc/pull/31550))
- Build with System OpenSSL on Mac OS arm64. ([#31096](https://togithub.com/grpc/grpc/pull/31096))
- Remove enum and future. ([#31381](https://togithub.com/grpc/grpc/pull/31381))
- \[Remove Six] Remove dependency on six. ([#31340](https://togithub.com/grpc/grpc/pull/31340))
- Update xds-protos package to pull in protobuf 4.X. ([#31113](https://togithub.com/grpc/grpc/pull/31113))
### [`v1.50.0`](https://togithub.com/grpc/grpc/releases/tag/v1.50.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.49.1...v1.50.0)
This is release gRPC Core 1.50.0 (galley).
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- Derive EventEngine from std::enable_shared_from_this. ([#31060](https://togithub.com/grpc/grpc/pull/31060))
- Revert "Revert "\[chttp2] fix stream leak with queued flow control update and absence of writes ([#30907](https://togithub.com/grpc/grpc/issues/30907))" ([#30991](https://togithub.com/grpc/grpc/issues/30991))". ([#30992](https://togithub.com/grpc/grpc/pull/30992))
- \[chttp2] fix stream leak with queued flow control update and absence of writes. ([#30907](https://togithub.com/grpc/grpc/pull/30907))
- Remove `gpr_codegen`. ([#30899](https://togithub.com/grpc/grpc/pull/30899))
- client_channel: allow LB policy to communicate update errors to resolver. ([#30809](https://togithub.com/grpc/grpc/pull/30809))
- FaultInjection: Fix random number generation. ([#30623](https://togithub.com/grpc/grpc/pull/30623))
## C++
- OpenCensus Plugin: Add measure and views for started RPCs. ([#31034](https://togithub.com/grpc/grpc/pull/31034))
## C\#
- Grpc.Tools: Parse warnings from libprotobuf (fix [#27502](https://togithub.com/grpc/grpc/issues/27502)). ([#30371](https://togithub.com/grpc/grpc/pull/30371))
- Grpc.Tools add support for env variable GRPC_PROTOC_PLUGIN (fix [#27099](https://togithub.com/grpc/grpc/issues/27099)). ([#30411](https://togithub.com/grpc/grpc/pull/30411))
- Grpc.Tools document AdditionalImportDirs. ([#30405](https://togithub.com/grpc/grpc/pull/30405))
- Fix OutputOptions and GrpcOutputOptions (issue [#25950](https://togithub.com/grpc/grpc/issues/25950)). ([#30410](https://togithub.com/grpc/grpc/pull/30410))
## Python
- Support Python 3.11. ([#30818](https://togithub.com/grpc/grpc/pull/30818))
## Ruby
- Fix ruby windows ucrt build. ([#31051](https://togithub.com/grpc/grpc/pull/31051))
- Drop support for ruby 2.5. ([#30699](https://togithub.com/grpc/grpc/pull/30699))
### [`v1.49.1`](https://togithub.com/grpc/grpc/releases/tag/v1.49.1)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.49.0...v1.49.1)
This is release 1.49.1 ([gamma](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## All
- Update protobuf to v21.6 on 1.49.x. ([#31028](https://togithub.com/grpc/grpc/pull/31028))
## Ruby
- Backport "Fix ruby windows ucrt build [#31051](https://togithub.com/grpc/grpc/issues/31051)" to 1.49.x. ([#31053](https://togithub.com/grpc/grpc/pull/31053))
### [`v1.49.0`](https://togithub.com/grpc/grpc/releases/tag/v1.49.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.48.2...v1.49.0)
This is release 1.49.0 ([gamma](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- Backport: "stabilize the C2P resolver URI scheme" to v1.49.x. ([#30654](https://togithub.com/grpc/grpc/pull/30654))
- Bump core version. ([#30588](https://togithub.com/grpc/grpc/pull/30588))
- Update OpenCensus to HEAD. ([#30567](https://togithub.com/grpc/grpc/pull/30567))
- Update protobuf submodule to 3.21.5. ([#30548](https://togithub.com/grpc/grpc/pull/30548))
- Update third_party/protobuf to 3.21.4. ([#30377](https://togithub.com/grpc/grpc/pull/30377))
- \[core] Remove GRPC_INITIAL_METADATA_CORKED flag. ([#30443](https://togithub.com/grpc/grpc/pull/30443))
- HTTP2: Fix keepalive time throttling. ([#30164](https://togithub.com/grpc/grpc/pull/30164))
- Use AnyInvocable in EventEngine APIs. ([#30220](https://togithub.com/grpc/grpc/pull/30220))
## Python
- Support Python 3.11 ([#30818](https://togithub.com/grpc/grpc/issues/30818)). ([#30944](https://togithub.com/grpc/grpc/pull/30944))
- Add type stub generation support to grpcio-tools. ([#30498](https://togithub.com/grpc/grpc/pull/30498))
## Ruby
- Backport "Drop support for ruby 2.5 ([#30699](https://togithub.com/grpc/grpc/issues/30699))" to v1.49.x. ([#30762](https://togithub.com/grpc/grpc/pull/30762))
### [`v1.48.2`](https://togithub.com/grpc/grpc/releases/tag/v1.48.2)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.48.1...v1.48.2)
This is release 1.48.2 ([garum](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## All
- Update protobuf to v3.19.5 on v1.48.x. ([#31029](https://togithub.com/grpc/grpc/pull/31029))
### [`v1.48.1`](https://togithub.com/grpc/grpc/releases/tag/v1.48.1)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.48.0...v1.48.1)
This is release 1.48.1 ([garum](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- Backport EventEngine Forkables. ([#30605](https://togithub.com/grpc/grpc/pull/30605))
### [`v1.48.0`](https://togithub.com/grpc/grpc/releases/tag/v1.48.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.47.5...v1.48.0)
This is release 1.48.0 ([garum](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- Upgrade Abseil to LTS [`2022062`](https://togithub.com/grpc/grpc/commit/20220623).0 . ([#30155](https://togithub.com/grpc/grpc/pull/30155))
- Call: Send cancel op down the stack even when no ops are sent. ([#30004](https://togithub.com/grpc/grpc/pull/30004))
- FreeBSD system roots implementation. ([#29436](https://togithub.com/grpc/grpc/pull/29436))
- xDS: Workaround to get gRPC clients working with istio. ([#29841](https://togithub.com/grpc/grpc/pull/29841))
## Python
- Set Correct Platform Tag in Wheels on Mac OS with Python 3.10. ([#29857](https://togithub.com/grpc/grpc/pull/29857))
- \[Aio] Ensure Core channel closes when deallocated. ([#29797](https://togithub.com/grpc/grpc/pull/29797))
- \[Aio] Fix the wait_for_termination return value. ([#29795](https://togithub.com/grpc/grpc/pull/29795))
## Ruby
- Make the gem build on TruffleRuby. ([#27660](https://togithub.com/grpc/grpc/pull/27660))
- Support for prebuilt Ruby binary on x64-mingw-ucrt platform. ([#29684](https://togithub.com/grpc/grpc/pull/29684))
- \[Ruby] Add ruby_abi_version to exported symbols. ([#28976](https://togithub.com/grpc/grpc/pull/28976))
## Objective-C
First developer preview of XCFramework binary distribution via Cocoapod ([#28749](https://togithub.com/grpc/grpc/issues/28749)).
This brings in significant speed up to local compile time and includes support for Apple Silicon build.
- The following binary pods are made available for ObjC V1 & V2 API
- gRPC-XCFramework (source pod gRPC)
- gRPC-ProtoRPC-XCFramework (source pod gRPC-ProtoRPC)
- The following platforms and architectures are included
- ios: armv7, arm64 for device. arm64, i386, x86\_64 for simulator
- macos: x86\_64 (Intel), arm64 (Apple Silicon)
### [`v1.47.5`](https://togithub.com/grpc/grpc/releases/tag/v1.47.5)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.47.2...v1.47.5)
This is release 1.47.5 ([gridman](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release is a Python-only patch to release universal2 Mac OS artifacts compatible with both x86 and arm64.
## Python
- Backport of [#31747](https://togithub.com/grpc/grpc/issues/31747) to v1.47.x (Build native MacOS arm64 artifacts (universal2)) ([#32446](https://togithub.com/grpc/grpc/pull/32446))
### [`v1.47.2`](https://togithub.com/grpc/grpc/releases/tag/v1.47.2)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.47.0...v1.47.2)
This is release 1.47.2 ([gridman](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## All
- Update protobuf to v3.19.5 on v1.47.x. ([#31031](https://togithub.com/grpc/grpc/pull/31031))
### [`v1.47.0`](https://togithub.com/grpc/grpc/releases/tag/v1.47.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.46.5...v1.47.0)
This is release 1.47.0 ([gridman](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Announcement
gRPC C++ 1.47.0 is the first release requiring C++14 ([proposal](https://togithub.com/grpc/proposal/blob/master/L98-requiring-cpp14.md)). For those who cannot upgrade to C++14 right now, you can use gRPC C++ 1.46.x in the meantime and gRPC C++ 1.46.x will be maintained by having fixes for critical bugs (P0) and security fixes until 2023-06-01.
## Core
- xDS: Workaround to get gRPC clients working with istio ([#29841](https://togithub.com/grpc/grpc/issues/29841)). ([#29850](https://togithub.com/grpc/grpc/pull/29850))
- Bump core version to 25.0.0 for upcoming release. ([#29775](https://togithub.com/grpc/grpc/pull/29775))
- Initial support for Haiku. ([#27793](https://togithub.com/grpc/grpc/pull/27793))
- Add NetBSD support (Community-supported). ([#29542](https://togithub.com/grpc/grpc/pull/29542))
- server: per-rpc backend metric reporting. ([#29621](https://togithub.com/grpc/grpc/pull/29621))
- Remove C# implementation (individual packages will continue to be maintained through v2.46.x patches or moved to grpc-dotnet). ([#29225](https://togithub.com/grpc/grpc/pull/29225))
## C++
- Expose NoOpCertificateVerifier to C++. ([#29322](https://togithub.com/grpc/grpc/pull/29322))
- RouteGuide example: Abort if database file not found. ([#29398](https://togithub.com/grpc/grpc/pull/29398))
## C\#
- C#: Suppress CS8981 in generated source. ([#29708](https://togithub.com/grpc/grpc/pull/29708))
## Python
- Set Correct Platform Tag in Wheels on Mac OS with Python 3.10 ([#29857](https://togithub.com/grpc/grpc/issues/29857)). ([#30026](https://togithub.com/grpc/grpc/pull/30026))
- Removed manylinux2010 python artifacts. ([#29734](https://togithub.com/grpc/grpc/pull/29734))
- Allow grpcio to be built against system abseil-cpp. ([#27550](https://togithub.com/grpc/grpc/pull/27550))
- \[Python] Add an UDS example. ([#29592](https://togithub.com/grpc/grpc/pull/29592))
## Ruby
- Backport "Support for prebuilt Ruby binary on x64-mingw-ucrt platform ([#29684](https://togithub.com/grpc/grpc/issues/29684))" to 1.47.x. ([#29868](https://togithub.com/grpc/grpc/pull/29868))
- Upgrade ruby rake-compiler-dock images (and stop building ruby gem artifacts on mac, in favor of rake-compile-dock darwin builds). ([#29304](https://togithub.com/grpc/grpc/pull/29304))
## Other
- Downgrade io_bazel_rules_go to v0.27.0 restore Bazel 3.x support. ([#29596](https://togithub.com/grpc/grpc/pull/29596))
### [`v1.46.5`](https://togithub.com/grpc/grpc/releases/tag/v1.46.5)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.46.3...v1.46.5)
This is release 1.46.5 ([golazo](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## All
- Update protobuf to v3.19.5 on v1.46.x. ([#31032](https://togithub.com/grpc/grpc/pull/31032))
## Core
- Backport to 1.46.x: priority and ring_hash LBs: fix interactions when using ring_hash under priority ([#29332](https://togithub.com/grpc/grpc/issues/29332)). ([#30253](https://togithub.com/grpc/grpc/pull/30253))
- Backport to v1.46.x: ring hash: fix picker propagation bug in xds_cluster_manager policy ([#29959](https://togithub.com/grpc/grpc/issues/29959)). ([#30254](https://togithub.com/grpc/grpc/pull/30254))
## C\#
- Fix client resource leaks-issues 8451 and 28153. ([#30290](https://togithub.com/grpc/grpc/pull/30290))
### [`v1.46.3`](https://togithub.com/grpc/grpc/releases/tag/v1.46.3)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.46.1...v1.46.3)
This is release gRPC Core 1.46.3 (golazo).
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes.
## Core
- backport: xds: use federation env var to guard new-style resource name parsing ([#29725](https://togithub.com/grpc/grpc/issues/29725)) [#29727](https://togithub.com/grpc/grpc/issues/29727)
### [`v1.46.1`](https://togithub.com/grpc/grpc/releases/tag/v1.46.1)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.46.0...v1.46.1)
This is release gRPC Core 1.46.1 (golazo).
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes.
### [`v1.46.0`](https://togithub.com/grpc/grpc/releases/tag/v1.46.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.45.0...v1.46.0)
This is release 1.46.0 ([golazo](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Announcement
gRPC C++ 1.46 will be the last release supporting C++11, future releases will require C++ >= 14. We plan to backport critical (P0) bugs and security fixes to this release for a year, that is, until 2023-06-01. This change won't bump the major version of gRPC since this doesn't introduce API changes. Hence, the next version requiring C++14 will be 1.47 ([context](https://togithub.com/grpc/proposal/pull/299)).
## Core
- Ignore Connection Aborted errors on accept. ([#29318](https://togithub.com/grpc/grpc/pull/29318))
- Filter `content-length` metadata from the application. ([#29295](https://togithub.com/grpc/grpc/pull/29295))
- RetryFilter: Cleanup pending byte stream. ([#29245](https://togithub.com/grpc/grpc/pull/29245))
- HTTP Proxy: Ignore empty entry in no_proxy list. ([#29217](https://togithub.com/grpc/grpc/pull/29217))
- Adding http/1.1 support in httpcli. ([#29238](https://togithub.com/grpc/grpc/pull/29238))
- HTTP2: Initiate write for acknowledging SETTINGS frame. ([#29218](https://togithub.com/grpc/grpc/pull/29218))
- Change the unsupported polling strategy log for forking to GPR_INFO. ([#29232](https://togithub.com/grpc/grpc/pull/29232))
- Handle SSL_ERROR_WANT_WRITE error. ([#29176](https://togithub.com/grpc/grpc/pull/29176))
- TCP Async Connect: Fix Heap use-after-free. ([#29209](https://togithub.com/grpc/grpc/pull/29209))
- HTTP2: Add graceful goaway. ([#29050](https://togithub.com/grpc/grpc/pull/29050))
- Remove epollex poller. ([#29160](https://togithub.com/grpc/grpc/pull/29160))
- TlsCredentials: Comparator implementation. ([#28940](https://togithub.com/grpc/grpc/pull/28940))
- Decrease verbosity of alts handshaker logs which can happen during cancellation. ([#29058](https://togithub.com/grpc/grpc/pull/29058))
- HTTP2: Should not run cancelling logic on servers when receiving GOAWAY. ([#29067](https://togithub.com/grpc/grpc/pull/29067))
- HTTP2: Don't throttle pings from the server. ([#29053](https://togithub.com/grpc/grpc/pull/29053))
- Include ADS stream error in XDS error updates. ([#29014](https://togithub.com/grpc/grpc/pull/29014))
- Remove idempotent/cacheable requests. ([#28922](https://togithub.com/grpc/grpc/pull/28922))
## C++
- Add bazel cpp distribtest for grpc_cc_library. ([#29175](https://togithub.com/grpc/grpc/pull/29175))
## C\#
- Add support for grpc-dotnet in GKE benchmarks. ([#28975](https://togithub.com/grpc/grpc/pull/28975))
- Sync unary call after shutdown: Add a repro and fix for [#19090](https://togithub.com/grpc/grpc/issues/19090) . ([#23003](https://togithub.com/grpc/grpc/pull/23003))
- Remove C# Legacy (a.k.a. "Classic") csproj example. ([#29102](https://togithub.com/grpc/grpc/pull/29102))
## Python
- Add Python GCF Distribtest. ([#29303](https://togithub.com/grpc/grpc/pull/29303))
- Add Python Reflection Client. ([#29085](https://togithub.com/grpc/grpc/pull/29085))
- Revert "Fix prefork handler register's default behavior". ([#29229](https://togithub.com/grpc/grpc/pull/29229))
- Fix prefork handler register's default behavior. ([#29103](https://togithub.com/grpc/grpc/pull/29103))
- Fix fetching CXX variable in setup.py. ([#28873](https://togithub.com/grpc/grpc/pull/28873))
## Ruby
- Support pre-built binaries for Ruby 3.1. ([#29000](https://togithub.com/grpc/grpc/pull/29000))
- Make sure to always receive initial metadata in ruby. ([#29155](https://togithub.com/grpc/grpc/pull/29155))
### [`v1.45.0`](https://togithub.com/grpc/grpc/releases/tag/v1.45.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.44.0...v1.45.0)
This is release 1.45.0 ([gravity](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- Backport "Include ADS stream error in XDS error updates ([#29014](https://togithub.com/grpc/grpc/issues/29014))" to 1.45.x. ([#29121](https://togithub.com/grpc/grpc/pull/29121))
- Bump core version to 23.0.0 for upcoming release. ([#29026](https://togithub.com/grpc/grpc/pull/29026))
- Fix memory leak in HTTP request security handshake cancellation. ([#28971](https://togithub.com/grpc/grpc/pull/28971))
- CompositeChannelCredentials: Comparator implementation. ([#28902](https://togithub.com/grpc/grpc/pull/28902))
- Delete custom iomgr. ([#28816](https://togithub.com/grpc/grpc/pull/28816))
- Implement transparent retries. ([#28548](https://togithub.com/grpc/grpc/pull/28548))
- Uniquify channel args keys. ([#28799](https://togithub.com/grpc/grpc/pull/28799))
- Set trailing_metadata_available for recv_initial_metadata ops when generating a fake status. ([#28827](https://togithub.com/grpc/grpc/pull/28827))
- Eliminate gRPC insecure build. ([#25586](https://togithub.com/grpc/grpc/pull/25586))
- Fix for a racy WorkSerializer shutdown. ([#28769](https://togithub.com/grpc/grpc/pull/28769))
- InsecureCredentials: singleton object. ([#28777](https://togithub.com/grpc/grpc/pull/28777))
- Add http cancel api. ([#28354](https://togithub.com/grpc/grpc/pull/28354))
- Memory leak fix on windows in grpc_tcp_create(). ([#27457](https://togithub.com/grpc/grpc/pull/27457))
- xDS: Rbac filter updates. ([#28568](https://togithub.com/grpc/grpc/pull/28568))
## C++
- Bump the minimum gcc to 5. ([#28786](https://togithub.com/grpc/grpc/pull/28786))
- Add experimental API for CRL checking support to gRPC C++ TlsCredentials. ([#28407](https://togithub.com/grpc/grpc/pull/28407))
## C\#
- \[C#] Add cancellation token overloads to streaming interfaces. ([#27886](https://togithub.com/grpc/grpc/pull/27886))
- \[C#] Grpc.Core.Api nullable fixes. ([#28616](https://togithub.com/grpc/grpc/pull/28616))
## Objective-C
- Patch GRPCCallOptions to use nonatomic properties. ([#28972](https://togithub.com/grpc/grpc/pull/28972))
## Python
- Reimplement Gevent Integration. ([#28276](https://togithub.com/grpc/grpc/pull/28276))
- Support musllinux binary wheels on x64 and x86. ([#28092](https://togithub.com/grpc/grpc/pull/28092))
- Increase the Python protobuf requirement to >=3.12.0. ([#28604](https://togithub.com/grpc/grpc/pull/28604))
## Other
- Upgrade googletest. ([#27287](https://togithub.com/grpc/grpc/pull/27287))
### [`v1.44.0`](https://togithub.com/grpc/grpc/releases/tag/v1.44.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.43.0...v1.44.0)
This is release 1.44.0 ([great](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- xDS: Rbac filter updates ([#28568](https://togithub.com/grpc/grpc/issues/28568)). ([#28608](https://togithub.com/grpc/grpc/pull/28608))
- Fix xDS client for multiple watchers. ([#28521](https://togithub.com/grpc/grpc/pull/28521))
- bump C-core version for upcoming release. ([#28527](https://togithub.com/grpc/grpc/pull/28527))
- Add a trace to list which filters are contained in a channel stack. ([#28530](https://togithub.com/grpc/grpc/pull/28530))
- Remove grpc_httpcli_context. ([#27867](https://togithub.com/grpc/grpc/pull/27867))
- xDS: Add support for RBAC HTTP filter. ([#28309](https://togithub.com/grpc/grpc/pull/28309))
- API to cancel grpc_resolve_address. ([#27883](https://togithub.com/grpc/grpc/pull/27883))
- Replace work serializer with a mutex in c-ares resolver. ([#27858](https://togithub.com/grpc/grpc/pull/27858))
- xDS: Add graceful shutdown for old connections on listener resource update. ([#28154](https://togithub.com/grpc/grpc/pull/28154))
## C++
- Promote ClientContext::set_wait_for_ready to be non-experimental. ([#28247](https://togithub.com/grpc/grpc/pull/28247))
## C\#
- Only apply "singleplatform" nuget suffix when actually needed. ([#28677](https://togithub.com/grpc/grpc/pull/28677))
- \[C#] Add ConfigureAwait to AsyncUnaryCall and AsyncClientStreamingCall. ([#28235](https://togithub.com/grpc/grpc/pull/28235))
## Python
- Add python async example for hellostreamingworld using generator. ([#27343](https://togithub.com/grpc/grpc/pull/27343))
- Disable \__wrap_memcpy hack for Python builds. ([#28410](https://togithub.com/grpc/grpc/pull/28410))
- Bump Bazel Python Cython dependency to 0.29.26. ([#28398](https://togithub.com/grpc/grpc/pull/28398))
- Fix libatomic linking on Raspberry Pi OS Bullseye. ([#28041](https://togithub.com/grpc/grpc/pull/28041))
- Allow generated proto sources in remote repositories for py_proto_library. ([#28103](https://togithub.com/grpc/grpc/pull/28103))
## Ruby
- Remove ruby 2.4 support. ([#28522](https://togithub.com/grpc/grpc/pull/28522))
- Add an env var to override make parallelism in ruby build. ([#28250](https://togithub.com/grpc/grpc/pull/28250))
### [`v1.43.0`](https://togithub.com/grpc/grpc/releases/tag/v1.43.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.42.0...v1.43.0)
This is release 1.43.0 ([green](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- Remove redundant work serializer usage in c-ares windows code. ([#28016](https://togithub.com/grpc/grpc/pull/28016))
- Support RDS updates on the server. ([#27851](https://togithub.com/grpc/grpc/pull/27851))
- Use WorkSerializer in XdsClient to propagate updates in a synchronized manner. ([#27975](https://togithub.com/grpc/grpc/pull/27975))
- Support Custom Post-handshake Verification in TlsCredentials. ([#25631](https://togithub.com/grpc/grpc/pull/25631))
- Reintroduce the EventEngine default factory. ([#27920](https://togithub.com/grpc/grpc/pull/27920))
- Assert Android API >= v21. ([#27943](https://togithub.com/grpc/grpc/pull/27943))
- Add support for abstract unix domain sockets. ([#27906](https://togithub.com/grpc/grpc/pull/27906))
## C++
- OpenCensus: Move metadata storage to arena. ([#27948](https://togithub.com/grpc/grpc/pull/27948))
## C\#
- \[C#] Add nullable type attributes to Grpc.Core.Api. ([#27887](https://togithub.com/grpc/grpc/pull/27887))
## Objective-C
- Revert "Revert "\[objc] GRPCMetadataDictionary convenient typedef"". ([#27882](https://togithub.com/grpc/grpc/pull/27882))
## Python
- \[Aio] Validate the input type for set_trailing_metadata and abort. ([#27958](https://togithub.com/grpc/grpc/pull/27958))
### [`v1.42.0`](https://togithub.com/grpc/grpc/releases/tag/v1.42.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.41.1...v1.42.0)
This is release 1.42.0 ([granola](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- Update RDS parsing for use on servers. ([#27715](https://togithub.com/grpc/grpc/pull/27715))
- Upgrade Abseil to LTS [`2021032`](https://togithub.com/grpc/grpc/commit/20210324), Patch 2. ([#27811](https://togithub.com/grpc/grpc/pull/27811))
- Upgrade bazel to 4.2.1 (LTS), upgrade bazel toolchain to 4.1.0. ([#27410](https://togithub.com/grpc/grpc/pull/27410))
- Remove old backwards compatibility cronet compression workaround code. ([#27701](https://togithub.com/grpc/grpc/pull/27701))
- EventEngine Test Suite: Timers. ([#27496](https://togithub.com/grpc/grpc/pull/27496))
- EventEngine::Closure. ([#27395](https://togithub.com/grpc/grpc/pull/27395))
- OpenCensusCallTracer: Move context generation to StartTransportStreamOpBatch. ([#27523](https://togithub.com/grpc/grpc/pull/27523))
- Fix client idle filter. ([#27611](https://togithub.com/grpc/grpc/pull/27611))
- allow connectivity state watching to work on lame channels. ([#27747](https://togithub.com/grpc/grpc/pull/27747))
- grpclb: implement subchannel caching. ([#27657](https://togithub.com/grpc/grpc/pull/27657))
- xds: change CSDS to populate new generic_xds_configs field. ([#27794](https://togithub.com/grpc/grpc/pull/27794))
## C++
- Describe support-levels for undocumented supported platforms. ([#27363](https://togithub.com/grpc/grpc/pull/27363))
## C\#
- Fix link error when building app with Xamarin.iOS. ([#27345](https://togithub.com/grpc/grpc/pull/27345))
- C#: metadata.Get and GetAll should accept uppercase keys. ([#27383](https://togithub.com/grpc/grpc/pull/27383))
- Fix use-after-free metadata corruption in C# when receiving response headers for streaming response calls. ([#27382](https://togithub.com/grpc/grpc/pull/27382))
## Objective-C
- \[objc] GRPCErrorCode enum base type to int32\_t. ([#27908](https://togithub.com/grpc/grpc/pull/27908))
- \[objc] Adding lightweight generic to GPRCCallOptions's initialMetadata prop . ([#27905](https://togithub.com/grpc/grpc/pull/27905))
- \[objc] GRPCMetadataDictionary convenient typedef. ([#27845](https://togithub.com/grpc/grpc/pull/27845))
- \[objc] Switch to proto forward declare for gRPC codegen plugin. ([#27444](https://togithub.com/grpc/grpc/pull/27444))
## Python
- Add Aspects to Bazel py_proto_library and py_grpc_library Rules. ([#27275](https://togithub.com/grpc/grpc/pull/27275))
- \[Aio] Add add_done_callback/done/cancelled methods to ServicerContext. ([#27767](https://togithub.com/grpc/grpc/pull/27767))
- \[Aio] Correct the typing of input metadata. ([#27768](https://togithub.com/grpc/grpc/pull/27768))
- Address leak when using request stream interceptors ([#25449](https://togithub.com/grpc/grpc/issues/25449)). ([#27571](https://togithub.com/grpc/grpc/pull/27571))
- Catch ExecuteBatchError in \_consume_request_iterator. ([#27240](https://togithub.com/grpc/grpc/pull/27240))
- \[Aio] Resolve deprecated warnings from asyncio. ([#27635](https://togithub.com/grpc/grpc/pull/27635))
- Create Bazel gevent test harness. ([#27507](https://togithub.com/grpc/grpc/pull/27507))
- Add python_requires >=3.6 to grpcio-\* packages. ([#27495](https://togithub.com/grpc/grpc/pull/27495))
- fix: use == instead of is when comparing with a certain types of literals. ([#26519](https://togithub.com/grpc/grpc/pull/26519))
- python: fix type annotation for the \_metadata field. ([#27251](https://togithub.com/grpc/grpc/pull/27251))
## Ruby
- ruby: add arm64 darwin support. ([#25992](https://togithub.com/grpc/grpc/pull/25992))
- ruby: build native Darwin gems using rake-compiler-dock. ([#25794](https://togithub.com/grpc/grpc/pull/25794))
### [`v1.41.1`](https://togithub.com/grpc/grpc/releases/tag/v1.41.1)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.41.0...v1.41.1)
This is release 1.41.0 (goat) of gRPC Core.
For gRPC documentation, see grpc.io.
### [`v1.41.0`](https://togithub.com/grpc/grpc/releases/tag/v1.41.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.40.0...v1.41.0)
This is release 1.41.0 ([goat](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- De-experimentalize XdsCredentials and XdsServerCredentials API. ([#26544](https://togithub.com/grpc/grpc/pull/26544))
- xDS: Remove environmental variable guard for security. ([#27290](https://togithub.com/grpc/grpc/pull/27290))
- xDS Security: Use new way to fetch certificate provider plugin instance config. ([#27264](https://togithub.com/grpc/grpc/pull/27264))
- xDS server serving status: Use a struct to allow more fields to be added in the future. ([#27242](https://togithub.com/grpc/grpc/pull/27242))
- Annotate impl/codegen with IWYU pragmas. ([#27252](https://togithub.com/grpc/grpc/pull/27252))
- Update submodule envoy-api to origin/main. ([#27256](https://togithub.com/grpc/grpc/pull/27256))
- Upgrade third_party/protobuf to v3.17.3. ([#27227](https://togithub.com/grpc/grpc/pull/27227))
- update submodule boringssl-with-bazel with origin/master-with-bazel. ([#27208](https://togithub.com/grpc/grpc/pull/27208))
- Delete libuv-iomgr implementation and GRPC_UV build option. ([#27188](https://togithub.com/grpc/grpc/pull/27188))
- Allow access to Google API regional endpoints via Google Default Credentials. ([#27155](https://togithub.com/grpc/grpc/pull/27155))
- Remove GPR_\*\_TLS macros except PTHREAD. ([#26974](https://togithub.com/grpc/grpc/pull/26974))
- Limit initial window size increases and per-stream window delta. ([#26342](https://togithub.com/grpc/grpc/pull/26342))
## C++
- Bump version to v1.41.0-pre1. ([#27371](https://togithub.com/grpc/grpc/pull/27371))
- De-experimentalize XdsServerBuilder. ([#27296](https://togithub.com/grpc/grpc/pull/27296))
- C++ opencensus filter: Fix point of creating context for overall call. ([#27221](https://togithub.com/grpc/grpc/pull/27221))
- Flag grpc++\_test library testonly. ([#27214](https://togithub.com/grpc/grpc/pull/27214))
- Add note on officially supported platforms. ([#22344](https://togithub.com/grpc/grpc/pull/22344))
- Open census call attempt span name and attribute changes ([#26889](https://togithub.com/grpc/grpc/issues/26889)). ([#26902](https://togithub.com/grpc/grpc/pull/26902))
- Open census call attempt span name and attribute changes. ([#26889](https://togithub.com/grpc/grpc/pull/26889))
## C\#
- Backport [#27382](https://togithub.com/grpc/grpc/issues/27382) to v1.41.x. ([#27398](https://togithub.com/grpc/grpc/pull/27398))
- \[csharp] Fix error loading library grpc_csharp_ext.\*.dll on windows with non-ASCII encoding. ([#26762](https://togithub.com/grpc/grpc/pull/26762))
- Annotate copied Content native lib items with package id to enable customization. ([#26725](https://togithub.com/grpc/grpc/pull/26725))
## Objective-C
- Objective-C: Fix issue with creating a Unix file socket. ([#26931](https://togithub.com/grpc/grpc/pull/26931))
## Python
- Use manylinux\_2\_17 instead of manylinux\_2\_24 tag for manylinux2014 aarch64 wheels. ([#27280](https://togithub.com/grpc/grpc/pull/27280))
- Add Python 3.10 drop 3.5. ([#26074](https://togithub.com/grpc/grpc/pull/26074))
- \[Aio] Remove custom IO manager support. ([#27090](https://togithub.com/grpc/grpc/pull/27090))
### [`v1.40.0`](https://togithub.com/grpc/grpc/releases/tag/v1.40.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.39.0...v1.40.0)
This is release 1.40.0 ([guileless](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
#### Core
- Update Envoy API to the latest version (2021-07-30). ([#26848](https://togithub.com/grpc/grpc/pull/26848))
- Enable retries by default. ([#26766](https://togithub.com/grpc/grpc/pull/26766))
- Add opentelemetry as a submodule for latest xDS API. ([#26850](https://togithub.com/grpc/grpc/pull/26850))
- Pointing the protobuf submodule to the new URL. ([#26811](https://togithub.com/grpc/grpc/pull/26811))
- Remove BUILD.gn. ([#26822](https://togithub.com/grpc/grpc/pull/26822))
- Prevent race causing early-destruction of grpc_winsocket object when creating a TCP connection. ([#26642](https://togithub.com/grpc/grpc/pull/26642))
- TLS Security Connector: Add an always-fail-handshaker when certificates are not ready. ([#26561](https://togithub.com/grpc/grpc/pull/26561))
- Enable layering checks in the Bazel build. ([#26591](https://togithub.com/grpc/grpc/pull/26591))
- Support user provided "scope" in JWT and GDC. ([#26577](https://togithub.com/grpc/grpc/pull/26577))
#### C++
- C++ opencensus filter: Fix point of creating context for overall call. ([#27238](https://togithub.com/grpc/grpc/pull/27238))
- Open census call attempt span name and attribute changes ([#26889](https://togithub.com/grpc/grpc/issues/26889)). ([#26957](https://togithub.com/grpc/grpc/pull/26957))
- Open census filter: Use new internal stats API and record retry stats. ([#26739](https://togithub.com/grpc/grpc/pull/26739))
- Add OpenCensus measures and views for retries. ([#26751](https://togithub.com/grpc/grpc/pull/26751))
#### Python
- Add retry example for gRPC Python. ([#26829](https://togithub.com/grpc/grpc/pull/26829))
- Remove Python 2.7 binary wheel generations. ([#26691](https://togithub.com/grpc/grpc/pull/26691))
- \[Aio]\[fix] catch application exception in request iterators. ([#26706](https://togithub.com/grpc/grpc/pull/26706))
### [`v1.39.0`](https://togithub.com/grpc/grpc/releases/tag/v1.39.0)
[Compare Source](https://togithub.com/grpc/grpc/compare/v1.38.1...v1.39.0)
This is release 1.39.0 ([goofy](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core.
For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases).
This release contains refinements, improvements, and bug fixes, with highlights listed below.
## Core
- Initialize tcp_posix for CFStream when needed. ([#26530](https://togithub.com/grpc/grpc/pull/26530))
- Update boringssl submodule. ([#26520](https://togithub.com/grpc/grpc/pull/26520))
- Fix backup poller races. ([#26446](https://togithub.com/grpc/grpc/pull/26446))
- I am back. ([#26464](https://togithub.com/grpc/grpc/pull/26464))
- Use default port 443 in HTTP CONNECT request. ([#26331](https://togithub.com/grpc/grpc/pull/2633
Configuration
📅 Schedule: Branch creation - "after 10pm every weekday,before 5am every weekday,every weekend" in timezone Pacific/Auckland, Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
==1.30.0
->==1.56.0
Release Notes
grpc/grpc
### [`v1.56.0`](https://togithub.com/grpc/grpc/releases/tag/v1.56.0) [Compare Source](https://togithub.com/grpc/grpc/compare/v1.55.0...v1.56.0) This is release 1.56.0 ([galvanized](https://togithub.com/grpc/grpc/blob/master/doc/g_stands_for.md)) of gRPC Core. For gRPC documentation, see [grpc.io](https://grpc.io/). For previous releases, see [Releases](https://togithub.com/grpc/grpc/releases). This release contains refinements, improvements, and bug fixes, with highlights listed below. ## Core - \[c-ares] Backport "\[c-ares] Upgrade c-ares dependency to 1.19.1 ([#33392](https://togithub.com/grpc/grpc/issues/33392))" to v1.56.x. ([#33411](https://togithub.com/grpc/grpc/pull/33411)) - \[Rls] Backport "\[Rls] de-experimentalize RLS in XDS ([#33290](https://togithub.com/grpc/grpc/issues/33290))" to v1.56.x. ([#33330](https://togithub.com/grpc/grpc/pull/33330)) - \[core] Add support for vsock transport. ([#32847](https://togithub.com/grpc/grpc/pull/32847)) - \[JSON] fix bug that incorrectly allowed trailing commas after an empty container. ([#33158](https://togithub.com/grpc/grpc/pull/33158)) - \[BoringSSL] Update third_party/boringssl-with-bazel. ([#33150](https://togithub.com/grpc/grpc/pull/33150)) - \[outlier detection] fix crash with pick_first and add tests. ([#33069](https://togithub.com/grpc/grpc/pull/33069)) - \[EventEngine] Change TXT lookup result type to `std::vectorConfiguration
📅 Schedule: Branch creation - "after 10pm every weekday,before 5am every weekday,every weekend" in timezone Pacific/Auckland, Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.