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

v1.2.3

Reactor Netty 1.2.3 is part of 2024.0.3 Release Train.

What's Changed

⚠️ Update considerations and deprecations

  • Make ChannelOperations.DisposedChannel#close non operational by @violetagg in #3592
  • Ensure HttpClient does not add Content-Length header when the send function does not change NettyOutbound or returns Mono#empty by @violetagg in #3605

✨ New features and improvements

  • Depend on Reactor Core v3.7.3 by @violetagg in 4e2176e39766ff0476eaa1f8b6627ec02a5b2a64, see release notes
  • Depend on Netty v4.1.118.Final by @violetagg in #3623
  • Use DnsNameResolverBuilder#datagramChannelFactory instead of the deprecated DnsNameResolverBuilder#channelFactory by @violetagg in #3598
  • Support for dynamic proxy configuration at the HTTP protocol level by @raccoonback in #3593
  • Supports configurable compression level by @raccoonback in #3567
  • Add API for specifying datagram channel strategies per DnsNameResolver by @violetagg in #3607

🐞 Bug fixes

  • When Mono#empty is provided as a deferred configuration, continue with the actual configuration by @violetagg in #3596
  • When null is provided as a deferred configuration, continue with the current configuration by @violetagg in #3602
  • Http2Pool: Ensure the permit is returned when the Borrower is cancelled by @violetagg in #3609

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.2...v1.2.3

10 days ago
reactor-netty

v1.1.27

Reactor Netty 1.1.27 is part of 2023.0.15 Release Train.

What's Changed

⚠️ Update considerations and deprecations

  • Make ChannelOperations.DisposedChannel#close non operational by @violetagg in #3592
  • Ensure HttpClient does not add Content-Length header when the send function does not change NettyOutbound or returns Mono#empty by @violetagg in #3605

✨ New features and improvements

  • Depend on Netty v4.1.118.Final by @violetagg in #3623
  • Use DnsNameResolverBuilder#datagramChannelFactory instead of the deprecated DnsNameResolverBuilder#channelFactory by @violetagg in #3598

🐞 Bug fixes

  • When Mono#empty is provided as a deferred configuration, continue with the actual configuration by @violetagg in #3596
  • When null is provided as a deferred configuration, continue with the current configuration by @violetagg in #3602
  • Http2Pool: Ensure the permit is returned when the Borrower is cancelled by @violetagg in #3609

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.1.26...v1.1.27

2025-01-14 21:49:55
reactor-netty

v1.2.2

Reactor Netty 1.2.2 is part of 2024.0.2 Release Train.

What's Changed

⚠️ Update considerations and deprecations

  • Do not add Transfer-Encoding for DELETE with no body by @violetagg in #3549
  • Ensure DisposedChannelConfig#setAutoRead does not change auto-read configuration by @violetagg in #3581

✨ New features and improvements

  • Depend on Reactor Core v3.7.2 by @chemicL in 3db1d870ab37489ffbd91c3a7d2d23cdd9864c4d, see release notes
  • Depend on Netty v4.1.116.Final by @violetagg in #3550
  • Depend on netty-incubator-transport-native-io_uring v0.0.26.Final by @dependabot in #3568
  • Depend on Netty QUIC Codec v0.0.70.Final by @violetagg in #3570
  • Http2Pool: Do not proceed with the acquisition if Borrower is cancelled by @violetagg in #3582
  • Http2Pool: Do not proceed with the resource delivery if Borrower is cancelled by @violetagg in #3585
  • Configuration for setting maximum number of connection pools to be created by @jchenga in #3566

🐞 Bug fixes

  • Fix ClassCastException in HttpOperations#initShortId() by @joschi in #3542
  • Ensure the request counter is updated once when the request is received by @violetagg in #3543
  • HttpServerRequest#receiveContent() never emits any value nor completes when HTTP/1.1 TLS Upgrade (RFC-2817) kicks in by @reta in #3540
  • Generate log message in advance by @raccoonback in #3571

📖 Documentation

  • Add Reactor Netty version of CORS HTTP server example by @jchenga in #3554
  • Add HTTP2/HTTP3 configuration to the HTTP examples by @violetagg in #3578

New Contributors

  • @joschi made their first contribution in #3542
  • @raccoonback made their first contribution in #3571

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.1...v1.2.2

2025-01-14 17:41:19
reactor-netty

v1.1.26

Reactor Netty 1.1.26 is part of 2023.0.14 Release Train.

What's Changed

⚠️ Update considerations and deprecations

  • Do not add Transfer-Encoding for DELETE with no body by @violetagg in #3549
  • Ensure DisposedChannelConfig#setAutoRead does not change auto-read configuration by @violetagg in #3581

