This is an automated email from the ASF dual-hosted git repository.
blackmwk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg-rust.git
The following commit(s) were added to refs/heads/main by this push:
new cc0ead3cb ci(toml): check toml fmt (#2504)
cc0ead3cb is described below
commit cc0ead3cb19192f30350cd16ab56c87d2cae79c0
Author: Liang Gong <[email protected]>
AuthorDate: Mon May 25 20:39:04 2026 +0800
ci(toml): check toml fmt (#2504)
## Which issue does this PR close?
<!--
We generally require a GitHub issue to be filed for all bug fixes and
enhancements and this helps us generate change logs for our releases.
You can link an issue to this PR using the GitHub syntax. For example
`Closes #123` indicates that this PR will close issue #123.
-->
- Closes #2503
## What changes are included in this PR?
<!--
Provide a summary of the modifications in this PR. List the main changes
such as new features, bug fixes, refactoring, or any other updates.
-->
Taplo fmt check is added in `check-fmt` target in `Makefile`.
Format all TOML files.
## Are these changes tested?
<!--
Specify what test covers (unit test, integration test, etc.).
If tests are not included in your PR, please explain why (for example,
are they covered by existing tests)?
-->
Yes.
---
.typos.toml | 2 +-
Cargo.toml | 20 +++++++++++++++----
Makefile | 6 +++---
bindings/python/Cargo.toml | 8 +++++---
bindings/python/pyproject.toml | 40 +++++++++++++++++++++----------------
crates/catalog/loader/Cargo.toml | 8 ++++----
crates/catalog/s3tables/Cargo.toml | 3 +--
crates/iceberg/Cargo.toml | 7 +++----
crates/integration_tests/Cargo.toml | 2 +-
crates/sqllogictest/Cargo.toml | 4 ++--
crates/storage/opendal/Cargo.toml | 20 +++++++++++++------
deny.toml | 2 +-
12 files changed, 74 insertions(+), 48 deletions(-)
diff --git a/.typos.toml b/.typos.toml
index 36996a553..624dfd777 100644
--- a/.typos.toml
+++ b/.typos.toml
@@ -19,8 +19,8 @@
extend-ignore-identifiers-re = ["^bimap$"]
[default.extend-words]
-ags = "ags"
AGS = "AGS"
+ags = "ags"
[files]
extend-exclude = ["**/testdata", "CHANGELOG.md"]
diff --git a/Cargo.toml b/Cargo.toml
index d23e013f1..a7ee54db9 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -56,8 +56,14 @@ arrow-string = "58"
as-any = "0.3.2"
async-trait = "0.1.89"
aws-config = "1.8.7"
-aws-sdk-glue = { version = "1.85", default-features = false, features =
["default-https-client", "rt-tokio"] }
-aws-sdk-s3tables = { version = "1.28", default-features = false, features =
["default-https-client", "rt-tokio"] }
+aws-sdk-glue = { version = "1.85", default-features = false, features = [
+ "default-https-client",
+ "rt-tokio",
+] }
+aws-sdk-s3tables = { version = "1.28", default-features = false, features = [
+ "default-https-client",
+ "rt-tokio",
+] }
backon = "1.5.1"
base64 = "0.22.1"
bimap = "0.6"
@@ -74,6 +80,10 @@ dirs = "6"
enum-ordinalize = "4.3.0"
env_logger = "0.11.8"
expect-test = "1"
+fastnum = { version = "0.7", default-features = false, features = [
+ "std",
+ "serde",
+] }
faststr = "0.2.31"
flate2 = "1.1.5"
fnv = "1.0.7"
@@ -113,7 +123,6 @@ regex = "1.11.3"
reqwest = { version = "0.12.12", default-features = false, features = ["json"]
}
roaring = { version = "0.11" }
rstest = "0.26"
-fastnum = { version = "0.7", default-features = false, features = ["std",
"serde"] }
serde = { version = "1.0.219", features = ["rc"] }
serde_bytes = "0.11.17"
serde_derive = "1.0.219"
@@ -126,7 +135,10 @@ stacker = "0.1.20"
strum = "0.27.2"
tempfile = "3.18"
thrift = "0.17.0"
-tokio = { version = "1.47", default-features = false, features = ["sync",
"rt-multi-thread"] }
+tokio = { version = "1.47", default-features = false, features = [
+ "sync",
+ "rt-multi-thread",
+] }
toml = "0.8"
tracing = "0.1.41"
tracing-subscriber = "0.3.20"
diff --git a/Makefile b/Makefile
index 6579140ff..1a602da89 100644
--- a/Makefile
+++ b/Makefile
@@ -21,10 +21,10 @@ build:
cargo build --all-targets --all-features --workspace
check-fmt:
- cargo fmt --all -- --check
+ cargo fmt --all -- --check
check-clippy:
- cargo clippy --all-targets --all-features --workspace -- -D warnings
+ cargo clippy --all-targets --all-features --workspace -- -D warnings
install-cargo-machete:
cargo install [email protected]
@@ -45,7 +45,7 @@ fix-toml: install-taplo-cli
taplo fmt
check-toml: install-taplo-cli
- taplo check
+ taplo fmt --check
NIGHTLY_VERSION := $(shell awk -F'"' '/^channel/ {print $$2}'
rust-toolchain.toml)
MSRV_VERSION := $(shell awk -F'"' '/^rust-version/ {print $$2}' Cargo.toml)
diff --git a/bindings/python/Cargo.toml b/bindings/python/Cargo.toml
index 251f96d16..1488e6ee7 100644
--- a/bindings/python/Cargo.toml
+++ b/bindings/python/Cargo.toml
@@ -32,11 +32,13 @@ crate-type = ["cdylib"]
[dependencies]
arrow = { version = "58", features = ["pyarrow", "chrono-tz"] }
+datafusion-ffi = "53.0.0"
iceberg = { path = "../../crates/iceberg" }
-iceberg-storage-opendal = { path = "../../crates/storage/opendal", features =
["opendal-all"] }
-pyo3 = { version = "0.28", features = ["extension-module", "abi3-py310"] }
iceberg-datafusion = { path = "../../crates/integrations/datafusion" }
-datafusion-ffi = "53.0.0"
+iceberg-storage-opendal = { path = "../../crates/storage/opendal", features = [
+ "opendal-all",
+] }
+pyo3 = { version = "0.28", features = ["extension-module", "abi3-py310"] }
tokio = { version = "1.46.1", default-features = false }
[profile.release]
diff --git a/bindings/python/pyproject.toml b/bindings/python/pyproject.toml
index f23944332..ecef03b17 100644
--- a/bindings/python/pyproject.toml
+++ b/bindings/python/pyproject.toml
@@ -33,20 +33,26 @@ classifiers = [
"Programming Language :: Python :: 3.13",
"Programming Language :: Rust",
]
+dynamic = ["version"]
+license = { file = "LICENSE" }
name = "pyiceberg-core"
readme = "project-description.md"
requires-python = ">=3.10,<4"
-dynamic = ["version"]
-license = { file = "LICENSE" }
[tool.maturin]
features = ["pyo3/extension-module"]
-module-name = "pyiceberg_core.pyiceberg_core_rust"
-python-source = "python"
include = [
- { path = "LICENSE", format = ["sdist", "wheel"] },
- { path = "NOTICE", format = ["sdist", "wheel"] }
+ { path = "LICENSE", format = [
+ "sdist",
+ "wheel",
+ ] },
+ { path = "NOTICE", format = [
+ "sdist",
+ "wheel",
+ ] },
]
+module-name = "pyiceberg_core.pyiceberg_core_rust"
+python-source = "python"
[tool.ruff.lint]
ignore = ["F403", "F405"]
@@ -60,15 +66,15 @@ filterwarnings = [
[dependency-groups]
dev = [
- "maturin>=1.0,<2.0",
- "pytest>=8.3.2",
- "datafusion==52.*",
- # Set a PyIceberg lower bound; otherwise the resolver may select the
- # unrelated 0.0.2 stub.
- # Keep pyarrow direct because current pyiceberg[pyarrow] releases depend on
- # pyiceberg-core, which conflicts with this local pyiceberg-core project.
- "pyiceberg[sql-sqlite]>=0.11",
- "pyarrow>=17",
- "fastavro>=1.11.1",
- "huggingface_hub>=0.20",
+ "maturin>=1.0,<2.0",
+ "pytest>=8.3.2",
+ "datafusion==52.*",
+ # Set a PyIceberg lower bound; otherwise the resolver may select the
+ # unrelated 0.0.2 stub.
+ # Keep pyarrow direct because current pyiceberg[pyarrow] releases depend on
+ # pyiceberg-core, which conflicts with this local pyiceberg-core project.
+ "pyiceberg[sql-sqlite]>=0.11",
+ "pyarrow>=17",
+ "fastavro>=1.11.1",
+ "huggingface_hub>=0.20",
]
diff --git a/crates/catalog/loader/Cargo.toml b/crates/catalog/loader/Cargo.toml
index 20daf84f5..da6f74414 100644
--- a/crates/catalog/loader/Cargo.toml
+++ b/crates/catalog/loader/Cargo.toml
@@ -29,18 +29,18 @@ license = { workspace = true }
repository = { workspace = true }
[dependencies]
+async-trait = { workspace = true }
iceberg = { workspace = true }
-iceberg-catalog-rest = { workspace = true }
iceberg-catalog-glue = { workspace = true }
-iceberg-catalog-s3tables = { workspace = true }
iceberg-catalog-hms = { workspace = true }
+iceberg-catalog-rest = { workspace = true }
+iceberg-catalog-s3tables = { workspace = true }
iceberg-catalog-sql = { workspace = true }
tokio = { workspace = true }
-async-trait = { workspace = true }
[dev-dependencies]
-iceberg_test_utils = { path = "../../test_utils", features = ["tests"] }
iceberg-storage-opendal = { workspace = true }
+iceberg_test_utils = { path = "../../test_utils", features = ["tests"] }
reqwest = { workspace = true }
rstest = { workspace = true }
sqlx = { workspace = true, features = ["runtime-tokio", "sqlite", "migrate"] }
diff --git a/crates/catalog/s3tables/Cargo.toml
b/crates/catalog/s3tables/Cargo.toml
index dc7be3027..9eeee6f9a 100644
--- a/crates/catalog/s3tables/Cargo.toml
+++ b/crates/catalog/s3tables/Cargo.toml
@@ -19,9 +19,9 @@
edition = { workspace = true }
homepage = { workspace = true }
name = "iceberg-catalog-s3tables"
+readme = "README.md"
rust-version = { workspace = true }
version = { workspace = true }
-readme = "README.md"
categories = ["database"]
description = "Apache Iceberg Rust S3Tables Catalog"
@@ -37,7 +37,6 @@ aws-sdk-s3tables = { workspace = true }
iceberg = { workspace = true }
iceberg-storage-opendal = { workspace = true, features = ["opendal-s3"] }
-
[dev-dependencies]
arrow-array = { workspace = true }
arrow-schema = { workspace = true }
diff --git a/crates/iceberg/Cargo.toml b/crates/iceberg/Cargo.toml
index b3f082e0d..4590492b4 100644
--- a/crates/iceberg/Cargo.toml
+++ b/crates/iceberg/Cargo.toml
@@ -31,7 +31,6 @@ repository = { workspace = true }
[features]
default = []
-
[dependencies]
aes-gcm = { workspace = true }
anyhow = { workspace = true }
@@ -54,6 +53,7 @@ bytes = { workspace = true }
chrono = { workspace = true }
derive_builder = { workspace = true }
expect-test = { workspace = true }
+fastnum = { workspace = true }
flate2 = { workspace = true }
fnv = { workspace = true }
futures = { workspace = true }
@@ -66,7 +66,6 @@ parquet = { workspace = true, features = ["async",
"encryption"] }
rand = { workspace = true }
reqwest = { workspace = true }
roaring = { workspace = true }
-fastnum = { workspace = true }
serde = { workspace = true }
serde_bytes = { workspace = true }
serde_derive = { workspace = true }
@@ -85,13 +84,13 @@ zstd = { workspace = true }
[dev-dependencies]
expect-test = { workspace = true }
iceberg_test_utils = { path = "../test_utils", features = ["tests"] }
+minijinja = { workspace = true }
mockall = { workspace = true }
pretty_assertions = { workspace = true }
rand = { workspace = true }
regex = { workspace = true }
-tempfile = { workspace = true }
-minijinja = { workspace = true }
serde_arrow = { version = "0.14", features = ["arrow-58"] }
+tempfile = { workspace = true }
[package.metadata.cargo-machete]
# These dependencies are added to ensure minimal dependency version
diff --git a/crates/integration_tests/Cargo.toml
b/crates/integration_tests/Cargo.toml
index 774ef13fc..c82f7aefe 100644
--- a/crates/integration_tests/Cargo.toml
+++ b/crates/integration_tests/Cargo.toml
@@ -32,7 +32,7 @@ iceberg = { workspace = true }
iceberg-catalog-rest = { workspace = true }
iceberg-storage-opendal = { workspace = true, features = ["opendal-s3"] }
iceberg_test_utils = { path = "../test_utils", features = ["tests"] }
+ordered-float = "2.10.1"
parquet = { workspace = true }
tokio = { workspace = true }
uuid = { workspace = true }
-ordered-float = "2.10.1"
diff --git a/crates/sqllogictest/Cargo.toml b/crates/sqllogictest/Cargo.toml
index e826ad7ae..a64ce51ba 100644
--- a/crates/sqllogictest/Cargo.toml
+++ b/crates/sqllogictest/Cargo.toml
@@ -35,11 +35,11 @@ iceberg = { workspace = true }
iceberg-datafusion = { workspace = true }
indicatif = { workspace = true }
log = { workspace = true }
+serde = { workspace = true }
sqllogictest = { workspace = true }
+tokio = { workspace = true }
toml = { workspace = true }
-serde = { workspace = true }
tracing = { workspace = true }
-tokio = { workspace = true }
[dev-dependencies]
libtest-mimic = { workspace = true }
diff --git a/crates/storage/opendal/Cargo.toml
b/crates/storage/opendal/Cargo.toml
index 549959b53..82de20479 100644
--- a/crates/storage/opendal/Cargo.toml
+++ b/crates/storage/opendal/Cargo.toml
@@ -16,11 +16,11 @@
# under the License.
[package]
-name = "iceberg-storage-opendal"
edition = { workspace = true }
-version = { workspace = true }
license = { workspace = true }
+name = "iceberg-storage-opendal"
repository = { workspace = true }
+version = { workspace = true }
categories = ["database"]
description = "Apache Iceberg OpenDAL storage implementation"
@@ -28,7 +28,15 @@ keywords = ["iceberg", "opendal", "storage"]
[features]
default = ["opendal-memory", "opendal-fs", "opendal-s3"]
-opendal-all = ["opendal-memory", "opendal-fs", "opendal-s3", "opendal-gcs",
"opendal-oss", "opendal-azdls", "opendal-hf"]
+opendal-all = [
+ "opendal-memory",
+ "opendal-fs",
+ "opendal-s3",
+ "opendal-gcs",
+ "opendal-oss",
+ "opendal-azdls",
+ "opendal-hf",
+]
opendal-azdls = ["opendal/services-azdls"]
opendal-fs = ["opendal/services-fs"]
@@ -40,17 +48,17 @@ opendal-s3 = ["opendal/services-s3", "reqsign-aws-v4",
"reqsign-core"]
[dependencies]
anyhow = { workspace = true }
+async-trait = { workspace = true }
+bytes = { workspace = true }
cfg-if = { workspace = true }
+futures = { workspace = true }
iceberg = { workspace = true }
opendal = { workspace = true }
-async-trait = { workspace = true }
-bytes = { workspace = true }
reqsign-aws-v4 = { version = "3.0.0", optional = true }
reqsign-core = { version = "3.0.0", optional = true }
serde = { workspace = true }
typetag = { workspace = true }
url = { workspace = true }
-futures = { workspace = true }
[dev-dependencies]
async-trait = { workspace = true }
diff --git a/deny.toml b/deny.toml
index 0f88ba6d0..847e002bd 100644
--- a/deny.toml
+++ b/deny.toml
@@ -31,7 +31,7 @@ allow = [
"Unicode-3.0",
# Boost Software License Version 1.0 is allowed (Category-A):
# https://www.apache.org/legal/resolved.html#category-a
- "BSL-1.0"
+ "BSL-1.0",
]
exceptions = [