Micronaut Framework 4.3.0 Released!
by Sergio Del Amo CaballeroMicronaut Core
Micronaut Core contains several improvements, including performance optimizations and enhancements to the Kotlin Symbol Processing (KSP) integration.
Kotlin 1.9.22
This minor release updates to Kotlin 1.9.22 and KSP 1.9.22-1.0.17.
New Modules
Micronaut Chabots
Micronaut Chatbots eases the creation of ChatBots (in this first release, with support for Telegram and Basecamp).
Micronaut EclipseStore
Micronaut EclipseStore is a new module which adds integration with EclipseStore. Eclipse Store is the successor of the MicroStream project., Technically this project is identical to MicroStream 8, which was the last stable version of MicroStream itself.
EclipseStore is a breakthrough Java-native persistence layer built for cloud-native microservices and serverless apps.
EclipseStore is also great for monoliths and runs on Android mobile, edge, and embedded devices.
Expression Language Support
Micronaut Multi-tenancy
Micronaut Multi-tenancy allows using the current request tenant ID with Micronaut Expression Language.
Micronaut Cache
Micronaut Cache adds support for conditional caching with expression language expressions.
@Cacheable(condition = "#{id.value > 5}")
public String get(Id id) {
return repository.get(id);
}
Moreover, it updates to:
- Infinispan 14.0.22
- Hazelcast 5.3.6
Build Plugins
Native Image Build Tools
Micronaut Gradle Plugin and Micronaut Maven Plugin plugins update to Native Image Build tools 0.10.0.
AmazonLinux:2023 base image
Micronaut Gradle Plugin task buildNativeLambda
and Micronaut Maven Plugin goal mvn package -Dpackaging=docker-native -Dmicronaut.runtime=lambda
generates a GraalVM native executable inside a Docker container to be deployed in AWS Lambda Custom runtime. They both use amazonLinux:2023
as base image.
Micronaut Gradle Plugin
Micronaut Gradle Plugin improves the docker support – with multi-layer docker files and changes the default base image to gr.dev/chainguard/wolfi-base:latest.
Micronaut Maven Plugin
Micronaut Maven Plugin improves its Java 21 support.
Micronaut Platform BOM
Micronaut Platform Bill of Materials (BOM) inlines all the versions defined in the different modules BOMs, to allow users to override any dependency version by simply overriding the corresponding property. It is noteworthy that this was previously feasible with Micronaut framework 3, and the aforementioned behavior has been restored.
Cloud
Micronaut GCP
Micronaut GCP has added support for Pub/Sub Push subscriptions via a new @PushSubscription annotation. This enables the processing of Push messages using the same programming model as the existing support for Pull subscriptions. With Push subscriptions, the PubSub service pushes messages to your application via HTTP, as opposed to the Pull style of subscription which requires your application to have a continually running background process to receive messages. Push subscriptions are generally required when using one of GCP’s serverless solutions, such as Cloud Run.
Micronaut AWS
Micronaut AWS updates to:
- AWS SDK for Java 2.0 2.23.14
- AWS SDK for Java 1.0 1.12.648
If you use Micronaut AWS Lambda, we strongly recommend upgrading to Micronaut Framework 4.3.0, as you will get cold startup improvements.
Micronaut Azure
Micronaut Azure updates to:
- Cosmos 4.54.0
- Azure SDK 1.2.19
- Library for Azure Java Functions 3.1.0
Micronaut GCP
Micronaut GCP updates to:
- Google Cloud Core 2.31.0
- Google Secret Management Client for Java 2.33.0
- Google Cloud Pub/Sub Client for Java 1.126.1
- Google Auth Library 1.22.0
Micronaut Oracle Cloud
Micronaut Oracle Cloud updates to:
- Oracle Cloud Infrastructure SDK 3.31.1
- Oracle JDBC 21.11.0.0.
- Fn Project 1.0.182
Database Migration
Micronaut Flyway
Micronaut Flyway updates to a Flyway 10, the latest major version of Flyway.
Micronaut Liquibase
Micronaut Liquibase updates to Liquibase 4.25.1.
Other
Micronaut Data
Micronaut Data adds multiple improvements and it updates to:
- Azure Cosmos 5.3.0
Micronaut Serialization
Micronaut Serialization continues to improve with enhancements for @JsonTypeInfo, JsonValue, and @JsonView. Moreover, it adds the method ObjectMapper::cloneWithConfiguration.
Micronaut Security
Micronaut Security adds the auditing annotations `@CreatedBy` and `@UpdatedBy`, and an imperative API to simplify the creation of beans of type `AuthenticationProvider`.
Micronaut Validation
Micronaut Validation allows for constraints with `validatedBy = MyValidator.class` to load validator from the bean context.
Micronaut Logging
Micronaut Reactor
- Project Reactor 2023.0.1
Micronaut ACME
Micronaut ACME updates to acme4j-client 3.
Micronaut Elasticsearch
Micronaut Elasticsearch updates to Elasticsearch 8.12.0.
Micronaut Email
Micronaut Email updates to:
Micronaut GraphQL
Micronaut GraphQL updates to GraphQL Java Tools.
Micronaut gRPC
Micronaut gRPC updates to:
- gRPC 1.61.0
- protobuf 3.25.2
Micronaut JMS
Micronaut JMS updates to:
- Apache ActiveMQ 5.18.3
- ActiveMQ Artmeis 2.31.2.
Micronaut Kafka
Micronaut Kafka updates to Kafka `3.6.1`.
Micronaut Kubernetes
Micronaut Kubernetes updates Kubernetes & OpenShift Java Client to 6.10.0 and Kubernetes Java Client to 19.0.0.
Micronaut Logging
Micronaut Logging updates to Logback 1.4.14, log4j2 2.22.1 and slf4j 2.0.11.
Micronaut Micrometer
Micronaut Micrometer updates to Micrometer 1.12.0.
Micronaut MongoDB
Micronaut MongoDB updates to Mongo 4.11.1.
Micronaut Neo4J
Micronaut Neo4j updates to Neo4J Java driver and Neo4J Harness 5.15.0.
Micronaut NATS
Micronaut NATS updates to jnats 2.17.2.
Micronaut Open API
Micronaut OpenAPI adds OpenAPI Explorer View and many other improvements driven by altro3, a community contributor.
Micronaut Pulsar
Micronaut Pulsar updates `pulsar-client-original` to 3.1.2.
Micronaut Kotlin
Micronaut Kotlin updates to Ktor 2.3.7.
Micronaut Servlet
Micronaut Servlet updates to:
Micronaut Spring
Micronaut Spring updates to:
- Spring Boot 3.2.1.
- Spring Framework 6.1.3
Micronaut SQL
Micronaut SQL updates to:
- Hibernate 6.4.3
- Hibernate Reactive 2.2.2.Final
- jOOQ 3.19.3
- JDBI 3.44.0
- MariaDB 3.3.2
- MySQL 8.3.0
- Tomcat JDBC 10.1.18
- Vert.x 4.5.2
Micronaut Test
Micronaut Test updates to:
Micronaut Test Resources
Micronaut Test Resources updates to:
- Testcontainers 1.19.4
Micronaut Tracing
Micronaut Tracing updates to OpenTelemetry version 1.32.0.
Micronaut Views
Micronaut Views updates:
Micronaut Cassandra
Micronaut Cassandra adds documentation for configuring SSL integration with the Cassandra DataStax Java Driver.
NEXT STEPS
If you haven’t yet updated to Micronaut framework 4, this is an excellent opportunity to do so!
Please feel free to reach out to us if you need any assistance.