Version 1.6.0-rc-1

Released on 2018-11-17.

These are the release notes for a Ratpack 1.6.0 release candidate. Please see the pending release notes for the final release for the complete list of closed issues.

A little over a year from our last minor release, and 6 months since our last patch, Ratpack 1.6.0 is now available. This release adds integration with additional reactive programming libraries and many improvements that allow Ratpack to integrate more seamlessly with external libraries.

The following core dependencies have been upgraded:

The new ratpack-reactor module adds support for integrating Ratpack with Project Reactor types.

The new ratpack-rx2 module adds support for integrating Ratpack with version 2 of RxJava. This is a new module to support the new types introduced in RxJava 2.0.

The new ratpack-thymeleaf3 module adds support for integrating Ratpack with version 3 of Thymeleaf templating.

The new ratpack-gson module adds support for parsing request bodies and rendering responses using Google's Gson library.

The new Promise.flatOp method allows for mapping a Promise directly into an `Operation.

The new Promise.mapError and Promise.flatMapError which allow for providing a conditional Predicate for the mapping.

The ability to configure request and response interceptors for Ratpack's HttpClient through the HttpClientSpec.requestIntercept, HttpClientSpec.responseIntercept(Action), HttpClientSpec.responseIntercept(Operation), and HttpClientSpec.errorIntercept methods.

Create a new HttpClient instance by by inheriting from another instance using the HttpClient.copyWith method.

Improvements in Ratpack's integration with Retrofit by allowing the underlying HttpClient to be specified with the RatpackRetrofit.Builder.httpClient method. This allows for utilizing Retrofit outside of a Ratpack HTTP request (e.g. from a background service)

Forked executions can now obtain references to their parent executions through the Execution.getParent() and Execution.maybeParent() methods.

Applications can now register their own JVM shutdown hook to perform custom behaviors instead of Ratpack's default hook. Applications using a custom hook can disabled the default hook by setting ServerConfigBuilder.registerShutdownHook(false)

The ratpack-dropwizard-metrics module now supports exporting metrics to Prometheus (DropwizardMetricsConfig.prometheusCollection(true)) and collecting metrics on ByteBuf (DropwizardMetricsConfig.byteBufAllocator(Action)) and HttpClient (DropwizardMetricsConfig.httpClient(Action))

There are also many other new convenience methods, bug fixes and generally cool stuff added in this release. Thanks to all who contributed.

We hope you enjoy Ratpack 1.6.


Team Ratpack

Pull Requests (0)

Resolved Issues (0)