Skip to content

v1.30.0

Choose a tag to compare

@devjgm devjgm released this 03 Aug 13:40
· 6321 commits to main since this release
35d6136

v1.30.0 Release

New GA Libraries

Bigtable:

BREAKING CHANGES:

  • As previously announced, we removed the experimental Async* functions in Table that took a CompletionQueue& parameter. Users that need to update their code should use the identically named functions which do not require a CompletionQueue&. If users require a custom CompletionQueue, one can be supplied to the DataClient used to construct the Table, via ClientOptions::DisableBackgroundThreads(CompletionQueue const&). See #2567 for more details.

OTHER CHANGES:

  • We changed the MutationBatcher's default setting for max mutations per batch from 100k to 1k. The new value achieves better throughput and avoids errors from exhausting the server. (#7095)

Storage:

BREAKING CHANGES:

  • We changed how the library uses google::cloud::internal::ObjectReadSource. If your tests mock how the library uses this class you may need to update your tests. We updated the mocking examples to guide you in changing any tests.

OTHER CHANGES:

  • feat(storage): discard handles after an error (#7088)
  • feat(storage): release download handles sooner (#7085)
  • feat(storage): support setting HTTP version (#7077)
  • fix(storage): cleanup interrupted downloads (#7064)
  • fix(storage): avoid crashes after move (#7045)
  • feat(GCS+gRPC): upload checksums with last chunk (#7031)
  • fix(storage): use hash values in InsertObject() (#7025)
  • feat(storage): capture peer address for REST (#6994)
  • feat(GCS+gRPC): option to configure plugin (#6991)
  • feat(GCS+gRPC): checksums on ObjectInsert (#6967)
  • fix(GCS+gRPC): no hashes in Object resource (#6963)

Common Libraries:

  • feat(common): always clog GCP_LOG(FATAL) messages (#7087)
  • feat(common): make GCP_LOG(FATAL) terminate execution (#7058)

Other:

We have removed the super/ directory: google-cloud-cpp remains usable in a super build for a larger project, but we do not believe these files add enough value for the additional complexity. If you prefer to build all the dependencies from source using CMake, we recommend you use a package manager, such as vcpkg.

We have dropped support for Clang < 6.0: to support the latest Google Cloud services we need a version of Protobuf that can compile all the .proto files in https://github.com/googleapis/googleapis. At this time this requires Protobuf >= 3.15, and these versions of Protobuf do not support older versions of the Clang compiler.