Micronaut
Micronaut 1.3 M1 Released
The Micronaut team at Object Computing is excited to announce the release of Micronaut 1.3 M1. This is the first milestone of Micronaut's 1.3 line, and it includes a number of significant new features, including:
- Integrated support for Micronaut Data
- Immutable configuration properties
- Cache support for Ehcache and Hazelcast
- Enhancements and updates to the Kafka, Views, GRPC, SQL, and OpenAPI modules
Inmutable configuration via interfaces is really cool:
@ConfigurationProperties("my.engine")
interface EngineConfig {
@Bindable(defaultValue = "Ford")
@NotBlank
String getManufacturer()
}
Microservices frameworks support in IntelliJ IDEA ULTIMATE
As someone who spends most of my time on IntelIiJ IDEA, I am thrilled by this:
To help keep your IntelliJ IDEA projects technologically relevant, version 2019.3 adds initial support for Micronaut, Quarkus, and Helidon. You can enjoy full coding assistance, navigation, inspections, find usages, and other goodies if you employ a microservice-based architecture for your Java projects.
Short video from @trisha_gee with a few examples of the supported features
Grails
How to Benefit from Grails 4 Upgrade
If I ever do "articles of the year awards", this one will be nominated in the Grails category.
A couple of notes
Transactions Now Required for all Operations ... There is quite a simple fix for this issue — just visit all your services which works with the database and annotate them with @Transactional.
If the code is doing read logic, annotate it with @ReadOnly instead of @Transactional.
@ReadOnly = @Transactional(readOnly = true).
Using read-only transaction demarcations when you are just reading data will improve your app's performance.
Gold tip:
If you want to take advantage of the latest version of Micronaut as well as being able to write Micronaut dependencies without version then you have to also add Micronaut BOM into your Gradle build.
dependencyManagement {
imports {
mavenBom "org.grails:grails-bom:$grailsVersion"
}
imports {
mavenBom "io.micronaut:micronaut-bom:$micronautVersion"
}
applyMavenExclusions false
}
Grails 4.0 Upgrade
📅 December 20 2019.
⌛️10:00 a.m. CST.
👨🏼💻Yours truly.
💵 Free
If you are still in Grails 3, join me!
The following topics are covered in this webinar:
- Grails 4 migration checklist.
- SpringBoot changes
- Gradle changes.
- GORM changes.
- Plugin changes.
- Grails hot reload.
- Micronaut + Grails.
- Migration from Rest client builder to Micronaut HTTP client.
Gradle
Get Groovy with Gradle
Nice Gradle intro by @oktadev.
I specially like the section Gradle is nothing but closures. Understanding Groovy Closure and delegation helps any developer using Gradle.
Groovy hasn’t taken off as a mainstream development language, largely being overtaken by Scala and Kotlin, but it has found a niche in testing (because of its streamlined syntax and the meta-programming features) and in build systems.
There has been a lot of mainstream development with Groovy in the past 10 years. 🛎 Grails!
Gradle task-tree plugin
My OCI coworker @mattdmoss pointed me to this handy Gradle plugin:
Gradle plugin that adds a taskTree task that prints task dependency tree report to the console.
gradle build taskTree
:build
+--- :assemble
| \--- :jar
| \--- :classes
| +--- :compileJava
| \--- :processResources
\--- :check
\--- :test
+--- :classes
| +--- :compileJava
| \--- :processResources
\--- :testClasses
+--- :compileTestJava
| \--- :classes
| +--- :compileJava
| \--- :processResources
\--- :processTestResources
Tools
HTTP Curl
I use Paw, an API tool for MacOS. However, I use curl
as well. @flaviocopes gives a great intro to the most common curl scenarios.
Comment
A dose of Gradle, Micronaut and Grails to keep you going while we approach the end of the year.
Sergio del Amo