Skip to content

Releases: googleapis/google-cloud-rust

20260413

14 Apr 16:07
d053bcd

Choose a tag to compare

What's Changed

The libraries are instrumented to generate the following signals:

  1. INFO spans for each logical client request. Typically a single method call in the client struct gets such a span.
  2. A histogram metric measuring the elapsed time for each logical client request.
  3. WARN logs for each logical client requests that fail.
  4. INFO spans for each low-level attempt RPC attempt. Typically a single method in the client struct gets one such span, but there may be more if the library had to retry the RPC.
  5. DEBUG logs for each low-level attempt that fails.

These spans and logs follow OpenTelemetry Semantic Conventions with additional Google Cloud attributes. Both the spans and logs and are should be suitable for production monitoring.

The libraries also have DEBUG spans for each request, these include the full request body, the full response body for successful requests, and the full error message, with details, for failed requests. Consider the contents of these requests and responses before enabling them in production environments, as the request or responses may include sensitive data.

These DEBUG spans use the client library crate followed by ::tracing as their target (e.g. google-cloud-secretmanager-v1::tracing) and the method name as the span name.You can use the name and/or target to set up your filters.

Warning

Observability signals at any level may contain sensitive data such as resource names, full URLs, and error messages.

Before configuring subscribers or exporters for traces and logs, review the contents of the spans and consult the tracing framework documentation to set up filters and formatters to prevent leaking sensitive information, depending on your intended use case.

More information

The Enable logging guide shows you how to initialize a subscriber to log events to the console.

Other changes

  • fix(pubsub): batch nacks on shutdown to respect service limits by @suzmue in #5149
  • feat(storage): skip unnecessary checksum computation during read_object by @vsharonlynn in #5134
  • fix(pubsub): avoid ack batch size limit errors by @dbolduc in #5227
  • feat(pubsub): add APIs to shutdown subscriber by @dbolduc in #5257
  • feat(pubsub): add nack() method to Handler for AtLeastOnce by @suzmue in #5261
  • fix(auth): executable sourced creds should accept id token type by @alvarowolfx in #5316
  • feat(pubsub): add confirmed_nack to ExactlyOnce handler by @suzmue in #5303
  • docs: minor docs fixes by @zoryamba in #5370
  • docs: fix enum guide link by @dbolduc in #5378

Full Changelog: release-20260327...release-20260413

20260327

27 Mar 12:44
5f5eb6c

Choose a tag to compare

New Libraries

What's Changed

  • feat(gax): retry on Unknown and 503 by @coryan in #5023
  • feat(pubsub): configurable max lease by @dbolduc in #5005
  • feat(storage): Add method to disable checksums on read object by @vsharonlynn in #4993
  • feat(pubsub): add exactly once delivery in Subscriber by @PhongChuong in #5032
  • fix(pubsub): longer default lease extension by @dbolduc in #5045
  • docs(pubsub): fix link in the Publisher doc comment by @suzmue in #5066
  • docs(storage): add bucket encryption examples by @joshuatants in #5073
  • feat(pubsub): configure subscriber shutdown behavior by @dbolduc in #5064
  • fix(pubsub): default shutdown behavior by @dbolduc in #5110
  • docs(pubsub): remove warnings about crate instability by @suzmue in #5082

Full Changelog: release-20260312...release-20260327

2026-03-12

13 Mar 17:30
40581e2

Choose a tag to compare

Breaking Changes

  • fix(pubsub)!: return PublishError from Publish instead of an Arcgax::error by @PhongChuong in #4681
  • cleanup(pubsub)!: move the BasePublisher out of crate::client::* by @suzmue in #4637
  • cleanup(pubsub)!: rename Session -> MessageStream by @dbolduc in #4742
  • refactor(pubsub)!: rename subscriber stream creation functions by @suzmue in #4799
  • cleanup(pubsub)!: rename subscribe API by @dbolduc in #4910
  • cleanup(pubsub)!: clarify deadline extension option by @dbolduc in #4949

New Libraries

  • feat(google-cloud-hypercomputecluster-v1): generate library by @miguelvelezsa in #4932
  • feat(google/cloud/vectorsearch/v1): generate library by @miguelvelezsa in #4934
  • feat(securitycentermanagement-v1): add library by @coryan in #4986
  • feat(pubsub): the library reached 0.33.0 we think we are less likely to change the APIs before GA and 1.0

