Skip to content

Dependency Table Draft, not implemented

Elliotte Rusty Harold edited this page Apr 13, 2020 · 1 revision

Dependency Table (com.google.cloud.tools.opensource.dependencies.DependencyTable) creates a table that lists dependencies across different Maven artifact and BOMs. The output is formatted in JIRA's table notation. The artifact and BOMs make columns, while groupID and artifactID of their dependencies make rows. Table cell has the version for the corresponding dependency of the artifact or BOM.

Input

The tool takes coordinates of Maven artifact and BOMs.

  • -a: list of Maven artifact coordinates, separated by ","
  • -b: list of BOM coordinates, separated by ","

Example

This example compares dependencies of Maven artifact org.apache.beam:beam-sdks-java-io-google-cloud-platform version 2.15.0 and 2.16.0, and BOM com.google.cloud:libraries-bom version 1.0.0, 2.0.0, 2.5.0, and 3.1.0.

DependencyTable -a org.apache.beam:beam-sdks-java-io-google-cloud-platform:2.15.0,org.apache.beam:beam-sdks-java-io-google-cloud-platform:2.16.0 -b com.google.cloud:libraries-bom:1.0.0,com.google.cloud:libraries-bom:2.0.0,com.google.cloud:libraries-bom:2.5.0,com.google.cloud:libraries-bom:3.1.0

Screenshot of invocation via IntelliJ:

image

Output of the example

|| ||org.apache.beam:beam-sdks-java-io-google-cloud-platform:2.15.0||org.apache.beam:beam-sdks-java-io-google-cloud-platform:2.16.0||com.google.cloud:libraries-bom:1.0.0||com.google.cloud:libraries-bom:2.0.0||com.google.cloud:libraries-bom:2.5.0||com.google.cloud:libraries-bom:3.1.0||
|avalon-framework:avalon-framework|4.1.5|4.1.5| | | | |
|com.fasterxml.jackson.core:jackson-annotations|2.9.9|2.9.10| | | | |
|com.fasterxml.jackson.core:jackson-core|2.9.9|2.9.10| | | | |
|com.fasterxml.jackson.core:jackson-databind|2.9.9.3|2.9.10| | | | |
|com.github.jponge:lzma-java|1.3|1.3| | | | |
|com.google.android:android|1.5_r4|1.5_r4| | | | |
|com.google.api-client:google-api-client|1.27.0|1.27.0| | | | |
|com.google.api-client:google-api-client-jackson2|1.27.0|1.27.0| | | | |
|com.google.api-client:google-api-client-java6|1.27.0|1.27.0| | | | |
|com.google.api.grpc:grpc-google-cloud-asset-v1| | | |0.56.0|0.67.0|0.80.0|
|com.google.api.grpc:grpc-google-cloud-asset-v1beta1| | |0.49.0|0.56.0|0.67.0|0.80.0|
|com.google.api.grpc:grpc-google-cloud-asset-v1p2beta1| | | | | |0.80.0|
|com.google.api.grpc:grpc-google-cloud-automl-v1| | | | | |0.79.1|
|com.google.api.grpc:grpc-google-cloud-automl-v1beta1| | |0.49.0|0.56.0|0.67.0|0.79.1|
(... omit ...)

Once this output pasted to a JIRA's issues, the table is formatted:

image