Skip to content

Releases: googleapis/google-cloud-cpp

v2.16.0

02 Oct 18:11
a8ad90e
Compare
Choose a tag to compare

New Libraries

We are happy to announce the following GA libraries. Unless specifically noted,
the APIs in these libraries are stable, and are ready for production use.

Discovery Engine

New *Client for conversational search.

OAuth2

  • feat(oauth2): add quickstart, README, etc. (#12754)

OpenTelemetry

We instrumented the Google Cloud C++ libraries for distributed tracing using
OpenTelemetry. All client libraries are instrumented in some capacity.

Features to enable the collection and export of these traces are now GA. See the
quickstart within the library to learn more about these tools.

Policy Troubleshooter

Remove PoliciesClient. This client was placed in the wrong library. The
correct location is google/cloud/iam/v2.

Storage

  • fix(storage): trace auth when default credentials are assumed (#12672)
  • docs(storage): more on InsertObject vs. WriteObject (#12577)

Common Libraries

  • feat(common): new *Option to configure HTTP proxy (#12766)
  • fix: export headers with top-level Bazel targets (#12762)
  • fix: gRPC auth logging enabled by "auth" (#12702)
  • fix: add implicit routing in GAPICs (#12544)

Known issues

Compiling gRPC with Bazel and Clang >= 16 requires --features=-layering_check
in your Bazel command-line. For more details, see grpc#34482.

v2.15.1

09 Sep 14:14
632f747
Compare
Choose a tag to compare

Policy Troubleshooter

Remove PoliciesClient. This client was placed in the wrong library. The
correct location is google/cloud/iam/v2.

Full Changelog: v2.15.0...v2.15.1

v2.15.0

01 Sep 17:30
fdda7eb
Compare
Choose a tag to compare

New Libraries

We are happy to announce the following GA libraries. Unless specifically noted,
the APIs in these libraries are stable, and are ready for production use.

Cloud IoT

The Cloud IoT Core service has been [shutdown][cloud-iot-shutdown]. We removed
the corresponding C++ client library as it is no longer usable.

BeyondCorp API

Parts of the BeyondCorp API are restricted to only existing customers and will
be decommissioned. No C++ customers are affected, so we are removing the
unusable components from the C++ libraries. More information in the BeyondCorp
announcement.

Natural Language AI

We expanded the library to include the v2 version of the API.

Notebooks

We expanded the library to include the v2 version of the API.

Pub/Sub

  • fix(pubsub): url encode routing params on publish (#12454)
  • feat(pubsub): increase backoff from 1.3 to 4.0 (#12306)

Spanner

  • feat(spanner): enable leader aware routing by default (#12319)

Storage

  • fix(storage): tracing should decorate retries (#12314)

Common Libraries

  • fix: URL encode explicit routing values (#12493) (#12447)
  • feat(common): add Options::set<>() && overload (#12424)
  • fix(common): gRPC alarms require more locking (#12406)
  • feat(common): retry loops preserve original message (#12368)
  • feat(otel): control tracing with environment variable (#11897)
  • docs(otel): troubleshoot exporter doc (#12345)
  • docs(otel): build quickstart with vcpkg (#12324)
  • feat(common): retry loops signal via error info (#12313)
  • fix(common): handle expired policies in *RetryLoop (#12301)

Other Changes

Bazel Testing: from v2.15.0 we will only test with Bazel >= 6.0.0. We do not
consider this a breaking change, as Bazel 5.x has been in maintenance mode for
more than 6 months.

CMake Proto Libraries: We only compile service-specific protos if the
corresponding client library is enabled, via -DGOOGLE_CLOUD_CPP_ENABLE=....

This change reduces build times for customers who use CMake but who are not
using all of the client libraries listed below.

We considered it a bug that customers building with CMake were forced
to compile large proto libraries that they did not need. It was certainly
confusing.

Any change in behavior, including fixing bugs, can be considered "breaking". By
policy we don't consider bug fixes to be breaking changes. We applied that
policy in this case.

The impacted libraries are:

  • bigquery
  • bigtable
  • dialogflow_es
  • iam
  • logging
  • pubsub
  • speech
  • storage
  • texttospeech
  • trace

If you are dependent on any of these proto libraries and you are not
compiling the corresponding client library, you will need to update your build
scripts.

For example, if you depend on google_cloud_cpp_speech_protos (e.g., if you
have been using this library to make calls to Cloud Speech using raw gRPC), add
-DGOOGLE_CLOUD_CPP_ENABLE=...,speech,... to your CMake configure command. If
you build with vcpkg, include speech in your install command.

Note that google_cloud_cpp_storage_protos are associated with the
experimental-storage-grpc feature, not the storage feature.

v2.14.0

01 Aug 18:56
2839e9d
Compare
Choose a tag to compare

New Libraries

We are happy to announce the following GA libraries. Unless specifically noted,
the APIs in these libraries are stable, and are ready for production use.

Bigtable

  • docs(bigtable): document DataRetryPolicy (#12040)
  • feat(bigtable): reverse scans (#12022)

Channel Services

The library has been expanded to include the Reporting API.

Cloud Build

  • feat(cloudbuild): promote 2nd gen (repositories) API to GA (#12236)

Cloud Functions

The library has been expanded to include the 2nd gen API.

Cloud Monitoring

The library has been expanded to include the Snooze API.

Cloud Run

The library has been expanded to include the Job Executions API.

Compute Engine OS Config

The library has been expanded to include the Zonal OS Config API.

Data Catalog

  • feat(datacatalog): promote datalineage to GA (#12271)

Dataproc

The library has been expanded to include the Node Groups API.

Logging

The library has been expanded to include the Log-based Metrics API and the Log Router API.

Pub/Sub

  • docs(pubsub): add cloud storage subscription sample (#12088)
  • docs(pubsub): add unwrapped subscription sample (#12090)
  • docs(pubsub): add a subscriber quickstart (#12053)
  • docs(pubsub): document RetryPolicy interface (#12030)

Retail

The library has been expanded to include new services.

Resource Manager

The library has been expanded to include the Tags API.

Spanner

  • feat(spanner): samples for bit-reversed sequence (#12280)
  • doc(spanner): mark obsolete Spanner options classes as deprecated (#12256)
  • doc(spanner): Improve documentation for ActionOnExhaustion (#12238)
  • doc(spanner): add documentation/sample for TransactionRerunPolicy (#12140)
  • feat(spanner): tests and samples for foreign-key delete cascade (#12122)
  • docs(spanner): document RetryPolicy interface (#12037)

Speech

The library has been expanded to include the Model Adaptation API.

Storage

  • docs(storage): document RetryPolicy interface (#12031)

Common Libraries

  • fix(common): add missing library on Windows (#12103)
  • fix(common): avoid run-time conflicts on Windows (#12105)
  • feat(oauth2): new library to create oauth2 tokens (#12064)
  • feat: support split packages (#12049)

v2.13.0

03 Jul 20:17
1d9a256
Compare
Choose a tag to compare

New Libraries

We are happy to announce the following GA libraries. Unless specifically noted,
the APIs in these libraries are stable, and are ready for production use.

Batch

  • docs: an example to extract Cloud Batch logs (#11935)
  • docs(batch): introduce basic snippets (#11915)

Spanner

  • doc(spanner): add an example for CommitAtLeastOnce() (#11905)
  • feat(spanner): implement at-least-once Commit (#11899)

Common Libraries

  • feat(generator): separate page for retry policy overrides (#11950)
  • fix(common): pagination must support empty pages (#11937)
  • feat(generator): create retry policy samples (#11930)
  • fix(common): use 64-bit API on Windows to get file sizes (#11906)

v2.12.0

15 Jun 20:45
9bff77a
Compare
Choose a tag to compare

New Libraries

We are happy to announce the following GA libraries. Unless specifically noted,
the APIs in these libraries are stable, and are ready for production use.

Cloud Debugger

The Cloud Debugger service (aka Stackdriver Debugger API) has been
shutdown. The corresponding client library has been
removed.

BigQuery

This library has been expanded to include the BigLake API (#11882)

Pub/Sub

Common Libraries

  • docs: use c.g.com/cpp mocking guide (#11869)
  • docs: link reference docs at c.g.c/cpp/docs/reference (#11799)
  • fix(generator): correct URL for reference docs (#11765)

v2.11.0

01 Jun 19:05
37a0603
Compare
Choose a tag to compare

New Libraries

We are happy to announce the following GA libraries. Unless specifically noted,
the APIs in these libraries are stable, and are ready for production use.

Bigtable

  • docs(bigtable): async Table APIs are stable (#11711)
  • doc(bigtable): deprecate DataClient in doxygen (#11550)

Cloud Asset

The library has been re-enabled on Windows. See #11714 for details.

Spanner

  • docs(spanner): some documentation tweaks (#11641)
  • feat(spanner): tests and samples for drop-database protection (#11637)
  • feat(spanner): make ResultSourceInterface public (#11636)

Storage

  • fix(storage): consistent project id overrides (#11754)
  • feat(storage): better error messages in signed URLs (#11741)
  • feat(storage): offer mock client without decorators (#11697)
  • feat(storage): lazy allocation for upload buffer (#11633)

Storage Transfer Service

The library has been re-enabled on macOS. See #8785 for details.

Common Libraries

  • feat: use full jitter exp backoff policy in the generator (#11748)
  • feat: add new constructor for exponential backoff policy (#11650)
  • feat: avoid development dependencies with Bazel (#11724)
  • docs(common): better exception descriptions (#11705)
  • fix(rest): support rewinds in libcurl (#11703, #11709)
  • fix: workaround curl_multi_poll returning an error on EINTR (#11649)
  • docs(common): improve StatusOr<> documentation (#11631)
  • fix: Correct exponential backoff ranges (#11529)
  • fix: patch releases do not change the ABI (#11499)
  • fix(rest): missing user-agent separator (#11473)

v2.10.1

03 May 16:00
0c5fa4f
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.10.0...v2.10.1

v2.10.0

01 May 16:44
4a3cbe6
Compare
Choose a tag to compare

New Libraries

We are happy to announce the following GA libraries. Unless specifically noted,
the APIs in these libraries are stable, and are ready for production use.

The following experimental libraries are now available:

Bigquery

  • Removed bigquery/v2/model*. There are no plans to implement gRPC endpoints for
    this service. Therefore the generated code will never be usable and never has
    been.

Service Control

The library has been expanded to include the v2 service.

Spanner

  • fix(spanner): propagate Options through SessionPool callbacks (#11344)

Storage

  • fix(storage): cache legacy credentials (#11271)
  • fix(storage): support per-request options (#11445)
  • fix(storage): cache all credential types (#11447)

Common Libraries

  • doc: declutter main.dox pages (#11405)
  • doc(common): documentation improvements (#11376)

Other Changes

Bazel Testing: after v2.10.0 we will only test with Bazel >= 5.4.0. We
do not consider this a breaking change, as Bazel 4.x has been in maintenance
mode for several months.

v2.9.1

20 Apr 19:02
97cd9ed
Compare
Choose a tag to compare

Storage

  • fix(storage): cache legacy credentials (#11333)