reactor/reactor-netty
 Watch   
 Star   
 Fork   
7 days ago
reactor-netty

v1.3.7

Reactor Netty 1.3.7 is part of 2025.0.7 Release Train.

What's Changed

✨ New features and improvements

  • Depend on Reactor Core v3.8.7 by @violetagg in b0395bec56155b3c6ed9c2a4b2b81ccb857bdcf5, see release notes
  • Depend on Netty v4.2.17.Final by @violetagg in #4324
  • Add WebSocket client metrics by @LivingLikeKrillin in #4118
  • Expose pending acquire latencies to custom MeterRegistrar by @ejhnsn in #4250
  • Reduce per-request CPU in the HTTP/2 connection pool by @samueldlightfoot in #4297
  • Evaluate the address supplier once in AddressUtils.updatePort by @samueldlightfoot in #4298
  • Require choice between Forwarded and X-Forwarded headers by @violetagg in #4312
  • Reuse per-connection address and byte meters in the Micrometer client metrics path by @samueldlightfoot in #4318
  • Override isH2cUpgrade in Http3Pool to always return false by @violetagg in #4325
  • Drop the redundant address parameter from the HttpClient recordRead/recordWrite/startWrite by @violetagg in #4327
  • HttpClient: Add API for configuring max decompression buffer size by @violetagg in f4ca645c635c392d602c3cae12a4ca74697ae5fd
  • Ensure NonSslRedirectHandler always does a redirect based on HOST header by @violetagg in 626a6e742d0314c26b2fda5e943382e94afefa31
  • WebSocket: Add API for configuring max decompression buffer size by @violetagg in 6908378d586989ffceaa4c2f50f407d969016dd9

🐞 Bug fixes

  • Exclude HTTP/2 connections from the pool during the PING liveness check by @LivingLikeKrillin in #4255
  • Add the liveness check to Http11EvictionPredicate by @LivingLikeKrillin in #4256
  • Skip SNI lookup 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/hashCode by @violetagg in 717381b7054376657753eaee27c6d48a19c7fe68
  • Refactor TracingMapHandle to 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

📖 Documentation

  • Update javadoc for http-to-https redirect by @violetagg in 74a5524c2f589faa28802790643f5b674025cdb6

New Contributors

  • @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

7 days ago
reactor-netty

v1.4.0-M1

Reactor Netty 1.4.0-M1 is part of 2026.0.0-M1 Release Train.

What's Changed

⚠️ Update considerations and deprecations

  • Require choice between Forwarded and X-Forwarded headers by @violetagg in #4312

✨ New features and improvements

  • Depend on Reactor Core v3.8.7 by @violetagg in 79ef2f634a79d96d9bf8969a85b494357e0ae31a, see release notes
  • Depend on Netty v4.2.17.Final by @violetagg in #4324
  • Depend on Micrometer v1.18.0-M1 by @violetagg in 0b9436b4551745491baefeca2dcf755560979f3b
  • Depend on Micrometer Tracing v1.8.0-M1 by @violetagg in 0b9436b4551745491baefeca2dcf755560979f3b
  • Add WebSocket client metrics by @LivingLikeKrillin in #4118
  • Expose pending acquire latencies to custom MeterRegistrar by @ejhnsn in #4250
  • Reduce per-request CPU in the HTTP/2 connection pool by @samueldlightfoot in #4297
  • Evaluate the address supplier once in AddressUtils.updatePort by @samueldlightfoot in #4298
  • Reuse per-connection address and byte meters in the Micrometer client metrics path by @samueldlightfoot in #4318
  • Override isH2cUpgrade in Http3Pool to always return false by @violetagg in #4325
  • Drop the redundant address parameter from the HttpClient recordRead/recordWrite/startWrite by @violetagg in #4327
  • HttpClient: Add API for configuring max decompression buffer size by @violetagg in e413ce9590b825c6aeb60bd2f4f5875fdd7d5310
  • Ensure NonSslRedirectHandler always does a redirect based on HOST header by @violetagg in 7bd2f47a55ba762c289cba71818ea955c4f1de34
  • WebSocket: Add API for configuring max decompression buffer size by @violetagg in d735cd1390694a010f30e3ed615bb86b079bfd84

🐞 Bug fixes

  • Exclude HTTP/2 connections from the pool during the PING liveness check by @LivingLikeKrillin in #4255
  • Add the liveness check to Http11EvictionPredicate by @LivingLikeKrillin in #4256
  • Skip SNI lookup 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/hashCode by @violetagg in 5c19b57d9976f85746202739f3cd13a0985ec884
  • Refactor TracingMapHandle to 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

📖 Documentation

  • Update javadoc for http-to-https redirect by @violetagg in ac607b094a7c095b37128380590f8247f6190f1f

New Contributors

  • @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

2026-06-08 20:03:00
reactor-netty

v1.3.6

Reactor Netty 1.3.6 is part of 2025.0.6 Release Train.

What's Changed

⚠️ Update considerations and deprecations

  • Tweak DNS resolver channel allocation strategy by @violetagg in #4230

✨ New features and improvements

  • Depend on Reactor Core v3.8.6 by @violetagg in 511a3b6ef87c2d87da1544bcd669d7251d1035a7, see release notes
  • Depend on Netty v4.2.15.Final by @violetagg in #4237
  • Remove multipart exception from isSelfDefinedMessageLength for keep-alive by @violetagg in #4200
  • Store HTTP/2 websocket CONNECT :protocol/:path in channel attributes by @violetagg in #4202
  • Update HTTP/3 configuration by @violetagg in 1a4c4221afd7deb62e95a17a3d32795481d2f9df

🐞 Bug fixes

  • Fix keep-alive race when creating HttpServerOperations by @koisyu in #4189
  • Fix HTTP/3 connection pool drain when server replenishes streams to same level by @violetagg in #4193
  • Fix missing metrics for AdaptiveByteBufAllocator by @lukas-riedler-dynatrace in #4217
  • Throw DecoderException with hostname when SNI AsyncMapping resolves to null by @kwondh5217 in #4212
  • Refine header handling during redirects by @violetagg in e7ef551eead84ba465324531683fafa03ab96ee9

📖 Documentation

  • Add WebSocket echo server example by @Yelagandula in #4177
  • Document TCP/UDP metrics remote.address tag cardinality by @violetagg in #4201

New Contributors

  • @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

2026-06-08 16:57:39
reactor-netty

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.

What's Changed

⚠️ Update considerations and deprecations

  • Tweak DNS resolver channel allocation strategy by @violetagg in #4230

✨ New features and improvements

  • Depend on Reactor Core v3.7.19 by @violetagg in c753da48febe3ea28b19bb1cf64ba3b377f1a820, see release notes
  • Depend on Netty v4.1.135.Final by @violetagg in #4240
  • Store HTTP/2 websocket CONNECT :protocol/:path in channel attributes by @violetagg in #4202

🐞 Bug fixes

  • Fix keep-alive race when creating HttpServerOperations by @koisyu in #4189
  • Throw DecoderException with hostname when SNI AsyncMapping resolves to null by @kwondh5217 in #4212
  • Refine header handling during redirects by @violetagg in e7ef551eead84ba465324531683fafa03ab96ee9

New Contributors

  • @koisyu made their first contribution in #4189

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.17...v1.2.18

2026-04-14 17:07:14
reactor-netty

v1.3.5

Reactor Netty 1.3.5 is part of 2025.0.5 Release Train.

What's Changed

✨ New features and improvements

  • Depend on Reactor Core v3.8.5 by @violetagg in b68dacab12f5ff46575f9009f34ea676a212879d, see release notes
  • Depend on Netty v4.2.12.Final by @violetagg in #4167
  • Depend on Netty QUIC Codec v0.0.75.Final by @violetagg in #4148
  • Depend on Brave v6.3.1 by @dependabot[bot] in #4159
  • Optimise uri construction with baseUrl in HttpClientHandler by @violetagg in #4130
  • Optimise UriEndpoint#toSocketAddressStringWithoutDefaultPort by @violetagg in #4131
  • Store resolved SocketAddress in UriEndpoint for absolute URLs by @violetagg in #4132
  • Lazily compute HttpClientOperations#resourceUrl by @violetagg in #4135
  • Pre-compute path in UriEndpoint when URI is provided by @violetagg in #4136
  • Cleanup HTTP/2 WebSocket extension handlers by @violetagg in #4152
  • Optimise Flux body accumulation for GET/HEAD/DELETE requests by @violetagg in #4164
  • Fix HTTP/3 connection pool max streams handling by @violetagg in #4182

🐞 Bug fixes

  • Ensure connection concurrency and acquired counters are updated before delivering the slot by @violetagg in #4179
  • Fix StackOverflowError in ServerTransport graceful shutdown by @violetagg in #4181
  • Fix invalidated connection reuse in Http2Pool by @violetagg in #4180

New Contributors

  • @Junuu made their first contribution in #4137

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.3.4...v1.3.5

2026-04-14 15:35:14
reactor-netty

v1.2.17

Reactor Netty 1.2.17 is part of 2024.0.17 Release Train.

What's Changed

