gRPC v1.23.0 Release Notes

Release Date: 2019-08-15 // over 4 years ago
  • This is the 1.23.0 release (gangnam) of gRPC Core.

    🚀 Please see the notes for the previous releases here: https://github.com/grpc/grpc/releases. Please consult https://grpc.io/ for all information regarding this product.

    🚀 This release contains refinements, improvements, and bug fixes, with highlights listed below.

    Core

    • Backport #19924 to v1.23.x. (#19935)
    • ➕ Add missing APP callback context for custom iomgr. (#19687)
    • Increase lower bound on DNS re-resolution period to 30 seconds. (#19661)
    • 👉 Make sure there is at least a header in the frame storge of H2. (#19657)
    • 🛠 Fix segfault when forking while using gevent. (#19556)
    • Mpmcqueue. (#19358)
    • Disable the backup poller when using the background poller. (#19454)
    • Clearly callout the behavior for listening ports. (#19529)
    • 0️⃣ Enable CFStream by default on iOS. (#19439)
    • 🛠 Fix DNS resolver cooldown. (#19489)
    • 🏁 Simplify and fix c-ares TCP path on Windows. (#19397)
    • Modify codegen to use grpc_impl namespace and other cleanup. (#19435)

    C++

    • Channel idleness. (#19634)
    • Threadpool. (#19544)
    • ⬆️ Bump min CMake to 3.5.1 to match Google benchmark. (#19467)
    • Migrate from dep.proto. to dep[ProtoInfo] provider. (#19420)

    C

    • 🚚 Move ChannelExtensions (interceptor support) to Grpc.Core.Api (for v1.23.x branch). (#19853)
    • 🔨 Refactor ChannelCredentials and move to Grpc.Core.Api. (#19712)
    • C# bump major version to 2.x. (#19796)
    • ➕ Add ChannelBase, change ClientBase constructor argument. (#19599)
    • ✂ Remove System.Interactive.Async dependency. (#19059)
    • 🔀 dont use shutdownRef count for sync completion queue. (#19629)
    • 🚚 C# - remove delegate allocation and boxing from cancellation registrations. (#19610)
    • 🚚 csharp: Remove a double-box on Timespec. (#19525)
    • C#: add System.Memory dependency and use Span<> internally for all target frameworks . (#19569)
    • 🚚 csharp remove byte[] allocations during UTF8 encode/decode. (#19511)
    • 🚚 csharp: remove AuthContext's Lazy usage . (#19533)
    • csharp avoid capture-context in HandleNewServerRpc => HandleCallAsync. (#19526)
    • 📦 Make sure Grpc metapackage includes Grpc.Core.targets. (#19449)

    Objective-C

    • 🏗 ObjC experimental Bazel build support. (#19621)
    • Implement global interceptor. (#19322)

    PHP

    • PHP: Fix missing addref in channel::constructor(). (#19737)

    Python

    • 📇 Check call.trailing_metadata() for None before iterating it. (#19708)
    • ➕ Add a sanity check for the Python release process. (#19635)
    • 🚦 Enforce a finite bound on the time gap between signal receipt and signal handler execution. (#19481)
    • Python Compression Example. (#19421)

    💎 Ruby

    • Don't require_relative for an absolute path. (#19585)
    • ⬇️ Drop support for ruby < 2.3. (#19304)