Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

deps: update cloud client dependencies #2362

Conversation

renovate-bot
Copy link
Contributor

@renovate-bot renovate-bot commented Oct 21, 2022

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
com.google.cloud:google-cloud-storage 2.13.0 -> 2.14.0 age adoption passing confidence
com.google.cloud:google-cloud-datacatalog-bom 1.10.0 -> 1.11.0 age adoption passing confidence
com.google.cloud:google-cloud-bigquerystorage-bom 2.23.1 -> 2.24.0 age adoption passing confidence

Release Notes

googleapis/java-storage

v2.14.0

Google Cloud Storage gRPC API Preview

The first release of google-cloud-storage with support for a subset of the Google Cloud Storage gRPC API which is in private preview. The most common operations have all been implemented and are available for experimentation.

Given not all public api surface of google-cloud-storage classes are supported for gRPC a new annotation @TransportCompatibility has been added to various classes, methods and fields/enum values to signal where that thing can be expected to work. As we implement more of the operations these annotations will be updated.

All new gRPC related APIs are annotated with @BetaApi to denote they are in preview and the possibility of breaking change is present. At this time, opting to use any of the gRPC transport mode means you are okay with the possibility of a breaking change happening. When the APIs are out of preview, we will remove the @BetaApi annotation to signal they are now considered stable and will not break outside a major version.

NOTICE: Using the gRPC transport is exclusive. Any operations which have not yet been implemented for gRPC will result in a runtime error. For those operations which are not yet implemented, please continue to use the existing HTTP transport.

Special thanks (in alphabetical order) to @​BenWhitehead, @​frankyn, @​jesselovelace and @​sydney-munro for their hard work on this effort.

