From 509acea7a7dce861d64206b41428758da539e33d Mon Sep 17 00:00:00 2001 From: Carroll Vance Date: Tue, 27 Oct 2026 11:35:16 +0000 Subject: [PATCH 1/2] Note that non-OK status codes are not yet stable Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/src/index.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/src/index.md b/docs/src/index.md index 85e51cc..7ee2c10 100644 --- a/docs/src/index.md +++ b/docs/src/index.md @@ -310,6 +310,9 @@ close(rpc) Errors surface as a [`gRPCServiceCallException`](@ref), whose `grpc_status` field carries the gRPC status code and whose `message` holds the server- or client-supplied detail. +!!! warning "Status codes other than `OK` are not yet stable" + Do not rely on the specific non-`OK` status code reported for a given failure. Some of the codes the client assigns, particularly for client-side and transport errors, may be reworked in future releases to align more closely with the gRPC reference implementations. Treat any non-`OK` status as a failure; branching on a particular code may need revisiting when upgrading. + Where the exception is raised depends on how the call is driven: - A **synchronous unary** call raises from the call itself, so wrap `TestService.TestRPC(chan, req)` in a `try`/`catch`. From c5196285366f355453df64962dc626b5b7cfd2e1 Mon Sep 17 00:00:00 2001 From: Carroll Vance Date: Tue, 27 Oct 2026 11:37:19 +0000 Subject: [PATCH 2/2] Clarify status code changes may land in minor releases Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/src/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/src/index.md b/docs/src/index.md index 7ee2c10..77b29ba 100644 --- a/docs/src/index.md +++ b/docs/src/index.md @@ -311,7 +311,7 @@ close(rpc) Errors surface as a [`gRPCServiceCallException`](@ref), whose `grpc_status` field carries the gRPC status code and whose `message` holds the server- or client-supplied detail. !!! warning "Status codes other than `OK` are not yet stable" - Do not rely on the specific non-`OK` status code reported for a given failure. Some of the codes the client assigns, particularly for client-side and transport errors, may be reworked in future releases to align more closely with the gRPC reference implementations. Treat any non-`OK` status as a failure; branching on a particular code may need revisiting when upgrading. + Do not rely on the specific non-`OK` status code reported for a given failure. Some of the codes the client assigns, particularly for client-side and transport errors, may be reworked to align more closely with the gRPC reference implementations. Such corrections are considered bug fixes rather than breaking changes, so they will not require a new major version. They may ship in any minor release, but status codes will not change within patch releases. Treat any non-`OK` status as a failure, and review code that branches on a particular status when upgrading to a new minor version. Where the exception is raised depends on how the call is driven: