Skip to content
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

guava / listenablefuture dependency resolution error (since Quarkus 3.3.0) #35499

Open
snazy opened this issue Aug 23, 2023 · 4 comments
Open
Labels
kind/bug Something isn't working

Comments

@snazy
Copy link
Contributor

snazy commented Aug 23, 2023

Describe the bug

When building the Nessie Quarkus server with Gradle, the build fails with a dependency resolution error, which manifests in the following error message (looks a little different depending on the Nessie module being built). This behavior's new in Quarkus 3.3.0 (worked fine with 3.2.x).

I haven't investigates why exactly that happens, but it seems that somehow com.google.guava:listenablefuture:1.0 gets pulled in while com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava - and both via a Gradle enforcedPlatform (at least, that's what I suspect).

Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(...)]

As a workaround, I've added these snippets to the relevant build scripts:

configurations.configureEach {
  resolutionStrategy.capabilitiesResolution.withCapability("com.google.guava:listenablefuture") {
    selectHighestVersion()
  }
}

Not sure whether this issue actually belongs to "core Quarkus" or rather "Quarkiverse/Google Cloud Services" (if that's the "offender").

Expected behavior

No response

Actual behavior

> Task :nessie-quarkus-cli:quarkusGenerateCode FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':nessie-quarkus-cli:quarkusGenerateCode'.
> Could not resolve all files for configuration ':nessie-quarkus-cli:quarkusProdRuntimeClasspathConfigurationDeployment'.
   > Could not resolve com.google.guava:guava:32.1.1-jre.
     Required by:
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0
         project :nessie-quarkus-cli > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable-deployment:2.3.0 > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable:2.3.0 > com.google.cloud:google-cloud-bigtable:2.25.1
         project :nessie-quarkus-cli > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable-deployment:2.3.0 > io.quarkiverse.googlecloudservices:quarkus-google-cloud-common-deployment:2.3.0 > io.quarkiverse.googlecloudservices:quarkus-google-cloud-common:2.3.0 > com.google.cloud:google-cloud-core:2.21.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > com.google.api:gax-grpc:2.31.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > com.google.api:gax-grpc:2.31.1 > com.google.api:api-common:2.14.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > com.google.api:gax:2.31.1
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava.
     Required by:
         project :nessie-quarkus-cli > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable-deployment:2.3.0 > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable:2.3.0 > com.google.cloud:google-cloud-bigtable:2.25.1
         project :nessie-quarkus-cli > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable-deployment:2.3.0 > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable:2.3.0 > com.google.cloud:google-cloud-bigtable:2.25.1 > com.google.cloud:google-cloud-bigtable-stats:2.25.1
         project :nessie-quarkus-cli > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable-deployment:2.3.0 > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable:2.3.0 > com.google.cloud:google-cloud-bigtable:2.25.1 > com.google.api.grpc:grpc-google-cloud-bigtable-v2:2.25.1
         project :nessie-quarkus-cli > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable-deployment:2.3.0 > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable:2.3.0 > com.google.cloud:google-cloud-bigtable:2.25.1 > com.google.api.grpc:proto-google-cloud-bigtable-v2:2.25.1
         project :nessie-quarkus-cli > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable-deployment:2.3.0 > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigtable:2.3.0 > com.google.cloud:google-cloud-bigtable:2.25.1 > com.google.api.grpc:proto-google-cloud-bigtable-admin-v2:2.25.1
      > Module 'com.google.guava:listenablefuture' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava' also provided by [com.google.guava:guava:32.1.1-jre(jreRuntimeElements)]
   > Could not resolve com.google.guava:guava:32.0.0-android.
     Required by:
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > com.google.api:gax-grpc:2.31.1 > com.google.auth:google-auth-library-oauth2-http:1.19.0
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:31.1-android.
     Required by:
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-netty:1.56.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-stub:1.56.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-api:1.56.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-auth:1.56.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-core:1.56.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-grpclb:1.56.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-protobuf:1.56.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-protobuf-lite:1.56.1
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:29.0-android.
     Required by:
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > com.google.http-client:google-http-client:1.43.3 > io.opencensus:opencensus-contrib-http-util:0.31.1
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:30.1.1-android.
     Required by:
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > com.google.http-client:google-http-client:1.43.3
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:31.1-jre.
     Required by:
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > com.google.protobuf:protobuf-java-util:3.22.0
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-alts:1.56.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-googleapis:1.56.1
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.grpc:grpc-services:1.56.1
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:30.1.1-jre.
     Required by:
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.vertx:vertx-grpc:4.4.4
         project :nessie-quarkus-cli > io.quarkus.platform:quarkus-bom:3.3.0 > io.vertx:vertx-grpc-common:4.4.4
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]

How to Reproduce?

  1. git clone https://github.com/projectnessie/nessie.git
  2. git checkout renovate/quarkus
  3. Revert to the original commit from renovatebot (removing my workaround)
  4. ./gradlew :nessie-quarkus:quarkusBuild

Output of uname -a or ver

No response

Output of java -version

No response

GraalVM version (if different from Java)

No response

Quarkus version or git rev

No response

Build tool (ie. output of mvnw --version or gradlew --version)

No response

Additional information

No response

@geoand
Copy link
Contributor

geoand commented Aug 23, 2023

I see the flattened BOM contains:

      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>32.1.1-jre</version>
        <exclusions>
          <exclusion>
            <groupId>com.google.code.findbugs</groupId>
            <artifactId>jsr305</artifactId>
          </exclusion>
          <exclusion>
            <groupId>com.google.guava</groupId>
            <artifactId>listenablefuture</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

cc @aloubyansky

@jmini
Copy link
Contributor

jmini commented Sep 12, 2023

I have a similar issue with a very simple project where you add the quarkus-google-cloud-bigquery extension:

Here is the link to generate the project on code.quarkus.io

I have the feeling that as soon as you have the 2 BOMs (and one project like quarkus-google-cloud-bigquery to use the second BOM) in the dependency it is failing:

dependencies {
    implementation enforcedPlatform("${quarkusPlatformGroupId}:${quarkusPlatformArtifactId}:${quarkusPlatformVersion}")
    implementation enforcedPlatform("${quarkusPlatformGroupId}:quarkus-google-cloud-services-bom:${quarkusPlatformVersion}")
    implementation 'io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigquery'
    //...
}

The command

./gradlew build

Is failing immediately

Gradle failure

