From 1ad6ce3a4eaf3c475ca14d4d87cf579a295f5eca Mon Sep 17 00:00:00 2001 From: LanceDB Robot Date: Wed, 29 Jul 2026 18:14:27 -0700 Subject: [PATCH] chore: update lance dependency to v10.0.0-beta.7 (#3745) Updates the Rust workspace Lance dependencies and Java lance-core dependency to v10.0.0-beta.7. No compatibility fixes were required; full workspace clippy passed with warnings denied. Lance tag: https://github.com/lance-format/lance/releases/tag/v10.0.0-beta.7 --------- Co-authored-by: Lu Qiu Co-authored-by: Claude Fable 5 --- Cargo.lock | 85 +++++++++++++------------- Cargo.toml | 28 ++++----- java/pom.xml | 2 +- python/python/tests/test_blob.py | 6 +- rust/lancedb/src/error.rs | 3 + rust/lancedb/src/table.rs | 2 +- rust/lancedb/tests/blob_integration.rs | 10 +-- 7 files changed, 70 insertions(+), 66 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 0c4dabb20..76a15794b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3421,8 +3421,8 @@ checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" [[package]] name = "fsst" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-array", "rand 0.9.5", @@ -4777,8 +4777,8 @@ checksum = "e037a2e1d8d5fdbd49b16a4ea09d5d6401c1f29eca5ff29d03d3824dba16256a" [[package]] name = "lance" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arc-swap", "arrow", @@ -4852,8 +4852,8 @@ dependencies = [ [[package]] name = "lance-arrow" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-array", "arrow-buffer", @@ -4875,7 +4875,7 @@ dependencies = [ [[package]] name = "lance-arrow-scalar" version = "58.0.0" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-array", "arrow-buffer", @@ -4889,7 +4889,7 @@ dependencies = [ [[package]] name = "lance-arrow-stats" version = "58.0.0" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-array", "arrow-schema", @@ -4898,8 +4898,8 @@ dependencies = [ [[package]] name = "lance-bitpacking" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrayref", "crunchy", @@ -4909,14 +4909,15 @@ dependencies = [ [[package]] name = "lance-core" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-array", "arrow-buffer", "arrow-data", "arrow-schema", "async-trait", + "blake3", "byteorder", "bytes", "datafusion-common", @@ -4949,8 +4950,8 @@ dependencies = [ [[package]] name = "lance-datafusion" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow", "arrow-array", @@ -4980,8 +4981,8 @@ dependencies = [ [[package]] name = "lance-datagen" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow", "arrow-array", @@ -4998,8 +4999,8 @@ dependencies = [ [[package]] name = "lance-derive" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "proc-macro2", "quote", @@ -5008,8 +5009,8 @@ dependencies = [ [[package]] name = "lance-encoding" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-arith", "arrow-array", @@ -5044,8 +5045,8 @@ dependencies = [ [[package]] name = "lance-file" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-arith", "arrow-array", @@ -5075,8 +5076,8 @@ dependencies = [ [[package]] name = "lance-index" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arc-swap", "arrow", @@ -5143,8 +5144,8 @@ dependencies = [ [[package]] name = "lance-index-core" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-array", "arrow-schema", @@ -5166,8 +5167,8 @@ dependencies = [ [[package]] name = "lance-io" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow", "arrow-arith", @@ -5210,8 +5211,8 @@ dependencies = [ [[package]] name = "lance-linalg" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-array", "arrow-buffer", @@ -5227,8 +5228,8 @@ dependencies = [ [[package]] name = "lance-namespace" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow", "async-trait", @@ -5240,8 +5241,8 @@ dependencies = [ [[package]] name = "lance-namespace-impls" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow", "arrow-ipc", @@ -5295,8 +5296,8 @@ dependencies = [ [[package]] name = "lance-select" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-array", "arrow-buffer", @@ -5311,8 +5312,8 @@ dependencies = [ [[package]] name = "lance-table" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow", "arrow-array", @@ -5351,8 +5352,8 @@ dependencies = [ [[package]] name = "lance-testing" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "arrow-array", "arrow-schema", @@ -5365,8 +5366,8 @@ dependencies = [ [[package]] name = "lance-tokenizer" -version = "10.0.0-beta.5" -source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.5#ddb8e28ca238f29628b8e1795ddccbb7bf75e5c8" +version = "10.0.0-beta.7" +source = "git+https://github.com/lance-format/lance.git?tag=v10.0.0-beta.7#c164cdf7cedbcb04ab1c44a6101722a33cfa9232" dependencies = [ "icu_segmenter", "jieba-rs", diff --git a/Cargo.toml b/Cargo.toml index fee01b732..9638da17f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -13,20 +13,20 @@ categories = ["database-implementations"] rust-version = "1.91.0" [workspace.dependencies] -lance = { "version" = "=10.0.0-beta.5", default-features = false, "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-core = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-datagen = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-file = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-io = { "version" = "=10.0.0-beta.5", default-features = false, "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-index = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-linalg = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-namespace = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-namespace-impls = { "version" = "=10.0.0-beta.5", default-features = false, "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-table = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-testing = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-datafusion = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-encoding = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } -lance-arrow = { "version" = "=10.0.0-beta.5", "tag" = "v10.0.0-beta.5", "git" = "https://github.com/lance-format/lance.git" } +lance = { "version" = "=10.0.0-beta.7", default-features = false, "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-core = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-datagen = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-file = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-io = { "version" = "=10.0.0-beta.7", default-features = false, "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-index = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-linalg = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-namespace = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-namespace-impls = { "version" = "=10.0.0-beta.7", default-features = false, "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-table = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-testing = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-datafusion = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-encoding = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } +lance-arrow = { "version" = "=10.0.0-beta.7", "tag" = "v10.0.0-beta.7", "git" = "https://github.com/lance-format/lance.git" } ahash = "0.8" # Note that this one does not include pyarrow arrow = { version = "58.0.0", optional = false } diff --git a/java/pom.xml b/java/pom.xml index ab62aa8ab..7e5194159 100644 --- a/java/pom.xml +++ b/java/pom.xml @@ -28,7 +28,7 @@ UTF-8 15.0.0 - 10.0.0-beta.5 + 10.0.0-beta.7 false 2.30.0 1.7 diff --git a/python/python/tests/test_blob.py b/python/python/tests/test_blob.py index 04a99ea16..b205c20a6 100644 --- a/python/python/tests/test_blob.py +++ b/python/python/tests/test_blob.py @@ -226,13 +226,13 @@ def test_fetch_blob_ranges_validates_requests(): table = _blob_table("range_validation", [{"id": 1, "image": b"abc"}]) row_id = _row_ids_by_id(table)[1] - with pytest.raises(RuntimeError, match="exceeds blob size"): + with pytest.raises(ValueError, match="exceeds blob size"): table.fetch_blob_ranges("image", [(row_id, 2, 2)]) - with pytest.raises(RuntimeError, match="offset \\+ length overflowed"): + with pytest.raises(ValueError, match="offset \\+ length overflowed"): table.fetch_blob_ranges("image", [(row_id, 2**64 - 1, 1)]) - with pytest.raises(ValueError, match="row ids"): + with pytest.raises(ValueError, match="row IDs"): table.fetch_blob_ranges("image", [(2**64 - 1, 0, 1)]) diff --git a/rust/lancedb/src/error.rs b/rust/lancedb/src/error.rs index 7bfbc6f2e..37dfc44fc 100644 --- a/rust/lancedb/src/error.rs +++ b/rust/lancedb/src/error.rs @@ -121,6 +121,9 @@ impl From for Error { match source { lance::Error::Wrapped { error, .. } => Self::from_box_error(error), lance::Error::External { source } => Self::from_box_error(source), + lance::Error::InvalidInput { source, .. } => Self::InvalidInput { + message: source.to_string(), + }, _ => Self::Lance { source }, } } diff --git a/rust/lancedb/src/table.rs b/rust/lancedb/src/table.rs index 7b654e194..e0ab9754c 100644 --- a/rust/lancedb/src/table.rs +++ b/rust/lancedb/src/table.rs @@ -4591,7 +4591,7 @@ mod tests { .set_lsm_write_spec(LsmWriteSpec::bucket("id", bad)) .await .expect_err("should reject"); - assert!(matches!(err, Error::Lance { .. }), "got {:?}", err); + assert!(matches!(err, Error::InvalidInput { .. }), "got {:?}", err); } // Happy path: install spec; verify MemWAL details record it. diff --git a/rust/lancedb/tests/blob_integration.rs b/rust/lancedb/tests/blob_integration.rs index 47b80b433..e1fe742f7 100644 --- a/rust/lancedb/tests/blob_integration.rs +++ b/rust/lancedb/tests/blob_integration.rs @@ -647,7 +647,7 @@ async fn fetch_blob_ranges_validates_requests() -> Result<()> { .await .unwrap_err(); assert!(matches!(&err, Error::InvalidInput { .. }), "got {err:?}"); - assert!(err.to_string().contains("row ids")); + assert!(err.to_string().contains("row IDs")); Ok(()) } @@ -680,7 +680,7 @@ async fn fetch_blobs_out_of_range_id_errors_without_panic() -> Result<()> { let table = create_inline_blob_table(&db, "t", &[1], &[Some(b"x".as_slice())]).await?; let err = table.fetch_blobs("image", &[u64::MAX]).await.unwrap_err(); - assert!(err.to_string().contains("row ids")); + assert!(err.to_string().contains("row IDs")); Ok(()) } @@ -694,11 +694,11 @@ async fn fetch_blob_apis_reject_mixed_valid_and_missing_row_ids() -> Result<()> let err = table.fetch_blobs("image", &row_ids).await.unwrap_err(); assert!(matches!(&err, Error::InvalidInput { .. }), "got {err:?}"); - assert!(err.to_string().contains("row ids")); + assert!(err.to_string().contains("row IDs")); let err = table.fetch_blob_files("image", &row_ids).await.unwrap_err(); assert!(matches!(&err, Error::InvalidInput { .. }), "got {err:?}"); - assert!(err.to_string().contains("row ids")); + assert!(err.to_string().contains("row IDs")); let requests = row_ids.map(|row_id| BlobRangeRequest::new(row_id, 0, 1)); let err = table @@ -706,7 +706,7 @@ async fn fetch_blob_apis_reject_mixed_valid_and_missing_row_ids() -> Result<()> .await .unwrap_err(); assert!(matches!(&err, Error::InvalidInput { .. }), "got {err:?}"); - assert!(err.to_string().contains("row ids")); + assert!(err.to_string().contains("row IDs")); Ok(()) }