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

feat(deps): import shared-dependencies bom and use maven-flatten-plugin #172

Merged
merged 4 commits into from Apr 26, 2020

Conversation

chingor13
Copy link
Contributor

@chingor13 chingor13 commented Apr 22, 2020

  • imports com.google.cloud:google-cloud-shared-dependencies to manage all common dependency versions for google-cloud-* clients
    • this should reduce the noise from renovate PRs as we can group multiple dependency updates in a single google-cloud-shared-dependencies update
    • this means we're actually version managing more dependencies than previously
  • introduces the flatten-maven-plugin which will "flatten" the pom and resolve all dependency versions including transitive ones. Below is an example of the flattened pom.xml that will be installed. It should resolve to the the same set of dependencies as if it were not flattened.
Flattened pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.google.cloud</groupId>
  <artifactId>google-cloud-spanner</artifactId>
  <version>1.53.0</version>
  <name>Google Cloud Spanner</name>
  <description>Java idiomatic client for Google Cloud Spanner.</description>
  <url>https://github.com/googleapis/java-spanner</url>
  <organization>
    <name>Google LLC</name>
  </organization>
  <licenses>
    <license>
      <name>Apache-2.0</name>
      <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
    </license>
  </licenses>
  <developers>
    <developer>
      <id>chingor</id>
      <name>Jeff Ching</name>
      <email>chingor@google.com</email>
      <organization>Google</organization>
      <roles>
        <role>Developer</role>
      </roles>
    </developer>
  </developers>
  <scm>
    <connection>scm:git:git@github.com:googleapis/java-spanner.git/google-cloud-spanner</connection>
    <developerConnection>scm:git:git@github.com:googleapis/java-spanner.git/google-cloud-spanner</developerConnection>
    <url>https://github.com/googleapis/java-spanner/google-cloud-spanner</url>
  </scm>
  <issueManagement>
    <system>GitHub Issues</system>
    <url>https://github.com/googleapis/java-spanner/issues</url>
  </issueManagement>
  <distributionManagement>
    <repository>
      <id>sonatype-nexus-staging</id>
      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
    </repository>
    <snapshotRepository>
      <id>sonatype-nexus-snapshots</id>
      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
    </snapshotRepository>
  </distributionManagement>
  <dependencies>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-api</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-context</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>error_prone_annotations</artifactId>
          <groupId>com.google.errorprone</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jsr305</artifactId>
          <groupId>com.google.code.findbugs</groupId>
        </exclusion>
        <exclusion>
          <artifactId>animal-sniffer-annotations</artifactId>
          <groupId>org.codehaus.mojo</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.errorprone</groupId>
      <artifactId>error_prone_annotations</artifactId>
      <version>2.3.4</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>org.codehaus.mojo</groupId>
      <artifactId>animal-sniffer-annotations</artifactId>
      <version>1.18</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-auth</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-api</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-auth-library-credentials</artifactId>
          <groupId>com.google.auth</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-context</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-core</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-api</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>gson</artifactId>
          <groupId>com.google.code.gson</groupId>
        </exclusion>
        <exclusion>
          <artifactId>annotations</artifactId>
          <groupId>com.google.android</groupId>
        </exclusion>
        <exclusion>
          <artifactId>error_prone_annotations</artifactId>
          <groupId>com.google.errorprone</groupId>
        </exclusion>
        <exclusion>
          <artifactId>perfmark-api</artifactId>
          <groupId>io.perfmark</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.android</groupId>
      <artifactId>annotations</artifactId>
      <version>4.1.1.4</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.perfmark</groupId>
      <artifactId>perfmark-api</artifactId>
      <version>0.19.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>jsr305</artifactId>
          <groupId>com.google.code.findbugs</groupId>
        </exclusion>
        <exclusion>
          <artifactId>error_prone_annotations</artifactId>
          <groupId>com.google.errorprone</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-netty-shaded</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-core</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-protobuf</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-api</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-common-protos</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-protobuf-lite</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-protobuf-lite</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-api</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>protobuf-javalite</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-stub</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-api</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.api</groupId>
      <artifactId>api-common</artifactId>
      <version>1.9.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>jsr305</artifactId>
          <groupId>com.google.code.findbugs</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>javax.annotation-api</artifactId>
          <groupId>javax.annotation</groupId>
        </exclusion>
        <exclusion>
          <artifactId>auto-value-annotations</artifactId>
          <groupId>com.google.auto.value</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>javax.annotation</groupId>
      <artifactId>javax.annotation-api</artifactId>
      <version>1.3.2</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.auto.value</groupId>
      <artifactId>auto-value-annotations</artifactId>
      <version>1.7</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.protobuf</groupId>
      <artifactId>protobuf-java</artifactId>
      <version>3.11.4</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.protobuf</groupId>
      <artifactId>protobuf-java-util</artifactId>
      <version>3.11.4</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>error_prone_annotations</artifactId>
          <groupId>com.google.errorprone</groupId>
        </exclusion>
        <exclusion>
          <artifactId>gson</artifactId>
          <groupId>com.google.code.gson</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.api.grpc</groupId>
      <artifactId>proto-google-common-protos</artifactId>
      <version>1.17.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.api.grpc</groupId>
      <artifactId>grpc-google-common-protos</artifactId>
      <version>1.17.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-stub</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-protobuf</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-common-protos</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.api.grpc</groupId>
      <artifactId>proto-google-iam-v1</artifactId>
      <version>0.13.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>api-common</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-common-protos</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>google-cloud-core</artifactId>
      <version>1.93.4</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>gax</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>auto-value-annotations</artifactId>
          <groupId>com.google.auto.value</groupId>
        </exclusion>
        <exclusion>
          <artifactId>protobuf-java-util</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-common-protos</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-iam-v1</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>threetenbp</artifactId>
          <groupId>org.threeten</groupId>
        </exclusion>
        <exclusion>
          <artifactId>api-common</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-auth-library-credentials</artifactId>
          <groupId>com.google.auth</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-auth-library-oauth2-http</artifactId>
          <groupId>com.google.auth</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-http-client</artifactId>
          <groupId>com.google.http-client</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-http-client-jackson2</artifactId>
          <groupId>com.google.http-client</groupId>
        </exclusion>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jsr305</artifactId>
          <groupId>com.google.code.findbugs</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.http-client</groupId>
      <artifactId>google-http-client-jackson2</artifactId>
      <version>1.34.2</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>google-http-client</artifactId>
          <groupId>com.google.http-client</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jackson-core</artifactId>
          <groupId>com.fasterxml.jackson.core</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-core</artifactId>
      <version>2.10.2</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.cloud</groupId>
      <artifactId>google-cloud-core-grpc</artifactId>
      <version>1.93.4</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>google-auth-library-credentials</artifactId>
          <groupId>com.google.auth</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-cloud-core</artifactId>
          <groupId>com.google.cloud</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>gax</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>gax-grpc</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>api-common</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-api</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-core</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-http-client</artifactId>
          <groupId>com.google.http-client</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.opencensus</groupId>
      <artifactId>opencensus-api</artifactId>
      <version>0.24.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-context</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.opencensus</groupId>
      <artifactId>opencensus-contrib-grpc-util</artifactId>
      <version>0.24.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>opencensus-api</artifactId>
          <groupId>io.opencensus</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-core</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.auth</groupId>
      <artifactId>google-auth-library-oauth2-http</artifactId>
      <version>0.20.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>auto-value-annotations</artifactId>
          <groupId>com.google.auto.value</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jsr305</artifactId>
          <groupId>com.google.code.findbugs</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-auth-library-credentials</artifactId>
          <groupId>com.google.auth</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-http-client</artifactId>
          <groupId>com.google.http-client</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-http-client-jackson2</artifactId>
          <groupId>com.google.http-client</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.http-client</groupId>
      <artifactId>google-http-client</artifactId>
      <version>1.34.2</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>httpclient</artifactId>
          <groupId>org.apache.httpcomponents</groupId>
        </exclusion>
        <exclusion>
          <artifactId>httpcore</artifactId>
          <groupId>org.apache.httpcomponents</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jsr305</artifactId>
          <groupId>com.google.code.findbugs</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>j2objc-annotations</artifactId>
          <groupId>com.google.j2objc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>opencensus-api</artifactId>
          <groupId>io.opencensus</groupId>
        </exclusion>
        <exclusion>
          <artifactId>opencensus-contrib-http-util</artifactId>
          <groupId>io.opencensus</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.httpcomponents</groupId>
      <artifactId>httpclient</artifactId>
      <version>4.5.11</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>httpcore</artifactId>
          <groupId>org.apache.httpcomponents</groupId>
        </exclusion>
        <exclusion>
          <artifactId>commons-logging</artifactId>
          <groupId>commons-logging</groupId>
        </exclusion>
        <exclusion>
          <artifactId>commons-codec</artifactId>
          <groupId>commons-codec</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
      <version>1.2</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>log4j</artifactId>
          <groupId>log4j</groupId>
        </exclusion>
        <exclusion>
          <artifactId>logkit</artifactId>
          <groupId>logkit</groupId>
        </exclusion>
        <exclusion>
          <artifactId>avalon-framework</artifactId>
          <groupId>avalon-framework</groupId>
        </exclusion>
        <exclusion>
          <artifactId>servlet-api</artifactId>
          <groupId>javax.servlet</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
      <version>1.11</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.httpcomponents</groupId>
      <artifactId>httpcore</artifactId>
      <version>4.4.13</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.j2objc</groupId>
      <artifactId>j2objc-annotations</artifactId>
      <version>1.3</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.opencensus</groupId>
      <artifactId>opencensus-contrib-http-util</artifactId>
      <version>0.24.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>opencensus-api</artifactId>
          <groupId>io.opencensus</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.api.grpc</groupId>
      <artifactId>proto-google-cloud-spanner-admin-instance-v1</artifactId>
      <version>1.53.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-common-protos</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>api-common</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-iam-v1</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.api.grpc</groupId>
      <artifactId>proto-google-cloud-spanner-v1</artifactId>
      <version>1.53.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-common-protos</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>api-common</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.api.grpc</groupId>
      <artifactId>proto-google-cloud-spanner-admin-database-v1</artifactId>
      <version>1.53.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-common-protos</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>api-common</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-iam-v1</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
      <version>29.0-android</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>failureaccess</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>listenablefuture</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jsr305</artifactId>
          <groupId>com.google.code.findbugs</groupId>
        </exclusion>
        <exclusion>
          <artifactId>checker-compat-qual</artifactId>
          <groupId>org.checkerframework</groupId>
        </exclusion>
        <exclusion>
          <artifactId>error_prone_annotations</artifactId>
          <groupId>com.google.errorprone</groupId>
        </exclusion>
        <exclusion>
          <artifactId>j2objc-annotations</artifactId>
          <groupId>com.google.j2objc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>srczip</artifactId>
          <groupId>jdk</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>failureaccess</artifactId>
      <version>1.0.1</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>listenablefuture</artifactId>
      <version>9999.0-empty-to-avoid-conflict-with-guava</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>org.checkerframework</groupId>
      <artifactId>checker-compat-qual</artifactId>
      <version>2.5.5</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.api</groupId>
      <artifactId>gax</artifactId>
      <version>1.56.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jsr305</artifactId>
          <groupId>com.google.code.findbugs</groupId>
        </exclusion>
        <exclusion>
          <artifactId>threetenbp</artifactId>
          <groupId>org.threeten</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-auth-library-oauth2-http</artifactId>
          <groupId>com.google.auth</groupId>
        </exclusion>
        <exclusion>
          <artifactId>api-common</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>opencensus-api</artifactId>
          <groupId>io.opencensus</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.api</groupId>
      <artifactId>gax-grpc</artifactId>
      <version>1.56.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>gax</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-stub</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-auth</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-protobuf</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>guava</artifactId>
          <groupId>com.google.guava</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jsr305</artifactId>
          <groupId>com.google.code.findbugs</groupId>
        </exclusion>
        <exclusion>
          <artifactId>threetenbp</artifactId>
          <groupId>org.threeten</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-auth-library-oauth2-http</artifactId>
          <groupId>com.google.auth</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-auth-library-credentials</artifactId>
          <groupId>com.google.auth</groupId>
        </exclusion>
        <exclusion>
          <artifactId>proto-google-common-protos</artifactId>
          <groupId>com.google.api.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>api-common</artifactId>
          <groupId>com.google.api</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-netty-shaded</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-alts</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-alts</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-grpclb</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-auth</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-core</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-netty-shaded</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-protobuf</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-stub</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>commons-lang3</artifactId>
          <groupId>org.apache.commons</groupId>
        </exclusion>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>conscrypt-openjdk-uber</artifactId>
          <groupId>org.conscrypt</groupId>
        </exclusion>
        <exclusion>
          <artifactId>google-auth-library-oauth2-http</artifactId>
          <groupId>com.google.auth</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>io.grpc</groupId>
      <artifactId>grpc-grpclb</artifactId>
      <version>1.28.1</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>grpc-core</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-protobuf</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>grpc-stub</artifactId>
          <groupId>io.grpc</groupId>
        </exclusion>
        <exclusion>
          <artifactId>protobuf-java</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
        <exclusion>
          <artifactId>protobuf-java-util</artifactId>
          <groupId>com.google.protobuf</groupId>
        </exclusion>
      </exclusions>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>org.conscrypt</groupId>
      <artifactId>conscrypt-openjdk-uber</artifactId>
      <version>2.2.1</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>org.threeten</groupId>
      <artifactId>threetenbp</artifactId>
      <version>1.4.3</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.code.findbugs</groupId>
      <artifactId>jsr305</artifactId>
      <version>3.0.2</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.8.6</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>com.google.auth</groupId>
      <artifactId>google-auth-library-credentials</artifactId>
      <version>0.20.0</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.5</version>
      <scope>compile</scope>
      <optional>false</optional>
    </dependency>
  </dependencies>
  <profiles>
    <profile>
      <id>java9</id>
      <activation>
        <jdk>[9,)</jdk>
      </activation>
      <dependencies>
        <dependency>
          <groupId>javax.annotation</groupId>
          <artifactId>javax.annotation-api</artifactId>
        </dependency>
      </dependencies>
    </profile>
  </profiles>