> Task :quarkusGenerateCode FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':quarkusGenerateCode'.
> Could not resolve all files for configuration ':quarkusProdBaseRuntimeClasspathConfiguration'.
   > Could not resolve com.google.guava:guava:32.1.1-jre.
     Required by:
         project : > io.quarkus.platform:quarkus-bom:3.3.2
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:32.1.2-jre.
     Required by:
         project : > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigquery:2.4.0 > com.google.cloud:google-cloud-bigquery:2.31.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > com.google.cloud:google-cloud-core:2.22.0
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > com.google.api:gax-grpc:2.32.0
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > com.google.api:api-common:2.15.0
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > com.google.api:gax:2.32.0
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava.
     Required by:
         project : > io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigquery:2.4.0 > com.google.cloud:google-cloud-bigquery:2.31.1
      > Module 'com.google.guava:listenablefuture' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava' also provided by [com.google.guava:guava:32.1.1-jre(jreRuntimeElements)]
   > Could not resolve com.google.guava:guava:30.1.1-jre.
     Required by:
         project : > io.quarkus.platform:quarkus-bom:3.3.2 > io.vertx:vertx-grpc:4.4.4
         project : > io.quarkus.platform:quarkus-bom:3.3.2 > io.vertx:vertx-grpc-common:4.4.4
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:32.0.0-android.
     Required by:
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > com.google.auth:google-auth-library-oauth2-http:1.19.0
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:31.1-android.
     Required by:
         project : > io.quarkus.platform:quarkus-bom:3.3.2 > io.grpc:grpc-netty:1.56.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-api:1.56.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-stub:1.56.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-protobuf:1.56.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-protobuf-lite:1.56.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-grpclb:1.56.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-auth:1.56.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-core:1.56.1
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:31.1-jre.
     Required by:
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > com.google.protobuf:protobuf-java-util:3.22.0
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-alts:1.56.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-googleapis:1.56.1
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.grpc:grpc-services:1.56.1
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:29.0-android.
     Required by:
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > io.opencensus:opencensus-contrib-http-util:0.31.1
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]
   > Could not resolve com.google.guava:guava:30.1.1-android.
     Required by:
         project : > io.quarkus.platform:quarkus-google-cloud-services-bom:3.3.2 > com.google.http-client:google-http-client:1.43.3
      > Module 'com.google.guava:guava' has been rejected:
           Cannot select module with conflict on capability 'com.google.guava:listenablefuture:1.0' also provided by [com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava(runtime)]

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.

* Get more help at https://help.gradle.org

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/8.1.1/userguide/command_line_interface.html#sec:command_line_warnings

BUILD FAILED in 1s

Checking the dependency tree for the problematic configuration:

./gradlew dependencies --configuration=quarkusProdBaseRuntimeClasspathConfiguration

All the guava dependency are failing

Details


> Task :dependencies

------------------------------------------------------------
Root project 'issue35499'
------------------------------------------------------------

