google-cloud-rpc breaking changes

cargo

48 curated breaking changes across major versions of google-cloud-rpc. Use this as a migration checklist before bumping dependencies.

48
changes
Breaking changes by transition
  • v0.8.0 \u2192 v0.9.0breaking

    We removed all_bytes() helper. This used to copy all the bytes into a single buffer. This is dangerous (the download may consume up to 5TiB of RAM, or maybe double this in some cases), and misleading (the data copy was not obvious). We are planning to restore the function with maybe a different signature.

  • v0.8.0 \u2192 v0.9.0breaking

    `size_hint()` is now async.

  • v0.6.0 \u2192 v0.7.0breaking

    fix(auth)!: Remove option for loading any credential type from json by @sai-sunder-s in https://github.com/googleapis/google-cloud-rust/pull/2647

  • v0.4.0 \u2192 v0.5.0breaking

    Implemented over several PRs, mainly https://github.com/googleapis/google-cloud-rust/pull/1953

  • v0.4.0 \u2192 v0.5.0breaking

    Protobuf enumerations are mapped to Rust enumerations.

  • v0.4.0 \u2192 v0.5.0breaking

    The google-cloud-aiplatform-v1 crate gained features to select only a subset of the many clients in this crate.

  • v0.4.0 \u2192 v0.5.0breaking

    Implemented over many PRs, including https://github.com/googleapis/google-cloud-rust/pull/1878

  • v0.4.0 \u2192 v0.5.0breaking

    Most client methods lost the (so far required) path parameters, they must all be set on the request builder returned by these methods using `.set_${field_name}(..)`.

  • v0.3.0 \u2192 v0.4.0breaking

    impl(auth)!: ring for default crypto provider by @dbolduc in https://github.com/googleapis/google-cloud-rust/pull/1492

  • v0.3.0 \u2192 v0.4.0breaking

    refactor!: move param helpers to `g-c-http-client` by @coryan in https://github.com/googleapis/google-cloud-rust/pull/1507

  • v0.3.0 \u2192 v0.4.0breaking

    refactor!: move `ReqwestClient` by @coryan in https://github.com/googleapis/google-cloud-rust/pull/1497

  • v0.3.0 \u2192 v0.4.0breaking

    cleanup!: remove 'unstable-stream' feature from clients by @dbolduc in https://github.com/googleapis/google-cloud-rust/pull/1499

  • v0.3.0 \u2192 v0.4.0breaking

    feat(gax)!: stable paginator by @dbolduc in https://github.com/googleapis/google-cloud-rust/pull/1466

  • v0.2.0 \u2192 v0.3.0breaking

    feat(auth)!: clone-able `CredentialError` by @dbolduc in https://github.com/googleapis/google-cloud-rust/pull/1349

  • v0.2.0 \u2192 v0.3.0breaking

    fix(auth)!: stable token expiration type by @dbolduc in https://github.com/googleapis/google-cloud-rust/pull/1134

  • v0.2.0-rc2 \u2192 v0.2.0breaking

    feat: applications can initialize clients to use service account credentials.

  • v0.2.0-rc2 \u2192 v0.2.0breaking

    feat: applications can provide retry policies to either clients or specific RPCs (or both).

  • v0.2.0-rc2 \u2192 v0.2.0breaking

    feat: helper functions to handle long-running operations (LROs).

  • v0.2.0-rc2 \u2192 v0.2.0breaking

    feat: easier to use mapping for enum values.

  • v0.2.0-rc2 \u2192 v0.2.0breaking

    **BREAKING CHANGE** cleanup(generator/rust): rename `traits` module by @coryan in https://github.com/googleapis/google-cloud-rust/pull/891

  • v0.11.0 \u2192 v0.12.0breaking

    fix(auth)!: Remove universe domain builder method for mds by @sai-sunder-s in https://github.com/googleapis/google-cloud-rust/pull/3249

  • v0.11.0 \u2192 v0.12.0breaking

    cleanup(gax)!: future proof backoff policy by @coryan in https://github.com/googleapis/google-cloud-rust/pull/3250

  • v0.11.0 \u2192 v0.12.0breaking

    cleanup(gax)!: future proof polling policies by @coryan in https://github.com/googleapis/google-cloud-rust/pull/3251

  • v0.11.0 \u2192 v0.12.0breaking

    fix(auth)!: Remove support for quota project from API Key creds by @sai-sunder-s in https://github.com/googleapis/google-cloud-rust/pull/3244

  • v0.10.0 \u2192 v0.11.0breaking

    feat(storage)!: return object on checksum mismatch by @coryan in https://github.com/googleapis/google-cloud-rust/pull/2871

  • v0.10.0 \u2192 v0.11.0breaking

    The Cloud Storage client library includes many changes from the 0.25.0-preview5 version. Including:

  • v0.10.0 \u2192 v0.11.0breaking

    cleanup(storage)!: rename `download_resume_policy` by @coryan in https://github.com/googleapis/google-cloud-rust/pull/2903

  • v0.10.0 \u2192 v0.11.0breaking

    cleanup(storage)!: move `KeyAes256` by @coryan in https://github.com/googleapis/google-cloud-rust/pull/2905

  • v0.10.0 \u2192 v0.11.0breaking

    cleanup(storage)!: rename `upload_source` module by @coryan in https://github.com/googleapis/google-cloud-rust/pull/2904

  • release-20260212 \u2192 release-20260312breaking

    fix(pubsub)!: return PublishError from Publish instead of an Arc<gax::error> by @PhongChuong in https://github.com/googleapis/google-cloud-rust/pull/4681

  • release-20260212 \u2192 release-20260312breaking

    cleanup(pubsub)!: rename subscribe API by @dbolduc in https://github.com/googleapis/google-cloud-rust/pull/4910

  • release-20260212 \u2192 release-20260312breaking

    refactor(pubsub)!: rename subscriber stream creation functions by @suzmue in https://github.com/googleapis/google-cloud-rust/pull/4799

  • release-20260212 \u2192 release-20260312breaking

    cleanup(pubsub)!: rename `Session` -> `MessageStream` by @dbolduc in https://github.com/googleapis/google-cloud-rust/pull/4742

  • release-20260212 \u2192 release-20260312breaking

    cleanup(pubsub)!: move the BasePublisher out of crate::client::* by @suzmue in https://github.com/googleapis/google-cloud-rust/pull/4637

  • release-20260128 \u2192 release-20260212breaking

    [google-cloud-pubsub](https://crates.io/crates/google-cloud-pubsub/0.32.2-preview): the preview version includes the following changes.

  • release-20260128 \u2192 release-20260212breaking

    cleanup(pubsub)!: rename `PubsubMessage` -> `Message` by @dbolduc in https://github.com/googleapis/google-cloud-rust/pull/4634

  • release-20260128 \u2192 release-20260212breaking

    cleanup(pubsub)!: remove explicit nack by @haphungw in https://github.com/googleapis/google-cloud-rust/pull/4549

  • release-20260128 \u2192 release-20260212breaking

    cleanup(pubsub)!: rename PublishHandle to PublishFuture by @suzmue in https://github.com/googleapis/google-cloud-rust/pull/4636

  • release-20260113 \u2192 release-20260128breaking

    [google-cloud-pubsub](https://crates.io/crates/google-cloud-pubsub/0.32.2-preview): the preview version includes the following changes.

  • release-20260113 \u2192 release-20260128breaking

    [google-cloud-dialogflow-cx-v3](https://crates.io/crates/google-cloud-dialogflow-cx-v3): the service removed a number of fields https://github.com/googleapis/google-cloud-rust/pull/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.

  • release-20260113 \u2192 release-20260128breaking

    refactor(pubsub)!: Rename Client to BasePublisher by @suzmue in https://github.com/googleapis/google-cloud-rust/pull/4283

  • release-20251210 \u2192 release-20260113breaking

    [google-cloud-compute-v1](https://crates.io/crates/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](https://github.com/googleapis/google-cloud-rust/blob/539b576f426918883f32ce55a385fea852bde2bf/doc/migrations/google-cloud-

  • release-20251210 \u2192 release-20260113breaking

    [google-cloud-sql-v1](https://crates.io/crates/google-cloud-sql-v1) released as 2.0.0. The service no longer accepts or produces a number of enum variants in [SqlDSatabaseVersion](https://docs.rs/google-cloud-sql-v1/1.3.0/google_cloud_sql_v1/model/enum.SqlDatabaseVersion.html). 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.

  • v1.0.0 \u2192 release-20251007breaking

    This is a [Pre-GA service](https://cloud.google.com/security-command-center/docs/compliance-manager-overview) changes to its API are common and expected.

  • v1.0.0 \u2192 release-20251007breaking

    Our code generator incorrectly used the `Facet` as the items for `search().by_items()` and `search_lite().by_items()`.

  • v1.0.0 \u2192 release-20251007breaking

    [search()](https://docs.rs/google-cloud-discoveryengine-v1/2.0.0/google_cloud_discoveryengine_v1/client/struct.SearchService.html#method.search), and [search_lite()](https://docs.rs/google-cloud-discoveryengine-v1/2.0.0/google_cloud_discoveryengine_v1/client/struct.SearchService.html#method.search_lite) return pages which contain both `Vec<SearchResult>` and `Vec<Facet>`.

  • v1.0.0 \u2192 release-20251007breaking

    [google-cloud-discoveryengine-v1](https://crates.io/crates/google-cloud-discoveryengine-v1)

  • v1.0.0 \u2192 release-20251007breaking

    The [google-cloud-cloudsecuritycompliance-v1](https://crates.io/crates/google-cloud-cloudsecuritycompliance-v1) crate was bumped to 2.0 because the service had breaking changes.

API access

Get this data programmatically \u2014 free, no authentication.

curl https://depscope.dev/api/breaking/cargo/google-cloud-rpc