v1.3.7
Reactor Netty 1.3.7 is part of 2025.0.7 Release Train.
- Depend on
Reactor Corev3.8.7by @violetagg in b0395bec56155b3c6ed9c2a4b2b81ccb857bdcf5, see release notes - Depend on
Nettyv4.2.17.Finalby @violetagg in #4324 - Add
WebSocketclient metrics by @LivingLikeKrillin in #4118 - Expose pending acquire latencies to custom
MeterRegistrarby @ejhnsn in #4250 - Reduce per-request CPU in the HTTP/2 connection pool by @samueldlightfoot in #4297
- Evaluate the address supplier once in
AddressUtils.updatePortby @samueldlightfoot in #4298 - Require choice between
ForwardedandX-Forwardedheaders by @violetagg in #4312 - Reuse per-connection address and byte meters in the Micrometer client metrics path by @samueldlightfoot in #4318
- Override
isH2cUpgradeinHttp3Poolto always return false by @violetagg in #4325 - Drop the redundant
addressparameter from the HttpClientrecordRead/recordWrite/startWriteby @violetagg in #4327 - HttpClient: Add API for configuring max decompression buffer size by @violetagg in f4ca645c635c392d602c3cae12a4ca74697ae5fd
- Ensure
NonSslRedirectHandleralways does a redirect based on HOST header by @violetagg in 626a6e742d0314c26b2fda5e943382e94afefa31 - WebSocket: Add API for configuring max decompression buffer size by @violetagg in 6908378d586989ffceaa4c2f50f407d969016dd9
- Exclude
HTTP/2connections from the pool during thePINGliveness check by @LivingLikeKrillin in #4255 - Add the liveness check to
Http11EvictionPredicateby @LivingLikeKrillin in #4256 - Skip
SNIlookup completion when the channel is already closed by @violetagg in #4266 - Do not capture caller context into pool maintenance tasks by @hocaron in #4300
- Fix WebSocket-over-HTTP/2 server metrics gauge accounting on close by @LivingLikeKrillin in #4302
- Fix
NameResolverProvider#equals/hashCodeby @violetagg in 717381b7054376657753eaee27c6d48a19c7fe68 - Refactor
TracingMapHandleto handle exceptions correctly by @violetagg in 68561f4889a881a5e72f45e8f20c814adfa05b5f - Update proxy handling by @violetagg in fc98328cf0d4268c22ba17f8cad144e1408ff91f
- Refine header handling during redirects by @violetagg in 88adf0cb35e648aa695c22d53efc8ff19c69600f
- Add back-pressure on pipelined HTTP requests by @violetagg in dc07b9259bd1f3fb089b1658e62e9be21356e0b6
- Proxy protocol is not supported for HTTP/3 protocol by @violetagg in 8d37581255ba2cc3cd2a0c6c5a2ece4af7040115
- Update javadoc for http-to-https redirect by @violetagg in 74a5524c2f589faa28802790643f5b674025cdb6
- @LivingLikeKrillin made their first contribution in #4118
- @ejhnsn made their first contribution in #4250
- @hocaron made their first contribution in #4300
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.3.6...v1.3.7
v1.4.0-M1
Reactor Netty 1.4.0-M1 is part of 2026.0.0-M1 Release Train.
- Require choice between
ForwardedandX-Forwardedheaders by @violetagg in #4312
- Depend on
Reactor Corev3.8.7by @violetagg in 79ef2f634a79d96d9bf8969a85b494357e0ae31a, see release notes - Depend on
Nettyv4.2.17.Finalby @violetagg in #4324 - Depend on
Micrometerv1.18.0-M1by @violetagg in 0b9436b4551745491baefeca2dcf755560979f3b - Depend on
Micrometer Tracingv1.8.0-M1by @violetagg in 0b9436b4551745491baefeca2dcf755560979f3b - Add
WebSocketclient metrics by @LivingLikeKrillin in #4118 - Expose pending acquire latencies to custom
MeterRegistrarby @ejhnsn in #4250 - Reduce per-request CPU in the HTTP/2 connection pool by @samueldlightfoot in #4297
- Evaluate the address supplier once in
AddressUtils.updatePortby @samueldlightfoot in #4298 - Reuse per-connection address and byte meters in the Micrometer client metrics path by @samueldlightfoot in #4318
- Override
isH2cUpgradeinHttp3Poolto always return false by @violetagg in #4325 - Drop the redundant
addressparameter from the HttpClientrecordRead/recordWrite/startWriteby @violetagg in #4327 - HttpClient: Add API for configuring max decompression buffer size by @violetagg in e413ce9590b825c6aeb60bd2f4f5875fdd7d5310
- Ensure
NonSslRedirectHandleralways does a redirect based on HOST header by @violetagg in 7bd2f47a55ba762c289cba71818ea955c4f1de34 - WebSocket: Add API for configuring max decompression buffer size by @violetagg in d735cd1390694a010f30e3ed615bb86b079bfd84
- Exclude
HTTP/2connections from the pool during thePINGliveness check by @LivingLikeKrillin in #4255 - Add the liveness check to
Http11EvictionPredicateby @LivingLikeKrillin in #4256 - Skip
SNIlookup completion when the channel is already closed by @violetagg in #4266 - Do not capture caller context into pool maintenance tasks by @hocaron in #4300
- Fix WebSocket-over-HTTP/2 server metrics gauge accounting on close by @LivingLikeKrillin in #4302
- Fix
NameResolverProvider#equals/hashCodeby @violetagg in 5c19b57d9976f85746202739f3cd13a0985ec884 - Refactor
TracingMapHandleto handle exceptions correctly by @violetagg in 8e63e565e9f6750f188cf3f0b640856c447c9a27 - Update proxy handling by @violetagg in 99365a5c06c3e0c57e589b954b26d3e73c6e2de7
- Refine header handling during redirects by @violetagg in 53e42cfd01042f63f43da14f9ced212016ad8969
- Add back-pressure on pipelined HTTP requests by @violetagg in 38cd84cca25686e330443d1988d18ba73ad29646
- Proxy protocol is not supported for HTTP/3 protocol by @violetagg in afb365259a3f674ee810d608dcd197d9ae82ca7c
- Update javadoc for http-to-https redirect by @violetagg in ac607b094a7c095b37128380590f8247f6190f1f
- @LivingLikeKrillin made their first contribution in #4118
- @ejhnsn made their first contribution in #4250
- @hocaron made their first contribution in #4300
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.3.6...v1.4.0-M1
v1.3.6
Reactor Netty 1.3.6 is part of 2025.0.6 Release Train.
- Tweak
DNSresolver channel allocation strategy by @violetagg in #4230
- Depend on
Reactor Corev3.8.6by @violetagg in 511a3b6ef87c2d87da1544bcd669d7251d1035a7, see release notes - Depend on
Nettyv4.2.15.Finalby @violetagg in #4237 - Remove multipart exception from
isSelfDefinedMessageLengthfor keep-alive by @violetagg in #4200 - Store
HTTP/2websocketCONNECT:protocol/:pathin channel attributes by @violetagg in #4202 - Update HTTP/3 configuration by @violetagg in 1a4c4221afd7deb62e95a17a3d32795481d2f9df
- Fix
keep-aliverace when creatingHttpServerOperationsby @koisyu in #4189 - Fix
HTTP/3connection pool drain when server replenishes streams to same level by @violetagg in #4193 - Fix missing metrics for
AdaptiveByteBufAllocatorby @lukas-riedler-dynatrace in #4217 - Throw
DecoderExceptionwith hostname whenSNIAsyncMapping resolves to null by @kwondh5217 in #4212 - Refine header handling during redirects by @violetagg in e7ef551eead84ba465324531683fafa03ab96ee9
- Add
WebSocketecho server example by @Yelagandula in #4177 - Document
TCP/UDPmetricsremote.addresstag cardinality by @violetagg in #4201
- @koisyu made their first contribution in #4189
- @Yelagandula made their first contribution in #4177
- @lukas-riedler-dynatrace made their first contribution in #4217
- @kwondh5217 made their first contribution in #4212
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.3.5...v1.3.6
v1.2.18
Reactor Netty 1.2.18 is part of 2024.0.18 Release Train. This is the last release of 1.2.x, as 2024.0.x Release Train is going out of OSS support. For the next steps, check our support policy.
- Tweak
DNSresolver channel allocation strategy by @violetagg in #4230
- Depend on
Reactor Corev3.7.19by @violetagg in c753da48febe3ea28b19bb1cf64ba3b377f1a820, see release notes - Depend on
Nettyv4.1.135.Finalby @violetagg in #4240 - Store
HTTP/2websocketCONNECT:protocol/:pathin channel attributes by @violetagg in #4202
- Fix
keep-aliverace when creatingHttpServerOperationsby @koisyu in #4189 - Throw
DecoderExceptionwith hostname whenSNIAsyncMapping resolves to null by @kwondh5217 in #4212 - Refine header handling during redirects by @violetagg in e7ef551eead84ba465324531683fafa03ab96ee9
- @koisyu made their first contribution in #4189
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.17...v1.2.18
v1.3.5
Reactor Netty 1.3.5 is part of 2025.0.5 Release Train.
- Depend on
Reactor Corev3.8.5by @violetagg in b68dacab12f5ff46575f9009f34ea676a212879d, see release notes - Depend on
Nettyv4.2.12.Finalby @violetagg in #4167 - Depend on
Netty QUIC Codecv0.0.75.Finalby @violetagg in #4148 - Depend on
Bravev6.3.1by @dependabot[bot] in #4159 - Optimise
uriconstruction withbaseUrlinHttpClientHandlerby @violetagg in #4130 - Optimise
UriEndpoint#toSocketAddressStringWithoutDefaultPortby @violetagg in #4131 - Store resolved
SocketAddressinUriEndpointfor absolute URLs by @violetagg in #4132 - Lazily compute
HttpClientOperations#resourceUrlby @violetagg in #4135 - Pre-compute
pathinUriEndpointwhenURIis provided by @violetagg in #4136 - Cleanup
HTTP/2WebSocketextension handlers by @violetagg in #4152 - Optimise
Fluxbody accumulation forGET/HEAD/DELETErequests by @violetagg in #4164 - Fix
HTTP/3connection pool max streams handling by @violetagg in #4182
- Ensure connection concurrency and acquired counters are updated before delivering the slot by @violetagg in #4179
- Fix
StackOverflowErrorinServerTransportgraceful shutdown by @violetagg in #4181 - Fix invalidated connection reuse in
Http2Poolby @violetagg in #4180
- @Junuu made their first contribution in #4137
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.3.4...v1.3.5
v1.2.17
Reactor Netty 1.2.17 is part of 2024.0.17 Release Train.
- Depend on
Reactor Corev3.7.18by @violetagg in 9f6f3e0ee844982a5332b6e4892f38e97e11c8e2, see release notes - Depend on
Nettyv4.1.132.Finalby @violetagg in #4162 - Depend on
Netty QUIC Codecv0.0.75.Finalby @violetagg in #4148 - Optimise
uriconstruction withbaseUrlinHttpClientHandlerby @violetagg in #4130 - Optimise
UriEndpoint#toSocketAddressStringWithoutDefaultPortby @violetagg in #4131 - Store resolved
SocketAddressinUriEndpointfor absolute URLs by @violetagg in #4132 - Lazily compute
HttpClientOperations#resourceUrlby @violetagg in #4135 - Pre-compute
pathinUriEndpointwhenURIis provided by @violetagg in #4136 - Cleanup
HTTP/2WebSocketextension handlers by @violetagg in #4152
- Fix
StackOverflowErrorinServerTransportgraceful shutdown by @violetagg in #4181
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.16...v1.2.17
v1.3.4
Reactor Netty 1.3.4 is part of 2025.0.4 Release Train.
- Depend on
Reactor Corev3.8.4by @chemicL in 53e8319e6fc66e101c3b52fc3a1267a891d1aeff, see release notes - Avoid
DefaultChannelIdgeneration forDisposedChannelby @violetagg in #4095 - Push-based
maxConcurrentStreamsupdate viaSETTINGSframe handler by @violetagg in #4106 - Add configurable
maxLifeTimewith per-resource variance by @violetagg in #4111 - Add
Http2AllocationStrategy#streamBatchSizefor batched stream dispatching by @violetagg in #4114 - Override
isSharable()explicitly to avoid annotation lookup by @violetagg in #4120 - Add fast-path short-circuit for
is100ContinueExpectedcheck by @violetagg in #4123 - Cache resolved
HttpHeadersFactoryinstances to avoid repeated allocation by @violetagg in #4124
- Add
FlushConsolidationHandlertoH2Cupgrade pipeline by @violetagg in #4097 - Fix
Http2Poolreturning connection to the pool beforeH2Cupgrade completes by @violetagg in #4098 - Fix
Http2PoolACQUIREDcounter not rolled back when deliver is rejected by @violetagg in #4099 - Fix
HttpClient#proxyWhento useNoopAddressResolverGroupby @violetagg in #4104
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.3.3...v1.3.4
v1.2.16
Reactor Netty 1.2.16 is part of 2024.0.16 Release Train.
- Depend on
Reactor Corev3.7.17by @chemicL in 98eb2718b3892d9409b419ebd8abe6b8691900ff, see release notes - Override
isSharable()explicitly to avoid annotation lookup by @violetagg in #4120 - Add fast-path short-circuit for
is100ContinueExpectedcheck by @violetagg in #4123 - Cache resolved
HttpHeadersFactoryinstances to avoid repeated allocation by @violetagg in #4124
- Add
FlushConsolidationHandlertoH2Cupgrade pipeline by @violetagg in #4097 - Fix
HttpClient#proxyWhento useNoopAddressResolverGroupby @violetagg in #4104
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.15...v1.2.16
v1.3.3
Reactor Netty 1.3.3 is part of 2025.0.3 Release Train.
- Depend on
Reactor Corev3.8.3by @violetagg in 0e5b3519c7c3ff9374985b3f1f1f179b4b98b42c, see release notes - Depend on
Nettyv4.2.10.Finalby @violetagg in #4091 - Improve
Http2Poolconnection reuse for concurrent acquires by @zimatars in #4051 - Refactor
Http2Poolmax concurrent streams calculation by @violetagg in #4061 - Remove deprecated
EventLoopGroupchecks fromsupportGroup()by @violetagg in #4084 - Optimise
HttpServerRequest#timestampby usingInstantinternally with lazyZonedDateTimeconversion by @violetagg in #4090
- Fix race condition in pending acquire timer management by @violetagg in #4073
- Fix incorrect channel factory selection for custom
EventLoopGroupsby @j-bahr in #4074
- Add
Http2AllocationStrategydocumentation and improve javadoc by @violetagg in #4093
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.3.2...v1.3.3
v1.2.15
Reactor Netty 1.2.15 is part of 2024.0.15 Release Train.
- Depend on
Reactor Corev3.7.16by @violetagg in 5aa16ed06f02da124842cd6e5f37ed66ef67caf2, see release notes - Depend on
Nettyv4.1.131.Finalby @violetagg in #4092
- Fix race condition in pending acquire timer management by @violetagg in #4073
Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.14...v1.2.15