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 ed1dbab  build(dep): upgrade rustc, arrow, and tarpaulin setting (#276)
ed1dbab is described below

commit ed1dbabbb11944d922d856d7ec6fd167acf3dd5e
Author: Shiyan Xu <[email protected]>
AuthorDate: Thu Jan 30 01:18:41 2025 -0600

    build(dep): upgrade rustc, arrow, and tarpaulin setting (#276)
---
 .github/workflows/ci.yml       |  2 +-
 .github/workflows/code.yml     |  2 +-
 Cargo.toml                     | 28 ++++++++++++++--------------
 crates/core/src/table/mod.rs   |  2 +-
 demo/infra/runner/Dockerfile   |  2 +-
 demo/table-api-rust/Cargo.toml |  2 +-
 python/Cargo.toml              |  3 +++
 python/src/internal.rs         | 18 +++++++++---------
 python/src/lib.rs              |  2 +-
 rust-toolchain.toml            |  2 +-
 10 files changed, 33 insertions(+), 30 deletions(-)

diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 80861c0..ebdfde0 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -57,7 +57,7 @@ jobs:
         os: [ ubuntu-22.04 ]
     runs-on: ${{ matrix.os }}
     container:
-      image: xd009642/tarpaulin:0.30.0
+      image: xd009642/tarpaulin:0.31.5
       options: --security-opt seccomp=unconfined
     steps:
       - uses: actions/checkout@v4
diff --git a/.github/workflows/code.yml b/.github/workflows/code.yml
index d0eabff..a8bb1d6 100644
--- a/.github/workflows/code.yml
+++ b/.github/workflows/code.yml
@@ -41,7 +41,7 @@ jobs:
       - name: Setup Python
         uses: actions/setup-python@v5
         with:
-          python-version: '3.8'
+          python-version: '3.9'
           cache: pip
           cache-dependency-path: pyproject.toml
 
diff --git a/Cargo.toml b/Cargo.toml
index ab764ec..ffe1de4 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -26,7 +26,7 @@ resolver = "2"
 version = "0.3.0"
 edition = "2021"
 license = "Apache-2.0"
-rust-version = "1.79"
+rust-version = "1.81"
 keywords = ["apachehudi", "hudi", "datalake", "arrow"]
 readme = "README.md"
 description = "A native Rust library for Apache Hudi"
@@ -35,19 +35,19 @@ repository = "https://github.com/apache/hudi-rs";
 
 [workspace.dependencies]
 # arrow
-arrow = { version = "= 53.3.0", features = ["pyarrow"] }
-arrow-arith = { version = "= 53.3.0" }
-arrow-array = { version = "= 53.3.0" }
-arrow-buffer = { version = "= 53.3.0" }
-arrow-cast = { version = "= 53.3.0" }
-arrow-ipc = { version = "= 53.3.0" }
-arrow-json = { version = "= 53.3.0" }
-arrow-ord = { version = "= 53.3.0" }
-arrow-row = { version = "= 53.3.0" }
-arrow-schema = { version = "= 53.3.0", features = ["serde"] }
-arrow-select = { version = "= 53.3.0" }
+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.3.0", features = ["async", "object_store"] }
+parquet = { version = "= 53.4.0", features = ["async", "object_store"] }
 
 # datafusion
 datafusion = { version = "= 43.0.0" }
@@ -61,7 +61,7 @@ serde = { version = "1.0", features = ["derive"] }
 serde_json = { version = "1.0" }
 
 # "stdlib"
-thiserror = { version = "2.0.10" }
+thiserror = { version = "2.0.11" }
 bytes = { version = "1" }
 chrono = { version = "0.4" }
 lazy_static = { version = "1.5.0" }
diff --git a/crates/core/src/table/mod.rs b/crates/core/src/table/mod.rs
index 8d6a137..2415b65 100644
--- a/crates/core/src/table/mod.rs
+++ b/crates/core/src/table/mod.rs
@@ -56,7 +56,7 @@
 //! }
 //! ```
 //! 4. get file slice
-//! Users can obtain metadata to customize reading methods, read in batches, 
perform parallel reads, and more.
+//!    Users can obtain metadata to customize reading methods, read in 
batches, perform parallel reads, and more.
 //! ```rust
 //! use url::Url;
 //! use hudi_core::table::Table;
diff --git a/demo/infra/runner/Dockerfile b/demo/infra/runner/Dockerfile
index eadf90b..d7dbe7f 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.79
+FROM rust:1.81
 
 RUN apt-get update && apt-get install -y python3-dev python3-venv
 
diff --git a/demo/table-api-rust/Cargo.toml b/demo/table-api-rust/Cargo.toml
index 06fd623..9960693 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.3.0", features = ["pyarrow"] }
+arrow = { version = "= 53.4.0", features = ["pyarrow"] }
 
 hudi = { path = "../../crates/hudi" }
diff --git a/python/Cargo.toml b/python/Cargo.toml
index efcb9f4..08e84dd 100644
--- a/python/Cargo.toml
+++ b/python/Cargo.toml
@@ -47,3 +47,6 @@ tokio = { workspace = true }
 [dependencies.pyo3]
 version = "0.22.6"
 features = ["extension-module", "abi3", "abi3-py39"]
+
+[lints.rust]
+unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] }
diff --git a/python/src/internal.rs b/python/src/internal.rs
index 6ee9a01..90eb4af 100644
--- a/python/src/internal.rs
+++ b/python/src/internal.rs
@@ -56,14 +56,14 @@ impl From<PythonError> for PyErr {
     }
 }
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 #[derive(Clone, Debug)]
 #[pyclass]
 pub struct HudiFileGroupReader {
     inner: FileGroupReader,
 }
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 #[pymethods]
 impl HudiFileGroupReader {
     #[new]
@@ -113,7 +113,7 @@ impl HudiFileGroupReader {
     }
 }
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 #[derive(Clone, Debug)]
 #[pyclass]
 pub struct HudiFileSlice {
@@ -135,7 +135,7 @@ pub struct HudiFileSlice {
     num_records: i64,
 }
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 #[pymethods]
 impl HudiFileSlice {
     fn base_file_relative_path(&self) -> PyResult<String> {
@@ -174,7 +174,7 @@ impl HudiFileSlice {
     }
 }
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 impl From<&FileSlice> for HudiFileSlice {
     fn from(f: &FileSlice) -> Self {
         let file_id = f.file_id().to_string();
@@ -199,13 +199,13 @@ impl From<&FileSlice> for HudiFileSlice {
     }
 }
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 #[pyclass]
 pub struct HudiTable {
     inner: Table,
 }
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 #[pymethods]
 impl HudiTable {
     #[new]
@@ -399,7 +399,7 @@ impl HudiTable {
     }
 }
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 #[pyfunction]
 #[pyo3(signature = (base_uri, hudi_options=None, storage_options=None, 
options=None))]
 pub fn build_hudi_table(
@@ -420,7 +420,7 @@ pub fn build_hudi_table(
     Ok(HudiTable { inner })
 }
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 fn rt() -> &'static Runtime {
     static TOKIO_RT: OnceLock<Runtime> = OnceLock::new();
     TOKIO_RT.get_or_init(|| Runtime::new().expect("Failed to create a tokio 
runtime."))
diff --git a/python/src/lib.rs b/python/src/lib.rs
index b44832b..afd3e59 100644
--- a/python/src/lib.rs
+++ b/python/src/lib.rs
@@ -20,7 +20,7 @@ use pyo3::prelude::*;
 
 mod internal;
 
-#[cfg(not(tarpaulin))]
+#[cfg(not(tarpaulin_include))]
 #[pymodule]
 fn _internal(_py: Python, m: &Bound<'_, PyModule>) -> PyResult<()> {
     m.add("__version__", env!("CARGO_PKG_VERSION"))?;
diff --git a/rust-toolchain.toml b/rust-toolchain.toml
index af06e23..5631a32 100644
--- a/rust-toolchain.toml
+++ b/rust-toolchain.toml
@@ -16,6 +16,6 @@
 # under the License.
 
 [toolchain]
-channel = "1.79"
+channel = "1.81"
 components = ["rustfmt", "clippy"]
 profile = "minimal"

Reply via email to