Releases: reactor/reactor-netty
v.1.1.0-M6
Reactor Netty
1.1.0-M6
is part of 2022.0.0-M6
Release Train.
Reactor Netty
1.1.0-M6
inherits all changes from the 1.0.x
maintenance branch at the point this release was cut.
What's Changed
✨ New features and improvements
- Depend on
Reactor Core
v3.5.0-M6
by @OlegDokuka in 3fabb73, see release notes. - Depend on
Micrometer
version1.10.0-M5
by @violetagg in #2478 - Depend on
Micrometer Tracing
version1.0.0-M8
by @violetagg in #2478 - Depend on
Micrometer Docs Generator
version1.0.0-M7
by @violetagg in #2478 - Depend on
Micrometer Context Propagation
version1.0.0-M5
by @violetagg in #2478 - Add reflection hints for native-image support by @violetagg in #2432 and #2469
- Propagate the
Observation
only when metrics are enabled by @violetagg in #2435 - Adapt
SampleTestRunner
change in micrometer tracing by @ttddyy in #2470
New Contributors
Full Changelog: v1.1.0-M5...v1.1.0-M6
v1.0.23
Reactor Netty
1.0.23
is part of 2020.0.23
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.23
by @OlegDokuka in 6ee4171, see release notes. - Depend on
Netty
v4.1.81.Final
by @violetagg in #2472 - Depend on
Netty QUIC Codec
v0.0.30.Final
by @violetagg in #2476 - Depend on
netty-incubator-transport-native-io_uring
v0.0.15.Final
by @violetagg in #2477 ServerTransport.Acceptor#exceptionCaught
should not propagate the event by @violetagg in #2433
📖 Documentation, Tests and Build
- Tests:
🆙 Dependency Upgrades
- Bump
hoverfly-java-junit5
to version0.14.3
by @dependabot in #2429 - Bump
com.diffplug.spotless
to version6.10.0
by @dependabot in #2446 - Bump
org.gradle.test-retry
to version1.4.1
by @dependabot in #2458 - Bump
jackson-databind
to version2.13.4
by @dependabot in #2465 - Bump
mockito-core
to version4.8.0
by @dependabot in #2467 - Bump
me.champeau.gradle.japicmp
to version0.4.1
by @dependabot in #2471 - Bump
brave
to version5.14.0
by @dependabot in #2473 - Bump
com.google.osdetector
to version1.7.1
by @dependabot in #2474 - Bump
de.undercouch.download
to version5.1.3
by @dependabot in #2475
Full Changelog: v1.0.22...v1.0.23
v1.1.0-M5
Reactor Netty
1.1.0-M5
is part of 2022.0.0-M5
Release Train.
Reactor Netty
1.1.0-M5
inherits all changes from the 1.0.x
maintenance branch at the point this release was cut.
What's Changed
✨ New features and improvements
- Depend on
Reactor Core
v3.5.0-M5
by @pderop in 16e4315, see release notes. - Depend on
Micrometer
version1.10.0-M4
by @violetagg in #2422 - Depend on
Micrometer Tracing
version1.0.0-M7
by @violetagg in #2422 - Depend on
Micrometer Docs Generator
version1.0.0-M6
by @violetagg in #2422 - Depend on
Micrometer Context Propagation
version1.0.0-M4
by @violetagg in #2422 - Use the new API
Observation#parentObservation
by @violetagg in #2388 - Uses the new receiver and sender contexts by @marcingrzejszczak in #2389
- Remove the dependency to the context propagation library by @violetagg in #2394
- Adapt to the changed API for Micrometer's
KeyName
by @violetagg in #2401
Full Changelog: v1.1.0-M4...v1.1.0-M5
v1.0.22
Reactor Netty
1.0.22
is part of 2020.0.22
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.22
by @pderop in a4ef2e6, see release notes. - Use pattern for the field name when checking the classpath by @violetagg in #2411
🐞 Bug fixes
- Do not open a stream on a connection that received
GOAWAY
by @violetagg in #2408 - Ensure
HttpServer#idleTimeout
configuration is applied for bothHTTP/1.1
andHTTP/2
by @violetagg in #2414
📖 Documentation, Tests and Build
-
Documentation:
- Javadoc link in reference documentation points to a concrete version by @violetagg in #2380
- Extract Netty javadoc link by @violetagg in #2381
-
Tests:
- Revise
HttpMetricsHandlerTests
and fixtestServerConnectionsRecorder
by @pderop in #2391 - Additional unit tests for
SslProvider
. New assertions to confirm thatSslProvider
isOpenSSL
by @sullis in #2397 - Fix in test related to temporary directory hijacking or information disclosure by @JLLeitschuh in #2406
- Revise
-
Build
- Separate
publish
build on several jobs by @violetagg in #2379 - Upgrade to
Gradle
v7.5.1
by @violetagg in #2420
- Separate
🆙 Dependency Upgrades
- Bump
tomcat-embed-core
to version9.0.65
by @dependabot in #2393 - Bump
build-info-extractor-gradle
to version4.29.0
by @dependabot in #2395 - Bump
junitVersion
to version5.9.0
by @dependabot in #2402 - Bump
junit-platform-launcher
to version1.9.0
by @dependabot in #2403 - Bump
MacOs
image version to11
by @violetagg in #2404 - Bump
com.diffplug.spotless
to version6.9.0
by @dependabot in #2410 - Bump
netty-tcnative-boringssl-static
to versionv2.0.54.Final
by @violetagg in #2423
Full Changelog: v1.0.21...v1.0.22
v2.0.0-M1
Reactor Netty
2.0.0-M1
is the first milestone of the next generation Reactor Netty
and changes the baselines:
Java 8
toJava 17
Netty 4.1
toNetty 5.0
We are planning to release every new milestone of Reactor Netty 2.0
close to every Netty 5 Alpha
release. Thus said Reactor Netty
2.0.0-M2
is expected to be released based on Netty 5.0.0.Alpha4
release.
The 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-M2
Reactor Netty
2.0.0-M1
inherits all changes from the 1.0.21 and 1.1.0-M4.
What's Changed
⚠️ Update considerations and deprecations
-
❗ Rename the packages to
reactor.netty5
. Allsystem properties
names andmetrics
names follow this change by @violetagg in #2375 -
❗ Rename the artifact ids to
reactor-netty5*
. Gradlemodules
names follow this change by @violetagg in #2375 -
❗ Depends on
Netty
5.0.0.Alpha3
by @violetagg in #2369- All
Netty 5
packages areio.netty5.*
. More information forNetty 5
Alpha releases: 5.0.0.Alpha1, 5.0.0.Alpha2 and 5.0.0.Alpha3. - Migration to
Netty 5
is tracked with issue #1873 - Migration to the new
Netty 5 Buffer API
by @violetagg in #2299reactor.netty.ByteBufFlux
andreactor.netty.ByteBufMono
are renamed toreactor.netty5.BufferFlux
andreactor.netty5.BufferMono
reactor.netty5.NettyOutbound#alloc()
now returnsio.netty5.buffer.api.BufferAllocator
. IfByteBufAllocator
is needed the adapters provided by Netty 5.x ByteBuf Adaptors can be usedreactor.netty5.NettyOutbound#send(org.reactivestreams.Publisher)
andreactor.netty5.NettyOutbound#send(org.reactivestreams.Publisher, java.util.function.Predicate)
acceptPublisher<? extends Buffer>
. IfPublisher<? extends ByteBuf>
is needed the adapters provided by Netty 5.x ByteBuf Adaptors can be usedreactor.netty5.NettyInbound#receive
,HttpClient$ResponseReceiver#responseContent
andHttpClient$WebsocketReceiver#receive
now returnreactor.netty5.BufferFlux
. Ifreactor.netty.ByteBufFlux
is needed the adapters provided by Netty 5.x ByteBuf Adaptors can be used
- Depends on
Netty Proxy Handler
5.0.0.Alpha1
by @violetagg in #2390 - Depends on
Netty HAProxy Codec
5.0.0.Alpha1
by @violetagg in #2390 - All
reactor.netty.bytebuf.allocator
metrics are renamed toreactor.netty5.buffer.allocator
by @violetagg #2363reactor.netty.bytebuf.allocator.used.heap.memory
andreactor.netty.bytebuf.allocator.used.direct.memory
are nowreactor.netty5.buffer.allocator.used.memory
reactor.netty.bytebuf.allocator.active.heap.memory
andreactor.netty.bytebuf.allocator.active.direct.memory
are nowreactor.netty5.buffer.allocator.active.memory
reactor.netty.bytebuf.allocator.heap.arenas
andreactor.netty.bytebuf.allocator.direct.arenas
are nowreactor.netty5.buffer.allocator.arenas
- The type of the allocator (
io.netty5.buffer.api.StandardAllocationTypes
) is exposed with tagtype
- All
-
❗ Build with
Java 17
by @violetagg in #2194- Variable can be replaced with pattern variable by @violetagg in #2316
- Use pattern matching for the instanceof by @violetagg in #2339
-
All deprecated APIs are removed
- Remove deprecated
TcpClient#bootstrap
by @violetagg in #2199 - Remove deprecated
TcpClient#addressSupplier
by @violetagg in #2200 - Remove deprecated
HttpClient#tcpConfiguration
andHttpServer#tcpConfiguration
by @violetagg in #2202 - Remove deprecated
HttpClient#from
andHttpServer#from
by @violetagg in #2203 and #2209 - Remove deprecated
Connection#addHandler
by @violetagg in #2204 - Remove deprecated
SslProvider$DefaultConfigurationSpec
andSslProvider$DefaultConfigurationType
by @violetagg in #2210 - Remove deprecated
HttpServer#accessLog(Function)
andAccessLogArgProvider#zonedDateTime()
by @violetagg in #2211 - Remove deprecated
HttpClientInfos#currentContext()
by @violetagg in #2212 - Remove deprecated system property
reactor.netty.http.server.forwarded.strictValidation
by @violetagg in #2213 - Remove deprecated
Cookies#newServerRequestHolder
by @violetagg in #2214 - Remove deprecated
NettyPipeline#UnvoidHandler
by @violetagg in #2231 - Remove deprecated
HttpDecoderSpec#maxChunkSize
by @violetagg in #2240
- Remove deprecated
-
Remove deprecated integration with
Brave
by @violetagg in #2220 -
Remove
FutureMono
and useMono.fromCompletionStage
by @violetagg in #2250 -
Remove
LoopResources#onChannelClass
by @violetagg in #2272 -
LoopResources#onChannel(java.lang.Class, io.netty.channel.EventLoopGroup)
is replaced byLoopResources#onChannel(java.lang.Class, io.netty5.channel.EventLoop)
by @violetagg in #2272 -
Functionality that is still not migrated to
Netty 5
and thus excluded from this release- Temporary exclude
reactor-netty-incubator-quic
as there is no version forNetty 5
by @violetagg in #2216 - Temporary exclude
IOUring
transport as there is no version forNetty 5
by @violetagg in #2218 - Temporary exclude
Reactor Netty Multipart
by @violetagg in #2222
- Temporary exclude
📖 Documentation, Tests and Build
- Remove
errorproneJavac
specific for JDK 8 by @violetagg in #2364 - Update
Reference Documentation
andjavadoc
by @violetagg in #2378, #2385 and #2387 - Remove unnecessary
@SuppressWarning
by @violetagg in #2383 - Tests depend on
Netty Codec Extras
5.0.0.Alpha1
by @violetagg in #2390
Full Changelog: v1.1.0-M4...v2.0.0-M1
v1.1.0-M4
Reactor Netty
1.1.0-M4
is part of 2022.0.0-M4
Release Train.
Reactor Netty
1.1.0-M4
inherits all changes from the 1.0.x
maintenance branch at the point this release was cut.
What's Changed
✨ New features and improvements
-
Depend on
Reactor Core
v3.5.0-M4
by @chemicL in de6c7a7, see release notes. -
Depend on
Micrometer
version1.10.0-M3
by @violetagg in #2376 -
Depend on
Micrometer Tracing
version1.0.0-M6
by @violetagg in #2376 -
Depend on
Micrometer Docs Generator
version1.0.0-M5
by @violetagg in #2376 -
Depend on
Micrometer Context Propagation
version1.0.0-M3
by @violetagg in #2376 -
Adapt to the new context propagation API by @violetagg in #2317 and #2366
Full Changelog: v1.1.0-M3...v1.1.0-M4
v1.0.21
Reactor Netty
1.0.21
is part of 2020.0.21
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.20
by @violetagg in 1b96b44, see release notes. - Depend on
Netty
v4.1.79.Final
by @violetagg in 3e7d92f - Depend on
Netty QUIC Codec
v0.0.28.Final
by @violetagg in #2359 - Ensure errors caused by recording metrics do not affect the operational code by @ChristianLMI in #2237, by @pderop in #2335
- Add
ConnectionProvider#create
method with metrics parameter by @tuguri8 in #2314 - Mark method param as
Nullable
by @violetagg in #2326 - Override the new
ContextView#forEach
by @violetagg in #2346 - Capture
HTTP/2
server active stream metrics by @samueldlightfoot in #2357
📖 Documentation, Tests and Build
- Documentation
- Use
Reactive Streams
1.0.3
version for javadoc generation by @violetagg in #2354 - Update
Reactive Streams
version in the reference documentation by @violetagg in #2360 - Fix the names of the metrics for
ByteBufAllocator
by @violetagg in #2362
- Use
- Build
- Adopt Gradle Toolchain for the JDK by @berngp in #2343, by @violetagg in #2352
🆙 Dependency Upgrades
- Bump
brave
to version5.13.10
by @dependabot in #2340 - Bump
com.diffplug.spotless
to version6.8.0
by @dependabot in #2345 - Bump
build-info-extractor-gradle
to version4.28.4
by @dependabot in #2350
New Contributors
- @ChristianLMI made their first contribution in #2237
- @tuguri8 made their first contribution in #2314
- @berngp made their first contribution in #2343
- @samueldlightfoot made their first contribution in #2357
Full Changelog: v1.0.20...v1.0.21
v1.1.0-M3
Reactor Netty
1.1.0-M3
is part of 2022.0.0-M3
Release Train.
Reactor Netty
1.1.0-M3
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- An integration with
Micrometer Observation API
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.
✨ New features and improvements
- Depend on
Reactor Core
v3.5.0-M3
by @violetagg in e51f155, see release notes. - Remove the usage of the deprecated
Metrics
fromreactor-core
by @violetagg in #2170 and #2302
Full Changelog: v1.1.0-M2...v1.1.0-M3
v1.0.20
Reactor Netty
1.0.20
is part of 2020.0.20
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.19
by @OlegDokuka in dac8271, see release notes. - Depend on
netty-incubator-transport-native-io_uring
0.0.14.Final
by @dependabot in #2186 - Depend on
Netty QUIC Codec
v0.0.27.Final
by @violetagg in #2189 - Allow to configure connection pool aquire timers by @pderop in #2175
- Support
303
redirect by @AlexejTimonin in #2184 - Introduce
HTTP2AllocationStrategy
for specifyingminConnections
andmaxConcurrentStreams
by @violetagg in #2257- Usage:
ConnectionProvider.builder("testMinConnections") .allocationStrategy(Http2AllocationStrategy.builder().maxConcurrentStreams(100).minConnections(5).build()) .build();
🐞 Bug fixes
- Ensure
DefaultHttpDataFactory.requestFileDeleteMap
's items are cleaned on terminate by @violetagg in #2201 - HTTP/2 connection pool by @violetagg in #2257:
Http2Pool
handles the lifecycle of the cache with connections- Add
maxIdleTime
toHttp2Pool
- Add
evictInBackground
toHttp2Pool
- Add scheduled flush for
HttpClient
when protocol isHTTP/2
by @violetagg in #2257 Http2StreamChannelBootstrap
is made one per connection by @violetagg in #2257- Ensure a custom factory can be used with
HttpClient#sendForm
by @violetagg in #2265
📖 Documentation, Tests and Build
- Documentation:
- Update FAQ for
Connection closed BEFORE error
by @tylerhjones in #2263 - Update
Reactive Streams
javadoc to version1.0.4
by @violetagg in #2268
- Update FAQ for
- Tests:
- Add
bouncycastle
dependency by @violetagg in #2195 - Add
SocketException
to the list with possible exceptions by @violetagg in #2198
- Add
- Build:
- Configure
dependabot
to updateGitHub Actions
versions by @violetagg in #2205
- Configure
🆙 Dependency Upgrades
- Bump
org.gradle.test-retry
to version1.4.0
by @dependabot in #2188 - Bump
build-info-extractor-gradle
to version4.28.3
by @dependabot in #2190 - Bump
jackson-databind
to veersion2.13.3
by @dependabot in #2191 - Bump
actions/setup-java
to version3
by @dependabot in #2206 - Bump
actions/checkout
to version3
by @dependabot in #2207 - Bump
github/codeql-action
to version2
by @dependabot in #2208 - Bump
hoverfly-java-junit5
to version0.14.2
by @dependabot in #2236 - Bump
assertj-core
to version3.23.1
by @dependabot in #2258 - Bump
mockito-core
to version4.6.1
by @dependabot in #2266 - Bump
biz.aQute.bnd.builder
to version6.3.1
by @dependabot in #2269 - Bump
tomcat-embed-core
to version9.0.64
by @dependabot in #2274 - Bump
com.diffplug.spotless
to version6.7.2
by @dependabot in #2294 - Bump
netty-tcnative-boringssl-static
to versionv2.0.53.Final
by @violetagg in #2295
Full Changelog: v1.0.19...v1.0.20
v1.0.19
Reactor Netty
1.0.19
is part of 2020.0.19
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.18
by @simonbasle in 41db010, see release notes. - Depend on
Netty
v4.1.77.Final
by @violetagg in #2181 - Add API for providing
SNI AsyncMapping
by @violetagg in #2172
🐞 Bug fixes
- Ensure
PooledConnectionProvider
check only for event loop in the thread local by @violetagg in #2168
🆙 Dependency Upgrades
- Bump
org.gradle.test-retry
to version1.3.2
by @dependabot in #2154 - Bump
build-info-extractor-gradle
to version4.28.2
by @dependabot in #2160 - Bump
mockito-core
to version4.5.1
by @dependabot in #2161 - Bump
com.diffplug.spotless
to version6.5.2
by @dependabot in #2176 - Bump
de.undercouch.download
to version5.1.0
by @dependabot in #2177 - Bump
braveVersion
to version5.13.9
by @dependabot in #2179 - Bump
netty-tcnative-boringssl-static
to versionv2.0.52.Final
by @violetagg #2180
Full Changelog: v1.0.18...v1.0.19