diff --git a/Cargo.lock b/Cargo.lock index 67fc947f..ddedcfab 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -181,9 +181,9 @@ checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" [[package]] name = "arrow" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e833808ff2d94ed40d9379848a950d995043c7fb3e81a30b383f4c6033821cc" +checksum = "cb372a7cbcac02a35d3fb7b3fc1f969ec078e871f9bb899bf00a2e1809bec8a3" dependencies = [ "arrow-arith", "arrow-array", @@ -203,23 +203,23 @@ dependencies = [ [[package]] name = "arrow-arith" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad08897b81588f60ba983e3ca39bda2b179bdd84dced378e7df81a5313802ef8" +checksum = "0f377dcd19e440174596d83deb49cd724886d91060c07fec4f67014ef9d54049" dependencies = [ "arrow-array", "arrow-buffer", "arrow-data", "arrow-schema", "chrono", - "num", + "num-traits", ] [[package]] name = "arrow-array" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8548ca7c070d8db9ce7aa43f37393e4bfcf3f2d3681df278490772fd1673d08d" +checksum = "a23eaff85a44e9fa914660fb0d0bb00b79c4a3d888b5334adb3ea4330c84f002" dependencies = [ "ahash", "arrow-buffer", @@ -229,29 +229,33 @@ dependencies = [ "chrono-tz 0.10.4", "half", "hashbrown 0.16.0", - "num", + "num-complex", + "num-integer", + "num-traits", ] [[package]] name = "arrow-buffer" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e003216336f70446457e280807a73899dd822feaf02087d31febca1363e2fccc" +checksum = "a2819d893750cb3380ab31ebdc8c68874dd4429f90fd09180f3c93538bd21626" dependencies = [ "bytes", "half", - "num", + "num-bigint", + "num-traits", ] [[package]] name = "arrow-cast" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "919418a0681298d3a77d1a315f625916cb5678ad0d74b9c60108eb15fd083023" +checksum = "e3d131abb183f80c450d4591dc784f8d7750c50c6e2bc3fcaad148afc8361271" dependencies = [ "arrow-array", "arrow-buffer", "arrow-data", + "arrow-ord", "arrow-schema", "arrow-select", "atoi", @@ -260,15 +264,15 @@ dependencies = [ "comfy-table", "half", "lexical-core", - "num", + "num-traits", "ryu", ] [[package]] name = "arrow-csv" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa9bf02705b5cf762b6f764c65f04ae9082c7cfc4e96e0c33548ee3f67012eb" +checksum = "2275877a0e5e7e7c76954669366c2aa1a829e340ab1f612e647507860906fb6b" dependencies = [ "arrow-array", "arrow-cast", @@ -281,21 +285,22 @@ dependencies = [ [[package]] name = "arrow-data" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5c64fff1d142f833d78897a772f2e5b55b36cb3e6320376f0961ab0db7bd6d0" +checksum = "05738f3d42cb922b9096f7786f606fcb8669260c2640df8490533bb2fa38c9d3" dependencies = [ "arrow-buffer", "arrow-schema", "half", - "num", + "num-integer", + "num-traits", ] [[package]] name = "arrow-ipc" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d3594dcddccc7f20fd069bc8e9828ce37220372680ff638c5e00dea427d88f5" +checksum = "3d09446e8076c4b3f235603d9ea7c5494e73d441b01cd61fb33d7254c11964b3" dependencies = [ "arrow-array", "arrow-buffer", @@ -303,15 +308,15 @@ dependencies = [ "arrow-schema", "arrow-select", "flatbuffers", - "lz4_flex", + "lz4_flex 0.12.0", "zstd", ] [[package]] name = "arrow-json" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88cf36502b64a127dc659e3b305f1d993a544eab0d48cce704424e62074dc04b" +checksum = "371ffd66fa77f71d7628c63f209c9ca5341081051aa32f9c8020feb0def787c0" dependencies = [ "arrow-array", "arrow-buffer", @@ -320,20 +325,22 @@ dependencies = [ "arrow-schema", "chrono", "half", - "indexmap 2.11.4", + "indexmap 2.12.0", + "itoa", "lexical-core", "memchr", - "num", - "serde", + "num-traits", + "ryu", + "serde_core", "serde_json", "simdutf8", ] [[package]] name = "arrow-ord" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c8f82583eb4f8d84d4ee55fd1cb306720cddead7596edce95b50ee418edf66f" +checksum = "cbc94fc7adec5d1ba9e8cd1b1e8d6f72423b33fe978bf1f46d970fafab787521" dependencies = [ "arrow-array", "arrow-buffer", @@ -344,9 +351,9 @@ dependencies = [ [[package]] name = "arrow-pyarrow" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d924b32e96f8bb74d94cd82bd97b313c432fcb0ea331689ef9e7c6b8be4b258" +checksum = "fbd810e3997bae72f58cda57231ccb0a2fda07911ca1b0a5718cbf9379abb297" dependencies = [ "arrow-array", "arrow-data", @@ -356,9 +363,9 @@ dependencies = [ [[package]] name = "arrow-row" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d07ba24522229d9085031df6b94605e0f4b26e099fb7cdeec37abd941a73753" +checksum = "169676f317157dc079cc5def6354d16db63d8861d61046d2f3883268ced6f99f" dependencies = [ "arrow-array", "arrow-buffer", @@ -369,34 +376,34 @@ dependencies = [ [[package]] name = "arrow-schema" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3aa9e59c611ebc291c28582077ef25c97f1975383f1479b12f3b9ffee2ffabe" +checksum = "d27609cd7dd45f006abae27995c2729ef6f4b9361cde1ddd019dc31a5aa017e0" dependencies = [ "bitflags 2.9.4", - "serde", + "serde_core", "serde_json", ] [[package]] name = "arrow-select" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c41dbbd1e97bfcaee4fcb30e29105fb2c75e4d82ae4de70b792a5d3f66b2e7a" +checksum = "ae980d021879ea119dd6e2a13912d81e64abed372d53163e804dfe84639d8010" dependencies = [ "ahash", "arrow-array", "arrow-buffer", "arrow-data", "arrow-schema", - "num", + "num-traits", ] [[package]] name = "arrow-string" -version = "56.2.0" +version = "57.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53f5183c150fbc619eede22b861ea7c0eebed8eaac0333eaa7f6da5205fd504d" +checksum = "cf35e8ef49dcf0c5f6d175edee6b8af7b45611805333129c541a8b89a0fc0534" dependencies = [ "arrow-array", "arrow-buffer", @@ -404,7 +411,7 @@ dependencies = [ "arrow-schema", "arrow-select", "memchr", - "num", + "num-traits", "regex", "regex-syntax", ] @@ -427,15 +434,11 @@ version = "0.4.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "06575e6a9673580f52661c92107baabffbf41e2141373441cbcdc47cb733003c" dependencies = [ - "bzip2 0.5.2", "flate2", "futures-core", "memchr", "pin-project-lite", "tokio", - "xz2", - "zstd", - "zstd-safe", ] [[package]] @@ -491,7 +494,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -502,7 +505,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1193,7 +1196,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.106", + "syn 2.0.114", "which", ] @@ -1307,7 +1310,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1375,7 +1378,7 @@ checksum = "3fa76293b4f7bb636ab88fd78228235b5248b4d05cc589aed610f954af5d7c7a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1400,34 +1403,6 @@ dependencies = [ "either", ] -[[package]] -name = "bzip2" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49ecfb22d906f800d4fe833b6282cf4dc1c298f5057ca0b5445e5c209735ca47" -dependencies = [ - "bzip2-sys", -] - -[[package]] -name = "bzip2" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3a53fac24f34a81bc9954b5d6cfce0c21e18ec6959f44f56e8e90e4bb7c346c" -dependencies = [ - "libbz2-rs-sys", -] - -[[package]] -name = "bzip2-sys" -version = "0.1.13+1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14" -dependencies = [ - "cc", - "pkg-config", -] - [[package]] name = "candle-core" version = "0.9.1" @@ -1913,7 +1888,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1947,7 +1922,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1961,7 +1936,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1972,7 +1947,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core 0.20.11", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1983,7 +1958,7 @@ checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ "darling_core 0.21.3", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2002,25 +1977,23 @@ dependencies = [ [[package]] name = "datafusion" -version = "50.2.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc6759cf9ef57c5c469e4027ac4b4cfa746e06a0f5472c2b922b6a403c2a64c4" +checksum = "8ba7cb113e9c0bedf9e9765926031e132fa05a1b09ba6e93a6d1a4d7044457b8" dependencies = [ "arrow", - "arrow-ipc", "arrow-schema", "async-trait", "bytes", - "bzip2 0.6.1", "chrono", "datafusion-catalog", "datafusion-catalog-listing", "datafusion-common", "datafusion-common-runtime", "datafusion-datasource", + "datafusion-datasource-arrow", "datafusion-datasource-csv", "datafusion-datasource-json", - "datafusion-datasource-parquet", "datafusion-execution", "datafusion-expr", "datafusion-expr-common", @@ -2037,29 +2010,26 @@ dependencies = [ "datafusion-physical-plan", "datafusion-session", "datafusion-sql", - "flate2", "futures", "itertools 0.14.0", "log", "object_store", "parking_lot", - "parquet", "rand 0.9.2", "regex", - "sqlparser 0.58.0", + "rstest 0.26.1", + "sqlparser 0.59.0", "tempfile", "tokio", "url", "uuid", - "xz2", - "zstd", ] [[package]] name = "datafusion-catalog" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "187622262ad8f7d16d3be9202b4c1e0116f1c9aa387e5074245538b755261621" +checksum = "66a3a799f914a59b1ea343906a0486f17061f39509af74e874a866428951130d" dependencies = [ "arrow", "async-trait", @@ -2072,7 +2042,6 @@ dependencies = [ "datafusion-physical-expr", "datafusion-physical-plan", "datafusion-session", - "datafusion-sql", "futures", "itertools 0.14.0", "log", @@ -2083,9 +2052,9 @@ dependencies = [ [[package]] name = "datafusion-catalog-listing" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9657314f0a32efd0382b9a46fdeb2d233273ece64baa68a7c45f5a192daf0f83" +checksum = "6db1b113c80d7a0febcd901476a57aef378e717c54517a163ed51417d87621b0" dependencies = [ "arrow", "async-trait", @@ -2095,10 +2064,11 @@ dependencies = [ "datafusion-execution", "datafusion-expr", "datafusion-physical-expr", + "datafusion-physical-expr-adapter", "datafusion-physical-expr-common", "datafusion-physical-plan", - "datafusion-session", "futures", + "itertools 0.14.0", "log", "object_store", "tokio", @@ -2106,34 +2076,31 @@ dependencies = [ [[package]] name = "datafusion-common" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a83760d9a13122d025fbdb1d5d5aaf93dd9ada5e90ea229add92aa30898b2d1" +checksum = "7c10f7659e96127d25e8366be7c8be4109595d6a2c3eac70421f380a7006a1b0" dependencies = [ "ahash", "arrow", "arrow-ipc", - "base64 0.22.1", "chrono", "half", "hashbrown 0.14.5", - "indexmap 2.11.4", + "indexmap 2.12.0", "libc", "log", "object_store", - "parquet", "paste", - "recursive", - "sqlparser 0.58.0", + "sqlparser 0.59.0", "tokio", "web-time", ] [[package]] name = "datafusion-common-runtime" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b6234a6c7173fe5db1c6c35c01a12b2aa0f803a3007feee53483218817f8b1e" +checksum = "b92065bbc6532c6651e2f7dd30b55cba0c7a14f860c7e1d15f165c41a1868d95" dependencies = [ "futures", "log", @@ -2142,15 +2109,13 @@ dependencies = [ [[package]] name = "datafusion-datasource" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7256c9cb27a78709dd42d0c80f0178494637209cac6e29d5c93edd09b6721b86" +checksum = "fde13794244bc7581cd82f6fff217068ed79cdc344cafe4ab2c3a1c3510b38d6" dependencies = [ "arrow", - "async-compression", "async-trait", "bytes", - "bzip2 0.6.1", "chrono", "datafusion-common", "datafusion-common-runtime", @@ -2161,38 +2126,54 @@ dependencies = [ "datafusion-physical-expr-common", "datafusion-physical-plan", "datafusion-session", - "flate2", "futures", "glob", "itertools 0.14.0", "log", "object_store", - "parquet", "rand 0.9.2", - "tempfile", "tokio", - "tokio-util", "url", - "xz2", - "zstd", ] [[package]] -name = "datafusion-datasource-csv" -version = "50.3.0" +name = "datafusion-datasource-arrow" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64533a90f78e1684bfb113d200b540f18f268134622d7c96bbebc91354d04825" +checksum = "804fa9b4ecf3157982021770617200ef7c1b2979d57bec9044748314775a9aea" +dependencies = [ + "arrow", + "arrow-ipc", + "async-trait", + "bytes", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-datasource", + "datafusion-execution", + "datafusion-expr", + "datafusion-physical-expr-common", + "datafusion-physical-plan", + "datafusion-session", + "futures", + "itertools 0.14.0", + "object_store", + "tokio", +] + +[[package]] +name = "datafusion-datasource-csv" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61a1641a40b259bab38131c5e6f48fac0717bedb7dc93690e604142a849e0568" dependencies = [ "arrow", "async-trait", "bytes", - "datafusion-catalog", "datafusion-common", "datafusion-common-runtime", "datafusion-datasource", "datafusion-execution", "datafusion-expr", - "datafusion-physical-expr", "datafusion-physical-expr-common", "datafusion-physical-plan", "datafusion-session", @@ -2204,73 +2185,37 @@ dependencies = [ [[package]] name = "datafusion-datasource-json" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d7ebeb12c77df0aacad26f21b0d033aeede423a64b2b352f53048a75bf1d6e6" +checksum = "adeacdb00c1d37271176f8fb6a1d8ce096baba16ea7a4b2671840c5c9c64fe85" dependencies = [ "arrow", "async-trait", "bytes", - "datafusion-catalog", "datafusion-common", "datafusion-common-runtime", "datafusion-datasource", "datafusion-execution", "datafusion-expr", - "datafusion-physical-expr", "datafusion-physical-expr-common", "datafusion-physical-plan", "datafusion-session", "futures", "object_store", - "serde_json", - "tokio", -] - -[[package]] -name = "datafusion-datasource-parquet" -version = "50.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09e783c4c7d7faa1199af2df4761c68530634521b176a8d1331ddbc5a5c75133" -dependencies = [ - "arrow", - "async-trait", - "bytes", - "datafusion-catalog", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-datasource", - "datafusion-execution", - "datafusion-expr", - "datafusion-functions-aggregate", - "datafusion-physical-expr", - "datafusion-physical-expr-adapter", - "datafusion-physical-expr-common", - "datafusion-physical-optimizer", - "datafusion-physical-plan", - "datafusion-pruning", - "datafusion-session", - "futures", - "itertools 0.14.0", - "log", - "object_store", - "parking_lot", - "parquet", - "rand 0.9.2", "tokio", ] [[package]] name = "datafusion-doc" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99ee6b1d9a80d13f9deb2291f45c07044b8e62fb540dbde2453a18be17a36429" +checksum = "2b99e13947667b36ad713549237362afb054b2d8f8cc447751e23ec61202db07" [[package]] name = "datafusion-execution" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4cec0a57653bec7b933fb248d3ffa3fa3ab3bd33bd140dc917f714ac036f531" +checksum = "63695643190679037bc946ad46a263b62016931547bf119859c511f7ff2f5178" dependencies = [ "arrow", "async-trait", @@ -2288,9 +2233,9 @@ dependencies = [ [[package]] name = "datafusion-expr" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef76910bdca909722586389156d0aa4da4020e1631994d50fadd8ad4b1aa05fe" +checksum = "f9a4787cbf5feb1ab351f789063398f67654a6df75c4d37d7f637dc96f951a91" dependencies = [ "arrow", "async-trait", @@ -2301,31 +2246,31 @@ dependencies = [ "datafusion-functions-aggregate-common", "datafusion-functions-window-common", "datafusion-physical-expr-common", - "indexmap 2.11.4", + "indexmap 2.12.0", + "itertools 0.14.0", "paste", - "recursive", "serde_json", - "sqlparser 0.58.0", + "sqlparser 0.59.0", ] [[package]] name = "datafusion-expr-common" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d155ccbda29591ca71a1344dd6bed26c65a4438072b400df9db59447f590bb6" +checksum = "5ce2fb1b8c15c9ac45b0863c30b268c69dc9ee7a1ee13ecf5d067738338173dc" dependencies = [ "arrow", "datafusion-common", - "indexmap 2.11.4", + "indexmap 2.12.0", "itertools 0.14.0", "paste", ] [[package]] name = "datafusion-functions" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7de2782136bd6014670fd84fe3b0ca3b3e4106c96403c3ae05c0598577139977" +checksum = "794a9db7f7b96b3346fc007ff25e994f09b8f0511b4cf7dff651fadfe3ebb28f" dependencies = [ "arrow", "arrow-buffer", @@ -2343,6 +2288,7 @@ dependencies = [ "itertools 0.14.0", "log", "md-5", + "num-traits", "rand 0.9.2", "regex", "sha2", @@ -2352,9 +2298,9 @@ dependencies = [ [[package]] name = "datafusion-functions-aggregate" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07331fc13603a9da97b74fd8a273f4238222943dffdbbed1c4c6f862a30105bf" +checksum = "1c25210520a9dcf9c2b2cbbce31ebd4131ef5af7fc60ee92b266dc7d159cb305" dependencies = [ "ahash", "arrow", @@ -2373,9 +2319,9 @@ dependencies = [ [[package]] name = "datafusion-functions-aggregate-common" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5951e572a8610b89968a09b5420515a121fbc305c0258651f318dc07c97ab17" +checksum = "62f4a66f3b87300bb70f4124b55434d2ae3fe80455f3574701d0348da040b55d" dependencies = [ "ahash", "arrow", @@ -2386,9 +2332,9 @@ dependencies = [ [[package]] name = "datafusion-functions-nested" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdacca9302c3d8fc03f3e94f338767e786a88a33f5ebad6ffc0e7b50364b9ea3" +checksum = "ae5c06eed03918dc7fe7a9f082a284050f0e9ecf95d72f57712d1496da03b8c4" dependencies = [ "arrow", "arrow-ord", @@ -2396,6 +2342,7 @@ dependencies = [ "datafusion-doc", "datafusion-execution", "datafusion-expr", + "datafusion-expr-common", "datafusion-functions", "datafusion-functions-aggregate", "datafusion-functions-aggregate-common", @@ -2408,9 +2355,9 @@ dependencies = [ [[package]] name = "datafusion-functions-table" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c37ff8a99434fbbad604a7e0669717c58c7c4f14c472d45067c4b016621d981" +checksum = "db4fed1d71738fbe22e2712d71396db04c25de4111f1ec252b8f4c6d3b25d7f5" dependencies = [ "arrow", "async-trait", @@ -2424,9 +2371,9 @@ dependencies = [ [[package]] name = "datafusion-functions-window" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48e2aea7c79c926cffabb13dc27309d4eaeb130f4a21c8ba91cdd241c813652b" +checksum = "1d92206aa5ae21892f1552b4d61758a862a70956e6fd7a95cb85db1de74bc6d1" dependencies = [ "arrow", "datafusion-common", @@ -2442,9 +2389,9 @@ dependencies = [ [[package]] name = "datafusion-functions-window-common" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fead257ab5fd2ffc3b40fda64da307e20de0040fe43d49197241d9de82a487f" +checksum = "53ae9bcc39800820d53a22d758b3b8726ff84a5a3e24cecef04ef4e5fdf1c7cc" dependencies = [ "datafusion-common", "datafusion-physical-expr-common", @@ -2452,20 +2399,20 @@ dependencies = [ [[package]] name = "datafusion-macros" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec6f637bce95efac05cdfb9b6c19579ed4aa5f6b94d951cfa5bb054b7bb4f730" +checksum = "1063ad4c9e094b3f798acee16d9a47bd7372d9699be2de21b05c3bd3f34ab848" dependencies = [ - "datafusion-expr", + "datafusion-doc", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] name = "datafusion-optimizer" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6583ef666ae000a613a837e69e456681a9faa96347bf3877661e9e89e141d8a" +checksum = "9f35f9ec5d08b87fd1893a30c2929f2559c2f9806ca072d8fefca5009dc0f06a" dependencies = [ "arrow", "chrono", @@ -2473,19 +2420,18 @@ dependencies = [ "datafusion-expr", "datafusion-expr-common", "datafusion-physical-expr", - "indexmap 2.11.4", + "indexmap 2.12.0", "itertools 0.14.0", "log", - "recursive", "regex", "regex-syntax", ] [[package]] name = "datafusion-physical-expr" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8668103361a272cbbe3a61f72eca60c9b7c706e87cc3565bcf21e2b277b84f6" +checksum = "c30cc8012e9eedcb48bbe112c6eff4ae5ed19cf3003cb0f505662e88b7014c5d" dependencies = [ "ahash", "arrow", @@ -2496,9 +2442,8 @@ dependencies = [ "datafusion-physical-expr-common", "half", "hashbrown 0.14.5", - "indexmap 2.11.4", + "indexmap 2.12.0", "itertools 0.14.0", - "log", "parking_lot", "paste", "petgraph 0.8.3", @@ -2506,9 +2451,9 @@ dependencies = [ [[package]] name = "datafusion-physical-expr-adapter" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "815acced725d30601b397e39958e0e55630e0a10d66ef7769c14ae6597298bb0" +checksum = "7f9ff2dbd476221b1f67337699eff432781c4e6e1713d2aefdaa517dfbf79768" dependencies = [ "arrow", "datafusion-common", @@ -2521,9 +2466,9 @@ dependencies = [ [[package]] name = "datafusion-physical-expr-common" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6652fe7b5bf87e85ed175f571745305565da2c0b599d98e697bcbedc7baa47c3" +checksum = "90da43e1ec550b172f34c87ec68161986ced70fd05c8d2a2add66eef9c276f03" dependencies = [ "ahash", "arrow", @@ -2535,9 +2480,9 @@ dependencies = [ [[package]] name = "datafusion-physical-optimizer" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49b7d623eb6162a3332b564a0907ba00895c505d101b99af78345f1acf929b5c" +checksum = "ce9804f799acd7daef3be7aaffe77c0033768ed8fdbf5fb82fc4c5f2e6bc14e6" dependencies = [ "arrow", "datafusion-common", @@ -2549,15 +2494,13 @@ dependencies = [ "datafusion-physical-plan", "datafusion-pruning", "itertools 0.14.0", - "log", - "recursive", ] [[package]] name = "datafusion-physical-plan" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2f7f778a1a838dec124efb96eae6144237d546945587557c9e6936b3414558c" +checksum = "0acf0ad6b6924c6b1aa7d213b181e012e2d3ec0a64ff5b10ee6282ab0f8532ac" dependencies = [ "ahash", "arrow", @@ -2576,7 +2519,7 @@ dependencies = [ "futures", "half", "hashbrown 0.14.5", - "indexmap 2.11.4", + "indexmap 2.12.0", "itertools 0.14.0", "log", "parking_lot", @@ -2586,12 +2529,11 @@ dependencies = [ [[package]] name = "datafusion-pruning" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd1e59e2ca14fe3c30f141600b10ad8815e2856caa59ebbd0e3e07cd3d127a65" +checksum = "ac2c2498a1f134a9e11a9f5ed202a2a7d7e9774bd9249295593053ea3be999db" dependencies = [ "arrow", - "arrow-schema", "datafusion-common", "datafusion-datasource", "datafusion-expr-common", @@ -2604,43 +2546,33 @@ dependencies = [ [[package]] name = "datafusion-session" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21ef8e2745583619bd7a49474e8f45fbe98ebb31a133f27802217125a7b3d58d" +checksum = "8f96eebd17555386f459037c65ab73aae8df09f464524c709d6a3134ad4f4776" dependencies = [ - "arrow", "async-trait", - "dashmap", "datafusion-common", - "datafusion-common-runtime", "datafusion-execution", "datafusion-expr", - "datafusion-physical-expr", "datafusion-physical-plan", - "datafusion-sql", - "futures", - "itertools 0.14.0", - "log", - "object_store", "parking_lot", - "tokio", ] [[package]] name = "datafusion-sql" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89abd9868770386fede29e5a4b14f49c0bf48d652c3b9d7a8a0332329b87d50b" +checksum = "3fc195fe60634b2c6ccfd131b487de46dc30eccae8a3c35a13f136e7f440414f" dependencies = [ "arrow", "bigdecimal", + "chrono", "datafusion-common", "datafusion-expr", - "indexmap 2.11.4", + "indexmap 2.12.0", "log", - "recursive", "regex", - "sqlparser 0.58.0", + "sqlparser 0.59.0", ] [[package]] @@ -2702,7 +2634,7 @@ checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2723,7 +2655,7 @@ dependencies = [ "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2733,7 +2665,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2777,7 +2709,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2905,7 +2837,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2917,7 +2849,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -3086,7 +3018,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc5a4e564e38c699f2880d3fda590bedc2e69f3f84cd48b457bd892ce61d0aa9" dependencies = [ "crc32fast", - "libz-rs-sys", "miniz_oxide", ] @@ -3141,9 +3072,8 @@ checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" [[package]] name = "fsst" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ffdff7a2d68d22afc0657eddde3e946371ce7cfe730a3f78a5ed44ea5b1cb2e" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow-array", "rand 0.9.2", @@ -3220,7 +3150,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -3562,9 +3492,9 @@ dependencies = [ [[package]] name = "geoarrow-array" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d1884b17253d8572e88833c282fcbb442365e4ae5f9052ced2831608253436c" +checksum = "dc1cc4106ac0a0a512c398961ce95d8150475c84a84e17c4511c3643fa120a17" dependencies = [ "arrow-array", "arrow-buffer", @@ -3578,9 +3508,9 @@ dependencies = [ [[package]] name = "geoarrow-expr-geo" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a67d3b543bc3ebeffdc204b67d69b8f9fcd33d76269ddd4a4618df99f053a934" +checksum = "fa84300361ce57fb875bcaa6e32b95b0aff5c6b1af692b936bdd58ff343f4394" dependencies = [ "arrow-array", "arrow-buffer", @@ -3592,9 +3522,9 @@ dependencies = [ [[package]] name = "geoarrow-schema" -version = "0.6.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02f1b18b1c9a44ecd72be02e53d6e63bbccfdc8d1765206226af227327e2be6e" +checksum = "e97be4e9f523f92bd6a0e0458323f4b783d073d011664decd8dbf05651704f34" dependencies = [ "arrow-schema", "geo-traits", @@ -3605,9 +3535,9 @@ dependencies = [ [[package]] name = "geodatafusion" -version = "0.1.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83d676b8d8b5f391ab4270ba31e9b599ee2c3d780405a38e272a0a7565ea189c" +checksum = "773cfa1fb0d7f7661b76b3fde00f3ffd8e0ff7b3635096f0ff6294fe5ca62a2b" dependencies = [ "arrow-arith", "arrow-array", @@ -3710,7 +3640,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.11.4", + "indexmap 2.12.0", "slab", "tokio", "tokio-util", @@ -3729,7 +3659,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.3.1", - "indexmap 2.11.4", + "indexmap 2.12.0", "slab", "tokio", "tokio-util", @@ -3738,9 +3668,9 @@ dependencies = [ [[package]] name = "half" -version = "2.6.0" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "459196ed295495a68f7d7fe1d84f6c4b7ff0e21fe3017b2f283c6fac3ad803c9" +checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" dependencies = [ "bytemuck", "cfg-if", @@ -3748,6 +3678,7 @@ dependencies = [ "num-traits", "rand 0.9.2", "rand_distr 0.5.1", + "zerocopy", ] [[package]] @@ -4257,9 +4188,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.11.4" +version = "2.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" +checksum = "6717a8d2a5a929a1a2eb43a12812498ed141a0bcfb7e8f7844fbdbe4303bba9f" dependencies = [ "equivalent", "hashbrown 0.16.0", @@ -4305,12 +4236,6 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "integer-encoding" -version = "3.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bb03732005da905c88227371639bf1ad885cc712789c011c31c5fb3ab3ccf02" - [[package]] name = "ipnet" version = "2.11.0" @@ -4404,7 +4329,7 @@ checksum = "03343451ff899767262ec32146f6d559dd759fdadf42ff0e227c7c48f72594b4" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -4455,7 +4380,7 @@ dependencies = [ "jiff", "nom 8.0.0", "num-traits", - "ordered-float 5.1.0", + "ordered-float", "rand 0.9.2", "ryu", "serde", @@ -4479,9 +4404,8 @@ dependencies = [ [[package]] name = "lance" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8c439decbc304e180748e34bb6d3df729069a222e83e74e2185c38f107136e9" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow", "arrow-arith", @@ -4546,14 +4470,14 @@ dependencies = [ [[package]] name = "lance-arrow" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4ee5508b225456d3d56998eaeef0d8fbce5ea93856df47b12a94d2e74153210" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow-array", "arrow-buffer", "arrow-cast", "arrow-data", + "arrow-ord", "arrow-schema", "arrow-select", "bytes", @@ -4566,9 +4490,8 @@ dependencies = [ [[package]] name = "lance-bitpacking" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1c065fb3bd4a8cc4f78428443e990d4921aa08f707b676753db740e0b402a21" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrayref", "paste", @@ -4577,9 +4500,8 @@ dependencies = [ [[package]] name = "lance-core" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8856abad92e624b75cd57a04703f6441948a239463bdf973f2ac1924b0bcdbe" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow-array", "arrow-buffer", @@ -4592,6 +4514,7 @@ dependencies = [ "datafusion-sql", "deepsize", "futures", + "itertools 0.13.0", "lance-arrow", "libc", "log", @@ -4615,9 +4538,8 @@ dependencies = [ [[package]] name = "lance-datafusion" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c8835308044cef5467d7751be87fcbefc2db01c22370726a8704bd62991693f" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow", "arrow-array", @@ -4647,9 +4569,8 @@ dependencies = [ [[package]] name = "lance-datagen" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "612de1e888bb36f6bf51196a6eb9574587fdf256b1759a4c50e643e00d5f96d0" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow", "arrow-array", @@ -4660,15 +4581,15 @@ dependencies = [ "half", "hex", "rand 0.9.2", + "rand_distr 0.5.1", "rand_xoshiro", "random_word 0.5.2", ] [[package]] name = "lance-encoding" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b456b29b135d3c7192602e516ccade38b5483986e121895fa43cf1fdb38bf60" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow-arith", "arrow-array", @@ -4705,9 +4626,8 @@ dependencies = [ [[package]] name = "lance-file" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab1538d14d5bb3735b4222b3f5aff83cfa59cc6ef7cdd3dd9139e4c77193c80b" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow-arith", "arrow-array", @@ -4739,22 +4659,23 @@ dependencies = [ [[package]] name = "lance-geo" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5a69a2f3b55703d9c240ad7c5ffa2c755db69e9cf8aa05efe274a212910472d" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "datafusion", + "geo-traits", "geo-types", "geoarrow-array", "geoarrow-schema", "geodatafusion", + "lance-core", + "serde", ] [[package]] name = "lance-index" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea84613df6fa6b9168a1f056ba4f9cb73b90a1b452814c6fd4b3529bcdbfc78" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow", "arrow-arith", @@ -4778,6 +4699,9 @@ dependencies = [ "dirs", "fst", "futures", + "geo-types", + "geoarrow-array", + "geoarrow-schema", "half", "itertools 0.13.0", "jsonb", @@ -4787,6 +4711,7 @@ dependencies = [ "lance-datagen", "lance-encoding", "lance-file", + "lance-geo", "lance-io", "lance-linalg", "lance-table", @@ -4800,10 +4725,12 @@ dependencies = [ "prost-types", "rand 0.9.2", "rand_distr 0.5.1", + "rangemap", "rayon", "roaring", "serde", "serde_json", + "smallvec", "snafu", "tantivy", "tempfile", @@ -4815,9 +4742,8 @@ dependencies = [ [[package]] name = "lance-io" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b3fc4c1d941fceef40a0edbd664dbef108acfc5d559bb9e7f588d0c733cbc35" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow", "arrow-arith", @@ -4857,9 +4783,8 @@ dependencies = [ [[package]] name = "lance-linalg" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b62ffbc5ce367fbf700a69de3fe0612ee1a11191a64a632888610b6bacfa0f63" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow-array", "arrow-buffer", @@ -4875,9 +4800,8 @@ dependencies = [ [[package]] name = "lance-namespace" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "791bbcd868ee758123a34e07d320a1fb99379432b5ecc0e78d6b4686e999b629" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow", "async-trait", @@ -4889,9 +4813,8 @@ dependencies = [ [[package]] name = "lance-namespace-impls" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee713505576f6b1988a491f77c7ca8b0cf7090a393598e63c85079fa70a53ebf" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow", "arrow-ipc", @@ -4899,6 +4822,7 @@ dependencies = [ "async-trait", "axum", "bytes", + "chrono", "futures", "lance", "lance-core", @@ -4920,9 +4844,9 @@ dependencies = [ [[package]] name = "lance-namespace-reqwest-client" -version = "0.0.18" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ea349999bcda4eea53fc05d334b3775ec314761e6a706555c777d7a29b18d19" +checksum = "a2acdba67f84190067532fce07b51a435dd390d7cdc1129a05003e5cb3274cf0" dependencies = [ "reqwest", "serde", @@ -4933,9 +4857,8 @@ dependencies = [ [[package]] name = "lance-table" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fdb2d56bfa4d1511c765fa0cc00fdaa37e5d2d1cd2f57b3c6355d9072177052" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow", "arrow-array", @@ -4974,9 +4897,8 @@ dependencies = [ [[package]] name = "lance-testing" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8ccb1a4a9284435c6a8c02c8c06e7e041bece0d7f722152159353cf55dc51e3" +version = "2.0.0-beta.6" +source = "git+https://github.com/lance-format/lance.git?tag=v2.0.0-beta.6#450ddc26061e8e73039c3771c3055328488b8b7c" dependencies = [ "arrow-array", "arrow-schema", @@ -5049,7 +4971,7 @@ dependencies = [ "random_word 0.4.3", "regex", "reqwest", - "rstest", + "rstest 0.23.0", "semver", "serde", "serde_json", @@ -5182,17 +5104,11 @@ dependencies = [ "lexical-util", ] -[[package]] -name = "libbz2-rs-sys" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c4a545a15244c7d945065b5d392b2d2d7f21526fba56ce51467b06ed445e8f7" - [[package]] name = "libc" -version = "0.2.176" +version = "0.2.180" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58f929b4d672ea937a23a1ab494143d968337a5f47e56d0815df1e0890ddf174" +checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc" [[package]] name = "libloading" @@ -5220,15 +5136,6 @@ dependencies = [ "libc", ] -[[package]] -name = "libz-rs-sys" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "840db8cf39d9ec4dd794376f38acc40d0fc65eec2a8f484f7fd375b84602becd" -dependencies = [ - "zlib-rs", -] - [[package]] name = "linux-raw-sys" version = "0.4.15" @@ -5314,6 +5221,12 @@ name = "lz4_flex" version = "0.11.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "08ab2867e3eeeca90e844d1940eab391c9dc5228783db2ed999acbc0a9ed375a" + +[[package]] +name = "lz4_flex" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab6473172471198271ff72e9379150e9dfd70d8e533e0752a27e515b48dd375e" dependencies = [ "twox-hash", ] @@ -5515,7 +5428,7 @@ checksum = "e4db6d5580af57bf992f59068d4ea26fd518574ff48d7639b255a36f9de6e7e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -5583,7 +5496,7 @@ dependencies = [ "napi-derive-backend", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -5598,7 +5511,7 @@ dependencies = [ "quote", "regex", "semver", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -5798,7 +5711,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -5943,15 +5856,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" -[[package]] -name = "ordered-float" -version = "2.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f19d67e5a2795c94e73e0bb1cc1a7edeb2e28efd39e2e1c9b7a40c1108b11c" -dependencies = [ - "num-traits", -] - [[package]] name = "ordered-float" version = "5.1.0" @@ -6026,43 +5930,6 @@ dependencies = [ "windows-link 0.2.1", ] -[[package]] -name = "parquet" -version = "56.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0dbd48ad52d7dccf8ea1b90a3ddbfaea4f69878dd7683e51c507d4bc52b5b27" -dependencies = [ - "ahash", - "arrow-array", - "arrow-buffer", - "arrow-cast", - "arrow-data", - "arrow-ipc", - "arrow-schema", - "arrow-select", - "base64 0.22.1", - "brotli 8.0.2", - "bytes", - "chrono", - "flate2", - "futures", - "half", - "hashbrown 0.16.0", - "lz4_flex", - "num", - "num-bigint", - "object_store", - "paste", - "ring", - "seq-macro", - "simdutf8", - "snap", - "thrift", - "tokio", - "twox-hash", - "zstd", -] - [[package]] name = "parquet-format-safe" version = "0.2.4" @@ -6144,7 +6011,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" dependencies = [ "fixedbitset", - "indexmap 2.11.4", + "indexmap 2.12.0", ] [[package]] @@ -6155,7 +6022,7 @@ checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455" dependencies = [ "fixedbitset", "hashbrown 0.15.5", - "indexmap 2.11.4", + "indexmap 2.12.0", "serde", ] @@ -6232,7 +6099,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -6405,7 +6272,7 @@ dependencies = [ "comfy-table", "either", "hashbrown 0.14.5", - "indexmap 2.11.4", + "indexmap 2.12.0", "num-traits", "once_cell", "polars-arrow", @@ -6503,7 +6370,7 @@ dependencies = [ "either", "hashbrown 0.14.5", "hex", - "indexmap 2.11.4", + "indexmap 2.12.0", "memchr", "num-traits", "polars-arrow", @@ -6647,7 +6514,7 @@ dependencies = [ "ahash", "bytemuck", "hashbrown 0.14.5", - "indexmap 2.11.4", + "indexmap 2.12.0", "num-traits", "once_cell", "polars-error", @@ -6705,7 +6572,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -6728,9 +6595,9 @@ dependencies = [ [[package]] name = "prost" -version = "0.13.5" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2796faa41db3ec313a31f7624d9286acf277b52de526150b7e69f3debf891ee5" +checksum = "7231bd9b3d3d33c86b58adbac74b5ec0ad9f496b19d22801d773636feaa95f3d" dependencies = [ "bytes", "prost-derive", @@ -6738,9 +6605,9 @@ dependencies = [ [[package]] name = "prost-build" -version = "0.13.5" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be769465445e8c1474e9c5dac2018218498557af32d9ed057325ec9a41ae81bf" +checksum = "ac6c3320f9abac597dcbc668774ef006702672474aad53c6d596b62e487b40b1" dependencies = [ "heck 0.5.0", "itertools 0.14.0", @@ -6752,28 +6619,28 @@ dependencies = [ "prost", "prost-types", "regex", - "syn 2.0.106", + "syn 2.0.114", "tempfile", ] [[package]] name = "prost-derive" -version = "0.13.5" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a56d757972c98b346a9b766e3f02746cde6dd1cd1d1d563472929fdd74bec4d" +checksum = "9120690fafc389a67ba3803df527d0ec9cbbc9cc45e4cc20b332996dfb672425" dependencies = [ "anyhow", "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] name = "prost-types" -version = "0.13.5" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52c2c1bf36ddb1a1c396b3601a3cec27c2462e45f07c386894ec3ccf5332bd16" +checksum = "b9b4db3d6da204ed77bb26ba83b6122a73aeb2e87e25fbf7ad2e84c4ccbf8f72" dependencies = [ "prost", ] @@ -6815,9 +6682,9 @@ dependencies = [ [[package]] name = "pyo3" -version = "0.25.1" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8970a78afe0628a3e3430376fc5fd76b6b45c4d43360ffd6cdd40bdde72b682a" +checksum = "7ba0117f4212101ee6544044dae45abe1083d30ce7b29c4b5cbdfa2354e07383" dependencies = [ "indoc", "libc", @@ -6832,9 +6699,9 @@ dependencies = [ [[package]] name = "pyo3-async-runtimes" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d73cc6b1b7d8b3cef02101d37390dbdfe7e450dfea14921cae80a9534ba59ef2" +checksum = "e6ee6d4cb3e8d5b925f5cdb38da183e0ff18122eb2048d4041c9e7034d026e23" dependencies = [ "futures", "once_cell", @@ -6846,30 +6713,29 @@ dependencies = [ [[package]] name = "pyo3-async-runtimes-macros" -version = "0.25.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca31e43a0f205f2960208938135e37e579e61e10b36b4e7f49b0e8f60fab5b83" +checksum = "c29bc5c673e36a8102d0b9179149c1bb59990d8db4f3ae58bd7dceccab90b951" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] name = "pyo3-build-config" -version = "0.25.1" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "458eb0c55e7ece017adeba38f2248ff3ac615e53660d7c71a238d7d2a01c7598" +checksum = "4fc6ddaf24947d12a9aa31ac65431fb1b851b8f4365426e182901eabfb87df5f" dependencies = [ - "once_cell", "target-lexicon", ] [[package]] name = "pyo3-ffi" -version = "0.25.1" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7114fe5457c61b276ab77c5055f206295b812608083644a5c5b2640c3102565c" +checksum = "025474d3928738efb38ac36d4744a74a400c901c7596199e20e45d98eb194105" dependencies = [ "libc", "pyo3-build-config", @@ -6877,27 +6743,27 @@ dependencies = [ [[package]] name = "pyo3-macros" -version = "0.25.1" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8725c0a622b374d6cb051d11a0983786448f7785336139c3c94f5aa6bef7e50" +checksum = "2e64eb489f22fe1c95911b77c44cc41e7c19f3082fc81cce90f657cdc42ffded" dependencies = [ "proc-macro2", "pyo3-macros-backend", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] name = "pyo3-macros-backend" -version = "0.25.1" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4109984c22491085343c05b0dbc54ddc405c3cf7b4374fc533f5c3313a572ccc" +checksum = "100246c0ecf400b475341b8455a9213344569af29a3c841d29270e53102e0fcf" dependencies = [ "heck 0.5.0", "proc-macro2", "pyo3-build-config", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7195,7 +7061,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76009fbe0614077fc1a2ce255e3a1881a2e3a3527097d5dc6d8212c585e7e38b" dependencies = [ "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7235,14 +7101,14 @@ checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] name = "regex" -version = "1.11.3" +version = "1.12.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b5288124840bee7b386bc413c487869b360b2b4ec421ea56425128692f2a82c" +checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4" dependencies = [ "aho-corasick", "memchr", @@ -7252,9 +7118,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.11" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "833eb9ce86d40ef33cb1306d8accf7bc8ec2bfea4355cbdebb3df68b40925cad" +checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" dependencies = [ "aho-corasick", "memchr", @@ -7455,10 +7321,21 @@ checksum = "0a2c585be59b6b5dd66a9d2084aa1d8bd52fbdb806eafdeffb52791147862035" dependencies = [ "futures", "futures-timer", - "rstest_macros", + "rstest_macros 0.23.0", "rustc_version", ] +[[package]] +name = "rstest" +version = "0.26.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5a3193c063baaa2a95a33f03035c8a72b83d97a54916055ba22d35ed3839d49" +dependencies = [ + "futures-timer", + "futures-util", + "rstest_macros 0.26.1", +] + [[package]] name = "rstest_macros" version = "0.23.0" @@ -7473,7 +7350,25 @@ dependencies = [ "regex", "relative-path", "rustc_version", - "syn 2.0.106", + "syn 2.0.114", + "unicode-ident", +] + +[[package]] +name = "rstest_macros" +version = "0.26.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c845311f0ff7951c5506121a9ad75aec44d083c31583b2ea5a30bcb0b0abba0" +dependencies = [ + "cfg-if", + "glob", + "proc-macro-crate", + "proc-macro2", + "quote", + "regex", + "relative-path", + "rustc_version", + "syn 2.0.114", "unicode-ident", ] @@ -7851,7 +7746,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7895,7 +7790,7 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7920,7 +7815,7 @@ dependencies = [ "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.11.4", + "indexmap 2.12.0", "schemars 0.9.0", "schemars 1.0.4", "serde_core", @@ -7938,7 +7833,7 @@ dependencies = [ "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8096,15 +7991,9 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] -[[package]] -name = "snap" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b6b67fb9a61334225b5b790716f609cd58395f895b3fe8b328786812a40bc3b" - [[package]] name = "socket2" version = "0.5.10" @@ -8197,12 +8086,11 @@ dependencies = [ [[package]] name = "sqlparser" -version = "0.58.0" +version = "0.59.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec4b661c54b1e4b603b37873a18c59920e4c51ea8ea2cf527d925424dbd4437c" +checksum = "4591acadbcf52f0af60eafbb2c003232b2b4cd8de5f0e9437cb8b1b59046cc0f" dependencies = [ "log", - "recursive", "sqlparser_derive", ] @@ -8214,7 +8102,7 @@ checksum = "da5fc6819faabb412da764b99d3b713bb55083c11e7e0c00144d386cd6a1939c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8300,7 +8188,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8313,7 +8201,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8335,9 +8223,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.106" +version = "2.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" +checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a" dependencies = [ "proc-macro2", "quote", @@ -8361,7 +8249,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8458,7 +8346,7 @@ dependencies = [ "levenshtein_automata", "log", "lru", - "lz4_flex", + "lz4_flex 0.11.5", "measure_time", "memmap2 0.9.8", "once_cell", @@ -8629,7 +8517,7 @@ checksum = "451b374529930d7601b1eef8d32bc79ae870b6079b069401709c2a8bf9e75f36" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8658,7 +8546,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8669,7 +8557,7 @@ checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8690,17 +8578,6 @@ dependencies = [ "cfg-if", ] -[[package]] -name = "thrift" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e54bc85fc7faa8bc175c4bab5b92ba8d9a3ce893d0e9f42cc455c8ab16a9e09" -dependencies = [ - "byteorder", - "integer-encoding", - "ordered-float 2.10.1", -] - [[package]] name = "time" version = "0.3.44" @@ -8823,7 +8700,7 @@ checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8885,7 +8762,7 @@ version = "0.23.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f3effe7c0e86fdff4f69cdd2ccc1b96f933e24811c5441d44904e8683e27184b" dependencies = [ - "indexmap 2.11.4", + "indexmap 2.12.0", "toml_datetime", "toml_parser", "winnow", @@ -8983,7 +8860,7 @@ checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -9284,7 +9161,7 @@ dependencies = [ "log", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", "wasm-bindgen-shared", ] @@ -9319,7 +9196,7 @@ checksum = "9f07d2f20d4da7b26400c9f4a0511e6e0345b040694e8a75bd41d578fa4421d7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -9500,7 +9377,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -9511,7 +9388,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -9806,15 +9683,6 @@ version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdd20c5420375476fbd4394763288da7eb0cc0b8c11deed431a91562af7335d3" -[[package]] -name = "xz2" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" -dependencies = [ - "lzma-sys", -] - [[package]] name = "yoke" version = "0.7.5" @@ -9847,7 +9715,7 @@ checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", "synstructure", ] @@ -9859,7 +9727,7 @@ checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", "synstructure", ] @@ -9880,7 +9748,7 @@ checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -9900,7 +9768,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", "synstructure", ] @@ -9940,7 +9808,7 @@ checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -9953,17 +9821,11 @@ dependencies = [ "crc32fast", "crossbeam-utils", "displaydoc", - "indexmap 2.11.4", + "indexmap 2.12.0", "num_enum", "thiserror 1.0.69", ] -[[package]] -name = "zlib-rs" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f06ae92f42f5e5c42443fd094f245eb656abf56dd7cce9b8b263236565e00f2" - [[package]] name = "zstd" version = "0.13.3" diff --git a/Cargo.toml b/Cargo.toml index 44cd3f61..0c185dea 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,39 +15,39 @@ categories = ["database-implementations"] rust-version = "1.78.0" [workspace.dependencies] -lance = { "version" = "=1.0.1", default-features = false } -lance-core = "=1.0.1" -lance-datagen = "=1.0.1" -lance-file = "=1.0.1" -lance-io = { "version" = "=1.0.1", default-features = false } -lance-index = "=1.0.1" -lance-linalg = "=1.0.1" -lance-namespace = "=1.0.1" -lance-namespace-impls = { "version" = "=1.0.1", default-features = false } -lance-table = "=1.0.1" -lance-testing = "=1.0.1" -lance-datafusion = "=1.0.1" -lance-encoding = "=1.0.1" -lance-arrow = "=1.0.1" +lance = { "version" = "=2.0.0-beta.6", default-features = false, "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-core = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-datagen = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-file = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-io = { "version" = "=2.0.0-beta.6", default-features = false, "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-index = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-linalg = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-namespace = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-namespace-impls = { "version" = "=2.0.0-beta.6", default-features = false, "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-table = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-testing = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-datafusion = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-encoding = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } +lance-arrow = { "version" = "=2.0.0-beta.6", "tag" = "v2.0.0-beta.6", "git" = "https://github.com/lance-format/lance.git" } ahash = "0.8" # Note that this one does not include pyarrow -arrow = { version = "56.2", optional = false } -arrow-array = "56.2" -arrow-data = "56.2" -arrow-ipc = "56.2" -arrow-ord = "56.2" -arrow-schema = "56.2" -arrow-select = "56.2" -arrow-cast = "56.2" +arrow = { version = "57.1", optional = false } +arrow-array = "57.1" +arrow-data = "57.1" +arrow-ipc = "57.1" +arrow-ord = "57.1" +arrow-schema = "57.1" +arrow-select = "57.1" +arrow-cast = "57.1" async-trait = "0" -datafusion = { version = "50.1", default-features = false } -datafusion-catalog = "50.1" -datafusion-common = { version = "50.1", default-features = false } -datafusion-execution = "50.1" -datafusion-expr = "50.1" -datafusion-physical-plan = "50.1" +datafusion = { version = "51.0", default-features = false } +datafusion-catalog = "51.0" +datafusion-common = { version = "51.0", default-features = false } +datafusion-execution = "51.0" +datafusion-expr = "51.0" +datafusion-physical-plan = "51.0" env_logger = "0.11" -half = { "version" = "2.6.0", default-features = false, features = [ +half = { "version" = "2.7.1", default-features = false, features = [ "num-traits", ] } futures = "0" diff --git a/python/Cargo.toml b/python/Cargo.toml index 6e49be66..d031a019 100644 --- a/python/Cargo.toml +++ b/python/Cargo.toml @@ -14,15 +14,15 @@ name = "_lancedb" crate-type = ["cdylib"] [dependencies] -arrow = { version = "56.2", features = ["pyarrow"] } +arrow = { workspace = true, features = ["pyarrow"] } async-trait = "0.1" lancedb = { path = "../rust/lancedb", default-features = false } lance-core.workspace = true lance-namespace.workspace = true lance-io.workspace = true env_logger.workspace = true -pyo3 = { version = "0.25", features = ["extension-module", "abi3-py39"] } -pyo3-async-runtimes = { version = "0.25", features = [ +pyo3 = { version = "0.26", features = ["extension-module", "abi3-py39"] } +pyo3-async-runtimes = { version = "0.26", features = [ "attributes", "tokio-runtime", ] } @@ -32,7 +32,7 @@ snafu.workspace = true tokio = { version = "1.40", features = ["sync"] } [build-dependencies] -pyo3-build-config = { version = "0.25", features = [ +pyo3-build-config = { version = "0.26", features = [ "extension-module", "abi3-py39", ] } diff --git a/python/src/arrow.rs b/python/src/arrow.rs index 04a84d5a..518f5cd0 100644 --- a/python/src/arrow.rs +++ b/python/src/arrow.rs @@ -10,8 +10,7 @@ use arrow::{ use futures::stream::StreamExt; use lancedb::arrow::SendableRecordBatchStream; use pyo3::{ - exceptions::PyStopAsyncIteration, pyclass, pymethods, Bound, PyAny, PyObject, PyRef, PyResult, - Python, + exceptions::PyStopAsyncIteration, pyclass, pymethods, Bound, Py, PyAny, PyRef, PyResult, Python, }; use pyo3_async_runtimes::tokio::future_into_py; @@ -36,8 +35,11 @@ impl RecordBatchStream { #[pymethods] impl RecordBatchStream { #[getter] - pub fn schema(&self, py: Python) -> PyResult { - (*self.schema).clone().into_pyarrow(py) + pub fn schema(&self, py: Python) -> PyResult> { + (*self.schema) + .clone() + .into_pyarrow(py) + .map(|bound| bound.unbind()) } pub fn __aiter__(self_: PyRef<'_, Self>) -> PyRef<'_, Self> { @@ -53,7 +55,12 @@ impl RecordBatchStream { .next() .await .ok_or_else(|| PyStopAsyncIteration::new_err(""))?; - Python::with_gil(|py| inner_next.infer_error()?.to_pyarrow(py)) + Python::attach(|py| { + inner_next + .infer_error()? + .to_pyarrow(py) + .map(|bound| bound.unbind()) + }) }) } } diff --git a/python/src/connection.rs b/python/src/connection.rs index 92b77f55..e971c606 100644 --- a/python/src/connection.rs +++ b/python/src/connection.rs @@ -12,7 +12,7 @@ use pyo3::{ exceptions::{PyRuntimeError, PyValueError}, pyclass, pyfunction, pymethods, types::{PyDict, PyDictMethods}, - Bound, FromPyObject, Py, PyAny, PyObject, PyRef, PyResult, Python, + Bound, FromPyObject, Py, PyAny, PyRef, PyResult, Python, }; use pyo3_async_runtimes::tokio::future_into_py; @@ -114,7 +114,7 @@ impl Connection { data: Bound<'_, PyAny>, namespace: Vec, storage_options: Option>, - storage_options_provider: Option, + storage_options_provider: Option>, location: Option, ) -> PyResult> { let inner = self_.get_inner()?.clone(); @@ -152,7 +152,7 @@ impl Connection { schema: Bound<'_, PyAny>, namespace: Vec, storage_options: Option>, - storage_options_provider: Option, + storage_options_provider: Option>, location: Option, ) -> PyResult> { let inner = self_.get_inner()?.clone(); @@ -187,7 +187,7 @@ impl Connection { name: String, namespace: Vec, storage_options: Option>, - storage_options_provider: Option, + storage_options_provider: Option>, index_cache_size: Option, location: Option, ) -> PyResult> { @@ -304,6 +304,7 @@ impl Connection { }, page_token, limit: limit.map(|l| l as i32), + ..Default::default() }; let response = inner.list_namespaces(request).await.infer_error()?; Python::with_gil(|py| -> PyResult> { @@ -325,12 +326,12 @@ impl Connection { let inner = self_.get_inner()?.clone(); let py = self_.py(); future_into_py(py, async move { - use lance_namespace::models::{create_namespace_request, CreateNamespaceRequest}; - let mode_enum = mode.and_then(|m| match m.to_lowercase().as_str() { - "create" => Some(create_namespace_request::Mode::Create), - "exist_ok" => Some(create_namespace_request::Mode::ExistOk), - "overwrite" => Some(create_namespace_request::Mode::Overwrite), - _ => None, + use lance_namespace::models::CreateNamespaceRequest; + let mode_enum = mode.map(|m| match m.to_lowercase().as_str() { + "create" => "Create".to_string(), + "exist_ok" => "ExistOk".to_string(), + "overwrite" => "Overwrite".to_string(), + other => other.to_string(), }); let request = CreateNamespaceRequest { id: if namespace.is_empty() { @@ -340,6 +341,7 @@ impl Connection { }, mode: mode_enum, properties, + ..Default::default() }; let response = inner.create_namespace(request).await.infer_error()?; Python::with_gil(|py| -> PyResult> { @@ -360,16 +362,16 @@ impl Connection { let inner = self_.get_inner()?.clone(); let py = self_.py(); future_into_py(py, async move { - use lance_namespace::models::{drop_namespace_request, DropNamespaceRequest}; - let mode_enum = mode.and_then(|m| match m.to_uppercase().as_str() { - "SKIP" => Some(drop_namespace_request::Mode::Skip), - "FAIL" => Some(drop_namespace_request::Mode::Fail), - _ => None, + use lance_namespace::models::DropNamespaceRequest; + let mode_enum = mode.map(|m| match m.to_uppercase().as_str() { + "SKIP" => "Skip".to_string(), + "FAIL" => "Fail".to_string(), + other => other.to_string(), }); - let behavior_enum = behavior.and_then(|b| match b.to_uppercase().as_str() { - "RESTRICT" => Some(drop_namespace_request::Behavior::Restrict), - "CASCADE" => Some(drop_namespace_request::Behavior::Cascade), - _ => None, + let behavior_enum = behavior.map(|b| match b.to_uppercase().as_str() { + "RESTRICT" => "Restrict".to_string(), + "CASCADE" => "Cascade".to_string(), + other => other.to_string(), }); let request = DropNamespaceRequest { id: if namespace.is_empty() { @@ -379,6 +381,7 @@ impl Connection { }, mode: mode_enum, behavior: behavior_enum, + ..Default::default() }; let response = inner.drop_namespace(request).await.infer_error()?; Python::with_gil(|py| -> PyResult> { @@ -405,6 +408,7 @@ impl Connection { } else { Some(namespace) }, + ..Default::default() }; let response = inner.describe_namespace(request).await.infer_error()?; Python::with_gil(|py| -> PyResult> { @@ -434,6 +438,7 @@ impl Connection { }, page_token, limit: limit.map(|l| l as i32), + ..Default::default() }; let response = inner.list_tables(request).await.infer_error()?; Python::with_gil(|py| -> PyResult> { diff --git a/python/src/lib.rs b/python/src/lib.rs index 3c7289ca..d9da8614 100644 --- a/python/src/lib.rs +++ b/python/src/lib.rs @@ -1,3 +1,4 @@ +#![allow(deprecated)] // SPDX-License-Identifier: Apache-2.0 // SPDX-FileCopyrightText: Copyright The LanceDB Authors diff --git a/python/src/permutation.rs b/python/src/permutation.rs index 9a9d10e2..33dfab14 100644 --- a/python/src/permutation.rs +++ b/python/src/permutation.rs @@ -281,7 +281,7 @@ impl PyPermutationReader { let reader = slf.reader.clone(); future_into_py(slf.py(), async move { let schema = reader.output_schema(selection).await.infer_error()?; - Python::with_gil(|py| schema.to_pyarrow(py)) + Python::with_gil(|py| schema.to_pyarrow(py).map(|bound| bound.unbind())) }) } diff --git a/python/src/query.rs b/python/src/query.rs index 682c5137..7d47bf5a 100644 --- a/python/src/query.rs +++ b/python/src/query.rs @@ -216,7 +216,7 @@ impl<'py> IntoPyObject<'py> for PyQueryVectors { let py_objs = self .0 .into_iter() - .map(|v| v.to_data().into_pyarrow(py)) + .map(|v| v.to_data().into_pyarrow(py).map(|bound| bound.unbind())) .collect::, _>>()?; PyList::new(py, py_objs) } @@ -453,7 +453,7 @@ impl Query { let inner = self_.inner.clone(); future_into_py(self_.py(), async move { let schema = inner.output_schema().await.infer_error()?; - Python::with_gil(|py| schema.to_pyarrow(py)) + Python::with_gil(|py| schema.to_pyarrow(py).map(|bound| bound.unbind())) }) } @@ -532,7 +532,7 @@ impl TakeQuery { let inner = self_.inner.clone(); future_into_py(self_.py(), async move { let schema = inner.output_schema().await.infer_error()?; - Python::with_gil(|py| schema.to_pyarrow(py)) + Python::with_gil(|py| schema.to_pyarrow(py).map(|bound| bound.unbind())) }) } @@ -627,7 +627,7 @@ impl FTSQuery { let inner = self_.inner.clone(); future_into_py(self_.py(), async move { let schema = inner.output_schema().await.infer_error()?; - Python::with_gil(|py| schema.to_pyarrow(py)) + Python::with_gil(|py| schema.to_pyarrow(py).map(|bound| bound.unbind())) }) } @@ -806,7 +806,7 @@ impl VectorQuery { let inner = self_.inner.clone(); future_into_py(self_.py(), async move { let schema = inner.output_schema().await.infer_error()?; - Python::with_gil(|py| schema.to_pyarrow(py)) + Python::with_gil(|py| schema.to_pyarrow(py).map(|bound| bound.unbind())) }) } diff --git a/python/src/storage_options.rs b/python/src/storage_options.rs index ca604db3..5f21f315 100644 --- a/python/src/storage_options.rs +++ b/python/src/storage_options.rs @@ -17,7 +17,7 @@ use pyo3::types::PyDict; /// Internal wrapper around a Python object implementing StorageOptionsProvider pub struct PyStorageOptionsProvider { /// The Python object implementing fetch_storage_options() - inner: PyObject, + inner: Py, } impl Clone for PyStorageOptionsProvider { @@ -29,7 +29,7 @@ impl Clone for PyStorageOptionsProvider { } impl PyStorageOptionsProvider { - pub fn new(obj: PyObject) -> PyResult { + pub fn new(obj: Py) -> PyResult { Python::with_gil(|py| { // Verify the object has a fetch_storage_options method if !obj.bind(py).hasattr("fetch_storage_options")? { @@ -143,7 +143,7 @@ impl std::fmt::Debug for PyStorageOptionsProviderWrapper { /// This is the main entry point for converting Python StorageOptionsProvider objects /// to Rust trait objects that can be used by the Lance ecosystem. pub fn py_object_to_storage_options_provider( - py_obj: PyObject, + py_obj: Py, ) -> PyResult> { let py_provider = PyStorageOptionsProvider::new(py_obj)?; Ok(Arc::new(PyStorageOptionsProviderWrapper::new(py_provider))) diff --git a/python/src/table.rs b/python/src/table.rs index eaa55633..0b9058aa 100644 --- a/python/src/table.rs +++ b/python/src/table.rs @@ -287,7 +287,7 @@ impl Table { let inner = self_.inner_ref()?.clone(); future_into_py(self_.py(), async move { let schema = inner.schema().await.infer_error()?; - Python::with_gil(|py| schema.to_pyarrow(py)) + Python::with_gil(|py| schema.to_pyarrow(py).map(|bound| bound.unbind())) }) } diff --git a/rust/lancedb/src/database/namespace.rs b/rust/lancedb/src/database/namespace.rs index 6f05a057..ce0fdf66 100644 --- a/rust/lancedb/src/database/namespace.rs +++ b/rust/lancedb/src/database/namespace.rs @@ -9,7 +9,7 @@ use std::sync::Arc; use async_trait::async_trait; use lance_namespace::{ models::{ - CreateEmptyTableRequest, CreateNamespaceRequest, CreateNamespaceResponse, + CreateNamespaceRequest, CreateNamespaceResponse, DeclareTableRequest, DescribeNamespaceRequest, DescribeNamespaceResponse, DescribeTableRequest, DropNamespaceRequest, DropNamespaceResponse, DropTableRequest, ListNamespacesRequest, ListNamespacesResponse, ListTablesRequest, ListTablesResponse, @@ -137,6 +137,7 @@ impl Database for LanceNamespaceDatabase { id: Some(request.namespace), page_token: request.start_after, limit: request.limit.map(|l| l as i32), + ..Default::default() }; let response = self.namespace.list_tables(ns_request).await?; @@ -154,6 +155,7 @@ impl Database for LanceNamespaceDatabase { let describe_request = DescribeTableRequest { id: Some(table_id.clone()), version: None, + ..Default::default() }; let describe_result = self.namespace.describe_table(describe_request).await; @@ -171,6 +173,7 @@ impl Database for LanceNamespaceDatabase { // Drop the existing table - must succeed let drop_request = DropTableRequest { id: Some(table_id.clone()), + ..Default::default() }; self.namespace .drop_table(drop_request) @@ -202,29 +205,24 @@ impl Database for LanceNamespaceDatabase { let mut table_id = request.namespace.clone(); table_id.push(request.name.clone()); - let create_empty_request = CreateEmptyTableRequest { + let declare_request = DeclareTableRequest { id: Some(table_id.clone()), location: None, - properties: if self.storage_options.is_empty() { - None - } else { - Some(self.storage_options.clone()) - }, + vend_credentials: None, + ..Default::default() }; - let create_empty_response = self + let declare_response = self .namespace - .create_empty_table(create_empty_request) + .declare_table(declare_request) .await .map_err(|e| Error::Runtime { - message: format!("Failed to create empty table: {}", e), + message: format!("Failed to declare table: {}", e), })?; - let location = create_empty_response - .location - .ok_or_else(|| Error::Runtime { - message: "Table location is missing from create_empty_table response".to_string(), - })?; + let location = declare_response.location.ok_or_else(|| Error::Runtime { + message: "Table location is missing from declare_table response".to_string(), + })?; let native_table = NativeTable::create_from_namespace( self.namespace.clone(), @@ -281,7 +279,10 @@ impl Database for LanceNamespaceDatabase { let mut table_id = namespace.to_vec(); table_id.push(name.to_string()); - let drop_request = DropTableRequest { id: Some(table_id) }; + let drop_request = DropTableRequest { + id: Some(table_id), + ..Default::default() + }; self.namespace .drop_table(drop_request) .await @@ -438,6 +439,7 @@ mod tests { id: Some(vec!["test_ns".into()]), mode: None, properties: None, + ..Default::default() }) .await .expect("Failed to create namespace"); @@ -499,6 +501,7 @@ mod tests { id: Some(vec!["test_ns".into()]), mode: None, properties: None, + ..Default::default() }) .await .expect("Failed to create namespace"); @@ -563,6 +566,7 @@ mod tests { id: Some(vec!["test_ns".into()]), mode: None, properties: None, + ..Default::default() }) .await .expect("Failed to create namespace"); @@ -647,6 +651,7 @@ mod tests { id: Some(vec!["test_ns".into()]), mode: None, properties: None, + ..Default::default() }) .await .expect("Failed to create namespace"); @@ -703,6 +708,7 @@ mod tests { id: Some(vec!["test_ns".into()]), mode: None, properties: None, + ..Default::default() }) .await .expect("Failed to create namespace"); @@ -784,6 +790,7 @@ mod tests { id: Some(vec!["test_ns".into()]), mode: None, properties: None, + ..Default::default() }) .await .expect("Failed to create namespace"); @@ -818,6 +825,7 @@ mod tests { id: Some(vec!["test_ns".into()]), mode: None, properties: None, + ..Default::default() }) .await .expect("Failed to create namespace"); diff --git a/rust/lancedb/src/remote/db.rs b/rust/lancedb/src/remote/db.rs index 895c18a0..a1210457 100644 --- a/rust/lancedb/src/remote/db.rs +++ b/rust/lancedb/src/remote/db.rs @@ -1720,6 +1720,7 @@ mod tests { id: Some(namespace.clone()), mode: None, properties: None, + ..Default::default() }) .await .expect("Failed to create namespace"); @@ -1746,6 +1747,7 @@ mod tests { id: Some(namespace.clone()), page_token: None, limit: None, + ..Default::default() }) .await .expect("Failed to list tables"); @@ -1758,6 +1760,7 @@ mod tests { id: Some(namespace.clone()), page_token: None, limit: None, + ..Default::default() }) .await .unwrap(); @@ -1799,6 +1802,7 @@ mod tests { id: Some(namespace.clone()), mode: None, properties: None, + ..Default::default() }) .await .expect("Failed to create namespace"); @@ -1825,6 +1829,7 @@ mod tests { id: Some(namespace.clone()), page_token: None, limit: None, + ..Default::default() }) .await .unwrap(); diff --git a/rust/lancedb/src/table.rs b/rust/lancedb/src/table.rs index 9f8d16b5..163c101b 100644 --- a/rust/lancedb/src/table.rs +++ b/rust/lancedb/src/table.rs @@ -42,8 +42,8 @@ use lance_index::DatasetIndexExt; use lance_index::IndexType; use lance_io::object_store::LanceNamespaceStorageOptionsProvider; use lance_namespace::models::{ - QueryTableRequest as NsQueryTableRequest, QueryTableRequestFullTextQuery, - QueryTableRequestVector, StringFtsQuery, + QueryTableRequest as NsQueryTableRequest, QueryTableRequestColumns, + QueryTableRequestFullTextQuery, QueryTableRequestVector, StringFtsQuery, }; use lance_namespace::LanceNamespace; use lance_table::format::Manifest; @@ -1424,7 +1424,7 @@ impl Table { }) .collect::>(); - let unioned = Arc::new(UnionExec::new(projected_plans)); + let unioned = UnionExec::try_new(projected_plans).unwrap(); // We require 1 partition in the final output let repartitioned = RepartitionExec::try_new( unioned, @@ -2332,6 +2332,18 @@ impl NativeTable { } } + /// Convert selected columns into the namespace request format. + fn namespace_columns(&self, columns: &[String]) -> Option> { + if columns.is_empty() { + None + } else { + Some(Box::new(QueryTableRequestColumns { + column_names: Some(columns.to_vec()), + column_aliases: None, + })) + } + } + /// Convert an AnyQuery to the namespace QueryTableRequest format. fn convert_to_namespace_query(&self, query: &AnyQuery) -> Result { match query { @@ -2348,7 +2360,7 @@ impl NativeTable { // Convert select to columns list let columns = match &vq.base.select { Select::All => None, - Select::Columns(cols) => Some(cols.clone()), + Select::Columns(cols) => self.namespace_columns(cols), Select::Dynamic(_) => { return Err(Error::NotSupported { message: @@ -2383,6 +2395,8 @@ impl NativeTable { }); Ok(NsQueryTableRequest { + identity: None, + context: None, id: None, // Will be set in namespace_query k: vq.base.limit.unwrap_or(10) as i32, vector: Box::new(vector), @@ -2421,7 +2435,7 @@ impl NativeTable { let columns = match &q.select { Select::All => None, - Select::Columns(cols) => Some(cols.clone()), + Select::Columns(cols) => self.namespace_columns(cols), Select::Dynamic(_) => { return Err(Error::NotSupported { message: "Dynamic columns are not supported for server-side query" @@ -2453,6 +2467,8 @@ impl NativeTable { }); Ok(NsQueryTableRequest { + identity: None, + context: None, id: None, // Will be set by caller vector, k: q.limit.unwrap_or(10) as i32, @@ -5146,7 +5162,13 @@ mod tests { assert_eq!(ns_request.k, 10); assert_eq!(ns_request.offset, Some(5)); assert_eq!(ns_request.filter, Some("id > 0".to_string())); - assert_eq!(ns_request.columns, Some(vec!["id".to_string()])); + let column_names = ns_request + .columns + .as_ref() + .and_then(|c| c.column_names.as_ref()) + .cloned() + .unwrap(); + assert_eq!(column_names, vec!["id".to_string()]); assert_eq!(ns_request.vector_column, Some("vector".to_string())); assert_eq!(ns_request.distance_type, Some("l2".to_string())); assert!(ns_request.vector.single_vector.is_some()); @@ -5187,7 +5209,13 @@ mod tests { assert_eq!(ns_request.k, 20); assert_eq!(ns_request.offset, Some(5)); assert_eq!(ns_request.filter, Some("id > 5".to_string())); - assert_eq!(ns_request.columns, Some(vec!["id".to_string()])); + let column_names = ns_request + .columns + .as_ref() + .and_then(|c| c.column_names.as_ref()) + .cloned() + .unwrap(); + assert_eq!(column_names, vec!["id".to_string()]); assert_eq!(ns_request.with_row_id, Some(true)); assert_eq!(ns_request.bypass_vector_index, Some(true)); assert!(ns_request.vector_column.is_none()); // No vector column for plain queries diff --git a/rust/lancedb/src/table/dataset.rs b/rust/lancedb/src/table/dataset.rs index ea173429..50f6b647 100644 --- a/rust/lancedb/src/table/dataset.rs +++ b/rust/lancedb/src/table/dataset.rs @@ -100,7 +100,8 @@ impl DatasetRef { let should_checkout = match &target_ref { refs::Ref::Version(_, Some(target_ver)) => version != target_ver, refs::Ref::Version(_, None) => true, // No specific version, always checkout - refs::Ref::Tag(_) => true, // Always checkout for tags + refs::Ref::VersionNumber(target_ver) => version != target_ver, + refs::Ref::Tag(_) => true, // Always checkout for tags }; if should_checkout {