LoadBalancer.handleResolvedAddresses(), LoadBalancer.Helper.updatePicker(), NameResolver.Listener.onUpdate(), ResolvedServerInfo, and ResolvedServerInfoGroup@DoNotMock annotations to AbstractStub, CallStreamObserver, ClientCallStreamObserver, ServerCallStreamObserver. The normal gRPC implementations of these classes should be used in testsenable_deprecated protoc plugin option (#3541). These deprecated APIs pre-date 1.0 and were off by defaultMETHOD_FOO constants with static getFooMethod() methods. The constants are deprecated and will be removed in a future release. Once the constants are removed, this change will allow the descriptors (and the messages they reference) to be lazily created which can dramatically decrease class initialization time and allows unused RPC messages to be removed by Proguard.TestMethodDescriptors.noopMethod() is deprecated in favor voidMethod() or test services. The simple service in grpc-testing-proto should work in most cases where voidMethod()is insufficientDeadlineSubject experimental. It is planned for removal to ease future Guava dependency issues with Truth. It could be moved into its own artifact, but best as we can tell nobody is using it. If you're using it, please file an issue so we can be made awareStreamRecorder. It will be removed in a future release. The class is very old (since the beginning in OSS) and was used in internal tests before there were blocking stubs. Most users should use blocking stubs instead. To use properly, you must know the class's implementation; if you liked it, copy the code to your own codebaseTestUtils.recordServerCallInterceptor(). It will be removed in a future release. It has no known use cases for normal usersCancellableContext now implements Closeable (#3607). close() is an alias for cancel(null). This should make it more clear that the context needs to be cancelled/closed, while also enabling try-with-resourcesAttributes.Builder.build() may now be called multiple timesPickResult.withDrop(Status). This is necessary if the LB wants to fail waitForReady RPCs to shed loadMethodDescriptor.getSampledToLocalTracing()/Builder.setSampledToLocalTracing to permit per-method stats keeping memory overhead (#3627). The option is to prevent unbounded memory overhead when dynamically-created MethodDescriptors are used and is enabled in the generated code.resetConnectBackoff() method to ManagedChannel. This can be used when the OS notifies your application that the network has become availablestub.withExecutor(Executor). This was already available on CallOptions and can be used to specify a call-specific executor to use for callbacksTlsTesting.loadCert as an alternative to deprecated TestUtils.loadCert. The TlsTesting version returns an InputStream instead of a File which avoids creating temporary filesServerBuilder.handshakeTimeout()LoadBalancer.shutdown()ProxySelector. This enables observation of the Java-standard proxy options -Dhttps.proxyHost=host -Dhttps.proxyPort=port. Authenticator is consulted for along with auth. Users of the GRPC_PROXY_EXP environment variable should migrate; the environment variable will be removed in a future release.io.grpc.netty.NettyServerTransport.connections (#3591).IOExceptions as UNAVAILABLE instead of UNAUTHENTICATED (#3267). This allows retrying RPCs if the OAuth token failed to be retrievednull, we now include a description in the Status to help expose what happened