Eclipse Vert.x 3.7.1
We have just released Vert.x 3.7.1, a bug fix release of Vert.x 3.7.x and a few small features.
Since the release of Vert.x 3.7.0, quite a few bugs have been reported. We would like to thank you all for reporting these issues.
In addition of bug fixes, this release prepares the ground for Vert.x 4 with a few enhancements and deprecations.
HTTP client Unix Domain Sockets
Since this release the HttpClient
supports Unix Domain Sockets when using
Netty’s native transports, which can be really useful if you need to connect to a local daemon such as Docker’s Daemon:
HTTP client WebSocket connect revisited
The HttpClient
WebSocket methods have been revisited, indeed these methods were lacking of usability in general or
with vertx-rx due to the optional error handling:
The new webSocket
method provides now the best developer experience for connecting a WebSocket:
With RxJava2, you can use now:
Vert.x Rx usability improvements
As you may know, the Vert.x Rxified API is generated from the bare Vert.x API.
In this release, vertx-codegen
has been improved to determine if an API object is an Iterable
, Iterator
, or Function
.
Then its Rxified equivalent will be an Iterable
, Iterator
, or Function
too.
Let’s take an example.
The Vert.x MultiMap
class represents a multi-map of String
keys to a list of String
values.
It’s useful to represent things like HTTP headers and parameters which allow multiple values for keys.
Since the bare io.vertx.core.MultiMap
implements Iterable<Map.Entry<String, String>>
, you can iterate through the content with a for-each
loop.
Starting with 3.7.1, the same is possible with the Rxified version:
Or, for advanced transformations:
GraphiQL IDE
Vert.x 3.7.0 added support for building GraphQL servers with Vert.x Web and GraphQL-Java.
In 3.7.1, the GraphQL handler can be configured to expose the GraphiQL IDE:
Vert.x 3.8.0 is the next release
The next version of Vert.x will be 3.8 and targets end of June / early July with the following themes:
- Introducing a Promise interface to be used instead of Future in a couple of places of the codebase such as
Verticle
start orexecuteBlocking
. The goal is to move the completion part in Vert.x 4 fromFuture
toPromise
which becomes the object to be completed andFuture
is a view that is consumed by clients - Json Pointer support
- The new SQL client will be released as tech preview (until v4)
- RedisPool as tech preview (until v4) bring back connection management, lazy reconnect and scaling to all client modes (Single, Sentinel and Cluster)
Vert.x 3.7.1 release notes
Vert.x 3.7.1 deprecations and breaking changes
https://github.com/vert-x3/wiki/wiki/3.7.1-Deprecations-and-breaking-changes
The event bus client using the SockJS bridge are available from NPM, Bower and as a WebJar:
- https://www.npmjs.com/package/vertx3-eventbus-client
- https://github.com/vert-x3/vertx-bus-bower
- http://www.webjars.org/
Docker images are also available on the Docker Hub. The Vert.x distribution is also available from SDKMan and HomeBrew.
The artifacts have been deployed to Maven Central and you can get the distribution on Bintray.
Happy coding and see you soon on our user or dev channels.