Releases: reactor/reactor-netty
v1.1.2
Reactor Netty
1.1.2
is part of 2022.0.2
Release Train.
This is a recommended update for all Reactor Netty 1.1.x
users.
What's Changed
✨ New features and improvements
- Depend on
Reactor Core
v3.5.2
by @OlegDokuka in e5b2274, see release notes. - Depend on
Netty QUIC Codec
v0.0.35.Final
by @violetagg in #2612 - Improve logging when connection closed after cancel by @pderop in #2585
- Support configurable DNS resolver cache by @samueldlightfoot in #2622
🐞 Bug fixes
- Ensure
CL
/TE
headers are handled correctly for204
/205
/304
status codes when server configured withHTTP/2
by @violetagg in #2623 - Ensure
HttpServer
Active Connections
metric is correct when connection closure before response write by @violetagg in #2633
📖 Documentation, Tests and Build
- Documentation:
- Update
ReactorNetty#IO_SELECT_COUNT
javadoc by @violetagg in #2626 - Fix typos in comments of
HttpClientConnect
by @sgc109 in #2627 - Update
ReadMe
to have consistent formatting by @esivakumar18 in #2632 - Add Reactor Netty version of Telnet example by @jchenga in #2617
- Update
- Build:
- Use new
GitHub Actions
API for setting output by @violetagg in #2635
- Use new
🆙 Dependency Upgrades
- Bump
mockito-core
to version4.11.0
by @dependabot in #2629 - Bump
build-info-extractor-gradle
to version4.31.0
by @dependabot in #2630 - Bump
com.diffplug.spotless
to version6.12.1
by @dependabot in #2631 - Bump
assertj-core
to version3.24.1
by @dependabot in #2637 - Bump
netty-tcnative-boringssl-static
to version2.0.55.Final
by @violetagg in #2638
New Contributors
- @sgc109 made their first contribution in #2627
- @esivakumar18 made their first contribution in #2632
- @jchenga made their first contribution in #2617
Full Changelog: v1.1.1...v1.1.2
v1.0.27
Reactor Netty
1.0.27
is part of 2020.0.27
Release Train.
This is a recommended update for all Reactor Netty 1.0.x
users.
What's Changed
✨ New features and improvements
- Depend on
Netty QUIC Codec
v0.0.35.Final
by @violetagg in #2612 - Improve logging when connection closed after cancel by @pderop in #2585
- Support configurable DNS resolver cache by @samueldlightfoot in #2622
🐞 Bug fixes
- Ensure
CL
/TE
headers are handled correctly for204
/205
/304
status codes when server configured withHTTP/2
by @violetagg in #2623 - Ensure
HttpServer
Active Connections
metric is correct when connection closure before response write by @violetagg in #2633
📖 Documentation, Tests and Build
- Documentation:
- Update
ReactorNetty#IO_SELECT_COUNT
javadoc by @violetagg in #2626 - Fix typos in comments of
HttpClientConnect
by @sgc109 in #2627 - Update
ReadMe
to have consistent formatting by @esivakumar18 in #2632
- Update
- Build:
- Use new
GitHub Actions
API for setting output by @violetagg in #2635
- Use new
🆙 Dependency Upgrades
- Bump
mockito-core
to version4.11.0
by @dependabot in #2629 - Bump
build-info-extractor-gradle
to version4.31.0
by @dependabot in #2630 - Bump
com.diffplug.spotless
to version6.12.1
by @dependabot in #2631 - Bump
assertj-core
to version3.24.1
by @dependabot in #2637 - Bump
netty-tcnative-boringssl-static
to version2.0.55.Final
by @violetagg in #2638
New Contributors
- @sgc109 made their first contribution in #2627
- @esivakumar18 made their first contribution in #2632
Full Changelog: v1.0.26...v1.0.27
v1.1.1
Reactor Netty
1.1.1
is part of 2022.0.1
Release Train.
This is a recommended update for all Reactor Netty 1.1.x
users.
What's Changed
✨ New features and improvements
- Depend on
Reactor Core
v3.5.1
by @pderop in de89e70, see release notes. - Depend on
Netty
v4.1.86.Final
by @violetagg in #2611 - Depend on
Netty QUIC Codec
v0.0.34.Final
by @violetagg in #2574 - Depend on
netty-incubator-transport-native-io_uring
v0.0.16.Final
by @violetagg in #2575 - Allow configurable connection provider eviction predicate by @samueldlightfoot in #2557
- Support context propagation for
ChannelHandler
by @violetagg in #2588 - Deregister connection pool metrics from
Micrometer
(or alternate registry) when disposing the connection pool by @manolama in #2608 - Add new API
AccessLogArgProvider#connectionInformation()
for retrieving information related to host/remote address/scheme by @pderop in #2606
🐞 Bug fixes
- Ensure
Http2Pool
can be stopped gracefully by @violetagg in #2577 - Ensure decoding failure is propagated by @violetagg in #2578
- Ensure
Reactor Context
injected withHttpClient#mapConnect
is available on send request/receive response by @violetagg in #2595
📖 Documentation, Tests and Build
- Documentation:
- Update
Http2Pool
javadoc by @violetagg in #2589 - Update
HttpClient#metrics(boolean, Function)
andHttpServer#metrics(boolean, Function)
javadoc by @violetagg in #2593 - Update documentation for
ConnectionProvider.Builder#disposeInactivePoolsInBackground
by @violetagg in #2605 - Update
ConnectionProvider.MeterRegistrar
javadoc by @violetagg in #2610
- Update
- Tests:
- Ensure the connection is closed at the end of the test by @violetagg in #2598
- Add test for
ConnectionProvider.Builder#disposeInactivePoolsInBackground
by @violetagg in #2607
- Build:
- PRs with label
type/test
go toDocumentation, Tests and Build
section of the release notes by @violetagg in #2609
- PRs with label
🆙 Dependency Upgrades
- Bump
mockito-core
to version4.9.0
by @dependabot in #2580 - Bump
jackson-databind
to version2.14.1
by @dependabot in #2584 - Bump
com.diffplug.spotless
to version6.12.0
by @dependabot in #2587 - Bump
Gradle
to version7.6
by @violetagg in #2592 - Bump
biz.aQute.bnd.builder
to version6.4.0
by @dependabot in #2596 - Bump
org.gradle.test-retry
to version1.5.0
by @dependabot in #2597 - Bump
build-info-extractor-gradle
to version4.29.4
by @dependabot in #2601 - Bump
tomcat-embed-core
to version9.0.70
by @dependabot in #2602
New Contributors
Full Changelog: v1.1.0...v1.1.1
v1.0.26
Reactor Netty
1.0.26
is part of 2020.0.26
Release Train.
This is a recommended update for all Reactor Netty 1.0.x
users.
What's Changed
✨ New features and improvements
- Depend on
Reactor Core
v3.4.26
by @pderop in d1b4569, see release notes. - Depend on
Netty
v4.1.86.Final
by @violetagg in #2611 - Allow configurable connection provider eviction predicate by @samueldlightfoot in #2557
- Support context propagation for
ChannelHandler
by @violetagg in #2594 - Add new API
AccessLogArgProvider#connectionInformation()
for retrieving information related to host/remote address/scheme by @pderop in #2606 - Deregister connection pool metrics from
Micrometer
(or alternate registry) when disposing the connection pool by @manolama in #2608
🐞 Bug fixes
- Ensure
Reactor Context
injected withHttpClient#mapConnect
is available on send request/receive response by @violetagg in #2595
📖 Documentation, Tests and Build
- Documentation:
- Update
Http2Pool
javadoc by @violetagg in #2589 - Update
HttpClient#metrics(boolean, Function)
andHttpServer#metrics(boolean, Function)
javadoc by @violetagg in #2593 - Update documentation for
ConnectionProvider.Builder#disposeInactivePoolsInBackground
by @violetagg in #2605 - Update
ConnectionProvider.MeterRegistrar
javadoc by @violetagg in #2610
- Update
- Tests:
- Ensure the connection is closed at the end of the test by @violetagg in #2598
- Add test for
ConnectionProvider.Builder#disposeInactivePoolsInBackground
by @violetagg in #2607
- Build:
- PRs with label
type/test
go toDocumentation, Tests and Build
section of the release notes by @violetagg in #2609
- PRs with label
🆙 Dependency Upgrades
- Bump
jackson-databind
to version2.14.1
by @dependabot in #2584 - Bump
com.diffplug.spotless
to version6.12.0
by @dependabot in #2587 - Bump
Gradle
to version7.6
by @violetagg in #2592 - Bump
biz.aQute.bnd.builder
to version6.4.0
by @dependabot in #2596 - Bump
org.gradle.test-retry
to version1.5.0
by @dependabot in #2597 - Bump
build-info-extractor-gradle
to version4.29.4
by @dependabot in #2601 - Bump
tomcat-embed-core
to version9.0.70
by @dependabot in #2602
New Contributors
Full Changelog: v1.0.25...v1.0.26
v1.0.25
Reactor Netty
1.0.25
is part of 2020.0.25
Release Train.
This is a recommended update for all Reactor Netty 1.0.x
users.
What's Changed
✨ New features and improvements
- Depend on
Reactor Core
v3.4.25
by @violetagg in 25db79a, see release notes. - Depend on
Netty
v4.1.85.Final
by @violetagg in #2572 - Depend on
Netty QUIC Codec
v0.0.34.Final
by @violetagg in #2574 - Depend on
netty-incubator-transport-native-io_uring
v0.0.16.Final
by @violetagg in #2575
🐞 Bug fixes
- Ensure
FluxReceive
terminates subscriber on dispose by @OlegDokuka in #2441 and by @pderop in #2550 - Fix memory leak in
HttpClient#sendForm
for file uploads with streams by @violetagg in #2556 - Ensure
Http2Pool
can be stopped gracefully by @violetagg in #2577 - Ensure decoding failure is propagated by @violetagg in #2578
🆙 Dependency Upgrades
- Bump
de.undercouch.download
to version5.3.0
by @dependabot in #2546 - Bump
jackson-databind
to version2.14.0
by @dependabot in #2567 - Bump
build-info-extractor-gradle
to version4.29.3
by @dependabot in #2570 - Bump
tomcat-embed-core
to version9.0.69
by @dependabot in #2579 - Bump
mockito-core
to version4.9.0
by @dependabot in #2580
Full Changelog: v1.0.24...v1.0.25
v2.0.0-M3
Reactor Netty
2.0.0-M3
is the third milestone of the next generation Reactor Netty
. This milestone reintegrates the support for multipart.
All new features that we would like to include in Reactor Netty 2.0
can be tracked via 2.0.x Backlog and 2.0.0-M4
Reactor Netty
2.0.0-M3
inherits all changes from the 1.0.x
and main
branches at the point this release was cut.
What's Changed
⚠️ Update considerations and deprecations
- Remove transitive dependency
netty5-codec-http
fromreactor-netty5-core
by @violetagg in #2547
✨ New features and improvements
- Reintegrate multipart by @pderop in #2327 and by @violetagg in #2566
- Once the response is sent ensure no other attempt to send a new response by @violetagg in #2551
- Use
FutureMono
instead ofMono#fromCompletionStage
by @violetagg in #2565
🐞 Bug fixes
- Avoid
NullPointerException
inAbstractHttpClientMetricsHandler
write listener by @pderop in #2539 and #2548
Full Changelog: v2.0.0-M2...v2.0.0-M3
v1.1.0
Reactor Netty
1.1.0
is part of 2022.0.0
Release Train.
This version of Reactor Netty
adds integration with Micrometer Tracing
, which provides better E2E tracing experience.
See HttpClient
Reference Documentation and HttpServer
Reference Documentation for samples, configuration etc.
Reactor Netty
1.1.0
inherits all changes from the 1.0.x
maintenance branch at the point this release was cut.
What's Changed
⚠️ Update considerations and deprecations
- Deprecate
reactor-netty-http-brave
module by @violetagg in #2219 and #2563- An integration with
Micrometer Tracing
is provided as a replacement forReactor Netty <-> Brave
integration.
- An integration with
- Deprecate
NettyPipeline#UnvoidHandler
by @violetagg in #2248Netty 5
does not supportVoidChannelPromise
.
- Deprecate
HttpDecoderSpec#maxChunkSize
by @violetagg in #2249Netty 5
does not support this configuration.
- Deprecate
ReactorNetty#toPrettyHexDump
by @violetagg in #2531 - Deprecate
Cookie
encoder/decoder settings by @violetagg in #2536
✨ New features and improvements
- Depend on
Reactor Core
v3.5.0
by @violetag in 476af8b, see release notes. - Depend on
Netty
v4.1.84.Final
by @violetag in #2541 - Integration with
Micrometer
v1.10.0
andMicrometer Tracing
v1.0.0
- Depend on
Micrometer
v1.10.0
by @violetagg in #2568 - Depend on
Micrometer Tracing
v1.0.0
by @violetagg in #2568 - Depend on
Micrometer Doc Generation
v1.0.0
by @violetagg in #2568 - Use
MeterRegistryAssert
for checkingTimers
existence by @violetagg in #2040 - Integrated with
Micrometer Docs Generator
by @violetagg in #2041 and #2535 - Update
reactor-netty-core
timers to use the newObservation API
by @violetagg in #2043 - Update
reactor-netty-http
timers to use the newObservation API
by @violetagg in #2045 - Do not override the contextual name for
HttpClientContext
/HttpServerContext
by @violetagg in #2053 - Reduce memory overhead when creating
Micrometer
timers by @pderop in #2057 - Move to the new
micrometer-observation
module by @violetagg in #2118 - Adapt to the new module with commons exposed by
Micrometer
by @violetagg in #2128 - Remove the usage of the deprecated
Metrics
fromreactor-core
by @violetagg in #2170 and #2302 - Use the new API
Observation#parentObservation
by @violetagg in #2388 - Uses the new receiver and sender contexts by @marcingrzejszczak in #2389
- Adapt to the changed API for Micrometer's
KeyName
by @violetagg in #2401 - Propagate the
Observation
only when metrics are enabled by @violetagg in #2435 - Ensure Reactor Netty follows the requirements for span name and tags by @violetagg in #2555
- Depend on
- Native-image support
- Add reflection hints for better native-image support by @violetagg in #2432
- Add conditions to the reflect-config.json by @violetagg in #2469
📖 Documentation, Tests and Build
- Ensure the
Pool
implementation for the test class implements the new abstract methodconfig()
by @violetagg in #2098 - Integration test with
Observation API
by @violetagg in #2045, #2118, #2133, #2137, #2555, by @marcingrzejszczak in #2389 and by @ttddyy in #2470 - Add documentation and examples for the integration with
Micrometer Tracing
by @violetagg in #2558
New Contributors
Full Changelog: v1.0.16...v1.1.0
v2.0.0-M2
Reactor Netty
2.0.0-M2
is the second milestone of the next generation Reactor Netty
.
This milestone adds support for Unix Domain Sockets
for NIO
transport (till now only the native transports were supported)
All new features that we would like to include in Reactor Netty 2.0
can be tracked via 2.0.x Backlog and 2.0.0-M3
Reactor Netty
2.0.0-M2
inherits all changes from the 1.0.x
and main
branches at the point this release was cut.
What's Changed
⚠️ Update considerations and deprecations
-
Depends on
Netty
v5.0.0.Alpha5
by @violetagg in #2515- Adapt to the removed
ChannelConfig
by @violetagg in #2405 - Adapt to the removed
DomainSocket*
interfaces by @violetagg in #2405 Netty
ChannelOption.RECVBUF_ALLOCATOR
is renamed toREAD_HANDLE_FACTORY
by @violetagg in #2405 and @pderop in #2427io.netty5.channel.socket.InternetProtocolFamily
was replaced withjava.net.ProtocolFamily
by @violetagg in #2405- Adapt to the change that
DatagramChannel
is not restricted toInetSocketAddress
by @violetagg in #2405 - ❗ Support
Unix Domain Sockets
forNIO
transport by @violetagg in #2405 and #2416UdpClient#runOn(reactor.netty5.resources.LoopResources, io.netty5.channel.socket.InternetProtocolFamily)
is replaced with
UdpClient#runOn(reactor.netty5.resources.LoopResources, boolean, java.net.ProtocolFamily)
UdpServer#runOn(reactor.netty5.resources.LoopResources, io.netty5.channel.socket.InternetProtocolFamily)
is replaced with
UdpServer#runOn(reactor.netty5.resources.LoopResources, boolean, java.net.ProtocolFamily)
- Adapt to the changes in
EventLoop
API by @violetagg in #2405 - Adapt to the changes in
AbstractChannel
API by @violetagg in #2405, #2424, #2434, #2449 and by @pderop in #2438 - Adapt to the changes in
CharsetUtil
by @pderop in #2456 - ❗ Adapt to the new
HttpHeaders
API by @pderop in #2484 and by @violetagg in #2503 - Adapt to
Netty
change to drop the data when it is unexpected by @violetagg in #2505
- Adapt to the removed
-
Depends on
Netty Proxy Handler
5.0.0.Alpha2
by @violetagg in #2519 -
Depends on
Netty HAProxy Codec
5.0.0.Alpha2
by @violetagg in #2519 -
Introduce
HttpClientProxyProvider
withHTTP
related configurations. This is in preparation for removingnetty5-codec-http
dependency fromreactor-netty-core
. This dependency is transitively available vianetty-handler-proxy
dependency by @violetagg in #2413 -
❗ Rename
AdvancedByteBufFormat
toAdvancedBufferFormat
by @violetagg in #2417 -
Do not add
io.netty:netty5-resolver-dns-native-macos:osx-x86_64
as required dependency by @violetagg in #2448 -
Leak detection properties are added for the test execution by @violetagg and @pderop in #2461
-
Replace
Buffer/ByteBufHolder#touch
withResource#touch
by @violetagg in #2464 -
Remove
ByteBufHolder
usage by @violetagg in #2514 and #2516 -
BufferFlux
andBufferMono
do not depend onnetty-codec-http
anymore by @violetagg in #2517 -
Enable
CodeQL
fornetty5
branch by @violetagg in #2523 -
Use
BufferAllocator#compose(...)
for creatingCompositeBuffer
by @violetagg and @OlegDokuka in #2524 -
Polish
HttpClient
/HttpServer
cookies API by @violetagg and @chemicL in #2525 -
Remove deprecated
Cookie
encoder/decoder settings by @pderop in #2484 -
Remove deprecated
ReactorNetty#toPrettyHexDump
by @violetagg in #2532
Full Changelog: v2.0.0-M1...v2.0.0-M2
v1.1.0-RC1
Reactor Netty
1.1.0-RC1
is part of 2022.0.0-RC1
Release Train.
Reactor Netty
1.1.0-RC1
inherits all changes from the 1.0.x
maintenance branch at the point this release was cut.
What's Changed
⚠️ Update considerations and deprecations
- Deprecate
ReactorNetty#toPrettyHexDump
by @violetagg in #2531 - Deprecate
Cookie
encoder/decoder settings by @violetagg in #2536
✨ New features and improvements
- Depend on
Micrometer
version1.10.0-RC1
by @violetagg in #2538 - Depend on
Micrometer Tracing
version1.0.0-RC1
by @violetagg in #2538 - Depend on
Micrometer Docs Generator
version1.0.0-RC1
by @violetagg in #2535 and #2538 - Depend on
Micrometer Context Propagation
version1.0.0-RC1
by @violetagg in #2538
Full Changelog: v1.1.0-M6...v1.1.0-RC1
v1.0.24
Reactor Netty
1.0.24
is part of 2020.0.24
Release Train.
This is a recommended update for all Reactor Netty 1.0.x
users.
What's Changed
✨ New features and improvements
- Depend on
Reactor Core
v3.4.24
by @chemicL in b820698, see release notes. - Depend on
Netty
v4.1.82.Final
by @violetagg in #2482 - Depend on
Netty QUIC Codec
v0.0.33.Final
by @violetagg in #2522 - Set the trailing headers directly when constructing
DefaultLastHttpContent
by @violetagg in #2495 - Defer the creation of the request/response object by @violetagg in #2496
- Support
HTTP
errors414
and431
by @yuzawa-san in #2534
🐞 Bug fixes
- Ensure
HttpClientConfig#connectionProvider
returns the original provider used to createHttpClient
by @violetagg in #2483 - Get
SslHandler
by name forALPN
inHttpClientChannelInitializer
by @j-bahr in #2488 - Close connection when a
TLS
close_notify
is received and acknowledged by @pderop in #2518 - Check for log level by @violetagg in #2528
- Ensure logs are prefixed with channel information when possible by @violetagg in #2529
📖 Documentation, Tests and Build
- Documentation:
- Add missing
package-info.java
by @violetagg in #2530
- Add missing
- Tests:
- Ensure
HTTP/2
tests comply withRFC
requirements forHTTP/2
headers by @violetagg in #2501
- Ensure
- Build:
- Improve
JapiCmp
: avoid misses, improve reporting and exclusions by @simonbasle in #2497
- Improve
🆙 Dependency Upgrades
- Bump
com.diffplug.spotless
to version6.11.0
by @dependabot in #2487 - Bump
junit-platform-launcher
to version1.9.1
by @dependabot in #2493 - Bump
junitVersion
to version5.9.1
by @dependabot in #2494 - Bump
build-info-extractor-gradle
to version4.29.1
by @dependabot in #2512 - Bump
de.undercouch.download
to version5.2.1
by @dependabot in #2513 - Bump
braveVersion
to version5.14.1
by @dependabot in #2521 - Bump
tomcat-embed-core
to version9.0.68
by @dependabot in #2537
Full Changelog: v1.0.23...v1.0.24