Prepare for DF50 (#1231)
* ruff fmt
* Upgrade to DF50 release candidate
* Add support for passing filter and distinct in window()
* Update documentation to not use deprecated window fn
* Remove crates.io patch
* Cargo update
diff --git a/Cargo.lock b/Cargo.lock
index 9497218..ac967f7 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -66,12 +66,6 @@
checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
[[package]]
-name = "adler32"
-version = "1.2.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
-
-[[package]]
name = "ahash"
version = "0.8.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -116,12 +110,6 @@
checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
[[package]]
-name = "android-tzdata"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
-
-[[package]]
name = "android_system_properties"
version = "0.1.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -138,19 +126,20 @@
[[package]]
name = "apache-avro"
-version = "0.17.0"
+version = "0.20.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1aef82843a0ec9f8b19567445ad2421ceeb1d711514384bdd3d49fe37102ee13"
+checksum = "3a033b4ced7c585199fb78ef50fca7fe2f444369ec48080c5fd072efa1a03cc7"
dependencies = [
"bigdecimal",
- "bzip2 0.4.4",
+ "bon",
+ "bzip2 0.6.0",
"crc32fast",
"digest",
- "libflate",
"log",
+ "miniz_oxide",
"num-bigint",
"quad-rand",
- "rand 0.8.5",
+ "rand",
"regex-lite",
"serde",
"serde_bytes",
@@ -158,8 +147,7 @@
"snap",
"strum",
"strum_macros",
- "thiserror 1.0.69",
- "typed-builder",
+ "thiserror",
"uuid",
"xz2",
"zstd",
@@ -185,9 +173,9 @@
[[package]]
name = "arrow"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f3f15b4c6b148206ff3a2b35002e08929c2462467b62b9c02036d9c34f9ef994"
+checksum = "c26b57282a08ae92f727497805122fec964c6245cfa0e13f0e75452eaf3bc41f"
dependencies = [
"arrow-arith",
"arrow-array",
@@ -207,9 +195,9 @@
[[package]]
name = "arrow-arith"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "30feb679425110209ae35c3fbf82404a39a4c0436bb3ec36164d8bffed2a4ce4"
+checksum = "cebf38ca279120ff522f4954b81a39527425b6e9f615e6b72842f4de1ffe02b8"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -221,9 +209,9 @@
[[package]]
name = "arrow-array"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "70732f04d285d49054a48b72c54f791bb3424abae92d27aafdf776c98af161c8"
+checksum = "744109142cdf8e7b02795e240e20756c2a782ac9180d4992802954a8f871c0de"
dependencies = [
"ahash",
"arrow-buffer",
@@ -238,9 +226,9 @@
[[package]]
name = "arrow-buffer"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "169b1d5d6cb390dd92ce582b06b23815c7953e9dfaaea75556e89d890d19993d"
+checksum = "601bb103c4c374bcd1f62c66bcea67b42a2ee91a690486c37d4c180236f11ccc"
dependencies = [
"bytes",
"half",
@@ -249,9 +237,9 @@
[[package]]
name = "arrow-cast"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e4f12eccc3e1c05a766cafb31f6a60a46c2f8efec9b74c6e0648766d30686af8"
+checksum = "eed61d9d73eda8df9e3014843def37af3050b5080a9acbe108f045a316d5a0be"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -270,9 +258,9 @@
[[package]]
name = "arrow-csv"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "012c9fef3f4a11573b2c74aec53712ff9fdae4a95f4ce452d1bbf088ee00f06b"
+checksum = "fa95b96ce0c06b4d33ac958370db8c0d31e88e54f9d6e08b0353d18374d9f991"
dependencies = [
"arrow-array",
"arrow-cast",
@@ -285,9 +273,9 @@
[[package]]
name = "arrow-data"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8de1ce212d803199684b658fc4ba55fb2d7e87b213de5af415308d2fee3619c2"
+checksum = "43407f2c6ba2367f64d85d4603d6fb9c4b92ed79d2ffd21021b37efa96523e12"
dependencies = [
"arrow-buffer",
"arrow-schema",
@@ -297,14 +285,15 @@
[[package]]
name = "arrow-ipc"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d9ea5967e8b2af39aff5d9de2197df16e305f47f404781d3230b2dc672da5d92"
+checksum = "e4b0487c4d2ad121cbc42c4db204f1509f8618e589bc77e635e9c40b502e3b90"
dependencies = [
"arrow-array",
"arrow-buffer",
"arrow-data",
"arrow-schema",
+ "arrow-select",
"flatbuffers",
"lz4_flex",
"zstd",
@@ -312,9 +301,9 @@
[[package]]
name = "arrow-json"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5709d974c4ea5be96d900c01576c7c0b99705f4a3eec343648cb1ca863988a9c"
+checksum = "26d747573390905905a2dc4c5a61a96163fe2750457f90a04ee2a88680758c79"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -334,9 +323,9 @@
[[package]]
name = "arrow-ord"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6506e3a059e3be23023f587f79c82ef0bcf6d293587e3272d20f2d30b969b5a7"
+checksum = "c142a147dceb59d057bad82400f1693847c80dca870d008bf7b91caf902810ae"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -347,9 +336,9 @@
[[package]]
name = "arrow-pyarrow"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0e55ecf16b9b61d433f6e63c72fc6afcf2597d7db96583de88ebb887d1822268"
+checksum = "5b9038de599df1b81f63b42220e2b6cd6fd4f09af333858cd320db9bef5ac757"
dependencies = [
"arrow-array",
"arrow-data",
@@ -359,9 +348,9 @@
[[package]]
name = "arrow-row"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52bf7393166beaf79b4bed9bfdf19e97472af32ce5b6b48169d321518a08cae2"
+checksum = "dac6620667fccdab4204689ca173bd84a15de6bb6b756c3a8764d4d7d0c2fc04"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -372,9 +361,9 @@
[[package]]
name = "arrow-schema"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af7686986a3bf2254c9fb130c623cdcb2f8e1f15763e7c71c310f0834da3d292"
+checksum = "dfa93af9ff2bb80de539e6eb2c1c8764abd0f4b73ffb0d7c82bf1f9868785e66"
dependencies = [
"bitflags",
"serde",
@@ -383,9 +372,9 @@
[[package]]
name = "arrow-select"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd2b45757d6a2373faa3352d02ff5b54b098f5e21dccebc45a21806bc34501e5"
+checksum = "be8b2e0052cd20d36d64f32640b68a5ab54d805d24a473baee5d52017c85536c"
dependencies = [
"ahash",
"arrow-array",
@@ -397,9 +386,9 @@
[[package]]
name = "arrow-string"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0377d532850babb4d927a06294314b316e23311503ed580ec6ce6a0158f49d40"
+checksum = "c2155e26e17f053c8975c546fc70cf19c00542f9abf43c23a88a46ef7204204f"
dependencies = [
"arrow-array",
"arrow-buffer",
@@ -536,9 +525,9 @@
[[package]]
name = "bitflags"
-version = "2.9.3"
+version = "2.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34efbcccd345379ca2868b2b2c9d3782e9cc58ba87bc7d79d5b53d9c9ae6f25d"
+checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394"
[[package]]
name = "blake2"
@@ -572,6 +561,31 @@
]
[[package]]
+name = "bon"
+version = "3.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c2529c31017402be841eb45892278a6c21a000c0a17643af326c73a73f83f0fb"
+dependencies = [
+ "bon-macros",
+ "rustversion",
+]
+
+[[package]]
+name = "bon-macros"
+version = "3.7.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d82020dadcb845a345591863adb65d74fa8dc5c18a0b6d408470e13b7adc7005"
+dependencies = [
+ "darling",
+ "ident_case",
+ "prettyplease",
+ "proc-macro2",
+ "quote",
+ "rustversion",
+ "syn 2.0.106",
+]
+
+[[package]]
name = "brotli"
version = "8.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -612,16 +626,6 @@
[[package]]
name = "bzip2"
-version = "0.4.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8"
-dependencies = [
- "bzip2-sys",
- "libc",
-]
-
-[[package]]
-name = "bzip2"
version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "49ecfb22d906f800d4fe833b6282cf4dc1c298f5057ca0b5445e5c209735ca47"
@@ -650,10 +654,11 @@
[[package]]
name = "cc"
-version = "1.2.34"
+version = "1.2.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "42bc4aea80032b7bf409b0bc7ccad88853858911b7713a8062fdc0623867bedc"
+checksum = "65193589c6404eb80b450d618eaf9a2cafaaafd57ecce47370519ef674a7bd44"
dependencies = [
+ "find-msvc-tools",
"jobserver",
"libc",
"shlex",
@@ -673,15 +678,14 @@
[[package]]
name = "chrono"
-version = "0.4.41"
+version = "0.4.42"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d"
+checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2"
dependencies = [
- "android-tzdata",
"iana-time-zone",
"num-traits",
"serde",
- "windows-link",
+ "windows-link 0.2.0",
]
[[package]]
@@ -705,9 +709,9 @@
[[package]]
name = "comfy-table"
-version = "7.1.4"
+version = "7.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4a65ebfec4fb190b6f90e944a817d60499ee0744e582530e2c9900a22e591d9a"
+checksum = "b03b7db8e0b4b2fdad6c551e634134e99ec000e5c8c3b6856c65e8bbaded7a3b"
dependencies = [
"unicode-segmentation",
"unicode-width",
@@ -735,9 +739,9 @@
[[package]]
name = "const_panic"
-version = "0.2.14"
+version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb8a602185c3c95b52f86dc78e55a6df9a287a7a93ddbcf012509930880cf879"
+checksum = "e262cdaac42494e3ae34c43969f9cdeb7da178bdb4b66fa6a1ea2edb4c8ae652"
dependencies = [
"typewit",
]
@@ -765,15 +769,6 @@
checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
[[package]]
-name = "core2"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505"
-dependencies = [
- "memchr",
-]
-
-[[package]]
name = "core_extensions"
version = "1.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -859,10 +854,39 @@
]
[[package]]
-name = "dary_heap"
-version = "0.3.7"
+name = "darling"
+version = "0.21.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04d2cd9c18b9f454ed67da600630b021a8a80bf33f8c95896ab33aaf1c26b728"
+checksum = "9cdf337090841a411e2a7f3deb9187445851f91b309c0c0a29e05f74a00a48c0"
+dependencies = [
+ "darling_core",
+ "darling_macro",
+]
+
+[[package]]
+name = "darling_core"
+version = "0.21.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1247195ecd7e3c85f83c8d2a366e4210d588e802133e1e355180a9870b517ea4"
+dependencies = [
+ "fnv",
+ "ident_case",
+ "proc-macro2",
+ "quote",
+ "strsim",
+ "syn 2.0.106",
+]
+
+[[package]]
+name = "darling_macro"
+version = "0.21.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81"
+dependencies = [
+ "darling_core",
+ "quote",
+ "syn 2.0.106",
+]
[[package]]
name = "dashmap"
@@ -880,9 +904,9 @@
[[package]]
name = "datafusion"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69dfeda1633bf8ec75b068d9f6c27cdc392ffcf5ff83128d5dbab65b73c1fd02"
+checksum = "481d0c1cad7606cee11233abcdff8eec46e43dd25abda007db6d5d26ae8483c4"
dependencies = [
"arrow",
"arrow-ipc",
@@ -910,6 +934,7 @@
"datafusion-functions-window",
"datafusion-optimizer",
"datafusion-physical-expr",
+ "datafusion-physical-expr-adapter",
"datafusion-physical-expr-common",
"datafusion-physical-optimizer",
"datafusion-physical-plan",
@@ -917,13 +942,12 @@
"datafusion-sql",
"flate2",
"futures",
- "hex",
"itertools 0.14.0",
"log",
"object_store",
"parking_lot",
"parquet",
- "rand 0.9.2",
+ "rand",
"regex",
"sqlparser",
"tempfile",
@@ -936,9 +960,9 @@
[[package]]
name = "datafusion-catalog"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2848fd1e85e2953116dab9cc2eb109214b0888d7bbd2230e30c07f1794f642c0"
+checksum = "d70327e81ab3a1f5832d8b372d55fa607851d7cea6d1f8e65ff0c98fcc32d222"
dependencies = [
"arrow",
"async-trait",
@@ -962,9 +986,9 @@
[[package]]
name = "datafusion-catalog-listing"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "051a1634628c2d1296d4e326823e7536640d87a118966cdaff069b68821ad53b"
+checksum = "268819e6bb20ba70a664abddc20deac604f30d3267f8c91847064542a8c0720c"
dependencies = [
"arrow",
"async-trait",
@@ -985,9 +1009,9 @@
[[package]]
name = "datafusion-common"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "765e4ad4ef7a4500e389a3f1e738791b71ff4c29fd00912c2f541d62b25da096"
+checksum = "054873d5563f115f83ef4270b560ac2ce4de713905e825a40cac49d6ff348254"
dependencies = [
"ahash",
"apache-avro",
@@ -997,7 +1021,6 @@
"chrono",
"half",
"hashbrown 0.14.5",
- "hex",
"indexmap",
"libc",
"log",
@@ -1012,9 +1035,9 @@
[[package]]
name = "datafusion-common-runtime"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40a2ae8393051ce25d232a6065c4558ab5a535c9637d5373bacfd464ac88ea12"
+checksum = "b8a1d1bc69aaaadb8008b65329ed890b33e845dc063225c190f77b20328fbe1d"
dependencies = [
"futures",
"log",
@@ -1023,9 +1046,9 @@
[[package]]
name = "datafusion-datasource"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90cd841a77f378bc1a5c4a1c37345e1885a9203b008203f9f4b3a769729bf330"
+checksum = "d855160469020982880fd9bd0962e033d2f4728f56f85a83d8c90785638b6519"
dependencies = [
"arrow",
"async-compression",
@@ -1038,6 +1061,7 @@
"datafusion-execution",
"datafusion-expr",
"datafusion-physical-expr",
+ "datafusion-physical-expr-adapter",
"datafusion-physical-expr-common",
"datafusion-physical-plan",
"datafusion-session",
@@ -1048,7 +1072,7 @@
"log",
"object_store",
"parquet",
- "rand 0.9.2",
+ "rand",
"tempfile",
"tokio",
"tokio-util",
@@ -1059,9 +1083,9 @@
[[package]]
name = "datafusion-datasource-avro"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3cba1696aa919da9517d29164d45f5902d6cc281f718e8d3bfe98bd52cd1142c"
+checksum = "5c8cfac9188138eb326f60eab872cb92a89a301f0a3f9fd1f24004325fd2741d"
dependencies = [
"apache-avro",
"arrow",
@@ -1084,9 +1108,9 @@
[[package]]
name = "datafusion-datasource-csv"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "77f4a2c64939c6f0dd15b246723a699fa30d59d0133eb36a86e8ff8c6e2a8dc6"
+checksum = "9ec3aa7575378d23aae96b955b5233bea6f9d461648174f6ccc8f3c160f2b7a7"
dependencies = [
"arrow",
"async-trait",
@@ -1109,9 +1133,9 @@
[[package]]
name = "datafusion-datasource-json"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11387aaf931b2993ad9273c63ddca33f05aef7d02df9b70fb757429b4b71cdae"
+checksum = "00cfb8f33e2864eeb3188b6818acf5546d56a5a487d423cce9b684a554caabfa"
dependencies = [
"arrow",
"async-trait",
@@ -1134,9 +1158,9 @@
[[package]]
name = "datafusion-datasource-parquet"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "028f430c5185120bf806347848b8d8acd9823f4038875b3820eeefa35f2bb4a2"
+checksum = "ab3bfb48fb4ff42ac1485a12ea56434eaab53f7da8f00b2443b1a3d35a0b6d10"
dependencies = [
"arrow",
"async-trait",
@@ -1149,35 +1173,36 @@
"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",
- "hex",
"itertools 0.14.0",
"log",
"object_store",
"parking_lot",
"parquet",
- "rand 0.9.2",
+ "rand",
"tokio",
]
[[package]]
name = "datafusion-doc"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ff336d1d755399753a9e4fbab001180e346fc8bfa063a97f1214b82274c00f8"
+checksum = "2fbf41013cf55c2369b5229594898e8108c8a1beeb49d97feb5e0cce9933eb8f"
[[package]]
name = "datafusion-execution"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "042ea192757d1b2d7dcf71643e7ff33f6542c7704f00228d8b85b40003fd8e0f"
+checksum = "26fd0c1ffe3885687758f985ed548184bf63b17b2a7a5ae695de422ad6432118"
dependencies = [
"arrow",
+ "async-trait",
"dashmap",
"datafusion-common",
"datafusion-expr",
@@ -1185,16 +1210,16 @@
"log",
"object_store",
"parking_lot",
- "rand 0.9.2",
+ "rand",
"tempfile",
"url",
]
[[package]]
name = "datafusion-expr"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "025222545d6d7fab71e2ae2b356526a1df67a2872222cbae7535e557a42abd2e"
+checksum = "5c4fe6411218a9dab656437b1e69b00a470a7a2d7db087867a366c145eb164a7"
dependencies = [
"arrow",
"async-trait",
@@ -1214,9 +1239,9 @@
[[package]]
name = "datafusion-expr-common"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9d5c267104849d5fa6d81cf5ba88f35ecd58727729c5eb84066c25227b644ae2"
+checksum = "4a45bee7d2606bfb41ceb1d904ba7cecf69bd5a6f8f3e6c57c3f5a83d84bdd97"
dependencies = [
"arrow",
"datafusion-common",
@@ -1227,9 +1252,9 @@
[[package]]
name = "datafusion-ffi"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec21805d9df2d834e4c6ddfbf8a1bed2bd460b89b01686fe0dcd1cee06d0b60f"
+checksum = "4ff957c0553df58b70904608cc0047d4489fc566191b7fb00e9fe5a52cafa0ef"
dependencies = [
"abi_stable",
"arrow",
@@ -1249,9 +1274,9 @@
[[package]]
name = "datafusion-functions"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c620d105aa208fcee45c588765483314eb415f5571cfd6c1bae3a59c5b4d15bb"
+checksum = "9c7e1c532ff9d14f291160bca23e55ffd4899800301dd2389786c2f02d76904a"
dependencies = [
"arrow",
"arrow-buffer",
@@ -1269,7 +1294,7 @@
"itertools 0.14.0",
"log",
"md-5",
- "rand 0.9.2",
+ "rand",
"regex",
"sha2",
"unicode-segmentation",
@@ -1278,9 +1303,9 @@
[[package]]
name = "datafusion-functions-aggregate"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "35f61d5198a35ed368bf3aacac74f0d0fa33de7a7cb0c57e9f68ab1346d2f952"
+checksum = "b05d47426645aef1e73b1a034c75ab2401bc504175feb191accbe211ec24a342"
dependencies = [
"ahash",
"arrow",
@@ -1299,9 +1324,9 @@
[[package]]
name = "datafusion-functions-aggregate-common"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13efdb17362be39b5024f6da0d977ffe49c0212929ec36eec550e07e2bc7812f"
+checksum = "05c99f648b2b1743de0c1c19eef07e8cc5a085237f172b2e20bf6934e0a804e4"
dependencies = [
"ahash",
"arrow",
@@ -1312,9 +1337,9 @@
[[package]]
name = "datafusion-functions-nested"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9187678af567d7c9e004b72a0b6dc5b0a00ebf4901cb3511ed2db4effe092e66"
+checksum = "4227782023f4fb68d3d5c5eb190665212f43c9a0b437553e4b938b379aff6cf6"
dependencies = [
"arrow",
"arrow-ord",
@@ -1334,9 +1359,9 @@
[[package]]
name = "datafusion-functions-table"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ecf156589cc21ef59fe39c7a9a841b4a97394549643bbfa88cc44e8588cf8fe5"
+checksum = "3d902b1769f69058236e89f04f3bff2cf62f24311adb7bf3c6c3e945c9451076"
dependencies = [
"arrow",
"async-trait",
@@ -1350,9 +1375,9 @@
[[package]]
name = "datafusion-functions-window"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "edcb25e3e369f1366ec9a261456e45b5aad6ea1c0c8b4ce546587207c501ed9e"
+checksum = "4b8ee43974c92eb9920fe8e97e0fab48675e93b062abcb48bef4c1d4305b6ee4"
dependencies = [
"arrow",
"datafusion-common",
@@ -1368,9 +1393,9 @@
[[package]]
name = "datafusion-functions-window-common"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8996a8e11174d0bd7c62dc2f316485affc6ae5ffd5b8a68b508137ace2310294"
+checksum = "a1e149d36cdd44fb425dc815c5fac55025aa9a592dd65cb3c421881096292c02"
dependencies = [
"datafusion-common",
"datafusion-physical-expr-common",
@@ -1378,9 +1403,9 @@
[[package]]
name = "datafusion-macros"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95ee8d1be549eb7316f437035f2cec7ec42aba8374096d807c4de006a3b5d78a"
+checksum = "07c9faa0cdefb6e6e756482b846397b5c2d84d369e30b009472b9ab9b1430fbd"
dependencies = [
"datafusion-expr",
"quote",
@@ -1389,9 +1414,9 @@
[[package]]
name = "datafusion-optimizer"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9fa98671458254928af854e5f6c915e66b860a8bde505baea0ff2892deab74d"
+checksum = "f16a4f7059302ad1de6e97ab0eebb5c34405917b1f80806a30a66e38ad118251"
dependencies = [
"arrow",
"chrono",
@@ -1409,9 +1434,9 @@
[[package]]
name = "datafusion-physical-expr"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3515d51531cca5f7b5a6f3ea22742b71bb36fc378b465df124ff9a2fa349b002"
+checksum = "10bb87a605d8ce9672d5347c0293c12211b0c03923fc12fbdc665fe76e6f9e01"
dependencies = [
"ahash",
"arrow",
@@ -1425,15 +1450,31 @@
"indexmap",
"itertools 0.14.0",
"log",
+ "parking_lot",
"paste",
"petgraph 0.8.2",
]
[[package]]
-name = "datafusion-physical-expr-common"
-version = "49.0.2"
+name = "datafusion-physical-expr-adapter"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24485475d9c618a1d33b2a3dad003d946dc7a7bbf0354d125301abc0a5a79e3e"
+checksum = "2da3a7429a555dd5ff0bec4d24bd5532ec43876764088da635cad55b2f178dc2"
+dependencies = [
+ "arrow",
+ "datafusion-common",
+ "datafusion-expr",
+ "datafusion-functions",
+ "datafusion-physical-expr",
+ "datafusion-physical-expr-common",
+ "itertools 0.14.0",
+]
+
+[[package]]
+name = "datafusion-physical-expr-common"
+version = "50.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "845eb44ef1e04d2a15c6d955cb146b40a41814a7be4377f0a541857d3e257d6f"
dependencies = [
"ahash",
"arrow",
@@ -1445,9 +1486,9 @@
[[package]]
name = "datafusion-physical-optimizer"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b9da411a0a64702f941a12af2b979434d14ec5d36c6f49296966b2c7639cbb3a"
+checksum = "32b9b648ee2785722c79eae366528e52e93ece6808aef9297cf8e5521de381da"
dependencies = [
"arrow",
"datafusion-common",
@@ -1465,9 +1506,9 @@
[[package]]
name = "datafusion-physical-plan"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a6d168282bb7b54880bb3159f89b51c047db4287f5014d60c3ef4c6e1468212b"
+checksum = "7e6688d17b78104e169d7069749832c20ff50f112be853d2c058afe46c889064"
dependencies = [
"ahash",
"arrow",
@@ -1479,6 +1520,7 @@
"datafusion-common-runtime",
"datafusion-execution",
"datafusion-expr",
+ "datafusion-functions-aggregate-common",
"datafusion-functions-window-common",
"datafusion-physical-expr",
"datafusion-physical-expr-common",
@@ -1495,9 +1537,9 @@
[[package]]
name = "datafusion-proto"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1b36a0c84f4500efd90487a004b533bd81de1f2bb3f143f71b7526f33b85d2e2"
+checksum = "521cd45740788e751bf59b25d2879d162b157a45fb9b5fa2ec03034923f3658a"
dependencies = [
"arrow",
"chrono",
@@ -1511,9 +1553,9 @@
[[package]]
name = "datafusion-proto-common"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ec788be522806740ad6372c0a2f7e45fb37cb37f786d9b77933add49cdd058f"
+checksum = "c15ede0e0f1e51d5b5bea1a196db35e00aa3cae9e58cc12df3cc900e36328437"
dependencies = [
"arrow",
"datafusion-common",
@@ -1522,9 +1564,9 @@
[[package]]
name = "datafusion-pruning"
-version = "49.0.0"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "391a457b9d23744c53eeb89edd1027424cba100581488d89800ed841182df905"
+checksum = "8a893a46c56f5f190085e13949eb8ec163672c7ec2ac33bdb82c84572e71ca73"
dependencies = [
"arrow",
"arrow-schema",
@@ -1565,9 +1607,9 @@
[[package]]
name = "datafusion-session"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "053201c2bb729c7938f85879034df2b5a52cfaba16f1b3b66ab8505c81b2aad3"
+checksum = "f8b62684c7a1db6121a8c83100209cffa1e664a8d9ced87e1a32f8cdc2fff3c2"
dependencies = [
"arrow",
"async-trait",
@@ -1589,9 +1631,9 @@
[[package]]
name = "datafusion-sql"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9082779be8ce4882189b229c0cff4393bd0808282a7194130c9f32159f185e25"
+checksum = "f09cff94b8242843e1da5d069e9d2cfc53807f1f00b1c0da78c297f47c21456e"
dependencies = [
"arrow",
"bigdecimal",
@@ -1606,9 +1648,9 @@
[[package]]
name = "datafusion-substrait"
-version = "49.0.2"
+version = "50.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4189e480ae42f06ade81a6d12853c5f3f84fbe237d73fb8795c712b6f1923afb"
+checksum = "63e82491d50f78150897577fae14d7e5b800ca1a8a56b84de78e852ad3f5a5bd"
dependencies = [
"async-recursion",
"async-trait",
@@ -1665,12 +1707,12 @@
[[package]]
name = "errno"
-version = "0.3.13"
+version = "0.3.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad"
+checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
dependencies = [
"libc",
- "windows-sys 0.60.2",
+ "windows-sys 0.61.0",
]
[[package]]
@@ -1680,6 +1722,12 @@
checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
[[package]]
+name = "find-msvc-tools"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7fd99930f64d146689264c637b5af2f0233a933bef0d8570e2526bf9e083192d"
+
+[[package]]
name = "fixedbitset"
version = "0.5.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1858,7 +1906,7 @@
"js-sys",
"libc",
"r-efi",
- "wasi 0.14.2+wasi-0.2.4",
+ "wasi 0.14.7+wasi-0.2.4",
"wasm-bindgen",
]
@@ -1979,9 +2027,9 @@
[[package]]
name = "humantime"
-version = "2.2.0"
+version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f"
+checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424"
[[package]]
name = "hyper"
@@ -2024,9 +2072,9 @@
[[package]]
name = "hyper-util"
-version = "0.1.16"
+version = "0.1.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8d9b05277c7e8da2c93a568989bb6207bef0112e8d17df7a6eda4a3cf143bc5e"
+checksum = "3c6995591a8f1380fcb4ba966a252a4b29188d51d2b89e3a252f5305be65aea8"
dependencies = [
"base64 0.22.1",
"bytes",
@@ -2040,7 +2088,7 @@
"libc",
"percent-encoding",
"pin-project-lite",
- "socket2 0.6.0",
+ "socket2",
"tokio",
"tower-service",
"tracing",
@@ -2048,9 +2096,9 @@
[[package]]
name = "iana-time-zone"
-version = "0.1.63"
+version = "0.1.64"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8"
+checksum = "33e57f83510bb73707521ebaffa789ec8caf86f9657cad665b092b581d40e9fb"
dependencies = [
"android_system_properties",
"core-foundation-sys",
@@ -2157,6 +2205,12 @@
]
[[package]]
+name = "ident_case"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
+
+[[package]]
name = "idna"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2179,9 +2233,9 @@
[[package]]
name = "indexmap"
-version = "2.11.0"
+version = "2.11.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f2481980430f9f78649238835720ddccc57e52df14ffce1c6f37391d61b563e9"
+checksum = "92119844f513ffa41556430369ab02c295a3578af21cf945caa3e9e0c2481ac3"
dependencies = [
"equivalent",
"hashbrown 0.15.5",
@@ -2262,9 +2316,9 @@
[[package]]
name = "js-sys"
-version = "0.3.77"
+version = "0.3.78"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f"
+checksum = "0c0b063578492ceec17683ef2f8c5e89121fbd0b172cbc280635ab7567db2738"
dependencies = [
"once_cell",
"wasm-bindgen",
@@ -2347,30 +2401,6 @@
checksum = "6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543"
[[package]]
-name = "libflate"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "45d9dfdc14ea4ef0900c1cddbc8dcd553fbaacd8a4a282cf4018ae9dd04fb21e"
-dependencies = [
- "adler32",
- "core2",
- "crc32fast",
- "dary_heap",
- "libflate_lz77",
-]
-
-[[package]]
-name = "libflate_lz77"
-version = "2.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6e0d73b369f386f1c44abd9c570d5318f55ccde816ff4b562fa452e5182863d"
-dependencies = [
- "core2",
- "hashbrown 0.14.5",
- "rle-decode-fast",
-]
-
-[[package]]
name = "libloading"
version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2388,9 +2418,9 @@
[[package]]
name = "libmimalloc-sys"
-version = "0.1.43"
+version = "0.1.44"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bf88cd67e9de251c1781dbe2f641a1a3ad66eaae831b8a2c38fbdc5ddae16d4d"
+checksum = "667f4fec20f29dfc6bc7357c582d91796c169ad7e2fce709468aefeb2c099870"
dependencies = [
"cc",
"libc",
@@ -2398,18 +2428,18 @@
[[package]]
name = "libz-rs-sys"
-version = "0.5.1"
+version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "172a788537a2221661b480fee8dc5f96c580eb34fa88764d3205dc356c7e4221"
+checksum = "840db8cf39d9ec4dd794376f38acc40d0fc65eec2a8f484f7fd375b84602becd"
dependencies = [
"zlib-rs",
]
[[package]]
name = "linux-raw-sys"
-version = "0.9.4"
+version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12"
+checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039"
[[package]]
name = "litemap"
@@ -2429,9 +2459,9 @@
[[package]]
name = "log"
-version = "0.4.27"
+version = "0.4.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94"
+checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432"
[[package]]
name = "lru-slab"
@@ -2486,9 +2516,9 @@
[[package]]
name = "mimalloc"
-version = "0.1.47"
+version = "0.1.48"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b1791cbe101e95af5764f06f20f6760521f7158f69dbf9d6baf941ee1bf6bc40"
+checksum = "e1ee66a4b64c74f4ef288bcbb9192ad9c3feaad75193129ac8509af543894fd8"
dependencies = [
"libmimalloc-sys",
]
@@ -2625,14 +2655,14 @@
"parking_lot",
"percent-encoding",
"quick-xml",
- "rand 0.9.2",
+ "rand",
"reqwest",
"ring",
"rustls-pemfile",
"serde",
"serde_json",
"serde_urlencoded",
- "thiserror 2.0.16",
+ "thiserror",
"tokio",
"tracing",
"url",
@@ -2687,9 +2717,9 @@
[[package]]
name = "parquet"
-version = "55.2.0"
+version = "56.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b17da4150748086bd43352bc77372efa9b6e3dbd06a04831d2a98c041c225cfa"
+checksum = "89b56b41d1bd36aae415e42f91cae70ee75cf6cba74416b14dce3e958d5990ec"
dependencies = [
"ahash",
"arrow-array",
@@ -2837,9 +2867,9 @@
[[package]]
name = "potential_utf"
-version = "0.1.2"
+version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585"
+checksum = "84df19adbe5b5a0782edcab45899906947ab039ccf4573713735ee7de1e6b08a"
dependencies = [
"zerovec",
]
@@ -2944,11 +2974,10 @@
[[package]]
name = "pyo3"
-version = "0.24.2"
+version = "0.25.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5203598f366b11a02b13aa20cab591229ff0a89fd121a308a5df751d5fc9219"
+checksum = "8970a78afe0628a3e3430376fc5fd76b6b45c4d43360ffd6cdd40bdde72b682a"
dependencies = [
- "cfg-if",
"indoc",
"libc",
"memoffset",
@@ -2962,9 +2991,9 @@
[[package]]
name = "pyo3-async-runtimes"
-version = "0.24.0"
+version = "0.25.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dd0b83dc42f9d41f50d38180dad65f0c99763b65a3ff2a81bf351dd35a1df8bf"
+checksum = "d73cc6b1b7d8b3cef02101d37390dbdfe7e450dfea14921cae80a9534ba59ef2"
dependencies = [
"futures",
"once_cell",
@@ -2975,9 +3004,9 @@
[[package]]
name = "pyo3-build-config"
-version = "0.24.2"
+version = "0.25.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99636d423fa2ca130fa5acde3059308006d46f98caac629418e53f7ebb1e9999"
+checksum = "458eb0c55e7ece017adeba38f2248ff3ac615e53660d7c71a238d7d2a01c7598"
dependencies = [
"once_cell",
"target-lexicon",
@@ -2985,9 +3014,9 @@
[[package]]
name = "pyo3-ffi"
-version = "0.24.2"
+version = "0.25.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78f9cf92ba9c409279bc3305b5409d90db2d2c22392d443a87df3a1adad59e33"
+checksum = "7114fe5457c61b276ab77c5055f206295b812608083644a5c5b2640c3102565c"
dependencies = [
"libc",
"pyo3-build-config",
@@ -3006,9 +3035,9 @@
[[package]]
name = "pyo3-macros"
-version = "0.24.2"
+version = "0.25.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0b999cb1a6ce21f9a6b147dcf1be9ffedf02e0043aec74dc390f3007047cecd9"
+checksum = "a8725c0a622b374d6cb051d11a0983786448f7785336139c3c94f5aa6bef7e50"
dependencies = [
"proc-macro2",
"pyo3-macros-backend",
@@ -3018,9 +3047,9 @@
[[package]]
name = "pyo3-macros-backend"
-version = "0.24.2"
+version = "0.25.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "822ece1c7e1012745607d5cf0bcb2874769f0f7cb34c4cde03b9358eb9ef911a"
+checksum = "4109984c22491085343c05b0dbc54ddc405c3cf7b4374fc533f5c3313a572ccc"
dependencies = [
"heck",
"proc-macro2",
@@ -3047,9 +3076,9 @@
[[package]]
name = "quinn"
-version = "0.11.8"
+version = "0.11.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "626214629cda6781b6dc1d316ba307189c85ba657213ce642d9c77670f8202c8"
+checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20"
dependencies = [
"bytes",
"cfg_aliases",
@@ -3058,8 +3087,8 @@
"quinn-udp",
"rustc-hash",
"rustls",
- "socket2 0.5.10",
- "thiserror 2.0.16",
+ "socket2",
+ "thiserror",
"tokio",
"tracing",
"web-time",
@@ -3067,20 +3096,20 @@
[[package]]
name = "quinn-proto"
-version = "0.11.12"
+version = "0.11.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49df843a9161c85bb8aae55f101bc0bac8bcafd637a620d9122fd7e0b2f7422e"
+checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31"
dependencies = [
"bytes",
"getrandom 0.3.3",
"lru-slab",
- "rand 0.9.2",
+ "rand",
"ring",
"rustc-hash",
"rustls",
"rustls-pki-types",
"slab",
- "thiserror 2.0.16",
+ "thiserror",
"tinyvec",
"tracing",
"web-time",
@@ -3088,16 +3117,16 @@
[[package]]
name = "quinn-udp"
-version = "0.5.13"
+version = "0.5.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fcebb1209ee276352ef14ff8732e24cc2b02bbac986cd74a4c81bcb2f9881970"
+checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd"
dependencies = [
"cfg_aliases",
"libc",
"once_cell",
- "socket2 0.5.10",
+ "socket2",
"tracing",
- "windows-sys 0.59.0",
+ "windows-sys 0.60.2",
]
[[package]]
@@ -3117,33 +3146,12 @@
[[package]]
name = "rand"
-version = "0.8.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
-dependencies = [
- "libc",
- "rand_chacha 0.3.1",
- "rand_core 0.6.4",
-]
-
-[[package]]
-name = "rand"
version = "0.9.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1"
dependencies = [
- "rand_chacha 0.9.0",
- "rand_core 0.9.3",
-]
-
-[[package]]
-name = "rand_chacha"
-version = "0.3.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
-dependencies = [
- "ppv-lite86",
- "rand_core 0.6.4",
+ "rand_chacha",
+ "rand_core",
]
[[package]]
@@ -3153,16 +3161,7 @@
checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb"
dependencies = [
"ppv-lite86",
- "rand_core 0.9.3",
-]
-
-[[package]]
-name = "rand_core"
-version = "0.6.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
-dependencies = [
- "getrandom 0.2.16",
+ "rand_core",
]
[[package]]
@@ -3314,12 +3313,6 @@
]
[[package]]
-name = "rle-decode-fast"
-version = "1.0.3"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422"
-
-[[package]]
name = "rustc-demangle"
version = "0.1.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -3342,15 +3335,15 @@
[[package]]
name = "rustix"
-version = "1.0.8"
+version = "1.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8"
+checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e"
dependencies = [
"bitflags",
"errno",
"libc",
"linux-raw-sys",
- "windows-sys 0.60.2",
+ "windows-sys 0.61.0",
]
[[package]]
@@ -3400,9 +3393,9 @@
[[package]]
name = "rustls-webpki"
-version = "0.103.4"
+version = "0.103.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc"
+checksum = "8572f3c2cb9934231157b45499fc41e1f58c589fdfb81a844ba873265e80f8eb"
dependencies = [
"ring",
"rustls-pki-types",
@@ -3432,11 +3425,11 @@
[[package]]
name = "schannel"
-version = "0.1.27"
+version = "0.1.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d"
+checksum = "891d81b926048e76efe18581bf793546b4c0eaf8448d72be8de2bbee5fd166e1"
dependencies = [
- "windows-sys 0.59.0",
+ "windows-sys 0.61.0",
]
[[package]]
@@ -3471,9 +3464,9 @@
[[package]]
name = "security-framework"
-version = "3.3.0"
+version = "3.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "80fb1d92c5028aa318b4b8bd7302a5bfcf48be96a37fc6fc790f806b0004ee0c"
+checksum = "60b369d18893388b345804dc0007963c99b7d665ae71d275812d828c6f089640"
dependencies = [
"bitflags",
"core-foundation",
@@ -3484,9 +3477,9 @@
[[package]]
name = "security-framework-sys"
-version = "2.14.0"
+version = "2.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32"
+checksum = "cc1f0cbffaac4852523ce30d8bd3c5cdc873501d96ff467ca09b6767bb8cd5c0"
dependencies = [
"core-foundation-sys",
"libc",
@@ -3494,11 +3487,12 @@
[[package]]
name = "semver"
-version = "1.0.26"
+version = "1.0.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0"
+checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2"
dependencies = [
"serde",
+ "serde_core",
]
[[package]]
@@ -3509,27 +3503,38 @@
[[package]]
name = "serde"
-version = "1.0.219"
+version = "1.0.225"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6"
+checksum = "fd6c24dee235d0da097043389623fb913daddf92c76e9f5a1db88607a0bcbd1d"
dependencies = [
+ "serde_core",
"serde_derive",
]
[[package]]
name = "serde_bytes"
-version = "0.11.17"
+version = "0.11.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8437fd221bde2d4ca316d61b90e337e9e702b3820b87d63caa9ba6c02bd06d96"
+checksum = "a5d440709e79d88e51ac01c4b72fc6cb7314017bb7da9eeff678aa94c10e3ea8"
dependencies = [
"serde",
+ "serde_core",
+]
+
+[[package]]
+name = "serde_core"
+version = "1.0.225"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "659356f9a0cb1e529b24c01e43ad2bdf520ec4ceaf83047b83ddcc2251f96383"
+dependencies = [
+ "serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.219"
+version = "1.0.225"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00"
+checksum = "0ea936adf78b1f766949a4977b91d2f5595825bd6ec079aa9543ad2685fc4516"
dependencies = [
"proc-macro2",
"quote",
@@ -3549,14 +3554,15 @@
[[package]]
name = "serde_json"
-version = "1.0.143"
+version = "1.0.145"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a"
+checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c"
dependencies = [
"itoa",
"memchr",
"ryu",
"serde",
+ "serde_core",
]
[[package]]
@@ -3645,16 +3651,6 @@
[[package]]
name = "socket2"
-version = "0.5.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678"
-dependencies = [
- "libc",
- "windows-sys 0.52.0",
-]
-
-[[package]]
-name = "socket2"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "233504af464074f9d066d7b5416c5f9b894a5862a6506e306f7b816cdd6f1807"
@@ -3665,9 +3661,9 @@
[[package]]
name = "sqlparser"
-version = "0.55.0"
+version = "0.58.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c4521174166bac1ff04fe16ef4524c70144cd29682a45978978ca3d7f4e0be11"
+checksum = "ec4b661c54b1e4b603b37873a18c59920e4c51ea8ea2cf527d925424dbd4437c"
dependencies = [
"log",
"recursive",
@@ -3711,21 +3707,26 @@
checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
[[package]]
-name = "strum"
-version = "0.26.3"
+name = "strsim"
+version = "0.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06"
+checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
+
+[[package]]
+name = "strum"
+version = "0.27.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "af23d6f6c1a224baef9d3f61e287d2761385a5b88fdab4eb4c6f11aeb54c4bcf"
[[package]]
name = "strum_macros"
-version = "0.26.4"
+version = "0.27.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be"
+checksum = "7695ce3845ea4b33927c055a39dc438a45b059f7c1b3d91d38d10355fb8cbca7"
dependencies = [
"heck",
"proc-macro2",
"quote",
- "rustversion",
"syn 2.0.106",
]
@@ -3805,30 +3806,21 @@
[[package]]
name = "target-lexicon"
-version = "0.13.2"
+version = "0.13.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e502f78cdbb8ba4718f566c418c52bc729126ffd16baee5baa718cf25dd5a69a"
+checksum = "df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c"
[[package]]
name = "tempfile"
-version = "3.21.0"
+version = "3.22.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15b61f8f20e3a6f7e0649d825294eaf317edce30f82cf6026e7e4cb9222a7d1e"
+checksum = "84fa4d11fadde498443cca10fd3ac23c951f0dc59e080e9f4b93d4df4e4eea53"
dependencies = [
"fastrand",
"getrandom 0.3.3",
"once_cell",
"rustix",
- "windows-sys 0.60.2",
-]
-
-[[package]]
-name = "thiserror"
-version = "1.0.69"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
-dependencies = [
- "thiserror-impl 1.0.69",
+ "windows-sys 0.61.0",
]
[[package]]
@@ -3837,18 +3829,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0"
dependencies = [
- "thiserror-impl 2.0.16",
-]
-
-[[package]]
-name = "thiserror-impl"
-version = "1.0.69"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.106",
+ "thiserror-impl",
]
[[package]]
@@ -3920,7 +3901,7 @@
"mio",
"pin-project-lite",
"slab",
- "socket2 0.6.0",
+ "socket2",
"tokio-macros",
"windows-sys 0.59.0",
]
@@ -4058,9 +4039,9 @@
[[package]]
name = "twox-hash"
-version = "2.1.1"
+version = "2.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8b907da542cbced5261bd3256de1b3a1bf340a3d37f93425a07362a1d687de56"
+checksum = "9ea3136b675547379c4bd395ca6b938e5ad3c3d20fad76e7fe85f9e0d011419c"
[[package]]
name = "typed-arena"
@@ -4069,26 +4050,6 @@
checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a"
[[package]]
-name = "typed-builder"
-version = "0.19.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a06fbd5b8de54c5f7c91f6fe4cebb949be2125d7758e630bb58b1d831dbce600"
-dependencies = [
- "typed-builder-macro",
-]
-
-[[package]]
-name = "typed-builder-macro"
-version = "0.19.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f9534daa9fd3ed0bd911d462a37f172228077e7abf18c18a5f67199d959205f8"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.106",
-]
-
-[[package]]
name = "typenum"
version = "1.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4096,9 +4057,9 @@
[[package]]
name = "typewit"
-version = "1.13.0"
+version = "1.14.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4dd91acc53c592cb800c11c83e8e7ee1d48378d05cfa33b5474f5f80c5b236bf"
+checksum = "f8c1ae7cc0fdb8b842d65d127cb981574b0d2b249b74d1c7a2986863dc134f71"
[[package]]
name = "typify"
@@ -4126,7 +4087,7 @@
"serde",
"serde_json",
"syn 2.0.106",
- "thiserror 2.0.16",
+ "thiserror",
"unicode-ident",
]
@@ -4149,9 +4110,9 @@
[[package]]
name = "unicode-ident"
-version = "1.0.18"
+version = "1.0.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512"
+checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d"
[[package]]
name = "unicode-segmentation"
@@ -4203,9 +4164,9 @@
[[package]]
name = "uuid"
-version = "1.18.0"
+version = "1.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f33196643e165781c20a5ead5582283a7dacbb87855d867fbc2df3f81eddc1be"
+checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2"
dependencies = [
"getrandom 0.3.3",
"js-sys",
@@ -4246,30 +4207,40 @@
[[package]]
name = "wasi"
-version = "0.14.2+wasi-0.2.4"
+version = "0.14.7+wasi-0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3"
+checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c"
dependencies = [
- "wit-bindgen-rt",
+ "wasip2",
+]
+
+[[package]]
+name = "wasip2"
+version = "1.0.1+wasi-0.2.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7"
+dependencies = [
+ "wit-bindgen",
]
[[package]]
name = "wasm-bindgen"
-version = "0.2.100"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5"
+checksum = "7e14915cadd45b529bb8d1f343c4ed0ac1de926144b746e2710f9cd05df6603b"
dependencies = [
"cfg-if",
"once_cell",
"rustversion",
"wasm-bindgen-macro",
+ "wasm-bindgen-shared",
]
[[package]]
name = "wasm-bindgen-backend"
-version = "0.2.100"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6"
+checksum = "e28d1ba982ca7923fd01448d5c30c6864d0a14109560296a162f80f305fb93bb"
dependencies = [
"bumpalo",
"log",
@@ -4281,9 +4252,9 @@
[[package]]
name = "wasm-bindgen-futures"
-version = "0.4.50"
+version = "0.4.51"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61"
+checksum = "0ca85039a9b469b38336411d6d6ced91f3fc87109a2a27b0c197663f5144dffe"
dependencies = [
"cfg-if",
"js-sys",
@@ -4294,9 +4265,9 @@
[[package]]
name = "wasm-bindgen-macro"
-version = "0.2.100"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407"
+checksum = "7c3d463ae3eff775b0c45df9da45d68837702ac35af998361e2c84e7c5ec1b0d"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
@@ -4304,9 +4275,9 @@
[[package]]
name = "wasm-bindgen-macro-support"
-version = "0.2.100"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de"
+checksum = "7bb4ce89b08211f923caf51d527662b75bdc9c9c7aab40f86dcb9fb85ac552aa"
dependencies = [
"proc-macro2",
"quote",
@@ -4317,9 +4288,9 @@
[[package]]
name = "wasm-bindgen-shared"
-version = "0.2.100"
+version = "0.2.101"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d"
+checksum = "f143854a3b13752c6950862c906306adb27c7e839f7414cec8fea35beab624c1"
dependencies = [
"unicode-ident",
]
@@ -4339,9 +4310,9 @@
[[package]]
name = "web-sys"
-version = "0.3.77"
+version = "0.3.78"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2"
+checksum = "77e4b637749ff0d92b8fad63aa1f7cff3cbe125fd49c175cd6345e7272638b12"
dependencies = [
"js-sys",
"wasm-bindgen",
@@ -4375,11 +4346,11 @@
[[package]]
name = "winapi-util"
-version = "0.1.10"
+version = "0.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0978bf7171b3d90bac376700cb56d606feb40f251a475a5d6634613564460b22"
+checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22"
dependencies = [
- "windows-sys 0.60.2",
+ "windows-sys 0.61.0",
]
[[package]]
@@ -4390,13 +4361,13 @@
[[package]]
name = "windows-core"
-version = "0.61.2"
+version = "0.62.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3"
+checksum = "57fe7168f7de578d2d8a05b07fd61870d2e73b4020e9f49aa00da8471723497c"
dependencies = [
"windows-implement",
"windows-interface",
- "windows-link",
+ "windows-link 0.2.0",
"windows-result",
"windows-strings",
]
@@ -4430,21 +4401,27 @@
checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a"
[[package]]
-name = "windows-result"
-version = "0.3.4"
+name = "windows-link"
+version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6"
+checksum = "45e46c0661abb7180e7b9c281db115305d49ca1709ab8242adf09666d2173c65"
+
+[[package]]
+name = "windows-result"
+version = "0.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7084dcc306f89883455a206237404d3eaf961e5bd7e0f312f7c91f57eb44167f"
dependencies = [
- "windows-link",
+ "windows-link 0.2.0",
]
[[package]]
name = "windows-strings"
-version = "0.4.2"
+version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57"
+checksum = "7218c655a553b0bed4426cf54b20d7ba363ef543b52d515b3e48d7fd55318dda"
dependencies = [
- "windows-link",
+ "windows-link 0.2.0",
]
[[package]]
@@ -4475,6 +4452,15 @@
]
[[package]]
+name = "windows-sys"
+version = "0.61.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e201184e40b2ede64bc2ea34968b28e33622acdbbf37104f0e4a33f7abe657aa"
+dependencies = [
+ "windows-link 0.2.0",
+]
+
+[[package]]
name = "windows-targets"
version = "0.52.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -4496,7 +4482,7 @@
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91"
dependencies = [
- "windows-link",
+ "windows-link 0.1.3",
"windows_aarch64_gnullvm 0.53.0",
"windows_aarch64_msvc 0.53.0",
"windows_i686_gnu 0.53.0",
@@ -4604,13 +4590,10 @@
checksum = "271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486"
[[package]]
-name = "wit-bindgen-rt"
-version = "0.39.0"
+name = "wit-bindgen"
+version = "0.46.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1"
-dependencies = [
- "bitflags",
-]
+checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59"
[[package]]
name = "writeable"
@@ -4653,18 +4636,18 @@
[[package]]
name = "zerocopy"
-version = "0.8.26"
+version = "0.8.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f"
+checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c"
dependencies = [
"zerocopy-derive",
]
[[package]]
name = "zerocopy-derive"
-version = "0.8.26"
+version = "0.8.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181"
+checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831"
dependencies = [
"proc-macro2",
"quote",
@@ -4733,9 +4716,9 @@
[[package]]
name = "zlib-rs"
-version = "0.5.1"
+version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "626bd9fa9734751fc50d6060752170984d7053f5a39061f524cda68023d4db8a"
+checksum = "2f06ae92f42f5e5c42443fd094f245eb656abf56dd7cce9b8b263236565e00f2"
[[package]]
name = "zstd"
@@ -4757,9 +4740,9 @@
[[package]]
name = "zstd-sys"
-version = "2.0.15+zstd.1.5.7"
+version = "2.0.16+zstd.1.5.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb81183ddd97d0c74cedf1d50d85c8d08c1b8b68ee863bdee9e706eedba1a237"
+checksum = "91e19ebc2adc8f83e43039e79776e3fda8ca919132d68a1fed6a5faca2683748"
dependencies = [
"cc",
"pkg-config",
diff --git a/Cargo.toml b/Cargo.toml
index e51f4dd..8a782c0 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -34,15 +34,15 @@
substrait = ["dep:datafusion-substrait"]
[dependencies]
-tokio = { version = "1.45", features = ["macros", "rt", "rt-multi-thread", "sync"] }
-pyo3 = { version = "0.24", features = ["extension-module", "abi3", "abi3-py39"] }
-pyo3-async-runtimes = { version = "0.24", features = ["tokio-runtime"]}
+tokio = { version = "1.47", features = ["macros", "rt", "rt-multi-thread", "sync"] }
+pyo3 = { version = "0.25", features = ["extension-module", "abi3", "abi3-py39"] }
+pyo3-async-runtimes = { version = "0.25", features = ["tokio-runtime"]}
pyo3-log = "0.12.4"
-arrow = { version = "55.1.0", features = ["pyarrow"] }
-datafusion = { version = "49.0.2", features = ["avro", "unicode_expressions"] }
-datafusion-substrait = { version = "49.0.2", optional = true }
-datafusion-proto = { version = "49.0.2" }
-datafusion-ffi = { version = "49.0.2" }
+arrow = { version = "56", features = ["pyarrow"] }
+datafusion = { version = "50", features = ["avro", "unicode_expressions"] }
+datafusion-substrait = { version = "50", optional = true }
+datafusion-proto = { version = "50" }
+datafusion-ffi = { version = "50" }
prost = "0.13.1" # keep in line with `datafusion-substrait`
uuid = { version = "1.18", features = ["v4"] }
mimalloc = { version = "0.1", optional = true, default-features = false, features = ["local_dynamic_tls"] }
@@ -54,7 +54,7 @@
[build-dependencies]
prost-types = "0.13.1" # keep in line with `datafusion-substrait`
-pyo3-build-config = "0.24"
+pyo3-build-config = "0.25"
[lib]
name = "datafusion_python"
diff --git a/benchmarks/max_cpu_usage.py b/benchmarks/max_cpu_usage.py
index 327c7b7..ae73baa 100644
--- a/benchmarks/max_cpu_usage.py
+++ b/benchmarks/max_cpu_usage.py
@@ -53,7 +53,7 @@
def main(num_rows: int, partitions: int) -> None:
"""Run a simple aggregation after repartitioning.
-
+
This function demonstrates basic partitioning concepts using synthetic data.
Real-world performance will depend on your specific data sources, query types,
and system configuration.
diff --git a/docs/source/user-guide/common-operations/windows.rst b/docs/source/user-guide/common-operations/windows.rst
index 8226685..c8fdea8 100644
--- a/docs/source/user-guide/common-operations/windows.rst
+++ b/docs/source/user-guide/common-operations/windows.rst
@@ -31,7 +31,7 @@
.. ipython:: python
from datafusion import SessionContext
- from datafusion import col
+ from datafusion import col, lit
from datafusion import functions as f
ctx = SessionContext()
@@ -120,16 +120,14 @@
.. ipython:: python
- from datafusion.expr import WindowFrame
+ from datafusion.expr import Window, WindowFrame
df.select(
col('"Name"'),
col('"Speed"'),
- f.window("avg",
- [col('"Speed"')],
- order_by=[col('"Speed"')],
- window_frame=WindowFrame("rows", 2, 0)
- ).alias("Previous Speed")
+ f.avg(col('"Speed"'))
+ .over(Window(window_frame=WindowFrame("rows", 2, 0), order_by=[col('"Speed"')]))
+ .alias("Previous Speed"),
)
Null Treatment
@@ -151,21 +149,27 @@
from datafusion.common import NullTreatment
- df.filter(col('"Type 1"') == lit("Bug")).select(
+ df.filter(col('"Type 1"') == lit("Bug")).select(
'"Name"',
'"Type 2"',
- f.window("last_value", [col('"Type 2"')])
- .window_frame(WindowFrame("rows", None, 0))
- .order_by(col('"Speed"'))
- .null_treatment(NullTreatment.IGNORE_NULLS)
- .build()
- .alias("last_wo_null"),
- f.window("last_value", [col('"Type 2"')])
- .window_frame(WindowFrame("rows", None, 0))
- .order_by(col('"Speed"'))
- .null_treatment(NullTreatment.RESPECT_NULLS)
- .build()
- .alias("last_with_null")
+ f.last_value(col('"Type 2"'))
+ .over(
+ Window(
+ window_frame=WindowFrame("rows", None, 0),
+ order_by=[col('"Speed"')],
+ null_treatment=NullTreatment.IGNORE_NULLS,
+ )
+ )
+ .alias("last_wo_null"),
+ f.last_value(col('"Type 2"'))
+ .over(
+ Window(
+ window_frame=WindowFrame("rows", None, 0),
+ order_by=[col('"Speed"')],
+ null_treatment=NullTreatment.RESPECT_NULLS,
+ )
+ )
+ .alias("last_with_null"),
)
Aggregate Functions
diff --git a/python/datafusion/functions.py b/python/datafusion/functions.py
index 648efef..472a02f 100644
--- a/python/datafusion/functions.py
+++ b/python/datafusion/functions.py
@@ -32,8 +32,14 @@
WindowFrame,
expr_list_to_raw_expr_list,
sort_list_to_raw_sort_list,
+ sort_or_default,
)
+try:
+ from warnings import deprecated # Python 3.13+
+except ImportError:
+ from typing_extensions import deprecated # Python 3.12
+
if TYPE_CHECKING:
from datafusion.context import SessionContext
@@ -426,12 +432,15 @@
return CaseBuilder(f.when(when.expr, then.expr))
+@deprecated("Prefer to call Expr.over() instead")
def window(
name: str,
args: list[Expr],
partition_by: list[Expr] | Expr | None = None,
order_by: list[SortKey] | SortKey | None = None,
window_frame: WindowFrame | None = None,
+ filter: Expr | None = None,
+ distinct: bool = False,
ctx: SessionContext | None = None,
) -> Expr:
"""Creates a new Window function expression.
@@ -451,7 +460,19 @@
order_by_raw = sort_list_to_raw_sort_list(order_by)
window_frame = window_frame.window_frame if window_frame is not None else None
ctx = ctx.ctx if ctx is not None else None
- return Expr(f.window(name, args, partition_by_raw, order_by_raw, window_frame, ctx))
+ filter_raw = filter.expr if filter is not None else None
+ return Expr(
+ f.window(
+ name,
+ args,
+ partition_by=partition_by_raw,
+ order_by=order_by_raw,
+ window_frame=window_frame,
+ ctx=ctx,
+ filter=filter_raw,
+ distinct=distinct,
+ )
+ )
# scalar functions
@@ -1664,7 +1685,7 @@
def approx_percentile_cont(
- expression: Expr,
+ sort_expression: Expr | SortExpr,
percentile: float,
num_centroids: Optional[int] = None,
filter: Optional[Expr] = None,
@@ -1685,21 +1706,26 @@
the options ``order_by``, ``null_treatment``, and ``distinct``.
Args:
- expression: Values for which to find the approximate percentile
+ sort_expression: Values for which to find the approximate percentile
percentile: This must be between 0.0 and 1.0, inclusive
num_centroids: Max bin size for the t-digest algorithm
filter: If provided, only compute against rows for which the filter is True
"""
+ sort_expr_raw = sort_or_default(sort_expression)
filter_raw = filter.expr if filter is not None else None
return Expr(
f.approx_percentile_cont(
- expression.expr, percentile, num_centroids=num_centroids, filter=filter_raw
+ sort_expr_raw, percentile, num_centroids=num_centroids, filter=filter_raw
)
)
def approx_percentile_cont_with_weight(
- expression: Expr, weight: Expr, percentile: float, filter: Optional[Expr] = None
+ sort_expression: Expr | SortExpr,
+ weight: Expr,
+ percentile: float,
+ num_centroids: Optional[int] = None,
+ filter: Optional[Expr] = None,
) -> Expr:
"""Returns the value of the weighted approximate percentile.
@@ -1710,16 +1736,22 @@
the options ``order_by``, ``null_treatment``, and ``distinct``.
Args:
- expression: Values for which to find the approximate percentile
+ sort_expression: Values for which to find the approximate percentile
weight: Relative weight for each of the values in ``expression``
percentile: This must be between 0.0 and 1.0, inclusive
+ num_centroids: Max bin size for the t-digest algorithm
filter: If provided, only compute against rows for which the filter is True
"""
+ sort_expr_raw = sort_or_default(sort_expression)
filter_raw = filter.expr if filter is not None else None
return Expr(
f.approx_percentile_cont_with_weight(
- expression.expr, weight.expr, percentile, filter=filter_raw
+ sort_expr_raw,
+ weight.expr,
+ percentile,
+ num_centroids=num_centroids,
+ filter=filter_raw,
)
)
diff --git a/python/tests/test_aggregation.py b/python/tests/test_aggregation.py
index 96269b1..17767ea 100644
--- a/python/tests/test_aggregation.py
+++ b/python/tests/test_aggregation.py
@@ -131,12 +131,28 @@
(f.approx_median(column("b"), filter=column("a") != 2), pa.array([5]), False),
(f.approx_percentile_cont(column("b"), 0.5), pa.array([4]), False),
(
+ f.approx_percentile_cont(
+ column("b").sort(ascending=True, nulls_first=False),
+ 0.5,
+ num_centroids=2,
+ ),
+ pa.array([4]),
+ False,
+ ),
+ (
f.approx_percentile_cont_with_weight(column("b"), lit(0.6), 0.5),
pa.array([6], type=pa.float64()),
False,
),
(
f.approx_percentile_cont_with_weight(
+ column("b").sort(ascending=False, nulls_first=False), lit(0.6), 0.5
+ ),
+ pa.array([6], type=pa.float64()),
+ False,
+ ),
+ (
+ f.approx_percentile_cont_with_weight(
column("b"), lit(0.6), 0.5, filter=column("a") != lit(3)
),
pa.array([4], type=pa.float64()),
diff --git a/src/common/data_type.rs b/src/common/data_type.rs
index 0e60e7a..4d77433 100644
--- a/src/common/data_type.rs
+++ b/src/common/data_type.rs
@@ -215,6 +215,16 @@
DataType::Dictionary(_, _) => {
Err(PyNotImplementedError::new_err(format!("{arrow_type:?}")))
}
+ DataType::Decimal32(precision, scale) => Ok(DataTypeMap::new(
+ DataType::Decimal32(*precision, *scale),
+ PythonType::Float,
+ SqlType::DECIMAL,
+ )),
+ DataType::Decimal64(precision, scale) => Ok(DataTypeMap::new(
+ DataType::Decimal64(*precision, *scale),
+ PythonType::Float,
+ SqlType::DECIMAL,
+ )),
DataType::Decimal128(precision, scale) => Ok(DataTypeMap::new(
DataType::Decimal128(*precision, *scale),
PythonType::Float,
@@ -549,6 +559,8 @@
DataType::Struct(_) => "Struct",
DataType::Union(_, _) => "Union",
DataType::Dictionary(_, _) => "Dictionary",
+ DataType::Decimal32(_, _) => "Decimal32",
+ DataType::Decimal64(_, _) => "Decimal64",
DataType::Decimal128(_, _) => "Decimal128",
DataType::Decimal256(_, _) => "Decimal256",
DataType::Map(_, _) => "Map",
diff --git a/src/dataframe.rs b/src/dataframe.rs
index 46fba13..5882acf 100644
--- a/src/dataframe.rs
+++ b/src/dataframe.rs
@@ -276,7 +276,6 @@
statistics_enabled,
bloom_filter_fpp,
bloom_filter_ndv,
- ..Default::default()
},
}
}
diff --git a/src/expr/sort_expr.rs b/src/expr/sort_expr.rs
index 79e35d9..e2df6b9 100644
--- a/src/expr/sort_expr.rs
+++ b/src/expr/sort_expr.rs
@@ -23,7 +23,7 @@
#[pyclass(name = "SortExpr", module = "datafusion.expr", subclass)]
#[derive(Clone)]
pub struct PySortExpr {
- sort: SortExpr,
+ pub(crate) sort: SortExpr,
}
impl From<PySortExpr> for SortExpr {
diff --git a/src/functions.rs b/src/functions.rs
index 366c59a..e92cf05 100644
--- a/src/functions.rs
+++ b/src/functions.rs
@@ -319,14 +319,17 @@
}
/// Creates a new Window function expression
+#[allow(clippy::too_many_arguments)]
#[pyfunction]
-#[pyo3(signature = (name, args, partition_by=None, order_by=None, window_frame=None, ctx=None))]
+#[pyo3(signature = (name, args, partition_by=None, order_by=None, window_frame=None, filter=None, distinct=false, ctx=None))]
fn window(
name: &str,
args: Vec<PyExpr>,
partition_by: Option<Vec<PyExpr>>,
order_by: Option<Vec<PySortExpr>>,
window_frame: Option<PyWindowFrame>,
+ filter: Option<PyExpr>,
+ distinct: bool,
ctx: Option<PySessionContext>,
) -> PyResult<PyExpr> {
let fun = find_window_fn(name, ctx)?;
@@ -334,6 +337,7 @@
let window_frame = window_frame
.map(|w| w.into())
.unwrap_or(WindowFrame::new(order_by.as_ref().map(|v| !v.is_empty())));
+ let filter = filter.map(|f| f.expr.into());
Ok(PyExpr {
expr: datafusion::logical_expr::Expr::WindowFunction(Box::new(WindowFunction {
@@ -351,6 +355,8 @@
.map(|x| x.into())
.collect::<Vec<_>>(),
window_frame,
+ filter,
+ distinct,
null_treatment: None,
},
})),
@@ -649,36 +655,36 @@
// aggregate_function!(grouping);
#[pyfunction]
-#[pyo3(signature = (expression, percentile, num_centroids=None, filter=None))]
+#[pyo3(signature = (sort_expression, percentile, num_centroids=None, filter=None))]
pub fn approx_percentile_cont(
- expression: PyExpr,
+ sort_expression: PySortExpr,
percentile: f64,
num_centroids: Option<i64>, // enforces optional arguments at the end, currently
filter: Option<PyExpr>,
) -> PyDataFusionResult<PyExpr> {
- let args = if let Some(num_centroids) = num_centroids {
- vec![expression.expr, lit(percentile), lit(num_centroids)]
- } else {
- vec![expression.expr, lit(percentile)]
- };
- let udaf = functions_aggregate::approx_percentile_cont::approx_percentile_cont_udaf();
- let agg_fn = udaf.call(args);
+ let agg_fn = functions_aggregate::expr_fn::approx_percentile_cont(
+ sort_expression.sort,
+ lit(percentile),
+ num_centroids.map(lit),
+ );
add_builder_fns_to_aggregate(agg_fn, None, filter, None, None)
}
#[pyfunction]
-#[pyo3(signature = (expression, weight, percentile, filter=None))]
+#[pyo3(signature = (sort_expression, weight, percentile, num_centroids=None, filter=None))]
pub fn approx_percentile_cont_with_weight(
- expression: PyExpr,
+ sort_expression: PySortExpr,
weight: PyExpr,
percentile: f64,
+ num_centroids: Option<i64>,
filter: Option<PyExpr>,
) -> PyDataFusionResult<PyExpr> {
let agg_fn = functions_aggregate::expr_fn::approx_percentile_cont_with_weight(
- expression.expr,
+ sort_expression.sort,
weight.expr,
lit(percentile),
+ num_centroids.map(lit),
);
add_builder_fns_to_aggregate(agg_fn, None, filter, None, None)
diff --git a/src/udwf.rs b/src/udwf.rs
index 4fb9891..70a66e3 100644
--- a/src/udwf.rs
+++ b/src/udwf.rs
@@ -33,6 +33,7 @@
use datafusion::arrow::datatypes::DataType;
use datafusion::arrow::pyarrow::{FromPyArrow, PyArrowType, ToPyArrow};
use datafusion::error::{DataFusionError, Result};
+use datafusion::logical_expr::ptr_eq::PtrEq;
use datafusion::logical_expr::{
PartitionEvaluator, PartitionEvaluatorFactory, Signature, Volatility, WindowUDF, WindowUDFImpl,
};
@@ -271,11 +272,12 @@
}
}
+#[derive(Hash, Eq, PartialEq)]
pub struct MultiColumnWindowUDF {
name: String,
signature: Signature,
return_type: DataType,
- partition_evaluator_factory: PartitionEvaluatorFactory,
+ partition_evaluator_factory: PtrEq<PartitionEvaluatorFactory>,
}
impl std::fmt::Debug for MultiColumnWindowUDF {
@@ -303,7 +305,7 @@
name,
signature,
return_type,
- partition_evaluator_factory,
+ partition_evaluator_factory: partition_evaluator_factory.into(),
}
}
}