Releases: reactor/reactor-netty
v1.2.0-M2
Reactor Netty
1.2.0-M2
is part of 2024.0.0-M2
Release Train.
This milestone adds HTTP/3
server support.
Enablement of the HTTP/3
server support:
- a dependency to netty-incubator-codec-http3 is specified
- the HTTP protocol is configured as
HTTP3
The example below shows one simple configuration for the HttpServer
:
public class Application {
public static void main(String[] args) throws Exception {
File certChainFile = new File("certificate chain file");
File keyFile = new File("private key file");
Http3SslContextSpec serverCtx = Http3SslContextSpec.forServer(keyFile, null, certChainFile);
DisposableServer server =
HttpServer.create()
.port(8080)
.protocol(HttpProtocol.HTTP3)
.secure(spec -> spec.sslContext(serverCtx))
.idleTimeout(Duration.ofSeconds(5))
.http3Settings(spec -> spec.maxData(10000000)
.maxStreamDataBidirectionalLocal(1000000)
.maxStreamDataBidirectionalRemote(1000000)
.maxStreamsBidirectional(100))
.handle((request, response) -> response.header("server", "reactor-netty")
.sendString(Mono.just("hello")))
.bindNow();
server.onDispose()
.block();
}
}
Reactor Netty
1.2.0-M2
inherits all changes from the 1.0.x
and 1.1.x
branches at the point this release was cut.
What's Changed
⚠️ Update considerations and deprecations
- Remove deprecated
SslProvider$DefaultConfigurationSpec
andSslProvider$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
✨ New features and improvements
- Depend on
Reactor Core
v3.7.0-M2
by @pderop in 1672f40, see release notes - Depend on
Netty
v4.1.109.Final
by @violetagg in #3159 - Depend on
Micrometer Doc Generator
v1.0.2
by @violetagg in #3164 - Depend on
Context Propagation
v1.1.0
by @violetagg in #3164 - Depend on
Brave
v6.0.3
by @dependabot in #3172 - Depend on
Micrometer
v1.13.0
by @violetagg in #3241 - Depend on
Micrometer Tracing
v1.3.0
by @violetagg in #3241 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
forHTTP/3
frames by @violetagg in #3186 - Add
accesslog
forHTTP/3
server support by @violetagg in #3191 - Add
compression
forHTTP/3
server support by @violetagg in #3192 - Add
metrics
forHTTP/3
server support by @violetagg in #3193 - Add dependency to
Netty HTTP3 Codec
for aggregated javadoc by @violetagg in #3197
- Make
- Cache the request info when collecting metrics by @violetagg in #3211 and #3231
- Make pending responses log messages consistent by @violetagg in #3239
🐞 Bug fixes
- 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 sentHTTP/2
response by @violetagg in #3236
📖 Documentation
- Fix
Authors
attribute by @pderop in #3214 - Reuse
reactor-netty-github-repo-attribute
when possible by @pderop in #3215 - Remove unused
reactor.css
by @pderop in #3216
Full Changelog: v1.2.0-M1...v1.2.0-M2
v1.1.19
Reactor Netty
1.1.19
is part of 2022.0.19
and 2023.0.6
Release Train.
What's Changed
⚠️ Update considerations and deprecations
- Always add
proxy.address
tag for the client metrics by @violetagg in #3230
✨ New features and improvements
- Depend on
Reactor Core
v3.5.17
by @pderop in 20dbf3f, see release notes - Depend on
Netty
v4.1.109.Final
by @violetagg in #3159 - Cache the request info when collecting metrics by @violetagg in #3211 and #3231
- Make pending responses log messages consistent by @violetagg in #3239
🐞 Bug fixes
- 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 sentHTTP/2
response by @violetagg in #3236
Full Changelog: v1.1.18...v1.1.19
v1.0.45
Reactor Netty
1.0.45
is part of 2020.0.44
Release Train.
What's Changed
✨ New features and improvements
- Depend on
Reactor Core
v3.4.38
by @pderop in 6671bed, see release notes - Depend on
Netty
v4.1.109.Final
by @violetagg in #3159 - Make pending responses log messages consistent by @violetagg in #3239
🐞 Bug fixes
- 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 sentHTTP/2
response by @violetagg in #3236
Full Changelog: v1.0.44...v1.0.45
v1.2.0-M1
Reactor Netty
1.2.0-M1
is part of 2024.0.0-M1
Release Train.
This milestone migrates the reference documentation to Antora
.
Reactor Netty
1.2.0-M1
inherits all changes from the 1.0.x
and 1.1.x
branches at the point this release was cut.
What's Changed
✨ New features and improvements
- Depend on
Reactor Core
v3.7.0-M1
by @chemicL in 9a20945, see release notes - Depend on
Netty
v4.1.108.Final
by @violetagg in #3111 - Depend on
Netty QUIC Codec
v0.0.62.Final
by @violetagg in #3121 - Always check
idleTimeout
configuration before pipeline checks by @violetagg in #3117 - Always check
readTimeout
configuration before pipeline checks by @violetagg in #3118
🐞 Bug fixes
- Do not add
IdleTimeoutHandler
while processing pipelined requests by @violetagg in #3124
📖 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 and by @violetagg in #3128, #3129, #3130, #3131, #3133, #3135, #3141
Full Changelog: v1.1.17...v1.2.0-M1
v1.1.18
Reactor Netty
1.1.18
is part of 2022.0.18
Release Train and 2023.0.5
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.16
by @chemicL in 1ecce9b, see release notes - Depend on
Netty
v4.1.108.Final
by @violetagg in #3111 - Depend on
Netty QUIC Codec
v0.0.62.Final
by @violetagg in #3121 - Always check
idleTimeout
configuration before pipeline checks by @violetagg in #3117 - Always check
readTimeout
configuration before pipeline checks by @violetagg in #3118
🐞 Bug fixes
- Do not add
IdleTimeoutHandler
while processing pipelined requests by @violetagg in #3124
📖 Documentation
- Clarify maximum websocket frame length configuration by @violetagg in #3116
Full Changelog: v1.1.17...v1.1.18
v1.0.44
Reactor Netty
1.0.44
is part of 2020.0.43
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.37
by @chemicL in 38188f2, see release notes - Depend on
Netty
v4.1.108.Final
by @violetagg in #3111 - Depend on
Netty QUIC Codec
v0.0.62.Final
by @violetagg in #3121 - Always check
idleTimeout
configuration before pipeline checks by @violetagg in #3117
🐞 Bug fixes
- Do not add
IdleTimeoutHandler
while processing pipelined requests by @violetagg in #3124
Full Changelog: v1.0.43...v1.0.44
v1.1.17
Reactor Netty
1.1.17
is part of 2022.0.17
Release Train and 2023.0.4
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.15
by @violetagg in 84dff5c, see release notes - Depend on
Netty
v4.1.107.Final
by @violetagg in #3062 - Depend on
netty-incubator-transport-native-io_uring
v0.0.25.Final
by @dependabot in #3066 - Depend on
Netty QUIC Codec
v0.0.59.Final
by @violetagg in #3097 - Enable
DNS
retryOnTimeout
withTCP
by @violetagg in #3063 - Add proxy address information to the metrics by @violetagg in #3081
- Provide better exception message for invalid
PORT
env variable by @violetagg in #3083
🐞 Bug fixes
- Ensure
remoteAddress
metrics tag is always the real remote address regardless whether there is proxy by @violetagg in #3074 - When metrics are enabled and
responseTimeout
is configured, ensure the correct order forChannelHandlers
by @violetagg in #3090
📖 Documentation
- Update connection close FAQ by @violetagg in #3082
- Fix javadoc by @violetagg in #3084
- Add info for
reactor.netty.connection.provider.pending.connections.time
metric by @violetagg in #3093 - Add info for
HTTP/2
connection pool metrics by @violetagg in #3094 - Add
How To
disposeEvent Loop Group
/Connection Pool
by @violetagg in #3095
Full Changelog: v1.1.16...v1.1.17
v1.0.43
Reactor Netty
1.0.43
is part of 2020.0.42
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.36
by @violetagg in 8bd89f0, see release notes - Depend on
Netty
v4.1.107.Final
by @violetagg in #3062 - Depend on
netty-incubator-transport-native-io_uring
v0.0.25.Final
by @dependabot in #3066 - Depend on
Netty QUIC Codec
v0.0.59.Final
by @violetagg in #3097 - Provide better exception message for invalid
PORT
env variable by @violetagg in #3083
🐞 Bug fixes
- Ensure
remoteAddress
metrics tag is always the real remote address regardless whether there is proxy by @violetagg in #3074 - When metrics are enabled and
responseTimeout
is configured, ensure the correct order forChannelHandlers
by @violetagg in #3090
📖 Documentation
- Fix javadoc by @violetagg in #3084
Full Changelog: v1.0.42...v1.0.43
v1.1.16
Reactor Netty
1.1.16
is part of 2022.0.16
Release Train and 2023.0.3
Release Train.
This is a recommended update for all Reactor Netty 1.1.x
users.
What's Changed
⚠️ Update considerations and deprecations
- Ensure cookies can be added by
BiConsumer
provided withHttpClient#followRedirect
by @violetagg in #3039
✨ New features and improvements
- Depend on
Netty
v4.1.106.Final
by @violetagg in #3034 - Depend on
Netty QUIC Codec
v0.0.57.Final
by @violetagg in #3055 - Obtain
Http2FrameCodec
context only when needed by @violetagg in #3032
🐞 Bug fixes
- Ensure
ChannelHandlerContext.isRemoved
is called only when in event loop by @violetagg in #3031 - Ensure
websocket
compression
is enabled whenserver
is configured withHttpProtocol.H2C
andHttpProtocol.HTTP1.1
by @violetagg in #3037
📖 Documentation, Tests and Build
- Update
CodeQL
with the latest configurations by @violetagg in #3046 - Pin
GitHub Actions
versions by @violetagg in #3048
🆙 Build/Test Dependency Upgrades
- Bump
tomcat-embed-core
to version9.0.85
by @dependabot in #3025 - Bump
hoverfly-java-junit5
to version0.16.1
by @dependabot in #3028 - Bump
metadata repository
to version0.3.6
by @violetagg in #3038 - Bump
build-info-extractor-gradle
to version4.33.12
by @dependabot in #3042 - Bump
brotli4j
to version1.16.0
by @dependabot in #3045 - Bump
assertj-core
to version3.25.3
by @dependabot in #3051 - Bump
junitVersion
to version5.10.2
by @dependabot in #3052 - Bump
junit-platform-launcher
to version1.10.2
by @dependabot in #3053 - Bump
Gradle
to version7.6.4
by @violetagg in #3054 - Bump
gradle/wrapper-validation-action
to version2.1.1
by @dependabot in #3058
Full Changelog: v1.1.15...v1.1.16
v1.0.42
Reactor Netty
1.0.42
is part of 2020.0.41
Release Train.
This is a recommended update for all Reactor Netty 1.0.x
users.
What's Changed
⚠️ Update considerations and deprecations
- Ensure cookies can be added by
BiConsumer
provided withHttpClient#followRedirect
by @violetagg in #3039
✨ New features and improvements
- Depend on
Netty
v4.1.106.Final
by @violetagg in #3034 - Depend on
Netty QUIC Codec
v0.0.57.Final
by @violetagg in #3055 - Obtain
Http2FrameCodec
context only when needed by @violetagg in #3032
🐞 Bug fixes
- Ensure
ChannelHandlerContext.isRemoved
is called only when in event loop by @violetagg in #3031 - Ensure
websocket
compression
is enabled whenserver
is configured withHttpProtocol.H2C
andHttpProtocol.HTTP1.1
by @violetagg in #3037
📖 Documentation, Tests and Build
- Update
CodeQL
with the latest configurations by @violetagg in #3046 - Pin
GitHub Actions
versions by @violetagg in #3048
🆙 Build/Test Dependency Upgrades
- Bump
tomcat-embed-core
to version9.0.85
by @dependabot in #3025 - Bump
hoverfly-java-junit5
to version0.16.1
by @dependabot in #3028 - Bump
build-info-extractor-gradle
to version4.33.12
by @dependabot in #3042 - Bump
brotli4j
to version1.16.0
by @dependabot in #3045 - Bump
assertj-core
to version3.25.3
by @dependabot in #3051 - Bump
junitVersion
to version5.10.2
by @dependabot in #3052 - Bump
junit-platform-launcher
to version1.10.2
by @dependabot in #3053 - Bump
Gradle
to version7.6.4
by @violetagg in #3054 - Bump
gradle/wrapper-validation-action
to version2.1.1
by @dependabot in #3058
Full Changelog: v1.0.41...v1.0.42