googleapis / google-cloud-cpp

C++ Client Libraries for Google Cloud Services
https://cloud.google.com/
Apache License 2.0
553 stars 373 forks source link

remove legacy Spanner admin interfaces when deprecation period expires #7356

Open devbww opened 3 years ago

devbww commented 3 years ago

As of 2021-10-01 the hand-wrought

connection classes, along with the overloaded functions

that build them, and the

client classes, were all deprecated in favor of their similarly named counterparts in the google::cloud::spanner_admin namespace from the https://github.com/googleapis/google-cloud-cpp/tree/main/google/cloud/spanner/admin source tree.

The new interfaces were generated directly from the Spanner admin service definitions in https://github.com/googleapis/googleapis/tree/master/google/spanner/admin by the https://github.com/googleapis/google-cloud-cpp/tree/main/generator. As such, they are at a slightly lower level, dealing only with protobuf types, but the basic elements remain the same.

The old interfaces are now frozen and will be removed from the code base on or shortly after 2022-10-01, so customers will need to migrate any affected code before then.

Deprecation attributes have been added to those old APIs to aid in their identification, while the sample code in https://github.com/googleapis/google-cloud-cpp/blob/main/google/cloud/spanner/samples/samples.cc has been updated to use the new APIs. See the diffs between the old and new samples in https://github.com/googleapis/google-cloud-cpp/pull/7311 for a more concise picture of how to perform migrations.

devbww commented 3 years ago

And don't forget to re-partition the Spanner test instances, using the "restore-database-partition" label, when the deprecated tests are removed. The "legacy-{core,extra}" instances can be distributed back into the "generated-{core,extra}" instances.

devjgm commented 2 years ago

Waiting until 2022-10-01