net: Changed InetAddress-String conversion methods to preserve the IPv6 scope ID if present. The scope ID can be necessary for IPv6-capable devices with multiple network interfaces. However, preserving it can also lead to problems for callers that rely on the returned values not to include the scope ID:
Callers might compensate for the old behavior of the methods by appending the scope ID to a returned string themselves. If so, you can update your code to stop doing so at the same time as you upgrade Guava. Of, if your code might run against multiple versions of Guava, you can check whether Guava has included a scope ID before you add one yourself.
Callers might pass the returned string to another system that does not understand scope IDs. If so, you can strip the scope ID off, whether by truncating the string form at a % character (leaving behind any trailing ] character in the case of forUriString) or by replacing the returned InetAddress with a new instance constructed by calling InetAddress.getByAddress(addr).
java.net.InetAddress validates any provided scope ID against the interfaces available on the machine. As a result, methods in InetAddresses may now fail if the scope ID fails validation.
Notable cases in which this may happen include:
if the code runs in an Android app without networking permission
if code passes InetAddress instances or strings across devices
If this is not the behavior that you want, then you can strip off the scope ID from the input string before passing it to Guava, as discussed above. (3f61870ac6)
33.2.0
Android users: Please test recent Guava versions
If you know of Guava Android users who have not yet upgraded to at least release 33.0.0, please encourage them to upgrade, preferably to today's release, 33.2.0. These releases have begun adding Java 8+ APIs to guava-android. While we don't anticipate problems, we do anticipate that any unexpected problems could force a disruptive rollback. To minimize any disruption, we'd like to catch any such problems early.
compiler: the option jakarta_omit was renamed @generated=omit (#11086) (8a21afcc9)
New Features
New API LoadBalancer.getChannelTarget() (4561bb5b8)
opentelemetry: Publish new module grpc-opentelemetry (5ba1a5563). The feature is still missing documentation and an example. It only supports metrics; tracing and logs will be future enhancements. See gRFC A66
bazel: Add support for bzlmod (#11046) (d1890c0ac)
bazel: Replace usages of the old compatibility maven targets with @maven targets (00649913b)
okhttp: Support serverBuilder.maxConcurrentCallsPerConnection (Fixes #11062). (#11063) (805072339)
xds: Experimental metrics recording in WRR LB (06df25b65, 35a171bc1, 2897b3939), to be exported by grpc-opentelemetry if explicitly enabled in GrpcOpenTelemetry. See gRFC A78
rls: Experimental metrics recording in RLS LB (a9fb272b7, a1d19327f, 813331837), to be exported by grpc-opentelemetry if explicitly enabled in GrpcOpenTelemetry
Improvements
examples: support bazel build for retry policy example (58de563fa)
netty: Allow deframer errors to close stream with a status code, as long as headers have not yet been sent (e036b1b19). This will greatly improve the debuggability of certain server errors in particular cases. Instead of the client seeing “CANCELLED: RST_STREAM closed stream. HTTP/2 error code: CANCEL”, they could see “RESOURCE_EXHAUSTED: gRPC message exceeds maximum size 4194304: 6144592”
netty: Improve handling of unexpected write queue promise failures (#11016)
StatusException/StatusRuntimeException hide stack trace in a simpler way (#11064) (e36f099be)
util: Status desc for outlier detection ejection (#11036) (10cb4a3be)
binder: Helper class to allow in process servers to use peer uids in test (#11014) (537dbe826)
Add load() statements for the Bazel builtin top-level java symbols (#11105) (add8c37a4)
Add StatusProto.toStatusException overload to accept Throwable (#11083) (5c9b49231)
Bug fixes
Fix retry race condition that can lead to double decrementing inFlightSubStreams and so miss calling closed (#11026) (bdb623031)
Change defaults to use the older PickFirstLoadBalancer and disable Happy Eyeballs. This disables a performance optimization added in v1.63. (#11120) We have had a report that the new implementation can trigger a NullPointerException
core: Transition to CONNECTING immediately when exiting idle (2c5f0c22c). Previously the visible state change from channel.getState() was delayed until the name resolver returned results. This had no impact to RPC behavior
xds: Specify a locale for upper/lower case conversions (e6305930d)
rls: Synchronization fixes in CachingRlsLbClient (6e97b180b). These races had not been witnessed in practice
rls: Guarantee backoff will update RLS picker (f9b6e5f92). This fixes a regression introduced by 6e97b180b that could hang RPCs instead of using fallback, but fixes a pre-existing bug that could greatly delay RPCs from using fallback.
rls: Fix time handling in CachingRlsLbClient (da619e2bd). This could have caused backoff entries to improperly be considered expired
xds: Properly disable the default endpoint identification algorithm with XdsChannelCredentials (097a46b76). The credential does its own verification and the default needs to be disabled for SPIFFE
netty: Release SendGrpcFrameCommand when stream is missing (#11116) (fb9a10809)
okhttp: Remove finished stream even if a pending stream was started (d21fe32be)
Dependencies
cronet: Update Cronet to latest release + Move to Stable Cronet APIs. (5a8da19f3)
compiler: the option jakarta_omit was renamed @generated=omit (#11086) (8a21afcc9)
New Features
New API LoadBalancer.getChannelTarget() (4561bb5b8)
opentelemetry: Publish new module grpc-opentelemetry (5ba1a5563). The feature is still missing documentation and an example. It only supports metrics; tracing and logs will be future enhancements. See gRFC A66
bazel: Add support for bzlmod (#11046) (d1890c0ac)
bazel: Replace usages of the old compatibility maven targets with @maven targets (00649913b)
okhttp: Support serverBuilder.maxConcurrentCallsPerConnection (Fixes #11062). (#11063) (805072339)
xds: Experimental metrics recording in WRR LB (06df25b65, 35a171bc1, 2897b3939), to be exported by grpc-opentelemetry if explicitly enabled in GrpcOpenTelemetry. See gRFC A78
rls: Experimental metrics recording in RLS LB (a9fb272b7, a1d19327f, 813331837), to be exported by grpc-opentelemetry if explicitly enabled in GrpcOpenTelemetry
Improvements
examples: support bazel build for retry policy example (58de563fa)
netty: Allow deframer errors to close stream with a status code, as long as headers have not yet been sent (e036b1b19). This will greatly improve the debuggability of certain server errors in particular cases. Instead of the client seeing “CANCELLED: RST_STREAM closed stream. HTTP/2 error code: CANCEL”, they could see “RESOURCE_EXHAUSTED: gRPC message exceeds maximum size 4194304: 6144592”
netty: Improve handling of unexpected write queue promise failures (#11016)
StatusException/StatusRuntimeException hide stack trace in a simpler way (#11064) (e36f099be)
util: Status desc for outlier detection ejection (#11036) (10cb4a3be)
binder: Helper class to allow in process servers to use peer uids in test (#11014) (537dbe826)
Add load() statements for the Bazel builtin top-level java symbols (#11105) (add8c37a4)
Add StatusProto.toStatusException overload to accept Throwable (#11083) (5c9b49231)
Bug fixes
Fix retry race condition that can lead to double decrementing inFlightSubStreams and so miss calling closed (#11026) (bdb623031)
Change defaults to use the older PickFirstLoadBalancer and disable Happy Eyeballs. This disables a performance optimization added in v1.63. (#11120) We have had a report that the new implementation can trigger a NullPointerException
core: Transition to CONNECTING immediately when exiting idle (2c5f0c22c). Previously the visible state change from channel.getState() was delayed until the name resolver returned results. This had no impact to RPC behavior
xds: Specify a locale for upper/lower case conversions (e6305930d)
rls: Synchronization fixes in CachingRlsLbClient (6e97b180b). These races had not been witnessed in practice
rls: Guarantee backoff will update RLS picker (f9b6e5f92). This fixes a regression introduced by 6e97b180b that could hang RPCs instead of using fallback, but fixes a pre-existing bug that could greatly delay RPCs from using fallback.
rls: Fix time handling in CachingRlsLbClient (da619e2bd). This could have caused backoff entries to improperly be considered expired
xds: Properly disable the default endpoint identification algorithm with XdsChannelCredentials (097a46b76). The credential does its own verification and the default needs to be disabled for SPIFFE
netty: Release SendGrpcFrameCommand when stream is missing (#11116) (fb9a10809)
okhttp: Remove finished stream even if a pending stream was started (d21fe32be)
Dependencies
cronet: Update Cronet to latest release + Move to Stable Cronet APIs. (5a8da19f3)
compiler: the option jakarta_omit was renamed @generated=omit (#11086) (8a21afcc9)
New Features
New API LoadBalancer.getChannelTarget() (4561bb5b8)
opentelemetry: Publish new module grpc-opentelemetry (5ba1a5563). The feature is still missing documentation and an example. It only supports metrics; tracing and logs will be future enhancements. See gRFC A66
bazel: Add support for bzlmod (#11046) (d1890c0ac)
bazel: Replace usages of the old compatibility maven targets with @maven targets (00649913b)
okhttp: Support serverBuilder.maxConcurrentCallsPerConnection (Fixes #11062). (#11063) (805072339)
xds: Experimental metrics recording in WRR LB (06df25b65, 35a171bc1, 2897b3939), to be exported by grpc-opentelemetry if explicitly enabled in GrpcOpenTelemetry. See gRFC A78
rls: Experimental metrics recording in RLS LB (a9fb272b7, a1d19327f, 813331837), to be exported by grpc-opentelemetry if explicitly enabled in GrpcOpenTelemetry
Improvements
examples: support bazel build for retry policy example (58de563fa)
netty: Allow deframer errors to close stream with a status code, as long as headers have not yet been sent (e036b1b19). This will greatly improve the debuggability of certain server errors in particular cases. Instead of the client seeing “CANCELLED: RST_STREAM closed stream. HTTP/2 error code: CANCEL”, they could see “RESOURCE_EXHAUSTED: gRPC message exceeds maximum size 4194304: 6144592”
netty: Improve handling of unexpected write queue promise failures (#11016)
StatusException/StatusRuntimeException hide stack trace in a simpler way (#11064) (e36f099be)
util: Status desc for outlier detection ejection (#11036) (10cb4a3be)
binder: Helper class to allow in process servers to use peer uids in test (#11014) (537dbe826)
Add load() statements for the Bazel builtin top-level java symbols (#11105) (add8c37a4)
Add StatusProto.toStatusException overload to accept Throwable (#11083) (5c9b49231)
Bug fixes
Fix retry race condition that can lead to double decrementing inFlightSubStreams and so miss calling closed (#11026) (bdb623031)
Change defaults to use the older PickFirstLoadBalancer and disable Happy Eyeballs. This disables a performance optimization added in v1.63. (#11120) We have had a report that the new implementation can trigger a NullPointerException
core: Transition to CONNECTING immediately when exiting idle (2c5f0c22c). Previously the visible state change from channel.getState() was delayed until the name resolver returned results. This had no impact to RPC behavior
xds: Specify a locale for upper/lower case conversions (e6305930d)
rls: Synchronization fixes in CachingRlsLbClient (6e97b180b). These races had not been witnessed in practice
rls: Guarantee backoff will update RLS picker (f9b6e5f92). This fixes a regression introduced by 6e97b180b that could hang RPCs instead of using fallback, but fixes a pre-existing bug that could greatly delay RPCs from using fallback.
rls: Fix time handling in CachingRlsLbClient (da619e2bd). This could have caused backoff entries to improperly be considered expired
xds: Properly disable the default endpoint identification algorithm with XdsChannelCredentials (097a46b76). The credential does its own verification and the default needs to be disabled for SPIFFE
netty: Release SendGrpcFrameCommand when stream is missing (#11116) (fb9a10809)
okhttp: Remove finished stream even if a pending stream was started (d21fe32be)
Dependencies
cronet: Update Cronet to latest release + Move to Stable Cronet APIs. (5a8da19f3)
BREAKING: Refactor ExtendedTracer, ExtendedSpanBuilder to reflect incubating API conventions (#6497)
SDK
Exporter
BREAKING: Serve prometheus metrics only on /metrics by default. To restore the previous behavior and serve metrics on all paths, override the default handler as demonstrated here. (#6476)
BREAKING: Refactor ExtendedTracer, ExtendedSpanBuilder to reflect incubating API conventions
(#6497)
SDK
Exporter
BREAKING: Serve prometheus metrics only on /metrics by default. To restore the previous behavior
and serve metrics on all paths, override the default handler
as demonstrated here.
(#6476)
The picocli community is pleased to announce picocli 4.7.6.
This release includes bugfixes and enhancements.
Many thanks to the picocli community for raising these issues and providing the pull requests to address them!
This is the eighty-fifth public release.
Picocli follows semantic versioning.
Artifacts in this release are signed by Remko Popma (6601 E5C0 8DCC BB96).
PropertiesDefaultProvider now tries to load properties from the classpath if the file cannot be found in the user.home directory.
Fixed issues
#2102#2107 Enhancement: PropertiesDefaultProvider should try to load properties from classpath (last). Thanks to Lumír Návrat for the pull request.
#2202 Enhancement: Change log level from WARN to INFO when bean not found in ApplicationContext. Thanks to Desmond Kirrane for raising this.
#2248 Enhancement: Don't show hidden commands in JLine3 command description. Thanks to Reinhard Handler for the pull request.
#2170 Enhancement: Use ... vararg instead of array parameter to match overridden method signature. Thanks to Michael Vorburger for the pull request.
#2058 Bugfix: defaultValue should not be applied in addition to user-specified value for options with a custom IParameterConsumer. Thanks to Staffan Arvidsson McShane for raising this.
#2148 Bugfix: Fix NPE in jline3 Example.jar as ConfigurationPath cannot be null anymore. Thanks to llzen44 for the pull request.
#2232 Bugfix: fix bug for Optional<T> arguments with initial value. Thanks to hq6 for raising this.
#2149 Bugfix: @Option-annotated setter method not invoked with default value when used in mixin for both command and subcommand. Thanks to Zhonghao Wang for raising this.
#2270 Bugfix: Custom type converter for primitive boolean options should not be ignored. Thanks to Sven Kammerer for raising this.
#2171 DOC: Fix a few typos in CommandLine's JavaDoc. Thanks to Michael Vorburger for the pull request.
#2217 DOC: Clarify documentation for negatable options. Thanks to dbear496 for raising this.
#2228 DOC: Clarify that ParseResult passed to IExecutionExceptionHandler is the top-level parse result, not the parse result of the subcommand that failed. Thanks to Abel Salgado Romero for raising this.
#2047 DEP: Bump andymckay/append-gist-action from 1fbfbbce708a39bd45846f0955ed5521f2099c6d to 6e8d64427fe47cbacf4ab6b890411f1d67c07f3e
#2091 DEP: Bump actions/checkout from 3.5.2 to 3.6.0
#2108 DEP: Bump actions/checkout from 3.6.0 to 4.0.0
#2120 DEP: Bump actions/checkout from 4.0.0 to 4.1.0
#2225 DEP: Bump actions/checkout from 4.1.0 to 4.1.2
#2272 DEP: Bump actions/checkout from 4.1.2 to 4.1.4
#2098 DEP: Bump actions/setup-java from 3.11.0 to 3.12.0
#2158 DEP: Bump actions/setup-java from 3.12.0 to 4.0.0
The picocli community is pleased to announce picocli 4.7.6.
This release includes bugfixes and enhancements.
Many thanks to the picocli community for raising these issues and providing the pull requests to address them!
This is the eighty-fifth public release.
Picocli follows semantic versioning.
Artifacts in this release are signed by Remko Popma (6601 E5C0 8DCC BB96).
PropertiesDefaultProvider now tries to load properties from the classpath if the file cannot be found in the user.home directory.
Fixed issues
#2102#2107 Enhancement: PropertiesDefaultProvider should try to load properties from classpath (last). Thanks to Lumír Návrat for the pull request.
#2202 Enhancement: Change log level from WARN to INFO when bean not found in ApplicationContext. Thanks to Desmond Kirrane for raising this.
#2248 Enhancement: Don't show hidden commands in JLine3 command description. Thanks to Reinhard Handler for the pull request.
#2170 Enhancement: Use ... vararg instead of array parameter to match overridden method signature. Thanks to Michael Vorburger for the pull request.
#2058 Bugfix: defaultValue should not be applied in addition to user-specified value for options with a custom IParameterConsumer. Thanks to Staffan Arvidsson McShane for raising this.
#2148 Bugfix: Fix NPE in jline3 Example.jar as ConfigurationPath cannot be null anymore. Thanks to llzen44 for the pull request.
#2232 Bugfix: fix bug for Optional<T> arguments with initial value. Thanks to hq6 for raising this.
#2149 Bugfix: @Option-annotated setter method not invoked with default value when used in mixin for both command and subcommand. Thanks to Zhonghao Wang for raising this.
#2270 Bugfix: Custom type converter for primitive boolean options should not be ignored. Thanks to Sven Kammerer for raising this.
#2171 DOC: Fix a few typos in CommandLine's JavaDoc. Thanks to Michael Vorburger for the pull request.
#2217 DOC: Clarify documentation for negatable options. Thanks to dbear496 for raising this.
#2228 DOC: Clarify that ParseResult passed to IExecutionExceptionHandler is the top-level parse result, not the parse result of the subcommand that failed. Thanks to Abel Salgado Romero for raising this.
#2047 DEP: Bump andymckay/append-gist-action from 1fbfbbce708a39bd45846f0955ed5521f2099c6d to 6e8d64427fe47cbacf4ab6b890411f1d67c07f3e
#2091 DEP: Bump actions/checkout from 3.5.2 to 3.6.0
#2108 DEP: Bump actions/checkout from 3.6.0 to 4.0.0
#2120 DEP: Bump actions/checkout from 4.0.0 to 4.1.0
#2225 DEP: Bump actions/checkout from 4.1.0 to 4.1.2
#2272 DEP: Bump actions/checkout from 4.1.2 to 4.1.4
#2098 DEP: Bump actions/setup-java from 3.11.0 to 3.12.0
#2158 DEP: Bump actions/setup-java from 3.12.0 to 4.0.0
#2236 DEP: Bump actions/setup-java from 4.0.0 to 4.2.1.
Bumps the load-gen-gradle-deps group with 11 updates in the /load-generator directory:
33.0.0-jre
33.2.1-jre
1.61.0
1.64.0
1.61.0
1.64.0
1.61.0
1.64.0
1.34.1
1.39.0
2.15.0
2.16.0
2.15.0
2.16.0
4.7.5
4.7.6
2.22.1
2.23.1
2.22.1
2.23.1
8.4
8.6
Updates
com.google.guava:guava
from 33.0.0-jre to 33.2.1-jreRelease notes
Sourced from com.google.guava:guava's releases.
... (truncated)
Commits
Updates
io.grpc:grpc-bom
from 1.61.0 to 1.64.0Release notes
Sourced from io.grpc:grpc-bom's releases.
... (truncated)
Commits
a54c72f
Bump version to 1.64.02c1b07c
Update README etc to reference 1.64.09798e4a
all: Add opentelemetryd086f5a
opentelemetry: Mark registerGlobal() as experimental3158f91
rls: Guarantee backoff will update RLS picker80f872e
xds, rls: Experimental metrics are disabled by default (#11196) (#11197)cc587e6
opentelemetry: Publish grpc opentelemetry (#11187) (#11195)8133318
rls: Add gauge metric recording (#11175)f737cbc
api: Hide internal metric APIs1e731be
opentelemetry: Rename and stabilize API OpenTelemetryModuleUpdates
io.grpc:grpc-api
from 1.61.0 to 1.64.0Release notes
Sourced from io.grpc:grpc-api's releases.
... (truncated)
Commits
a54c72f
Bump version to 1.64.02c1b07c
Update README etc to reference 1.64.09798e4a
all: Add opentelemetryd086f5a
opentelemetry: Mark registerGlobal() as experimental3158f91
rls: Guarantee backoff will update RLS picker80f872e
xds, rls: Experimental metrics are disabled by default (#11196) (#11197)cc587e6
opentelemetry: Publish grpc opentelemetry (#11187) (#11195)8133318
rls: Add gauge metric recording (#11175)f737cbc
api: Hide internal metric APIs1e731be
opentelemetry: Rename and stabilize API OpenTelemetryModuleUpdates
io.grpc:grpc-netty-shaded
from 1.61.0 to 1.64.0Release notes
Sourced from io.grpc:grpc-netty-shaded's releases.
... (truncated)
Commits
a54c72f
Bump version to 1.64.02c1b07c
Update README etc to reference 1.64.09798e4a
all: Add opentelemetryd086f5a
opentelemetry: Mark registerGlobal() as experimental3158f91
rls: Guarantee backoff will update RLS picker80f872e
xds, rls: Experimental metrics are disabled by default (#11196) (#11197)cc587e6
opentelemetry: Publish grpc opentelemetry (#11187) (#11195)8133318
rls: Add gauge metric recording (#11175)f737cbc
api: Hide internal metric APIs1e731be
opentelemetry: Rename and stabilize API OpenTelemetryModuleUpdates
io.opentelemetry:opentelemetry-bom
from 1.34.1 to 1.39.0Release notes
Sourced from io.opentelemetry:opentelemetry-bom's releases.
... (truncated)
Changelog
Sourced from io.opentelemetry:opentelemetry-bom's changelog.
... (truncated)
Commits
96bb3ba
[release/v1.39.x] Prepare release 1.39.0 (#6508)edbb475
Prepare 1.39.0 (#6506)934da84
Fix incubator docs (#6505)d0b463d
Refactor ExtendedTracer, ExtendedSpanBuilder to reflect incubating API conven...7364687
Update dependency net.ltgt.gradle:gradle-errorprone-plugin to v4 (#6501)5a84398
Update dependency org.jctools:jctools-core to v4.0.5 (#6500)a68349e
Update errorProneVersion to v2.28.0 (#6489)e15eedc
Update dependency com.google.api.grpc:proto-google-common-protos to v2.40.0 (...88be482
Update dependency gradle to v8.8 (#6488)915cb4d
Update dependency com.uber.nullaway:nullaway to v0.11.0 (#6487)Updates
com.amazonaws:aws-xray-recorder-sdk-core
from 2.15.0 to 2.16.0Release notes
Sourced from com.amazonaws:aws-xray-recorder-sdk-core's releases.
Changelog
Sourced from com.amazonaws:aws-xray-recorder-sdk-core's changelog.
Commits
19be84c
Releasing 2.16.063ace4a
Release PR for v2.16.0 (#405)d1ff46f
[Lambda] Do not propagate trace header if dummy subsegment (#404)c275035
[Lambda] Send NoOp segment when trace header is incomplete (#403)0c2cfa7
Release PR for v2.15.3 (#402)88069b4
Bump aws-java-sdk-core version to 1.12.708 (#401)96428c5
Release PR for v2.15.2 (#400)e1a8691
TracingInterceptor should take effect only one time (#399)0cc3e14
Release PR for v2.15.1 (#398)3b0868d
Fixing S3 bucket name extraction for AWS SDK V2 (#393)Updates
com.amazonaws:aws-xray-recorder-sdk-aws-sdk
from 2.15.0 to 2.16.0Release notes
Sourced from com.amazonaws:aws-xray-recorder-sdk-aws-sdk's releases.
Changelog
Sourced from com.amazonaws:aws-xray-recorder-sdk-aws-sdk's changelog.
Commits
19be84c
Releasing 2.16.063ace4a
Release PR for v2.16.0 (#405)d1ff46f
[Lambda] Do not propagate trace header if dummy subsegment (#404)c275035
[Lambda] Send NoOp segment when trace header is incomplete (#403)0c2cfa7
Release PR for v2.15.3 (#402)88069b4
Bump aws-java-sdk-core version to 1.12.708 (#401)96428c5
Release PR for v2.15.2 (#400)e1a8691
TracingInterceptor should take effect only one time (#399)0cc3e14
Release PR for v2.15.1 (#398)3b0868d
Fixing S3 bucket name extraction for AWS SDK V2 (#393)Updates
info.picocli:picocli
from 4.7.5 to 4.7.6Release notes
Sourced from info.picocli:picocli's releases.
... (truncated)
Changelog
Sourced from info.picocli:picocli's changelog.
... (truncated)
Commits
Superseded by #1669.