OAK-12093: Rationalize dependency management#2729
Conversation
reschke
left a comment
There was a problem hiding this comment.
Some of these are good, but IMHO do not need variables.
Some of them are critical, when they affect embedded transitive dependencies.
This needs to be broken down into more separate changes.
| <scope>test</scope> | ||
| </dependency> | ||
|
|
||
| <!-- Guava and related dependencies --> |
There was a problem hiding this comment.
Nope, we are removing Guava.
There was a problem hiding this comment.
Is the removal of guava merged or soon to be ? If so I'll rebase and skip this then ;)
Any in particular you see as critical that should be taken care of separately ? |
79f9a5c to
a13d46a
Compare
| <dependency> | ||
| <groupId>org.testcontainers</groupId> | ||
| <artifactId>elasticsearch</artifactId> | ||
| <version>${testcontainers.version}</version> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>org.testcontainers</groupId> | ||
| <artifactId>mongodb</artifactId> | ||
| <version>${testcontainers.version}</version> | ||
| </dependency> | ||
| <dependency> | ||
| <groupId>org.testcontainers</groupId> | ||
| <artifactId>testcontainers</artifactId> | ||
| <version>${testcontainers.version}</version> | ||
| </dependency> |
There was a problem hiding this comment.
I don't think these should be in the parent pom but rather in the specific modules.
There was a problem hiding this comment.
Here this is only in the dependencyManagement section to ensure that modules don't pull in different versions. Multiple modules use tesetcontainers for testing.
What's you rationale behind having each module control it's own version ? Are there specific version needs ?
a13d46a to
72c5659
Compare
|
I revived this one because currently we have an inconsistency in tika version used in different OAK modules. Centralizing version dependencies would very likely have avoided that. |
| <version>${lucene.version}</version> | ||
| <scope>test</scope> | ||
| </dependency> | ||
| <dependency> |
There was a problem hiding this comment.
These are pulled in transtively via oak-lucene
| <artifactId>lucene-core</artifactId> | ||
| <version>${lucene.version}</version> | ||
| </dependency> | ||
| <dependency> |
There was a problem hiding this comment.
Pulled in transitively
This PR proposes to rationalize the dependencies in OAK. Some artifacts are downloaded in duplicates of different versions and even some times more.
To reduce these downloads, this PR removes explicit versions in sub-modules (unless strictly required, e.g. lucene for itself or lucene for elastic). All dependency versioning is centralized in the parent pom.
Number of downloads before : 999
Number of downloads after : 953