quarkusProdBaseRuntimeClasspathConfiguration
+--- io.quarkus.platform:quarkus-bom:{strictly 3.3.2} -> 3.3.2
|    +--- io.quarkus:quarkus-arc:3.3.2 (c)
|    +--- io.quarkus.arc:arc:3.3.2 (c)
|    +--- io.quarkus:quarkus-core:3.3.2 (c)
|    +--- org.eclipse.microprofile.context-propagation:microprofile-context-propagation-api:1.3 (c)
|    +--- io.quarkus:quarkus-grpc-common:3.3.2 (c)
|    +--- jakarta.enterprise:jakarta.enterprise.cdi-api:4.0.1 (c)
|    +--- jakarta.annotation:jakarta.annotation-api:2.1.1 (c)
|    +--- jakarta.transaction:jakarta.transaction-api:2.0.1 (c)
|    +--- io.smallrye.reactive:mutiny:2.3.1 (c)
|    +--- org.jboss.logging:jboss-logging:3.5.1.Final (c)
|    +--- jakarta.inject:jakarta.inject-api:2.0.1 (c)
|    +--- io.smallrye.common:smallrye-common-os:2.1.0 (c)
|    +--- io.quarkus:quarkus-ide-launcher:3.3.2 (c)
|    +--- io.quarkus:quarkus-development-mode-spi:3.3.2 (c)
|    +--- io.smallrye.config:smallrye-config:3.3.4 (c)
|    +--- org.jboss.logmanager:jboss-logmanager-embedded:1.1.1 (c)
|    +--- org.jboss.logging:jboss-logging-annotations:2.2.1.Final (c)
|    +--- org.jboss.threads:jboss-threads:3.5.0.Final (c)
|    +--- org.slf4j:slf4j-api:2.0.6 (c)
|    +--- org.jboss.slf4j:slf4j-jboss-logmanager:2.0.0.Final (c)
|    +--- org.wildfly.common:wildfly-common:1.5.4.Final-format-001 (c)
|    +--- io.quarkus:quarkus-bootstrap-runner:3.3.2 (c)
|    +--- io.quarkus:quarkus-fs-util:0.0.9 (c)
|    +--- com.google.code.findbugs:jsr305:3.0.2 (c)
|    +--- io.vertx:vertx-grpc:4.4.4 (c)
|    +--- io.vertx:vertx-grpc-server:4.4.4 (c)
|    +--- io.vertx:vertx-grpc-client:4.4.4 (c)
|    +--- io.quarkus:quarkus-vertx:3.3.2 (c)
|    +--- io.quarkus.security:quarkus-security:2.0.2.Final (c)
|    +--- org.jboss.logging:commons-logging-jboss-logging:1.0.0.Final (c)
|    +--- org.graalvm.sdk:graal-sdk:23.0.1 (c)
|    +--- io.grpc:grpc-netty:1.56.1 (c)
|    +--- com.google.protobuf:protobuf-java-util:3.22.0 (c)
|    +--- com.google.api.grpc:proto-google-common-protos:2.23.0 (c)
|    +--- com.google.http-client:google-http-client-apache-v2:1.43.3 (c)
|    +--- com.google.http-client:google-http-client-appengine:1.43.3 (c)
|    +--- com.google.http-client:google-http-client-gson:1.43.3 (c)
|    +--- com.google.http-client:google-http-client:1.43.3 (c)
|    +--- org.apache.httpcomponents:httpclient:4.5.14 (c)
|    +--- org.apache.httpcomponents:httpcore:4.4.16 (c)
|    +--- com.google.j2objc:j2objc-annotations:2.8 (c)
|    +--- com.google.guava:guava:32.1.1-jre FAILED
|    +--- com.google.guava:failureaccess:1.0.1 (c)
|    +--- com.google.code.gson:gson:2.10.1 (c)
|    +--- com.google.protobuf:protobuf-java:3.22.0 (c)
|    +--- io.grpc:grpc-api:1.56.1 (c)
|    +--- io.grpc:grpc-context:1.56.1 (c)
|    +--- io.grpc:grpc-stub:1.56.1 (c)
|    +--- io.grpc:grpc-protobuf:1.56.1 (c)
|    +--- io.grpc:grpc-protobuf-lite:1.56.1 (c)
|    +--- io.grpc:grpc-alts:1.56.1 (c)
|    +--- io.grpc:grpc-grpclb:1.56.1 (c)
|    +--- io.grpc:grpc-auth:1.56.1 (c)
|    +--- io.grpc:grpc-googleapis:1.56.1 (c)
|    +--- io.grpc:grpc-core:1.56.1 (c)
|    +--- commons-codec:commons-codec:1.16.0 (c)
|    +--- com.fasterxml.jackson.core:jackson-core:2.15.2 (c)
|    +--- com.fasterxml.jackson.core:jackson-annotations:2.15.2 (c)
|    +--- com.fasterxml.jackson.core:jackson-databind:2.15.2 (c)
|    +--- com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.15.2 (c)
|    +--- io.netty:netty-common:4.1.94.Final (c)
|    +--- io.netty:netty-buffer:4.1.94.Final (c)
|    +--- com.google.errorprone:error_prone_annotations:2.20.0 (c)
|    +--- jakarta.el:jakarta.el-api:5.0.1 (c)
|    +--- jakarta.interceptor:jakarta.interceptor-api:2.1.0 (c)
|    +--- io.smallrye.common:smallrye-common-annotation:2.1.0 (c)
|    +--- io.smallrye.config:smallrye-config-core:3.3.4 (c)
|    +--- io.smallrye.common:smallrye-common-io:2.1.0 (c)
|    +--- io.github.crac:org-crac:0.1.3 (c)
|    +--- io.vertx:vertx-core:4.4.4 (c)
|    +--- io.vertx:vertx-grpc-common:4.4.4 (c)
|    +--- io.quarkus:quarkus-netty:3.3.2 (c)
|    +--- io.netty:netty-codec-haproxy:4.1.94.Final (c)
|    +--- io.smallrye.common:smallrye-common-vertx-context:2.1.0 (c)
|    +--- io.quarkus:quarkus-mutiny:3.3.2 (c)
|    +--- io.quarkus:quarkus-vertx-latebound-mdc-provider:3.3.2 (c)
|    +--- io.smallrye.reactive:smallrye-mutiny-vertx-core:3.5.0 (c)
|    +--- io.smallrye:smallrye-fault-tolerance-vertx:6.2.6 (c)
|    +--- io.netty:netty-codec-http2:4.1.94.Final (c)
|    +--- io.netty:netty-handler-proxy:4.1.94.Final (c)
|    +--- io.netty:netty-transport-native-unix-common:4.1.94.Final (c)
|    +--- io.grpc:grpc-xds:1.56.1 (c)
|    +--- org.eclipse.microprofile.config:microprofile-config-api:3.0.3 (c)
|    +--- io.smallrye.common:smallrye-common-expression:2.1.0 (c)
|    +--- io.smallrye.common:smallrye-common-constraint:2.1.0 (c)
|    +--- io.smallrye.common:smallrye-common-classloader:2.1.0 (c)
|    +--- io.smallrye.config:smallrye-config-common:3.3.4 (c)
|    +--- io.netty:netty-transport:4.1.94.Final (c)
|    +--- io.netty:netty-handler:4.1.94.Final (c)
|    +--- io.netty:netty-codec-http:4.1.94.Final (c)
|    +--- io.netty:netty-resolver:4.1.94.Final (c)
|    +--- io.netty:netty-resolver-dns:4.1.94.Final (c)
|    +--- io.netty:netty-codec:4.1.94.Final (c)
|    +--- com.aayushatharva.brotli4j:brotli4j:1.12.0 (c)
|    +--- io.quarkus:quarkus-smallrye-context-propagation:3.3.2 (c)
|    +--- io.smallrye.reactive:mutiny-smallrye-context-propagation:2.3.1 (c)
|    +--- io.smallrye.reactive:smallrye-mutiny-vertx-runtime:3.5.0 (c)
|    +--- io.smallrye.reactive:vertx-mutiny-generator:3.5.0 (c)
|    +--- io.netty:netty-codec-socks:4.1.94.Final (c)
|    +--- io.grpc:grpc-services:1.56.1 (c)
|    +--- io.smallrye.common:smallrye-common-function:2.1.0 (c)
|    +--- io.netty:netty-codec-dns:4.1.94.Final (c)
|    +--- io.smallrye:smallrye-context-propagation:2.1.0 (c)
|    +--- io.vertx:vertx-codegen:4.4.4 (c)
|    +--- io.smallrye:smallrye-context-propagation-api:2.1.0 (c)
|    +--- io.smallrye:smallrye-context-propagation-storage:2.1.0 (c)
|    \--- org.checkerframework:checker-qual:3.35.0 (c)
+--- io.quarkus.platform:quarkus-google-cloud-services-bom:{strictly 3.3.2} -> 3.3.2
|    +--- io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigquery:2.4.0 (c)
|    +--- io.quarkiverse.googlecloudservices:quarkus-google-cloud-common:2.4.0 (c)
|    +--- io.quarkiverse.googlecloudservices:quarkus-google-cloud-common-grpc:2.4.0 (c)
|    +--- com.google.cloud:google-cloud-bigquery:2.31.1 (c)
|    +--- com.google.auth:google-auth-library-oauth2-http:1.19.0 (c)
|    +--- com.google.cloud:google-cloud-core:2.22.0 (c)
|    +--- com.google.api:gax-grpc:2.32.0 (c)
|    +--- io.grpc:grpc-netty:1.56.1 (c)
|    +--- com.google.protobuf:protobuf-java-util:3.22.0 (c)
|    +--- com.google.api.grpc:proto-google-common-protos:2.23.0 (c)
|    +--- com.google.api.grpc:proto-google-iam-v1:1.18.0 (c)
|    +--- com.google.auth:google-auth-library-credentials:1.19.0 (c)
|    +--- com.google.cloud:google-cloud-core-http:2.22.0 (c)
|    +--- com.google.api-client:google-api-client:2.2.0 (c)
|    +--- com.google.oauth-client:google-oauth-client:1.34.1 (c)
|    +--- com.google.http-client:google-http-client-apache-v2:1.43.3 (c)
|    +--- com.google.http-client:google-http-client-appengine:1.43.3 (c)
|    +--- com.google.api:gax-httpjson:2.32.0 (c)
|    +--- io.opencensus:opencensus-api:0.31.1 (c)
|    +--- io.opencensus:opencensus-contrib-http-util:0.31.1 (c)
|    +--- com.google.http-client:google-http-client-gson:1.43.3 (c)
|    +--- com.google.http-client:google-http-client:1.43.3 (c)
|    +--- com.google.api:api-common:2.15.0 (c)
|    +--- com.google.guava:guava:32.1.1-jre FAILED
|    +--- com.google.api:gax:2.32.0 (c)
|    +--- org.threeten:threetenbp:1.6.8 (c)
|    +--- com.google.code.gson:gson:2.10.1 (c)
|    +--- com.google.protobuf:protobuf-java:3.22.0 (c)
|    +--- com.google.cloud:google-cloud-bigquerystorage:2.41.1 (c)
|    +--- io.grpc:grpc-api:1.56.1 (c)
|    +--- io.grpc:grpc-context:1.56.1 (c)
|    +--- io.grpc:grpc-stub:1.56.1 (c)
|    +--- io.grpc:grpc-protobuf:1.56.1 (c)
|    +--- io.grpc:grpc-protobuf-lite:1.56.1 (c)
|    +--- com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta1:0.165.1 (c)
|    +--- com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta2:0.165.1 (c)
|    +--- io.grpc:grpc-alts:1.56.1 (c)
|    +--- io.grpc:grpc-grpclb:1.56.1 (c)
|    +--- org.conscrypt:conscrypt-openjdk-uber:2.5.2 (c)
|    +--- io.grpc:grpc-auth:1.56.1 (c)
|    +--- io.grpc:grpc-googleapis:1.56.1 (c)
|    +--- io.grpc:grpc-core:1.56.1 (c)
|    +--- io.perfmark:perfmark-api:0.26.0 (c)
|    +--- com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1beta1:0.165.1 (c)
|    +--- com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1beta2:0.165.1 (c)
|    +--- com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1:2.41.1 (c)
|    +--- com.google.api.grpc:proto-google-cloud-bigquerystorage-v1:2.41.1 (c)
|    +--- com.google.auto.value:auto-value-annotations:1.10.2 (c)
|    +--- io.grpc:grpc-xds:1.56.1 (c)
|    \--- io.grpc:grpc-services:1.56.1 (c)
+--- io.quarkiverse.googlecloudservices:quarkus-google-cloud-bigquery -> 2.4.0
|    +--- io.quarkiverse.googlecloudservices:quarkus-google-cloud-common:2.4.0
|    |    +--- io.quarkus:quarkus-core:3.3.0 -> 3.3.2
|    |    |    +--- jakarta.annotation:jakarta.annotation-api:2.1.1
|    |    |    +--- jakarta.enterprise:jakarta.enterprise.cdi-api:4.0.1
|    |    |    |    +--- jakarta.enterprise:jakarta.enterprise.lang-model:4.0.1
|    |    |    |    +--- jakarta.annotation:jakarta.annotation-api:2.1.0 -> 2.1.1
|    |    |    |    +--- jakarta.el:jakarta.el-api:5.0.0 -> 5.0.1
|    |    |    |    +--- jakarta.interceptor:jakarta.interceptor-api:2.1.0
|    |    |    |    \--- jakarta.inject:jakarta.inject-api:2.0.1
|    |    |    +--- jakarta.inject:jakarta.inject-api:2.0.1
|    |    |    +--- io.smallrye.common:smallrye-common-os:2.1.0
|    |    |    +--- io.quarkus:quarkus-ide-launcher:3.3.2
|    |    |    +--- io.quarkus:quarkus-development-mode-spi:3.3.2
|    |    |    +--- io.smallrye.config:smallrye-config:3.3.4
|    |    |    |    +--- io.smallrye.config:smallrye-config-core:3.3.4
|    |    |    |    |    +--- org.eclipse.microprofile.config:microprofile-config-api:3.0.3
|    |    |    |    |    +--- io.smallrye.common:smallrye-common-annotation:2.1.0
|    |    |    |    |    +--- io.smallrye.common:smallrye-common-expression:2.1.0
|    |    |    |    |    |    +--- io.smallrye.common:smallrye-common-function:2.1.0
|    |    |    |    |    |    |    \--- io.smallrye.common:smallrye-common-constraint:2.1.0
|    |    |    |    |    |    |         \--- org.jboss.logging:jboss-logging:3.5.0.Final -> 3.5.1.Final
|    |    |    |    |    |    \--- org.jboss.logging:jboss-logging:3.5.0.Final -> 3.5.1.Final
|    |    |    |    |    +--- io.smallrye.common:smallrye-common-constraint:2.1.0 (*)
|    |    |    |    |    +--- io.smallrye.common:smallrye-common-classloader:2.1.0
|    |    |    |    |    +--- org.jboss.logging:jboss-logging:3.5.0.Final -> 3.5.1.Final
|    |    |    |    |    \--- io.smallrye.config:smallrye-config-common:3.3.4
|    |    |    |    |         +--- org.eclipse.microprofile.config:microprofile-config-api:3.0.3
|    |    |    |    |         +--- io.smallrye.common:smallrye-common-classloader:2.1.0
|    |    |    |    |         \--- org.jboss.logging:jboss-logging:3.5.0.Final -> 3.5.1.Final
|    |    |    |    \--- org.jboss.logging:jboss-logging:3.5.0.Final -> 3.5.1.Final
|    |    |    +--- org.jboss.logging:jboss-logging:3.5.1.Final
|    |    |    +--- org.jboss.logmanager:jboss-logmanager-embedded:1.1.1
|    |    |    |    \--- org.wildfly.common:wildfly-common:1.5.0.Final-format-001 -> 1.5.4.Final-format-001
|    |    |    +--- org.jboss.logging:jboss-logging-annotations:2.2.1.Final
|    |    |    +--- org.jboss.threads:jboss-threads:3.5.0.Final
|    |    |    |    +--- org.jboss.logging:jboss-logging:3.4.1.Final -> 3.5.1.Final
|    |    |    |    \--- org.wildfly.common:wildfly-common:1.5.0.Final -> 1.5.4.Final-format-001
|    |    |    +--- org.slf4j:slf4j-api:2.0.6
|    |    |    +--- org.jboss.slf4j:slf4j-jboss-logmanager:2.0.0.Final
|    |    |    +--- org.wildfly.common:wildfly-common:1.5.4.Final-format-001
|    |    |    +--- io.quarkus:quarkus-bootstrap-runner:3.3.2
|    |    |    |    +--- io.smallrye.common:smallrye-common-io:2.1.0
|    |    |    |    +--- org.jboss.logmanager:jboss-logmanager-embedded:1.0.11 -> 1.1.1 (*)
|    |    |    |    +--- org.jboss.logging:jboss-logging:3.5.1.Final
|    |    |    |    \--- io.github.crac:org-crac:0.1.3
|    |    |    \--- io.quarkus:quarkus-fs-util:0.0.9
|    |    +--- io.quarkus:quarkus-arc:3.3.0 -> 3.3.2
|    |    |    +--- io.quarkus.arc:arc:3.3.2
|    |    |    |    +--- jakarta.enterprise:jakarta.enterprise.cdi-api:4.0.1 (*)
|    |    |    |    +--- jakarta.annotation:jakarta.annotation-api:2.1.1
|    |    |    |    +--- jakarta.transaction:jakarta.transaction-api:2.0.1
|    |    |    |    +--- io.smallrye.reactive:mutiny:2.2.0 -> 2.3.1
|    |    |    |    |    \--- io.smallrye.common:smallrye-common-annotation:2.1.0
|    |    |    |    \--- org.jboss.logging:jboss-logging:3.5.1.Final
|    |    |    +--- io.quarkus:quarkus-core:3.3.2 (*)
|    |    |    \--- org.eclipse.microprofile.context-propagation:microprofile-context-propagation-api:1.3
|    |    +--- io.quarkus.security:quarkus-security:2.0.2.Final
|    |    |    +--- jakarta.enterprise:jakarta.enterprise.cdi-api:4.0.1 (*)
|    |    |    +--- org.jboss.logging:jboss-logging:3.5.0.Final -> 3.5.1.Final
|    |    |    \--- io.smallrye.reactive:mutiny:2.1.0 -> 2.3.1 (*)
|    |    +--- com.google.auth:google-auth-library-oauth2-http:1.19.0
|    |    |    +--- com.google.auto.value:auto-value-annotations:1.10.1 -> 1.10.2
|    |    |    +--- com.google.code.findbugs:jsr305:3.0.2
|    |    |    +--- com.google.auth:google-auth-library-credentials:1.19.0
|    |    |    +--- com.google.http-client:google-http-client:1.42.3 -> 1.43.3
|    |    |    |    +--- org.apache.httpcomponents:httpclient:4.5.14
|    |    |    |    |    +--- org.apache.httpcomponents:httpcore:4.4.16
|    |    |    |    |    \--- commons-codec:commons-codec:1.11 -> 1.16.0
|    |    |    |    +--- org.apache.httpcomponents:httpcore:4.4.16
|    |    |    |    +--- com.google.code.findbugs:jsr305:3.0.2
|    |    |    |    +--- com.google.errorprone:error_prone_annotations:2.18.0 -> 2.20.0
|    |    |    |    +--- com.google.guava:guava:30.1.1-android FAILED
|    |    |    |    +--- com.google.j2objc:j2objc-annotations:2.8
|    |    |    |    +--- io.opencensus:opencensus-api:0.31.1
|    |    |    |    |    \--- io.grpc:grpc-context:1.27.2 -> 1.56.1
|    |    |    |    \--- io.opencensus:opencensus-contrib-http-util:0.31.1
|    |    |    |         +--- io.opencensus:opencensus-api:0.31.1 (*)
|    |    |    |         \--- com.google.guava:guava:29.0-android FAILED
|    |    |    +--- com.google.http-client:google-http-client-gson:1.42.3 -> 1.43.3
|    |    |    |    +--- com.google.http-client:google-http-client:1.43.3 (*)
|    |    |    |    \--- com.google.code.gson:gson:2.10.1
|    |    |    \--- com.google.guava:guava:32.0.0-android FAILED
|    |    +--- com.google.cloud:google-cloud-core:2.22.0
|    |    |    +--- com.google.guava:guava:32.1.2-jre FAILED
|    |    |    +--- com.google.api:gax:2.32.0
|    |    |    |    +--- com.google.api:api-common:2.15.0
|    |    |    |    |    +--- com.google.guava:guava:32.1.2-jre FAILED
|    |    |    |    |    +--- com.google.auto.value:auto-value-annotations:1.10.2
|    |    |    |    |    +--- com.google.code.findbugs:jsr305:3.0.2
|    |    |    |    |    \--- com.google.errorprone:error_prone_annotations:2.18.0 -> 2.20.0
|    |    |    |    +--- com.google.auth:google-auth-library-credentials:1.19.0
|    |    |    |    +--- com.google.api.grpc:proto-google-common-protos:2.23.0
|    |    |    |    |    \--- com.google.protobuf:protobuf-java:3.23.2 -> 3.22.0
|    |    |    |    +--- com.google.protobuf:protobuf-java:3.23.2 -> 3.22.0
|    |    |    |    +--- org.threeten:threetenbp:1.6.8
|    |    |    |    +--- io.opencensus:opencensus-api:0.31.1 (*)
|    |    |    |    +--- com.google.guava:guava:32.1.2-jre FAILED
|    |    |    |    \--- com.google.auth:google-auth-library-oauth2-http:1.19.0 (*)
|    |    |    +--- com.google.auto.value:auto-value-annotations:1.10.2
|    |    |    +--- com.google.protobuf:protobuf-java-util:3.23.2 -> 3.22.0
|    |    |    |    +--- com.google.code.findbugs:jsr305:3.0.2
|    |    |    |    +--- com.google.code.gson:gson:2.8.9 -> 2.10.1
|    |    |    |    +--- com.google.errorprone:error_prone_annotations:2.11.0 -> 2.20.0
|    |    |    |    +--- com.google.guava:guava:31.1-jre FAILED
|    |    |    |    \--- com.google.j2objc:j2objc-annotations:1.3 -> 2.8
|    |    |    +--- com.google.api.grpc:proto-google-common-protos:2.23.0 (*)
|    |    |    +--- com.google.api.grpc:proto-google-iam-v1:1.18.0
|    |    |    |    +--- com.google.protobuf:protobuf-java:3.23.2 -> 3.22.0
|    |    |    |    \--- com.google.api.grpc:proto-google-common-protos:2.23.0 (*)
|    |    |    +--- org.threeten:threetenbp:1.6.8
|    |    |    +--- com.google.api:api-common:2.15.0 (*)
|    |    |    +--- com.google.auth:google-auth-library-credentials:1.19.0
|    |    |    +--- com.google.auth:google-auth-library-oauth2-http:1.19.0 (*)
|    |    |    +--- com.google.http-client:google-http-client:1.43.3 (*)
|    |    |    +--- com.google.http-client:google-http-client-gson:1.43.3 (*)
|    |    |    +--- com.google.protobuf:protobuf-java:3.23.2 -> 3.22.0
|    |    |    \--- com.google.code.findbugs:jsr305:3.0.2
|    |    +--- org.jboss.logging:commons-logging-jboss-logging:1.0.0.Final
|    |    |    \--- org.jboss.logging:jboss-logging:3.3.1.Final -> 3.5.1.Final
|    |    \--- org.graalvm.sdk:graal-sdk:23.0.1
|    +--- io.quarkiverse.googlecloudservices:quarkus-google-cloud-common-grpc:2.4.0
|    |    +--- com.google.api:gax-grpc:2.32.0
|    |    |    +--- com.google.api:gax:2.32.0 (*)
|    |    |    +--- com.google.api:api-common:2.15.0 (*)
|    |    |    +--- com.google.api.grpc:proto-google-common-protos:2.23.0 (*)
|    |    |    +--- com.google.auth:google-auth-library-credentials:1.19.0
|    |    |    +--- com.google.guava:guava:32.1.2-jre FAILED
|    |    |    +--- io.grpc:grpc-api:1.56.1
|    |    |    |    +--- io.grpc:grpc-context:1.56.1
|    |    |    |    +--- com.google.code.findbugs:jsr305:3.0.2
|    |    |    |    +--- com.google.errorprone:error_prone_annotations:2.18.0 -> 2.20.0
|    |    |    |    \--- com.google.guava:guava:31.1-android FAILED
|    |    |    +--- org.threeten:threetenbp:1.6.8
|    |    |    +--- com.google.auth:google-auth-library-oauth2-http:1.19.0 (*)
|    |    |    +--- io.grpc:grpc-alts:1.56.1
|    |    |    |    +--- io.grpc:grpc-auth:1.56.1
|    |    |    |    |    +--- io.grpc:grpc-api:1.56.1 (*)
|    |    |    |    |    +--- com.google.auth:google-auth-library-credentials:1.4.0 -> 1.19.0
|    |    |    |    |    \--- com.google.guava:guava:31.1-android FAILED
|    |    |    |    +--- io.grpc:grpc-grpclb:1.56.1
|    |    |    |    |    +--- io.grpc:grpc-core:1.56.1
|    |    |    |    |    |    +--- io.grpc:grpc-api:1.56.1 (*)
|    |    |    |    |    |    +--- com.google.code.gson:gson:2.10.1
|    |    |    |    |    |    +--- com.google.android:annotations:4.1.1.4
|    |    |    |    |    |    +--- com.google.errorprone:error_prone_annotations:2.18.0 -> 2.20.0
|    |    |    |    |    |    +--- com.google.guava:guava:31.1-android FAILED
|    |    |    |    |    |    \--- io.perfmark:perfmark-api:0.26.0
|    |    |    |    |    +--- io.grpc:grpc-protobuf:1.56.1
|    |    |    |    |    |    +--- io.grpc:grpc-api:1.56.1 (*)
|    |    |    |    |    |    +--- com.google.code.findbugs:jsr305:3.0.2
|    |    |    |    |    |    +--- com.google.protobuf:protobuf-java:3.22.3 -> 3.22.0
|    |    |    |    |    |    +--- com.google.api.grpc:proto-google-common-protos:2.17.0 -> 2.23.0 (*)
|    |    |    |    |    |    +--- io.grpc:grpc-protobuf-lite:1.56.1
|    |    |    |    |    |    |    +--- io.grpc:grpc-api:1.56.1 (*)
|    |    |    |    |    |    |    +--- com.google.code.findbugs:jsr305:3.0.2
|    |    |    |    |    |    |    \--- com.google.guava:guava:31.1-android FAILED
|    |    |    |    |    |    \--- com.google.guava:guava:31.1-android FAILED
|    |    |    |    |    +--- io.grpc:grpc-stub:1.56.1
|    |    |    |    |    |    +--- io.grpc:grpc-api:1.56.1 (*)
|    |    |    |    |    |    +--- com.google.guava:guava:31.1-android FAILED
|    |    |    |    |    |    \--- com.google.errorprone:error_prone_annotations:2.18.0 -> 2.20.0
|    |    |    |    |    +--- com.google.protobuf:protobuf-java:3.22.3 -> 3.22.0
|    |    |    |    |    +--- com.google.protobuf:protobuf-java-util:3.22.3 -> 3.22.0 (*)
|    |    |    |    |    +--- com.google.guava:guava:31.1-android FAILED
|    |    |    |    |    \--- com.google.errorprone:error_prone_annotations:2.18.0 -> 2.20.0
|    |    |    |    +--- io.grpc:grpc-protobuf:1.56.1 (*)
|    |    |    |    +--- io.grpc:grpc-stub:1.56.1 (*)
|    |    |    |    +--- com.google.protobuf:protobuf-java:3.22.3 -> 3.22.0
|    |    |    |    +--- org.conscrypt:conscrypt-openjdk-uber:2.5.2
|    |    |    |    +--- com.google.guava:guava:31.1-jre FAILED
|    |    |    |    \--- com.google.auth:google-auth-library-oauth2-http:1.4.0 -> 1.19.0 (*)
|    |    |    +--- io.grpc:grpc-auth:1.56.1 (*)
|    |    |    +--- io.grpc:grpc-protobuf:1.56.1 (*)
|    |    |    +--- io.grpc:grpc-stub:1.56.1 (*)
|    |    |    \--- io.grpc:grpc-googleapis:1.56.1
|    |    |         +--- io.grpc:grpc-api:1.56.1 (*)
|    |    |         +--- io.grpc:grpc-alts:1.56.1 (*)
|    |    |         +--- io.grpc:grpc-core:1.56.1 (*)
|    |    |         +--- io.grpc:grpc-xds:1.56.1
|    |    |         |    +--- io.grpc:grpc-protobuf:1.56.1 (*)
|    |    |         |    +--- io.grpc:grpc-stub:1.56.1 (*)
|    |    |         |    +--- io.opencensus:opencensus-proto:0.2.0
|    |    |         |    |    +--- com.google.protobuf:protobuf-java:3.5.1 -> 3.22.0
|    |    |         |    |    +--- io.grpc:grpc-protobuf:1.14.0 -> 1.56.1 (*)
|    |    |         |    |    \--- io.grpc:grpc-stub:1.14.0 -> 1.56.1 (*)
|    |    |         |    +--- io.grpc:grpc-core:1.56.1 (*)
|    |    |         |    +--- io.grpc:grpc-services:1.56.1
|    |    |         |    |    +--- io.grpc:grpc-protobuf:1.56.1 (*)
|    |    |         |    |    +--- io.grpc:grpc-stub:1.56.1 (*)
|    |    |         |    |    +--- io.grpc:grpc-core:1.56.1 (*)
|    |    |         |    |    +--- com.google.protobuf:protobuf-java-util:3.22.3 -> 3.22.0 (*)
|    |    |         |    |    +--- com.google.guava:guava:31.1-jre FAILED
|    |    |         |    |    \--- com.google.errorprone:error_prone_annotations:2.18.0 -> 2.20.0
|    |    |         |    +--- io.grpc:grpc-auth:1.56.1 (*)
|    |    |         |    +--- io.grpc:grpc-alts:1.56.1 (*)
|    |    |         |    +--- com.google.code.gson:gson:2.10.1
|    |    |         |    +--- com.google.re2j:re2j:1.7
|    |    |         |    +--- com.google.auto.value:auto-value-annotations:1.10.1 -> 1.10.2
|    |    |         |    \--- com.google.protobuf:protobuf-java-util:3.22.3 -> 3.22.0 (*)
|    |    |         \--- com.google.guava:guava:31.1-jre FAILED
|    |    +--- io.grpc:grpc-netty:1.56.1
|    |    |    +--- io.grpc:grpc-core:1.56.1 (*)
|    |    |    +--- io.netty:netty-codec-http2:4.1.87.Final -> 4.1.94.Final
|    |    |    |    +--- io.netty:netty-common:4.1.94.Final
|    |    |    |    +--- io.netty:netty-buffer:4.1.94.Final
|    |    |    |    |    \--- io.netty:netty-common:4.1.94.Final
|    |    |    |    +--- io.netty:netty-transport:4.1.94.Final
|    |    |    |    |    +--- io.netty:netty-common:4.1.94.Final
|    |    |    |    |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|    |    |    |    |    \--- io.netty:netty-resolver:4.1.94.Final
|    |    |    |    |         \--- io.netty:netty-common:4.1.94.Final
|    |    |    |    +--- io.netty:netty-codec:4.1.94.Final
|    |    |    |    |    +--- io.netty:netty-common:4.1.94.Final
|    |    |    |    |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|    |    |    |    |    \--- io.netty:netty-transport:4.1.94.Final (*)
|    |    |    |    +--- io.netty:netty-handler:4.1.94.Final
|    |    |    |    |    +--- io.netty:netty-common:4.1.94.Final
|    |    |    |    |    +--- io.netty:netty-resolver:4.1.94.Final (*)
|    |    |    |    |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|    |    |    |    |    +--- io.netty:netty-transport:4.1.94.Final (*)
|    |    |    |    |    +--- io.netty:netty-transport-native-unix-common:4.1.94.Final
|    |    |    |    |    |    +--- io.netty:netty-common:4.1.94.Final
|    |    |    |    |    |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|    |    |    |    |    |    \--- io.netty:netty-transport:4.1.94.Final (*)
|    |    |    |    |    \--- io.netty:netty-codec:4.1.94.Final (*)
|    |    |    |    \--- io.netty:netty-codec-http:4.1.94.Final
|    |    |    |         +--- io.netty:netty-common:4.1.94.Final
|    |    |    |         +--- io.netty:netty-buffer:4.1.94.Final (*)
|    |    |    |         +--- io.netty:netty-transport:4.1.94.Final (*)
|    |    |    |         +--- io.netty:netty-codec:4.1.94.Final (*)
|    |    |    |         \--- io.netty:netty-handler:4.1.94.Final (*)
|    |    |    +--- io.netty:netty-handler-proxy:4.1.87.Final -> 4.1.94.Final
|    |    |    |    +--- io.netty:netty-common:4.1.94.Final
|    |    |    |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|    |    |    |    +--- io.netty:netty-transport:4.1.94.Final (*)
|    |    |    |    +--- io.netty:netty-codec:4.1.94.Final (*)
|    |    |    |    +--- io.netty:netty-codec-socks:4.1.94.Final
|    |    |    |    |    +--- io.netty:netty-common:4.1.94.Final
|    |    |    |    |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|    |    |    |    |    +--- io.netty:netty-transport:4.1.94.Final (*)
|    |    |    |    |    \--- io.netty:netty-codec:4.1.94.Final (*)
|    |    |    |    \--- io.netty:netty-codec-http:4.1.94.Final (*)
|    |    |    +--- com.google.guava:guava:31.1-android FAILED
|    |    |    +--- com.google.errorprone:error_prone_annotations:2.18.0 -> 2.20.0
|    |    |    +--- io.perfmark:perfmark-api:0.26.0
|    |    |    \--- io.netty:netty-transport-native-unix-common:4.1.87.Final -> 4.1.94.Final (*)
|    |    \--- org.graalvm.sdk:graal-sdk:23.0.1
|    +--- com.google.cloud:google-cloud-bigquery:2.31.1
|    |    +--- com.google.cloud:google-cloud-core:2.22.0 (*)
|    |    +--- com.google.protobuf:protobuf-java-util:3.23.2 -> 3.22.0 (*)
|    |    +--- com.google.api.grpc:proto-google-common-protos:2.23.0 (*)
|    |    +--- com.google.api.grpc:proto-google-iam-v1:1.18.0 (*)
|    |    +--- com.google.auth:google-auth-library-credentials:1.19.0
|    |    +--- com.google.cloud:google-cloud-core-http:2.22.0
|    |    +--- com.google.api-client:google-api-client:2.2.0
|    |    +--- com.google.oauth-client:google-oauth-client:1.34.1
|    |    +--- com.google.http-client:google-http-client-apache-v2:1.43.3
|    |    +--- com.google.http-client:google-http-client-appengine:1.43.3
|    |    +--- com.google.api:gax-httpjson:2.32.0
|    |    +--- io.opencensus:opencensus-api:0.31.1 (*)
|    |    +--- io.opencensus:opencensus-contrib-http-util:0.31.1 (*)
|    |    +--- com.google.http-client:google-http-client-gson:1.43.3 (*)
|    |    +--- com.google.http-client:google-http-client:1.43.3 (*)
|    |    +--- org.apache.httpcomponents:httpclient:4.5.14 (*)
|    |    +--- org.apache.httpcomponents:httpcore:4.4.16
|    |    +--- com.google.j2objc:j2objc-annotations:2.8
|    |    +--- org.checkerframework:checker-compat-qual:2.5.5
|    |    +--- com.google.auth:google-auth-library-oauth2-http:1.19.0 (*)
|    |    +--- com.google.code.findbugs:jsr305:3.0.2
|    |    +--- com.google.apis:google-api-services-bigquery:v2-rev20230520-2.0.0
|    |    +--- com.google.api:api-common:2.15.0 (*)
|    |    +--- com.google.guava:guava:32.1.2-jre FAILED
|    |    +--- com.google.guava:failureaccess:1.0.1
|    |    +--- com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava FAILED
|    |    +--- com.google.api:gax:2.32.0 (*)
|    |    +--- org.threeten:threetenbp:1.6.8
|    |    +--- com.google.code.gson:gson:2.10.1
|    |    +--- org.threeten:threeten-extra:1.7.2
|    |    +--- com.google.protobuf:protobuf-java:3.23.2 -> 3.22.0
|    |    +--- com.google.cloud:google-cloud-bigquerystorage:2.41.1
|    |    +--- io.grpc:grpc-api:1.56.1 (*)
|    |    +--- io.grpc:grpc-context:1.56.1
|    |    +--- io.grpc:grpc-stub:1.56.1 (*)
|    |    +--- io.grpc:grpc-protobuf:1.56.1 (*)
|    |    +--- io.grpc:grpc-protobuf-lite:1.56.1 (*)
|    |    +--- com.google.auto.value:auto-value:1.10.2
|    |    +--- com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta1:0.165.1
|    |    +--- com.google.api.grpc:proto-google-cloud-bigquerystorage-v1beta2:0.165.1
|    |    +--- com.google.api:gax-grpc:2.32.0 (*)
|    |    +--- io.grpc:grpc-alts:1.56.1 (*)
|    |    +--- io.grpc:grpc-grpclb:1.56.1 (*)
|    |    +--- org.conscrypt:conscrypt-openjdk-uber:2.5.2
|    |    +--- io.grpc:grpc-auth:1.56.1 (*)
|    |    +--- io.grpc:grpc-googleapis:1.56.1 (*)
|    |    +--- org.json:json:20230618
|    |    +--- io.grpc:grpc-core:1.56.1 (*)
|    |    +--- com.google.android:annotations:4.1.1.4
|    |    +--- io.perfmark:perfmark-api:0.26.0
|    |    +--- commons-codec:commons-codec:1.15 -> 1.16.0
|    |    +--- com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1beta1:0.165.1
|    |    +--- com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1beta2:0.165.1
|    |    +--- com.google.api.grpc:grpc-google-cloud-bigquerystorage-v1:2.41.1
|    |    +--- com.google.api.grpc:proto-google-cloud-bigquerystorage-v1:2.41.1
|    |    +--- org.apache.arrow:arrow-vector:12.0.1
|    |    +--- org.apache.arrow:arrow-format:12.0.1
|    |    +--- com.fasterxml.jackson.core:jackson-core:2.15.2
|    |    |    \--- com.fasterxml.jackson:jackson-bom:2.15.2
|    |    |         +--- com.fasterxml.jackson.core:jackson-annotations:2.15.2 (c)
|    |    |         +--- com.fasterxml.jackson.core:jackson-core:2.15.2 (c)
|    |    |         +--- com.fasterxml.jackson.core:jackson-databind:2.15.2 (c)
|    |    |         \--- com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.15.2 (c)
|    |    +--- com.fasterxml.jackson.core:jackson-annotations:2.15.2
|    |    |    \--- com.fasterxml.jackson:jackson-bom:2.15.2 (*)
|    |    +--- com.fasterxml.jackson.core:jackson-databind:2.15.2
|    |    |    \--- com.fasterxml.jackson:jackson-bom:2.15.2 (*)
|    |    +--- com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.15.2
|    |    |    \--- com.fasterxml.jackson:jackson-bom:2.15.2 (*)
|    |    +--- io.netty:netty-common:4.1.82.Final -> 4.1.94.Final
|    |    +--- com.google.flatbuffers:flatbuffers-java:1.12.0
|    |    +--- org.slf4j:slf4j-api:1.7.25 -> 2.0.6
|    |    +--- org.apache.arrow:arrow-memory-core:12.0.1
|    |    +--- org.apache.arrow:arrow-memory-netty:12.0.1
|    |    +--- io.netty:netty-buffer:4.1.82.Final -> 4.1.94.Final (*)
|    |    \--- com.google.errorprone:error_prone_annotations:2.18.0 -> 2.20.0
|    \--- io.quarkus:quarkus-grpc-common:3.3.0 -> 3.3.2
|         +--- com.google.code.findbugs:jsr305:3.0.2
|         +--- io.vertx:vertx-grpc:4.4.4
|         |    +--- io.vertx:vertx-core:4.4.4
|         |    |    +--- io.netty:netty-common:4.1.94.Final
|         |    |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|         |    |    +--- io.netty:netty-transport:4.1.94.Final (*)
|         |    |    +--- io.netty:netty-handler:4.1.94.Final (*)
|         |    |    +--- io.netty:netty-handler-proxy:4.1.94.Final (*)
|         |    |    +--- io.netty:netty-codec-http:4.1.94.Final (*)
|         |    |    +--- io.netty:netty-codec-http2:4.1.94.Final (*)
|         |    |    +--- io.netty:netty-resolver:4.1.94.Final (*)
|         |    |    +--- io.netty:netty-resolver-dns:4.1.94.Final
|         |    |    |    +--- io.netty:netty-common:4.1.94.Final
|         |    |    |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|         |    |    |    +--- io.netty:netty-resolver:4.1.94.Final (*)
|         |    |    |    +--- io.netty:netty-transport:4.1.94.Final (*)
|         |    |    |    +--- io.netty:netty-codec:4.1.94.Final (*)
|         |    |    |    +--- io.netty:netty-codec-dns:4.1.94.Final
|         |    |    |    |    +--- io.netty:netty-common:4.1.94.Final
|         |    |    |    |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|         |    |    |    |    +--- io.netty:netty-transport:4.1.94.Final (*)
|         |    |    |    |    \--- io.netty:netty-codec:4.1.94.Final (*)
|         |    |    |    \--- io.netty:netty-handler:4.1.94.Final (*)
|         |    |    \--- com.fasterxml.jackson.core:jackson-core:2.15.0 -> 2.15.2 (*)
|         |    +--- io.grpc:grpc-netty:1.50.2 -> 1.56.1 (*)
|         |    +--- io.grpc:grpc-protobuf:1.50.2 -> 1.56.1 (*)
|         |    +--- io.grpc:grpc-stub:1.50.2 -> 1.56.1 (*)
|         |    \--- com.google.guava:guava:30.1.1-jre FAILED
|         +--- io.vertx:vertx-grpc-server:4.4.4
|         |    +--- io.vertx:vertx-grpc-common:4.4.4
|         |    |    +--- io.vertx:vertx-core:4.4.4 (*)
|         |    |    +--- io.grpc:grpc-protobuf:1.50.2 -> 1.56.1 (*)
|         |    |    +--- io.grpc:grpc-api:1.50.2 -> 1.56.1 (*)
|         |    |    \--- com.google.guava:guava:30.1.1-jre FAILED
|         |    \--- io.grpc:grpc-stub:1.50.2 -> 1.56.1 (*)
|         +--- io.vertx:vertx-grpc-client:4.4.4
|         |    +--- io.vertx:vertx-grpc-common:4.4.4 (*)
|         |    +--- io.grpc:grpc-stub:1.50.2 -> 1.56.1 (*)
|         |    \--- io.grpc:grpc-api:1.50.2 -> 1.56.1 (*)
|         \--- io.quarkus:quarkus-vertx:3.3.2
|              +--- io.quarkus:quarkus-arc:3.3.2 (*)
|              +--- io.quarkus:quarkus-netty:3.3.2
|              |    +--- io.netty:netty-codec:4.1.94.Final (*)
|              |    +--- io.netty:netty-codec-http:4.1.94.Final (*)
|              |    +--- io.netty:netty-codec-http2:4.1.94.Final (*)
|              |    +--- io.quarkus:quarkus-arc:3.3.2 (*)
|              |    +--- io.netty:netty-handler:4.1.94.Final (*)
|              |    +--- jakarta.enterprise:jakarta.enterprise.cdi-api:4.0.1 (*)
|              |    \--- com.aayushatharva.brotli4j:brotli4j:1.7.1 -> 1.12.0
|              |         \--- com.aayushatharva.brotli4j:service:1.12.0
|              +--- io.netty:netty-codec-haproxy:4.1.94.Final
|              |    +--- io.netty:netty-buffer:4.1.94.Final (*)
|              |    +--- io.netty:netty-transport:4.1.94.Final (*)
|              |    \--- io.netty:netty-codec:4.1.94.Final (*)
|              +--- io.smallrye.common:smallrye-common-annotation:2.1.0
|              +--- io.smallrye.common:smallrye-common-vertx-context:2.1.0
|              |    +--- io.vertx:vertx-core:4.3.8 -> 4.4.4 (*)
|              |    \--- io.smallrye.common:smallrye-common-constraint:2.1.0 (*)
|              +--- io.quarkus:quarkus-mutiny:3.3.2
|              |    +--- io.quarkus:quarkus-core:3.3.2 (*)
|              |    +--- io.smallrye.reactive:mutiny:2.3.1 (*)
|              |    +--- io.quarkus:quarkus-smallrye-context-propagation:3.3.2
|              |    |    +--- io.smallrye:smallrye-context-propagation:2.1.0
|              |    |    |    +--- org.eclipse.microprofile.context-propagation:microprofile-context-propagation-api:1.3
|              |    |    |    +--- org.eclipse.microprofile.config:microprofile-config-api:3.0.2 -> 3.0.3
|              |    |    |    +--- io.smallrye:smallrye-context-propagation-api:2.1.0
|              |    |    |    |    \--- org.eclipse.microprofile.context-propagation:microprofile-context-propagation-api:1.3
|              |    |    |    +--- io.smallrye:smallrye-context-propagation-storage:2.1.0
|              |    |    |    \--- org.jboss.threads:jboss-threads:3.4.2.Final -> 3.5.0.Final (*)
|              |    |    +--- jakarta.enterprise:jakarta.enterprise.cdi-api:4.0.1 (*)
|              |    |    +--- io.quarkus:quarkus-core:3.3.2 (*)
|              |    |    \--- io.quarkus:quarkus-arc:3.3.2 (*)
|              |    \--- io.smallrye.reactive:mutiny-smallrye-context-propagation:2.3.1
|              |         +--- org.eclipse.microprofile.context-propagation:microprofile-context-propagation-api:1.3
|              |         +--- io.smallrye.reactive:mutiny:2.3.1 (*)
|              |         \--- io.smallrye:smallrye-context-propagation:2.0.0 -> 2.1.0 (*)
|              +--- io.quarkus:quarkus-vertx-latebound-mdc-provider:3.3.2
|              |    \--- org.jboss.logmanager:jboss-logmanager-embedded:1.1.1 (*)
|              +--- io.smallrye.reactive:smallrye-mutiny-vertx-core:3.5.0
|              |    +--- io.smallrye.reactive:mutiny:2.3.0 -> 2.3.1 (*)
|              |    +--- io.smallrye.reactive:smallrye-mutiny-vertx-runtime:3.5.0
|              |    |    +--- io.smallrye.reactive:mutiny:2.3.0 -> 2.3.1 (*)
|              |    |    \--- io.vertx:vertx-core:4.4.4 (*)
|              |    +--- io.vertx:vertx-core:4.4.4 (*)
|              |    \--- io.smallrye.reactive:vertx-mutiny-generator:3.5.0
|              |         +--- io.smallrye.reactive:smallrye-mutiny-vertx-runtime:3.5.0 (*)
|              |         +--- io.vertx:vertx-codegen:4.4.4
|              |         |    \--- com.fasterxml.jackson.core:jackson-core:2.15.0 -> 2.15.2 (*)
|              |         \--- io.smallrye.common:smallrye-common-annotation:2.1.0
|              \--- io.smallrye:smallrye-fault-tolerance-vertx:6.2.6
\--- io.quarkus:quarkus-arc -> 3.3.2 (*)

