diff --git a/.github/blunderbuss.yml b/.github/blunderbuss.yml index 1a23ea42b..2176b0543 100644 --- a/.github/blunderbuss.yml +++ b/.github/blunderbuss.yml @@ -1,5 +1,5 @@ # Configuration for the Blunderbuss GitHub app. For more info see -# https://github.com/googleapis/repo-automation-bots/tree/master/packages/blunderbuss +# https://github.com/googleapis/repo-automation-bots/tree/main/packages/blunderbuss assign_prs_by: - labels: - samples diff --git a/.github/sync-repo-settings.yaml b/.github/sync-repo-settings.yaml index 5c3b3bd12..aaee18453 100644 --- a/.github/sync-repo-settings.yaml +++ b/.github/sync-repo-settings.yaml @@ -2,7 +2,7 @@ rebaseMergeAllowed: false squashMergeAllowed: true mergeCommitAllowed: false branchProtectionRules: - - pattern: master + - pattern: main isAdminEnforced: true requiredApprovingReviewCount: 1 requiresCodeOwnerReviews: true diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 3becb5c02..2425d7234 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,7 +1,7 @@ on: push: branches: - - master + - main pull_request: name: ci jobs: @@ -9,14 +9,15 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - java: [8, 11] + java: [8, 11, 17] steps: - uses: actions/checkout@v2 - uses: stCarolas/setup-maven@v4 with: maven-version: 3.8.1 - - uses: actions/setup-java@v1 + - uses: actions/setup-java@v2 with: + distribution: zulu java-version: ${{matrix.java}} - run: java -version - run: .kokoro/build.sh @@ -29,8 +30,9 @@ jobs: - uses: stCarolas/setup-maven@v4 with: maven-version: 3.8.1 - - uses: actions/setup-java@v1 + - uses: actions/setup-java@v2 with: + distribution: zulu java-version: 8 - run: java -version - run: .kokoro/build.bat @@ -40,14 +42,15 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - java: [8, 11] + java: [8, 11, 17] steps: - uses: actions/checkout@v2 - uses: stCarolas/setup-maven@v4 with: maven-version: 3.8.1 - - uses: actions/setup-java@v1 + - uses: actions/setup-java@v2 with: + distribution: zulu java-version: ${{matrix.java}} - run: java -version - run: .kokoro/dependencies.sh @@ -58,8 +61,9 @@ jobs: - uses: stCarolas/setup-maven@v4 with: maven-version: 3.8.1 - - uses: actions/setup-java@v1 + - uses: actions/setup-java@v2 with: + distribution: zulu java-version: 8 - run: java -version - run: .kokoro/build.sh @@ -72,8 +76,9 @@ jobs: - uses: stCarolas/setup-maven@v4 with: maven-version: 3.8.1 - - uses: actions/setup-java@v1 + - uses: actions/setup-java@v2 with: + distribution: zulu java-version: 8 - run: java -version - run: .kokoro/build.sh diff --git a/.kokoro/dependencies.sh b/.kokoro/dependencies.sh index 9030ba8f9..9a5105d7e 100755 --- a/.kokoro/dependencies.sh +++ b/.kokoro/dependencies.sh @@ -28,7 +28,28 @@ source ${scriptDir}/common.sh java -version echo $JOB_TYPE -export MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=128m" +function determineMavenOpts() { + local javaVersion=$( + # filter down to the version line, then pull out the version between quotes, + # then trim the version number down to its minimal number (removing any + # update or suffix number). + java -version 2>&1 | grep "version" \ + | sed -E 's/^.*"(.*?)".*$/\1/g' \ + | sed -E 's/^(1\.[0-9]\.0).*$/\1/g' + ) + + case $javaVersion in + "17") + # MaxPermSize is no longer supported as of jdk 17 + echo -n "-Xmx1024m" + ;; + *) + echo -n "-Xmx1024m -XX:MaxPermSize=128m" + ;; + esac +} + +export MAVEN_OPTS=$(determineMavenOpts) # this should run maven enforcer retry_with_backoff 3 10 \ diff --git a/.repo-metadata.json b/.repo-metadata.json index 188b904e2..dcac615af 100644 --- a/.repo-metadata.json +++ b/.repo-metadata.json @@ -2,7 +2,7 @@ "name": "datastore", "name_pretty": "Cloud Datastore", "product_documentation": "https://cloud.google.com/datastore", - "client_documentation": "https://googleapis.dev/java/google-cloud-datastore/latest/index.html", + "client_documentation": "https://cloud.google.com/java/docs/reference/google-cloud-datastore/latest/history", "issue_tracker": "https://issuetracker.google.com/savedsearches/559768", "release_level": "ga", "language": "java", diff --git a/CHANGELOG.md b/CHANGELOG.md index a17b52c13..3c4093024 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +### [2.1.3](https://www.github.com/googleapis/java-datastore/compare/v2.1.2...v2.1.3) (2021-10-20) + + +### Dependencies + +* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.4.0 ([#559](https://www.github.com/googleapis/java-datastore/issues/559)) ([9d9afee](https://www.github.com/googleapis/java-datastore/commit/9d9afee9a6242c4670326ff1d091af48da26c459)) + ### [2.1.2](https://www.github.com/googleapis/java-datastore/compare/v2.1.1...v2.1.2) (2021-09-22) diff --git a/README.md b/README.md index cdb33ce13..c956dab0d 100644 --- a/README.md +++ b/README.md @@ -213,27 +213,27 @@ Testing This library has tools to help write tests for code that uses the Datastore. -See [TESTING.md](https://github.com/googleapis/google-cloud-java/blob/master/TESTING.md#testing-code-that-uses-datastore) to read more about testing. +See [TESTING.md](https://github.com/googleapis/google-cloud-java/blob/main/TESTING.md#testing-code-that-uses-datastore) to read more about testing. Example Applications -------------------- -- [`Bookshelf`](https://github.com/GoogleCloudPlatform/getting-started-java/tree/master/bookshelf) - An App Engine app that manages a virtual bookshelf. +- [`Bookshelf`](https://github.com/GoogleCloudPlatform/getting-started-java/tree/main/bookshelf) - An App Engine app that manages a virtual bookshelf. - This app uses `google-cloud` to interface with Cloud Datastore and Cloud Storage. It also uses Cloud SQL, another Google Cloud Platform service. -- [`Flexible Environment/Datastore example`](https://github.com/GoogleCloudPlatform/java-docs-samples/tree/master/flexible/datastore) - A simple app that uses Cloud Datastore to list the last 10 IP addresses that visited your site. -- [`SparkDemo`](https://github.com/GoogleCloudPlatform/java-docs-samples/blob/master/flexible/sparkjava) - An example of using `google-cloud-datastore` from within the SparkJava and App Engine Flexible Environment frameworks. - - Read about how it works on the example's [README page](https://github.com/GoogleCloudPlatform/java-docs-samples/tree/master/flexible/sparkjava#how-does-it-work). +- [`Flexible Environment/Datastore example`](https://github.com/GoogleCloudPlatform/java-docs-samples/tree/main/flexible/datastore) - A simple app that uses Cloud Datastore to list the last 10 IP addresses that visited your site. +- [`SparkDemo`](https://github.com/GoogleCloudPlatform/java-docs-samples/blob/main/flexible/sparkjava) - An example of using `google-cloud-datastore` from within the SparkJava and App Engine Flexible Environment frameworks. + - Read about how it works on the example's [README page](https://github.com/GoogleCloudPlatform/java-docs-samples/tree/main/flexible/sparkjava#how-does-it-work). ## Samples -Samples are in the [`samples/`](https://github.com/googleapis/java-datastore/tree/master/samples) directory. +Samples are in the [`samples/`](https://github.com/googleapis/java-datastore/tree/main/samples) directory. | Sample | Source Code | Try it | | --------------------------- | --------------------------------- | ------ | -| Quickstart Sample | [source code](https://github.com/googleapis/java-datastore/blob/master/samples/snippets/src/main/java/com/example/datastore/QuickstartSample.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-datastore&page=editor&open_in_editor=samples/snippets/src/main/java/com/example/datastore/QuickstartSample.java) | -| Task List | [source code](https://github.com/googleapis/java-datastore/blob/master/samples/snippets/src/main/java/com/google/datastore/snippets/TaskList.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-datastore&page=editor&open_in_editor=samples/snippets/src/main/java/com/google/datastore/snippets/TaskList.java) | +| Quickstart Sample | [source code](https://github.com/googleapis/java-datastore/blob/main/samples/snippets/src/main/java/com/example/datastore/QuickstartSample.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-datastore&page=editor&open_in_editor=samples/snippets/src/main/java/com/example/datastore/QuickstartSample.java) | +| Task List | [source code](https://github.com/googleapis/java-datastore/blob/main/samples/snippets/src/main/java/com/google/datastore/snippets/TaskList.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-datastore&page=editor&open_in_editor=samples/snippets/src/main/java/com/google/datastore/snippets/TaskList.java) | @@ -342,10 +342,10 @@ Java is a registered trademark of Oracle and/or its affiliates. [developer-console]: https://console.developers.google.com/ [create-project]: https://cloud.google.com/resource-manager/docs/creating-managing-projects [cloud-sdk]: https://cloud.google.com/sdk/ -[troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/master/troubleshooting/readme.md#troubleshooting -[contributing]: https://github.com/googleapis/java-datastore/blob/master/CONTRIBUTING.md -[code-of-conduct]: https://github.com/googleapis/java-datastore/blob/master/CODE_OF_CONDUCT.md#contributor-code-of-conduct -[license]: https://github.com/googleapis/java-datastore/blob/master/LICENSE +[troubleshooting]: https://github.com/googleapis/google-cloud-common/blob/main/troubleshooting/readme.md#troubleshooting +[contributing]: https://github.com/googleapis/java-datastore/blob/main/CONTRIBUTING.md +[code-of-conduct]: https://github.com/googleapis/java-datastore/blob/main/CODE_OF_CONDUCT.md#contributor-code-of-conduct +[license]: https://github.com/googleapis/java-datastore/blob/main/LICENSE [enable-api]: https://console.cloud.google.com/flows/enableapi?apiid=datastore.googleapis.com [libraries-bom]: https://github.com/GoogleCloudPlatform/cloud-opensource-java/wiki/The-Google-Cloud-Platform-Libraries-BOM diff --git a/datastore-v1-proto-client/pom.xml b/datastore-v1-proto-client/pom.xml index b40bc1761..9acfad51b 100644 --- a/datastore-v1-proto-client/pom.xml +++ b/datastore-v1-proto-client/pom.xml @@ -19,12 +19,12 @@ 4.0.0 com.google.cloud.datastore datastore-v1-proto-client - 2.1.2 + 2.1.3 com.google.cloud google-cloud-datastore-parent - 2.1.2 + 2.1.3 jar diff --git a/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/ChecksumEnforcingInputStream.java b/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/ChecksumEnforcingInputStream.java index 2b9674917..0b91f18e2 100644 --- a/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/ChecksumEnforcingInputStream.java +++ b/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/ChecksumEnforcingInputStream.java @@ -19,25 +19,22 @@ import com.google.common.annotations.VisibleForTesting; import java.io.IOException; import java.io.InputStream; -import java.security.MessageDigest; /** This class provides End-to-End Checksum API for http protocol. */ class ChecksumEnforcingInputStream extends InputStream { private final InputStream delegate; - private final MessageDigest messageDigest; + private final EndToEndChecksumHandler endToEndChecksumHandler; private final String expectedChecksum; - ChecksumEnforcingInputStream( - InputStream originalInputStream, HttpResponse response, MessageDigest digest) { - this(originalInputStream, EndToEndChecksumHandler.getChecksumHeader(response), digest); + ChecksumEnforcingInputStream(InputStream originalInputStream, HttpResponse response) { + this(originalInputStream, EndToEndChecksumHandler.getChecksumHeader(response)); } @VisibleForTesting - ChecksumEnforcingInputStream( - InputStream originalInputStream, String checksum, MessageDigest digest) { + ChecksumEnforcingInputStream(InputStream originalInputStream, String checksum) { delegate = originalInputStream; expectedChecksum = checksum; - messageDigest = digest; + endToEndChecksumHandler = new EndToEndChecksumHandler(); } @Override @@ -76,11 +73,10 @@ public int read(byte[] b, int off, int len) throws IOException { if (len <= 0) return 0; int i = delegate.read(b, off, len); if (i > 0) { - messageDigest.update(b, off, i); + endToEndChecksumHandler.update(b, off, i); } else { // no more payload to read. compute checksum and verify - if (!expectedChecksum.equalsIgnoreCase( - com.google.common.io.BaseEncoding.base16().encode(messageDigest.digest()))) { + if (!expectedChecksum.equalsIgnoreCase(endToEndChecksumHandler.hash())) { throw new IOException("possible memory corruption on payload detected"); } } diff --git a/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/EndToEndChecksumHandler.java b/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/EndToEndChecksumHandler.java index 06d08d499..01aa303c8 100644 --- a/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/EndToEndChecksumHandler.java +++ b/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/EndToEndChecksumHandler.java @@ -16,8 +16,9 @@ package com.google.datastore.v1.client; import com.google.api.client.http.HttpResponse; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; +import com.google.common.hash.HashCode; +import com.google.common.hash.Hasher; +import com.google.common.hash.Hashing; /** This class provides End-to-End Checksum API for http protocol. */ class EndToEndChecksumHandler { @@ -25,22 +26,25 @@ class EndToEndChecksumHandler { static final String HTTP_REQUEST_CHECKSUM_HEADER = "x-request-checksum-348659783"; /** The checksum http header on http responses */ static final String HTTP_RESPONSE_CHECKSUM_HEADER = "x-response-checksum-348659783"; - /** Algorithm used for checksum */ - private static final String MD5 = "MD5"; + + final Hasher hasher = EndToEndChecksumHandler.getNewCrc32cHasher(); /** * Create and return checksum as a string value for the input 'bytes'. * * @param bytes raw message for which the checksum is being computed * @return computed checksum as a hex string - * @throws RuntimeException if MD5 Algorithm is not found in the VM */ static String computeChecksum(byte[] bytes) { if (bytes == null || (bytes.length == 0)) { return null; } - return com.google.common.io.BaseEncoding.base16() - .encode(getMessageDigestInstance().digest(bytes)); + HashCode hc = getNewCrc32cHasher().putBytes(bytes).hash(); + return hc.toString(); + } + + private static Hasher getNewCrc32cHasher() { + return Hashing.crc32c().newHasher(); } /** @@ -58,14 +62,6 @@ static boolean validateChecksum(String checksum, byte[] bytes) { && checksum.equalsIgnoreCase(computeChecksum(bytes)); } - static MessageDigest getMessageDigestInstance() { - try { - return MessageDigest.getInstance(MD5); - } catch (NoSuchAlgorithmException e) { - throw new RuntimeException("MD5 algorithm is not found when computing checksum!"); - } - } - static boolean hasChecksumHeader(HttpResponse response) { String checksum = getChecksumHeader(response); return checksum != null && !checksum.isEmpty(); @@ -74,4 +70,12 @@ static boolean hasChecksumHeader(HttpResponse response) { static String getChecksumHeader(HttpResponse response) { return response.getHeaders().getFirstHeaderStringValue(HTTP_RESPONSE_CHECKSUM_HEADER); } + + void update(byte[] bytes, int off, int len) { + hasher.putBytes(bytes, off, len); + } + + String hash() { + return hasher.hash().toString(); + } } diff --git a/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/RemoteRpc.java b/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/RemoteRpc.java index 2c9d4d34e..321eea72a 100644 --- a/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/RemoteRpc.java +++ b/datastore-v1-proto-client/src/main/java/com/google/datastore/v1/client/RemoteRpc.java @@ -109,8 +109,7 @@ public InputStream call(String methodName, MessageLite request) throws Datastore } InputStream inputStream = httpResponse.getContent(); return enableE2EChecksum && EndToEndChecksumHandler.hasChecksumHeader(httpResponse) - ? new ChecksumEnforcingInputStream( - inputStream, httpResponse, EndToEndChecksumHandler.getMessageDigestInstance()) + ? new ChecksumEnforcingInputStream(inputStream, httpResponse) : inputStream; } catch (SocketTimeoutException e) { throw makeException(url, methodName, Code.DEADLINE_EXCEEDED, "Deadline exceeded", e); diff --git a/datastore-v1-proto-client/src/test/java/com/google/datastore/v1/client/ChecksumEnforcingInputStreamTest.java b/datastore-v1-proto-client/src/test/java/com/google/datastore/v1/client/ChecksumEnforcingInputStreamTest.java index 47592f987..dbe0e766a 100644 --- a/datastore-v1-proto-client/src/test/java/com/google/datastore/v1/client/ChecksumEnforcingInputStreamTest.java +++ b/datastore-v1-proto-client/src/test/java/com/google/datastore/v1/client/ChecksumEnforcingInputStreamTest.java @@ -21,7 +21,6 @@ import java.io.ByteArrayInputStream; import java.io.IOException; -import java.security.MessageDigest; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.JUnit4; @@ -29,8 +28,6 @@ /** Test for {@link ChecksumEnforcingInputStream}. */ @RunWith(JUnit4.class) public class ChecksumEnforcingInputStreamTest { - private final MessageDigest digest = EndToEndChecksumHandler.getMessageDigestInstance(); - public void test(int payloadSize) throws Exception { // read 1000 bytes at a time // Since checksum should be correct, do not expect IOException @@ -40,7 +37,7 @@ public void test(int payloadSize) throws Exception { // do nothing with the bytes read } } catch (IOException e) { - fail("checksum verification failed!"); + fail("checksum verification failed! " + e.getMessage()); } } @@ -66,9 +63,7 @@ public void read_withInvalidChecksum() { // Since checksum should be correct, do not expect IOException try (ChecksumEnforcingInputStream instance = new ChecksumEnforcingInputStream( - new ByteArrayInputStream("hello there".getBytes(UTF_8)), - "this checksum is invalid", - digest)) { + new ByteArrayInputStream("hello there".getBytes(UTF_8)), "this checksum is invalid")) { byte[] buf = new byte[1000]; while (instance.read(buf, 0, 1000) != -1) { // do nothing with the bytes read @@ -103,7 +98,6 @@ private ChecksumEnforcingInputStream setUpData(int payloadSize) throws Exception } byte[] bytes = payload.getBytes(UTF_8); String expectedChecksum = EndToEndChecksumHandler.computeChecksum(bytes); - return new ChecksumEnforcingInputStream( - new ByteArrayInputStream(bytes), expectedChecksum, digest); + return new ChecksumEnforcingInputStream(new ByteArrayInputStream(bytes), expectedChecksum); } } diff --git a/datastore-v1-proto-client/src/test/java/com/google/datastore/v1/client/RemoteRpcTest.java b/datastore-v1-proto-client/src/test/java/com/google/datastore/v1/client/RemoteRpcTest.java index b5f82369b..ebcb12396 100644 --- a/datastore-v1-proto-client/src/test/java/com/google/datastore/v1/client/RemoteRpcTest.java +++ b/datastore-v1-proto-client/src/test/java/com/google/datastore/v1/client/RemoteRpcTest.java @@ -174,7 +174,7 @@ public void testHttpHeaders_expectE2eChecksumHeader() throws IOException { httpRequest .getHeaders() .getFirstHeaderStringValue(EndToEndChecksumHandler.HTTP_REQUEST_CHECKSUM_HEADER); - assertEquals(32, header.length()); + assertEquals(8, header.length()); } @Test diff --git a/google-cloud-datastore-bom/pom.xml b/google-cloud-datastore-bom/pom.xml index d22cc9304..87e00820a 100644 --- a/google-cloud-datastore-bom/pom.xml +++ b/google-cloud-datastore-bom/pom.xml @@ -3,12 +3,12 @@ 4.0.0 com.google.cloud google-cloud-datastore-bom - 2.1.2 + 2.1.3 pom com.google.cloud google-cloud-shared-config - 1.0.3 + 1.1.0 Google Cloud datastore BOM @@ -52,12 +52,12 @@ com.google.api.grpc proto-google-cloud-datastore-v1 - 0.92.2 + 0.92.3 com.google.cloud google-cloud-datastore - 2.1.2 + 2.1.3 diff --git a/google-cloud-datastore/pom.xml b/google-cloud-datastore/pom.xml index 35a86c254..8752a4949 100644 --- a/google-cloud-datastore/pom.xml +++ b/google-cloud-datastore/pom.xml @@ -2,7 +2,7 @@ 4.0.0 google-cloud-datastore - 2.1.2 + 2.1.3 jar Google Cloud Datastore https://github.com/googleapis/java-datastore @@ -12,7 +12,7 @@ com.google.cloud google-cloud-datastore-parent - 2.1.2 + 2.1.3 google-cloud-datastore diff --git a/pom.xml b/pom.xml index 5a7835e39..f17d3d4a4 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-datastore-parent pom - 2.1.2 + 2.1.3 Google Cloud Datastore Parent https://github.com/googleapis/java-datastore @@ -14,7 +14,7 @@ com.google.cloud google-cloud-shared-config - 1.0.3 + 1.1.0 @@ -150,7 +150,7 @@ com.google.cloud google-cloud-shared-dependencies - 2.3.0 + 2.4.0 pom import @@ -158,12 +158,12 @@ com.google.api.grpc proto-google-cloud-datastore-v1 - 0.92.2 + 0.92.3 com.google.cloud.datastore datastore-v1-proto-client - 2.1.2 + 2.1.3 com.google.api.grpc diff --git a/proto-google-cloud-datastore-v1/pom.xml b/proto-google-cloud-datastore-v1/pom.xml index 7612408e2..25bdf9fb1 100644 --- a/proto-google-cloud-datastore-v1/pom.xml +++ b/proto-google-cloud-datastore-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-datastore-v1 - 0.92.2 + 0.92.3 proto-google-cloud-datastore-v1 PROTO library for proto-google-cloud-datastore-v1 com.google.cloud google-cloud-datastore-parent - 2.1.2 + 2.1.3 diff --git a/renovate.json b/renovate.json index 7bbedfd56..2f6e8a062 100644 --- a/renovate.json +++ b/renovate.json @@ -70,8 +70,5 @@ } ], "semanticCommits": true, - "dependencyDashboard": true, - "dependencyDashboardLabels": [ - "type: process" - ] + "dependencyDashboard": true } diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 473298a6d..9ebf579a5 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -29,7 +29,7 @@ com.google.cloud google-cloud-datastore - 2.1.0 + 2.1.2 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index f0c9206ef..99bd4d939 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -28,7 +28,7 @@ com.google.cloud google-cloud-datastore - 2.1.0 + 2.1.2 diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index 58abbe3d5..7e6533348 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -30,7 +30,7 @@ com.google.cloud libraries-bom - 23.0.0 + 23.1.0 pom import diff --git a/synth.metadata b/synth.metadata index b7575f946..09d17998c 100644 --- a/synth.metadata +++ b/synth.metadata @@ -4,7 +4,7 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/java-datastore.git", - "sha": "df53434ad07f2402b8ead655ab68909ae78a9789" + "sha": "baddb6a311134d64b5e5894b661a7f7191c1b325" } }, { @@ -19,7 +19,7 @@ "git": { "name": "synthtool", "remote": "https://github.com/googleapis/synthtool.git", - "sha": "396d9b84a1e93880f5bf88b59ecd38a0a6dffc5e" + "sha": "a4be3384ccb92364795d981f2863f6986fcee620" } } ], diff --git a/versions.txt b/versions.txt index a5a09d477..fa67597e0 100644 --- a/versions.txt +++ b/versions.txt @@ -1,9 +1,9 @@ # Format: # module:released-version:current-version -google-cloud-datastore:2.1.2:2.1.2 -google-cloud-datastore-bom:2.1.2:2.1.2 -google-cloud-datastore-parent:2.1.2:2.1.2 -proto-google-cloud-datastore-v1:0.92.2:0.92.2 -datastore-v1-proto-client:2.1.2:2.1.2 +google-cloud-datastore:2.1.3:2.1.3 +google-cloud-datastore-bom:2.1.3:2.1.3 +google-cloud-datastore-parent:2.1.3:2.1.3 +proto-google-cloud-datastore-v1:0.92.3:0.92.3 +datastore-v1-proto-client:2.1.3:2.1.3