✨ New features and improvements

  • Depend on Netty v4.1.116.Final by @violetagg in #3550
  • Depend on netty-incubator-transport-native-io_uring v0.0.26.Final by @dependabot in #3568
  • Depend on Netty QUIC Codec v0.0.70.Final by @violetagg in #3570
  • Http2Pool: Do not proceed with the acquisition if Borrower is cancelled by @violetagg in #3582
  • Http2Pool: Do not proceed with the resource delivery if Borrower is cancelled by @violetagg in #3585

🐞 Bug fixes

  • Fix ClassCastException in HttpOperations#initShortId() by @joschi in #3542
  • Ensure the request counter is updated once when the request is received by @violetagg in #3543
  • HttpServerRequest#receiveContent() never emits any value nor completes when HTTP/1.1 TLS Upgrade (RFC-2817) kicks in by @reta in #3540
  • Generate log message in advance by @raccoonback in #3571

New Contributors

  • @joschi made their first contribution in #3542
  • @raccoonback made their first contribution in #3571

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.1.25...v1.1.26

2024-12-10 20:10:20
reactor-netty

v1.2.1

Reactor Netty 1.2.1 is part of 2024.0.1 Release Train.

What's Changed

✨ New features and improvements

  • Depend on Reactor Core v3.7.1 by @violetagg in 667f8c9cbf5a227a15f6d0a2f3aab7c4777613da, see release notes
  • Depend on Netty v4.1.115.Final by @violetagg in #3511
  • Use SslHandler#isEncrypted(ByteBuf, boolean) instead of the deprecated SslHandler#isEncrypted(ByteBuf) by @violetagg in #3523
  • Avoid using static exceptions for better debugging experience by @violetagg in #3529
  • Handle the incoming LastHttpContent with no content as if it is EMPTY_LAST_CONTENT by @violetagg in #3530

🐞 Bug fixes

  • Add timeout for DefaultLoopResources#disposeLater by @violetagg in #3514
  • Initialise lazy the ProxyProvider configuration by @violetagg in #3517
  • Ensure all ConnectionProvider built-in metrics are disabled when a custom recorder is provided by @violetagg in #3521
  • Ensure HttpClient sends full request when the send function does not change NettyOutbound by @violetagg in #3526
  • HTTP/3: Ensure HttpClient sends full request when the send function does not change NettyOutbound by @violetagg in #3536

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.0...v1.2.1

2024-12-10 19:15:50
reactor-netty

v1.1.25

Reactor Netty 1.1.25 is part of 2023.0.13 Release Train.

What's Changed

✨ New features and improvements

  • Depend on Netty v4.1.115.Final by @violetagg in #3511
  • Use SslHandler#isEncrypted(ByteBuf, boolean) instead of the deprecated SslHandler#isEncrypted(ByteBuf) by @violetagg in #3523
  • Handle the incoming LastHttpContent with no content as if it is EMPTY_LAST_CONTENT by @violetagg in #3530

🐞 Bug fixes

  • Add timeout for DefaultLoopResources#disposeLater by @violetagg in #3514
  • Initialise lazy the ProxyProvider configuration by @violetagg in #3517
  • Ensure all ConnectionProvider built-in metrics are disabled when a custom recorder is provided by @violetagg in #3521
  • Ensure HttpClient sends full request when the send function does not change NettyOutbound by @violetagg in #3526

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.1.24...v1.1.25

2024-11-12 20:32:25
reactor-netty

v1.2.0

Reactor Netty 1.2.0 is part of 2024.0.0 Release Train.

New and Noteworthy

What's Changed

⚠️ Update considerations and deprecations

  • Remove deprecated SslProvider$DefaultConfigurationSpec and SslProvider$DefaultConfigurationType by @violetagg in #3147
  • Deprecate SslContextSpec#sslContext(reactor.netty.tcp.SslProvider.ProtocolSslContextSpec) by @violetagg in #3160
  • Always add proxy.address tag for the client metrics by @violetagg in #3230
  • Resolve on demand the path from the request uri by @violetagg in #3359

✨ New features and improvements

  • Dependency updates
    • Depend on Reactor Core v3.7.0 by @chemicL in 9a5a67285f59cee19a0c73e0215087829e08b2dd, see release notes
    • Depend on Netty v4.1.114.Final by @violetagg in #3451
    • Depend on Netty QUIC Codec v0.0.68.Final by @violetagg in #3442
    • Depend on Micrometer v1.14.0 by @violetagg in #3508
    • Depend on Micrometer Tracing v1.14.0 by @violetagg in #3508
    • Depend on Micrometer Doc Generator v1.0.4 by @violetagg in d4ec32ee619f51d3917176f140561dc6cc9b7c7c
    • Depend on Context Propagation v1.1.0 by @violetagg in #3164
    • Depend on Brave v6.0.3 by @dependabot in #3172
  • HTTP/3 server support
    • Make ProtocolSslContextSpec generic by @violetagg in #3150
    • Add HTTP/3 initial settings by @violetagg in #3152
    • Add HttpProtocol#HTTP3 by @violetagg in #3161
    • Initial HTTP/3 server support by @violetagg in #3176
    • Annotate HTTP/3 server support as incubating by @violetagg in #3183
    • Add wiretap for HTTP/3 frames by @violetagg in #3186
    • Add accesslog for HTTP/3 server support by @violetagg in #3191
    • Add compression for HTTP/3 server support by @violetagg in #3192
    • Add metrics for HTTP/3 server support by @violetagg in #3193
    • Add dependency to Netty HTTP3 Codec for aggregated javadoc by @violetagg in #3197
    • Add SNI support by @violetagg in #3496
  • HTTP/3 client support
    • Add HTTP/3 client initial settings by @violetagg in #3311
    • Add HttpProtocol#HTTP3 by @violetagg in #3312
    • When there is no bind address, configure the default one by @violetagg in #3313
    • Add bind support for DefaultPooledConnectionProvider by @violetagg in #3314
    • Add Http3Pool by @violetagg in #3317
    • Initial HTTP/3 client support by @violetagg in #3319
    • Add SNI support by @violetagg in #3496
    • Resolve the remote address by @violetagg in #3507
  • Performance improvements
    • Always check idleTimeout configuration before pipeline checks by @violetagg in #3117
    • Always check readTimeout configuration before pipeline checks by @violetagg in #3118
    • Cache the request info when collecting metrics by @violetagg in #3211 and #3231
    • Immediately mark outbound as complete when sending Mono or Object by @violetagg in #3250
    • Add possibility to delay the last flush operation by @violetagg in #3271, #3280 and #3282
    • Cache the infomation whether the request is websocket by @violetagg in #3354
    • Cache Content-Length when it is about to send the FullHttpResponse by @violetagg in #3355
    • Use doFinally in order to handle cancel and error signals by @violetagg in #3356
    • Initialise ChannelOperations#shortId on demand by @violetagg in #3357
    • Simplify HttpServerOperations#onInboundNext by @violetagg in #3375
    • Simplify HttpTrafficHandler#write by @violetagg in #3376
    • Separate handling for EMPTY_LAST_CONTENT by @violetagg in #3385
    • Reduce duplication by @violetagg in #3386
    • Simplify response status code check by @violetagg in #3390
    • Simplify Http2StreamBridgeServerHandler#write by @violetagg in #3391
  • Other improvements
    • Add Unix Domain Sockets support on NIO transport by @violetagg in #3494
    • Make pending responses log messages consistent by @violetagg in #3239
    • Allow using SocketAddress proxies instead of just InetSocketAddress by @AlexProgrammerDE in #3243
    • Make MonoSend.MAX_SIZE configurable by system property by @VadimKirilchuk in #3276
    • Add Brotli support for HttpClient by @violetagg in #3331
    • HttpDecoderSpec#validateHeaders() specifies whether request/response headers are validated by @violetagg in #3370
    • Parse X-Forwarded-Prefix request header by @chemicL in #3436
    • Support allowPartialChunks in the HttpDecoderSpec by @reta in #3453
    • Add multi-release jar support by @violetagg in #3494

🐞 Bug fixes

  • Do not add IdleTimeoutHandler while processing pipelined requests by @violetagg in #3124
  • Always use remote socket address for the metrics by @violetagg in #3210
  • Ensure HttpServerMetricsRecorder#recordServerConnectionInactive/Close is invoked for websockets by @violetagg in #3229
  • Ensure ConnectionProvider metrics are disposed unconditionally when graceful shutdown by @violetagg in #3235
  • Ensure ByteBuf#release is invoked for already sent HTTP/2 response by @violetagg in #3236
  • When HttpOperations#afterMarkSentHeaders throws an error in HttpOperations#sendObject, ensure the ByteBuf is released just once by @violetagg in #3246
  • Ensure HttpClient#reactorNettyVersion() does not throw NullPointException when loaded through -javaagent under JDK 1.8 by @KyoUK4n in #3266
  • Fix HTTP/2 pool recordPendingSuccess/FailureAndLatency not recorded without timeout by @violetagg in #3252
  • Close the connection when decoding exception happens by @violetagg in #3290
  • Http2Pool: when applying acquireTimeout, check for current pending Borrowers by @violetagg in #3300
  • When an explicit EventLoopGroup is configured ensure only one connection pool is created by @violetagg in #3321
  • Do not record an exception when the request information is not available by @violetagg in #3352
  • Create on demand the response object for Expect: 100-continue by @violetagg in #3362
  • Always decode in an event loop by @violetagg in #3369
  • Ensure the buffer is not released twice by @violetagg in #3448
  • When terminating detach the connection from request/response objects by @violetagg in #3459
  • Ensure body is sent when DELETE and Transfer-Encoding by @violetagg in #3481
  • Delay sending the server preface when SNI is configured by @violetagg in #3484
  • Ensure HttpInfos#version returns the correct protocol by @violetagg in #3487

