This repository was archived by the owner on Sep 18, 2023. It is now read-only.
deps: update dependency io.grpc:grpc-stub to v1.40.1 #213
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.23.0->1.40.1Release Notes
grpc/grpc-java
v1.40.1v1.40.0API Changes
ClientStreamTracer.Factory.newClientStreamTracer(CallOptions callOptions, Metadata headers).ClientStreamTracer.StreamInfo.getTransportAttrs()andClientStreamTracer.StreamInfo.Builder.setTransportAttrs().ClientStreamTracer.streamCreated(Attributes transportAttrs, Metadata headers).ManagedChannelBuilder.enableRetry()andManagedChannelBuilder.disableRetry().Bug Fixes
start()instead of NPE.encoding=utf-8. It now hascharset=utf-8.New Features
Behavior Changes
ManagedChannelBuilder.disableRetry()to turn off retry if they do not want this feature, for example if they have already implemented an application level retry.)ManagedChannelBuilder.enableRetry()will no longer have the side that disables Census stats and tracing as in previous versions.Dependencies
62ca8bd(#8346).Improvements
v1.39.0API Changes
HasByteBufferAPI exposes ByteBuffers underlying the InputStream being passed to theMarshallerand theDetachableAPI allows custom Marshaller to take over the ownership of buffers for performing delayed deserialization.Bug Fixes
New Features
Dependencies
Acknowledgements
@lepistone Leonardo Pistone
@shirodkara Amit Shirodkar
@cfredri4
v1.38.1Bug Fixes
INTERNAL: Panic! This is a bug!) due to the exceptionIllegalStateException: already in fallback. The fix mitigated the temporal invariant violation.v1.38.0gRPC Java 1.38.0 Release Notes
API Changes
usePlaintext()anduseTransportSecurity()methods on the channel and server builders. The previous APIs are stable so will not be removed. Over time, documentation and examples will be migrated to the new APIBug Fixes
Behavior Changes
Helper.refreshNameResolution()) when seeing its created subchannel becomes IDLE or TRANSIENT_FAILURE. Currently the Channel will do it for you and log a warning. But this operation will be removed in the future releases. (#8048)Dependencies
v1.37.1Bug Fixes
v1.37.0Behavior Changes
GoogleDefaultChannelCredentialsandComputeEngineChannelCredentialschoose ALTS for backends given by xDS TD. Changes forComputeEngineChannelCredentialswere missing, but they really should be the same.ServerBuilder.addServices()API that allows adding a list of services instead of iterating through list and callingaddService().NameResolverAPIs that have been marked as deprecated since 1.21 release.ChannelzandCSDSwith dependencies required at runtime.pendingDeadline.cancelout of synchronized block.channel.shutdown(). PreviouslyshutdownNow()was required for prompt shutdown if a connection was handshaking.io.grpc.xds.bootstrapConfig.server_listener_resource_name_templateproperty from the bootstrap file for server side xDS processing as per the gRFC A36-xds-for-servers.md.New Features
TlsChannelCredentialsandTlsServerCredentialsnow support client certificates and custom KeyManagers/TrustManagers. grpc-netty fully supports these options. grpc-okhttp does not support keyfile-based configuration; you’d need to use a KeyManager. Most users of Netty’s SslContext and GrpcSslContexts should be able to migrate and are encouraged to do so, because this API does not have a Netty dependency and so is planned to become stable.XdsServingStatusListenerhas been implemented as per the gRFC A36-xds-for-servers.md.CsdsService. It is safe for production but are Experimental APIs to resolve issues discovered as they see usage. The rationale and description of the new API can be found in gRFC A40: xDS Configuration Dump via Client Status Discovery Service in gRPC.WeightedTargetLoadBalancercollect all failure child pickers to log more error details.Bug Fixes
TRANSIENT_FAILUREfor such cases.CdsLoadBalancer2childLb shutdown behavior. Previously these childLbs are not properly shutdown, which might cause channel panic as client channel is referenced by those childLbs.UnsupportedOperationExceptionincompatibility with Netty 4.1.60.Final (#7953). This allows users of grpc-netty that may be using Netty elsewhere in their application to upgrade their Netty version to avoid exposure to recent Netty CVEs. gRPC itself is not impacted by those CVEs.CONNECTINGsubchannels when aggregating the overall LB state, which would cause RPCs to fail prematurely if there are subchannels in its initial connection.AltsTestServerobject lock, this way, alts client and alts server won’t race on theAltsTestServerduring Alts handshake negotiation.Documentation
TlsChannelCredentials/TlsServerCredentialsand no longer depends on Netty at compile time.Dependencies
ac9a26373. Added xDS v3 csds.proto with dependencies.Acknowledgements
@spkrka Kristofer Karlsson
@njhill Nick Hill
@ulfjack Ulf Adams
v1.36.2Bug Fixes
v1.36.1UnsupportedOperationExceptionincompatibility with Netty 4.1.60.Final (#7953). This allows users of grpc-netty that may be using Netty elsewhere in their application to upgrade their Netty version to avoid exposure to recent Netty CVEs. gRPC is not impacted by those CVEs so a Netty upgrade for gRPC itself is not necessaryio.grpc.xds.bootstrapValuesystem property toio.grpc.xds.bootstrapConfig. This more closely matches the environment variable (GRPC_XDS_BOOTSTRAP_CONFIG) and avoids future confusion (#7968)IllegalStateExceptioncausing Channel panic during LB shutdown (#7942). The bug was introduced in v1.36.0. The issue likely most impacts xDS users that may leave a channel unused (no RPCs) for 30 minutes since idle timeout triggers LB shutdownv1.36.0API Changes
NettyChannelBuilder,NettyServerBuilder,OkHttpChannelBuilder,InProcessChannelBuilder,CronetChannelBuilder) are commonly referencing internal ABIs due to overly-specific generics in gRPC. There is now a .class file hack in place which preserves ABI compatibility for old builds while causing javac to use the intended public API for new builds. In a future release we will remove the internal ABI for these experimental APIs (https://github.com/grpc/grpc-java/issues/7211) which may cause runtime failures. Recompiling with this release or later will prevent your code from using those ABIs and so you will not be impacted by the ABI removal. This is related to the temporary ABI breakage in v1.33.0.LoadBalancer.HelperAPIs as they had been deprecated since v1.22 release (#7793).LoadBalancer.Helper.createResolvingOobChannelBuilder(String target)in favor of the new experimental APIcreateResolvingOobChannelBuilder(String target, ChannelCredentials creds). The two APIs differ not only in signature but also in the default authority of the returned builder. See their javadoc for more detail.Behavior Changes
ManagedChannelBuilder.overrideAuthority()is now used even if the NameResolver usesEquivalentAddressGroup.ATTR_AUTHORITY_OVERRIDE. Previously the NameResolver’s override would be usedNew Features
grpc.channelz.v1.Channelz.GetServer, as defined inchannelz.protoGRPC_XDS_BOOTSTRAP_CONFIG) or system property (io.grpc.xds.bootstrapValue) valuesAltsContextto allow outside packages access to ALTS peer informationBug Fixes
Documentation
Status.trailersFromThrowable(#7856). The annotation doesn’t change behavior, it just makes the behavior more clearDependencies
Acknowledgements
@elharo Elliotte Rusty Harold
@lriuui0x0 Rui Liu
@martin-schaub Martin Schaub
@njhill Nick Hill
@ReginFell Serhii Zabelnykov
v1.35.1UnsupportedOperationExceptionincompatibility with Netty 4.1.60.Final (#7953). This allows users of grpc-netty that may be using Netty elsewhere in their application to upgrade their Netty version to avoid exposure to recent Netty CVEs. gRPC is not impacted by those CVEs so a Netty upgrade for gRPC itself is not necessaryv1.35.0Bug Fixes
io.grpcpackage. They are now shaded to avoid colliding with other users of the classesDependencies
Acknowledgments
@amnox
@horizonzy
@wanyingd1996
v1.34.1Bug Fixes
GRPC_XDS_EXPERIMENTAL_NEW_SERVER_API=truewhere gRPC would request non-existent resourcesv1.34.0This release has a severe bug when using CompositeChannelCredentials that predominantly impacts googleapis.com (#7643). You may be impacted in the future even if not impacted today. If you contact googleapis.com, please use 1.34.1 instead.
API Changes
io.grpc.ForwardingServerBuilder(#7633)New Features
usePlaintext()anduseTransportSecurity()methods on the channel and server builders. The previous APIs are stable so will not be removed, but are expected to be deprecated in the future. Since these new APIs will be widely used, we encourage users to try the APIs out and report any problems experienced so they can be corrected before the APIs become stable (#7294, #7601)Bug Fixes
StatusRuntimeException: INTERNAL: http2 exceptionwith a cause similar toHttp2Exception$StreamException: Cannot create stream 222691 greater than Last-Stream-ID 222689 from GOAWAY.This was mainly observed when a C core-based gRPC server shut down. (#7501)Documentation
ServerCall#close(#7580)Behavior Changes
Dependencies
Acknowledgements
@attila123
@erikjoh
@jbdeboer
@ST-DDT
@sullis
@susinmotion
v1.33.1Bug Fixes
io.grpc.netty.NettyServerBuilderreverted to extend internal classio.grpc.internal.AbstractServerImplBuilderio.grpc.netty.NettyChannelBuilderreverted to extend internal classio.grpc.internal.AbstractManagedChannelImplBuilderio.grpc.okhttp.OkhttpChannelBuilderreverted to extend internal classio.grpc.internal.AbstractManagedChannelImplBuilderThe class io.grpc.inprocess.InProcessChannelBuilderreverted to extend internal classio.grpc.internal.AbstractManagedChannelImplBuilderio.grpc.cronet.CronetChannelBuilderreverted to extend internal classio.grpc.internal.AbstractManagedChannelImplBuilderForwardingServerBuilderreverted until the permanent fix of the issue with ABI compatibility of delegating classesStatusRuntimeException: INTERNAL: http2 exceptionwith a cause similar toHttp2Exception$StreamException: Cannot create stream 222691 greater than Last-Stream-ID 222689 from GOAWAY.This was mainly observed when a C core-based gRPC server shut down.v1.33.0This release broke ABI in a non-planned way for NettyServerBuilder, NettyChannelBuilder, and similar. See https://github.com/grpc/grpc-java/issues/7552. If you are impacted, please use an earlier version until v1.33.1 is available. A future ABI breakage may be necessary, but will be communicated explicitly at that time.
API Changes
io.grpc.netty.NettyServerBuilderis no longer a subclass of the internal classio.grpc.internal.AbstractServerImplBuilderio.grpc.netty.NettyChannelBuilderis no longer a subclass of the internal classio.grpc.internal.AbstractManagedChannelImplBuilderio.grpc.okhttp.OkhttpChannelBuilderis no longer a subclass of the internal classio.grpc.internal.AbstractManagedChannelImplBuilderThe class io.grpc.inprocess.InProcessChannelBuilderis no longer a subclass of the internal classio.grpc.internal.AbstractManagedChannelImplBuilderio.grpc.cronet.CronetChannelBuilderis no longer a subclass of the internal classio.grpc.internal.AbstractManagedChannelImplBuilderStatusRuntimeException: CANCELLEDfromonNext()for streaming responses. Previously the exception was also thrown fromonNext()for unary responses and fromonComplete(), which didn’t help the server avoid unnecessary processingNew Features
Documentation
Bug Fixes
onMessage()afteronClose())GRPC_EXPERIMENTAL_AUTOFLOWCONTROL=falseintroduced later. The symptom was a GOAWAY with “too_many_pings” without an aggressive keepalive configured. The environment variable is still available, but will be removed in the futureBehavior Changes
{"type":"insecure"}”for plaintext (#7396)Dependencies
repositories.bzl, in favor ofmaven_install. v1.27.0 introduced support formaven_installand encouraged users to migrate. Seeexamples/WORKSPACEfor an example.maven_installdramatically reduces the boilerplate for maven dependencies and properly handles transitive dependencies and version selection. gRPC is not yet using the@mavenworkspace, so it is still possible to use other dependency tools.Acknowledgements
@codeblooded Benjamin Reed
@kiwi1969 Russell Shaw
@pkern Philipp Kern
v1.32.3Bug Fixes
v1.32.2Bug Fixes
GRPC_EXPERIMENTAL_AUTOFLOWCONTROL=falseintroduced later. The symptom was a GOAWAY with “too_many_pings” without an aggressive keepalive configured. The environment variable is still available, but will be removed in the futurev1.32.1API Changes
ChannelBuilder.blockingExecutor()(#7242). There should not be any users as it was deprecated the first release it was available and was renamedoffloadExecutor().New Features
Bug Fixes
GRPC_EXPERIMENTAL_AUTOFLOWCONTROL=falsewill now disable the BDP monitoring introduced in v1.30.0. This is intended to help diagnose a “too_many_pings” compatibility issue and will be removed once it is resolved. If you need to use the variable, please file an issueDependencies
Acknowledgements
@susinmotion
@trustin
@wanyingd1996
v1.31.2Bug Fixes
v1.31.1Bug Fixes
GRPC_EXPERIMENTAL_AUTOFLOWCONTROL=falsewill now disable the BDP monitoring introduced in v1.30.0. This is intended to help diagnose a “too_many_pings” compatibility issue and will be removed once it is resolved. If you need to use the variable, please file an issuev1.31.0API Changes
ManagedChannelBuilder.nameResolverFactoryis now marked deprecated. It has long been our plan to remove the function, but was not communicated. Most usages should be able to globally register via the SPI mechanism orNameResolverRegistry.register(). There is a plan to add a method toManagedChannelBuilderto specify the default target scheme for the channel. If your use-case is not covered, please inform us on #7133New Features
LoadBalancer.Helper.createResolvingOobChannelBuilder(). It is similar toLoadBalancer.Helper.createResolvingOobChannel()except allows configuring the channel (#7136)Bug Fixes
Documentation
Dependencies
Examples
Acknowledgements
@alexanderscott
@AnarSultanov
@cindyxue
@d-reidenbach
@elharo
@gsharma
@reggiemcdonald
v1.30.2Bug Fixes
v1.30.1Bug Fixes
v1.30.0Note: gRPC-Java no longer exposes many transitive dependencies as "compile" dependencies, but instead specifies them as "runtime" dependencies. Consuming projects using these dependencies directly will need to explicitly add the dependencies to their compile-time classpath.
Behavioral Changes
NettyChannelBuilder#flowControlWindoworNettyServerBuilder#flowControlWindow. ExistingflowControlWindowusers need to useinitialFlowWindowSizeto enable BDP. The default initial window size has remained unchanged, so most users should not see a performance difference. In the future we plan to reduce the default size, which may briefly (up to 4 RTT) slow down new connections as they determine an appropriate BDP.New Features
xds. This is the stable version of the schemexds-experimentalthat was introduced in v1.28.0.xds-experimentalscheme will be removed in subsequent releases so you must switch toxdsscheme instead.xdsscheme is a client side implementation of xDSv2 APIs. This allows a gRPC client written in Java to receive configuration from an xDSv2 API compatible server and use that configuration to load balance RPCs. In this release, only the virtual host matching, default path (“” or “/”) matching and cluster route action are supported. The features supported in a given release are documented here.ClientCallStreamObserver.disableAutoRequestWithInitial(int)andServerCallStreamObserver.disableAutoRequest()that disables all automatic inbound flow-control requests. These methods are intended to replace the existingCallStreamObserver.disableAutoInboundFlowControl(). There may still be some tweaks to the API, sodisableAutoInboundFlowControl()is not yet deprecated.InprocessChannelBuilder.propagateCauseWithStatus(true)to propagate exceptions from the server withinstatus.getCause()(#6968). This is intended for unit tests to ease debugging test failures.NettyServerBuilderto allow passing channel options for the boss ELG.Bug Fixes
Documentation
org.apache.tomcat:annotations-apifor the@Generatedannotation instead ofjavax.annotation:javax.annotation-api, as it has a more appropriate licenseDependencies
Examples
Acknowledgements
@agasparovic-sabre
@AgentK20
@apolcyn
@asdf2014
@ashithasantosh
@chalin
@bogdandrutu
@DRayX
@hojongs
@Nextproc
@plaflamme
@reggiemcdonald
@RiyaTyagi
v1.29.0Behavioral Changes
io.grpc.internal.DnsNameResolverProvider.enable_grpclbis eliminated, grpc-grpclb dependency implicitly enables querying SRV records since v1.24.2New Features
ServerInterceptors.useInputStreamMessages()now preserves theKnownLengthinterface when wrapping InputStream (#6852). This should prevent certain optimizations from being disabled when using useInputStreamMessagesServerInterceptors.useInputStreamMessages()anduseMarshalledMessages()now preserve the SchemaDescriptor, so the methods are now compatible with the reflection service (#6851)Bug Fixes
Configuration
📅 Schedule: 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 WhiteSource Renovate. View repository job log here.