</project>

@googlebot googlebot added the cla: yes This human has signed the Contributor License Agreement. label Apr 22, 2020
@chingor13 chingor13 added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Apr 22, 2020
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Apr 22, 2020
@chingor13 chingor13 marked this pull request as ready for review April 22, 2020 17:25
Copy link
Contributor

@skuruppu skuruppu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't have any experience of how to configure this type of thing but the idea sounds great to me :)

@googlebot
Copy link

All (the pull request submitter and all commit authors) CLAs are signed, but one or more commits were authored or co-authored by someone other than the pull request submitter.

We need to confirm that all authors are ok with their commits being contributed to this project. Please have them confirm that by leaving a comment that contains only @googlebot I consent. in this pull request.

Note to project maintainer: There may be cases where the author cannot leave a comment, or the comment is not properly detected as consent. In those cases, you can manually confirm consent of the commit author(s), and set the cla label to yes (if enabled on your project).

ℹ️ Googlers: Go here for more info.

@googlebot googlebot added cla: no This human has *not* signed the Contributor License Agreement. and removed cla: yes This human has signed the Contributor License Agreement. labels Apr 24, 2020
@olavloite
Copy link
Collaborator

@googlebot I consent.

@googlebot
Copy link

CLAs look good, thanks!

ℹ️ Googlers: Go here for more info.

@googlebot googlebot added cla: yes This human has signed the Contributor License Agreement. and removed cla: no This human has *not* signed the Contributor License Agreement. labels Apr 24, 2020
Copy link
Collaborator

@olavloite olavloite left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.
I've added an ignore for m2e (Maven Eclipse plugin) to prevent errors when using this with Eclipse.

@olavloite
Copy link
Collaborator

The build failure is caused by #179

@olavloite olavloite added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Apr 26, 2020
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Apr 26, 2020
@olavloite olavloite merged commit 060a81a into master Apr 26, 2020
@olavloite olavloite deleted the flatten branch April 26, 2020 20:35
@olavloite olavloite restored the flatten branch June 24, 2020 16:46
rajatbhatta pushed a commit to rajatbhatta/java-spanner that referenced this pull request Nov 17, 2022
* tests: run integration tests against emulator

* test: run integration tests against emulator

* chore: update name of workflow

* test: skip test when there are no credentials

* test: change to docker based emulator tests
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla: yes This human has signed the Contributor License Agreement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants