Released on 2017-04-19.
These are the release notes for a Ratpack 1.5.0 release candidate. Please see the pending release notes for the final release for the complete list of closed issues.
A little over 6 months in the making, Ratpack 1.5.0 is now available. This release adds many new features and capabilities, squashes copious bugs and refines and optimizes many internals. Ratpack 1.5.0 is bigger, badder and faster.
The following core dependencies have been upgraded:
- Jackson 2.7.5 → 2.8.7
- Netty 4.1.4.Final → 4.1.9.Final
- Guava 19.0 → 21.0
- Caffeine 2.3.1 → 2.4.0
- Slf4j 1.7.21 → 1.7.28
ratpack-jdbc-tx module adds support for
Promise based JDBC transactions. It centers around the new
ratpack-consul modules provides the
ratpack.consul.RatpackConsulConfig factory for creating configuration sources backed by Consul. This is a convenient way to centralize configuration for your app and separate it from deployment.
Promise.flatMapIf methods allowing supplying an “else” to a promise transform.
Promise.retry methods allowing retrying a failed promise with various strategies.
Promise.defer methods make it more convenient to delay yielding a promise.
Promise.cacheResultFor method (and friends) make it easier to have more sophisticated caching policies for async values.
Promise.close method makes it easier to perform async cleanup/disposal.
Various new utilities have been added to the
Streams class such as
flatten(). These utilities enable more patterns for working with async data streams.
ByteBufStreams class provides utilities for dealing with streams of Netty
Execution.sleep() methods provide a non blocking analog to
You can now specify an idle timeout for server connections. This affects active connections and inactive connections (i.e. keepalive). It can also be overridden on a per request basis, which is particularly useful when streaming a lot of data, or streaming eternally.
Ratpack's HTTP client now supports SSL connections leveraging SNI. No extra config is required.
ReadWriteAccess utility is an analog of the JDK's
FileIo utility provides non blocking filesystem read/write access.
It is now possible to use Netty's SSL support via ServerConfigBuilder.ssl. Netty's SSL implementation is far more efficient in environments where OpenSSL is available. All users currently using SSL with Ratpack should migrate to using this new method.
If the client connecting to the server identified itself, you can now obtain its certificate via
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.5.