MicroProfile 3.0 arrives with some breaking API changes
The latest release of Eclipse MicroProfile is here! The 3.0 release, which builds on the 2.2 version, brings updates on three key areas, the Rest Client, Metrics, and Health Check APIs. Let’s have a look.
The latest release of Eclipse Microprofile arrives and brings updates for the Rest Client, Metrics, and Health Check APIs.
Most importantly, Metrics and Health Check APIs some breaking changes that you should keep in mind.
Building on the 2.2 version, MicroProfile 3.0 “continues to align itself with Java EE 8 as the foundational programming model for the development of Java microservices.”
Let’s have a look.
What’s new in MicroProfile 3.0?
At first glance, this release offers interoperability across different MicroProfile implementations that provides users with the freedom to select one or combine many MicroProfile implementations in an application.
Let’s have a closer look at the changes featured in MicroProfile 3.0:
Rest Client 1.3 – Introduces the simplification of the configuration of multiple client interfaces, support for SSL configuration, resource cleanup after use, and media type defaulting when none is specified.
Metrics 2.0 – Includes breaking API changes related to the refactoring of counters. All counters are now monotonic and the old non-monotonic counters are now ConcurrentGauges. What’s more, it introduces support for the OpenMetrics format (formerly known as Prometheus format), removes unnecessary annotations and deprecated methods, and improves the identification of specific metrics.
Health Check 2.0 – Introduces breaking API changes in that it has modified the body of the Health Check response. In addition, it adds support for @Liveness and @Readiness health check annotations for container orchestration solutions like Kubernetes, deprecates some annotations, and it has enhanced and cleaned up its Test Compatibility Kit (TCK) and its JSON schema, among others.
Moving forward, the MicroProfile team plans to update existing APIs and/or add new ones. More precisely, some of the topics the team is currently discussing include:
Updates to existing Components such as Config and OpenAPI
- Long Running Actions
- Context Propagation
- Reactive Relational Database Access
- Event Data
- Service meshes
Head over to the official blog post for all the detailed information on the current as well as future changes.
As the 3.0 release introduces breaking changes, you should keep in mind that if you’d like to upgrade from a previous release, you may need to make source code changes to your applications.
Also, if the changes introduced by Eclipse MicroProfile 3.0 cause an issue with your applications, you may want to consider staying on Eclipse MicroProfile 2.2.
Find more information here.