From b4963769e8d273b44474a579035f7bc424cb4f46 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Thu, 26 May 2022 00:14:16 +0200 Subject: [PATCH 01/12] chore(deps): update dependency com.google.cloud:google-cloud-firestore to v3.2.0 (#963) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-firestore](https://togithub.com/googleapis/java-firestore) | `3.1.0` -> `3.2.0` | [![age](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-firestore/3.2.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-firestore/3.2.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-firestore/3.2.0/compatibility-slim/3.1.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-firestore/3.2.0/confidence-slim/3.1.0)](https://docs.renovatebot.com/merge-confidence/) | --- ### Configuration 📅 **Schedule**: At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Renovate will not automatically rebase this PR, because other commits have been found. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. ⚠ **Warning**: custom changes will be lost. --- This PR has been generated by [Mend Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/java-firestore). --- README.md | 6 +++--- samples/install-without-bom/pom.xml | 2 +- samples/snapshot/pom.xml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 7ad8136003..f9bc566350 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,7 @@ If you are using Maven without BOM, add this to your dependencies: com.google.cloud google-cloud-firestore - 3.1.0 + 3.2.0 ``` @@ -56,13 +56,13 @@ implementation 'com.google.cloud:google-cloud-firestore' If you are using Gradle without BOM, add this to your dependencies ```Groovy -implementation 'com.google.cloud:google-cloud-firestore:3.1.0' +implementation 'com.google.cloud:google-cloud-firestore:3.2.0' ``` If you are using SBT, add this to your dependencies ```Scala -libraryDependencies += "com.google.cloud" % "google-cloud-firestore" % "3.1.0" +libraryDependencies += "com.google.cloud" % "google-cloud-firestore" % "3.2.0" ``` ## Authentication diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index d6b9914a2a..a46b04ac94 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -29,7 +29,7 @@ com.google.cloud google-cloud-firestore - 3.1.0 + 3.2.0 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index ed3e78d9cc..daf907a5a6 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -28,7 +28,7 @@ com.google.cloud google-cloud-firestore - 3.1.0 + 3.2.0 From 1d869c8fbe5e4009bbded2fb24f978f7cf48c515 Mon Sep 17 00:00:00 2001 From: cherylEnkidu <96084918+cherylEnkidu@users.noreply.github.com> Date: Thu, 26 May 2022 12:10:01 -0400 Subject: [PATCH 02/12] feat: add logical termination for RunQueryResponse (#956) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: add logical termination for RunQueryResponse * Add one test and comments * Change code based on feedback * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * add comments * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: Owl Bot --- .../com/google/cloud/firestore/Query.java | 20 +++++ .../cloud/firestore/LocalFirestoreHelper.java | 35 ++++++++ .../com/google/cloud/firestore/QueryTest.java | 81 +++++++++++++++++++ 3 files changed, 136 insertions(+) diff --git a/google-cloud-firestore/src/main/java/com/google/cloud/firestore/Query.java b/google-cloud-firestore/src/main/java/com/google/cloud/firestore/Query.java index c8dac33964..fd6a7a1011 100644 --- a/google-cloud-firestore/src/main/java/com/google/cloud/firestore/Query.java +++ b/google-cloud-firestore/src/main/java/com/google/cloud/firestore/Query.java @@ -1330,6 +1330,8 @@ public void stream(@Nonnull final ApiStreamObserver responseOb internalStream( new QuerySnapshotObserver() { + boolean hasCompleted = false; + @Override public void onNext(QueryDocumentSnapshot documentSnapshot) { responseObserver.onNext(documentSnapshot); @@ -1342,6 +1344,8 @@ public void onError(Throwable throwable) { @Override public void onCompleted() { + if (hasCompleted) return; + hasCompleted = true; responseObserver.onCompleted(); } }, @@ -1537,6 +1541,16 @@ public void onResponse(RunQueryResponse response) { if (readTime == null) { readTime = Timestamp.fromProto(response.getReadTime()); } + + if (response.hasDone() && response.getDone()) { + Tracing.getTracer() + .getCurrentSpan() + .addAnnotation( + "Firestore.Query: Completed", + ImmutableMap.of( + "numDocuments", AttributeValue.longAttributeValue(numDocuments))); + documentObserver.onCompleted(readTime); + } } @Override @@ -1640,6 +1654,9 @@ ApiFuture get(@Nullable ByteString transactionId) { internalStream( new QuerySnapshotObserver() { final List documentSnapshots = new ArrayList<>(); + // The stream's onCompleted could be called more than once, + // this flag makes sure only the first one is actually processed. + boolean hasCompleted = false; @Override public void onNext(QueryDocumentSnapshot documentSnapshot) { @@ -1653,6 +1670,9 @@ public void onError(Throwable throwable) { @Override public void onCompleted() { + if (hasCompleted) return; + hasCompleted = true; + // The results for limitToLast queries need to be flipped since we reversed the // ordering constraints before sending the query to the backend. List resultView = diff --git a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/LocalFirestoreHelper.java b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/LocalFirestoreHelper.java index e73241a002..38f853e7e8 100644 --- a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/LocalFirestoreHelper.java +++ b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/LocalFirestoreHelper.java @@ -311,6 +311,29 @@ public static Answer queryResponse( return streamingResponse(responses, throwable); } + /** Returns a stream of responses when RunQueryResponse.done set to true */ + public static Answer queryResponseWithDone( + boolean callWithoutOnComplete, String... documentNames) { + RunQueryResponse[] responses = new RunQueryResponse[documentNames.length]; + + for (int i = 0; i < documentNames.length; ++i) { + final RunQueryResponse.Builder runQueryResponse = RunQueryResponse.newBuilder(); + runQueryResponse.setDocument( + Document.newBuilder().setName(documentNames[i]).putAllFields(SINGLE_FIELD_PROTO)); + runQueryResponse.setReadTime( + com.google.protobuf.Timestamp.newBuilder().setSeconds(1).setNanos(2)); + if (i == (documentNames.length - 1)) { + runQueryResponse.setDone(true); + } + responses[i] = runQueryResponse.build(); + } + if (callWithoutOnComplete) { + return streamingResponseWithoutOnComplete(responses); + } else { + return streamingResponse(responses, null); + } + } + /** Returns a stream of responses followed by an optional exception. */ public static Answer streamingResponse( final T[] response, @Nullable final Throwable throwable) { @@ -328,6 +351,18 @@ public static Answer streamingResponse( }; } + /** Returns a stream of responses even though onComplete() wasn't triggered */ + public static Answer streamingResponseWithoutOnComplete(final T[] response) { + return invocation -> { + Object[] args = invocation.getArguments(); + ResponseObserver observer = (ResponseObserver) args[1]; + for (T resp : response) { + observer.onResponse(resp); + } + return null; + }; + } + public static ApiFuture commitResponse(int adds, int deletes) { CommitResponse.Builder commitResponse = CommitResponse.newBuilder(); commitResponse.getCommitTimeBuilder().setSeconds(0).setNanos(0); diff --git a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/QueryTest.java b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/QueryTest.java index 90520e3c5c..061d345f6d 100644 --- a/google-cloud-firestore/src/test/java/com/google/cloud/firestore/QueryTest.java +++ b/google-cloud-firestore/src/test/java/com/google/cloud/firestore/QueryTest.java @@ -27,6 +27,7 @@ import static com.google.cloud.firestore.LocalFirestoreHelper.order; import static com.google.cloud.firestore.LocalFirestoreHelper.query; import static com.google.cloud.firestore.LocalFirestoreHelper.queryResponse; +import static com.google.cloud.firestore.LocalFirestoreHelper.queryResponseWithDone; import static com.google.cloud.firestore.LocalFirestoreHelper.reference; import static com.google.cloud.firestore.LocalFirestoreHelper.select; import static com.google.cloud.firestore.LocalFirestoreHelper.startAt; @@ -952,6 +953,86 @@ public void onCompleted() { semaphore.acquire(); } + @Test + public void successfulReturnWithoutOnComplete() throws Exception { + doAnswer( + queryResponseWithDone( + /* callWithoutOnComplete */ true, DOCUMENT_NAME + "1", DOCUMENT_NAME + "2")) + .when(firestoreMock) + .streamRequest( + runQuery.capture(), + streamObserverCapture.capture(), + Matchers.any()); + + final Semaphore semaphore = new Semaphore(0); + final Iterator iterator = Arrays.asList("doc1", "doc2").iterator(); + + query.stream( + new ApiStreamObserver() { + @Override + public void onNext(DocumentSnapshot documentSnapshot) { + assertEquals(iterator.next(), documentSnapshot.getId()); + } + + @Override + public void onError(Throwable throwable) { + fail(); + } + + @Override + public void onCompleted() { + semaphore.release(); + } + }); + + semaphore.acquire(); + } + + @Test + /** + * onComplete() will be called twice. The first time is when it detects RunQueryResponse.done set + * to true. The second time is when it receives half close + */ + public void successfulReturnCallsOnCompleteTwice() throws Exception { + doAnswer( + queryResponseWithDone( + /* callWithoutOnComplete */ false, DOCUMENT_NAME + "1", DOCUMENT_NAME + "2")) + .when(firestoreMock) + .streamRequest( + runQuery.capture(), + streamObserverCapture.capture(), + Matchers.any()); + + final Semaphore semaphore = new Semaphore(0); + final Iterator iterator = Arrays.asList("doc1", "doc2").iterator(); + final int[] counter = {0}; + + query.stream( + new ApiStreamObserver() { + @Override + public void onNext(DocumentSnapshot documentSnapshot) { + assertEquals(iterator.next(), documentSnapshot.getId()); + } + + @Override + public void onError(Throwable throwable) { + fail(); + } + + @Override + public void onCompleted() { + counter[0]++; + semaphore.release(); + } + }); + + semaphore.acquire(); + + // Wait for some time to see whether onCompleted() has been called more than once + Thread.sleep(200); + assertEquals(1, counter[0]); + } + @Test public void retriesAfterRetryableError() throws Exception { final boolean[] returnError = new boolean[] {true}; From cb576fdd9698bf98bed6ec87db888121d5893b6a Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Mon, 6 Jun 2022 19:22:18 +0200 Subject: [PATCH 03/12] test(deps): update dependency com.google.cloud:google-cloud-conformance-tests to v0.3.0 (#905) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-conformance-tests](https://togithub.com/googleapis/java-shared-config) | `0.2.7` -> `0.3.0` | [![age](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-conformance-tests/0.3.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-conformance-tests/0.3.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-conformance-tests/0.3.0/compatibility-slim/0.2.7)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-conformance-tests/0.3.0/confidence-slim/0.2.7)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
googleapis/java-shared-config ### [`v0.3.0`](https://togithub.com/googleapis/java-shared-config/blob/HEAD/CHANGELOG.md#​030-httpswwwgithubcomgoogleapisjava-shared-configcomparev021v030-2019-11-14) ##### Features - add profile which allows the use of snapshots ([#​38](https://www.togithub.com/googleapis/java-shared-config/issues/38)) ([678d898](https://www.github.com/googleapis/java-shared-config/commit/678d8984fb6663191a2ec1691db723ccf60b0c23)) ##### Bug Fixes - bump release staging timeout to 15 minutes ([#​42](https://www.togithub.com/googleapis/java-shared-config/issues/42)) ([3261d94](https://www.github.com/googleapis/java-shared-config/commit/3261d948b6ea941bc81d8c5347d8a37332e5159e)) - only look at src/main and src/test for checkstyle ([#​56](https://www.togithub.com/googleapis/java-shared-config/issues/56)) ([00bbe4c](https://www.github.com/googleapis/java-shared-config/commit/00bbe4cb3ce0c760a7a7a40d7cd10449b2268c43)) - remove autovalue profiles ([#​62](https://www.togithub.com/googleapis/java-shared-config/issues/62)) ([07258db](https://www.github.com/googleapis/java-shared-config/commit/07258dbbc12baa549ac7a3314c7efd3f77703558)) ##### Dependencies - update dependency org.apache.maven.plugins:maven-jar-plugin to v3.2.0 ([#​59](https://www.togithub.com/googleapis/java-shared-config/issues/59)) ([ab2f4ba](https://www.github.com/googleapis/java-shared-config/commit/ab2f4ba6b4522e34a277017f9e5bc56bcedab823)) - update dependency org.apache.maven.plugins:maven-source-plugin to v3.2.0 ([#​60](https://www.togithub.com/googleapis/java-shared-config/issues/60)) ([8621c23](https://www.github.com/googleapis/java-shared-config/commit/8621c23260e3751dfc14510d2035fa55685d2d10)) - update dependency org.jacoco:jacoco-maven-plugin to v0.8.5 ([#​46](https://www.togithub.com/googleapis/java-shared-config/issues/46)) ([f2fcc2f](https://www.github.com/googleapis/java-shared-config/commit/f2fcc2f4ba259cda43daeb62b23c943c4c87ac7c)) ##### [0.2.1](https://www.github.com/googleapis/java-shared-config/compare/v0.2.0...v0.2.1) (2019-10-08) ##### Bug Fixes - specify surefire-junit4 build dependency for offline tests ([#​37](https://www.togithub.com/googleapis/java-shared-config/issues/37)) ([f93f18e](https://www.github.com/googleapis/java-shared-config/commit/f93f18e))
--- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/java-firestore). --- google-cloud-firestore/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/google-cloud-firestore/pom.xml b/google-cloud-firestore/pom.xml index 25a2a2202d..1d499a6302 100644 --- a/google-cloud-firestore/pom.xml +++ b/google-cloud-firestore/pom.xml @@ -140,7 +140,7 @@ com.google.cloud google-cloud-conformance-tests - 0.2.7 + 0.3.0 test From 963e384b254056b6879744ba0b5d69fc0699f0bf Mon Sep 17 00:00:00 2001 From: Mridula <66699525+mpeddada1@users.noreply.github.com> Date: Tue, 14 Jun 2022 14:44:02 -0400 Subject: [PATCH 04/12] fix: add build script for JDK 17 native image testing (#965) * fix: add build script for JDK 17 native image testing --- .kokoro/build.sh | 5 +++++ .kokoro/presubmit/graalvm-native-17.cfg | 27 +++++++++++++++++++++++++ owlbot.py | 3 ++- 3 files changed, 34 insertions(+), 1 deletion(-) create mode 100644 .kokoro/presubmit/graalvm-native-17.cfg diff --git a/.kokoro/build.sh b/.kokoro/build.sh index d4f07415d9..c1c6a48ff7 100755 --- a/.kokoro/build.sh +++ b/.kokoro/build.sh @@ -74,6 +74,11 @@ graalvm) mvn -B ${INTEGRATION_TEST_ARGS} -ntp -Pnative -Penable-integration-tests test RETURN_CODE=$? ;; +graalvm17) + # Run Unit and Integration Tests with Native Image + mvn -B ${INTEGRATION_TEST_ARGS} -ntp -Pnative -Penable-integration-tests test + RETURN_CODE=$? + ;; samples) SAMPLES_DIR=samples # only run ITs in snapshot/ on presubmit PRs. run ITs in all 3 samples/ subdirectories otherwise. diff --git a/.kokoro/presubmit/graalvm-native-17.cfg b/.kokoro/presubmit/graalvm-native-17.cfg new file mode 100644 index 0000000000..833f9269bb --- /dev/null +++ b/.kokoro/presubmit/graalvm-native-17.cfg @@ -0,0 +1,27 @@ +# Format: //devtools/kokoro/config/proto/build.proto + +# Configure the docker image for kokoro-trampoline. +env_vars: { + key: "TRAMPOLINE_IMAGE" + value: "gcr.io/cloud-devrel-kokoro-resources/graalvm17" +} + +env_vars: { + key: "JOB_TYPE" + value: "graalvm17" +} + +env_vars: { + key: "GCLOUD_PROJECT" + value: "java-review" +} + +env_vars: { + key: "GOOGLE_APPLICATION_CREDENTIALS" + value: "secret_manager/java-review_firestore-java-it" +} + +env_vars: { + key: "SECRET_MANAGER_KEYS" + value: "java-review_firestore-java-it" +} \ No newline at end of file diff --git a/owlbot.py b/owlbot.py index 37229a3067..55984884f6 100644 --- a/owlbot.py +++ b/owlbot.py @@ -83,5 +83,6 @@ '.kokoro/presubmit/samples.cfg', '.kokoro/nightly/integration.cfg', '.kokoro/nightly/java11-integration.cfg', - '.kokoro/nightly/samples.cfg' + '.kokoro/nightly/samples.cfg', + '.kokoro/build.sh' ]) \ No newline at end of file From c4fc6b6a9738bd79c479eebab46c8485487c9e97 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Tue, 21 Jun 2022 18:22:29 +0200 Subject: [PATCH 05/12] build(deps): update dependency com.google.cloud:google-cloud-shared-config to v1.5.0 (#968) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-shared-config](https://togithub.com/googleapis/java-shared-config) | `1.4.0` -> `1.5.0` | [![age](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-config/1.5.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-config/1.5.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-config/1.5.0/compatibility-slim/1.4.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-config/1.5.0/confidence-slim/1.4.0)](https://docs.renovatebot.com/merge-confidence/) | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Renovate will not automatically rebase this PR, because other commits have been found. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. ⚠ **Warning**: custom changes will be lost. --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/java-firestore). --- README.md | 2 +- google-cloud-firestore-bom/pom.xml | 2 +- pom.xml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index f9bc566350..7170b364ab 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,7 @@ If you are using Maven without BOM, add this to your dependencies: If you are using Gradle 5.x or later, add this to your dependencies ```Groovy -implementation platform('com.google.cloud:libraries-bom:25.3.0') +implementation platform('com.google.cloud:libraries-bom:25.4.0') implementation 'com.google.cloud:google-cloud-firestore' ``` diff --git a/google-cloud-firestore-bom/pom.xml b/google-cloud-firestore-bom/pom.xml index a832fe8aff..cb74c5bda6 100644 --- a/google-cloud-firestore-bom/pom.xml +++ b/google-cloud-firestore-bom/pom.xml @@ -8,7 +8,7 @@ com.google.cloud google-cloud-shared-config - 1.4.0 + 1.5.0 Google Cloud Firestore BOM diff --git a/pom.xml b/pom.xml index 3e2bd62799..ac6915b2d2 100644 --- a/pom.xml +++ b/pom.xml @@ -14,7 +14,7 @@ com.google.cloud google-cloud-shared-config - 1.4.0 + 1.5.0 From bfb4ec9f9de6114259328bbe9a14c0cc7fae84c8 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Wed, 22 Jun 2022 02:06:31 +0200 Subject: [PATCH 06/12] deps: update dependency org.graalvm.buildtools:native-maven-plugin to v0.9.12 (#973) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [org.graalvm.buildtools:native-maven-plugin](https://togithub.com/graalvm/native-build-tools) | `0.9.11` -> `0.9.12` | [![age](https://badges.renovateapi.com/packages/maven/org.graalvm.buildtools:native-maven-plugin/0.9.12/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/org.graalvm.buildtools:native-maven-plugin/0.9.12/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/org.graalvm.buildtools:native-maven-plugin/0.9.12/compatibility-slim/0.9.11)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/org.graalvm.buildtools:native-maven-plugin/0.9.12/confidence-slim/0.9.11)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
graalvm/native-build-tools ### [`v0.9.12`](https://togithub.com/graalvm/native-build-tools/releases/tag/0.9.12) [Compare Source](https://togithub.com/graalvm/native-build-tools/compare/0.9.11...0.9.12) ##### What's Changed Read what's new in the [documentation](https://graalvm.github.io/native-build-tools/latest/index.html#changelog). - Add Mockito / Byte Buddy support documentation by [@​lazar-mitrovic](https://togithub.com/lazar-mitrovic) in [https://github.com/graalvm/native-build-tools/pull/236](https://togithub.com/graalvm/native-build-tools/pull/236) - Prevent builds from failing if no test list is present by [@​lazar-mitrovic](https://togithub.com/lazar-mitrovic) in [https://github.com/graalvm/native-build-tools/pull/239](https://togithub.com/graalvm/native-build-tools/pull/239) - Support different agent modes in the native-image Gradle plugin by [@​gradinac](https://togithub.com/gradinac) in [https://github.com/graalvm/native-build-tools/pull/230](https://togithub.com/graalvm/native-build-tools/pull/230) - JVM Reachability Metadata support for Maven by [@​alvarosanchez](https://togithub.com/alvarosanchez) in [https://github.com/graalvm/native-build-tools/pull/240](https://togithub.com/graalvm/native-build-tools/pull/240) - Warn about deprecated agent DSL by [@​gradinac](https://togithub.com/gradinac) in [https://github.com/graalvm/native-build-tools/pull/242](https://togithub.com/graalvm/native-build-tools/pull/242) - Rework Maven plugin by [@​lazar-mitrovic](https://togithub.com/lazar-mitrovic) in [https://github.com/graalvm/native-build-tools/pull/247](https://togithub.com/graalvm/native-build-tools/pull/247) - Add Gradle rich output support, configure default metadata URL on Maven by [@​lazar-mitrovic](https://togithub.com/lazar-mitrovic) in [https://github.com/graalvm/native-build-tools/pull/249](https://togithub.com/graalvm/native-build-tools/pull/249) - Fix wrong scope for test dependencies by [@​melix](https://togithub.com/melix) in [https://github.com/graalvm/native-build-tools/pull/251](https://togithub.com/graalvm/native-build-tools/pull/251) - Add documentation for alternative build systems. by [@​gradinac](https://togithub.com/gradinac) in [https://github.com/graalvm/native-build-tools/pull/248](https://togithub.com/graalvm/native-build-tools/pull/248) **Full Changelog**: https://github.com/graalvm/native-build-tools/compare/0.9.11...0.9.12
--- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/java-firestore). --- samples/native-image-sample/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/native-image-sample/pom.xml b/samples/native-image-sample/pom.xml index e7f3a9809e..60750d225c 100644 --- a/samples/native-image-sample/pom.xml +++ b/samples/native-image-sample/pom.xml @@ -110,7 +110,7 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd"> org.graalvm.buildtools native-maven-plugin - 0.9.11 + 0.9.12 true com.example.firestore.NativeImageFirestoreSample From 6def73dbdbdc645d1148b9cc8e390e307a6896d4 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Thu, 23 Jun 2022 17:26:31 +0200 Subject: [PATCH 07/12] deps: update dependency com.google.cloud:google-cloud-shared-dependencies to v2.13.0 (#974) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-shared-dependencies](https://togithub.com/googleapis/java-shared-dependencies) | `2.12.0` -> `2.13.0` | [![age](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-dependencies/2.13.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-dependencies/2.13.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-dependencies/2.13.0/compatibility-slim/2.12.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-dependencies/2.13.0/confidence-slim/2.12.0)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes
googleapis/java-shared-dependencies ### [`v2.13.0`](https://togithub.com/googleapis/java-shared-dependencies/blob/HEAD/CHANGELOG.md#​2130-httpsgithubcomgoogleapisjava-shared-dependenciescomparev2120v2130-2022-06-22) [Compare Source](https://togithub.com/googleapis/java-shared-dependencies/compare/v2.12.0...v2.13.0) ##### Dependencies - update dependency com.google.api-client:google-api-client-bom to v1.35.0 ([#​709](https://togithub.com/googleapis/java-shared-dependencies/issues/709)) ([239f8c3](https://togithub.com/googleapis/java-shared-dependencies/commit/239f8c33a11e233e6af79aee8c7e68cd156a0554)) - update dependency com.google.api-client:google-api-client-bom to v1.35.1 ([#​713](https://togithub.com/googleapis/java-shared-dependencies/issues/713)) ([6559b45](https://togithub.com/googleapis/java-shared-dependencies/commit/6559b45b027dba783a9525d35e32183d78773cbe)) - update dependency com.google.api:api-common to v2.2.1 ([#​710](https://togithub.com/googleapis/java-shared-dependencies/issues/710)) ([650d4c5](https://togithub.com/googleapis/java-shared-dependencies/commit/650d4c5f8c3cfce711257d47280ad773cd2e2414)) - update dependency com.google.errorprone:error_prone_annotations to v2.14.0 ([#​701](https://togithub.com/googleapis/java-shared-dependencies/issues/701)) ([d24730f](https://togithub.com/googleapis/java-shared-dependencies/commit/d24730f78669f80b109e590b903446e5552e3e36)) - update dependency com.google.http-client:google-http-client-bom to v1.42.0 ([#​711](https://togithub.com/googleapis/java-shared-dependencies/issues/711)) ([5168a18](https://togithub.com/googleapis/java-shared-dependencies/commit/5168a181722128d434a0d0d2ab5cc485686bbc78)) - update dependency com.google.oauth-client:google-oauth-client-bom to v1.34.0 ([#​708](https://togithub.com/googleapis/java-shared-dependencies/issues/708)) ([620336e](https://togithub.com/googleapis/java-shared-dependencies/commit/620336e6733e2017116e5e8a7b403b183a728bc1)) - update dependency com.google.oauth-client:google-oauth-client-bom to v1.34.1 ([#​712](https://togithub.com/googleapis/java-shared-dependencies/issues/712)) ([a2c18a5](https://togithub.com/googleapis/java-shared-dependencies/commit/a2c18a5bc4152cc9034cec691a29f54a35c38a51)) - update dependency com.google.protobuf:protobuf-bom to v3.21.0 ([#​703](https://togithub.com/googleapis/java-shared-dependencies/issues/703)) ([5f9fe12](https://togithub.com/googleapis/java-shared-dependencies/commit/5f9fe1200b4bdf4c54bf947c21bd3ed02f26f990)) - update dependency com.google.protobuf:protobuf-bom to v3.21.1 ([#​705](https://togithub.com/googleapis/java-shared-dependencies/issues/705)) ([c68edfb](https://togithub.com/googleapis/java-shared-dependencies/commit/c68edfbe7e1993e1112640b867b29aa2fbcf7579)) - update dependency io.grpc:grpc-bom to v1.47.0 ([#​707](https://togithub.com/googleapis/java-shared-dependencies/issues/707)) ([d02918a](https://togithub.com/googleapis/java-shared-dependencies/commit/d02918a0418cd65d1d247f27afb0637f1f8f5666)) - update dependency org.checkerframework:checker-qual to v3.22.1 ([#​706](https://togithub.com/googleapis/java-shared-dependencies/issues/706)) ([545843b](https://togithub.com/googleapis/java-shared-dependencies/commit/545843b492cead230b8cc72a1dae7d4922f33b39)) - update dependency org.checkerframework:checker-qual to v3.22.2 ([#​717](https://togithub.com/googleapis/java-shared-dependencies/issues/717)) ([142852a](https://togithub.com/googleapis/java-shared-dependencies/commit/142852a37140f221197f5c71aed451def353b1e0)) - update gax.version to v2.18.2 ([#​718](https://togithub.com/googleapis/java-shared-dependencies/issues/718)) ([5f8156e](https://togithub.com/googleapis/java-shared-dependencies/commit/5f8156e55c6a07b018a8c5efafa68be781b4288b)) - update google.common-protos.version to v2.9.0 ([#​714](https://togithub.com/googleapis/java-shared-dependencies/issues/714)) ([9e5591e](https://togithub.com/googleapis/java-shared-dependencies/commit/9e5591ec3035350450ecbfebd00e08216433b06c)) - update google.core.version to v2.8.0 ([#​719](https://togithub.com/googleapis/java-shared-dependencies/issues/719)) ([4023c60](https://togithub.com/googleapis/java-shared-dependencies/commit/4023c6063a2c5b5308da531df1a08c90c491965d)) - update iam.version to v1.4.0 ([#​700](https://togithub.com/googleapis/java-shared-dependencies/issues/700)) ([c1097a4](https://togithub.com/googleapis/java-shared-dependencies/commit/c1097a46ab0739b0b7234bc510e4c3d9ce2c2861)) - update iam.version to v1.4.1 ([#​716](https://togithub.com/googleapis/java-shared-dependencies/issues/716)) ([e2dc7c2](https://togithub.com/googleapis/java-shared-dependencies/commit/e2dc7c21c39e007878841e2664d548ec44a72d54))
--- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/java-firestore). --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ac6915b2d2..01e8d910a6 100644 --- a/pom.xml +++ b/pom.xml @@ -181,7 +181,7 @@ com.google.cloud google-cloud-shared-dependencies - 2.12.0 + 2.13.0 pom import From 6ef9f37b52de227d18e580ddbc319837c2352520 Mon Sep 17 00:00:00 2001 From: kolea2 <45548808+kolea2@users.noreply.github.com> Date: Mon, 27 Jun 2022 12:24:18 -0400 Subject: [PATCH 08/12] samples: firestore beam connector examples (#966) Note this normally would go in java-docs-samples, but putting here as this project is already configured for Firestore. --- README.md | 2 + samples/install-without-bom/pom.xml | 13 ++ samples/native-image-sample/pom.xml | 13 ++ samples/snapshot/pom.xml | 16 ++- samples/snippets/pom.xml | 13 ++ .../beam/ExampleFirestoreBeamRead.java | 135 ++++++++++++++++++ .../beam/ExampleFirestoreBeamWrite.java | 92 ++++++++++++ .../java/com/example/firestore/beam/README.md | 35 +++++ .../beam/ExampleFirestoreWriteReadTest.java | 109 ++++++++++++++ 9 files changed, 427 insertions(+), 1 deletion(-) create mode 100644 samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamRead.java create mode 100644 samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamWrite.java create mode 100644 samples/snippets/src/main/java/com/example/firestore/beam/README.md create mode 100644 samples/snippets/src/test/java/com/example/firestore/beam/ExampleFirestoreWriteReadTest.java diff --git a/README.md b/README.md index 7170b364ab..970c84fb8f 100644 --- a/README.md +++ b/README.md @@ -109,6 +109,8 @@ Samples are in the [`samples/`](https://github.com/googleapis/java-firestore/tre | Native Image Firestore Sample | [source code](https://github.com/googleapis/java-firestore/blob/main/samples/native-image-sample/src/main/java/com/example/firestore/NativeImageFirestoreSample.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-firestore&page=editor&open_in_editor=samples/native-image-sample/src/main/java/com/example/firestore/NativeImageFirestoreSample.java) | | Person | [source code](https://github.com/googleapis/java-firestore/blob/main/samples/native-image-sample/src/main/java/com/example/firestore/Person.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-firestore&page=editor&open_in_editor=samples/native-image-sample/src/main/java/com/example/firestore/Person.java) | | Quickstart | [source code](https://github.com/googleapis/java-firestore/blob/main/samples/snippets/src/main/java/com/example/firestore/Quickstart.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-firestore&page=editor&open_in_editor=samples/snippets/src/main/java/com/example/firestore/Quickstart.java) | +| Example Firestore Beam Read | [source code](https://github.com/googleapis/java-firestore/blob/main/samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamRead.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-firestore&page=editor&open_in_editor=samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamRead.java) | +| Example Firestore Beam Write | [source code](https://github.com/googleapis/java-firestore/blob/main/samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamWrite.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-firestore&page=editor&open_in_editor=samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamWrite.java) | | Listen Data Snippets | [source code](https://github.com/googleapis/java-firestore/blob/main/samples/snippets/src/main/java/com/example/firestore/snippets/ListenDataSnippets.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-firestore&page=editor&open_in_editor=samples/snippets/src/main/java/com/example/firestore/snippets/ListenDataSnippets.java) | | Manage Data Snippets | [source code](https://github.com/googleapis/java-firestore/blob/main/samples/snippets/src/main/java/com/example/firestore/snippets/ManageDataSnippets.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-firestore&page=editor&open_in_editor=samples/snippets/src/main/java/com/example/firestore/snippets/ManageDataSnippets.java) | | Query Data Snippets | [source code](https://github.com/googleapis/java-firestore/blob/main/samples/snippets/src/main/java/com/example/firestore/snippets/QueryDataSnippets.java) | [![Open in Cloud Shell][shell_img]](https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/googleapis/java-firestore&page=editor&open_in_editor=samples/snippets/src/main/java/com/example/firestore/snippets/QueryDataSnippets.java) | diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index a46b04ac94..8c4125c7ec 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -20,6 +20,7 @@ 1.8 1.8 + 2.39.0 UTF-8 @@ -33,6 +34,18 @@
+ + + org.apache.beam + beam-runners-direct-java + ${beam.version} + + + org.apache.beam + beam-runners-google-cloud-dataflow-java + ${beam.version} + + junit junit diff --git a/samples/native-image-sample/pom.xml b/samples/native-image-sample/pom.xml index 60750d225c..50becda900 100644 --- a/samples/native-image-sample/pom.xml +++ b/samples/native-image-sample/pom.xml @@ -23,6 +23,7 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd"> 1.8 1.8 + 2.39.0 UTF-8 @@ -44,6 +45,18 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd"> google-cloud-firestore + + + org.apache.beam + beam-runners-direct-java + ${beam.version} + + + org.apache.beam + beam-runners-google-cloud-dataflow-java + ${beam.version} + + junit junit diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index daf907a5a6..b11bcaf000 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -21,6 +21,7 @@ 1.8 1.8 UTF-8 + 2.39.0 @@ -43,9 +44,22 @@ 1.1.3 test - + + + org.apache.beam + beam-runners-direct-java + ${beam.version} + + + org.apache.beam + beam-runners-google-cloud-dataflow-java + ${beam.version} + + + + diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index be7100ffac..61f9a718de 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -21,6 +21,7 @@ 1.8 1.8 UTF-8 + 2.39.0 @@ -47,6 +48,18 @@
+ + + org.apache.beam + beam-runners-direct-java + ${beam.version} + + + org.apache.beam + beam-runners-google-cloud-dataflow-java + ${beam.version} + + junit junit diff --git a/samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamRead.java b/samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamRead.java new file mode 100644 index 0000000000..35b824b2a6 --- /dev/null +++ b/samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamRead.java @@ -0,0 +1,135 @@ +/* + * Copyright 2022 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.example.firestore.beam; + +import com.google.cloud.firestore.FirestoreOptions; +import com.google.firestore.v1.DocumentRootName; +import com.google.firestore.v1.RunQueryRequest; +import com.google.firestore.v1.RunQueryResponse; +import com.google.firestore.v1.StructuredQuery; +import com.google.firestore.v1.Value; +import java.util.Objects; +import java.util.UUID; +import org.apache.beam.runners.dataflow.options.DataflowPipelineOptions; +import org.apache.beam.sdk.Pipeline; +import org.apache.beam.sdk.io.gcp.firestore.FirestoreIO; +import org.apache.beam.sdk.io.gcp.firestore.RpcQosOptions; +import org.apache.beam.sdk.options.PipelineOptions; +import org.apache.beam.sdk.options.PipelineOptionsFactory; +import org.apache.beam.sdk.transforms.Create; +import org.apache.beam.sdk.transforms.DoFn; +import org.apache.beam.sdk.transforms.PTransform; +import org.apache.beam.sdk.transforms.ParDo; +import org.apache.beam.sdk.values.PCollection; + +public class ExampleFirestoreBeamRead { + + public static void main(String[] args) { + runRead(args, "cities-collection-" + UUID.randomUUID().toString().substring(0, 10)); + } + + public static void runRead(String[] args, String collectionId) { + FirestoreOptions firestoreOptions = FirestoreOptions.getDefaultInstance(); + + PipelineOptions options = + PipelineOptionsFactory.fromArgs(args).withValidation().as(PipelineOptions.class); + Pipeline pipeline = Pipeline.create(options); + + RpcQosOptions rpcQosOptions = + RpcQosOptions.newBuilder() + .withHintMaxNumWorkers(options.as(DataflowPipelineOptions.class).getMaxNumWorkers()) + .build(); + + pipeline + .apply(Create.of(collectionId)) + .apply( + new FilterDocumentsQuery( + firestoreOptions.getProjectId(), firestoreOptions.getDatabaseId())) + .apply(FirestoreIO.v1().read().runQuery().withRpcQosOptions(rpcQosOptions).build()) + .apply( + ParDo.of( + // transform each document to its name + new DoFn() { + @ProcessElement + public void processElement(ProcessContext c) { + c.output(Objects.requireNonNull(c.element()).getDocument().getName()); + } + })) + .apply( + ParDo.of( + // print the document name + new DoFn() { + @ProcessElement + public void processElement(ProcessContext c) { + System.out.println(c.element()); + } + })); + + pipeline.run().waitUntilFinish(); + } + + private static final class FilterDocumentsQuery + extends PTransform, PCollection> { + + private final String projectId; + private final String databaseId; + + public FilterDocumentsQuery(String projectId, String databaseId) { + this.projectId = projectId; + this.databaseId = databaseId; + } + + @Override + public PCollection expand(PCollection input) { + return input.apply( + ParDo.of( + new DoFn() { + @ProcessElement + public void processElement(ProcessContext c) { + // select from collection "cities-collection-" + StructuredQuery.CollectionSelector collection = + StructuredQuery.CollectionSelector.newBuilder() + .setCollectionId(Objects.requireNonNull(c.element())) + .build(); + // filter where country is equal to USA + StructuredQuery.Filter countryFilter = + StructuredQuery.Filter.newBuilder() + .setFieldFilter( + StructuredQuery.FieldFilter.newBuilder() + .setField( + StructuredQuery.FieldReference.newBuilder() + .setFieldPath("country") + .build()) + .setValue(Value.newBuilder().setStringValue("USA").build()) + .setOp(StructuredQuery.FieldFilter.Operator.EQUAL)) + .buildPartial(); + + RunQueryRequest runQueryRequest = + RunQueryRequest.newBuilder() + .setParent(DocumentRootName.format(projectId, databaseId)) + .setStructuredQuery( + StructuredQuery.newBuilder() + .addFrom(collection) + .setWhere(countryFilter) + .build()) + .build(); + c.output(runQueryRequest); + } + })); + } + } +} diff --git a/samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamWrite.java b/samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamWrite.java new file mode 100644 index 0000000000..a4921c57e8 --- /dev/null +++ b/samples/snippets/src/main/java/com/example/firestore/beam/ExampleFirestoreBeamWrite.java @@ -0,0 +1,92 @@ +/* + * Copyright 2022 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.example.firestore.beam; + +import com.google.cloud.firestore.FirestoreOptions; +import com.google.firestore.v1.Document; +import com.google.firestore.v1.Value; +import com.google.firestore.v1.Write; +import java.util.UUID; +import org.apache.beam.runners.dataflow.options.DataflowPipelineOptions; +import org.apache.beam.sdk.Pipeline; +import org.apache.beam.sdk.io.gcp.firestore.FirestoreIO; +import org.apache.beam.sdk.io.gcp.firestore.RpcQosOptions; +import org.apache.beam.sdk.options.PipelineOptions; +import org.apache.beam.sdk.options.PipelineOptionsFactory; +import org.apache.beam.sdk.transforms.Create; + +public class ExampleFirestoreBeamWrite { + private static final FirestoreOptions FIRESTORE_OPTIONS = FirestoreOptions.getDefaultInstance(); + + public static void main(String[] args) { + runWrite(args, "cities-collection-" + UUID.randomUUID().toString().substring(0, 10)); + } + + public static void runWrite(String[] args, String collectionId) { + // create pipeline options from the passed in arguments + PipelineOptions options = + PipelineOptionsFactory.fromArgs(args).withValidation().as(PipelineOptions.class); + Pipeline pipeline = Pipeline.create(options); + + RpcQosOptions rpcQosOptions = + RpcQosOptions.newBuilder() + .withHintMaxNumWorkers(options.as(DataflowPipelineOptions.class).getMaxNumWorkers()) + .build(); + + // create some writes + Write write1 = + Write.newBuilder() + .setUpdate( + Document.newBuilder() + // resolves to + // projects//databases//documents//NYC + .setName(createDocumentName(collectionId, "NYC")) + .putFields("name", Value.newBuilder().setStringValue("New York City").build()) + .putFields("state", Value.newBuilder().setStringValue("New York").build()) + .putFields("country", Value.newBuilder().setStringValue("USA").build())) + .build(); + + Write write2 = + Write.newBuilder() + .setUpdate( + Document.newBuilder() + // resolves to + // projects//databases//documents//TOK + .setName(createDocumentName(collectionId, "TOK")) + .putFields("name", Value.newBuilder().setStringValue("Tokyo").build()) + .putFields("country", Value.newBuilder().setStringValue("Japan").build()) + .putFields("capital", Value.newBuilder().setBooleanValue(true).build())) + .build(); + + // batch write the data + pipeline + .apply(Create.of(write1, write2)) + .apply(FirestoreIO.v1().write().batchWrite().withRpcQosOptions(rpcQosOptions).build()); + + // run the pipeline + pipeline.run().waitUntilFinish(); + } + + private static String createDocumentName(String collectionId, String cityDocId) { + String documentPath = + String.format( + "projects/%s/databases/%s/documents", + FIRESTORE_OPTIONS.getProjectId(), FIRESTORE_OPTIONS.getDatabaseId()); + + return documentPath + "/" + collectionId + "/" + cityDocId; + } +} diff --git a/samples/snippets/src/main/java/com/example/firestore/beam/README.md b/samples/snippets/src/main/java/com/example/firestore/beam/README.md new file mode 100644 index 0000000000..33b10f9392 --- /dev/null +++ b/samples/snippets/src/main/java/com/example/firestore/beam/README.md @@ -0,0 +1,35 @@ +# Firestore Beam Samples + +## Running instructions +These examples will show you how to read and write data from/into a Firestore database using the Firestore Beam connector. + +1. Set up the following environment variables +``` +GOOGLE_CLOUD_PROJECT= +REGION= +TEMP_LOCATION=gs:///temp/ +NUM_WORKERS= +MAX_NUM_WORKERS= +``` +2. Run the command to write example "cities" data: +``` +mvn compile exec:java -Dexec.mainClass=ExampleFirestoreBeamWrite \ +"-Dexec.args=--project=$GOOGLE_CLOUD_PROJECT \ +--runner=DataflowRunner \ +--project=$GOOGLE_CLOUD_PROJECT \ +--region=$REGION \ +--tempLocation=$TEMP_LOCATION \ +--numWorkers=$NUM_WORKERS \ +--maxNumWorkers=$MAX_NUM_WORKERS" +``` + +3. Run the command to filter and read the data you wrote: +``` +mvn compile exec:java -Dexec.mainClass=ExampleFirestoreBeamRead \ +"-Dexec.args=--project=$GOOGLE_CLOUD_PROJECT \ +--runner=DataflowRunner \ +--region=$REGION \ +--tempLocation=$TEMP_LOCATION \ +--numWorkers=$NUM_WORKERS \ +--maxNumWorkers=$MAX_NUM_WORKERS" +``` \ No newline at end of file diff --git a/samples/snippets/src/test/java/com/example/firestore/beam/ExampleFirestoreWriteReadTest.java b/samples/snippets/src/test/java/com/example/firestore/beam/ExampleFirestoreWriteReadTest.java new file mode 100644 index 0000000000..bd94fcf817 --- /dev/null +++ b/samples/snippets/src/test/java/com/example/firestore/beam/ExampleFirestoreWriteReadTest.java @@ -0,0 +1,109 @@ +/* + * Copyright 2022 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.example.firestore.beam; + +import com.google.api.core.ApiFuture; +import com.google.cloud.firestore.CollectionReference; +import com.google.cloud.firestore.Firestore; +import com.google.cloud.firestore.FirestoreOptions; +import com.google.cloud.firestore.QueryDocumentSnapshot; +import com.google.cloud.firestore.QuerySnapshot; +import com.google.common.truth.Truth; +import java.io.ByteArrayOutputStream; +import java.io.PrintStream; +import java.util.List; +import java.util.UUID; +import java.util.concurrent.ExecutionException; +import org.junit.AfterClass; +import org.junit.Assert; +import org.junit.Before; +import org.junit.BeforeClass; +import org.junit.Test; + +public class ExampleFirestoreWriteReadTest { + private ByteArrayOutputStream bout; + private static String projectId; + private static Firestore firestore; + private static String collectionId; + + @BeforeClass + public static void setUp() { + collectionId = "cities-collection-" + UUID.randomUUID().toString().substring(0, 10); + projectId = requireEnv("GOOGLE_CLOUD_PROJECT"); + firestore = FirestoreOptions.getDefaultInstance().getService(); + } + + @Before + public void setUpStream() { + bout = new ByteArrayOutputStream(); + System.setOut(new PrintStream(bout)); + } + + @AfterClass + public static void tearDown() { + deleteCollection(firestore.collection(collectionId), 1); + } + + @Test + public void testWriteAndRead() throws ExecutionException, InterruptedException { + String[] args = { + "--project=" + projectId, "--region=us-central1", "--numWorkers=1", "--maxNumWorkers=1" + }; + // write the data to Firestore + ExampleFirestoreBeamWrite.runWrite(args, collectionId); + + ApiFuture apiFuture = firestore.collection(collectionId).get(); + QuerySnapshot querySnapshot = apiFuture.get(); + List documents = querySnapshot.getDocuments(); + Truth.assertThat(documents).hasSize(2); + + // filter and read it back + ExampleFirestoreBeamRead.runRead(args, collectionId); + + String output = bout.toString(); + Truth.assertThat(output).contains("/documents/" + collectionId + "/NYC"); + } + + private static String requireEnv(String varName) { + String value = System.getenv(varName); + Assert.assertNotNull( + String.format("Environment variable '%s' is required to perform these tests.", varName), + value); + return value; + } + + // from: https://firebase.google.com/docs/firestore/manage-data/delete-data#collections + private static void deleteCollection(CollectionReference collection, int batchSize) { + try { + // retrieve a small batch of documents to avoid out-of-memory errors + ApiFuture future = collection.limit(batchSize).get(); + int deleted = 0; + // future.get() blocks on document retrieval + List documents = future.get().getDocuments(); + for (QueryDocumentSnapshot document : documents) { + document.getReference().delete(); + ++deleted; + } + if (deleted >= batchSize) { + // retrieve and delete another batch + deleteCollection(collection, batchSize); + } + } catch (Exception e) { + System.err.println("Error deleting collection : " + e.getMessage()); + } + } +} From f6f63520e93d9b3db0a915be58ea3cd37cec68d2 Mon Sep 17 00:00:00 2001 From: cherylEnkidu <96084918+cherylEnkidu@users.noreply.github.com> Date: Tue, 28 Jun 2022 11:01:53 -0400 Subject: [PATCH 09/12] perf: Change how proto was called in Query.java (#970) --- .../src/main/java/com/google/cloud/firestore/Query.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/google-cloud-firestore/src/main/java/com/google/cloud/firestore/Query.java b/google-cloud-firestore/src/main/java/com/google/cloud/firestore/Query.java index fd6a7a1011..048f5ca695 100644 --- a/google-cloud-firestore/src/main/java/com/google/cloud/firestore/Query.java +++ b/google-cloud-firestore/src/main/java/com/google/cloud/firestore/Query.java @@ -1542,7 +1542,7 @@ public void onResponse(RunQueryResponse response) { readTime = Timestamp.fromProto(response.getReadTime()); } - if (response.hasDone() && response.getDone()) { + if (response.getDone()) { Tracing.getTracer() .getCurrentSpan() .addAnnotation( From c39e7ab20250cad856106b3d0e3281b392beccf6 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Fri, 1 Jul 2022 16:28:00 -0400 Subject: [PATCH 10/12] chore(main): release 3.2.1-SNAPSHOT (#961) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore(main): release 3.2.1-SNAPSHOT * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com> Co-authored-by: Owl Bot --- google-cloud-firestore-admin/pom.xml | 4 ++-- google-cloud-firestore-bom/pom.xml | 16 ++++++++-------- google-cloud-firestore/pom.xml | 4 ++-- grpc-google-cloud-firestore-admin-v1/pom.xml | 4 ++-- grpc-google-cloud-firestore-v1/pom.xml | 4 ++-- pom.xml | 14 +++++++------- proto-google-cloud-firestore-admin-v1/pom.xml | 4 ++-- proto-google-cloud-firestore-bundle-v1/pom.xml | 4 ++-- proto-google-cloud-firestore-v1/pom.xml | 4 ++-- versions.txt | 16 ++++++++-------- 10 files changed, 37 insertions(+), 37 deletions(-) diff --git a/google-cloud-firestore-admin/pom.xml b/google-cloud-firestore-admin/pom.xml index 717ccf5ea9..6015804e47 100644 --- a/google-cloud-firestore-admin/pom.xml +++ b/google-cloud-firestore-admin/pom.xml @@ -4,7 +4,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 google-cloud-firestore-admin - 3.2.0 + 3.2.1-SNAPSHOT jar Google Cloud Firestore Admin Client https://github.com/googleapis/java-firestore @@ -14,7 +14,7 @@ com.google.cloud google-cloud-firestore-parent - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/google-cloud-firestore-bom/pom.xml b/google-cloud-firestore-bom/pom.xml index cb74c5bda6..5c4f8e5a70 100644 --- a/google-cloud-firestore-bom/pom.xml +++ b/google-cloud-firestore-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-firestore-bom - 3.2.0 + 3.2.1-SNAPSHOT pom com.google.cloud @@ -52,37 +52,37 @@ com.google.cloud google-cloud-firestore - 3.2.0 + 3.2.1-SNAPSHOT com.google.cloud google-cloud-firestore-admin - 3.2.0 + 3.2.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-firestore-admin-v1 - 3.2.0 + 3.2.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-firestore-v1 - 3.2.0 + 3.2.1-SNAPSHOT com.google.api.grpc proto-google-cloud-firestore-admin-v1 - 3.2.0 + 3.2.1-SNAPSHOT com.google.api.grpc proto-google-cloud-firestore-v1 - 3.2.0 + 3.2.1-SNAPSHOT com.google.cloud proto-google-cloud-firestore-bundle-v1 - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/google-cloud-firestore/pom.xml b/google-cloud-firestore/pom.xml index 1d499a6302..10fd07efe1 100644 --- a/google-cloud-firestore/pom.xml +++ b/google-cloud-firestore/pom.xml @@ -2,7 +2,7 @@ 4.0.0 google-cloud-firestore - 3.2.0 + 3.2.1-SNAPSHOT jar Google Cloud Firestore https://github.com/googleapis/java-firestore @@ -12,7 +12,7 @@ com.google.cloud google-cloud-firestore-parent - 3.2.0 + 3.2.1-SNAPSHOT google-cloud-firestore diff --git a/grpc-google-cloud-firestore-admin-v1/pom.xml b/grpc-google-cloud-firestore-admin-v1/pom.xml index 5bc46de8be..86963420c5 100644 --- a/grpc-google-cloud-firestore-admin-v1/pom.xml +++ b/grpc-google-cloud-firestore-admin-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-firestore-admin-v1 - 3.2.0 + 3.2.1-SNAPSHOT grpc-google-cloud-firestore-admin-v1 GRPC library for grpc-google-cloud-firestore-admin-v1 com.google.cloud google-cloud-firestore-parent - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/grpc-google-cloud-firestore-v1/pom.xml b/grpc-google-cloud-firestore-v1/pom.xml index 64ae75a2e9..0f9de3b644 100644 --- a/grpc-google-cloud-firestore-v1/pom.xml +++ b/grpc-google-cloud-firestore-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-firestore-v1 - 3.2.0 + 3.2.1-SNAPSHOT grpc-google-cloud-firestore-v1 GRPC library for grpc-google-cloud-firestore-v1 com.google.cloud google-cloud-firestore-parent - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/pom.xml b/pom.xml index 01e8d910a6..a25bfd40da 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-firestore-parent pom - 3.2.0 + 3.2.1-SNAPSHOT Google Cloud Firestore Parent https://github.com/googleapis/java-firestore @@ -150,32 +150,32 @@ com.google.api.grpc proto-google-cloud-firestore-admin-v1 - 3.2.0 + 3.2.1-SNAPSHOT com.google.cloud google-cloud-firestore - 3.2.0 + 3.2.1-SNAPSHOT com.google.cloud proto-google-cloud-firestore-bundle-v1 - 3.2.0 + 3.2.1-SNAPSHOT com.google.api.grpc proto-google-cloud-firestore-v1 - 3.2.0 + 3.2.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-firestore-admin-v1 - 3.2.0 + 3.2.1-SNAPSHOT com.google.api.grpc grpc-google-cloud-firestore-v1 - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/proto-google-cloud-firestore-admin-v1/pom.xml b/proto-google-cloud-firestore-admin-v1/pom.xml index 7d188d769a..4bc70b3b9f 100644 --- a/proto-google-cloud-firestore-admin-v1/pom.xml +++ b/proto-google-cloud-firestore-admin-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-firestore-admin-v1 - 3.2.0 + 3.2.1-SNAPSHOT proto-google-cloud-firestore-admin-v1 PROTO library for proto-google-cloud-firestore-admin-v1 com.google.cloud google-cloud-firestore-parent - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/proto-google-cloud-firestore-bundle-v1/pom.xml b/proto-google-cloud-firestore-bundle-v1/pom.xml index 53b55413c2..086ff45b21 100644 --- a/proto-google-cloud-firestore-bundle-v1/pom.xml +++ b/proto-google-cloud-firestore-bundle-v1/pom.xml @@ -5,14 +5,14 @@ 4.0.0 proto-google-cloud-firestore-bundle-v1 - 3.2.0 + 3.2.1-SNAPSHOT proto-google-cloud-firestore-bundle-v1 PROTO library for proto-google-cloud-firestore-bundle-v1 com.google.cloud google-cloud-firestore-parent - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/proto-google-cloud-firestore-v1/pom.xml b/proto-google-cloud-firestore-v1/pom.xml index 33c14f8b36..662cbf5aa7 100644 --- a/proto-google-cloud-firestore-v1/pom.xml +++ b/proto-google-cloud-firestore-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-firestore-v1 - 3.2.0 + 3.2.1-SNAPSHOT proto-google-cloud-firestore-v1 PROTO library for proto-google-cloud-firestore-v1 com.google.cloud google-cloud-firestore-parent - 3.2.0 + 3.2.1-SNAPSHOT diff --git a/versions.txt b/versions.txt index a53560c856..b1272a864a 100644 --- a/versions.txt +++ b/versions.txt @@ -1,11 +1,11 @@ # Format: # module:released-version:current-version -google-cloud-firestore:3.2.0:3.2.0 -google-cloud-firestore-admin:3.2.0:3.2.0 -google-cloud-firestore-bom:3.2.0:3.2.0 -grpc-google-cloud-firestore-admin-v1:3.2.0:3.2.0 -grpc-google-cloud-firestore-v1:3.2.0:3.2.0 -proto-google-cloud-firestore-admin-v1:3.2.0:3.2.0 -proto-google-cloud-firestore-v1:3.2.0:3.2.0 -proto-google-cloud-firestore-bundle-v1:3.2.0:3.2.0 +google-cloud-firestore:3.2.0:3.2.1-SNAPSHOT +google-cloud-firestore-admin:3.2.0:3.2.1-SNAPSHOT +google-cloud-firestore-bom:3.2.0:3.2.1-SNAPSHOT +grpc-google-cloud-firestore-admin-v1:3.2.0:3.2.1-SNAPSHOT +grpc-google-cloud-firestore-v1:3.2.0:3.2.1-SNAPSHOT +proto-google-cloud-firestore-admin-v1:3.2.0:3.2.1-SNAPSHOT +proto-google-cloud-firestore-v1:3.2.0:3.2.1-SNAPSHOT +proto-google-cloud-firestore-bundle-v1:3.2.0:3.2.1-SNAPSHOT From 44276f84ac927e02105608d81bb198f45793f823 Mon Sep 17 00:00:00 2001 From: WhiteSource Renovate Date: Fri, 1 Jul 2022 23:08:32 +0200 Subject: [PATCH 11/12] deps: update beam.version to v2.40.0 (#978) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [org.apache.beam:beam-runners-google-cloud-dataflow-java](http://beam.apache.org) ([source](https://gitbox.apache.org/repos/asf?p=beam.git;a=summary)) | `2.39.0` -> `2.40.0` | [![age](https://badges.renovateapi.com/packages/maven/org.apache.beam:beam-runners-google-cloud-dataflow-java/2.40.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/org.apache.beam:beam-runners-google-cloud-dataflow-java/2.40.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/org.apache.beam:beam-runners-google-cloud-dataflow-java/2.40.0/compatibility-slim/2.39.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/org.apache.beam:beam-runners-google-cloud-dataflow-java/2.40.0/confidence-slim/2.39.0)](https://docs.renovatebot.com/merge-confidence/) | | [org.apache.beam:beam-runners-direct-java](http://beam.apache.org) ([source](https://gitbox.apache.org/repos/asf?p=beam.git;a=summary)) | `2.39.0` -> `2.40.0` | [![age](https://badges.renovateapi.com/packages/maven/org.apache.beam:beam-runners-direct-java/2.40.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/org.apache.beam:beam-runners-direct-java/2.40.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/org.apache.beam:beam-runners-direct-java/2.40.0/compatibility-slim/2.39.0)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/org.apache.beam:beam-runners-direct-java/2.40.0/confidence-slim/2.39.0)](https://docs.renovatebot.com/merge-confidence/) | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/java-firestore). --- samples/install-without-bom/pom.xml | 2 +- samples/native-image-sample/pom.xml | 2 +- samples/snapshot/pom.xml | 2 +- samples/snippets/pom.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/samples/install-without-bom/pom.xml b/samples/install-without-bom/pom.xml index 8c4125c7ec..5d2e03afcf 100644 --- a/samples/install-without-bom/pom.xml +++ b/samples/install-without-bom/pom.xml @@ -20,7 +20,7 @@ 1.8 1.8 - 2.39.0 + 2.40.0 UTF-8 diff --git a/samples/native-image-sample/pom.xml b/samples/native-image-sample/pom.xml index 50becda900..39915e82a0 100644 --- a/samples/native-image-sample/pom.xml +++ b/samples/native-image-sample/pom.xml @@ -23,7 +23,7 @@ http://maven.apache.org/xsd/maven-4.0.0.xsd"> 1.8 1.8 - 2.39.0 + 2.40.0 UTF-8 diff --git a/samples/snapshot/pom.xml b/samples/snapshot/pom.xml index b11bcaf000..60870c85ac 100644 --- a/samples/snapshot/pom.xml +++ b/samples/snapshot/pom.xml @@ -21,7 +21,7 @@ 1.8 1.8 UTF-8 - 2.39.0 + 2.40.0 diff --git a/samples/snippets/pom.xml b/samples/snippets/pom.xml index 61f9a718de..8e42070c02 100644 --- a/samples/snippets/pom.xml +++ b/samples/snippets/pom.xml @@ -21,7 +21,7 @@ 1.8 1.8 UTF-8 - 2.39.0 + 2.40.0 From f46fbe4b027efaf4a65b79a7bfad2d1f6da221b7 Mon Sep 17 00:00:00 2001 From: "release-please[bot]" <55107282+release-please[bot]@users.noreply.github.com> Date: Sat, 2 Jul 2022 05:12:13 +0000 Subject: [PATCH 12/12] chore(main): release 3.3.0 (#980) :robot: I have created a release *beep* *boop* --- ## [3.3.0](https://github.com/googleapis/java-firestore/compare/v3.2.0...v3.3.0) (2022-07-01) ### Features * add logical termination for RunQueryResponse ([#956](https://github.com/googleapis/java-firestore/issues/956)) ([1d869c8](https://github.com/googleapis/java-firestore/commit/1d869c8fbe5e4009bbded2fb24f978f7cf48c515)) ### Bug Fixes * add build script for JDK 17 native image testing ([#965](https://github.com/googleapis/java-firestore/issues/965)) ([963e384](https://github.com/googleapis/java-firestore/commit/963e384b254056b6879744ba0b5d69fc0699f0bf)) ### Performance Improvements * Change how proto was called in Query.java ([#970](https://github.com/googleapis/java-firestore/issues/970)) ([f6f6352](https://github.com/googleapis/java-firestore/commit/f6f63520e93d9b3db0a915be58ea3cd37cec68d2)) ### Dependencies * update beam.version to v2.40.0 ([#978](https://github.com/googleapis/java-firestore/issues/978)) ([44276f8](https://github.com/googleapis/java-firestore/commit/44276f84ac927e02105608d81bb198f45793f823)) * update dependency com.google.cloud:google-cloud-shared-dependencies to v2.13.0 ([#974](https://github.com/googleapis/java-firestore/issues/974)) ([6def73d](https://github.com/googleapis/java-firestore/commit/6def73dbdbdc645d1148b9cc8e390e307a6896d4)) * update dependency org.graalvm.buildtools:native-maven-plugin to v0.9.12 ([#973](https://github.com/googleapis/java-firestore/issues/973)) ([bfb4ec9](https://github.com/googleapis/java-firestore/commit/bfb4ec9f9de6114259328bbe9a14c0cc7fae84c8)) --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). --- CHANGELOG.md | 24 +++++++++++++++++++ google-cloud-firestore-admin/pom.xml | 4 ++-- google-cloud-firestore-bom/pom.xml | 16 ++++++------- google-cloud-firestore/pom.xml | 4 ++-- grpc-google-cloud-firestore-admin-v1/pom.xml | 4 ++-- grpc-google-cloud-firestore-v1/pom.xml | 4 ++-- pom.xml | 14 +++++------ proto-google-cloud-firestore-admin-v1/pom.xml | 4 ++-- .../pom.xml | 4 ++-- proto-google-cloud-firestore-v1/pom.xml | 4 ++-- versions.txt | 16 ++++++------- 11 files changed, 61 insertions(+), 37 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b7344160d2..0515e05a24 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,29 @@ # Changelog +## [3.3.0](https://github.com/googleapis/java-firestore/compare/v3.2.0...v3.3.0) (2022-07-01) + + +### Features + +* add logical termination for RunQueryResponse ([#956](https://github.com/googleapis/java-firestore/issues/956)) ([1d869c8](https://github.com/googleapis/java-firestore/commit/1d869c8fbe5e4009bbded2fb24f978f7cf48c515)) + + +### Bug Fixes + +* add build script for JDK 17 native image testing ([#965](https://github.com/googleapis/java-firestore/issues/965)) ([963e384](https://github.com/googleapis/java-firestore/commit/963e384b254056b6879744ba0b5d69fc0699f0bf)) + + +### Performance Improvements + +* Change how proto was called in Query.java ([#970](https://github.com/googleapis/java-firestore/issues/970)) ([f6f6352](https://github.com/googleapis/java-firestore/commit/f6f63520e93d9b3db0a915be58ea3cd37cec68d2)) + + +### Dependencies + +* update beam.version to v2.40.0 ([#978](https://github.com/googleapis/java-firestore/issues/978)) ([44276f8](https://github.com/googleapis/java-firestore/commit/44276f84ac927e02105608d81bb198f45793f823)) +* update dependency com.google.cloud:google-cloud-shared-dependencies to v2.13.0 ([#974](https://github.com/googleapis/java-firestore/issues/974)) ([6def73d](https://github.com/googleapis/java-firestore/commit/6def73dbdbdc645d1148b9cc8e390e307a6896d4)) +* update dependency org.graalvm.buildtools:native-maven-plugin to v0.9.12 ([#973](https://github.com/googleapis/java-firestore/issues/973)) ([bfb4ec9](https://github.com/googleapis/java-firestore/commit/bfb4ec9f9de6114259328bbe9a14c0cc7fae84c8)) + ## [3.2.0](https://github.com/googleapis/java-firestore/compare/v3.1.0...v3.2.0) (2022-05-23) diff --git a/google-cloud-firestore-admin/pom.xml b/google-cloud-firestore-admin/pom.xml index 6015804e47..1e857e4661 100644 --- a/google-cloud-firestore-admin/pom.xml +++ b/google-cloud-firestore-admin/pom.xml @@ -4,7 +4,7 @@ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 google-cloud-firestore-admin - 3.2.1-SNAPSHOT + 3.3.0 jar Google Cloud Firestore Admin Client https://github.com/googleapis/java-firestore @@ -14,7 +14,7 @@ com.google.cloud google-cloud-firestore-parent - 3.2.1-SNAPSHOT + 3.3.0 diff --git a/google-cloud-firestore-bom/pom.xml b/google-cloud-firestore-bom/pom.xml index 5c4f8e5a70..f7541447a2 100644 --- a/google-cloud-firestore-bom/pom.xml +++ b/google-cloud-firestore-bom/pom.xml @@ -3,7 +3,7 @@ 4.0.0 com.google.cloud google-cloud-firestore-bom - 3.2.1-SNAPSHOT + 3.3.0 pom com.google.cloud @@ -52,37 +52,37 @@ com.google.cloud google-cloud-firestore - 3.2.1-SNAPSHOT + 3.3.0 com.google.cloud google-cloud-firestore-admin - 3.2.1-SNAPSHOT + 3.3.0 com.google.api.grpc grpc-google-cloud-firestore-admin-v1 - 3.2.1-SNAPSHOT + 3.3.0 com.google.api.grpc grpc-google-cloud-firestore-v1 - 3.2.1-SNAPSHOT + 3.3.0 com.google.api.grpc proto-google-cloud-firestore-admin-v1 - 3.2.1-SNAPSHOT + 3.3.0 com.google.api.grpc proto-google-cloud-firestore-v1 - 3.2.1-SNAPSHOT + 3.3.0 com.google.cloud proto-google-cloud-firestore-bundle-v1 - 3.2.1-SNAPSHOT + 3.3.0 diff --git a/google-cloud-firestore/pom.xml b/google-cloud-firestore/pom.xml index 10fd07efe1..b2c5ed5b0f 100644 --- a/google-cloud-firestore/pom.xml +++ b/google-cloud-firestore/pom.xml @@ -2,7 +2,7 @@ 4.0.0 google-cloud-firestore - 3.2.1-SNAPSHOT + 3.3.0 jar Google Cloud Firestore https://github.com/googleapis/java-firestore @@ -12,7 +12,7 @@ com.google.cloud google-cloud-firestore-parent - 3.2.1-SNAPSHOT + 3.3.0 google-cloud-firestore diff --git a/grpc-google-cloud-firestore-admin-v1/pom.xml b/grpc-google-cloud-firestore-admin-v1/pom.xml index 86963420c5..d2ca7d66cf 100644 --- a/grpc-google-cloud-firestore-admin-v1/pom.xml +++ b/grpc-google-cloud-firestore-admin-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-firestore-admin-v1 - 3.2.1-SNAPSHOT + 3.3.0 grpc-google-cloud-firestore-admin-v1 GRPC library for grpc-google-cloud-firestore-admin-v1 com.google.cloud google-cloud-firestore-parent - 3.2.1-SNAPSHOT + 3.3.0 diff --git a/grpc-google-cloud-firestore-v1/pom.xml b/grpc-google-cloud-firestore-v1/pom.xml index 0f9de3b644..3ad4355f2f 100644 --- a/grpc-google-cloud-firestore-v1/pom.xml +++ b/grpc-google-cloud-firestore-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc grpc-google-cloud-firestore-v1 - 3.2.1-SNAPSHOT + 3.3.0 grpc-google-cloud-firestore-v1 GRPC library for grpc-google-cloud-firestore-v1 com.google.cloud google-cloud-firestore-parent - 3.2.1-SNAPSHOT + 3.3.0 diff --git a/pom.xml b/pom.xml index a25bfd40da..d3d2f7e5bd 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ com.google.cloud google-cloud-firestore-parent pom - 3.2.1-SNAPSHOT + 3.3.0 Google Cloud Firestore Parent https://github.com/googleapis/java-firestore @@ -150,32 +150,32 @@ com.google.api.grpc proto-google-cloud-firestore-admin-v1 - 3.2.1-SNAPSHOT + 3.3.0 com.google.cloud google-cloud-firestore - 3.2.1-SNAPSHOT + 3.3.0 com.google.cloud proto-google-cloud-firestore-bundle-v1 - 3.2.1-SNAPSHOT + 3.3.0 com.google.api.grpc proto-google-cloud-firestore-v1 - 3.2.1-SNAPSHOT + 3.3.0 com.google.api.grpc grpc-google-cloud-firestore-admin-v1 - 3.2.1-SNAPSHOT + 3.3.0 com.google.api.grpc grpc-google-cloud-firestore-v1 - 3.2.1-SNAPSHOT + 3.3.0 diff --git a/proto-google-cloud-firestore-admin-v1/pom.xml b/proto-google-cloud-firestore-admin-v1/pom.xml index 4bc70b3b9f..aa08b6286e 100644 --- a/proto-google-cloud-firestore-admin-v1/pom.xml +++ b/proto-google-cloud-firestore-admin-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-firestore-admin-v1 - 3.2.1-SNAPSHOT + 3.3.0 proto-google-cloud-firestore-admin-v1 PROTO library for proto-google-cloud-firestore-admin-v1 com.google.cloud google-cloud-firestore-parent - 3.2.1-SNAPSHOT + 3.3.0 diff --git a/proto-google-cloud-firestore-bundle-v1/pom.xml b/proto-google-cloud-firestore-bundle-v1/pom.xml index 086ff45b21..2dbdaa1fdf 100644 --- a/proto-google-cloud-firestore-bundle-v1/pom.xml +++ b/proto-google-cloud-firestore-bundle-v1/pom.xml @@ -5,14 +5,14 @@ 4.0.0 proto-google-cloud-firestore-bundle-v1 - 3.2.1-SNAPSHOT + 3.3.0 proto-google-cloud-firestore-bundle-v1 PROTO library for proto-google-cloud-firestore-bundle-v1 com.google.cloud google-cloud-firestore-parent - 3.2.1-SNAPSHOT + 3.3.0 diff --git a/proto-google-cloud-firestore-v1/pom.xml b/proto-google-cloud-firestore-v1/pom.xml index 662cbf5aa7..8267c91fb1 100644 --- a/proto-google-cloud-firestore-v1/pom.xml +++ b/proto-google-cloud-firestore-v1/pom.xml @@ -4,13 +4,13 @@ 4.0.0 com.google.api.grpc proto-google-cloud-firestore-v1 - 3.2.1-SNAPSHOT + 3.3.0 proto-google-cloud-firestore-v1 PROTO library for proto-google-cloud-firestore-v1 com.google.cloud google-cloud-firestore-parent - 3.2.1-SNAPSHOT + 3.3.0 diff --git a/versions.txt b/versions.txt index b1272a864a..6c445fcd37 100644 --- a/versions.txt +++ b/versions.txt @@ -1,11 +1,11 @@ # Format: # module:released-version:current-version -google-cloud-firestore:3.2.0:3.2.1-SNAPSHOT -google-cloud-firestore-admin:3.2.0:3.2.1-SNAPSHOT -google-cloud-firestore-bom:3.2.0:3.2.1-SNAPSHOT -grpc-google-cloud-firestore-admin-v1:3.2.0:3.2.1-SNAPSHOT -grpc-google-cloud-firestore-v1:3.2.0:3.2.1-SNAPSHOT -proto-google-cloud-firestore-admin-v1:3.2.0:3.2.1-SNAPSHOT -proto-google-cloud-firestore-v1:3.2.0:3.2.1-SNAPSHOT -proto-google-cloud-firestore-bundle-v1:3.2.0:3.2.1-SNAPSHOT +google-cloud-firestore:3.3.0:3.3.0 +google-cloud-firestore-admin:3.3.0:3.3.0 +google-cloud-firestore-bom:3.3.0:3.3.0 +grpc-google-cloud-firestore-admin-v1:3.3.0:3.3.0 +grpc-google-cloud-firestore-v1:3.3.0:3.3.0 +proto-google-cloud-firestore-admin-v1:3.3.0:3.3.0 +proto-google-cloud-firestore-v1:3.3.0:3.3.0 +proto-google-cloud-firestore-bundle-v1:3.3.0:3.3.0