v3.4.0 (2022-03-22)
Localized Message Source
You can now inject LocalizedMessageSource
, a @RequestScope
bean, in your controllers to resolve localized messages for the current HTTP Request. It works in combination with Micronaut Locale Resolution capabilities.
Referencing bean properties in @requires.
With 3.4.0, you can reference other beans properties in @Requires
to load beans conditionally.
@Requires(bean=Config.class, beanProperty="foo", value="John")
Micronaut Data MongoDB
Micronaut Data 3.3.0 includes Micronaut Data MongoDB.
Micronaut AOT and Maven
Micronaut AOT is now fully supported for Maven users. Enabling AOT is as simply as passing -Dmicronaut.aot.enabled
when running, testing, or packaging your application.
For more details, check the Micronaut Maven Plugin documentation.
Micronaut TOML
Micronaut TOML allows you to write your application configuration with TOML in addition to Properties
, YAML
, Groovy
or Config4k
.
Micronaut Security
Micronaut Security 3.4.1 responds with an error when an authenticated user visits a sensitive endpoint. This forces the developer to define how they want their application to behave in that scenario. Read the release notes and the documentation to learn more.
BOM Modules
Several projects include a BOM (Bills of Materials) module:
- Micronaut Azure 3.1.0
- Micronaut GCP 4.1.0. It includes updates to the latest versions of Google Cloud dependencies.
- Micronaut Kotlin 3.2.0
- Micronaut MongoDB 4.1.0
- Micronaut MQTT 2.1.0
- Micronaut Reactor 2.2.1. It includes updates to the Project Reactor dependencies.
- Micronaut Redis 5.2.0
- Micronaut RxJava2 1.2.0
- Micronaut RxJava3 2.2.0
- Micronaut Security 3.4.1
- Micronaut Servlet 3.2.0. It includes updates to Tomcat and Undertow dependencies.
Other Module Upgrades
- Micronaut AWS 3.2.0 updates to the latest version of AWS SDK, ASK SDK and AWS Serverless Java Container.
- Micronaut Email 1.1.0 updates to the Sendgrid 4.8.3 and contains improvements for
javamail
module users. - Micronaut Test 3.1.0 updates the underlying testing dependencies.
Changes
- Bump micronaut-sql to 4.2.2 @micronaut-build (#7119)
- Disable InputStreamBodySpec2 @yawkat (#7112)
- Cache JsonMapper in DefaultNettyHttpClientRegistry @yawkat (#7117)
- Bump micronaut-kafka to 4.2.0 @micronaut-build (#7114)
- Bump micronaut-kotlin to 3.2.2 @micronaut-build (#7115)
- Bump micronaut-data to 3.3.0 @micronaut-build (#7113)
- Extract AbortCompilation to own method @yawkat (#7111)
- ci: action-junit-report to 3.0.1 @micronaut-build (#7110)
- Improve Maven plugin's what's new section for 3.4.x @alvarosanchez (#7109)
- Bump micronaut-kotlin to 3.2.1 @micronaut-build (#7108)
- doc: update What's new section for 3.4.0 @sdelamo (#7106)
- Bump micronaut-maven-plugin to 3.2.0 @micronaut-build (#7103)
- Update Native Build Tools to 0.9.10 @alvarosanchez (#7102)
- Bump micronaut-email to 1.2.0 @micronaut-build (#7100)
- Correct bean property type @dstepanov (#7092)
- Correct handling of properties starting with 'is' for Kotlin @dstepanov (#7094)
- Bump micronaut-serialization to 1.0.0 @micronaut-build (#7095)
- Update to jackson 2.13 @yawkat (#7096)
- Add Micronaut AOT version to the BOM as a managed property @alvarosanchez (#7093)
- Bump micronaut-tracing to 4.1.1 @micronaut-build (#7090)
- Bump micronaut-acme to 3.1.0 @micronaut-build (#7091)
- doc: change scope from runtime to runtimeOnly @sdelamo (#7089)
- Correct
JavaWildcardElement
native type @dstepanov (#7088) - Correct
JavaGenericPlaceholderElement
native type @dstepanov (#7081) - Allow query field elements from superclasses and interfaces @dstepanov (#7073)
- Bump micronaut-kubernetes to 3.4.0 @micronaut-build (#7080)
- Allow defining additional beans with processed methods @graemerocher (#7069)
- Allow deserializing _embedded values of HATEOAS resources @yawkat (#6850)
- Address sonar static analysis issues @graemerocher (#6979)
- test: JsonError embedded is deserialized @sdelamo (#7079)
- test: fields using ElementQuery @sdelamo (#7078)
- build: bump micronaut-mongodb to 4.1.0 and use BOM @micronaut-build (#7076)
- Bump micronaut-sql to 4.2.1 @micronaut-build (#7075)
- Bump micronaut-serialization to 1.0.0-RC3 @micronaut-build (#7074)
- Correct Java implementation if
PackageElement#getName
method @dstepanov (#7063) - buld: remove managed-lettuce @micronaut-build (#7053)
- Bump micronaut-oracle-cloud to 2.1.1 @micronaut-build (#7065)
- Bump micronaut-groovy to 3.1.0 @micronaut-build (#7062)
- Bump micronaut-servlet to 3.2.1 @micronaut-build (#7060)
- build: r2dbc to 2.1.0 @sdelamo (#7061)
- Bump micronaut-sql to 4.2.0 @micronaut-build (#7059)
- Bump micronaut-toml to 1.0.0 @micronaut-build (#7050)
- Rename
includeHiddenMethods
as it's also useful for hidden fields @dstepanov (#7051) - build: update to gradle 7.4.1 @micronaut-build (#7057)
- Add 5.2.0 redis bom to 3.4 build @timyates (#7054)
- Dependencies upgrade @sdelamo (#7049)
- Support getting overridden and hidden methods for Java. Corrected case with duplicate interfaces. @dstepanov (#7038)
- Upgrade to build plugins 5.2.3 @melix (#7023)
- Add mqtt 2.1.0 bom to core build @timyates (#7021)
- [core] Update common files for branch 3.3.x @micronaut-build (#6835)
- Bump micronaut-azure to 3.2.1 @micronaut-build (#7018)
- Bump micronaut-data to 3.3.0-RC1 @micronaut-build (#6972)
- Allow querying enum constants as fields @dstepanov (#7017)
- test: add query enum tests @sdelamo (#7019)
- Bump micronaut-reactor to 2.2.1 @micronaut-build (#7012)
- Fix Sonar issues assigned to me @alvarosanchez (#7015)
- Bump micronaut-jaxrs to 3.2.0 @micronaut-build (#6989)
- build: bump up micronaut test to 3.1.0 @sdelamo (#7008)
- Add GCP BOM to 3.4.x @timyates (#6987)
- test: ReactiveSequenceSpec ignore if jdk17 and CI @sdelamo (#7009)
- Bump micronaut-cache to 3.2.0 @micronaut-build (#6906)
- Bump micronaut-multitenancy to 4.1.0 @micronaut-build (#7005)
- Cleaner fix for proxying SSE streams @timyates (#6999)
- Bump micronaut-aws to 3.2.0 @micronaut-build (#6998)
- bulid: update micronaut build from 5.2.1 to 5.2.2 @sdelamo (#6997)
- Bump micronaut-security to 3.4.1 @micronaut-build (#6990)
- Fix API documentation @tobiasschaefer (#6991)
- Add recommendation regarding secrets to docs @graemerocher (#6986)
- doc: update ProxyFilter snippet title @obukhovas (#6458)
- Bump micronaut-gcp to 4.1.0 @micronaut-build (#6983)
- Bump micronaut-security to 3.4.0 @micronaut-build (#6982)
- fix various sonar issues @yawkat (#6988)
- Don't create stereotype for
@Nonnull(when=MAYBE)
@yawkat (#6980) - Fix various sonar issues @yawkat (#6969)
- Do not request demand for completed HandlerPublisher @yawkat (#6949)
- Correct recognizing a getter with a second character being a number @dstepanov (#6968)
- Fix broken link in documentation @tobiasschaefer (#6973)
- Log error if client binder is ignored @jameskleeh (#6966)
🚀 Features
- Add support for reflectively invoking executable methods for imported beans @graemerocher (#7097)
- Using @ConfigurationProperties methods in @requires annotation @GavrilovSV (#6173)
🐛 Bug Fixes
Contributors
@GavrilovSV, @alvarosanchez, @dstepanov, @graemerocher, @jameskleeh, @melix, @micronaut-build, @obukhovas, @sdelamo, @timyates, @tobiasschaefer and @yawkat