This is an automated email from the ASF dual-hosted git repository.
kou pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow.git
The following commit(s) were added to refs/heads/main by this push:
new cf7ab123a2 GH-44954: [C++][CI] Silence protobuf-generated deprecations
(#44955)
cf7ab123a2 is described below
commit cf7ab123a280155425bec0c3e9c5b6ebed631e0d
Author: Antoine Pitrou <[email protected]>
AuthorDate: Sat Dec 7 07:33:38 2024 +0100
GH-44954: [C++][CI] Silence protobuf-generated deprecations (#44955)
### Rationale for this change
### What changes are included in this PR?
### Are these changes tested?
### Are there any user-facing changes?
* GitHub Issue: #44954
Lead-authored-by: Antoine Pitrou <[email protected]>
Co-authored-by: Jacob Wujciak-Jens <[email protected]>
Co-authored-by: Antoine Pitrou <[email protected]>
Signed-off-by: Sutou Kouhei <[email protected]>
---
cpp/cmake_modules/ThirdpartyToolchain.cmake | 13 +++++++++----
cpp/src/arrow/engine/substrait/expression_internal.h | 4 ++++
.../arrow/engine/substrait/extended_expression_internal.h | 4 ++++
cpp/src/arrow/engine/substrait/plan_internal.h | 4 ++++
cpp/src/arrow/engine/substrait/relation_internal.h | 4 ++++
cpp/src/arrow/engine/substrait/test_plan_builder.cc | 6 +++++-
cpp/src/arrow/engine/substrait/util_internal.h | 4 ++++
cpp/src/arrow/flight/sql/client.cc | 4 ++++
cpp/src/arrow/flight/sql/protocol_internal.cc | 5 +++++
cpp/src/arrow/flight/sql/protocol_internal.h | 3 +++
cpp/src/arrow/flight/sql/server.cc | 7 +++++++
11 files changed, 53 insertions(+), 5 deletions(-)
diff --git a/cpp/cmake_modules/ThirdpartyToolchain.cmake
b/cpp/cmake_modules/ThirdpartyToolchain.cmake
index 35ad4089e7..a7d509de10 100644
--- a/cpp/cmake_modules/ThirdpartyToolchain.cmake
+++ b/cpp/cmake_modules/ThirdpartyToolchain.cmake
@@ -2061,10 +2061,14 @@ macro(build_substrait)
# Missing dll-interface:
list(APPEND SUBSTRAIT_SUPPRESSED_FLAGS "/wd4251")
- elseif(CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang" OR CMAKE_CXX_COMPILER_ID
STREQUAL
- "Clang")
- # Protobuf generated files trigger some errors on CLANG TSAN builds
- list(APPEND SUBSTRAIT_SUPPRESSED_FLAGS "-Wno-error=shorten-64-to-32")
+ else()
+ # GH-44954: silence [[deprecated]] declarations in protobuf-generated code
+ list(APPEND SUBSTRAIT_SUPPRESSED_FLAGS "-Wno-deprecated")
+ if(CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang" OR CMAKE_CXX_COMPILER_ID
STREQUAL
+ "Clang")
+ # Protobuf generated files trigger some errors on CLANG TSAN builds
+ list(APPEND SUBSTRAIT_SUPPRESSED_FLAGS "-Wno-error=shorten-64-to-32")
+ endif()
endif()
set(SUBSTRAIT_SOURCES)
@@ -2116,6 +2120,7 @@ macro(build_substrait)
add_library(substrait STATIC ${SUBSTRAIT_SOURCES})
set_target_properties(substrait PROPERTIES POSITION_INDEPENDENT_CODE ON)
+ target_compile_options(substrait PRIVATE "${SUBSTRAIT_SUPPRESSED_FLAGS}")
target_include_directories(substrait PUBLIC ${SUBSTRAIT_INCLUDES})
target_link_libraries(substrait PUBLIC ${ARROW_PROTOBUF_LIBPROTOBUF})
add_dependencies(substrait substrait_gen)
diff --git a/cpp/src/arrow/engine/substrait/expression_internal.h
b/cpp/src/arrow/engine/substrait/expression_internal.h
index 2ce2ee76af..a9f8949c23 100644
--- a/cpp/src/arrow/engine/substrait/expression_internal.h
+++ b/cpp/src/arrow/engine/substrait/expression_internal.h
@@ -27,8 +27,12 @@
#include "arrow/engine/substrait/type_fwd.h"
#include "arrow/engine/substrait/visibility.h"
#include "arrow/result.h"
+#include "arrow/util/macros.h"
+// GH-44954: silence [[deprecated]] declarations in protobuf-generated code
+ARROW_SUPPRESS_DEPRECATION_WARNING
#include "substrait/algebra.pb.h" // IWYU pragma: export
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
namespace arrow {
namespace engine {
diff --git a/cpp/src/arrow/engine/substrait/extended_expression_internal.h
b/cpp/src/arrow/engine/substrait/extended_expression_internal.h
index 81bc4b8745..45f89c8610 100644
--- a/cpp/src/arrow/engine/substrait/extended_expression_internal.h
+++ b/cpp/src/arrow/engine/substrait/extended_expression_internal.h
@@ -28,8 +28,12 @@
#include "arrow/engine/substrait/visibility.h"
#include "arrow/result.h"
#include "arrow/status.h"
+#include "arrow/util/macros.h"
+// GH-44954: silence [[deprecated]] declarations in protobuf-generated code
+ARROW_SUPPRESS_DEPRECATION_WARNING
#include "substrait/extended_expression.pb.h" // IWYU pragma: export
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
namespace arrow {
namespace engine {
diff --git a/cpp/src/arrow/engine/substrait/plan_internal.h
b/cpp/src/arrow/engine/substrait/plan_internal.h
index 737e65b7e2..f2e7ded5f0 100644
--- a/cpp/src/arrow/engine/substrait/plan_internal.h
+++ b/cpp/src/arrow/engine/substrait/plan_internal.h
@@ -27,8 +27,12 @@
#include "arrow/engine/substrait/visibility.h"
#include "arrow/result.h"
#include "arrow/status.h"
+#include "arrow/util/macros.h"
+// GH-44954: silence [[deprecated]] declarations in protobuf-generated code
+ARROW_SUPPRESS_DEPRECATION_WARNING
#include "substrait/plan.pb.h" // IWYU pragma: export
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
namespace arrow {
namespace engine {
diff --git a/cpp/src/arrow/engine/substrait/relation_internal.h
b/cpp/src/arrow/engine/substrait/relation_internal.h
index a436f1770d..2a96d0024e 100644
--- a/cpp/src/arrow/engine/substrait/relation_internal.h
+++ b/cpp/src/arrow/engine/substrait/relation_internal.h
@@ -28,8 +28,12 @@
#include "arrow/engine/substrait/type_fwd.h"
#include "arrow/engine/substrait/visibility.h"
#include "arrow/result.h"
+#include "arrow/util/macros.h"
+// GH-44954: silence [[deprecated]] declarations in protobuf-generated code
+ARROW_SUPPRESS_DEPRECATION_WARNING
#include "substrait/algebra.pb.h" // IWYU pragma: export
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
namespace arrow {
namespace engine {
diff --git a/cpp/src/arrow/engine/substrait/test_plan_builder.cc
b/cpp/src/arrow/engine/substrait/test_plan_builder.cc
index f38f7ece9a..724c58277e 100644
--- a/cpp/src/arrow/engine/substrait/test_plan_builder.cc
+++ b/cpp/src/arrow/engine/substrait/test_plan_builder.cc
@@ -31,8 +31,12 @@
#include "arrow/status.h"
#include "arrow/table.h"
#include "arrow/type_fwd.h"
+#include "arrow/util/macros.h"
-#include "substrait/algebra.pb.h"
+// GH-44954: silence [[deprecated]] declarations in protobuf-generated code
+ARROW_SUPPRESS_DEPRECATION_WARNING
+#include "substrait/algebra.pb.h" // IWYU pragma: export
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
namespace arrow {
namespace engine {
diff --git a/cpp/src/arrow/engine/substrait/util_internal.h
b/cpp/src/arrow/engine/substrait/util_internal.h
index 627ad1126d..d812bbf7b8 100644
--- a/cpp/src/arrow/engine/substrait/util_internal.h
+++ b/cpp/src/arrow/engine/substrait/util_internal.h
@@ -24,10 +24,14 @@
#include "arrow/engine/substrait/visibility.h"
#include "arrow/result.h"
#include "arrow/util/hashing.h"
+#include "arrow/util/macros.h"
#include "arrow/util/unreachable.h"
+// GH-44954: silence [[deprecated]] declarations in protobuf-generated code
+ARROW_SUPPRESS_DEPRECATION_WARNING
#include "substrait/algebra.pb.h" // IWYU pragma: export
#include "substrait/plan.pb.h" // IWYU pragma: export
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
namespace arrow {
namespace engine {
diff --git a/cpp/src/arrow/flight/sql/client.cc
b/cpp/src/arrow/flight/sql/client.cc
index 536bc67fc5..fe087cc947 100644
--- a/cpp/src/arrow/flight/sql/client.cc
+++ b/cpp/src/arrow/flight/sql/client.cc
@@ -31,6 +31,7 @@
#include "arrow/ipc/reader.h"
#include "arrow/result.h"
#include "arrow/util/logging.h"
+#include "arrow/util/macros.h"
namespace flight_sql_pb = arrow::flight::protocol::sql;
@@ -829,6 +830,8 @@ Status FlightSqlClient::Rollback(const FlightCallOptions&
options,
return results->Drain();
}
+// ActionCancelQuery{Request,Result} are deprecated
+ARROW_SUPPRESS_DEPRECATION_WARNING
::arrow::Result<CancelResult> FlightSqlClient::CancelQuery(
const FlightCallOptions& options, const FlightInfo& info) {
flight_sql_pb::ActionCancelQueryRequest cancel_query;
@@ -855,6 +858,7 @@ Status FlightSqlClient::Rollback(const FlightCallOptions&
options,
}
return Status::IOError("Server returned unknown result ", result.result());
}
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
Status FlightSqlClient::Close() { return impl_->Close(); }
diff --git a/cpp/src/arrow/flight/sql/protocol_internal.cc
b/cpp/src/arrow/flight/sql/protocol_internal.cc
index 0d5e3c4c60..984e782223 100644
--- a/cpp/src/arrow/flight/sql/protocol_internal.cc
+++ b/cpp/src/arrow/flight/sql/protocol_internal.cc
@@ -14,6 +14,10 @@
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
+#include "arrow/util/macros.h"
+
+// GH-44954: silence [[deprecated]] declarations in protobuf-generated code
+ARROW_SUPPRESS_DEPRECATION_WARNING
#include "arrow/flight/sql/protocol_internal.h"
// NOTE(lidavidm): Normally this is forbidden, but on Windows to get
@@ -21,3 +25,4 @@
// ensure our header gets included (and Protobuf will not insert the
// include for you)
#include "arrow/flight/sql/FlightSql.pb.cc" // NOLINT
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
diff --git a/cpp/src/arrow/flight/sql/protocol_internal.h
b/cpp/src/arrow/flight/sql/protocol_internal.h
index ce50ad2f61..09bfe32582 100644
--- a/cpp/src/arrow/flight/sql/protocol_internal.h
+++ b/cpp/src/arrow/flight/sql/protocol_internal.h
@@ -18,9 +18,12 @@
// This addresses platform-specific defines, e.g. on Windows
#include "arrow/flight/platform.h" // IWYU pragma: keep
+#include "arrow/util/macros.h"
// This header holds the Flight SQL definitions.
#include "arrow/flight/sql/visibility.h"
+ARROW_SUPPRESS_DEPRECATION_WARNING
#include "arrow/flight/sql/FlightSql.pb.h" // IWYU pragma: export
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
diff --git a/cpp/src/arrow/flight/sql/server.cc
b/cpp/src/arrow/flight/sql/server.cc
index 5f6154a576..f68d884c62 100644
--- a/cpp/src/arrow/flight/sql/server.cc
+++ b/cpp/src/arrow/flight/sql/server.cc
@@ -31,6 +31,7 @@
#include "arrow/flight/sql/sql_info_internal.h"
#include "arrow/type.h"
#include "arrow/util/checked_cast.h"
+#include "arrow/util/macros.h"
#define PROPERTY_TO_OPTIONAL(COMMAND, PROPERTY) \
COMMAND.has_##PROPERTY() ? std::make_optional(COMMAND.PROPERTY()) :
std::nullopt
@@ -337,6 +338,8 @@ arrow::Result<ActionBeginTransactionRequest>
ParseActionBeginTransactionRequest(
return result;
}
+// ActionCancelQueryRequest is deprecated
+ARROW_SUPPRESS_DEPRECATION_WARNING
arrow::Result<ActionCancelQueryRequest> ParseActionCancelQueryRequest(
const Action& action) {
pb::sql::ActionCancelQueryRequest command;
@@ -346,6 +349,7 @@ arrow::Result<ActionCancelQueryRequest>
ParseActionCancelQueryRequest(
ARROW_ASSIGN_OR_RAISE(result.info, FlightInfo::Deserialize(command.info()));
return result;
}
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
arrow::Result<ActionCreatePreparedStatementRequest>
ParseActionCreatePreparedStatementRequest(const Action& action) {
@@ -468,6 +472,8 @@ arrow::Result<Result> PackActionResult(const
FlightEndpoint& endpoint) {
return endpoint.SerializeToBuffer();
}
+// ActionCancelQueryResult is deprecated
+ARROW_SUPPRESS_DEPRECATION_WARNING
arrow::Result<Result> PackActionResult(CancelResult result) {
pb::sql::ActionCancelQueryResult pb_result;
switch (result) {
@@ -487,6 +493,7 @@ arrow::Result<Result> PackActionResult(CancelResult result)
{
}
return PackActionResult(pb_result);
}
+ARROW_UNSUPPRESS_DEPRECATION_WARNING
arrow::Result<Result> PackActionResult(ActionCreatePreparedStatementResult
result) {
pb::sql::ActionCreatePreparedStatementResult pb_result;