What's Changed

  • fix(pubsub): Publisher byte threshold off by one error by @PhongChuong in #4651
  • docs(pubsub): add subscriber example to client module docs by @suzmue in #4686
  • feat(pubsub): make ListTopicSubscriptions a paginator by @suzmue in #4709
  • feat(pubsub): add default backoff_policy for the publisher by @suzmue in #4712
  • feat(pubsub): define default retry policy for publisher by @suzmue in #4711
  • docs(storage): add sample for storage_open_object_single_ranged_read by @joshuatants in #4676
  • docs: Generate RPC samples for all APIs by @amanda-tarafa in #4720
  • fix(pubsub): handle batch actor shutdown gracefully by @suzmue in #4725
  • fix(pubsub): returnย  error when publishing messages that are too large by @PhongChuong in #4732
  • fix(doc): Concurrency bug in striped_downloads.md guide by @fellhorn in #4731
  • feat(pubsub): retry batches for ordering key messages forever by @suzmue in #4722
  • feat(pubsub): use configured retry policy for ordering key by @suzmue in #4743
  • feat(storage): tracing and logging by @coryan in #4740
  • docs(guide): fix striped downloads on Windows by @coryan in #4748
  • docs(storage): add sample for storage_open_object_read_full_object by @vsharonlynn in #4745
  • docs(pubsub): cleanup the crate level documentation by @suzmue in #4779
  • docs(pubsub): improve PublishFuture documentation by @suzmue in #4780
  • docs(pubsub): cleanup documentation to include receiving messages by @suzmue in #4794
  • docs(storage): add sample for storage_open_object_multiple_ranged_read by @vsharonlynn in #4785
  • fix(pubsub): increase default publish batch limit to 1 MB by @suzmue in #4802
  • feat(auth): AWS sourced external accounts by @alvarowolfx in #4790
  • docs: Slight change in generated sample formatting by @amanda-tarafa in #4827
  • fix(pubsub): publish messages larger than the configured batch threshold by @PhongChuong in #4822
  • fix(pubsub): update Flush to not block the Publisher by @PhongChuong in #4823
  • docs(storage): add sample for storage_open_multiple_objects_ranged_read by @vsharonlynn in #4816
  • docs: Improve parameter naming for RPC samples by @amanda-tarafa in #4837
  • feat(gax): retry policy decorator for 429 errors by @coryan in #4783
  • docs(guide): follow google style guide by @coryan in #4831
  • fix(pubsub): permanent errors end stream by @dbolduc in #4849
  • docs: Generate QuickStart samples by @amanda-tarafa in #4844
  • feat(gax): make error::rpc::Code::name() be &'static str by @coryan in #4876
  • feat(auth): add support for headless workforce identity by @alvarowolfx in #4825
  • feat(storage): support setting a custom user-agent on the client by @joshuatants in #4839
  • docs: Generate QuickStarts for all APIs by @amanda-tarafa in #4889
  • fix(pubsub): make Publisher::builder() generic by @suzmue in #4929
  • docs(pubsub): improve flush documentation by @suzmue in #4930
  • fix(conformance): remove -root suffix from conformance module by @jameslynnwu in #4921
  • docs(pubsub): touchup gRPC subchannel by @dbolduc in #4954
  • docs(pubsub): add generic client documentation to the publisher client by @suzmue in #4958
  • docs(pubsub): clarify ordered delivery by @dbolduc in #4961
  • docs(pubsub): add into_stream example by @dbolduc in #4965

New Contributors

Full Changelog: release-20260212...release-20260312

2026-02-12

13 Feb 19:31
9989841

Choose a tag to compare

Breaking changes

New libraries

What's Changed

  • feat(pubsub): add simple Publisher builder by @suzmue in #4343
  • docs(pubsub): improve setter documenations for publisher by @suzmue in #4438
  • fix(pubsub): remove unnecessary worker spawn by @PhongChuong in #4444
  • docs(gax): fix rustdoc warnings by @coryan in #4453
  • feat(auth): add retry to mds idtoken provider by @alvarowolfx in #4256
  • fix(pubsub): nack messages when handler is dropped by @haphungw in #4548
  • docs(storage): add samples for generate signed urls by @joshuatants in #4525
  • fix(pubsub): retry acks when channel closes by @dbolduc in #4575
  • feat(pubsub): include subscription name in StreamingPull header by @haphungw in #4585
  • docs(storage): include into_stream adapter by @dbolduc in #4594
  • feat(pubsub): implement into_stream for a Session by @haphungw in #4590
  • docs(pubsub): link types in publisher builder doc comments by @suzmue in #4615
  • docs(pubsub): match the Publisher to other client comment style by @suzmue in #4617
  • fix(pubsub): change error return type for publish to Arc by @suzmue in #4620
  • feat(storage): prepare for LRO returning Empty by @coryan in #4633
  • docs(pubsub): handler examples by @dbolduc in #4639
  • docs(pubsub): note on ordered delivery by @dbolduc in #4640
  • fix(pubsub): handle shutdown behavior for publisher by @suzmue in #4622
  • fix: token cache exits after exhaustive retries by @alvarowolfx in #4551
  • docs(pubsub): add exactly-once disclaimer by @dbolduc in #4649
  • docs: Generate sample for List RPCs by @amanda-tarafa in #4641

New Contributors

Full Changelog: release-20260128...release-20260212

2026-01-28

28 Jan 20:55
fc20328

Choose a tag to compare

Breaking changes

  • google-cloud-dialogflow-cx-v3: the service removed a number of fields #4398
    While we do not expect that any working application can use or receive the fields, we bumped the major version as the change is breaking.

  • google-cloud-pubsub: the preview version includes the following changes.

    • refactor(pubsub)!: Rename Client to BasePublisher by @suzmue in #4283

New libraries

What's changed

  • Pub/Sub subscriber message streams stay open indefinitely. They no longer close after ~30 minutes.

    • feat(pubsub): retries starting subscribe stream by @dbolduc in #4377
    • feat(pubsub): subscriber stream resumes by @dbolduc in #4381
  • feat(auth): make jsonwebtoken backend optional by @coryan in #4231

  • fix: force http1 only by @PhongChuong in #4296

  • docs(pubsub): subscriber observability note by @dbolduc in #4312

  • docs: fix broken 'Address Cascading Failures' links by @suzmue in #4325

  • feat(pubsub): pause the publisher for an ordering key when there is an error by @PhongChuong in #4286

  • docs: Generate samples for methods using wildcard typed resources. by @amanda-tarafa in #4324

  • docs: Generate undelete RPC samples by @amanda-tarafa in #4340

  • fix(compute/v1): fix ReservationSlots path validation by @coryan in #4342

  • feat(auth): prune crypto provider dependencies by @coryan in #4220

  • feat(pubsub): add ability to resume publishing for Publisher by @PhongChuong in #4338

  • feat(storage): prune crypto provider dependencies by @coryan in #4362

  • feat: allow applications to prune crypto providers by @coryan in #4366

  • docs: default rustls crypto provider changes by @coryan in #4382

  • docs: update default rustls crypto provider by @coryan in #4383

  • fix(auth): force minimum version for aws-lc-rs by @coryan in #4387

  • fix(storage): sign_with is Send by @msdrigg in #4399

  • docs: Generate samples for LROs. by @amanda-tarafa in #4409

New Contributors

Full Changelog: release-20260113...release-20260128

2026-01-13

14 Jan 15:46
13bef44

Choose a tag to compare

Breaking Changes

  • google-cloud-sql-v1 released as 2.0.0.

    The service no longer accepts or produces a number of enum variants in SqlDSatabaseVersion.

    These variants have been removed. While we do not expect that any working application can use or receive these enum values, we bumped the major version as the change is breaking.

  • google-cloud-compute-v1 released as 2.0.0.

    A small number of functions, which we expect are rarely used, changed from returning wkt::Empty to returning the unit type (). This makes the client consistent with clients for other services. We apologize for any inconvenience.

    For more details, see the 2.0.0 migration guide.

Interesting features

  • The Cloud Pub/Sub preview gained a number of features, including a high-throughput Subscriber client for receiving messages from Cloud Pub/Sub.

    The Subscriber supports at-least-once delivery subscriptions. It handles lease management. It exposes flow control configuration. It includes idle stream keepalives.

    The Subscriber does not yet support stream retries (so sessions timeout after ~30 minutes), exactly-once delivery, or mocking. We are working on these.

    Your feedback is greatly appreciated while we stabilize this API!

  • The Cloud Storage client now supports open_object().

    This operation allows you to open an object and then perform multiple ranged reads on the object.

    Each ranged read has lower latency than performing the read by itself.

    Note that this features is under an allow list, contact your account team to include your project into the list.

  • The Google Cloud Storage client can now created signed URLs.

  • Code samples showing how to use some client functions.

What's changed

New Contributors

Full Changelog: release-20251210...release-20260113

2025-12-10

10 Dec 15:36
52a427b

Choose a tag to compare

What's Changed

We are happy to announce that the google-cloud-compute-v1 crate is now Generally Available (GA).

We added support for ID Tokens in google-cloud-auth.

We also added a way to get access tokens directly in google-cloud-auth (instead of via a HeaderMap).

We also added examples for all setters for our message types (requests, responses, etc.).

Full Changelog: release-20251114...release-20251210

2025-11-14

15 Nov 00:31
25a62c1

Choose a tag to compare

What's Changed

This release resolves an issue with our minimal version requirements. All of our crates that depend on google-cloud-longrunning received a patch release.

In addition, here are some of the other changes that are included in this release:

  • cleanup(auth): make jsonwebtoken a dep only with cfg_google_cloud_unstable_id_token by @alvarowolfx in #3786
  • fix(storage): ReadObject cloneable without cloneable stub by @mincrmatt12 in #3780

New Contributors

Full Changelog: release-20251111...release-20251114

2025-11-11

12 Nov 15:22
467f409

Choose a tag to compare

New Libraries

  • We are happy to announce the v0.31.0-preview release of google-cloud-pubsub. As the version indicates, this library is under active development. We anticipate many breaking changes over the next few releases. The library is known to be incomplete. We do not recommend that you use the library in production. We do welcome feedback about the API, the documentation, or any bugs you may find.

What's Changed

Full Changelog: release-20251024...release-20251111

2025-10-24

24 Oct 17:11
4de2930

Choose a tag to compare

New Libraries

  • We have completed the implementation of the Compute API.

What's Changed

Full Changelog: release-20251007...release-20251024