This is an automated email from the ASF dual-hosted git repository.

alamb pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/datafusion.git


The following commit(s) were added to refs/heads/main by this push:
     new ba1a1d8cc0 Update substrait requirement from 0.41 to 0.42, 
`prost-build` to `0.13.2` (#12483)
ba1a1d8cc0 is described below

commit ba1a1d8cc0c5eb00b3feb51b5f0aaaf4cd4dcf9a
Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
AuthorDate: Tue Sep 17 12:38:06 2024 -0400

    Update substrait requirement from 0.41 to 0.42, `prost-build` to `0.13.2` 
(#12483)
    
    * Update substrait requirement from 0.41 to 0.42
    
    Updates the requirements on 
[substrait](https://github.com/substrait-io/substrait-rs) to permit the latest 
version.
    - [Release notes](https://github.com/substrait-io/substrait-rs/releases)
    - 
[Changelog](https://github.com/substrait-io/substrait-rs/blob/main/CHANGELOG.md)
    - 
[Commits](https://github.com/substrait-io/substrait-rs/compare/v0.41.0...v0.41.5)
    
    ---
    updated-dependencies:
    - dependency-name: substrait
      dependency-type: direct:production
    ...
    
    Signed-off-by: dependabot[bot] <[email protected]>
    
    * Update prost-build to `0.13.2
    
    * fix fmt
    
    ---------
    
    Signed-off-by: dependabot[bot] <[email protected]>
    Co-authored-by: dependabot[bot] 
<49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Andrew Lamb <[email protected]>
---
 datafusion-cli/Cargo.lock                          |  12 +-
 datafusion/proto-common/gen/Cargo.toml             |   2 +-
 datafusion/proto/gen/Cargo.toml                    |   2 +-
 .../proto/src/generated/datafusion_proto_common.rs |  75 ---------
 datafusion/proto/src/generated/prost.rs            | 172 ---------------------
 datafusion/substrait/Cargo.toml                    |   2 +-
 6 files changed, 9 insertions(+), 256 deletions(-)

diff --git a/datafusion-cli/Cargo.lock b/datafusion-cli/Cargo.lock
index 65ea0a756b..78afa759c6 100644
--- a/datafusion-cli/Cargo.lock
+++ b/datafusion-cli/Cargo.lock
@@ -917,9 +917,9 @@ dependencies = [
 
 [[package]]
 name = "cc"
-version = "1.1.18"
+version = "1.1.19"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "b62ac837cdb5cb22e10a256099b4fc502b1dfe560cb282963a974d7abd80e476"
+checksum = "2d74707dde2ba56f86ae90effb3b43ddd369504387e718014de010cec7959800"
 dependencies = [
  "jobserver",
  "libc",
@@ -2147,9 +2147,9 @@ dependencies = [
 
 [[package]]
 name = "iana-time-zone"
-version = "0.1.60"
+version = "0.1.61"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
+checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220"
 dependencies = [
  "android_system_properties",
  "core-foundation-sys",
@@ -2630,9 +2630,9 @@ dependencies = [
 
 [[package]]
 name = "once_cell"
-version = "1.20.0"
+version = "1.19.0"
 source = "registry+https://github.com/rust-lang/crates.io-index";
-checksum = "33ea5043e58958ee56f3e15a90aee535795cd7dfd319846288d93c5b57d85cbe"
+checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
 
 [[package]]
 name = "openssl-probe"
diff --git a/datafusion/proto-common/gen/Cargo.toml 
b/datafusion/proto-common/gen/Cargo.toml
index cca49dba7e..e204a4bd14 100644
--- a/datafusion/proto-common/gen/Cargo.toml
+++ b/datafusion/proto-common/gen/Cargo.toml
@@ -35,4 +35,4 @@ workspace = true
 [dependencies]
 # Pin these dependencies so that the generated output is deterministic
 pbjson-build = "=0.7.0"
-prost-build = "=0.13.1"
+prost-build = "=0.13.2"
diff --git a/datafusion/proto/gen/Cargo.toml b/datafusion/proto/gen/Cargo.toml
index 1dc5f7e0dd..84564f1755 100644
--- a/datafusion/proto/gen/Cargo.toml
+++ b/datafusion/proto/gen/Cargo.toml
@@ -35,4 +35,4 @@ workspace = true
 [dependencies]
 # Pin these dependencies so that the generated output is deterministic
 pbjson-build = "=0.7.0"
-prost-build = "=0.13.1"
+prost-build = "=0.13.2"
diff --git a/datafusion/proto/src/generated/datafusion_proto_common.rs 
b/datafusion/proto/src/generated/datafusion_proto_common.rs
index be12d5b8e3..b9f71e6345 100644
--- a/datafusion/proto/src/generated/datafusion_proto_common.rs
+++ b/datafusion/proto/src/generated/datafusion_proto_common.rs
@@ -1,11 +1,9 @@
 // This file is @generated by prost-build.
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ColumnRelation {
     #[prost(string, tag = "1")]
     pub relation: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Column {
     #[prost(string, tag = "1")]
@@ -13,7 +11,6 @@ pub struct Column {
     #[prost(message, optional, tag = "2")]
     pub relation: ::core::option::Option<ColumnRelation>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct DfField {
     #[prost(message, optional, tag = "1")]
@@ -21,7 +18,6 @@ pub struct DfField {
     #[prost(message, optional, tag = "2")]
     pub qualifier: ::core::option::Option<ColumnRelation>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct DfSchema {
     #[prost(message, repeated, tag = "1")]
@@ -32,40 +28,33 @@ pub struct DfSchema {
         ::prost::alloc::string::String,
     >,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CsvFormat {
     #[prost(message, optional, tag = "5")]
     pub options: ::core::option::Option<CsvOptions>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ParquetFormat {
     #[prost(message, optional, tag = "2")]
     pub options: ::core::option::Option<TableParquetOptions>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct AvroFormat {}
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct NdJsonFormat {
     #[prost(message, optional, tag = "1")]
     pub options: ::core::option::Option<JsonOptions>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PrimaryKeyConstraint {
     #[prost(uint64, repeated, tag = "1")]
     pub indices: ::prost::alloc::vec::Vec<u64>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct UniqueConstraint {
     #[prost(uint64, repeated, tag = "1")]
     pub indices: ::prost::alloc::vec::Vec<u64>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Constraint {
     #[prost(oneof = "constraint::ConstraintMode", tags = "1, 2")]
@@ -73,7 +62,6 @@ pub struct Constraint {
 }
 /// Nested message and enum types in `Constraint`.
 pub mod constraint {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum ConstraintMode {
         #[prost(message, tag = "1")]
@@ -82,19 +70,15 @@ pub mod constraint {
         Unique(super::UniqueConstraint),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Constraints {
     #[prost(message, repeated, tag = "1")]
     pub constraints: ::prost::alloc::vec::Vec<Constraint>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct AvroOptions {}
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct ArrowOptions {}
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Schema {
     #[prost(message, repeated, tag = "1")]
@@ -105,7 +89,6 @@ pub struct Schema {
         ::prost::alloc::string::String,
     >,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Field {
     /// name of the field
@@ -128,7 +111,6 @@ pub struct Field {
     #[prost(bool, tag = "7")]
     pub dict_ordered: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Timestamp {
     #[prost(enumeration = "TimeUnit", tag = "1")]
@@ -136,7 +118,6 @@ pub struct Timestamp {
     #[prost(string, tag = "2")]
     pub timezone: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct Decimal {
     #[prost(uint32, tag = "3")]
@@ -144,7 +125,6 @@ pub struct Decimal {
     #[prost(int32, tag = "4")]
     pub scale: i32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct Decimal256Type {
     #[prost(uint32, tag = "3")]
@@ -152,13 +132,11 @@ pub struct Decimal256Type {
     #[prost(int32, tag = "4")]
     pub scale: i32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct List {
     #[prost(message, optional, boxed, tag = "1")]
     pub field_type: ::core::option::Option<::prost::alloc::boxed::Box<Field>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct FixedSizeList {
     #[prost(message, optional, boxed, tag = "1")]
@@ -166,7 +144,6 @@ pub struct FixedSizeList {
     #[prost(int32, tag = "2")]
     pub list_size: i32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Dictionary {
     #[prost(message, optional, boxed, tag = "1")]
@@ -174,13 +151,11 @@ pub struct Dictionary {
     #[prost(message, optional, boxed, tag = "2")]
     pub value: ::core::option::Option<::prost::alloc::boxed::Box<ArrowType>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Struct {
     #[prost(message, repeated, tag = "1")]
     pub sub_field_types: ::prost::alloc::vec::Vec<Field>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Map {
     #[prost(message, optional, boxed, tag = "1")]
@@ -188,7 +163,6 @@ pub struct Map {
     #[prost(bool, tag = "2")]
     pub keys_sorted: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Union {
     #[prost(message, repeated, tag = "1")]
@@ -199,7 +173,6 @@ pub struct Union {
     pub type_ids: ::prost::alloc::vec::Vec<i32>,
 }
 /// Used for List/FixedSizeList/LargeList/Struct/Map
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ScalarNestedValue {
     #[prost(bytes = "vec", tag = "1")]
@@ -213,7 +186,6 @@ pub struct ScalarNestedValue {
 }
 /// Nested message and enum types in `ScalarNestedValue`.
 pub mod scalar_nested_value {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Message)]
     pub struct Dictionary {
         #[prost(bytes = "vec", tag = "1")]
@@ -222,7 +194,6 @@ pub mod scalar_nested_value {
         pub arrow_data: ::prost::alloc::vec::Vec<u8>,
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct ScalarTime32Value {
     #[prost(oneof = "scalar_time32_value::Value", tags = "1, 2")]
@@ -230,7 +201,6 @@ pub struct ScalarTime32Value {
 }
 /// Nested message and enum types in `ScalarTime32Value`.
 pub mod scalar_time32_value {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum Value {
         #[prost(int32, tag = "1")]
@@ -239,7 +209,6 @@ pub mod scalar_time32_value {
         Time32MillisecondValue(i32),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct ScalarTime64Value {
     #[prost(oneof = "scalar_time64_value::Value", tags = "1, 2")]
@@ -247,7 +216,6 @@ pub struct ScalarTime64Value {
 }
 /// Nested message and enum types in `ScalarTime64Value`.
 pub mod scalar_time64_value {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum Value {
         #[prost(int64, tag = "1")]
@@ -256,7 +224,6 @@ pub mod scalar_time64_value {
         Time64NanosecondValue(i64),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ScalarTimestampValue {
     #[prost(string, tag = "5")]
@@ -266,7 +233,6 @@ pub struct ScalarTimestampValue {
 }
 /// Nested message and enum types in `ScalarTimestampValue`.
 pub mod scalar_timestamp_value {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum Value {
         #[prost(int64, tag = "1")]
@@ -279,7 +245,6 @@ pub mod scalar_timestamp_value {
         TimeMillisecondValue(i64),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ScalarDictionaryValue {
     #[prost(message, optional, tag = "1")]
@@ -287,7 +252,6 @@ pub struct ScalarDictionaryValue {
     #[prost(message, optional, boxed, tag = "2")]
     pub value: ::core::option::Option<::prost::alloc::boxed::Box<ScalarValue>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct IntervalDayTimeValue {
     #[prost(int32, tag = "1")]
@@ -295,7 +259,6 @@ pub struct IntervalDayTimeValue {
     #[prost(int32, tag = "2")]
     pub milliseconds: i32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct IntervalMonthDayNanoValue {
     #[prost(int32, tag = "1")]
@@ -305,7 +268,6 @@ pub struct IntervalMonthDayNanoValue {
     #[prost(int64, tag = "3")]
     pub nanos: i64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct UnionField {
     #[prost(int32, tag = "1")]
@@ -313,7 +275,6 @@ pub struct UnionField {
     #[prost(message, optional, tag = "2")]
     pub field: ::core::option::Option<Field>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct UnionValue {
     /// Note that a null union value must have one or more fields, so we
@@ -327,7 +288,6 @@ pub struct UnionValue {
     #[prost(enumeration = "UnionMode", tag = "4")]
     pub mode: i32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ScalarFixedSizeBinary {
     #[prost(bytes = "vec", tag = "1")]
@@ -335,7 +295,6 @@ pub struct ScalarFixedSizeBinary {
     #[prost(int32, tag = "2")]
     pub length: i32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ScalarValue {
     #[prost(
@@ -346,7 +305,6 @@ pub struct ScalarValue {
 }
 /// Nested message and enum types in `ScalarValue`.
 pub mod scalar_value {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum Value {
         /// was PrimitiveScalarType null_value = 19;
@@ -434,7 +392,6 @@ pub mod scalar_value {
         UnionValue(::prost::alloc::boxed::Box<super::UnionValue>),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Decimal128 {
     #[prost(bytes = "vec", tag = "1")]
@@ -444,7 +401,6 @@ pub struct Decimal128 {
     #[prost(int64, tag = "3")]
     pub s: i64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Decimal256 {
     #[prost(bytes = "vec", tag = "1")]
@@ -455,7 +411,6 @@ pub struct Decimal256 {
     pub s: i64,
 }
 /// Serialized data type
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ArrowType {
     #[prost(
@@ -466,7 +421,6 @@ pub struct ArrowType {
 }
 /// Nested message and enum types in `ArrowType`.
 pub mod arrow_type {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum ArrowTypeEnum {
         /// arrow::Type::NA
@@ -557,16 +511,13 @@ pub mod arrow_type {
 ///         i32 Two = 2;
 ///    }
 /// }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct EmptyMessage {}
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct JsonWriterOptions {
     #[prost(enumeration = "CompressionTypeVariant", tag = "1")]
     pub compression: i32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CsvWriterOptions {
     /// Compression type
@@ -604,7 +555,6 @@ pub struct CsvWriterOptions {
     pub double_quote: bool,
 }
 /// Options controlling CSV format
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CsvOptions {
     /// Indicates if the CSV has a header row
@@ -657,7 +607,6 @@ pub struct CsvOptions {
     pub terminator: ::prost::alloc::vec::Vec<u8>,
 }
 /// Options controlling CSV format
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct JsonOptions {
     /// Compression type
@@ -667,7 +616,6 @@ pub struct JsonOptions {
     #[prost(uint64, tag = "2")]
     pub schema_infer_max_rec: u64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct TableParquetOptions {
     #[prost(message, optional, tag = "1")]
@@ -680,7 +628,6 @@ pub struct TableParquetOptions {
         ::prost::alloc::string::String,
     >,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ParquetColumnSpecificOptions {
     #[prost(string, tag = "1")]
@@ -688,7 +635,6 @@ pub struct ParquetColumnSpecificOptions {
     #[prost(message, optional, tag = "2")]
     pub options: ::core::option::Option<ParquetColumnOptions>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ParquetColumnOptions {
     #[prost(oneof = "parquet_column_options::BloomFilterEnabledOpt", tags = 
"1")]
@@ -722,56 +668,47 @@ pub struct ParquetColumnOptions {
 }
 /// Nested message and enum types in `ParquetColumnOptions`.
 pub mod parquet_column_options {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum BloomFilterEnabledOpt {
         #[prost(bool, tag = "1")]
         BloomFilterEnabled(bool),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum EncodingOpt {
         #[prost(string, tag = "2")]
         Encoding(::prost::alloc::string::String),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum DictionaryEnabledOpt {
         #[prost(bool, tag = "3")]
         DictionaryEnabled(bool),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum CompressionOpt {
         #[prost(string, tag = "4")]
         Compression(::prost::alloc::string::String),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum StatisticsEnabledOpt {
         #[prost(string, tag = "5")]
         StatisticsEnabled(::prost::alloc::string::String),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum BloomFilterFppOpt {
         #[prost(double, tag = "6")]
         BloomFilterFpp(f64),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum BloomFilterNdvOpt {
         #[prost(uint64, tag = "7")]
         BloomFilterNdv(u64),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum MaxStatisticsSizeOpt {
         #[prost(uint32, tag = "8")]
         MaxStatisticsSize(u32),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ParquetOptions {
     /// Regular fields
@@ -859,62 +796,52 @@ pub struct ParquetOptions {
 }
 /// Nested message and enum types in `ParquetOptions`.
 pub mod parquet_options {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum MetadataSizeHintOpt {
         #[prost(uint64, tag = "4")]
         MetadataSizeHint(u64),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum CompressionOpt {
         #[prost(string, tag = "10")]
         Compression(::prost::alloc::string::String),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum DictionaryEnabledOpt {
         #[prost(bool, tag = "11")]
         DictionaryEnabled(bool),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum StatisticsEnabledOpt {
         #[prost(string, tag = "13")]
         StatisticsEnabled(::prost::alloc::string::String),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum MaxStatisticsSizeOpt {
         #[prost(uint64, tag = "14")]
         MaxStatisticsSize(u64),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum ColumnIndexTruncateLengthOpt {
         #[prost(uint64, tag = "17")]
         ColumnIndexTruncateLength(u64),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum EncodingOpt {
         #[prost(string, tag = "19")]
         Encoding(::prost::alloc::string::String),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum BloomFilterFppOpt {
         #[prost(double, tag = "21")]
         BloomFilterFpp(f64),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
     pub enum BloomFilterNdvOpt {
         #[prost(uint64, tag = "22")]
         BloomFilterNdv(u64),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Precision {
     #[prost(enumeration = "PrecisionInfo", tag = "1")]
@@ -922,7 +849,6 @@ pub struct Precision {
     #[prost(message, optional, tag = "2")]
     pub val: ::core::option::Option<ScalarValue>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Statistics {
     #[prost(message, optional, tag = "1")]
@@ -932,7 +858,6 @@ pub struct Statistics {
     #[prost(message, repeated, tag = "3")]
     pub column_stats: ::prost::alloc::vec::Vec<ColumnStats>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ColumnStats {
     #[prost(message, optional, tag = "1")]
diff --git a/datafusion/proto/src/generated/prost.rs 
b/datafusion/proto/src/generated/prost.rs
index 1d086a610c..8d0c65f569 100644
--- a/datafusion/proto/src/generated/prost.rs
+++ b/datafusion/proto/src/generated/prost.rs
@@ -1,7 +1,6 @@
 // This file is @generated by prost-build.
 /// logical plan
 /// LogicalPlan is a nested type
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct LogicalPlanNode {
     #[prost(
@@ -12,7 +11,6 @@ pub struct LogicalPlanNode {
 }
 /// Nested message and enum types in `LogicalPlanNode`.
 pub mod logical_plan_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum LogicalPlanType {
         #[prost(message, tag = "1")]
@@ -75,7 +73,6 @@ pub mod logical_plan_node {
         Unnest(::prost::alloc::boxed::Box<super::UnnestNode>),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct LogicalExtensionNode {
     #[prost(bytes = "vec", tag = "1")]
@@ -83,25 +80,21 @@ pub struct LogicalExtensionNode {
     #[prost(message, repeated, tag = "2")]
     pub inputs: ::prost::alloc::vec::Vec<LogicalPlanNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ProjectionColumns {
     #[prost(string, repeated, tag = "1")]
     pub columns: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct LogicalExprNodeCollection {
     #[prost(message, repeated, tag = "1")]
     pub logical_expr_nodes: ::prost::alloc::vec::Vec<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SortExprNodeCollection {
     #[prost(message, repeated, tag = "1")]
     pub sort_expr_nodes: ::prost::alloc::vec::Vec<SortExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ListingTableScanNode {
     #[prost(message, optional, tag = "14")]
@@ -131,7 +124,6 @@ pub struct ListingTableScanNode {
 }
 /// Nested message and enum types in `ListingTableScanNode`.
 pub mod listing_table_scan_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum FileFormatType {
         #[prost(message, tag = "10")]
@@ -144,7 +136,6 @@ pub mod listing_table_scan_node {
         Json(super::super::datafusion_common::NdJsonFormat),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ViewTableScanNode {
     #[prost(message, optional, tag = "6")]
@@ -159,7 +150,6 @@ pub struct ViewTableScanNode {
     pub definition: ::prost::alloc::string::String,
 }
 /// Logical Plan to Scan a CustomTableProvider registered at runtime
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CustomTableScanNode {
     #[prost(message, optional, tag = "6")]
@@ -173,7 +163,6 @@ pub struct CustomTableScanNode {
     #[prost(bytes = "vec", tag = "5")]
     pub custom_table_data: ::prost::alloc::vec::Vec<u8>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ProjectionNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -185,14 +174,12 @@ pub struct ProjectionNode {
 }
 /// Nested message and enum types in `ProjectionNode`.
 pub mod projection_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum OptionalAlias {
         #[prost(string, tag = "3")]
         Alias(::prost::alloc::string::String),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SelectionNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -200,7 +187,6 @@ pub struct SelectionNode {
     #[prost(message, optional, tag = "2")]
     pub expr: ::core::option::Option<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SortNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -211,7 +197,6 @@ pub struct SortNode {
     #[prost(int64, tag = "3")]
     pub fetch: i64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct RepartitionNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -221,7 +206,6 @@ pub struct RepartitionNode {
 }
 /// Nested message and enum types in `RepartitionNode`.
 pub mod repartition_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum PartitionMethod {
         #[prost(uint64, tag = "2")]
@@ -230,7 +214,6 @@ pub mod repartition_node {
         Hash(super::HashRepartition),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct HashRepartition {
     #[prost(message, repeated, tag = "1")]
@@ -238,13 +221,11 @@ pub struct HashRepartition {
     #[prost(uint64, tag = "2")]
     pub partition_count: u64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct EmptyRelationNode {
     #[prost(bool, tag = "1")]
     pub produce_one_row: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CreateExternalTableNode {
     #[prost(message, optional, tag = "9")]
@@ -278,7 +259,6 @@ pub struct CreateExternalTableNode {
         LogicalExprNode,
     >,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PrepareNode {
     #[prost(string, tag = "1")]
@@ -288,7 +268,6 @@ pub struct PrepareNode {
     #[prost(message, optional, boxed, tag = "3")]
     pub input: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalPlanNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CreateCatalogSchemaNode {
     #[prost(string, tag = "1")]
@@ -298,7 +277,6 @@ pub struct CreateCatalogSchemaNode {
     #[prost(message, optional, tag = "3")]
     pub schema: ::core::option::Option<super::datafusion_common::DfSchema>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CreateCatalogNode {
     #[prost(string, tag = "1")]
@@ -308,7 +286,6 @@ pub struct CreateCatalogNode {
     #[prost(message, optional, tag = "3")]
     pub schema: ::core::option::Option<super::datafusion_common::DfSchema>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct DropViewNode {
     #[prost(message, optional, tag = "1")]
@@ -318,7 +295,6 @@ pub struct DropViewNode {
     #[prost(message, optional, tag = "3")]
     pub schema: ::core::option::Option<super::datafusion_common::DfSchema>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CreateViewNode {
     #[prost(message, optional, tag = "5")]
@@ -332,7 +308,6 @@ pub struct CreateViewNode {
 }
 /// a node containing data for defining values list. unlike in SQL where it's 
two dimensional, here
 /// the list is flattened, and with the field n_cols it can be parsed and 
partitioned into rows
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ValuesNode {
     #[prost(uint64, tag = "1")]
@@ -340,7 +315,6 @@ pub struct ValuesNode {
     #[prost(message, repeated, tag = "2")]
     pub values_list: ::prost::alloc::vec::Vec<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct AnalyzeNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -348,7 +322,6 @@ pub struct AnalyzeNode {
     #[prost(bool, tag = "2")]
     pub verbose: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ExplainNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -356,7 +329,6 @@ pub struct ExplainNode {
     #[prost(bool, tag = "2")]
     pub verbose: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct AggregateNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -366,7 +338,6 @@ pub struct AggregateNode {
     #[prost(message, repeated, tag = "3")]
     pub aggr_expr: ::prost::alloc::vec::Vec<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct WindowNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -374,7 +345,6 @@ pub struct WindowNode {
     #[prost(message, repeated, tag = "2")]
     pub window_expr: ::prost::alloc::vec::Vec<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct JoinNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -394,13 +364,11 @@ pub struct JoinNode {
     #[prost(message, optional, tag = "8")]
     pub filter: ::core::option::Option<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct DistinctNode {
     #[prost(message, optional, boxed, tag = "1")]
     pub input: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalPlanNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct DistinctOnNode {
     #[prost(message, repeated, tag = "1")]
@@ -412,7 +380,6 @@ pub struct DistinctOnNode {
     #[prost(message, optional, boxed, tag = "4")]
     pub input: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalPlanNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CopyToNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -424,7 +391,6 @@ pub struct CopyToNode {
     #[prost(string, repeated, tag = "7")]
     pub partition_by: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct UnnestNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -442,19 +408,16 @@ pub struct UnnestNode {
     #[prost(message, optional, tag = "7")]
     pub options: ::core::option::Option<UnnestOptions>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct UnnestOptions {
     #[prost(bool, tag = "1")]
     pub preserve_nulls: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct UnionNode {
     #[prost(message, repeated, tag = "1")]
     pub inputs: ::prost::alloc::vec::Vec<LogicalPlanNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CrossJoinNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -462,7 +425,6 @@ pub struct CrossJoinNode {
     #[prost(message, optional, boxed, tag = "2")]
     pub right: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalPlanNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct LimitNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -474,13 +436,11 @@ pub struct LimitNode {
     #[prost(int64, tag = "3")]
     pub fetch: i64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SelectionExecNode {
     #[prost(message, optional, tag = "1")]
     pub expr: ::core::option::Option<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SubqueryAliasNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -489,7 +449,6 @@ pub struct SubqueryAliasNode {
     pub alias: ::core::option::Option<TableReference>,
 }
 /// logical expressions
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct LogicalExprNode {
     #[prost(
@@ -500,7 +459,6 @@ pub struct LogicalExprNode {
 }
 /// Nested message and enum types in `LogicalExprNode`.
 pub mod logical_expr_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum ExprType {
         /// column references
@@ -575,13 +533,11 @@ pub mod logical_expr_node {
         Unnest(super::Unnest),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Wildcard {
     #[prost(message, optional, tag = "1")]
     pub qualifier: ::core::option::Option<TableReference>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PlaceholderNode {
     #[prost(string, tag = "1")]
@@ -589,43 +545,36 @@ pub struct PlaceholderNode {
     #[prost(message, optional, tag = "2")]
     pub data_type: ::core::option::Option<super::datafusion_common::ArrowType>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct LogicalExprList {
     #[prost(message, repeated, tag = "1")]
     pub expr: ::prost::alloc::vec::Vec<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct GroupingSetNode {
     #[prost(message, repeated, tag = "1")]
     pub expr: ::prost::alloc::vec::Vec<LogicalExprList>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CubeNode {
     #[prost(message, repeated, tag = "1")]
     pub expr: ::prost::alloc::vec::Vec<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct RollupNode {
     #[prost(message, repeated, tag = "1")]
     pub expr: ::prost::alloc::vec::Vec<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct NamedStructField {
     #[prost(message, optional, tag = "1")]
     pub name: ::core::option::Option<super::datafusion_common::ScalarValue>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ListIndex {
     #[prost(message, optional, tag = "1")]
     pub key: ::core::option::Option<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ListRange {
     #[prost(message, optional, tag = "1")]
@@ -635,61 +584,51 @@ pub struct ListRange {
     #[prost(message, optional, tag = "3")]
     pub stride: ::core::option::Option<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct IsNull {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct IsNotNull {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct IsTrue {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct IsFalse {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct IsUnknown {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct IsNotTrue {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct IsNotFalse {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct IsNotUnknown {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Not {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct AliasNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -699,7 +638,6 @@ pub struct AliasNode {
     #[prost(message, repeated, tag = "3")]
     pub relation: ::prost::alloc::vec::Vec<TableReference>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct BinaryExprNode {
     /// Represents the operands from the left inner most expression
@@ -710,19 +648,16 @@ pub struct BinaryExprNode {
     #[prost(string, tag = "3")]
     pub op: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct NegativeNode {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Unnest {
     #[prost(message, repeated, tag = "1")]
     pub exprs: ::prost::alloc::vec::Vec<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct InListNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -732,7 +667,6 @@ pub struct InListNode {
     #[prost(bool, tag = "3")]
     pub negated: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct AggregateUdfExprNode {
     #[prost(string, tag = "1")]
@@ -748,7 +682,6 @@ pub struct AggregateUdfExprNode {
     #[prost(bytes = "vec", optional, tag = "6")]
     pub fun_definition: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ScalarUdfExprNode {
     #[prost(string, tag = "1")]
@@ -758,7 +691,6 @@ pub struct ScalarUdfExprNode {
     #[prost(bytes = "vec", optional, tag = "3")]
     pub fun_definition: ::core::option::Option<::prost::alloc::vec::Vec<u8>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct WindowExprNode {
     #[prost(message, optional, boxed, tag = "4")]
@@ -777,7 +709,6 @@ pub struct WindowExprNode {
 }
 /// Nested message and enum types in `WindowExprNode`.
 pub mod window_expr_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum WindowFunction {
         #[prost(enumeration = "super::BuiltInWindowFunction", tag = "2")]
@@ -788,7 +719,6 @@ pub mod window_expr_node {
         Udwf(::prost::alloc::string::String),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct BetweenNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -800,7 +730,6 @@ pub struct BetweenNode {
     #[prost(message, optional, boxed, tag = "4")]
     pub high: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct LikeNode {
     #[prost(bool, tag = "1")]
@@ -812,7 +741,6 @@ pub struct LikeNode {
     #[prost(string, tag = "4")]
     pub escape_char: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ILikeNode {
     #[prost(bool, tag = "1")]
@@ -824,7 +752,6 @@ pub struct ILikeNode {
     #[prost(string, tag = "4")]
     pub escape_char: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SimilarToNode {
     #[prost(bool, tag = "1")]
@@ -836,7 +763,6 @@ pub struct SimilarToNode {
     #[prost(string, tag = "4")]
     pub escape_char: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CaseNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -846,7 +772,6 @@ pub struct CaseNode {
     #[prost(message, optional, boxed, tag = "3")]
     pub else_expr: 
::core::option::Option<::prost::alloc::boxed::Box<LogicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct WhenThen {
     #[prost(message, optional, tag = "1")]
@@ -854,7 +779,6 @@ pub struct WhenThen {
     #[prost(message, optional, tag = "2")]
     pub then_expr: ::core::option::Option<LogicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CastNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -862,7 +786,6 @@ pub struct CastNode {
     #[prost(message, optional, tag = "2")]
     pub arrow_type: 
::core::option::Option<super::datafusion_common::ArrowType>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct TryCastNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -870,7 +793,6 @@ pub struct TryCastNode {
     #[prost(message, optional, tag = "2")]
     pub arrow_type: 
::core::option::Option<super::datafusion_common::ArrowType>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SortExprNode {
     #[prost(message, optional, tag = "1")]
@@ -880,7 +802,6 @@ pub struct SortExprNode {
     #[prost(bool, tag = "3")]
     pub nulls_first: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct WindowFrame {
     #[prost(enumeration = "WindowFrameUnits", tag = "1")]
@@ -896,14 +817,12 @@ pub struct WindowFrame {
 pub mod window_frame {
     /// "optional" keyword is stable in protoc 3.15 but prost is still on 3.14 
(see <https://github.com/tokio-rs/prost/issues/430> and 
<https://github.com/tokio-rs/prost/pull/455>)
     /// this syntax is ugly but is binary compatible with the "optional" 
keyword (see 
<https://stackoverflow.com/questions/42622015/how-to-define-an-optional-field-in-protobuf-3>)
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum EndBound {
         #[prost(message, tag = "3")]
         Bound(super::WindowFrameBound),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct WindowFrameBound {
     #[prost(enumeration = "WindowFrameBoundType", tag = "1")]
@@ -911,31 +830,26 @@ pub struct WindowFrameBound {
     #[prost(message, optional, tag = "2")]
     pub bound_value: 
::core::option::Option<super::datafusion_common::ScalarValue>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct FixedSizeBinary {
     #[prost(int32, tag = "1")]
     pub length: i32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct AnalyzedLogicalPlanType {
     #[prost(string, tag = "1")]
     pub analyzer_name: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct OptimizedLogicalPlanType {
     #[prost(string, tag = "1")]
     pub optimizer_name: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct OptimizedPhysicalPlanType {
     #[prost(string, tag = "1")]
     pub optimizer_name: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PlanType {
     #[prost(
@@ -946,7 +860,6 @@ pub struct PlanType {
 }
 /// Nested message and enum types in `PlanType`.
 pub mod plan_type {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum PlanTypeEnum {
         #[prost(message, tag = "1")]
@@ -975,7 +888,6 @@ pub mod plan_type {
         
FinalPhysicalPlanWithSchema(super::super::datafusion_common::EmptyMessage),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct StringifiedPlan {
     #[prost(message, optional, tag = "1")]
@@ -983,13 +895,11 @@ pub struct StringifiedPlan {
     #[prost(string, tag = "2")]
     pub plan: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct BareTableReference {
     #[prost(string, tag = "1")]
     pub table: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PartialTableReference {
     #[prost(string, tag = "1")]
@@ -997,7 +907,6 @@ pub struct PartialTableReference {
     #[prost(string, tag = "2")]
     pub table: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct FullTableReference {
     #[prost(string, tag = "1")]
@@ -1007,7 +916,6 @@ pub struct FullTableReference {
     #[prost(string, tag = "3")]
     pub table: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct TableReference {
     #[prost(oneof = "table_reference::TableReferenceEnum", tags = "1, 2, 3")]
@@ -1017,7 +925,6 @@ pub struct TableReference {
 }
 /// Nested message and enum types in `TableReference`.
 pub mod table_reference {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum TableReferenceEnum {
         #[prost(message, tag = "1")]
@@ -1029,7 +936,6 @@ pub mod table_reference {
     }
 }
 /// PhysicalPlanNode is a nested type
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalPlanNode {
     #[prost(
@@ -1040,7 +946,6 @@ pub struct PhysicalPlanNode {
 }
 /// Nested message and enum types in `PhysicalPlanNode`.
 pub mod physical_plan_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum PhysicalPlanType {
         #[prost(message, tag = "1")]
@@ -1105,7 +1010,6 @@ pub mod physical_plan_node {
         Unnest(::prost::alloc::boxed::Box<super::UnnestExecNode>),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PartitionColumn {
     #[prost(string, tag = "1")]
@@ -1113,7 +1017,6 @@ pub struct PartitionColumn {
     #[prost(message, optional, tag = "2")]
     pub arrow_type: 
::core::option::Option<super::datafusion_common::ArrowType>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct FileSinkConfig {
     #[prost(string, tag = "1")]
@@ -1131,7 +1034,6 @@ pub struct FileSinkConfig {
     #[prost(bool, tag = "9")]
     pub keep_partition_by_columns: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct JsonSink {
     #[prost(message, optional, tag = "1")]
@@ -1141,7 +1043,6 @@ pub struct JsonSink {
         super::datafusion_common::JsonWriterOptions,
     >,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct JsonSinkExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1153,7 +1054,6 @@ pub struct JsonSinkExecNode {
     #[prost(message, optional, tag = "4")]
     pub sort_order: ::core::option::Option<PhysicalSortExprNodeCollection>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CsvSink {
     #[prost(message, optional, tag = "1")]
@@ -1163,7 +1063,6 @@ pub struct CsvSink {
         super::datafusion_common::CsvWriterOptions,
     >,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CsvSinkExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1175,7 +1074,6 @@ pub struct CsvSinkExecNode {
     #[prost(message, optional, tag = "4")]
     pub sort_order: ::core::option::Option<PhysicalSortExprNodeCollection>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ParquetSink {
     #[prost(message, optional, tag = "1")]
@@ -1185,7 +1083,6 @@ pub struct ParquetSink {
         super::datafusion_common::TableParquetOptions,
     >,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ParquetSinkExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1197,7 +1094,6 @@ pub struct ParquetSinkExecNode {
     #[prost(message, optional, tag = "4")]
     pub sort_order: ::core::option::Option<PhysicalSortExprNodeCollection>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct UnnestExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1211,7 +1107,6 @@ pub struct UnnestExecNode {
     #[prost(message, optional, tag = "5")]
     pub options: ::core::option::Option<UnnestOptions>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalExtensionNode {
     #[prost(bytes = "vec", tag = "1")]
@@ -1220,7 +1115,6 @@ pub struct PhysicalExtensionNode {
     pub inputs: ::prost::alloc::vec::Vec<PhysicalPlanNode>,
 }
 /// physical expressions
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalExprNode {
     #[prost(
@@ -1231,7 +1125,6 @@ pub struct PhysicalExprNode {
 }
 /// Nested message and enum types in `PhysicalExprNode`.
 pub mod physical_expr_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum ExprType {
         /// column references
@@ -1277,7 +1170,6 @@ pub mod physical_expr_node {
         Extension(super::PhysicalExtensionExprNode),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalScalarUdfNode {
     #[prost(string, tag = "1")]
@@ -1289,7 +1181,6 @@ pub struct PhysicalScalarUdfNode {
     #[prost(message, optional, tag = "4")]
     pub return_type: 
::core::option::Option<super::datafusion_common::ArrowType>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalAggregateExprNode {
     #[prost(message, repeated, tag = "2")]
@@ -1309,14 +1200,12 @@ pub struct PhysicalAggregateExprNode {
 }
 /// Nested message and enum types in `PhysicalAggregateExprNode`.
 pub mod physical_aggregate_expr_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum AggregateFunction {
         #[prost(string, tag = "4")]
         UserDefinedAggrFunction(::prost::alloc::string::String),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalWindowExprNode {
     #[prost(message, repeated, tag = "4")]
@@ -1338,7 +1227,6 @@ pub struct PhysicalWindowExprNode {
 }
 /// Nested message and enum types in `PhysicalWindowExprNode`.
 pub mod physical_window_expr_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum WindowFunction {
         #[prost(enumeration = "super::BuiltInWindowFunction", tag = "2")]
@@ -1347,25 +1235,21 @@ pub mod physical_window_expr_node {
         UserDefinedAggrFunction(::prost::alloc::string::String),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalIsNull {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<PhysicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalIsNotNull {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<PhysicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalNot {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<PhysicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalAliasNode {
     #[prost(message, optional, tag = "1")]
@@ -1373,7 +1257,6 @@ pub struct PhysicalAliasNode {
     #[prost(string, tag = "2")]
     pub alias: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalBinaryExprNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1383,7 +1266,6 @@ pub struct PhysicalBinaryExprNode {
     #[prost(string, tag = "3")]
     pub op: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalDateTimeIntervalExprNode {
     #[prost(message, optional, tag = "1")]
@@ -1393,7 +1275,6 @@ pub struct PhysicalDateTimeIntervalExprNode {
     #[prost(string, tag = "3")]
     pub op: ::prost::alloc::string::String,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalLikeExprNode {
     #[prost(bool, tag = "1")]
@@ -1405,7 +1286,6 @@ pub struct PhysicalLikeExprNode {
     #[prost(message, optional, boxed, tag = "4")]
     pub pattern: 
::core::option::Option<::prost::alloc::boxed::Box<PhysicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalSortExprNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1415,7 +1295,6 @@ pub struct PhysicalSortExprNode {
     #[prost(bool, tag = "3")]
     pub nulls_first: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalWhenThen {
     #[prost(message, optional, tag = "1")]
@@ -1423,7 +1302,6 @@ pub struct PhysicalWhenThen {
     #[prost(message, optional, tag = "2")]
     pub then_expr: ::core::option::Option<PhysicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalInListNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1433,7 +1311,6 @@ pub struct PhysicalInListNode {
     #[prost(bool, tag = "3")]
     pub negated: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalCaseNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1443,7 +1320,6 @@ pub struct PhysicalCaseNode {
     #[prost(message, optional, boxed, tag = "3")]
     pub else_expr: 
::core::option::Option<::prost::alloc::boxed::Box<PhysicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalTryCastNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1451,7 +1327,6 @@ pub struct PhysicalTryCastNode {
     #[prost(message, optional, tag = "2")]
     pub arrow_type: 
::core::option::Option<super::datafusion_common::ArrowType>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalCastNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1459,13 +1334,11 @@ pub struct PhysicalCastNode {
     #[prost(message, optional, tag = "2")]
     pub arrow_type: 
::core::option::Option<super::datafusion_common::ArrowType>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalNegativeNode {
     #[prost(message, optional, boxed, tag = "1")]
     pub expr: 
::core::option::Option<::prost::alloc::boxed::Box<PhysicalExprNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalExtensionExprNode {
     #[prost(bytes = "vec", tag = "1")]
@@ -1473,7 +1346,6 @@ pub struct PhysicalExtensionExprNode {
     #[prost(message, repeated, tag = "2")]
     pub inputs: ::prost::alloc::vec::Vec<PhysicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct FilterExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1485,26 +1357,22 @@ pub struct FilterExecNode {
     #[prost(uint32, repeated, tag = "9")]
     pub projection: ::prost::alloc::vec::Vec<u32>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct FileGroup {
     #[prost(message, repeated, tag = "1")]
     pub files: ::prost::alloc::vec::Vec<PartitionedFile>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct ScanLimit {
     /// wrap into a message to make it optional
     #[prost(uint32, tag = "1")]
     pub limit: u32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalSortExprNodeCollection {
     #[prost(message, repeated, tag = "1")]
     pub physical_sort_expr_nodes: 
::prost::alloc::vec::Vec<PhysicalSortExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct FileScanExecConf {
     #[prost(message, repeated, tag = "1")]
@@ -1524,7 +1392,6 @@ pub struct FileScanExecConf {
     #[prost(message, repeated, tag = "9")]
     pub output_ordering: 
::prost::alloc::vec::Vec<PhysicalSortExprNodeCollection>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ParquetScanExecNode {
     #[prost(message, optional, tag = "1")]
@@ -1532,7 +1399,6 @@ pub struct ParquetScanExecNode {
     #[prost(message, optional, tag = "3")]
     pub predicate: ::core::option::Option<PhysicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CsvScanExecNode {
     #[prost(message, optional, tag = "1")]
@@ -1552,26 +1418,22 @@ pub struct CsvScanExecNode {
 }
 /// Nested message and enum types in `CsvScanExecNode`.
 pub mod csv_scan_exec_node {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum OptionalEscape {
         #[prost(string, tag = "5")]
         Escape(::prost::alloc::string::String),
     }
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum OptionalComment {
         #[prost(string, tag = "6")]
         Comment(::prost::alloc::string::String),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct AvroScanExecNode {
     #[prost(message, optional, tag = "1")]
     pub base_conf: ::core::option::Option<FileScanExecConf>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct HashJoinExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1591,7 +1453,6 @@ pub struct HashJoinExecNode {
     #[prost(uint32, repeated, tag = "9")]
     pub projection: ::prost::alloc::vec::Vec<u32>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SymmetricHashJoinExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1613,19 +1474,16 @@ pub struct SymmetricHashJoinExecNode {
     #[prost(message, repeated, tag = "10")]
     pub right_sort_exprs: ::prost::alloc::vec::Vec<PhysicalSortExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct InterleaveExecNode {
     #[prost(message, repeated, tag = "1")]
     pub inputs: ::prost::alloc::vec::Vec<PhysicalPlanNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct UnionExecNode {
     #[prost(message, repeated, tag = "1")]
     pub inputs: ::prost::alloc::vec::Vec<PhysicalPlanNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ExplainExecNode {
     #[prost(message, optional, tag = "1")]
@@ -1635,7 +1493,6 @@ pub struct ExplainExecNode {
     #[prost(bool, tag = "3")]
     pub verbose: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct AnalyzeExecNode {
     #[prost(bool, tag = "1")]
@@ -1647,7 +1504,6 @@ pub struct AnalyzeExecNode {
     #[prost(message, optional, tag = "4")]
     pub schema: ::core::option::Option<super::datafusion_common::Schema>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CrossJoinExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1655,7 +1511,6 @@ pub struct CrossJoinExecNode {
     #[prost(message, optional, boxed, tag = "2")]
     pub right: 
::core::option::Option<::prost::alloc::boxed::Box<PhysicalPlanNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalColumn {
     #[prost(string, tag = "1")]
@@ -1663,7 +1518,6 @@ pub struct PhysicalColumn {
     #[prost(uint32, tag = "2")]
     pub index: u32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct JoinOn {
     #[prost(message, optional, tag = "1")]
@@ -1671,19 +1525,16 @@ pub struct JoinOn {
     #[prost(message, optional, tag = "2")]
     pub right: ::core::option::Option<PhysicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct EmptyExecNode {
     #[prost(message, optional, tag = "1")]
     pub schema: ::core::option::Option<super::datafusion_common::Schema>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PlaceholderRowExecNode {
     #[prost(message, optional, tag = "1")]
     pub schema: ::core::option::Option<super::datafusion_common::Schema>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct ProjectionExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1693,13 +1544,11 @@ pub struct ProjectionExecNode {
     #[prost(string, repeated, tag = "3")]
     pub expr_name: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PartiallySortedInputOrderMode {
     #[prost(uint64, repeated, tag = "6")]
     pub columns: ::prost::alloc::vec::Vec<u64>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct WindowAggExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1715,7 +1564,6 @@ pub struct WindowAggExecNode {
 /// Nested message and enum types in `WindowAggExecNode`.
 pub mod window_agg_exec_node {
     /// Set optional to `None` for `BoundedWindowAggExec`.
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum InputOrderMode {
         #[prost(message, tag = "7")]
@@ -1726,26 +1574,22 @@ pub mod window_agg_exec_node {
         Sorted(super::super::datafusion_common::EmptyMessage),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct MaybeFilter {
     #[prost(message, optional, tag = "1")]
     pub expr: ::core::option::Option<PhysicalExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct MaybePhysicalSortExprs {
     #[prost(message, repeated, tag = "1")]
     pub sort_expr: ::prost::alloc::vec::Vec<PhysicalSortExprNode>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct AggLimit {
     /// wrap into a message to make it optional
     #[prost(uint64, tag = "1")]
     pub limit: u64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct AggregateExecNode {
     #[prost(message, repeated, tag = "1")]
@@ -1772,7 +1616,6 @@ pub struct AggregateExecNode {
     #[prost(message, optional, tag = "11")]
     pub limit: ::core::option::Option<AggLimit>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct GlobalLimitExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1784,7 +1627,6 @@ pub struct GlobalLimitExecNode {
     #[prost(int64, tag = "3")]
     pub fetch: i64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct LocalLimitExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1792,7 +1634,6 @@ pub struct LocalLimitExecNode {
     #[prost(uint32, tag = "2")]
     pub fetch: u32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SortExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1805,7 +1646,6 @@ pub struct SortExecNode {
     #[prost(bool, tag = "4")]
     pub preserve_partitioning: bool,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct SortPreservingMergeExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1816,7 +1656,6 @@ pub struct SortPreservingMergeExecNode {
     #[prost(int64, tag = "3")]
     pub fetch: i64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct NestedLoopJoinExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1828,7 +1667,6 @@ pub struct NestedLoopJoinExecNode {
     #[prost(message, optional, tag = "4")]
     pub filter: ::core::option::Option<JoinFilter>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CoalesceBatchesExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1838,13 +1676,11 @@ pub struct CoalesceBatchesExecNode {
     #[prost(uint32, optional, tag = "3")]
     pub fetch: ::core::option::Option<u32>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct CoalescePartitionsExecNode {
     #[prost(message, optional, boxed, tag = "1")]
     pub input: 
::core::option::Option<::prost::alloc::boxed::Box<PhysicalPlanNode>>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PhysicalHashRepartition {
     #[prost(message, repeated, tag = "1")]
@@ -1852,7 +1688,6 @@ pub struct PhysicalHashRepartition {
     #[prost(uint64, tag = "2")]
     pub partition_count: u64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct RepartitionExecNode {
     #[prost(message, optional, boxed, tag = "1")]
@@ -1865,7 +1700,6 @@ pub struct RepartitionExecNode {
     #[prost(message, optional, tag = "5")]
     pub partitioning: ::core::option::Option<Partitioning>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct Partitioning {
     #[prost(oneof = "partitioning::PartitionMethod", tags = "1, 2, 3")]
@@ -1873,7 +1707,6 @@ pub struct Partitioning {
 }
 /// Nested message and enum types in `Partitioning`.
 pub mod partitioning {
-    #[allow(clippy::derive_partial_eq_without_eq)]
     #[derive(Clone, PartialEq, ::prost::Oneof)]
     pub enum PartitionMethod {
         #[prost(uint64, tag = "1")]
@@ -1884,7 +1717,6 @@ pub mod partitioning {
         Unknown(u64),
     }
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct JoinFilter {
     #[prost(message, optional, tag = "1")]
@@ -1894,7 +1726,6 @@ pub struct JoinFilter {
     #[prost(message, optional, tag = "3")]
     pub schema: ::core::option::Option<super::datafusion_common::Schema>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct ColumnIndex {
     #[prost(uint32, tag = "1")]
@@ -1902,7 +1733,6 @@ pub struct ColumnIndex {
     #[prost(enumeration = "super::datafusion_common::JoinSide", tag = "2")]
     pub side: i32,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PartitionedFile {
     #[prost(string, tag = "1")]
@@ -1920,7 +1750,6 @@ pub struct PartitionedFile {
     #[prost(message, optional, tag = "6")]
     pub statistics: 
::core::option::Option<super::datafusion_common::Statistics>,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, Copy, PartialEq, ::prost::Message)]
 pub struct FileRange {
     #[prost(int64, tag = "1")]
@@ -1928,7 +1757,6 @@ pub struct FileRange {
     #[prost(int64, tag = "2")]
     pub end: i64,
 }
-#[allow(clippy::derive_partial_eq_without_eq)]
 #[derive(Clone, PartialEq, ::prost::Message)]
 pub struct PartitionStats {
     #[prost(int64, tag = "1")]
diff --git a/datafusion/substrait/Cargo.toml b/datafusion/substrait/Cargo.toml
index f379ac6042..4de63b2f13 100644
--- a/datafusion/substrait/Cargo.toml
+++ b/datafusion/substrait/Cargo.toml
@@ -41,7 +41,7 @@ object_store = { workspace = true }
 pbjson-types = "0.7"
 # TODO use workspace version
 prost = "0.13"
-substrait = { version = "0.41", features = ["serde"] }
+substrait = { version = "0.42", features = ["serde"] }
 url = { workspace = true }
 
 [dev-dependencies]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to