From 5487b3fd4ee9e53a8cea551a6033bbd51b214a51 Mon Sep 17 00:00:00 2001 From: Andrew Lamb Date: Mon, 24 Feb 2025 15:54:50 -0500 Subject: [PATCH 1/2] chore: fix some compiler warnings Signed-off-by: Andrew Lamb --- crates/aws/src/credentials.rs | 1 + crates/core/src/kernel/models/fields.rs | 11 ----------- crates/core/src/operations/filesystem_check.rs | 11 +---------- crates/core/src/operations/load_cdf.rs | 1 - crates/core/src/operations/merge/mod.rs | 1 - crates/core/src/operations/transaction/mod.rs | 1 - crates/core/src/operations/update.rs | 1 - crates/core/src/operations/write/mod.rs | 1 - crates/lakefs/src/storage.rs | 7 ++----- 9 files changed, 4 insertions(+), 31 deletions(-) diff --git a/crates/aws/src/credentials.rs b/crates/aws/src/credentials.rs index 9835549bb7..6f138dc948 100644 --- a/crates/aws/src/credentials.rs +++ b/crates/aws/src/credentials.rs @@ -41,6 +41,7 @@ impl AWSForObjectStore { } /// Return true if a credential has been cached + #[cfg(test)] async fn has_cached_credentials(&self) -> bool { let guard = self.cache.lock().await; (*guard).is_some() diff --git a/crates/core/src/kernel/models/fields.rs b/crates/core/src/kernel/models/fields.rs index fb397d4fdf..3ff653ac65 100644 --- a/crates/core/src/kernel/models/fields.rs +++ b/crates/core/src/kernel/models/fields.rs @@ -145,17 +145,6 @@ static REMOVE_FIELD: LazyLock = LazyLock::new(|| { true, ) }); -static REMOVE_FIELD_CHECKPOINT: LazyLock = LazyLock::new(|| { - StructField::new( - "remove", - StructType::new(vec![ - StructField::new("path", DataType::STRING, false), - StructField::new("deletionTimestamp", DataType::LONG, true), - StructField::new("dataChange", DataType::BOOLEAN, false), - ]), - true, - ) -}); // https://github.com/delta-io/delta/blob/master/PROTOCOL.md#add-cdc-file static CDC_FIELD: LazyLock = LazyLock::new(|| { StructField::new( diff --git a/crates/core/src/operations/filesystem_check.rs b/crates/core/src/operations/filesystem_check.rs index 28f5e9efb9..9411d0cbf7 100644 --- a/crates/core/src/operations/filesystem_check.rs +++ b/crates/core/src/operations/filesystem_check.rs @@ -22,7 +22,7 @@ use futures::future::BoxFuture; use futures::StreamExt; pub use object_store::path::Path; use object_store::ObjectStore; -use serde::{de::Error as DeError, Deserialize, Deserializer, Serialize, Serializer}; +use serde::{Serialize, Serializer}; use url::{ParseError, Url}; use uuid::Uuid; @@ -79,15 +79,6 @@ where serializer.serialize_str(&json_string) } -// Custom deserialization that parses a JSON string into MetricDetails -fn deserialize_vec_string<'de, D>(deserializer: D) -> Result, D::Error> -where - D: Deserializer<'de>, -{ - let s: String = Deserialize::deserialize(deserializer)?; - serde_json::from_str(&s).map_err(DeError::custom) -} - fn is_absolute_path(path: &str) -> DeltaResult { match Url::parse(path) { Ok(_) => Ok(true), diff --git a/crates/core/src/operations/load_cdf.rs b/crates/core/src/operations/load_cdf.rs index 7dc9675e28..875a1eec02 100644 --- a/crates/core/src/operations/load_cdf.rs +++ b/crates/core/src/operations/load_cdf.rs @@ -487,7 +487,6 @@ pub(crate) mod tests { use arrow_array::{Int32Array, RecordBatch, StringArray}; use arrow_schema::Schema; use chrono::NaiveDateTime; - use datafusion::physical_plan::ExecutionPlan; use datafusion::prelude::SessionContext; use datafusion_common::assert_batches_sorted_eq; use itertools::Itertools; diff --git a/crates/core/src/operations/merge/mod.rs b/crates/core/src/operations/merge/mod.rs index 1299267616..ad5247ab23 100644 --- a/crates/core/src/operations/merge/mod.rs +++ b/crates/core/src/operations/merge/mod.rs @@ -1573,7 +1573,6 @@ mod tests { use arrow_schema::DataType as ArrowDataType; use arrow_schema::Field; use datafusion::assert_batches_sorted_eq; - use datafusion::physical_plan::ExecutionPlan; use datafusion::prelude::*; use datafusion_common::Column; use datafusion_common::TableReference; diff --git a/crates/core/src/operations/transaction/mod.rs b/crates/core/src/operations/transaction/mod.rs index 5afe41be81..e199c61134 100644 --- a/crates/core/src/operations/transaction/mod.rs +++ b/crates/core/src/operations/transaction/mod.rs @@ -74,7 +74,6 @@ //! └───────────────────────────────┘ //! use std::collections::HashMap; -use std::future::Future; use std::sync::Arc; use bytes::Bytes; diff --git a/crates/core/src/operations/update.rs b/crates/core/src/operations/update.rs index 8f7a15f6ce..7433ef57b2 100644 --- a/crates/core/src/operations/update.rs +++ b/crates/core/src/operations/update.rs @@ -553,7 +553,6 @@ mod tests { use arrow::record_batch::RecordBatch; use arrow_schema::DataType; use datafusion::assert_batches_sorted_eq; - use datafusion::physical_plan::ExecutionPlan; use datafusion::prelude::*; use serde_json::json; use std::sync::Arc; diff --git a/crates/core/src/operations/write/mod.rs b/crates/core/src/operations/write/mod.rs index f8e69b90f7..49348415b4 100644 --- a/crates/core/src/operations/write/mod.rs +++ b/crates/core/src/operations/write/mod.rs @@ -757,7 +757,6 @@ mod tests { use arrow_schema::{DataType, Field, Fields, Schema as ArrowSchema, TimeUnit}; use datafusion::prelude::*; use datafusion::{assert_batches_eq, assert_batches_sorted_eq}; - use datafusion_physical_plan::ExecutionPlan; use itertools::Itertools; use serde_json::{json, Value}; diff --git a/crates/lakefs/src/storage.rs b/crates/lakefs/src/storage.rs index d5f77eec15..5774336827 100644 --- a/crates/lakefs/src/storage.rs +++ b/crates/lakefs/src/storage.rs @@ -121,14 +121,11 @@ mod tests { use maplit::hashmap; use serial_test::serial; - struct ScopedEnv { - vars: HashMap, - } + struct ScopedEnv {} impl ScopedEnv { pub fn new() -> Self { - let vars = std::env::vars_os().collect(); - Self { vars } + Self {} } pub fn run(mut f: impl FnMut() -> T) -> T { From 72a8a9c853c0046be50defcc07cc0601b88b38e6 Mon Sep 17 00:00:00 2001 From: Andrew Lamb Date: Tue, 25 Feb 2025 08:33:39 -0500 Subject: [PATCH 2/2] fix: restore unused code, mark with expect(dead_code) Signed-off-by: Andrew Lamb --- crates/core/src/kernel/models/fields.rs | 13 +++++++++++++ crates/core/src/operations/filesystem_check.rs | 12 +++++++++++- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/crates/core/src/kernel/models/fields.rs b/crates/core/src/kernel/models/fields.rs index 3ff653ac65..dabada4bcc 100644 --- a/crates/core/src/kernel/models/fields.rs +++ b/crates/core/src/kernel/models/fields.rs @@ -145,6 +145,19 @@ static REMOVE_FIELD: LazyLock = LazyLock::new(|| { true, ) }); +// TODO implement support for this checkpoint +#[expect(dead_code)] +static REMOVE_FIELD_CHECKPOINT: LazyLock = LazyLock::new(|| { + StructField::new( + "remove", + StructType::new(vec![ + StructField::new("path", DataType::STRING, false), + StructField::new("deletionTimestamp", DataType::LONG, true), + StructField::new("dataChange", DataType::BOOLEAN, false), + ]), + true, + ) +}); // https://github.com/delta-io/delta/blob/master/PROTOCOL.md#add-cdc-file static CDC_FIELD: LazyLock = LazyLock::new(|| { StructField::new( diff --git a/crates/core/src/operations/filesystem_check.rs b/crates/core/src/operations/filesystem_check.rs index 9411d0cbf7..4d06b9c0d2 100644 --- a/crates/core/src/operations/filesystem_check.rs +++ b/crates/core/src/operations/filesystem_check.rs @@ -22,7 +22,7 @@ use futures::future::BoxFuture; use futures::StreamExt; pub use object_store::path::Path; use object_store::ObjectStore; -use serde::{Serialize, Serializer}; +use serde::{de::Error as DeError, Deserialize, Deserializer, Serialize, Serializer}; use url::{ParseError, Url}; use uuid::Uuid; @@ -79,6 +79,16 @@ where serializer.serialize_str(&json_string) } +// Custom deserialization that parses a JSON string into MetricDetails +#[expect(dead_code)] +fn deserialize_vec_string<'de, D>(deserializer: D) -> Result, D::Error> +where + D: Deserializer<'de>, +{ + let s: String = Deserialize::deserialize(deserializer)?; + serde_json::from_str(&s).map_err(DeError::custom) +} + fn is_absolute_path(path: &str) -> DeltaResult { match Url::parse(path) { Ok(_) => Ok(true),