This is an automated email from the ASF dual-hosted git repository.
xushiyan pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hudi-rs.git
The following commit(s) were added to refs/heads/main by this push:
new c999cb6 build(deps): upgrade arrow, pyo3, datafusion, rustc (#297)
c999cb6 is described below
commit c999cb6a5ebfc076e4fc3cc99e67b87087d8e1b1
Author: Shiyan Xu <[email protected]>
AuthorDate: Sun Feb 9 19:28:21 2025 -0600
build(deps): upgrade arrow, pyo3, datafusion, rustc (#297)
---
Cargo.toml | 40 ++++++++++++++++++++--------------------
crates/core/src/config/table.rs | 4 ++--
crates/core/src/table/mod.rs | 2 +-
crates/datafusion/src/lib.rs | 2 +-
demo/infra/runner/Dockerfile | 2 +-
demo/sql-datafusion/Cargo.toml | 2 +-
demo/table-api-rust/Cargo.toml | 2 +-
python/Cargo.toml | 2 +-
rust-toolchain.toml | 2 +-
9 files changed, 29 insertions(+), 29 deletions(-)
diff --git a/Cargo.toml b/Cargo.toml
index 00f9429..95cacb2 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -26,7 +26,7 @@ resolver = "2"
version = "0.4.0"
edition = "2021"
license = "Apache-2.0"
-rust-version = "1.81"
+rust-version = "1.84"
keywords = ["apachehudi", "hudi", "datalake", "arrow"]
readme = "README.md"
description = "The native Rust implementation for Apache Hudi"
@@ -35,25 +35,25 @@ repository = "https://github.com/apache/hudi-rs"
[workspace.dependencies]
# arrow
-arrow = { version = "= 53.4.0", features = ["pyarrow"] }
-arrow-arith = { version = "= 53.4.0" }
-arrow-array = { version = "= 53.4.0" }
-arrow-buffer = { version = "= 53.4.0" }
-arrow-cast = { version = "= 53.4.0" }
-arrow-ipc = { version = "= 53.4.0" }
-arrow-json = { version = "= 53.4.0" }
-arrow-ord = { version = "= 53.4.0" }
-arrow-row = { version = "= 53.4.0" }
-arrow-schema = { version = "= 53.4.0", features = ["serde"] }
-arrow-select = { version = "= 53.4.0" }
-object_store = { version = "= 0.11.2", features = ["aws", "azure", "gcp"] }
-parquet = { version = "= 53.4.0", features = ["async", "object_store"] }
+arrow = { version = "~54.1.0", features = ["pyarrow"] }
+arrow-arith = { version = "~54.1.0" }
+arrow-array = { version = "~54.1.0" }
+arrow-buffer = { version = "~54.1.0" }
+arrow-cast = { version = "~54.1.0" }
+arrow-ipc = { version = "~54.1.0" }
+arrow-json = { version = "~54.1.0" }
+arrow-ord = { version = "~54.1.0" }
+arrow-row = { version = "~54.1.0" }
+arrow-schema = { version = "~54.1.0", features = ["serde"] }
+arrow-select = { version = "~54.1.0" }
+object_store = { version = "~0.11.2", features = ["aws", "azure", "gcp"] }
+parquet = { version = "~54.1.0", features = ["async", "object_store"] }
# datafusion
-datafusion = { version = "= 43.0.0" }
-datafusion-expr = { version = "= 43.0.0" }
-datafusion-common = { version = "= 43.0.0" }
-datafusion-physical-expr = { version = "= 43.0.0" }
+datafusion = { version = "~45.0.0" }
+datafusion-expr = { version = "~45.0.0" }
+datafusion-common = { version = "~45.0.0" }
+datafusion-physical-expr = { version = "~45.0.0" }
# serde
percent-encoding = { version = "2.3.1" }
@@ -67,8 +67,8 @@ chrono = { version = "0.4" }
lazy_static = { version = "1.5.0" }
log = { version = "0.4" }
paste = { version = "1.0.15" }
-strum = { version = "0.26", features = ["derive"] }
-strum_macros = "0.26"
+strum = { version = "0.27.0", features = ["derive"] }
+strum_macros = "0.27.0"
url = { version = "2.5" }
# runtime / async
diff --git a/crates/core/src/config/table.rs b/crates/core/src/config/table.rs
index 1960542..149938e 100644
--- a/crates/core/src/config/table.rs
+++ b/crates/core/src/config/table.rs
@@ -258,11 +258,11 @@ impl ConfigParser for HudiTableConfig {
);
}
- return HudiConfigValue::String(
+ HudiConfigValue::String(
RecordMergeStrategyValue::OverwriteWithLatest
.as_ref()
.to_string(),
- );
+ )
}
_ => self
.default_value()
diff --git a/crates/core/src/table/mod.rs b/crates/core/src/table/mod.rs
index 2415b65..93e4f8d 100644
--- a/crates/core/src/table/mod.rs
+++ b/crates/core/src/table/mod.rs
@@ -257,7 +257,7 @@ impl Table {
}
let n = std::cmp::max(1, n);
- let chunk_size = (file_slices.len() + n - 1) / n;
+ let chunk_size = file_slices.len().div_ceil(n);
Ok(file_slices
.chunks(chunk_size)
diff --git a/crates/datafusion/src/lib.rs b/crates/datafusion/src/lib.rs
index 094c41c..9beb612 100644
--- a/crates/datafusion/src/lib.rs
+++ b/crates/datafusion/src/lib.rs
@@ -33,12 +33,12 @@ use datafusion::datasource::object_store::ObjectStoreUrl;
use datafusion::datasource::physical_plan::parquet::ParquetExecBuilder;
use datafusion::datasource::physical_plan::FileScanConfig;
use datafusion::datasource::TableProvider;
+use datafusion::error::Result;
use datafusion::logical_expr::Operator;
use datafusion::physical_plan::ExecutionPlan;
use datafusion_common::config::TableParquetOptions;
use datafusion_common::DFSchema;
use datafusion_common::DataFusionError::Execution;
-use datafusion_common::Result;
use datafusion_expr::{CreateExternalTable, Expr, TableProviderFilterPushDown,
TableType};
use datafusion_physical_expr::create_physical_expr;
diff --git a/demo/infra/runner/Dockerfile b/demo/infra/runner/Dockerfile
index d7dbe7f..7faf95f 100644
--- a/demo/infra/runner/Dockerfile
+++ b/demo/infra/runner/Dockerfile
@@ -15,7 +15,7 @@
# specific language governing permissions and limitations
# under the License.
-FROM rust:1.81
+FROM rust:1.84
RUN apt-get update && apt-get install -y python3-dev python3-venv
diff --git a/demo/sql-datafusion/Cargo.toml b/demo/sql-datafusion/Cargo.toml
index 9cce925..c9babe1 100644
--- a/demo/sql-datafusion/Cargo.toml
+++ b/demo/sql-datafusion/Cargo.toml
@@ -25,5 +25,5 @@ edition = "2021"
[dependencies]
tokio = "^1"
-datafusion = "^43"
+datafusion = "~45.0.0"
hudi = { path = "../../crates/hudi", features = ["datafusion"] }
diff --git a/demo/table-api-rust/Cargo.toml b/demo/table-api-rust/Cargo.toml
index 9960693..c807db6 100644
--- a/demo/table-api-rust/Cargo.toml
+++ b/demo/table-api-rust/Cargo.toml
@@ -25,6 +25,6 @@ edition = "2021"
[dependencies]
tokio = "^1"
-arrow = { version = "= 53.4.0", features = ["pyarrow"] }
+arrow = { version = "~54.1.0", features = ["pyarrow"] }
hudi = { path = "../../crates/hudi" }
diff --git a/python/Cargo.toml b/python/Cargo.toml
index 08e84dd..9a89e3f 100644
--- a/python/Cargo.toml
+++ b/python/Cargo.toml
@@ -45,7 +45,7 @@ futures = { workspace = true }
tokio = { workspace = true }
[dependencies.pyo3]
-version = "0.22.6"
+version = "~0.23.0"
features = ["extension-module", "abi3", "abi3-py39"]
[lints.rust]
diff --git a/rust-toolchain.toml b/rust-toolchain.toml
index 5631a32..25c5959 100644
--- a/rust-toolchain.toml
+++ b/rust-toolchain.toml
@@ -16,6 +16,6 @@
# under the License.
[toolchain]
-channel = "1.81"
+channel = "1.84"
components = ["rustfmt", "clippy"]
profile = "minimal"