Notable Improvements
  1. For all gRPC media related operations (upload/download) we are now more resource courteous then the corresponding HTTP counterpart. Buffers are fixed to their specified size (can't arbitrarily grow without bounds), are allocated lazily and only if necessary.

    1. Investigation into the possibility of backporting these improvements to the HTTP counterparts is ongoing
  2. Preview support for Accessing GCS via gRPC

    1. Set the environment variable GOOGLE_CLOUD_ENABLE_DIRECT_PATH_XDS=true, then run your program.
    2. When configuring your StorageOptions mimic the following:
      StorageOptions.grpc()
      .setAttemptDirectPath(true)
      .build()
    3. Internally the default host endpoint https://storage.googleapis.com:443 will be transformed to the applicable google-c2p-experimental:///storage.googleapis.com
  3. Support for java.time types on model classes

    1. Points in time are now represented with java.time.OffsetDateTime, while durations are represented with java.time.Duration
    2. All existing Long centric methods are still present, but have been deprecated in favor of their corresponding java.time variant
    3. At the next major version, these deprecated methods will be replaced with types from java.time and the java.time variant methods will be deprecated
  4. com.google.cloud.storage.Storage now extends java.lang.AutoClosable thereby allowing it to be used in a try-with-resource block.

    1. When using gRPC transport be sure to call Storage#close() when complete so it can clean up the gRPC middleware and resources.
    2. When using HTTP transport calling Storage#close() will gracefully no-op, allowing for the same style of use regardless of transport.
  5. When downloading an object via gRPC idle stream detection is now present which will restart a stream if it is determined to be idle and has remaining retry budget

  6. Update equals()/hashCode() methods to follow the expected contract

  7. The new gRPC transport based implementation continues to provide idempotency aware automatic retries the same as HTTP

  8. Expanded test suite which should bring improved stability and reliability to both HTTP and gRPC transport implementations

  9. New com.google.cloud:google-cloud-storage-bom maven bom available to use for coordinated dependency version resolution for multiple storage artifacts

Not yet implemented
  1. All ACL specific operations.

    1. These will be implemented in the near future
    2. In the interim, reading and setting of ACLs and Default Object ACLs can be performed via Object/Bucket operations
  2. All Notification related operations

    1. These will be implemented in the near future
    2. In the interim, please continue to use the HTTP transport
  3. ReadChannel#capture(), RestorableState<ReadChannel>#restore(), WriteChannel#capture(), RestorableState<WriteChannel>#restore(), CopyWriter#capture() and RestorableState<CopyWriter>#capture() are not yet implemented.

    • These use cases will be implemented in the near future. We are still determining the route we want to take.
  4. Batch and "bulk" operations which depend on batch

    1. GCS gRPC does not currently define a batch method whereas HTTP does. This means Storage#batch() is only supported for HTTP transport.
    2. The following methods which currently depend on Storage#batch() are currently only supported for HTTP transport
      • com.google.cloud.storage.Storage#get(com.google.cloud.storage.BlobId...)
      • com.google.cloud.storage.Storage#get(java.lang.Iterable<com.google.cloud.storage.BlobId>)
      • com.google.cloud.storage.Storage#update(com.google.cloud.storage.BlobInfo...)
      • com.google.cloud.storage.Storage#update(java.lang.Iterable<com.google.cloud.storage.BlobInfo>)
      • com.google.cloud.storage.Storage#delete(com.google.cloud.storage.BlobId...)
      • com.google.cloud.storage.Storage#delete(java.lang.Iterable<com.google.cloud.storage.BlobId>)
One-Time Inconveniences
  1. All classes under com.google.cloud.storage which are Serializable have new serialVersionUIDs and are incompatible with any previous version.

    1. Several classes had to change in order to support both HTTP and gRPC at the same time. We were able to preserve Source and Binary runtime level compatibility but had to break Serialization across versions.
    2. If you depend upon Java Serialization, please ensure you are using the same version of google-cloud-storage in both locations.
  2. The cause chains of some Exceptions have changed.

    1. When using gRPC, StorageException causes will use the corresponding com.google.api.gax.rpc.ApiException for the failure type instead of the HTTP com.google.api.client.googleapis.json.GoogleJsonError
      • In an effort to preserve compatibility of your existing error handling code, we will translate from the gRPC error code to the similar HTTP Status code before constructing the StorageException preserving the integrity of StorageException#getCode()
    2. RetryHelper$RetryHelperException will no longer appear in exception cause chains for either HTTP or gRPC
Not Supported

Given the nature of the gRPC transport a few things are explicitly not supported when using gRPC, and require HTTP transport. Attempting to use any of the following methods will result in a runtime error stating they are not supported for gRPC transport.

  1. Storage#writer(URL) does not work for gRPC. gRPC does not provide a means of exchanging an HTTP url for a resumable session id
  2. Storage#signUrl is not supported for gRPC transport. Signed URLs explicitly generate HTTP urls and are only supported for the HTTP transport based implementation.
  3. Storage#generateSignedPostPolicyV4 is not supported for gRPC transport. Signed URLs explicitly generate HTTP urls and are only supported for the HTTP transport based implementation.
Known Issues
  1. https://github.com/googleapis/java-storage/issues/1736
  2. https://github.com/googleapis/java-storage/issues/1737
Features
Bug Fixes
  • Properly implement GrpcBlobReadChannel#isOpen (#​1733) (04e5166)
  • Update BucketInfo.LifecycleRule.LifecycleCondition equals and hashCode to include match prefix and suffix (#​1729) (9664e8a)
Dependencies
  • Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.5 (#​1725) (09bc225)

v2.13.1

Compare Source

Bug Fixes
  • Avoid unexpected initialization of JacksonParser in Graal 22.2 (#​1709) (eca1a03)
  • Update BucketInfo.LifecycleRule#fromPb to wire through MatchesPrefix & MatchesSuffix (#​1717) (eae3cf2)
Dependencies
  • Update dependency org.graalvm.buildtools:native-maven-plugin to v0.9.15 (#​1711) (f188a07)
  • Update dependency org.graalvm.buildtools:native-maven-plugin to v0.9.16 (#​1721) (631b98d)
googleapis/java-bigquerystorage

v2.24.0

Compare Source

Features
Bug Fixes
  • java: Restore native image configurations (#​1844) (8ce670a)
  • Remove the client lib header setting since after router migration, it is no longer needed (#​1842) (5f3b821)
Dependencies
  • Update dependency com.google.auto.value:auto-value to v1.10 (#​1825) (f7b8f2b)
  • Update dependency com.google.auto.value:auto-value-annotations to v1.10 (#​1826) (37eb8a1)
  • Update dependency com.google.cloud:google-cloud-bigquery to v2.17.1 (#​1829) (7e8d900)
  • Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.5 (#​1840) (474756b)

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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, click this checkbox.

This PR has been generated by Mend Renovate. View repository job log here.

@renovate-bot renovate-bot requested a review from a team as a code owner October 21, 2022 02:21
@renovate-bot renovate-bot requested review from a team and Neenu1995 October 21, 2022 02:21
@product-auto-label product-auto-label bot added the size: xs Pull request size is extra small. label Oct 21, 2022
@trusted-contributions-gcf trusted-contributions-gcf bot added kokoro:force-run Add this label to force Kokoro to re-run the tests. owlbot:run Add this label to trigger the Owlbot post processor. labels Oct 21, 2022
@product-auto-label product-auto-label bot added the api: bigquery Issues related to the googleapis/java-bigquery API. label Oct 21, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Oct 21, 2022
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Oct 21, 2022
@meltsufin meltsufin added the owlbot:run Add this label to trigger the Owlbot post processor. label Oct 24, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Oct 24, 2022
@meltsufin meltsufin added the automerge Merge the pull request once unit tests and other checks pass. label Oct 24, 2022
@renovate-bot renovate-bot force-pushed the renovate/cloud-client-dependencies branch from 221e6af to 5d0d642 Compare October 25, 2022 01:35
@renovate-bot renovate-bot changed the title deps: update dependency com.google.cloud:google-cloud-storage to v2.13.1 deps: update cloud client dependencies Oct 25, 2022
@trusted-contributions-gcf trusted-contributions-gcf bot added kokoro:force-run Add this label to force Kokoro to re-run the tests. owlbot:run Add this label to trigger the Owlbot post processor. labels Oct 25, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Oct 25, 2022
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Oct 25, 2022
@gcf-merge-on-green
Copy link

Merge-on-green attempted to merge your PR for 6 hours, but it was not mergeable because either one of your required status checks failed, one of your required reviews was not approved, or there is a do not merge label. Learn more about your required status checks here: https://help.github.com/en/github/administering-a-repository/enabling-required-status-checks. You can remove and reapply the label to re-run the bot.

@gcf-merge-on-green gcf-merge-on-green bot removed the automerge Merge the pull request once unit tests and other checks pass. label Oct 25, 2022
@renovate-bot renovate-bot force-pushed the renovate/cloud-client-dependencies branch from 5d0d642 to 8d170a8 Compare October 25, 2022 20:34
@trusted-contributions-gcf trusted-contributions-gcf bot added kokoro:force-run Add this label to force Kokoro to re-run the tests. owlbot:run Add this label to trigger the Owlbot post processor. labels Oct 25, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Oct 25, 2022
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Oct 25, 2022
@renovate-bot renovate-bot force-pushed the renovate/cloud-client-dependencies branch from 8d170a8 to 47cfc49 Compare October 26, 2022 00:15
@trusted-contributions-gcf trusted-contributions-gcf bot added kokoro:force-run Add this label to force Kokoro to re-run the tests. owlbot:run Add this label to trigger the Owlbot post processor. labels Oct 26, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Oct 26, 2022
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Oct 26, 2022
@renovate-bot renovate-bot force-pushed the renovate/cloud-client-dependencies branch from 47cfc49 to b4e3a0e Compare October 26, 2022 21:44
@trusted-contributions-gcf trusted-contributions-gcf bot added kokoro:force-run Add this label to force Kokoro to re-run the tests. owlbot:run Add this label to trigger the Owlbot post processor. labels Oct 26, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Oct 26, 2022
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Oct 26, 2022
@renovate-bot renovate-bot force-pushed the renovate/cloud-client-dependencies branch from b4e3a0e to 896b5ab Compare October 26, 2022 21:50
@trusted-contributions-gcf trusted-contributions-gcf bot added kokoro:force-run Add this label to force Kokoro to re-run the tests. owlbot:run Add this label to trigger the Owlbot post processor. labels Oct 26, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Oct 26, 2022
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Oct 26, 2022
@blakeli0 blakeli0 added the automerge Merge the pull request once unit tests and other checks pass. label Oct 27, 2022
@renovate-bot renovate-bot force-pushed the renovate/cloud-client-dependencies branch from 896b5ab to 7af7ff3 Compare October 27, 2022 03:04
@trusted-contributions-gcf trusted-contributions-gcf bot added kokoro:force-run Add this label to force Kokoro to re-run the tests. owlbot:run Add this label to trigger the Owlbot post processor. labels Oct 27, 2022
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Oct 27, 2022
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Oct 27, 2022
@gcf-merge-on-green gcf-merge-on-green bot merged commit 0936699 into googleapis:main Oct 27, 2022
@gcf-merge-on-green gcf-merge-on-green bot removed the automerge Merge the pull request once unit tests and other checks pass. label Oct 27, 2022
@renovate-bot renovate-bot deleted the renovate/cloud-client-dependencies branch October 27, 2022 03:30
gcf-merge-on-green bot pushed a commit that referenced this pull request Oct 28, 2022
🤖 I have created a release *beep* *boop*
---


## [2.18.0](https://togithub.com/googleapis/java-bigquery/compare/v2.17.1...v2.18.0) (2022-10-27)


### Features

* Add executeSelectAsync and Refactor ([#2294](https://togithub.com/googleapis/java-bigquery/issues/2294)) ([80fa478](https://togithub.com/googleapis/java-bigquery/commit/80fa47834f3ef536f553702dee3ddc80e18981bb))


### Bug Fixes

* Add --add-opens arg to native-image command ([#2369](https://togithub.com/googleapis/java-bigquery/issues/2369)) ([8e8b6d7](https://togithub.com/googleapis/java-bigquery/commit/8e8b6d70e228a63b5dde00b828765110b0222d20))
* Properly handle external table schema on table update ([#2236](https://togithub.com/googleapis/java-bigquery/issues/2236)) ([460ef31](https://togithub.com/googleapis/java-bigquery/commit/460ef318297fe5562a983f64c407b7c0fa5a9a8b))


### Dependencies

* Update arrow.version to v10 (major) ([#2371](https://togithub.com/googleapis/java-bigquery/issues/2371)) ([b7873db](https://togithub.com/googleapis/java-bigquery/commit/b7873db46e174c755657ddcecbb02c0e495c9a1f))
* Update cloud client dependencies ([#2362](https://togithub.com/googleapis/java-bigquery/issues/2362)) ([0936699](https://togithub.com/googleapis/java-bigquery/commit/09366996e281354cc423cbc3ac97a11b0d48eda6))
* Update dependency com.google.api.grpc:proto-google-cloud-bigqueryconnection-v1 to v2.6.0 ([#2355](https://togithub.com/googleapis/java-bigquery/issues/2355)) ([7bc59a7](https://togithub.com/googleapis/java-bigquery/commit/7bc59a77a6f3821ac19088a8ee864f5d24bdee2e))
* Update dependency com.google.api.grpc:proto-google-cloud-bigqueryconnection-v1 to v2.7.0 ([#2366](https://togithub.com/googleapis/java-bigquery/issues/2366)) ([02102d3](https://togithub.com/googleapis/java-bigquery/commit/02102d3fb873e68827a8630a4eb34d4bcabd5f9d))
* Update dependency com.google.apis:google-api-services-bigquery to v2-rev20221015-2.0.0 ([#2370](https://togithub.com/googleapis/java-bigquery/issues/2370)) ([9b796cf](https://togithub.com/googleapis/java-bigquery/commit/9b796cf0b14094f9442c7e21d7789a673691b87d))
* Update dependency com.google.cloud:google-cloud-datacatalog-bom to v1.10.0 ([#2356](https://togithub.com/googleapis/java-bigquery/issues/2356)) ([edb2ca0](https://togithub.com/googleapis/java-bigquery/commit/edb2ca03f2e216d6a1083a9dc2bc7f74bed9d3a5))
* Update dependency com.google.cloud:google-cloud-shared-dependencies to v3.0.5 ([#2361](https://togithub.com/googleapis/java-bigquery/issues/2361)) ([51b2258](https://togithub.com/googleapis/java-bigquery/commit/51b2258bbfa542c822668240c8d5f7cc6c63e03c))
* Update dependency com.google.code.gson:gson to v2.10 ([#2367](https://togithub.com/googleapis/java-bigquery/issues/2367)) ([82e3de5](https://togithub.com/googleapis/java-bigquery/commit/82e3de5f76644e3530ac795a5eafd1dac4c3be07))
* Update dependency org.graalvm.buildtools:junit-platform-native to v0.9.15 ([#2352](https://togithub.com/googleapis/java-bigquery/issues/2352)) ([b0f172c](https://togithub.com/googleapis/java-bigquery/commit/b0f172c1863bbe66c366a75c4a5c06ee5ba049d0))
* Update dependency org.graalvm.buildtools:junit-platform-native to v0.9.16 ([#2358](https://togithub.com/googleapis/java-bigquery/issues/2358)) ([f4e5fc5](https://togithub.com/googleapis/java-bigquery/commit/f4e5fc59f4b9bc63c763ec1dc8b75f87defc9ced))
* Update dependency org.graalvm.buildtools:native-maven-plugin to v0.9.15 ([#2353](https://togithub.com/googleapis/java-bigquery/issues/2353)) ([ac9226c](https://togithub.com/googleapis/java-bigquery/commit/ac9226c7a6297d686c0bd77939f084e3faf6090a))
* Update dependency org.graalvm.buildtools:native-maven-plugin to v0.9.16 ([#2359](https://togithub.com/googleapis/java-bigquery/issues/2359)) ([52ec31a](https://togithub.com/googleapis/java-bigquery/commit/52ec31a6dc3705e09e7ce9cd815241a0fb2cc5d6))

---
This PR was generated with [Release Please](https://togithub.com/googleapis/release-please). See [documentation](https://togithub.com/googleapis/release-please#release-please).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: bigquery Issues related to the googleapis/java-bigquery API. size: xs Pull request size is extra small.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants