From 280a50e338887b90b8f5a3a0379567ba65f261e0 Mon Sep 17 00:00:00 2001
From: Greg Miller <9447643+devjgm@users.noreply.github.com>
Date: Thu, 14 Oct 2021 08:41:56 -0400
Subject: [PATCH 1/3] refactor(common): versioned namespace includes major,
minor, patch
Fixes: https://github.com/googleapis/google-cloud-cpp/issues/5976
This PR changes our inline namespace to include the major, minor, and
patch numbers. It's been discussed that we should not include the patch
number, and that's OK with me if there's a benefit to doing so.
This PR also adds backward compatibility namespace aliases for both
`v1` and `gcpcxxV1` to avoid breaking users. This does introduce the
`gcpcxxV1` alias in non-generated code where it didn't previously exist
(and the same with `v1` in generated code), but this solution seems to
work fine and seems significantly simpler than any alternative that I
was able to think of.
There's no place to use `@deprecated` on these symbols, and indeed they
don't even show up in Doxygen documentation. The only indication of
deprecation is a mention in the `CHANGELOG.md` file that's included in
this PR.
---
CHANGELOG.md | 21 +++++++++++++++++++
.../verify_deprecated_targets.cc | 3 +++
google/cloud/version.h | 11 ++++++----
3 files changed, 31 insertions(+), 4 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1fcadb0ac7832..2fa1cb3a4b5ee 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -67,6 +67,27 @@
details.
+
+2022-11-01: remove `v1` and `gcpcxxV1` backward compatibility aliases
+
+
+* On 2022-11-01 (or shortly after) we will remove the inline namespace aliases
+ of `v1` and `gcpcxxV1` that are declared in `google/cloud/version.h`. These
+ aliases exist because we changed the format of our inline namespace name to
+ include the major, minor, and patch numbers for each release, and we didn't
+ want to break users. Our Doxygen documentation was mistakenly recommending
+ that users include the inline namespace names in their code, but this was
+ also fixed to now recommend against doing so. Users should generally omit the
+ name of our versioned inline namespace name because that will tightly couple
+ their code to a specific release, and will make upgrading to newer versions
+ more difficult. Instead, users should simply omit the inline namespace name,
+ for example, instead of ~`google::cloud::v1::Status`~ use
+ `google::cloud::Status`. Please update your code to avoid naming the `v1` and
+ `gcpcxxV1` inline namespace names before 2022-11-01. For more info, see
+ https://github.com/googleapis/google-cloud-cpp/issues/7463 and
+ https://github.com/googleapis/google-cloud-cpp/issues/5976.
+
+
## v1.33.0 - TBD
## v1.32.1 - 2021-10
diff --git a/ci/verify_deprecated_targets/verify_deprecated_targets.cc b/ci/verify_deprecated_targets/verify_deprecated_targets.cc
index da4649f23d2e9..05ee3f862a1f3 100644
--- a/ci/verify_deprecated_targets/verify_deprecated_targets.cc
+++ b/ci/verify_deprecated_targets/verify_deprecated_targets.cc
@@ -17,5 +17,8 @@
int main() {
std::cout << "Hello: " << google::cloud::version_string() << "\n";
+ // Verifies use of the backward-compatibility aliases: v1 and gcpcxxV1.
+ std::cout << "Hello: " << google::cloud::v1::version_string() << "\n";
+ std::cout << "Hello: " << google::cloud::gcpcxxV1::version_string() << "\n";
return 0;
}
diff --git a/google/cloud/version.h b/google/cloud/version.h
index 1227e38b84077..294f41ff6b558 100644
--- a/google/cloud/version.h
+++ b/google/cloud/version.h
@@ -27,11 +27,12 @@
"deprecated and will be be removed on 2022-04-01 or shortly " \
"after. See GitHub issue #5929 for more information.")
-#define GOOGLE_CLOUD_CPP_VCONCAT(Ma, Mi) v##Ma
-#define GOOGLE_CLOUD_CPP_VEVAL(Ma, Mi) GOOGLE_CLOUD_CPP_VCONCAT(Ma, Mi)
+#define GOOGLE_CLOUD_CPP_VCONCAT(Ma, Mi, Pa) v##Ma##_##Mi##_##Pa
+#define GOOGLE_CLOUD_CPP_VEVAL(Ma, Mi, Pa) GOOGLE_CLOUD_CPP_VCONCAT(Ma, Mi, Pa)
#define GOOGLE_CLOUD_CPP_NS \
GOOGLE_CLOUD_CPP_VEVAL(GOOGLE_CLOUD_CPP_VERSION_MAJOR, \
- GOOGLE_CLOUD_CPP_VERSION_MINOR)
+ GOOGLE_CLOUD_CPP_VERSION_MINOR, \
+ GOOGLE_CLOUD_CPP_VERSION_PATCH)
/**
* Versioned inline namespace that users should generally avoid spelling.
@@ -49,7 +50,9 @@
#define GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_BEGIN \
inline namespace GOOGLE_CLOUD_CPP_NS {
#define GOOGLE_CLOUD_CPP_INLINE_NAMESPACE_END \
- } // namespace GOOGLE_CLOUD_CPP_NS
+ } /* namespace GOOGLE_CLOUD_CPP_NS */ \
+ namespace v1 = GOOGLE_CLOUD_CPP_NS; \
+ namespace gcpcxxV1 = GOOGLE_CLOUD_CPP_NS;
// This preprocessor symbol is deprecated and should never be used anywhere. It
// exists solely for backward compatibility to avoid breaking anyone who may
From ddd9d184ff8bf89edaf40c0806f8d85f1ae6d565 Mon Sep 17 00:00:00 2001
From: Greg Miller <9447643+devjgm@users.noreply.github.com>
Date: Thu, 14 Oct 2021 09:22:34 -0400
Subject: [PATCH 2/3] update abi dumps
---
...le_cloud_cpp_bigquery.expected.abi.dump.gz | Bin 15977 -> 16068 bytes
...le_cloud_cpp_bigtable.expected.abi.dump.gz | Bin 67322 -> 67574 bytes
...ogle_cloud_cpp_common.expected.abi.dump.gz | Bin 34474 -> 34542 bytes
..._cloud_cpp_grpc_utils.expected.abi.dump.gz | Bin 47470 -> 47576 bytes
.../google_cloud_cpp_iam.expected.abi.dump.gz | Bin 22760 -> 22805 bytes
...ogle_cloud_cpp_pubsub.expected.abi.dump.gz | Bin 64063 -> 67680 bytes
...gle_cloud_cpp_spanner.expected.abi.dump.gz | Bin 92844 -> 93174 bytes
...gle_cloud_cpp_storage.expected.abi.dump.gz | Bin 158123 -> 158949 bytes
8 files changed, 0 insertions(+), 0 deletions(-)
diff --git a/ci/abi-dumps/google_cloud_cpp_bigquery.expected.abi.dump.gz b/ci/abi-dumps/google_cloud_cpp_bigquery.expected.abi.dump.gz
index f339739f65f73810c3a3f3258a6ff6805050dcc9..5c99eab5c630947f89d04f412df632349ff01be6 100644
GIT binary patch
literal 16068
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
QQcBTN;l)li#G7<
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
Kp1yZof&>7H#9e>@
literal 15977
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