The English version of quarkus.io is the official project site. Translated sites are community supported on a best-effort basis.

Quarkus Tools for Visual Studio Code - 1.4.0 release

Quarkus Tools for Visual Studio Code 1.4.0 has been released on the VS Code Marketplace.

vscode-quarkus 1.4.0 fixes several bugs, including some performance issues, but the highlights of this release revolve around bringing support for multiple MicroProfile modules (Fault Tolerance, Health, LRA, Metrics, Open API, Open Tracing, Rest Client), in both properties and Java files. Many of these MicroProfile related enhancements were contributed by IBM.

For a list of all changes, please refer to the changelog.

Watch a demo video of all features presented in this article:

A little backstory on this release: it turns out, IBM had started to implement its own MicroProfile Language Server, providing MicroProfile support for Health, Open API, Rest Client for Java files (validation, quick fixes, completions). In the meantime, the Red Hat’s Quarkus Language Server had been refactored internally to split the Quarkus related bits from a MicroProfile focused core. Naturally, Red Hat and IBM realized there would be much value in contributing to a single MicroProfile Language Server implementation, and both parties agreed to join forces on developing the MicroProfile Language Server currently powering vscode-quarkus.

The outcome of this collaboration is the Eclipse LSP4MP (Language Server for Eclipse MicroProfile) project proposal. So stay tuned for more announcements on that subject!

And now for an overview of the new features in vscode-quarkus 1.4.0:

MicroProfile Fault Tolerance support

MicroProfile Fault Tolerance properties are now managed in *.properties and yaml files, by providing the correct properties, according to classes and methods annotated with Fault Tolerance annotations:

MicroProfile Fault Tolerance properties support

MicroProfile Health support

Validation and quick fixes for MicroProfile Health in Java files are now available:

MicroProfile Health Java diagnostics support

MicroProfile LRA support

MicroProfile LRA (Long Running Actions) properties are now supported in the *.properties and yaml files:

MicroProfile LRA properties support

MicroProfile Metrics support

MicroProfile Metrics properties are now supported in the *.properties and yaml files:

MicroProfile Metrics properties support

In Java files, you benefit from snippets to quickly generate part of the Metrics annotations:

MicroProfile Metrics Java snippets support

These Metrics snippets only appear if the Java project has MicroProfile Metrics as a dependency.

MicroProfile Open API support

MicroProfile Open API properties are now managed in *.properties and yaml files:

MicroProfile Open API properties support

In Java files, you benefit from snippets to quickly generate part of the Open API annotations:

MicroProfile Open API Java snippets support

These Open API snippets only appear if the Java project depends on MicroProfile Open API.

The code action Sources…​ / Generate OpenAPI Annotations provides the ability to generate stub Open API annotations in a Java file:

MicroProfile Open API Java code action support

The code action generates an Open API @Operation annotation for each method that returns a response:

MicroProfile Open Tracing support

MicroProfile Open Tracing properties are now managed in *.properties and yaml files:

MicroProfile Open Tracing properties support

MicroProfile Rest Client support

Validation and quick fixes for MicroProfile Rest Client in Java files are now available:

MicroProfile Rest Client Java diagnostics support

CodeLens for Rest Client are now available:

MicroProfile Rest Client Java Code Lens support

Moving Forward

This wraps up the new major features in this release. If you have any questions, suggestions or feedback, by all means please open a GitHub issue.

For future releases we are aiming to improve language support for other MicroProfile modules like MicroProfile Reactive Messaging and other new Quarkus features like Command Mode Applications

Thank you for reading and stay tuned for the next release!