(c) - A dependency constraint, not a dependency. The dependency affected by the constraint occurs elsewhere in the tree.
(*) - Indicates repeated occurrences of a transitive dependency subtree. Gradle expands transitive dependency subtrees only once per project; repeat occurrences only display the root of the subtree, followed by this annotation.

A web-based, searchable dependency report is available by adding the --scan option.

Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.

You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.

See https://docs.gradle.org/8.1.1/userguide/command_line_interface.html#sec:command_line_warnings

BUILD SUCCESSFUL in 728ms
1 actionable task: 1 executed

This seems to be a known issue in the guava project: google/guava#6642

And the suggested conflict resolution does the trick:

configurations.all {
  resolutionStrategy.capabilitiesResolution.withCapability("com.google.collections:google-collections") {
    select("com.google.guava:guava:0")
  }
  // and/or
  resolutionStrategy.capabilitiesResolution.withCapability("com.google.guava:listenablefuture") {
    select("com.google.guava:guava:0")
  }
}

From the release notes https://github.com/google/guava/releases/tag/v32.1.0#user-content-overlap

@geoand
Copy link
Contributor

geoand commented Sep 12, 2023

@jmini thanks a lot for posting this very useful information!

@snazy
Copy link
Contributor Author

snazy commented Dec 14, 2023

Seems like this is no longer an issue w/ 3.6.3.
Maybe @jmini can confirm as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants