fierce-truck-19259
03/02/2025, 8:41 PMfierce-truck-19259
03/02/2025, 8:50 PMversion = fromBOM
might look like. So just curious if anyone have any general thoughts/input on something in that directionfast-nail-55400
03/02/2025, 10:10 PMfast-nail-55400
03/02/2025, 10:10 PMfast-nail-55400
03/02/2025, 10:13 PMdependency_management
field (or better name) to jvm_artifact
if BOMs can be specific to transitive dependencies of an artifact.
3. Define a new target type for collecting such dependency management BOMs.fast-nail-55400
03/02/2025, 10:13 PMdependencyManagement
section?fierce-truck-19259
03/02/2025, 10:21 PMdependency_management
as you said, with some BOM-option where you can say "use this BOM to determine the version for these dependencies". And then still be recorded in the pants-lockfile etc as normal when resolved 🤔fierce-truck-19259
03/02/2025, 10:28 PMBazel doesn't support BOMs.for Scala yet so we could be first 😄. They also noted the door opening with coursier adding support https://github.com/bazel-contrib/rules_jvm_external/issues/229#issuecomment-2586170409
fast-nail-55400
03/02/2025, 10:45 PMfierce-truck-19259
03/02/2025, 10:47 PMfierce-truck-19259
03/02/2025, 11:43 PMjvm_bom_artifact(
name="libraries-bom",
artifact="libraries-bom",
group="com.google.cloud",
version="26.55.0"
)
jvm_artifact(
name="google-cloud-storage",
artifact="google-cloud-storage",
group="com.google.cloud",
versionFrom=":libraries-bom"
)
The coursier requests must be run per each distinct bom, but they can be provided directly on the same resolve path like
coursier fetch --bom com.google.cloud:libraries-bom:26.55.0 com.google.cloud:google-cloud-storage: --json-output-file=./coursier.json
So it might be quite reasonable to implementfierce-truck-19259
03/02/2025, 11:50 PM