-
Couldn't load subscription status.
- Fork 28.9k
[SPARK-54026][BUILD] Use BOM for AWS Java SDK V2 dependency management #52728
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -1189,12 +1189,16 @@ object DependencyOverrides { | |
| lazy val guavaVersion = sys.props.get("guava.version").getOrElse("33.4.0-jre") | ||
| lazy val jacksonVersion = sys.props.get("fasterxml.jackson.version").getOrElse("2.20.0") | ||
| lazy val jacksonDeps = Bom.dependencies("com.fasterxml.jackson" % "jackson-bom" % jacksonVersion) | ||
| lazy val settings = jacksonDeps ++ Seq( | ||
| lazy val awsJavaSdkV2Version = sys.props.get("aws.java.sdk.v2.version").getOrElse("2.29.52") | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. the drawback is, we need to duplicate the version definition here again, would be better to investigate if we can extract the version from pom.xml directly There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, I agree, it would be better to see if the property can be read from the |
||
| lazy val awsJavaSdkV2Deps = | ||
| Bom.dependencies("software.amazon.awssdk" % "bom" % awsJavaSdkV2Version) | ||
| lazy val settings = jacksonDeps ++ awsJavaSdkV2Deps ++ Seq( | ||
| dependencyOverrides += "com.google.guava" % "guava" % guavaVersion, | ||
| dependencyOverrides ++= jacksonDeps.key.value, | ||
| dependencyOverrides += "jline" % "jline" % "2.14.6", | ||
| dependencyOverrides += "org.apache.avro" % "avro" % "1.12.1", | ||
| dependencyOverrides += "org.slf4j" % "slf4j-api" % "2.0.17") | ||
| dependencyOverrides += "org.slf4j" % "slf4j-api" % "2.0.17", | ||
| dependencyOverrides ++= awsJavaSdkV2Deps.key.value) | ||
| } | ||
|
|
||
| /** | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since you have used BOM to manage versions, the explicit version definition at the sub-module's pom.xml is not required, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@pan3793 Both
hadoop-cloud/pom.xmlandresource-managers/kubernetes/integration-tests/pom.xmlusebundleinstead of individual jar dependencies whilekinesis-aslrelies on transitive dependencies of the producer library that usests,authand etc.BOMonly defines individual dependencies andbundlestill requiresversionto be specified in the dependency. Otherwise maven build fails:It may be necessary to see why both explicitly define dependency on
bundleinstead of relying on transitive dependencies. Though, I think, it is outside of the scope for this PR, WDYT?