Skip to content

v1.2.0-M2

Pre-release
Pre-release
Compare
Choose a tag to compare
@pderop pderop released this 14 May 16:37
· 64 commits to main since this release

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:

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

✨ New features and improvements

🐞 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 sent HTTP/2 response by @violetagg in #3236

📖 Documentation

Full Changelog: v1.2.0-M1...v1.2.0-M2