feat: upgrade to lance 0.24.1 (#2199)

This commit is contained in:
Weston Pace
2025-03-10 15:18:37 -07:00
committed by GitHub
parent f86b20a564
commit 4a47150ae7
7 changed files with 217 additions and 224 deletions

320
Cargo.lock generated
View File

@@ -176,9 +176,9 @@ checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
[[package]]
name = "arrow"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eaf3437355979f1e93ba84ba108c38be5767713051f3c8ffbf07c094e2e61f9f"
checksum = "dc208515aa0151028e464cc94a692156e945ce5126abd3537bb7fd6ba2143ed1"
dependencies = [
"arrow-arith",
"arrow-array",
@@ -198,24 +198,23 @@ dependencies = [
[[package]]
name = "arrow-arith"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "31dce77d2985522288edae7206bffd5fc4996491841dda01a13a58415867e681"
checksum = "e07e726e2b3f7816a85c6a45b6ec118eeeabf0b2a8c208122ad949437181f49a"
dependencies = [
"arrow-array",
"arrow-buffer",
"arrow-data",
"arrow-schema",
"chrono",
"half",
"num",
]
[[package]]
name = "arrow-array"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2d45fe6d3faed0435b7313e59a02583b14c6c6339fa7729e94c32a20af319a79"
checksum = "a2262eba4f16c78496adfd559a29fe4b24df6088efc9985a873d58e92be022d5"
dependencies = [
"ahash",
"arrow-buffer",
@@ -230,9 +229,9 @@ dependencies = [
[[package]]
name = "arrow-buffer"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2b02656a35cc103f28084bc80a0159668e0a680d919cef127bd7e0aaccb06ec1"
checksum = "4e899dade2c3b7f5642eb8366cfd898958bcca099cde6dfea543c7e8d3ad88d4"
dependencies = [
"bytes",
"half",
@@ -241,9 +240,9 @@ dependencies = [
[[package]]
name = "arrow-cast"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c73c6233c5b5d635a56f6010e6eb1ab9e30e94707db21cea03da317f67d84cf3"
checksum = "4103d88c5b441525ed4ac23153be7458494c2b0c9a11115848fdb9b81f6f886a"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -262,28 +261,25 @@ dependencies = [
[[package]]
name = "arrow-csv"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec222848d70fea5a32af9c3602b08f5d740d5e2d33fbd76bf6fd88759b5b13a7"
checksum = "43d3cb0914486a3cae19a5cad2598e44e225d53157926d0ada03c20521191a65"
dependencies = [
"arrow-array",
"arrow-buffer",
"arrow-cast",
"arrow-data",
"arrow-schema",
"chrono",
"csv",
"csv-core",
"lazy_static",
"lexical-core",
"regex",
]
[[package]]
name = "arrow-data"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b7f2861ffa86f107b8ab577d86cff7c7a490243eabe961ba1e1af4f27542bb79"
checksum = "0a329fb064477c9ec5f0870d2f5130966f91055c7c5bce2b3a084f116bc28c3b"
dependencies = [
"arrow-buffer",
"arrow-schema",
@@ -293,13 +289,12 @@ dependencies = [
[[package]]
name = "arrow-ipc"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0270dc511f11bb5fa98a25020ad51a99ca5b08d8a8dfbd17503bb9dba0388f0b"
checksum = "ddecdeab02491b1ce88885986e25002a3da34dd349f682c7cfe67bab7cc17b86"
dependencies = [
"arrow-array",
"arrow-buffer",
"arrow-cast",
"arrow-data",
"arrow-schema",
"flatbuffers",
@@ -309,9 +304,9 @@ dependencies = [
[[package]]
name = "arrow-json"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0eff38eeb8a971ad3a4caf62c5d57f0cff8a48b64a55e3207c4fd696a9234aad"
checksum = "d03b9340013413eb84868682ace00a1098c81a5ebc96d279f7ebf9a4cac3c0fd"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -329,26 +324,23 @@ dependencies = [
[[package]]
name = "arrow-ord"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c6f202a879d287099139ff0d121e7f55ae5e0efe634b8cf2106ebc27a8715dee"
checksum = "f841bfcc1997ef6ac48ee0305c4dfceb1f7c786fe31e67c1186edf775e1f1160"
dependencies = [
"arrow-array",
"arrow-buffer",
"arrow-data",
"arrow-schema",
"arrow-select",
"half",
"num",
]
[[package]]
name = "arrow-row"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a8f936954991c360ba762dff23f5dda16300774fafd722353d9683abd97630ae"
checksum = "1eeb55b0a0a83851aa01f2ca5ee5648f607e8506ba6802577afdda9d75cdedcd"
dependencies = [
"ahash",
"arrow-array",
"arrow-buffer",
"arrow-data",
@@ -358,18 +350,18 @@ dependencies = [
[[package]]
name = "arrow-schema"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9579b9d8bce47aa41389fe344f2c6758279983b7c0ebb4013e283e3e91bb450e"
checksum = "85934a9d0261e0fa5d4e2a5295107d743b543a6e0484a835d4b8db2da15306f9"
dependencies = [
"bitflags 2.8.0",
]
[[package]]
name = "arrow-select"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7471ba126d0b0aaa24b50a36bc6c25e4e74869a1fd1a5553357027a0b1c8d1f1"
checksum = "7e2932aece2d0c869dd2125feb9bd1709ef5c445daa3838ac4112dcfa0fda52c"
dependencies = [
"ahash",
"arrow-array",
@@ -381,9 +373,9 @@ dependencies = [
[[package]]
name = "arrow-string"
version = "53.4.0"
version = "54.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72993b01cb62507b06f1fb49648d7286c8989ecfabdb7b77a750fcb54410731b"
checksum = "912e38bd6a7a7714c1d9b61df80315685553b7455e8a6045c27531d8ecd5b458"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -1708,9 +1700,9 @@ dependencies = [
[[package]]
name = "datafusion"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "014fc8c384ecacedaabb3bc8359c2a6c6e9d8f7bea65be3434eccacfc37f52d9"
checksum = "eae420e7a5b0b7f1c39364cc76cbcd0f5fdc416b2514ae3847c2676bbd60702a"
dependencies = [
"arrow",
"arrow-array",
@@ -1719,7 +1711,6 @@ dependencies = [
"async-trait",
"bytes",
"chrono",
"dashmap",
"datafusion-catalog",
"datafusion-common",
"datafusion-common-runtime",
@@ -1738,7 +1729,7 @@ dependencies = [
"datafusion-sql",
"futures",
"glob",
"itertools 0.13.0",
"itertools 0.14.0",
"log",
"object_store",
"parking_lot",
@@ -1753,30 +1744,38 @@ dependencies = [
[[package]]
name = "datafusion-catalog"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ee60d33e210ef96070377ae667ece7caa0e959c8387496773d4a1a72f1a5012e"
checksum = "6f27987bc22b810939e8dfecc55571e9d50355d6ea8ec1c47af8383a76a6d0e1"
dependencies = [
"arrow-schema",
"arrow",
"async-trait",
"dashmap",
"datafusion-common",
"datafusion-execution",
"datafusion-expr",
"datafusion-physical-plan",
"datafusion-sql",
"futures",
"itertools 0.14.0",
"log",
"parking_lot",
"sqlparser 0.53.0",
]
[[package]]
name = "datafusion-common"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0b42b7d720fe21ed9cca2ebb635f3f13a12cfab786b41e0fba184fb2e620525b"
checksum = "e3f6d5b8c9408cc692f7c194b8aa0c0f9b253e065a8d960ad9cdc2a13e697602"
dependencies = [
"ahash",
"arrow",
"arrow-array",
"arrow-buffer",
"arrow-ipc",
"arrow-schema",
"base64 0.22.1",
"half",
"hashbrown 0.14.5",
"indexmap 2.7.1",
@@ -1791,9 +1790,9 @@ dependencies = [
[[package]]
name = "datafusion-common-runtime"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72fbf14d4079f7ce5306393084fe5057dddfdc2113577e0049310afa12e94281"
checksum = "0d4603c8e8a4baf77660ab7074cc66fc15cc8a18f2ce9dfadb755fc6ee294e48"
dependencies = [
"log",
"tokio",
@@ -1801,15 +1800,15 @@ dependencies = [
[[package]]
name = "datafusion-doc"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c278dbd64860ed0bb5240fc1f4cb6aeea437153910aea69bcf7d5a8d6d0454f3"
checksum = "e5bf4bc68623a5cf231eed601ed6eb41f46a37c4d15d11a0bff24cbc8396cd66"
[[package]]
name = "datafusion-execution"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e22cb02af47e756468b3cbfee7a83e3d4f2278d452deb4b033ba933c75169486"
checksum = "88b491c012cdf8e051053426013429a76f74ee3c2db68496c79c323ca1084d27"
dependencies = [
"arrow",
"dashmap",
@@ -1826,9 +1825,9 @@ dependencies = [
[[package]]
name = "datafusion-expr"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "62298eadb1d15b525df1315e61a71519ffc563d41d5c3b2a30fda2d70f77b93c"
checksum = "e5a181408d4fc5dc22f9252781a8f39f2d0e5d1b33ec9bde242844980a2689c1"
dependencies = [
"arrow",
"chrono",
@@ -1846,20 +1845,21 @@ dependencies = [
[[package]]
name = "datafusion-expr-common"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dda7f73c5fc349251cd3dcb05773c5bf55d2505a698ef9d38dfc712161ea2f55"
checksum = "d1129b48e8534d8c03c6543bcdccef0b55c8ac0c1272a15a56c67068b6eb1885"
dependencies = [
"arrow",
"datafusion-common",
"itertools 0.13.0",
"itertools 0.14.0",
"paste",
]
[[package]]
name = "datafusion-functions"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fd197f3b2975424d3a4898ea46651be855a46721a56727515dbd5c9e2fb597da"
checksum = "6125874e4856dfb09b59886784fcb74cde5cfc5930b3a80a1a728ef7a010df6b"
dependencies = [
"arrow",
"arrow-buffer",
@@ -1875,7 +1875,7 @@ dependencies = [
"datafusion-macros",
"hashbrown 0.14.5",
"hex",
"itertools 0.13.0",
"itertools 0.14.0",
"log",
"md-5",
"rand",
@@ -1887,12 +1887,13 @@ dependencies = [
[[package]]
name = "datafusion-functions-aggregate"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aabbe48fba18f9981b134124381bee9e46f93518b8ad2f9721ee296cef5affb9"
checksum = "f3add7b1d3888e05e7c95f2b281af900ca69ebdcb21069ba679b33bde8b3b9d6"
dependencies = [
"ahash",
"arrow",
"arrow-buffer",
"arrow-schema",
"datafusion-common",
"datafusion-doc",
@@ -1909,9 +1910,9 @@ dependencies = [
[[package]]
name = "datafusion-functions-aggregate-common"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d7a3fefed9c8c11268d446d924baca8cabf52fe32f73fdaa20854bac6473590c"
checksum = "6e18baa4cfc3d2f144f74148ed68a1f92337f5072b6dde204a0dbbdf3324989c"
dependencies = [
"ahash",
"arrow",
@@ -1922,9 +1923,9 @@ dependencies = [
[[package]]
name = "datafusion-functions-nested"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6360f27464fab857bec698af39b2ae331dc07c8bf008fb4de387a19cdc6815a5"
checksum = "3ec5ee8cecb0dc370291279673097ddabec03a011f73f30d7f1096457127e03e"
dependencies = [
"arrow",
"arrow-array",
@@ -1932,21 +1933,23 @@ dependencies = [
"arrow-ord",
"arrow-schema",
"datafusion-common",
"datafusion-doc",
"datafusion-execution",
"datafusion-expr",
"datafusion-functions",
"datafusion-functions-aggregate",
"datafusion-macros",
"datafusion-physical-expr-common",
"itertools 0.13.0",
"itertools 0.14.0",
"log",
"paste",
]
[[package]]
name = "datafusion-functions-table"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5c35c070eb705c12795dab399c3809f4dfbc290678c624d3989490ca9b8449c1"
checksum = "2c403ddd473bbb0952ba880008428b3c7febf0ed3ce1eec35a205db20efb2a36"
dependencies = [
"arrow",
"async-trait",
@@ -1960,9 +1963,9 @@ dependencies = [
[[package]]
name = "datafusion-functions-window"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "52229bca26b590b140900752226c829f15fc1a99840e1ca3ce1a9534690b82a8"
checksum = "1ab18c2fb835614d06a75f24a9e09136d3a8c12a92d97c95a6af316a1787a9c5"
dependencies = [
"datafusion-common",
"datafusion-doc",
@@ -1977,9 +1980,9 @@ dependencies = [
[[package]]
name = "datafusion-functions-window-common"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "367befc303b64a668a10ae6988a064a9289e1999e71a7f8e526b6e14d6bdd9d6"
checksum = "a77b73bc15e7d1967121fdc7a55d819bfb9d6c03766a6c322247dce9094a53a4"
dependencies = [
"datafusion-common",
"datafusion-physical-expr-common",
@@ -1987,19 +1990,20 @@ dependencies = [
[[package]]
name = "datafusion-macros"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f5de3c8f386ea991696553afe241a326ecbc3c98a12c562867e4be754d3a060c"
checksum = "09369b8d962291e808977cf94d495fd8b5b38647232d7ef562c27ac0f495b0af"
dependencies = [
"datafusion-expr",
"quote",
"syn 2.0.98",
]
[[package]]
name = "datafusion-optimizer"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53b520413906f755910422b016fb73884ae6e9e1b376de4f9584b6c0e031da75"
checksum = "2403a7e4a84637f3de7d8d4d7a9ccc0cc4be92d89b0161ba3ee5be82f0531c54"
dependencies = [
"arrow",
"chrono",
@@ -2007,7 +2011,7 @@ dependencies = [
"datafusion-expr",
"datafusion-physical-expr",
"indexmap 2.7.1",
"itertools 0.13.0",
"itertools 0.14.0",
"log",
"regex",
"regex-syntax 0.8.5",
@@ -2015,9 +2019,9 @@ dependencies = [
[[package]]
name = "datafusion-physical-expr"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "acd6ddc378f6ad19af95ccd6790dec8f8e1264bc4c70e99ddc1830c1a1c78ccd"
checksum = "86ff72ac702b62dbf2650c4e1d715ebd3e4aab14e3885e72e8549e250307347c"
dependencies = [
"ahash",
"arrow",
@@ -2032,47 +2036,53 @@ dependencies = [
"half",
"hashbrown 0.14.5",
"indexmap 2.7.1",
"itertools 0.13.0",
"itertools 0.14.0",
"log",
"paste",
"petgraph 0.6.5",
"petgraph",
]
[[package]]
name = "datafusion-physical-expr-common"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "06e6c05458eccd74b4c77ed6a1fe63d52434240711de7f6960034794dad1caf5"
checksum = "60982b7d684e25579ee29754b4333057ed62e2cc925383c5f0bd8cab7962f435"
dependencies = [
"ahash",
"arrow",
"arrow-buffer",
"datafusion-common",
"datafusion-expr-common",
"hashbrown 0.14.5",
"itertools 0.13.0",
"itertools 0.14.0",
]
[[package]]
name = "datafusion-physical-optimizer"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9dc3a82190f49c37d377f31317e07ab5d7588b837adadba8ac367baad5dc2351"
checksum = "ac5e85c189d5238a5cf181a624e450c4cd4c66ac77ca551d6f3ff9080bac90bb"
dependencies = [
"arrow",
"arrow-schema",
"datafusion-common",
"datafusion-execution",
"datafusion-expr",
"datafusion-expr-common",
"datafusion-physical-expr",
"datafusion-physical-expr-common",
"datafusion-physical-plan",
"itertools 0.13.0",
"futures",
"itertools 0.14.0",
"log",
"url",
]
[[package]]
name = "datafusion-physical-plan"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a6608bc9844b4ddb5ed4e687d173e6c88700b1d0482f43894617d18a1fe75da"
checksum = "c36bf163956d7e2542657c78b3383fdc78f791317ef358a359feffcdb968106f"
dependencies = [
"ahash",
"arrow",
@@ -2093,7 +2103,7 @@ dependencies = [
"half",
"hashbrown 0.14.5",
"indexmap 2.7.1",
"itertools 0.13.0",
"itertools 0.14.0",
"log",
"parking_lot",
"pin-project-lite",
@@ -2102,9 +2112,9 @@ dependencies = [
[[package]]
name = "datafusion-sql"
version = "44.0.0"
version = "45.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6a884061c79b33d0c8e84a6f4f4be8bdc12c0f53f5af28ddf5d6d95ac0b15fdc"
checksum = "e13caa4daede211ecec53c78b13c503b592794d125f9a3cc3afe992edf9e7f43"
dependencies = [
"arrow",
"arrow-array",
@@ -2484,12 +2494,6 @@ dependencies = [
"subtle",
]
[[package]]
name = "fixedbitset"
version = "0.4.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
[[package]]
name = "fixedbitset"
version = "0.5.7"
@@ -2570,8 +2574,9 @@ dependencies = [
[[package]]
name = "fsst"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "499049427ae23480696a1b728a292fec9fa554742ee26c0f35acbdade47801be"
dependencies = [
"rand",
]
@@ -3532,8 +3537,9 @@ dependencies = [
[[package]]
name = "lance"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "748d2bd8e36f25a7fc130398e115678d01a1b821aceafe790965a0511d2443fe"
dependencies = [
"arrow",
"arrow-arith",
@@ -3592,8 +3598,9 @@ dependencies = [
[[package]]
name = "lance-arrow"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e5ca5041940b2623daf6398c1e297aedd99a9fc38070222e69a69f600dd374c9"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -3610,8 +3617,9 @@ dependencies = [
[[package]]
name = "lance-core"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dc3cd36bd1de369dd957e98fbacf8963fd1b147595fd4d2ba5e9f5866f143db9"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -3647,8 +3655,9 @@ dependencies = [
[[package]]
name = "lance-datafusion"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72791574cb837c5d2e89f3688b71c5fc9cc584f8f79cc50005787f5cbe285506"
dependencies = [
"arrow",
"arrow-array",
@@ -3673,8 +3682,9 @@ dependencies = [
[[package]]
name = "lance-encoding"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c4739cefb4757f5405c09c848d71e5a3ec05fbff26ac1a6e799774a1e878ba72"
dependencies = [
"arrayref",
"arrow",
@@ -3712,8 +3722,9 @@ dependencies = [
[[package]]
name = "lance-file"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "005824228e561b4fda8f3bfd9d755a6cbd14b2d68da93c4f094af9ee6981977f"
dependencies = [
"arrow-arith",
"arrow-array",
@@ -3747,8 +3758,9 @@ dependencies = [
[[package]]
name = "lance-index"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49177175c77cc1201366aba59ca4aa457893d1a0aad0fa6cbf7095741be7aeba"
dependencies = [
"arrow",
"arrow-array",
@@ -3800,8 +3812,9 @@ dependencies = [
[[package]]
name = "lance-io"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ea5e9a5bbbab0e5efc3038abb49c74add55fe7d72541a448e8c8dc45d7cbe406"
dependencies = [
"arrow",
"arrow-arith",
@@ -3839,8 +3852,9 @@ dependencies = [
[[package]]
name = "lance-linalg"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2c6958010c1f35babc9c68c5a4a49c154a3ecc2d0a9a11a11a970c06e2f2bdb5"
dependencies = [
"arrow-array",
"arrow-ord",
@@ -3863,8 +3877,9 @@ dependencies = [
[[package]]
name = "lance-table"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c08830bb24cadbbd24069e76d17570bfa7518eca9f2aa3651afb72035b74331"
dependencies = [
"arrow",
"arrow-array",
@@ -3903,8 +3918,9 @@ dependencies = [
[[package]]
name = "lance-testing"
version = "0.24.0"
source = "git+https://github.com/lancedb/lance.git?tag=v0.24.0-beta.1#33ae43b2944c12e0dbd139e8aa098cffa74edef5"
version = "0.24.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae923e5c09091bcf48aa166ac362b0dd189b55779ff553281094510728ea0c66"
dependencies = [
"arrow-array",
"arrow-schema",
@@ -4053,7 +4069,7 @@ dependencies = [
"pin-project",
"pyo3",
"pyo3-async-runtimes",
"pyo3-build-config 0.20.3",
"pyo3-build-config",
"tokio",
]
@@ -4974,23 +4990,13 @@ version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "df202b0b0f5b8e389955afd5f27b007b00fb948162953f1db9c70d2c7e3157d7"
[[package]]
name = "petgraph"
version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
dependencies = [
"fixedbitset 0.4.2",
"indexmap 2.7.1",
]
[[package]]
name = "petgraph"
version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772"
dependencies = [
"fixedbitset 0.5.7",
"fixedbitset",
"indexmap 2.7.1",
]
@@ -5508,7 +5514,7 @@ dependencies = [
"log",
"multimap",
"once_cell",
"petgraph 0.7.1",
"petgraph",
"prettyplease",
"prost",
"prost-types",
@@ -5562,9 +5568,9 @@ dependencies = [
[[package]]
name = "pyo3"
version = "0.22.6"
version = "0.23.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f402062616ab18202ae8319da13fa4279883a2b8a9d9f83f20dbade813ce1884"
checksum = "7778bffd85cf38175ac1f545509665d0b9b92a198ca7941f131f85f7a4f9a872"
dependencies = [
"cfg-if",
"indoc",
@@ -5572,7 +5578,7 @@ dependencies = [
"memoffset",
"once_cell",
"portable-atomic",
"pyo3-build-config 0.22.6",
"pyo3-build-config",
"pyo3-ffi",
"pyo3-macros",
"unindent",
@@ -5580,9 +5586,9 @@ dependencies = [
[[package]]
name = "pyo3-async-runtimes"
version = "0.22.0"
version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2529f0be73ffd2be0cc43c013a640796558aa12d7ca0aab5cc14f375b4733031"
checksum = "977dc837525cfd22919ba6a831413854beb7c99a256c03bf8624ad707e45810e"
dependencies = [
"futures",
"once_cell",
@@ -5594,9 +5600,9 @@ dependencies = [
[[package]]
name = "pyo3-async-runtimes-macros"
version = "0.22.0"
version = "0.23.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "22c26fd8e9fc19f53f0c1e00bf61471de6789f7eb263056f7f944a9cceb5823e"
checksum = "b2df2884957d2476731f987673befac5d521dff10abb0a7cbe12015bc7702fe9"
dependencies = [
"proc-macro2",
"quote",
@@ -5605,19 +5611,9 @@ dependencies = [
[[package]]
name = "pyo3-build-config"
version = "0.20.3"
version = "0.23.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "deaa5745de3f5231ce10517a1f5dd97d53e5a2fd77aa6b5842292085831d48d7"
dependencies = [
"once_cell",
"target-lexicon",
]
[[package]]
name = "pyo3-build-config"
version = "0.22.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b14b5775b5ff446dd1056212d778012cbe8a0fbffd368029fd9e25b514479c38"
checksum = "94f6cbe86ef3bf18998d9df6e0f3fc1050a8c5efa409bf712e661a4366e010fb"
dependencies = [
"once_cell",
"target-lexicon",
@@ -5625,19 +5621,19 @@ dependencies = [
[[package]]
name = "pyo3-ffi"
version = "0.22.6"
version = "0.23.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9ab5bcf04a2cdcbb50c7d6105de943f543f9ed92af55818fd17b660390fc8636"
checksum = "e9f1b4c431c0bb1c8fb0a338709859eed0d030ff6daa34368d3b152a63dfdd8d"
dependencies = [
"libc",
"pyo3-build-config 0.22.6",
"pyo3-build-config",
]
[[package]]
name = "pyo3-macros"
version = "0.22.6"
version = "0.23.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0fd24d897903a9e6d80b968368a34e1525aeb719d568dba8b3d4bfa5dc67d453"
checksum = "fbc2201328f63c4710f68abdf653c89d8dbc2858b88c5d88b0ff38a75288a9da"
dependencies = [
"proc-macro2",
"pyo3-macros-backend",
@@ -5647,13 +5643,13 @@ dependencies = [
[[package]]
name = "pyo3-macros-backend"
version = "0.22.6"
version = "0.23.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "36c011a03ba1e50152b4b394b479826cad97e7a21eb52df179cd91ac411cbfbe"
checksum = "fca6726ad0f3da9c9de093d6f116a93c1a38e417ed73bf138472cf4064f72028"
dependencies = [
"heck 0.5.0",
"proc-macro2",
"pyo3-build-config 0.22.6",
"pyo3-build-config",
"quote",
"syn 2.0.98",
]

View File

@@ -21,32 +21,30 @@ categories = ["database-implementations"]
rust-version = "1.78.0"
[workspace.dependencies]
lance = { "version" = "=0.24.0", "features" = [
"dynamodb",
], git = "https://github.com/lancedb/lance.git", tag = "v0.24.0-beta.1" }
lance-io = { version = "=0.24.0", tag = "v0.24.0-beta.1", git = "https://github.com/lancedb/lance.git" }
lance-index = { version = "=0.24.0", tag = "v0.24.0-beta.1", git = "https://github.com/lancedb/lance.git" }
lance-linalg = { version = "=0.24.0", tag = "v0.24.0-beta.1", git = "https://github.com/lancedb/lance.git" }
lance-table = { version = "=0.24.0", tag = "v0.24.0-beta.1", git = "https://github.com/lancedb/lance.git" }
lance-testing = { version = "=0.24.0", tag = "v0.24.0-beta.1", git = "https://github.com/lancedb/lance.git" }
lance-datafusion = { version = "=0.24.0", tag = "v0.24.0-beta.1", git = "https://github.com/lancedb/lance.git" }
lance-encoding = { version = "=0.24.0", tag = "v0.24.0-beta.1", git = "https://github.com/lancedb/lance.git" }
lance = { "version" = "=0.24.1", "features" = ["dynamodb"] }
lance-io = { version = "=0.24.1" }
lance-index = { version = "=0.24.1" }
lance-linalg = { version = "=0.24.1" }
lance-table = { version = "=0.24.1" }
lance-testing = { version = "=0.24.1" }
lance-datafusion = { version = "=0.24.1" }
lance-encoding = { version = "=0.24.1" }
# Note that this one does not include pyarrow
arrow = { version = "53.2", optional = false }
arrow-array = "53.2"
arrow-data = "53.2"
arrow-ipc = "53.2"
arrow-ord = "53.2"
arrow-schema = "53.2"
arrow-arith = "53.2"
arrow-cast = "53.2"
arrow = { version = "54.1", optional = false }
arrow-array = "54.1"
arrow-data = "54.1"
arrow-ipc = "54.1"
arrow-ord = "54.1"
arrow-schema = "54.1"
arrow-arith = "54.1"
arrow-cast = "54.1"
async-trait = "0"
datafusion = { version = "44.0", default-features = false }
datafusion-catalog = "44.0"
datafusion-common = { version = "44.0", default-features = false }
datafusion-execution = "44.0"
datafusion-expr = "44.0"
datafusion-physical-plan = "44.0"
datafusion = { version = "45.0", default-features = false }
datafusion-catalog = "45.0"
datafusion-common = { version = "45.0", default-features = false }
datafusion-execution = "45.0"
datafusion-expr = "45.0"
datafusion-physical-plan = "45.0"
env_logger = "0.11"
half = { "version" = "=2.4.1", default-features = false, features = [
"num-traits",

View File

@@ -14,21 +14,20 @@ name = "_lancedb"
crate-type = ["cdylib"]
[dependencies]
arrow = { version = "53.2", features = ["pyarrow"] }
arrow = { version = "54.1", features = ["pyarrow"] }
lancedb = { path = "../rust/lancedb", default-features = false }
env_logger.workspace = true
pyo3 = { version = "0.22.2", features = [
"extension-module",
"abi3-py39",
"gil-refs"
pyo3 = { version = "0.23", features = ["extension-module", "abi3-py39"] }
pyo3-async-runtimes = { version = "0.23", features = [
"attributes",
"tokio-runtime",
] }
pyo3-async-runtimes = { version = "0.22", features = ["attributes", "tokio-runtime"] }
pin-project = "1.1.5"
futures.workspace = true
tokio = { version = "1.40", features = ["sync"] }
[build-dependencies]
pyo3-build-config = { version = "0.20.3", features = [
pyo3-build-config = { version = "0.23", features = [
"extension-module",
"abi3-py39",
] }

View File

@@ -54,7 +54,7 @@ tests = [
"polars>=0.19, <=1.3.0",
"tantivy",
"pyarrow-stubs",
"pylance~=0.23.2",
"pylance>=0.23.2",
]
dev = [
"ruff",

View File

@@ -43,7 +43,7 @@ impl<T> PythonErrorExt<T> for std::result::Result<T, LanceError> {
} => Python::with_gil(|py| {
let message = err.to_string();
let http_err_cls = py
.import_bound(intern!(py, "lancedb.remote.errors"))?
.import(intern!(py, "lancedb.remote.errors"))?
.getattr(intern!(py, "HttpError"))?;
let err = http_err_cls.call1((
message,
@@ -63,7 +63,7 @@ impl<T> PythonErrorExt<T> for std::result::Result<T, LanceError> {
err.setattr(intern!(py, "__cause__"), cause_err)?;
}
Err(PyErr::from_value_bound(err))
Err(PyErr::from_value(err))
}),
LanceError::Retry {
request_id,
@@ -85,7 +85,7 @@ impl<T> PythonErrorExt<T> for std::result::Result<T, LanceError> {
let message = err.to_string();
let retry_error_cls = py
.import_bound(intern!(py, "lancedb.remote.errors"))?
.import(intern!(py, "lancedb.remote.errors"))?
.getattr("RetryError")?;
let err = retry_error_cls.call1((
message,
@@ -100,7 +100,7 @@ impl<T> PythonErrorExt<T> for std::result::Result<T, LanceError> {
))?;
err.setattr(intern!(py, "__cause__"), cause_err)?;
Err(PyErr::from_value_bound(err))
Err(PyErr::from_value(err))
}),
_ => self.runtime_error(),
},
@@ -127,18 +127,16 @@ fn http_from_rust_error(
status_code: Option<u16>,
) -> PyResult<PyErr> {
let message = err.to_string();
let http_err_cls = py
.import_bound("lancedb.remote.errors")?
.getattr("HttpError")?;
let http_err_cls = py.import("lancedb.remote.errors")?.getattr("HttpError")?;
let py_err = http_err_cls.call1((message, request_id, status_code))?;
// Reset the traceback since it doesn't provide additional information.
let py_err = py_err.call_method1(intern!(py, "with_traceback"), (PyNone::get_bound(py),))?;
let py_err = py_err.call_method1(intern!(py, "with_traceback"), (PyNone::get(py),))?;
if let Some(cause) = err.source() {
let cause_err = http_from_rust_error(py, cause, request_id, status_code)?;
py_err.setattr(intern!(py, "__cause__"), cause_err)?;
}
Ok(PyErr::from_value_bound(py_err))
Ok(PyErr::from_value(py_err))
}

View File

@@ -7,29 +7,32 @@ use lancedb::index::{
vector::{IvfHnswPqIndexBuilder, IvfHnswSqIndexBuilder, IvfPqIndexBuilder},
Index as LanceDbIndex,
};
use pyo3::types::PyStringMethods;
use pyo3::IntoPyObject;
use pyo3::{
exceptions::{PyKeyError, PyValueError},
intern, pyclass, pymethods,
types::PyAnyMethods,
Bound, FromPyObject, IntoPy, PyAny, PyObject, PyResult, Python,
Bound, FromPyObject, PyAny, PyResult, Python,
};
use crate::util::parse_distance_type;
pub fn class_name<'a>(ob: &'a Bound<'_, PyAny>) -> PyResult<&'a str> {
let full_name: &str = ob
pub fn class_name(ob: &'_ Bound<'_, PyAny>) -> PyResult<String> {
let full_name = ob
.getattr(intern!(ob.py(), "__class__"))?
.getattr(intern!(ob.py(), "__name__"))?
.extract()?;
.getattr(intern!(ob.py(), "__name__"))?;
let full_name = full_name.downcast()?.to_string_lossy();
match full_name.rsplit_once('.') {
Some((_, name)) => Ok(name),
None => Ok(full_name),
Some((_, name)) => Ok(name.to_string()),
None => Ok(full_name.to_string()),
}
}
pub fn extract_index_params(source: &Option<Bound<'_, PyAny>>) -> PyResult<LanceDbIndex> {
if let Some(source) = source {
match class_name(source)? {
match class_name(source)?.as_str() {
"BTree" => Ok(LanceDbIndex::BTree(BTreeIndexBuilder::default())),
"Bitmap" => Ok(LanceDbIndex::Bitmap(Default::default())),
"LabelList" => Ok(LanceDbIndex::LabelList(Default::default())),
@@ -196,11 +199,11 @@ impl IndexConfig {
// For backwards-compatibility with the old sync SDK, we also support getting
// attributes via __getitem__.
pub fn __getitem__(&self, key: String, py: Python<'_>) -> PyResult<PyObject> {
pub fn __getitem__<'a>(&self, key: String, py: Python<'a>) -> PyResult<Bound<'a, PyAny>> {
match key.as_str() {
"index_type" => Ok(self.index_type.clone().into_py(py)),
"columns" => Ok(self.columns.clone().into_py(py)),
"name" | "index_name" => Ok(self.name.clone().into_py(py)),
"index_type" => Ok(self.index_type.clone().into_pyobject(py)?.into_any()),
"columns" => Ok(self.columns.clone().into_pyobject(py)?.into_any()),
"name" | "index_name" => Ok(self.name.clone().into_pyobject(py)?.into_any()),
_ => Err(PyKeyError::new_err(format!("Invalid key: {}", key))),
}
}

View File

@@ -13,7 +13,7 @@ use pyo3::{
exceptions::{PyKeyError, PyRuntimeError, PyValueError},
pyclass, pymethods,
types::{IntoPyDict, PyAnyMethods, PyDict, PyDictMethods},
Bound, FromPyObject, PyAny, PyRef, PyResult, Python, ToPyObject,
Bound, FromPyObject, PyAny, PyRef, PyResult, Python,
};
use pyo3_async_runtimes::tokio::future_into_py;
use std::collections::HashMap;
@@ -222,7 +222,7 @@ impl Table {
let stats = inner.index_stats(&index_name).await.infer_error()?;
if let Some(stats) = stats {
Python::with_gil(|py| {
let dict = PyDict::new_bound(py);
let dict = PyDict::new(py);
dict.set_item("num_indexed_rows", stats.num_indexed_rows)?;
dict.set_item("num_unindexed_rows", stats.num_unindexed_rows)?;
dict.set_item("index_type", stats.index_type.to_string())?;
@@ -235,7 +235,7 @@ impl Table {
dict.set_item("num_indices", num_indices)?;
}
Ok(Some(dict.to_object(py)))
Ok(Some(dict.unbind()))
})
} else {
Ok(None)
@@ -266,7 +266,7 @@ impl Table {
versions
.iter()
.map(|v| {
let dict = PyDict::new_bound(py);
let dict = PyDict::new(py);
dict.set_item("version", v.version).unwrap();
dict.set_item(
"timestamp",
@@ -275,14 +275,13 @@ impl Table {
.unwrap();
let tup: Vec<(&String, &String)> = v.metadata.iter().collect();
dict.set_item("metadata", tup.into_py_dict_bound(py))
.unwrap();
dict.to_object(py)
dict.set_item("metadata", tup.into_py_dict(py)?).unwrap();
Ok(dict.unbind())
})
.collect::<Vec<_>>()
.collect::<PyResult<Vec<_>>>()
});
Ok(versions_as_dict)
versions_as_dict
})
}