I’m pleased to announce the release of Vert.x 2.0.0.final.
It’s been a rollercoaster/marathon run to get here since we released 1.3.1.final back in January, and it’s fair to say we’re all pretty exhausted now but we think the results are well worth the wait.
Vert.x 2.0 provides a host of new features and performance improvements and features a slimmer, more modular Vert.x. Highlights of 2.0 include:
* Many API improvements in the core APIs. Lots of new functionality and many things made more consistent.
* Powerful new module system. Vert.x modules can be placed in any Maven repository or in Bintray.
* Better, more efficient classloading model.
* Nested modules. Encapsulate your module and all the modules it depends on in a single module for ease of deployment.
* Multi-threaded worker verticles. Vert.x is now a truly hybrid application platform supporting both blocking and non-blocking verticles.
* Languages as modules. All language support is now implemented as modules – the core of Vert.x only understands Java. You only install the language support you need.
* Compact core. The core Vert.x distribution is less than 5MiB in size.
* Simpler and clearer embedding. Both the Vert.x core and the Vert.x platform are now embeddable in your existing Java apps
* Module registry – for registering your modules so the community can discover them.
* Maven archetype – for easily getting started with a standard Vert.x Maven project
* Gradle example project – for easily getting started with a standard Vert.x Gradle project
* Seamless testing and debugging of your Vert.x applications in your favourite IDE. No special configuration or setup needed.
* Simplified test framework enabling you to run Vert.x tests in the Vert.x container as standard JUnit tests
* Instant auto-redeploy of Vert.x modules. Make changes in your IDE/editor and see changes reflected in your running Vert.x application immediately.
* Updated and improved documentation.
We believe that Vert.x provides the ideal foundation for the new generation of highly scalable, polyglot applications. Now that the core and module system is in place, next steps will mainly involve providing more functionality in the form of modules, and extended language support. For example, right now we have teams working on Scala and Clojure language implementations which are already well advanced. We’ll be creating a road-map soon for the next stage.
Many thanks to everyone who has helped in getting Vert.x this far. Special thanks go out to the Netty team for working so closely with us, and of course the Vert.x community without which we would be nowhere!