✨ New features and improvements

  • Depend on Reactor Core v3.7.18 by @violetagg in 9f6f3e0ee844982a5332b6e4892f38e97e11c8e2, see release notes
  • Depend on Netty v4.1.132.Final by @violetagg in #4162
  • Depend on Netty QUIC Codec v0.0.75.Final by @violetagg in #4148
  • Optimise uri construction with baseUrl in HttpClientHandler by @violetagg in #4130
  • Optimise UriEndpoint#toSocketAddressStringWithoutDefaultPort by @violetagg in #4131
  • Store resolved SocketAddress in UriEndpoint for absolute URLs by @violetagg in #4132
  • Lazily compute HttpClientOperations#resourceUrl by @violetagg in #4135
  • Pre-compute path in UriEndpoint when URI is provided by @violetagg in #4136
  • Cleanup HTTP/2 WebSocket extension handlers by @violetagg in #4152

🐞 Bug fixes

  • Fix StackOverflowError in ServerTransport graceful shutdown by @violetagg in #4181

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.16...v1.2.17

2026-03-10 19:15:40
reactor-netty

v1.3.4

Reactor Netty 1.3.4 is part of 2025.0.4 Release Train.

What's Changed

✨ New features and improvements

  • Depend on Reactor Core v3.8.4 by @chemicL in 53e8319e6fc66e101c3b52fc3a1267a891d1aeff, see release notes
  • Avoid DefaultChannelId generation for DisposedChannel by @violetagg in #4095
  • Push-based maxConcurrentStreams update via SETTINGS frame handler by @violetagg in #4106
  • Add configurable maxLifeTime with per-resource variance by @violetagg in #4111
  • Add Http2AllocationStrategy#streamBatchSize for batched stream dispatching by @violetagg in #4114
  • Override isSharable() explicitly to avoid annotation lookup by @violetagg in #4120
  • Add fast-path short-circuit for is100ContinueExpected check by @violetagg in #4123
  • Cache resolved HttpHeadersFactory instances to avoid repeated allocation by @violetagg in #4124

🐞 Bug fixes

  • Add FlushConsolidationHandler to H2C upgrade pipeline by @violetagg in #4097
  • Fix Http2Pool returning connection to the pool before H2C upgrade completes by @violetagg in #4098
  • Fix Http2Pool ACQUIRED counter not rolled back when deliver is rejected by @violetagg in #4099
  • Fix HttpClient#proxyWhen to use NoopAddressResolverGroup by @violetagg in #4104

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.3.3...v1.3.4

2026-03-10 17:21:27
reactor-netty

v1.2.16

Reactor Netty 1.2.16 is part of 2024.0.16 Release Train.

What's Changed

✨ New features and improvements

  • Depend on Reactor Core v3.7.17 by @chemicL in 98eb2718b3892d9409b419ebd8abe6b8691900ff, see release notes
  • Override isSharable() explicitly to avoid annotation lookup by @violetagg in #4120
  • Add fast-path short-circuit for is100ContinueExpected check by @violetagg in #4123
  • Cache resolved HttpHeadersFactory instances to avoid repeated allocation by @violetagg in #4124

🐞 Bug fixes

  • Add FlushConsolidationHandler to H2C upgrade pipeline by @violetagg in #4097
  • Fix HttpClient#proxyWhen to use NoopAddressResolverGroup by @violetagg in #4104

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.15...v1.2.16

2026-02-10 18:25:29
reactor-netty

v1.3.3

Reactor Netty 1.3.3 is part of 2025.0.3 Release Train.

What's Changed

✨ New features and improvements

  • Depend on Reactor Core v3.8.3 by @violetagg in 0e5b3519c7c3ff9374985b3f1f1f179b4b98b42c, see release notes
  • Depend on Netty v4.2.10.Final by @violetagg in #4091
  • Improve Http2Pool connection reuse for concurrent acquires by @zimatars in #4051
  • Refactor Http2Pool max concurrent streams calculation by @violetagg in #4061
  • Remove deprecated EventLoopGroup checks from supportGroup() by @violetagg in #4084
  • Optimise HttpServerRequest#timestamp by using Instant internally with lazy ZonedDateTime conversion by @violetagg in #4090

🐞 Bug fixes

  • Fix race condition in pending acquire timer management by @violetagg in #4073
  • Fix incorrect channel factory selection for custom EventLoopGroups by @j-bahr in #4074

📖 Documentation

  • Add Http2AllocationStrategy documentation and improve javadoc by @violetagg in #4093

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.3.2...v1.3.3

2026-02-10 17:47:26
reactor-netty

v1.2.15

Reactor Netty 1.2.15 is part of 2024.0.15 Release Train.

What's Changed

✨ New features and improvements

  • Depend on Reactor Core v3.7.16 by @violetagg in 5aa16ed06f02da124842cd6e5f37ed66ef67caf2, see release notes
  • Depend on Netty v4.1.131.Final by @violetagg in #4092

🐞 Bug fixes

  • 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