Releases: googleapis/google-cloud-cpp
v2.24.0
No longer testing with MSVC 2019
We have stopped testing with MSVC 2019. Microsoft stopped mainstream support for MSVC 2019 in 2024-04. We continue to test with MSVC 2022. We recommend that you update to this version. Note that, in accordance with Google's Foundational C++ support policy, other Google libraries have stopped (or shortly will stop) testing with MSVC 2019 too.
Updated Libraries
- AI Platform API - new
FeatureRegistryServiceClient
andGenAiTuningServiceClient
- Cloud Dataplex API - new
DataScanServiceClient
andDataTaxonomyServiceClient
- Cloud SQL Admin API - several new clients:
SqlAvailableDatabaseVersionsServiceClient
SqlEventsServiceClient
SqlIamPoliciesServiceClient
SqlInstanceNamesServiceClient
SqlRegionsServiceClient
- Content Warehouse - new
PipelineServiceClient
- Dataproc - new
SessionControllerClient
andSessionTemplateControllerClient
- Dialogflow CX API - new
GeneratorsClient
- Discovery Engine - several new clients:
DataStoreServiceClient
EngineServiceClient
RecommendationServiceClient
SiteSearchEngineServiceClient
- Network Connectivity API - new
PolicyBasedRoutingServiceClient
- Retail - new
AnalyticsServiceClient
Datastore
- feat(datastore): emulator environment variable (#14100)
Pub/Sub
- fix(pubsub): correctly trace modacks in the unary pull (#14049)
Spanner
- fix(spanner): avoid absl types in public Interval API (#14095)
- feat(spanner): add a representation for the Spanner INTERVAL (#14059)
- fix(spanner): delete idle sessions upon SessionPool destruction (#14012)
Storage
- fix(storage): missing include (#14052)
Storage Control
- docs(storagecontrol): use
GetStorageLayout()
for quickstart (#14044) - docs(storagecontrol): update service title (#14042)
Google APIs interface definitions
- This release is based on definitions as of 2024-04-30T21:03:48Z
v2.23.0
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.
- App Hub API
- Backup and DR Service API
- Sovereign Controls by Partners
- Cloud Storage Control API is now GA.
Updated Libraries
- AI Platform API - new
NotebookServiceClient
andPersistentResourceServiceClient
- Cloud Dataplex API - new
CatalogServiceClient
- Network Services API - new
DepServiceClient
- SecurityCenter - add v2 version of the library
Bigtable
- fix(bigtable): respect GOOGLE_CLOUD_CPP_OPENTELEMETRY_TRACING (#13748)
Pub/Sub
- docs(pubsub): add kinesis sample (#13593)
Spanner
- feat(spanner): add ExcludeTransactionFromChangeStreamsOption (#13898)
- feat(spanner): add spanner::Value support for TypeCode::FLOAT32 (#13862)
- feat(spanner): add samples for proto columns (#13759)
- feat(spanner): add integration tests for proto columns (#13756)
- feat(spanner): add spanner::Value support for ProtoEnum/ProtoMessage (#13747)
- feat(spanner): add representations for the Spanner PROTO/ENUM types (#13743)
- feat(spanner): add sample for instance-admin managed autoscaler (#13740)
Speech
- fix(speech): enable location specific connections (#13757)
Storage
- fix(storage): preserve full Status in default creds (#13897)
- fix(storage): respect
GOOGLE_CLOUD_CPP_OPENTELEMETRY_TRACING
(#13766) - feat(storage): support HNS-enabled buckets (#13753)
- feat(storage): support soft delete timestamps (#13728)
Common Libraries
- feat(common): introduce
FieldMaskOption
(#13936) - docs(common): link to system parameters page (#13937)
- feat(common):
QuotaUserOption
for gRPC-based libs (#13933) - fix(common):
clang-cl
needs aconst_cast<>
(#13891) - fix(compute): shorten paths for Bazel+MSVC (#13836)
- feat(common): support injecting custom headers (#13829)
v2.22.0
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
Pub/Sub
- docs(pubsub): add doxygen comment to deprecate handwritten apis (#13585)
Spanner
- feat(spanner): add support for max commit delay (#13562)
- feat: install mocks for
spanner
,sql
,pubsublite
(#13548)
Storage
- docs(GCS+gRPC): add contact info (#13688)
- feat(storage): support listing folders as prefixes (#13683)
- feat(storage): support soft-deleted objects (#13644)
- feat(storage): support Bucket soft-delete metadata (#13623)
Common Libraries
v2.21.0
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
- feat(bigtable): support bigtable routing cookies (#13502)
- feat(bigtable): logging for bulk apply throttling (#13488)
Pub/Sub
- fix(pubsub): install admin mocks (#13537)
- feat(pubsub): add lease management for unary pull (#13428)
Storage
- feat(storage): support
UniverseDomainOption
(#13471) - docs(GCS+gRPC): better comments for
AsyncConnection
(#13424)
Common Libraries
v2.20.0
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.
AI Platform/Vertex AI
- feat(aiplatform): add new service proto file (#13325)
Bigtable
- fix(bigtable): use FQDN (#13305)
OpenTelemetry
- feat(otel): capture gRPC response metadata in traces (#13278)
Pub/Sub
- fix(pubsub): get future value before returning (#13241)
- fix(pubsub): pass by reference explicitly (#13220)
Common Libraries
v2.19.0
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
- feat(bigtable): throttling for AsyncBulkApply (#13203)
- fix(bigtable): async context propagation for tracing (#13156)
- feat(bigtable): support BulkApply throttling (#13124)
OpenTelemetry
- feat(otel): add Makefile (#13177)
- fix(otel): detach context when single-threaded (#13154)
- fix(otel): reconnect async traces (e.g. LROs) (#13147)
Spanner
- feat: add PG.OID type (#13127)
- feat(spanner): control replicas/regions used in non-transactional reads (#13031)
Vertex AI
- feat(aiplatform): generate new services (#13150)
Common Libraries
v2.18.0
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.
Compute Engine
- fix(compute):
RegionSecurityPoliciesClient::PatchSecurityPolicy
addedupdate_mask
field.
Memorystore for Redis
New CloudRedisClusterClient
.
OpenTelemetry
- doc(otel): add packaging instructions (#13005)
- fix(otel): end async client spans properly (#12919)
- fix(otel): support abseil <= 20210324 (#12993)
Spanner
- feat(spanner): single-RPC, batched commit of mutation groups (#12930)
Common Libraries
- feat(common): mock for
AsyncStreamingReadWriteRpc
(#12950) - fix(common): missed using
CARootsFilePathOption
(#12997) - fix(generator): do not override default sleeper in streaming-read RPCs (#12920)
Other Changes
- fix(oauth2): only enable via
GOOGLE_CLOUD_CPP_ENABLE
(#12911)
When compiling with CMake, the oauth2
used to be automatically enabled if GOOGLE_CLOUD_CPP_REST
was manually enabled or enabled by a separate library. That made it impossible to shard a build with separate builds for oauth2
, storage
and compute
.
v2.17.0
Compute Engine
- fix(compute): build with Bazel and MSVC (#12877)
- fix(compute): usable in external Bazel projects (#12864)
- fix(compute): add missing bazelrc file (#12856)
Storage
- feat(storage): another Bucket CRUD field (#12842)
- fix(storage): fix tellg() values (#12844)
- fix(storage): check ReadObject options at runtime (#12841)
- feat(storage):
MatchGlob
forListObjects()
(#12840) - doc(storage): describe default project search (#12833)
Common Libraries
- fix(oauth2): do not require
id_token
in creds (#12867)
Other Changes
We have stopped testing with GCC 7.5.0 on openSUSE/Leap: this distro uses
GCC 7.5.0 by default. This specific version of GCC crashes when compiling some
of the files generated by Protobuf 24.x. In other distros we test with GCC 7.3,
without problems. And we also test with newer versions of GCC without problems.
The exact files that cause the compiler to crash seem to change with minor
changes in Protobuf or the input .proto
files, making it difficult to maintain
some kind of exclusion list.
We have stopped testing with GCC 7.5.0 on openSUSE/Leap, and recommend you use
GCC >= 8 to compile google-cloud-cpp
. If you must compile with GCC 7.5.0,
consider only enabling the libraries you will need.
v2.16.0
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
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