Replies: 3 comments 1 reply
-
In general, you don't need to modify the version catalog when upgrading a dependency. This only applies to direct dependencies in micronaut-core (like for example Netty). For dependencies in any micronaut module, long story short, we upgrade every dependency version we need in the module, release a new verison of it and then we receive automatically a new PR in core to upgrade the versions. This is how it works for the Elasticsearch module (for example):
The PR to core is sent automatically as part as the release process, see https://github.com/micronaut-projects/micronaut-elasticsearch/runs/4175916484?check_suite_focus=true#step:17:39 This is the upgrade PR: #6504 As a summary, you only need to modify manually core's version catalog when there is a new micronaut module or when updating a direct dependency in core. I hope this makes things a little bit clear. |
Beta Was this translation helpful? Give feedback.
-
@ilopmar Hi! Thank you for youe help! So, this answer describes the process of upgrading versions prefixed with
|
Beta Was this translation helpful? Give feedback.
-
Caffeine is currently JARJARed in core into We haven't upgraded to 3.x yet because it is Java 11 only |
Beta Was this translation helpful? Give feedback.
-
Issue description
Hello! Please tell me how to correctly update (and add) the versions of the libraries in the BOM file?
For example, I want to update the version of ElasticSearch in the bom file. I see that the file https://github.com/micronaut-projects/micronaut-core/blob/3.1.x/gradle/libs.versions.toml is version
managed-elasticsearch = "7.12.1"
. But there is a separate project for ElasticSearch - micronaut-elasticsearch. But for elasticsearch there is a separate project and in it in gradle.properties there is also a propsian version -elasticsearchVersion = 7.12.1
. Which version will eventually be final in the BOM file if update it in a separate projectmicroanut-elasticsearch
?Also, I would like to ask how to correctly add libraries to the micronaut BOM? For example, elasticsearch uses log4j2 and for correct use of slf4j you need to connect additionally
org.apache.logging.log4j:log4j-to-slf4j
library. But the version of this library is not in your BOM file and this creates some inconvenience.Same problem with some slf4j components (
org.slf4j: jcl-over-slf4j
,org.slf4j: log4j-over-slf4j
,org.slf4j: jul-to-slf4j
). It would be cool if you could use all these components without worrying about the version (this is done in spring boot).I also noticed that many of the libraries received updates a long time ago. Some versions have not been updated for over a year (for example caffeine not updated for six months ). What is the mechanism for updating versions in your project?
Beta Was this translation helpful? Give feedback.
All reactions