From c010f276b0c19cbffbc1e6ea679ad822c1e242f9 Mon Sep 17 00:00:00 2001 From: Alexey Shalaev <75322386+AlexeyShalaev@users.noreply.github.com> Date: Sun, 6 Sep 2026 23:06:51 +0300 Subject: [PATCH] fix: missing root exports, and three guides that described the wrong behaviour The work landed in #16. Its squash subject lost the Conventional Commit prefix -- my mistake on the merge, not the author's -- so release-please skipped the merge and these fixes would never have reached a release. This commit carries the record. It changes no code: #16 is already on master. * FullGrpcClientSettingsProtocol, GrpcChannelExtrasProtocol and GrpcObservabilityExtrasProtocol are exported from the package root, where the other eleven protocols of that module already were. RetryMetricsProtocol and CircuitBreakerMetricsProtocol joined protocols.__all__, which a star import had been missing. MethodCircuitState left circuit_breaker.__all__: it is mutable internal bookkeeping in no public signature, and it stays importable by name. * The health guide claimed the factory forwards neither options nor compression. It forwards both. It also placed HealthCheckerNotRunningError in the health module behind the health extra; the error is in grpc_client_kit.errors, is a root export, and catching it needs no extra. And probes are not always about the overall server: the checker takes a service name and the factory forwards it. * The resilience and deadline guides both said there is no settings block for their layer. There is one, and the factory reads it. * hasattr(grpc_client_kit, "HealthChecker") raising ImportError on an install without the extra is deliberate -- downgrading it would make a broken install look like a name that never existed -- and is now written down where a caller looks, rather than being folklore.