Quarkus 1.10 released - JSON as default, Multiple reactive datasources, new Micrometer registries...
The just released Quarkus 1.10.2.Final comes with a lot of improvements and new features:
Default media type is now JSON
CodeStarts is now the default project generation tool
The Micrometer extension got its fair share of improvements (e.g. new registries)
New Qute error pages
Swagger/GraphQL/Health/OpenAPI UIs and Swagger UI configuration
Part of the Hibernate ORM configuration is now overridable at runtime
SmallRye Reactive Messaging 2.5.0 and Mutiny 0.11.0
Reactive SQL Clients support multiple datasources
New Amazon IAM extension
New guide for Deploying to Google Cloud
As usual, it also comes with its fair share of bugfixes and usability and documentation improvements.
Eager to migrate your existing applications? Here is our migration guide for 1.10.
GraalVM 20.2 in its Java 11 flavor is still the recommended GraalVM version.
Where is my 1.10.0.Final (and my 1.10.1.Final)?!?
We spotted a regression in the Caffeine extension and decided to skip the announcement of 1.10.0.Final altogether. And then we spotted an issue with the Platform BOM and had to release a 1.10.2.Final.
All in all, we managed to fix a few more issues in the meantime so that makes 1.10.2.Final a greater release.
JSON as the Default Content Type
In an effort to make your REST resources less verbose and considering nowadays JSON is the most widely used content type for REST services, it is now the default in Quarkus for your REST resources.
It means that, if you are using JSON, you don’t need to add
@Consumes annotations anymore.
It also means that if you were relying on content type negotiation, you will have to add these annotations with the content types you support.
CodeStarts as Default Project Generation Tool
The CodeStarts project has been a long and steady effort. Good news: it is now the default project generation tool.
From an end user perspective, it brings a better UI, more flexibility and code examples.
A lot of work has been done to make the Swagger/GraphQL/Health/OpenAPI UIs consistent and Quarkus-themed.
You can also now disable them at runtime.
More specifically on the Swagger UI front, all the Swagger UI configuration knobs have been exposed as Quarkus configuration properties. You can learn more about it in the just published Stylish API blog post.
Qute Error Pages
If you are using Qute, our template engine, you will be pleased to see our shiny new error pages, which points you to the error and makes you even more productive:
Hibernate ORM Runtime Config
Before 1.10, all of the Hibernate ORM configuration properties were fixed at build time. Mostly for optimization purposes.
With 1.10, we started to relax this rule for some carefully chosen properties and you can now override the following properties at runtime:
More Reactive Changes
SmallRye Reactive Messaging was upgraded to 2.5.0 which includes several improvements and Mutiny to 0.11.0.
The Reactive SQL Clients now support multiple datasources: you can connect to several databases, exactly in the same way as for JDBC datasources.
New Extension for Amazon IAM
The Amazon Services extensions got a new friend: a brand new Amazon IAM extension.
More on this one in the Amazon IAM guide.
A lot of Google Cloud-related work is taking place in the Quarkiverse.
And if you wonder how you will deploy your Quarkus application to Google Cloud, we have a new guide for you.
You can get the full changelogs of 1.10.0.CR1, 1.10.0.Final, 1.10.1.Final and 1.10.2.Final on GitHub.
To share stories about Quarkus usage, we added an
ADOPTERS.md file at the root of the repository.
If you are using Quarkus and would like to be interviewed on our blog or simply added to this file, please contact us and we will be happy to oblige.
The Quarkus community is growing and has now 395 contributors. Many many thanks to each and everyone of them.
In particular for the 1.10 release, thanks to Alexey Loubyansky, Andrea Cosentino, Andreas Eberle, Andrej Petras, Andrew Hatch, Andy Damevin, Anton Fagerberg, Antonio Goncalves, antonwiens, Arne Mejlholm, Auri Munoz, Bill Burke, Bobby Alex Philip, Bobby Philip, Cem Nura, Clement Escoffier, Daniel Platz, David M. Lloyd, Denis Fuenzalida, Dheeraj Nalluri, Dmitry Telegin, Dominik Henneke, Dušan Križan, Erin Schnabel, Falko Modler, Felix Wong, Foivos Zakkak, George Andrinopoulos, George Gastaldi, Georgios Andrianakis, ghokun, Guillaume Le Floch, Guillaume Smet, Gwenneg Lepage, Gytis Trikleris, Ioannis Canellos, Jack Hu, Jaikiran Pai, Jakub Antosik, Jan Martiška, Jordi Sola, Julien Ponge, Justin Holmes, Justin Lee, jyemin, jzuriaga, Jérôme TAMA, Jörg von Frantzius, kdnakt, Kevin Viet, Knut Wannheden, Kuba Antosik, Ladislav Thon, Libor Krzyzanek, Lovekesh Garg, Loïc Mathieu, luneo7, Maciej Swiderski, Manyanda Chitimbo, Marcin Czeczko, Martin Kouba, Matej Novotny, Matej Vasek, Matthias Harter, Michal Szynkiewicz, Nathan Erwin, osaka-svg, Paul Kunysch, Pedro Igor, Peter Palaga, Phillip Kruger, René Grob, Robbie Gemmell, Roberto Cortez, Rostislav Svoboda, Samuel Le Berrigaud, Sanne Grinovero, seregamorph, Sergey Beryozkin, Simon Bengtsson, Stefan Hacker, Stephane Epardaud, Stuart Douglas, Thorasine, Vincent Sevel, Vincent Sourin, Vinod Anandan, xstefank, Xumk, Yoann Rodière.
Come Join Us
We value your feedback a lot so please report bugs, ask for improvements… Let’s build something great together!
If you are a Quarkus user or just curious, don’t be shy and join our welcoming community:
provide feedback on GitHub;
craft some code and push a PR;
discuss with us on Zulip and on the mailing list;
ask your questions on Stack Overflow.