📖 Documentation, Tests

  • Clarify maximum websocket frame length configuration by @violetagg in #3116
  • Validate zstd compression by @sullis in #3126
  • Migrate reference documentation to Antora by @pderop in #3120, #3134, #3214, #3215, #3216 and by @violetagg in #3128, #3129, #3130, #3131, #3133, #3135, #3141
  • Extend the documentation for the shared (default) ConnectionProvider and Event Loop Group by @violetagg in #3281
  • Polish javadoc for HttpClient#compress by @izeye in #3349
  • Update sources references in the reference documentation by @violetagg in #3429
  • Fix typo in javadoc for allowPartialChunks setting by @andrross in #3471

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.1.17...v1.2.0

2024-11-12 18:17:43
reactor-netty

v1.1.24

Reactor Netty 1.1.24 is part of 2023.0.12 Release Train.

What's Changed

🐞 Bug fixes

  • When terminating detach the connection from request/response objects by @violetagg in #3459
  • Ensure body is sent when DELETE and Transfer-Encoding by @violetagg in #3481
  • Delay sending the server preface when SNI is configured by @violetagg in #3484
  • Ensure HttpInfos#version returns the correct protocol by @violetagg in #3487

📖 Documentation

  • Fix typo in javadoc for allowPartialChunks setting by @andrross in #3471

New Contributors

  • @andrross made their first contribution in #3471

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.1.23...v1.1.24

2024-10-15 18:38:03
reactor-netty

v1.2.0-RC1

Reactor Netty 1.2.0-RC1 is part of 2024.0.0-RC1 Release Train. Reactor Netty 1.2.0-RC1 inherits all changes from the 1.1.x branch at the point this release was cut.

What's Changed

✨ New features and improvements

  • Depend on Reactor Core v3.7.0-RC11 by @violetagg in 36d5c21a91beb2d1f5c43f5742a9cdaeb0fc8152, see release notes
  • Depend on Netty v4.1.114.Final by @violetagg in #3451
  • Depend on Netty QUIC Codec v0.0.68.Final by @violetagg in #3442
  • Depend on Micrometer v1.14.0-RC1 by @violetagg in d4ec32ee619f51d3917176f140561dc6cc9b7c7c
  • Depend on Micrometer Tracing v1.14.0-RC1 by @violetagg in d4ec32ee619f51d3917176f140561dc6cc9b7c7c
  • Depend on Micrometer Doc Generator v1.0.4 by @violetagg in d4ec32ee619f51d3917176f140561dc6cc9b7c7c
  • Parse X-Forwarded-Prefix request header by @chemicL in #3436
  • Support allowPartialChunks in the HttpDecoderSpec by @reta in #3453

🐞 Bug fixes

  • Ensure the buffer is not released twice by @violetagg in #3448

📖 Documentation

  • Update sources references in the reference documentation by @violetagg in #3429

New Contributors

  • @chemicL made their first contribution in #3436
  • @reta made their first contribution in #3453

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.2.0-M5...v1.2.0-RC1

2024-10-15 16:13:57
reactor-netty

v1.1.23

Reactor Netty 1.1.23 is part of 2023.0.11 Release Train**.

What's Changed

✨ New features and improvements

  • Depend on Netty v4.1.114.Final by @violetagg in #3451
  • Depend on Netty QUIC Codec v0.0.68.Final by @violetagg in #3442
  • Parse X-Forwarded-Prefix request header by @chemicL in #3436
  • Support allowPartialChunks in the HttpDecoderSpec by @reta in #3453

🐞 Bug fixes

  • Ensure the buffer is not released twice by @violetagg in #3448

📖 Documentation

  • Update sources references in the reference documentation by @violetagg in #3429

New Contributors

  • @chemicL made their first contribution in #3436
  • @reta made their first contribution in #3453

Full Changelog: https://github.com/reactor/reactor-netty/compare/v1.1.22...v1.1.23