From e06ff1b451a949f4f171caa743255cace773f6ca Mon Sep 17 00:00:00 2001 From: Baris Palaska Date: Sun, 7 Dec 2025 03:32:04 +0000 Subject: [PATCH 1/7] feat(vx): add --json output flag to inspect and tree commands Adds structured JSON output option to the inspect and tree commands, enabling programmatic access to file metadata for tooling integration. Signed-off-by: Baris Palaska --- vortex-tui/src/inspect.rs | 218 +++++++++++++++++++++++++++++++++++++- vortex-tui/src/tree.rs | 94 ++++++++++++++-- 2 files changed, 300 insertions(+), 12 deletions(-) diff --git a/vortex-tui/src/inspect.rs b/vortex-tui/src/inspect.rs index fc8cedfec34..b182324dd51 100644 --- a/vortex-tui/src/inspect.rs +++ b/vortex-tui/src/inspect.rs @@ -8,11 +8,13 @@ use std::fs::File; use std::io::Read; use std::io::Seek; use std::io::SeekFrom; +use std::path::Path; use std::path::PathBuf; use std::sync::Arc; use flatbuffers::root; use itertools::Itertools; +use serde::Serialize; use vortex::buffer::Alignment; use vortex::buffer::ByteBuffer; use vortex::error::VortexExpect; @@ -38,6 +40,10 @@ pub struct InspectArgs { /// Path to the Vortex file to inspect. pub file: PathBuf, + + /// Output as JSON + #[arg(long, global = true)] + pub json: bool, } /// What component of the Vortex file to inspect. @@ -53,6 +59,90 @@ pub enum InspectMode { Footer, } +/// JSON output structure for inspect command. +#[derive(Serialize)] +pub struct InspectOutput { + /// Path to the inspected file. + pub file_path: String, + /// Size of the file in bytes. + pub file_size: u64, + /// EOF marker information. + pub eof: EofInfoJson, + /// Postscript information (if available). + #[serde(skip_serializing_if = "Option::is_none")] + pub postscript: Option, + /// Footer information (if available). + #[serde(skip_serializing_if = "Option::is_none")] + pub footer: Option, +} + +/// EOF marker information for JSON output. +#[derive(Serialize)] +pub struct EofInfoJson { + /// File format version. + pub version: u16, + /// Current supported version. + pub current_version: u16, + /// Postscript size in bytes. + pub postscript_size: u16, + /// Magic bytes as string. + pub magic_bytes: String, + /// Whether magic bytes are valid. + pub valid_magic: bool, +} + +/// Segment information for JSON output. +#[derive(Serialize)] +pub struct SegmentInfoJson { + /// Offset in file. + pub offset: u64, + /// Length in bytes. + pub length: u32, + /// Alignment requirement. + pub alignment: usize, +} + +/// Postscript information for JSON output. +#[derive(Serialize)] +pub struct PostscriptInfoJson { + /// DType segment info. + pub dtype: Option, + /// Layout segment info. + pub layout: SegmentInfoJson, + /// Statistics segment info. + pub statistics: Option, + /// Footer segment info. + pub footer: SegmentInfoJson, +} + +/// Footer information for JSON output. +#[derive(Serialize)] +pub struct FooterInfoJson { + /// Total number of segments. + pub total_segments: usize, + /// Total data size in bytes. + pub total_data_size: u64, + /// Individual segment details. + pub segments: Vec, +} + +/// Footer segment information for JSON output. +#[derive(Serialize)] +pub struct FooterSegmentJson { + /// Segment index. + pub index: usize, + /// Start offset in file. + pub offset: u64, + /// End offset in file. + pub end_offset: u64, + /// Length in bytes. + pub length: u32, + /// Alignment requirement. + pub alignment: usize, + /// Path in layout tree. + pub path: Option, +} + /// Inspect Vortex file footer and metadata. /// /// # Errors @@ -61,12 +151,134 @@ pub enum InspectMode { pub async fn exec_inspect(session: &VortexSession, args: InspectArgs) -> anyhow::Result<()> { let mut inspector = VortexInspector::new(session, args.file.clone())?; - println!("File: {}", args.file.display()); + let mode = args.mode.unwrap_or(InspectMode::Footer); + + if args.json { + exec_inspect_json(&mut inspector, &args.file, mode).await + } else { + exec_inspect_text(&mut inspector, &args.file, mode).await + } +} + +async fn exec_inspect_json( + inspector: &mut VortexInspector, + file_path: &Path, + mode: InspectMode, +) -> anyhow::Result<()> { + let eof = inspector.read_eof()?; + let eof_json = EofInfoJson { + version: eof.version, + current_version: VERSION, + postscript_size: eof.postscript_size, + magic_bytes: std::str::from_utf8(&eof.magic_bytes) + .unwrap_or("") + .to_string(), + valid_magic: eof.valid_magic, + }; + + let postscript_json = + if matches!(mode, InspectMode::Postscript | InspectMode::Footer) && eof.valid_magic { + inspector + .read_postscript(eof.postscript_size) + .ok() + .map(|ps| PostscriptInfoJson { + dtype: ps.dtype.map(|s| SegmentInfoJson { + offset: s.offset, + length: s.length, + alignment: *s.alignment, + }), + layout: SegmentInfoJson { + offset: ps.layout.offset, + length: ps.layout.length, + alignment: *ps.layout.alignment, + }, + statistics: ps.statistics.map(|s| SegmentInfoJson { + offset: s.offset, + length: s.length, + alignment: *s.alignment, + }), + footer: SegmentInfoJson { + offset: ps.footer.offset, + length: ps.footer.length, + alignment: *ps.footer.alignment, + }, + }) + } else { + None + }; + + let footer_json = + if matches!(mode, InspectMode::Footer) && eof.valid_magic && postscript_json.is_some() { + inspector.read_footer().await.ok().map(|footer| { + let segment_map = footer.segment_map().clone(); + let root_layout = footer.layout().clone(); + + let mut segment_paths: Vec>>> = vec![None; segment_map.len()]; + let mut queue = + VecDeque::<(Vec>, LayoutRef)>::from_iter([(Vec::new(), root_layout)]); + while !queue.is_empty() { + let (path, layout) = queue.pop_front().vortex_expect("queue is not empty"); + for segment in layout.segment_ids() { + segment_paths[*segment as usize] = Some(path.clone()); + } + if let Ok(children) = layout.children() { + for (child_layout, child_name) in + children.into_iter().zip(layout.child_names()) + { + let child_path = path.iter().cloned().chain([child_name]).collect(); + queue.push_back((child_path, child_layout)); + } + } + } + + let segments: Vec = segment_map + .iter() + .enumerate() + .map(|(i, segment)| FooterSegmentJson { + index: i, + offset: segment.offset, + end_offset: segment.offset + segment.length as u64, + length: segment.length, + alignment: *segment.alignment, + path: segment_paths[i] + .as_ref() + .map(|p| p.iter().map(|s| s.as_ref()).collect::>().join(".")), + }) + .collect(); + + FooterInfoJson { + total_segments: segment_map.len(), + total_data_size: segment_map.iter().map(|s| s.length as u64).sum(), + segments, + } + }) + } else { + None + }; + + let output = InspectOutput { + file_path: file_path.display().to_string(), + file_size: inspector.file_size, + eof: eof_json, + postscript: postscript_json, + footer: footer_json, + }; + + let json_output = serde_json::to_string_pretty(&output)?; + println!("{json_output}"); + + Ok(()) +} + +async fn exec_inspect_text( + inspector: &mut VortexInspector, + file_path: &Path, + mode: InspectMode, +) -> anyhow::Result<()> { + println!("File: {}", file_path.display()); println!("Size: {} bytes", inspector.file_size); println!(); - let mode = args.mode.unwrap_or(InspectMode::Footer); - match mode { InspectMode::Eof => { let eof = inspector.read_eof()?; diff --git a/vortex-tui/src/tree.rs b/vortex-tui/src/tree.rs index 8ba63383db0..ebf923572f4 100644 --- a/vortex-tui/src/tree.rs +++ b/vortex-tui/src/tree.rs @@ -6,9 +6,11 @@ use std::path::Path; use std::path::PathBuf; +use serde::Serialize; use vortex::array::stream::ArrayStreamExt; use vortex::error::VortexResult; use vortex::file::OpenOptionsSessionExt; +use vortex::layout::LayoutRef; use vortex::session::VortexSession; /// Command-line arguments for the tree command. @@ -26,6 +28,9 @@ pub enum TreeMode { Array { /// Path to the Vortex file file: PathBuf, + /// Output as JSON + #[arg(long)] + json: bool, }, /// Display the layout tree structure (metadata only, no array loading) Layout { @@ -34,9 +39,39 @@ pub enum TreeMode { /// Show additional metadata information including buffer sizes (requires fetching segments) #[arg(short, long)] verbose: bool, + /// Output as JSON + #[arg(long)] + json: bool, }, } +/// Layout tree node for JSON output. +#[derive(Serialize)] +pub struct LayoutTreeNode { + /// Encoding name. + pub encoding: String, + /// Data type. + pub dtype: String, + /// Number of rows. + pub row_count: u64, + /// Metadata size in bytes. + pub metadata_bytes: usize, + /// Segment IDs referenced by this layout. + pub segment_ids: Vec, + /// Child layouts. + pub children: Vec, +} + +/// Layout tree node with name for JSON output. +#[derive(Serialize)] +pub struct LayoutTreeNodeWithName { + /// Child name. + pub name: String, + /// Child node data. + #[serde(flatten)] + pub node: LayoutTreeNode, +} + /// Print tree views of a Vortex file (layout tree or array tree). /// /// # Errors @@ -44,14 +79,18 @@ pub enum TreeMode { /// Returns an error if the file cannot be opened or read. pub async fn exec_tree(session: &VortexSession, args: TreeArgs) -> VortexResult<()> { match args.mode { - TreeMode::Array { file } => exec_array_tree(session, &file).await?, - TreeMode::Layout { file, verbose } => exec_layout_tree(session, &file, verbose).await?, + TreeMode::Array { file, json } => exec_array_tree(session, &file, json).await?, + TreeMode::Layout { + file, + verbose, + json, + } => exec_layout_tree(session, &file, verbose, json).await?, } Ok(()) } -async fn exec_array_tree(session: &VortexSession, file: &Path) -> VortexResult<()> { +async fn exec_array_tree(session: &VortexSession, file: &Path, _json: bool) -> VortexResult<()> { let full = session .open_options() .open(file) @@ -61,26 +100,63 @@ async fn exec_array_tree(session: &VortexSession, file: &Path) -> VortexResult<( .read_all() .await?; + // TODO: Add JSON output support for array tree println!("{}", full.display_tree()); Ok(()) } -async fn exec_layout_tree(session: &VortexSession, file: &Path, verbose: bool) -> VortexResult<()> { +async fn exec_layout_tree( + session: &VortexSession, + file: &Path, + verbose: bool, + json: bool, +) -> VortexResult<()> { let vxf = session.open_options().open(file).await?; + let footer = vxf.footer(); - if verbose { + if json { + let tree = layout_to_json(footer.layout().clone())?; + let json_output = serde_json::to_string_pretty(&tree) + .map_err(|e| vortex::error::vortex_err!("Failed to serialize JSON: {e}"))?; + println!("{json_output}"); + } else if verbose { // In verbose mode, fetch segments to display buffer sizes. - let output = vxf - .footer() + let output = footer .layout() .display_tree_with_segments(vxf.segment_source()) .await?; - println!("{}", output); + println!("{output}"); } else { // In non-verbose mode, just display layout tree without fetching segments. - println!("{}", vxf.footer().layout().display_tree()); + println!("{}", footer.layout().display_tree()); } Ok(()) } + +fn layout_to_json(layout: LayoutRef) -> VortexResult { + let children = layout.children()?; + let child_names: Vec<_> = layout.child_names().collect(); + + let children_json: Vec = children + .into_iter() + .zip(child_names.into_iter()) + .map(|(child, name)| { + let node = layout_to_json(child)?; + Ok(LayoutTreeNodeWithName { + name: name.to_string(), + node, + }) + }) + .collect::>>()?; + + Ok(LayoutTreeNode { + encoding: layout.encoding().to_string(), + dtype: layout.dtype().to_string(), + row_count: layout.row_count(), + metadata_bytes: layout.metadata().len(), + segment_ids: layout.segment_ids().iter().map(|s| **s).collect(), + children: children_json, + }) +} From 298b03e866414aa9ddd1ae4ecaf567a8e23af307 Mon Sep 17 00:00:00 2001 From: Baris Palaska Date: Sun, 7 Dec 2025 03:33:11 +0000 Subject: [PATCH 2/7] feat(vx): add segments command for displaying segment information Adds a new 'vx segments' command that outputs structured JSON information about all segments in a Vortex file, including byte offsets, row ranges, and alignment information. The segment tree logic is shared with the TUI. Signed-off-by: Baris Palaska --- vortex-tui/src/lib.rs | 8 +- vortex-tui/src/main.rs | 1 - vortex-tui/src/segment_tree.rs | 141 +++++++++++++++++++++++++++++++++ vortex-tui/src/segments.rs | 113 ++++++++++++++++++++++++++ 4 files changed, 261 insertions(+), 2 deletions(-) create mode 100644 vortex-tui/src/segment_tree.rs create mode 100644 vortex-tui/src/segments.rs diff --git a/vortex-tui/src/lib.rs b/vortex-tui/src/lib.rs index 1cb303b67b5..14088889e98 100644 --- a/vortex-tui/src/lib.rs +++ b/vortex-tui/src/lib.rs @@ -32,6 +32,8 @@ use vortex::session::VortexSession; pub mod browse; pub mod convert; pub mod inspect; +pub mod segment_tree; +pub mod segments; pub mod tree; #[derive(clap::Parser)] @@ -51,18 +53,21 @@ enum Commands { Browse { file: PathBuf }, /// Inspect Vortex file footer and metadata Inspect(inspect::InspectArgs), + /// Display segment information for a Vortex file + Segments(segments::SegmentsArgs), } impl Commands { fn file_path(&self) -> &PathBuf { match self { Commands::Tree(args) => match &args.mode { - tree::TreeMode::Array { file } => file, + tree::TreeMode::Array { file, .. } => file, tree::TreeMode::Layout { file, .. } => file, }, Commands::Browse { file } => file, Commands::Convert(flags) => &flags.file, Commands::Inspect(args) => &args.file, + Commands::Segments(args) => &args.file, } } } @@ -95,6 +100,7 @@ pub async fn launch(session: &VortexSession) -> anyhow::Result<()> { Commands::Convert(flags) => convert::exec_convert(session, flags).await?, Commands::Browse { file } => browse::exec_tui(session, file).await?, Commands::Inspect(args) => inspect::exec_inspect(session, args).await?, + Commands::Segments(args) => segments::exec_segments(session, args).await?, }; Ok(()) diff --git a/vortex-tui/src/main.rs b/vortex-tui/src/main.rs index d813ff4dc4f..1ef1041c1a2 100644 --- a/vortex-tui/src/main.rs +++ b/vortex-tui/src/main.rs @@ -1,7 +1,6 @@ // SPDX-License-Identifier: Apache-2.0 // SPDX-FileCopyrightText: Copyright the Vortex contributors -use vortex::VortexSessionDefault; use vortex::io::session::RuntimeSessionExt; use vortex::session::VortexSession; use vortex_tui::launch; diff --git a/vortex-tui/src/segment_tree.rs b/vortex-tui/src/segment_tree.rs new file mode 100644 index 00000000000..79dd419722d --- /dev/null +++ b/vortex-tui/src/segment_tree.rs @@ -0,0 +1,141 @@ +// SPDX-License-Identifier: Apache-2.0 +// SPDX-FileCopyrightText: Copyright the Vortex contributors + +//! Shared segment tree collection logic used by both the TUI browse view and the CLI segments command. + +use std::sync::Arc; + +use vortex::dtype::FieldName; +use vortex::error::VortexResult; +use vortex::file::SegmentSpec; +use vortex::layout::Layout; +use vortex::layout::LayoutChildType; +use vortex::utils::aliases::hash_map::HashMap; + +/// Information about a single segment for display purposes. +pub struct SegmentDisplay { + /// Name of the segment (e.g., "data", "[0]", "zones") + pub name: FieldName, + /// The underlying segment specification + pub spec: SegmentSpec, + /// Row offset within the file + pub row_offset: u64, + /// Number of rows in this segment + pub row_count: u64, +} + +/// A tree of segments organized by field name. +pub struct SegmentTree { + /// Map from field name to list of segments for that field + pub segments: HashMap>, + /// Ordered list of field names (columns) in display order + pub segment_ordering: Vec, +} + +/// Collect segment tree from a layout and segment map. +pub fn collect_segment_tree( + root_layout: &dyn Layout, + segments: &Arc<[SegmentSpec]>, +) -> SegmentTree { + let mut tree = SegmentTree { + segments: HashMap::new(), + segment_ordering: Vec::new(), + }; + // Ignore errors during traversal - we want to collect as much as possible + drop(segments_by_name_impl( + root_layout, + None, + None, + Some(0), + segments, + &mut tree, + )); + tree +} + +fn segments_by_name_impl( + root: &dyn Layout, + group_name: Option, + name: Option, + row_offset: Option, + segments: &Arc<[SegmentSpec]>, + segment_tree: &mut SegmentTree, +) -> VortexResult<()> { + // Recurse into children + for (child, child_type) in root.children()?.into_iter().zip(root.child_types()) { + match child_type { + LayoutChildType::Transparent(sub_name) => segments_by_name_impl( + child.as_ref(), + group_name.clone(), + Some( + name.as_ref() + .map(|n| format!("{n}.{sub_name}").into()) + .unwrap_or_else(|| sub_name.into()), + ), + row_offset, + segments, + segment_tree, + )?, + LayoutChildType::Auxiliary(aux_name) => segments_by_name_impl( + child.as_ref(), + group_name.clone(), + Some( + name.as_ref() + .map(|n| format!("{n}.{aux_name}").into()) + .unwrap_or_else(|| aux_name.into()), + ), + Some(0), + segments, + segment_tree, + )?, + LayoutChildType::Chunk((idx, chunk_row_offset)) => segments_by_name_impl( + child.as_ref(), + group_name.clone(), + Some( + name.as_ref() + .map(|n| format!("{n}.[{idx}]")) + .unwrap_or_else(|| format!("[{idx}]")) + .into(), + ), + // Compute absolute row offset. + Some(chunk_row_offset + row_offset.unwrap_or(0)), + segments, + segment_tree, + )?, + LayoutChildType::Field(field_name) => { + // Step into a new group name + let new_group_name = group_name + .as_ref() + .map(|n| format!("{n}.{field_name}").into()) + .unwrap_or_else(|| field_name); + segment_tree.segment_ordering.push(new_group_name.clone()); + + segments_by_name_impl( + child.as_ref(), + Some(new_group_name), + None, + row_offset, + segments, + segment_tree, + )? + } + } + } + + let current_segments = segment_tree + .segments + .entry(group_name.unwrap_or_else(|| FieldName::from("root"))) + .or_default(); + + for segment_id in root.segment_ids() { + let segment_spec = segments[*segment_id as usize].clone(); + current_segments.push(SegmentDisplay { + name: name.clone().unwrap_or_else(|| "".into()), + spec: segment_spec, + row_count: root.row_count(), + row_offset: row_offset.unwrap_or(0), + }) + } + + Ok(()) +} diff --git a/vortex-tui/src/segments.rs b/vortex-tui/src/segments.rs new file mode 100644 index 00000000000..2a4bbc9ca1b --- /dev/null +++ b/vortex-tui/src/segments.rs @@ -0,0 +1,113 @@ +// SPDX-License-Identifier: Apache-2.0 +// SPDX-FileCopyrightText: Copyright the Vortex contributors + +//! Display segment information for Vortex files. + +use std::path::PathBuf; + +use serde::Serialize; +use vortex::error::VortexResult; +use vortex::file::OpenOptionsSessionExt; +use vortex::session::VortexSession; + +use crate::segment_tree::collect_segment_tree; + +/// Command-line arguments for the segments command. +#[derive(Debug, clap::Parser)] +pub struct SegmentsArgs { + /// Path to the Vortex file + pub file: PathBuf, +} + +#[derive(Serialize)] +struct SegmentsOutput { + /// Columns in display order + columns: Vec, +} + +#[derive(Serialize)] +struct ColumnInfo { + /// Field name (column header) + name: String, + /// Segments within this column + segments: Vec, +} + +#[derive(Serialize)] +struct SegmentInfo { + /// Segment name (e.g., "[0]", "data", etc.) + name: String, + /// Row range start + row_offset: u64, + /// Number of rows + row_count: u64, + /// Byte offset in file + byte_offset: u64, + /// Length in bytes + byte_length: u32, + /// Alignment requirement + alignment: usize, + /// Gap from previous segment end + byte_gap: u64, +} + +/// Display segment information for a Vortex file. +/// +/// # Errors +/// +/// Returns an error if the file cannot be opened or read. +pub async fn exec_segments(session: &VortexSession, args: SegmentsArgs) -> VortexResult<()> { + let vxf = session.open_options().open(args.file).await?; + + let footer = vxf.footer(); + let mut segment_tree = collect_segment_tree(footer.layout().as_ref(), footer.segment_map()); + + // Convert to output format + let columns: Vec = segment_tree + .segment_ordering + .iter() + .filter_map(|name| { + let mut segments = segment_tree.segments.remove(name)?; + + // Sort by byte offset + segments.sort_by(|a, b| a.spec.offset.cmp(&b.spec.offset)); + + // Convert to output format, computing byte gaps + let mut current_offset = 0u64; + let segment_infos: Vec = segments + .into_iter() + .map(|seg| { + let byte_gap = if current_offset == 0 { + 0 + } else { + seg.spec.offset.saturating_sub(current_offset) + }; + current_offset = seg.spec.offset + seg.spec.length as u64; + + SegmentInfo { + name: seg.name.to_string(), + row_offset: seg.row_offset, + row_count: seg.row_count, + byte_offset: seg.spec.offset, + byte_length: seg.spec.length, + alignment: *seg.spec.alignment, + byte_gap, + } + }) + .collect(); + + Some(ColumnInfo { + name: name.to_string(), + segments: segment_infos, + }) + }) + .collect(); + + let output = SegmentsOutput { columns }; + + let json_output = serde_json::to_string_pretty(&output) + .map_err(|e| vortex::error::vortex_err!("Failed to serialize JSON: {e}"))?; + println!("{json_output}"); + + Ok(()) +} From a9519b448a8d8299d452599b935691254110293c Mon Sep 17 00:00:00 2001 From: Baris Palaska Date: Sun, 7 Dec 2025 03:36:04 +0000 Subject: [PATCH 3/7] feat(vx): add SQL query command with DataFusion support Adds a new 'vx query' command that executes SQL queries against Vortex files using DataFusion. The table is available as 'data' in queries. Outputs structured JSON with schema and row data for tooling integration. Signed-off-by: Baris Palaska --- Cargo.lock | 4039 ++++++++------------------- vortex-tui/Cargo.toml | 6 + vortex-tui/src/datafusion_helper.rs | 232 ++ vortex-tui/src/lib.rs | 6 + vortex-tui/src/query.rs | 121 + 5 files changed, 1506 insertions(+), 2898 deletions(-) create mode 100644 vortex-tui/src/datafusion_helper.rs create mode 100644 vortex-tui/src/query.rs diff --git a/Cargo.lock b/Cargo.lock index a2936c9bdb5..eabeaa7df5c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -19,17 +19,6 @@ dependencies = [ "cpufeatures", ] -[[package]] -name = "ahash" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" -dependencies = [ - "getrandom 0.2.16", - "once_cell", - "version_check", -] - [[package]] name = "ahash" version = "0.8.12" @@ -46,9 +35,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.1.4" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" dependencies = [ "memchr", ] @@ -115,22 +104,22 @@ dependencies = [ [[package]] name = "anstyle-query" -version = "1.1.5" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc" +checksum = "9e231f6134f61b71076a3eab506c379d4f36122f2af15a9ff04415ea4c3339e2" dependencies = [ - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] name = "anstyle-wincon" -version = "3.0.11" +version = "3.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d" +checksum = "3e0633414522a32ffaac8ac6cc8f748e090c5717661fddeea04219e2344f5f2a" dependencies = [ "anstyle", "once_cell_polyfill", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -159,12 +148,9 @@ dependencies = [ [[package]] name = "arc-swap" -version = "1.8.0" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d03449bb8ca2cc2ef70869af31463d1ae5ccc8fa3e334b307203fbf815207e" -dependencies = [ - "rustversion", -] +checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457" [[package]] name = "arcref" @@ -190,40 +176,19 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e833808ff2d94ed40d9379848a950d995043c7fb3e81a30b383f4c6033821cc" dependencies = [ - "arrow-arith 56.2.0", - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-cast 56.2.0", - "arrow-csv 56.2.0", - "arrow-data 56.2.0", - "arrow-ipc 56.2.0", - "arrow-json 56.2.0", - "arrow-ord 56.2.0", - "arrow-row 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", - "arrow-string 56.2.0", -] - -[[package]] -name = "arrow" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb372a7cbcac02a35d3fb7b3fc1f969ec078e871f9bb899bf00a2e1809bec8a3" -dependencies = [ - "arrow-arith 57.1.0", - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-cast 57.1.0", - "arrow-csv 57.1.0", - "arrow-data 57.1.0", - "arrow-ipc 57.1.0", - "arrow-json 57.1.0", - "arrow-ord 57.1.0", - "arrow-row 57.1.0", - "arrow-schema 57.1.0", - "arrow-select 57.1.0", - "arrow-string 57.1.0", + "arrow-arith", + "arrow-array", + "arrow-buffer", + "arrow-cast", + "arrow-csv", + "arrow-data", + "arrow-ipc", + "arrow-json", + "arrow-ord", + "arrow-row", + "arrow-schema", + "arrow-select", + "arrow-string", ] [[package]] @@ -232,38 +197,24 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad08897b81588f60ba983e3ca39bda2b179bdd84dced378e7df81a5313802ef8" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", "chrono", "num", ] -[[package]] -name = "arrow-arith" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f377dcd19e440174596d83deb49cd724886d91060c07fec4f67014ef9d54049" -dependencies = [ - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-data 57.1.0", - "arrow-schema 57.1.0", - "chrono", - "num-traits", -] - [[package]] name = "arrow-array" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8548ca7c070d8db9ce7aa43f37393e4bfcf3f2d3681df278490772fd1673d08d" dependencies = [ - "ahash 0.8.12", - "arrow-buffer 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", + "ahash", + "arrow-buffer", + "arrow-data", + "arrow-schema", "chrono", "chrono-tz", "half", @@ -271,25 +222,6 @@ dependencies = [ "num", ] -[[package]] -name = "arrow-array" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a23eaff85a44e9fa914660fb0d0bb00b79c4a3d888b5334adb3ea4330c84f002" -dependencies = [ - "ahash 0.8.12", - "arrow-buffer 57.1.0", - "arrow-data 57.1.0", - "arrow-schema 57.1.0", - "chrono", - "chrono-tz", - "half", - "hashbrown 0.16.1", - "num-complex", - "num-integer", - "num-traits", -] - [[package]] name = "arrow-buffer" version = "56.2.0" @@ -301,29 +233,17 @@ dependencies = [ "num", ] -[[package]] -name = "arrow-buffer" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2819d893750cb3380ab31ebdc8c68874dd4429f90fd09180f3c93538bd21626" -dependencies = [ - "bytes", - "half", - "num-bigint", - "num-traits", -] - [[package]] name = "arrow-cast" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "919418a0681298d3a77d1a315f625916cb5678ad0d74b9c60108eb15fd083023" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", + "arrow-select", "atoi", "base64", "chrono", @@ -334,52 +254,15 @@ dependencies = [ "ryu", ] -[[package]] -name = "arrow-cast" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d131abb183f80c450d4591dc784f8d7750c50c6e2bc3fcaad148afc8361271" -dependencies = [ - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-data 57.1.0", - "arrow-ord 57.1.0", - "arrow-schema 57.1.0", - "arrow-select 57.1.0", - "atoi", - "base64", - "chrono", - "comfy-table", - "half", - "lexical-core", - "num-traits", - "ryu", -] - [[package]] name = "arrow-csv" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa9bf02705b5cf762b6f764c65f04ae9082c7cfc4e96e0c33548ee3f67012eb" dependencies = [ - "arrow-array 56.2.0", - "arrow-cast 56.2.0", - "arrow-schema 56.2.0", - "chrono", - "csv", - "csv-core", - "regex", -] - -[[package]] -name = "arrow-csv" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2275877a0e5e7e7c76954669366c2aa1a829e340ab1f612e647507860906fb6b" -dependencies = [ - "arrow-array 57.1.0", - "arrow-cast 57.1.0", - "arrow-schema 57.1.0", + "arrow-array", + "arrow-cast", + "arrow-schema", "chrono", "csv", "csv-core", @@ -392,67 +275,39 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a5c64fff1d142f833d78897a772f2e5b55b36cb3e6320376f0961ab0db7bd6d0" dependencies = [ - "arrow-buffer 56.2.0", - "arrow-schema 56.2.0", + "arrow-buffer", + "arrow-schema", "half", "num", ] -[[package]] -name = "arrow-data" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05738f3d42cb922b9096f7786f606fcb8669260c2640df8490533bb2fa38c9d3" -dependencies = [ - "arrow-buffer 57.1.0", - "arrow-schema 57.1.0", - "half", - "num-integer", - "num-traits", -] - [[package]] name = "arrow-ipc" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d3594dcddccc7f20fd069bc8e9828ce37220372680ff638c5e00dea427d88f5" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", + "arrow-select", "flatbuffers", - "lz4_flex 0.11.5", + "lz4_flex", "zstd", ] -[[package]] -name = "arrow-ipc" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d09446e8076c4b3f235603d9ea7c5494e73d441b01cd61fb33d7254c11964b3" -dependencies = [ - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-data 57.1.0", - "arrow-schema 57.1.0", - "arrow-select 57.1.0", - "flatbuffers", - "lz4_flex 0.12.0", -] - [[package]] name = "arrow-json" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "88cf36502b64a127dc659e3b305f1d993a544eab0d48cce704424e62074dc04b" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-cast 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", + "arrow-array", + "arrow-buffer", + "arrow-cast", + "arrow-data", + "arrow-schema", "chrono", "half", "indexmap", @@ -464,54 +319,17 @@ dependencies = [ "simdutf8", ] -[[package]] -name = "arrow-json" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "371ffd66fa77f71d7628c63f209c9ca5341081051aa32f9c8020feb0def787c0" -dependencies = [ - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-cast 57.1.0", - "arrow-data 57.1.0", - "arrow-schema 57.1.0", - "chrono", - "half", - "indexmap", - "itoa", - "lexical-core", - "memchr", - "num-traits", - "ryu", - "serde_core", - "serde_json", - "simdutf8", -] - [[package]] name = "arrow-ord" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c8f82583eb4f8d84d4ee55fd1cb306720cddead7596edce95b50ee418edf66f" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", -] - -[[package]] -name = "arrow-ord" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbc94fc7adec5d1ba9e8cd1b1e8d6f72423b33fe978bf1f46d970fafab787521" -dependencies = [ - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-data 57.1.0", - "arrow-schema 57.1.0", - "arrow-select 57.1.0", + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", + "arrow-select", ] [[package]] @@ -520,23 +338,10 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d07ba24522229d9085031df6b94605e0f4b26e099fb7cdeec37abd941a73753" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", - "half", -] - -[[package]] -name = "arrow-row" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "169676f317157dc079cc5def6354d16db63d8861d61046d2f3883268ced6f99f" -dependencies = [ - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-data 57.1.0", - "arrow-schema 57.1.0", + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", "half", ] @@ -546,84 +351,42 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3aa9e59c611ebc291c28582077ef25c97f1975383f1479b12f3b9ffee2ffabe" dependencies = [ - "bitflags 2.10.0", + "bitflags", "serde", "serde_json", ] -[[package]] -name = "arrow-schema" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d27609cd7dd45f006abae27995c2729ef6f4b9361cde1ddd019dc31a5aa017e0" -dependencies = [ - "bitflags 2.10.0", - "serde_core", - "serde_json", -] - [[package]] name = "arrow-select" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c41dbbd1e97bfcaee4fcb30e29105fb2c75e4d82ae4de70b792a5d3f66b2e7a" dependencies = [ - "ahash 0.8.12", - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", + "ahash", + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", "num", ] -[[package]] -name = "arrow-select" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae980d021879ea119dd6e2a13912d81e64abed372d53163e804dfe84639d8010" -dependencies = [ - "ahash 0.8.12", - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-data 57.1.0", - "arrow-schema 57.1.0", - "num-traits", -] - [[package]] name = "arrow-string" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53f5183c150fbc619eede22b861ea7c0eebed8eaac0333eaa7f6da5205fd504d" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", + "arrow-select", "memchr", "num", "regex", "regex-syntax", ] -[[package]] -name = "arrow-string" -version = "57.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf35e8ef49dcf0c5f6d175edee6b8af7b45611805333129c541a8b89a0fc0534" -dependencies = [ - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-data 57.1.0", - "arrow-schema 57.1.0", - "arrow-select 57.1.0", - "memchr", - "num-traits", - "regex", - "regex-syntax", -] - [[package]] name = "async-channel" version = "2.5.0" @@ -651,9 +414,9 @@ dependencies = [ [[package]] name = "async-compression" -version = "0.4.36" +version = "0.4.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98ec5f6c2f8bc326c994cb9e241cc257ddaba9afa8555a43cffbb5dd86efaa37" +checksum = "5a89bce6054c720275ac2432fbba080a66a2106a44a1b804553930ca6909f4e0" dependencies = [ "compression-codecs", "compression-core", @@ -753,7 +516,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -793,7 +556,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -810,7 +573,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -831,15 +594,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "atomic" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a89cbf775b137e9b968e67227ef7f775587cde3fd31b0d8599dbd0f598a48340" -dependencies = [ - "bytemuck", -] - [[package]] name = "atomic-waker" version = "1.1.2" @@ -854,9 +608,9 @@ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "aws-config" -version = "1.8.12" +version = "1.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96571e6996817bf3d58f6b569e4b9fd2e9d2fcf9f7424eed07b2ce9bb87535e5" +checksum = "37cf2b6af2a95a20e266782b4f76f1a5e12bf412a9db2de9c1e9123b9d8c0ad8" dependencies = [ "aws-credential-types", "aws-runtime", @@ -884,9 +638,9 @@ dependencies = [ [[package]] name = "aws-credential-types" -version = "1.2.11" +version = "1.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3cd362783681b15d136480ad555a099e82ecd8e2d10a841e14dfd0078d67fee3" +checksum = "faf26925f4a5b59eb76722b63c2892b1d70d06fa053c72e4a100ec308c1d47bc" dependencies = [ "aws-smithy-async", "aws-smithy-runtime-api", @@ -896,9 +650,9 @@ dependencies = [ [[package]] name = "aws-lc-rs" -version = "1.15.2" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a88aab2464f1f25453baa7a07c84c5b7684e274054ba06817f382357f77a288" +checksum = "94b8ff6c09cd57b16da53641caa860168b88c172a5ee163b0288d3d6eea12786" dependencies = [ "aws-lc-sys", "zeroize", @@ -906,10 +660,11 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.35.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b45afffdee1e7c9126814751f88dddc747f41d91da16c9551a0f1e8a11e788a1" +checksum = "0e44d16778acaf6a9ec9899b92cebd65580b83f685446bf2e1f5d3d732f99dcd" dependencies = [ + "bindgen", "cc", "cmake", "dunce", @@ -918,9 +673,9 @@ dependencies = [ [[package]] name = "aws-runtime" -version = "1.5.17" +version = "1.5.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d81b5b2898f6798ad58f484856768bca817e3cd9de0974c24ae0f1113fe88f1b" +checksum = "bfa006bb32360ed90ac51203feafb9d02e3d21046e1fd3a450a404b90ea73e5d" dependencies = [ "aws-credential-types", "aws-sigv4", @@ -942,9 +697,9 @@ dependencies = [ [[package]] name = "aws-sdk-sso" -version = "1.91.0" +version = "1.86.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ee6402a36f27b52fe67661c6732d684b2635152b676aa2babbfb5204f99115d" +checksum = "4a0abbfab841446cce6e87af853a3ba2cc1bc9afcd3f3550dd556c43d434c86d" dependencies = [ "aws-credential-types", "aws-runtime", @@ -964,9 +719,9 @@ dependencies = [ [[package]] name = "aws-sdk-ssooidc" -version = "1.93.0" +version = "1.88.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a45a7f750bbd170ee3677671ad782d90b894548f4e4ae168302c57ec9de5cb3e" +checksum = "9a68d675582afea0e94d38b6ca9c5aaae4ca14f1d36faa6edb19b42e687e70d7" dependencies = [ "aws-credential-types", "aws-runtime", @@ -986,9 +741,9 @@ dependencies = [ [[package]] name = "aws-sdk-sts" -version = "1.95.0" +version = "1.88.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55542378e419558e6b1f398ca70adb0b2088077e79ad9f14eb09441f2f7b2164" +checksum = "d30990923f4f675523c51eb1c0dec9b752fb267b36a61e83cbc219c9d86da715" dependencies = [ "aws-credential-types", "aws-runtime", @@ -1009,9 +764,9 @@ dependencies = [ [[package]] name = "aws-sigv4" -version = "1.3.7" +version = "1.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69e523e1c4e8e7e8ff219d732988e22bfeae8a1cafdbe6d9eca1546fa080be7c" +checksum = "bffc03068fbb9c8dd5ce1c6fb240678a5cffb86fb2b7b1985c999c4b83c8df68" dependencies = [ "aws-credential-types", "aws-smithy-http", @@ -1031,9 +786,9 @@ dependencies = [ [[package]] name = "aws-smithy-async" -version = "1.2.7" +version = "1.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ee19095c7c4dda59f1697d028ce704c24b2d33c6718790c7f1d5a3015b4107c" +checksum = "127fcfad33b7dfc531141fda7e1c402ac65f88aca5511a4d31e2e3d2cd01ce9c" dependencies = [ "futures-util", "pin-project-lite", @@ -1042,16 +797,15 @@ dependencies = [ [[package]] name = "aws-smithy-http" -version = "0.62.6" +version = "0.62.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "826141069295752372f8203c17f28e30c464d22899a43a0c9fd9c458d469c88b" +checksum = "3feafd437c763db26aa04e0cc7591185d0961e64c61885bece0fb9d50ceac671" dependencies = [ "aws-smithy-runtime-api", "aws-smithy-types", "bytes", "bytes-utils", "futures-core", - "futures-util", "http 0.2.12", "http 1.3.1", "http-body 0.4.6", @@ -1063,9 +817,9 @@ dependencies = [ [[package]] name = "aws-smithy-http-client" -version = "1.1.5" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59e62db736db19c488966c8d787f52e6270be565727236fd5579eaa301e7bc4a" +checksum = "1053b5e587e6fa40ce5a79ea27957b04ba660baa02b28b7436f64850152234f1" dependencies = [ "aws-smithy-async", "aws-smithy-runtime-api", @@ -1087,27 +841,27 @@ dependencies = [ [[package]] name = "aws-smithy-json" -version = "0.61.9" +version = "0.61.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49fa1213db31ac95288d981476f78d05d9cbb0353d22cdf3472cc05bb02f6551" +checksum = "cff418fc8ec5cadf8173b10125f05c2e7e1d46771406187b2c878557d4503390" dependencies = [ "aws-smithy-types", ] [[package]] name = "aws-smithy-observability" -version = "0.1.5" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17f616c3f2260612fe44cede278bafa18e73e6479c4e393e2c4518cf2a9a228a" +checksum = "2d1881b1ea6d313f9890710d65c158bdab6fb08c91ea825f74c1c8c357baf4cc" dependencies = [ "aws-smithy-runtime-api", ] [[package]] name = "aws-smithy-query" -version = "0.60.9" +version = "0.60.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae5d689cf437eae90460e944a58b5668530d433b4ff85789e69d2f2a556e057d" +checksum = "d28a63441360c477465f80c7abac3b9c4d075ca638f982e605b7dc2a2c7156c9" dependencies = [ "aws-smithy-types", "urlencoding", @@ -1115,9 +869,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime" -version = "1.9.5" +version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a392db6c583ea4a912538afb86b7be7c5d8887d91604f50eb55c262ee1b4a5f5" +checksum = "40ab99739082da5347660c556689256438defae3bcefd66c52b095905730e404" dependencies = [ "aws-smithy-async", "aws-smithy-http", @@ -1139,9 +893,9 @@ dependencies = [ [[package]] name = "aws-smithy-runtime-api" -version = "1.9.3" +version = "1.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab0d43d899f9e508300e587bf582ba54c27a452dd0a9ea294690669138ae14a2" +checksum = "3683c5b152d2ad753607179ed71988e8cfd52964443b4f74fd8e552d0bbfeb46" dependencies = [ "aws-smithy-async", "aws-smithy-types", @@ -1156,9 +910,9 @@ dependencies = [ [[package]] name = "aws-smithy-types" -version = "1.3.5" +version = "1.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "905cb13a9895626d49cf2ced759b062d913834c7482c38e49557eac4e6193f01" +checksum = "9f5b3a7486f6690ba25952cabf1e7d75e34d69eaff5081904a47bc79074d6457" dependencies = [ "base64-simd", "bytes", @@ -1179,18 +933,18 @@ dependencies = [ [[package]] name = "aws-smithy-xml" -version = "0.60.13" +version = "0.60.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11b2f670422ff42bf7065031e72b45bc52a3508bd089f743ea90731ca2b6ea57" +checksum = "e9c34127e8c624bc2999f3b657e749c1393bedc9cd97b92a804db8ced4d2e163" dependencies = [ "xmlparser", ] [[package]] name = "aws-types" -version = "1.3.11" +version = "1.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d980627d2dd7bfc32a3c025685a033eeab8d365cc840c631ef59d1b8f428164" +checksum = "e2fd329bf0e901ff3f60425691410c69094dc2a1f34b331f37bfc4e9ac1565a1" dependencies = [ "aws-credential-types", "aws-smithy-async", @@ -1202,9 +956,9 @@ dependencies = [ [[package]] name = "backon" -version = "1.6.0" +version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cffb0e931875b666fc4fcb20fee52e9bbd1ef836fd9e9e04ec21555f9f85f7ef" +checksum = "592277618714fbcecda9a02ba7a8781f319d26532a88553bbacc77ba5d2b3a8d" dependencies = [ "fastrand", "gloo-timers", @@ -1229,21 +983,85 @@ dependencies = [ [[package]] name = "base64ct" -version = "1.8.2" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d809780667f4410e7c41b07f52439b94d2bdf8528eeedc287fa38d3b7f95d82" +checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba" + +[[package]] +name = "bench-vortex" +version = "0.1.0" +dependencies = [ + "anyhow", + "arrow-array", + "arrow-cast", + "arrow-schema", + "arrow-select", + "async-trait", + "bytes", + "bzip2", + "clap", + "datafusion", + "datafusion-common", + "datafusion-physical-plan", + "dirs", + "erased-serde", + "futures", + "glob", + "humansize", + "indicatif", + "itertools 0.14.0", + "lance", + "lance-encoding", + "log", + "mimalloc", + "noodles-bgzf", + "noodles-vcf", + "object_store", + "opentelemetry", + "opentelemetry-otlp", + "opentelemetry_sdk", + "parking_lot", + "parquet", + "paste", + "rand 0.9.2", + "rayon", + "regex", + "reqwest", + "serde", + "serde_json", + "similar", + "sysinfo", + "tabled", + "tar", + "target-lexicon", + "tempfile", + "tokio", + "tokio-stream", + "tokio-util", + "tpchgen", + "tpchgen-arrow", + "tracing", + "tracing-perfetto", + "tracing-subscriber", + "url", + "uuid", + "vortex", + "vortex-datafusion", + "vortex-duckdb", + "xshell", +] [[package]] name = "better_io" -version = "0.2.0" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef0a3155e943e341e557863e69a708999c94ede624e37865c8e2a91b94efa78f" +checksum = "92fde17f91e7ba10b2a07f8dff29530b77144894bc6ae850fbc66e1276af0d28" [[package]] name = "bigdecimal" -version = "0.4.10" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d6867f1565b3aad85681f1015055b087fcfd840d6aeee6eee7f2da317603695" +checksum = "1a22f228ab7a1b23027ccc6c350b72868017af7ea8356fbdf19f8d991c690013" dependencies = [ "autocfg", "libm", @@ -1258,7 +1076,7 @@ version = "0.72.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895" dependencies = [ - "bitflags 2.10.0", + "bitflags", "cexpr", "clang-sys", "itertools 0.13.0", @@ -1269,24 +1087,9 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.110", -] - -[[package]] -name = "bit-set" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" -dependencies = [ - "bit-vec 0.6.3", + "syn 2.0.106", ] -[[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - [[package]] name = "bit-vec" version = "0.8.0" @@ -1295,15 +1098,9 @@ checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" [[package]] name = "bitflags" -version = "1.3.2" +version = "2.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" +checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" [[package]] name = "bitpacking" @@ -1401,48 +1198,25 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] -name = "borsh" -version = "1.6.0" +name = "brotli" +version = "8.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1da5ab77c1437701eeff7c88d968729e7766172279eab0676857b3d63af7a6f" +checksum = "4bd8b9603c7aa97359dbd97ecf258968c95f3adddd6db2f7e7a5bef101c84560" dependencies = [ - "borsh-derive", - "cfg_aliases", + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", ] [[package]] -name = "borsh-derive" -version = "1.6.0" +name = "brotli-decompressor" +version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0686c856aa6aac0c4498f936d7d6a02df690f614c03e4d906d1018062b5c5e2c" -dependencies = [ - "once_cell", - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.110", -] - -[[package]] -name = "brotli" -version = "8.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bd8b9603c7aa97359dbd97ecf258968c95f3adddd6db2f7e7a5bef101c84560" -dependencies = [ - "alloc-no-stdlib", - "alloc-stdlib", - "brotli-decompressor", -] - -[[package]] -name = "brotli-decompressor" -version = "5.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "874bb8112abecc98cbd6d81ea4fa7e94fb9449648c93cc89aa40c81c24d7de03" +checksum = "874bb8112abecc98cbd6d81ea4fa7e94fb9449648c93cc89aa40c81c24d7de03" dependencies = [ "alloc-no-stdlib", "alloc-stdlib", @@ -1450,9 +1224,9 @@ dependencies = [ [[package]] name = "bstr" -version = "1.12.1" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63044e1ae8e69f3b5a92c736ca6269b8d12fa7efe39bf34ddb06d102cf0e2cab" +checksum = "234113d19d0d7d613b40e86fb654acf958910802bcceab913a4f9e7cda03b1a4" dependencies = [ "memchr", "regex-automata", @@ -1471,40 +1245,6 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" -[[package]] -name = "byte-unit" -version = "5.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c6d47a4e2961fb8721bcfc54feae6455f2f64e7054f9bc67e875f0e77f4c58d" -dependencies = [ - "rust_decimal", - "schemars", - "serde", - "utf8-width", -] - -[[package]] -name = "bytecheck" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" -dependencies = [ - "bytecheck_derive", - "ptr_meta", - "simdutf8", -] - -[[package]] -name = "bytecheck_derive" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "bytecount" version = "0.6.9" @@ -1548,6 +1288,12 @@ dependencies = [ "libbz2-rs-sys", ] +[[package]] +name = "cassowary" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53" + [[package]] name = "castaway" version = "0.2.4" @@ -1580,16 +1326,16 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.110", + "syn 2.0.106", "tempfile", "toml", ] [[package]] name = "cc" -version = "1.2.51" +version = "1.2.48" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a0aeaff4ff1a90589618835a598e545176939b97874f7abc7851caa0618f203" +checksum = "c481bdbf0ed3b892f6f806287d72acd515b352a4ec27a208489b8c1bc839633a" dependencies = [ "find-msvc-tools", "jobserver", @@ -1651,7 +1397,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6139a8597ed92cf816dfb33f5dd6cf0bb93a6adc938f11039f371bc5bcd26c3" dependencies = [ "chrono", - "phf 0.12.1", + "phf", ] [[package]] @@ -1677,9 +1423,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.54" +version = "4.5.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6e6ff9dcd79cff5cd969a17a545d79e84ab086e444102a591e288a8aa3ce394" +checksum = "c9e340e012a1bf4935f5282ed1436d1489548e8f72308207ea5df0e23d2d03f8" dependencies = [ "clap_builder", "clap_derive", @@ -1687,9 +1433,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.54" +version = "4.5.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa42cf4d2b7a41bc8f663a7cab4031ebafa1bf3875705bfaf8466dc60ab52c00" +checksum = "d76b5d13eaa18c901fd2f7fca939fefe3a0727a953561fefdf3b2922b8569d00" dependencies = [ "anstream", "anstyle", @@ -1707,20 +1453,20 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] name = "clap_lex" -version = "0.7.6" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d" +checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675" [[package]] name = "cmake" -version = "0.1.57" +version = "0.1.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75443c44cd6b379beb8c5b45d85d0773baf31cce901fe7bb252f4eff3008ef7d" +checksum = "e7caa3f9de89ddbe2c607f4101924c5abec803763ae9534e4f4d7d8f84aa81f0" dependencies = [ "cc", ] @@ -1733,14 +1479,14 @@ checksum = "af491d569909a7e4dee0ad7db7f5341fef5c614d5b8ec8cf765732aba3cff681" dependencies = [ "serde", "termcolor", - "unicode-width", + "unicode-width 0.1.14", ] [[package]] name = "codspeed" -version = "4.2.1" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f0d98d97fd75ca4489a1a0997820a6521531085e7c8a98941bd0e1264d567dd" +checksum = "c3b847e05a34be5c38f3f2a5052178a3bd32e6b5702f3ea775efde95c483a539" dependencies = [ "anyhow", "cc", @@ -1748,7 +1494,7 @@ dependencies = [ "getrandom 0.2.16", "glob", "libc", - "nix 0.30.1", + "nix", "serde", "serde_json", "statrs", @@ -1756,9 +1502,9 @@ dependencies = [ [[package]] name = "codspeed-divan-compat" -version = "4.2.1" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4179ec5518e79efcd02ed50aa483ff807902e43c85146e87fff58b9cffc06078" +checksum = "f0f0e9fe5eaa39995ec35e46407f7154346cc25bd1300c64c21636f3d00cb2cc" dependencies = [ "clap", "codspeed", @@ -1769,23 +1515,23 @@ dependencies = [ [[package]] name = "codspeed-divan-compat-macros" -version = "4.2.1" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15eaee97aa5bceb32cc683fe25cd6373b7fc48baee5c12471996b58b6ddf0d7c" +checksum = "88c8babf2a40fd2206a2e030cf020d0d58144cd56e1dc408bfba02cdefb08b4f" dependencies = [ "divan-macros", "itertools 0.14.0", "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] name = "codspeed-divan-compat-walltime" -version = "4.2.1" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c38671153aa73be075d6019cab5ab1e6b31d36644067c1ac4cef73bf9723ce33" +checksum = "7f26092328e12a36704ffc552f379c6405dd94d3149970b79b22d371717c2aae" dependencies = [ "cfg-if", "clap", @@ -1809,7 +1555,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c" dependencies = [ "lazy_static", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -1830,14 +1576,14 @@ checksum = "e0d05af1e006a2407bedef5af410552494ce5be9090444dbbcb57258c1af3d56" dependencies = [ "strum 0.26.3", "strum_macros 0.26.4", - "unicode-width", + "unicode-width 0.2.0", ] [[package]] name = "compact_str" -version = "0.9.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb1325a1cece981e8a296ab8f0f9b63ae357bd0784a9faaf548cc7b480707a" +checksum = "3b79c4069c6cad78e2e0cdfcbd26275770669fb39fd308a752dc110e83b9af32" dependencies = [ "castaway", "cfg-if", @@ -1847,34 +1593,11 @@ dependencies = [ "static_assertions", ] -[[package]] -name = "compress-bench" -version = "0.1.0" -dependencies = [ - "anyhow", - "arrow-array 57.1.0", - "arrow-schema 57.1.0", - "async-trait", - "bytes", - "clap", - "futures", - "indicatif", - "itertools 0.14.0", - "lance-bench", - "parquet 57.0.0", - "regex", - "serde", - "tokio", - "tracing", - "vortex", - "vortex-bench", -] - [[package]] name = "compression-codecs" -version = "0.4.35" +version = "0.4.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0f7ac3e5b97fdce45e8922fb05cae2c37f7bbd63d30dd94821dacfd8f3f2bf2" +checksum = "ef8a506ec4b81c460798f572caead636d57d3d7e940f998160f52bd254bf2d23" dependencies = [ "compression-core", "flate2", @@ -1883,9 +1606,9 @@ dependencies = [ [[package]] name = "compression-core" -version = "0.4.31" +version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75984efb6ed102a0d42db99afb6c1948f0380d1d91808d5529916e6c08b49d8d" +checksum = "e47641d3deaf41fb1538ac1f54735925e275eaf3bf4d55c81b137fba797e5cbb" [[package]] name = "concurrent-queue" @@ -1923,7 +1646,7 @@ dependencies = [ "encode_unicode", "libc", "once_cell", - "unicode-width", + "unicode-width 0.2.0", "windows-sys 0.61.2", ] @@ -2031,9 +1754,9 @@ dependencies = [ [[package]] name = "crc" -version = "3.4.0" +version = "3.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5eb8a2a1cd12ab0d987a5d5e825195d372001a4094a0376319d5a0ad71c1ba0d" +checksum = "9710d3b3739c2e349eb44fe848ad0b7c8cb1e42bd87ee49371df2f7acaf3e675" dependencies = [ "crc-catalog", ] @@ -2105,13 +1828,29 @@ version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" +[[package]] +name = "crossterm" +version = "0.28.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6" +dependencies = [ + "bitflags", + "crossterm_winapi", + "mio", + "parking_lot", + "rustix 0.38.44", + "signal-hook", + "signal-hook-mio", + "winapi", +] + [[package]] name = "crossterm" version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b" dependencies = [ - "bitflags 2.10.0", + "bitflags", "crossterm_winapi", "derive_more", "document-features", @@ -2140,50 +1879,40 @@ checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" [[package]] name = "crypto-common" -version = "0.1.7" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ "generic-array", "typenum", ] -[[package]] -name = "csscolorparser" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb2a7d3066da2de787b7f032c736763eb7ae5d355f81a68bab2675a96008b0bf" -dependencies = [ - "lab", - "phf 0.11.3", -] - [[package]] name = "csv" -version = "1.4.0" +version = "1.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52cd9d68cf7efc6ddfaaee42e7288d3a99d613d4b50f76ce9827ae0c6e14f938" +checksum = "acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf" dependencies = [ "csv-core", "itoa", "ryu", - "serde_core", + "serde", ] [[package]] name = "csv-core" -version = "0.1.13" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "704a3c26996a80471189265814dbc2c257598b96b8a7feae2d31ace646bb9782" +checksum = "7d02f3b0da4c6504f86e9cd789d8dbafab48c2321be74e9987593de5a894d93d" dependencies = [ "memchr", ] [[package]] name = "cudarc" -version = "0.18.2" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3aa12038120eb13347a6ae2ffab1d34efe78150125108627fd85044dd4d6ff1e" +checksum = "ef0cfc5e22a6b6f7d04ee45b0151232ca236ede8ca3534210fd4072bdead0d60" dependencies = [ "half", "libloading 0.8.9", @@ -2191,9 +1920,9 @@ dependencies = [ [[package]] name = "cxx" -version = "1.0.192" +version = "1.0.190" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbda285ba6e5866529faf76352bdf73801d9b44a6308d7cd58ca2379f378e994" +checksum = "a7620f6cfc4dcca21f2b085b7a890e16c60fd66f560cd69ee60594908dc72ab1" dependencies = [ "cc", "cxx-build", @@ -2206,9 +1935,9 @@ dependencies = [ [[package]] name = "cxx-build" -version = "1.0.192" +version = "1.0.190" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af9efde466c5d532d57efd92f861da3bdb7f61e369128ce8b4c3fe0c9de4fa4d" +checksum = "7a9bc1a22964ff6a355fbec24cf68266a0ed28f8b84c0864c386474ea3d0e479" dependencies = [ "cc", "codespan-reporting", @@ -2216,39 +1945,39 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] name = "cxxbridge-cmd" -version = "1.0.192" +version = "1.0.190" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3efb93799095bccd4f763ca07997dc39a69e5e61ab52d2c407d4988d21ce144d" +checksum = "b1f29a879d35f7906e3c9b77d7a1005a6a0787d330c09dfe4ffb5f617728cb44" dependencies = [ "clap", "codespan-reporting", "indexmap", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] name = "cxxbridge-flags" -version = "1.0.192" +version = "1.0.190" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3092010228026e143b32a4463ed9fa8f86dca266af4bf5f3b2a26e113dbe4e45" +checksum = "d67109015f93f683e364085aa6489a5b2118b4a40058482101d699936a7836d6" [[package]] name = "cxxbridge-macro" -version = "1.0.192" +version = "1.0.190" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31d72ebfcd351ae404fb00ff378dfc9571827a00722c9e735c9181aec320ba0a" +checksum = "d187e019e7b05a1f3e69a8396b70800ee867aa9fc2ab972761173ccee03742df" dependencies = [ "indexmap", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -2282,7 +2011,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -2296,7 +2025,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -2307,7 +2036,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core 0.20.11", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -2318,7 +2047,7 @@ checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ "darling_core 0.21.3", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -2341,167 +2070,69 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2af15bb3c6ffa33011ef579f6b0bcbe7c26584688bd6c994f548e44df67f011a" dependencies = [ - "arrow 56.2.0", - "arrow-ipc 56.2.0", - "arrow-schema 56.2.0", - "async-trait", - "bytes", - "chrono", - "datafusion-catalog 50.3.0", - "datafusion-catalog-listing 50.3.0", - "datafusion-common 50.3.0", - "datafusion-common-runtime 50.3.0", - "datafusion-datasource 50.3.0", - "datafusion-datasource-csv 50.3.0", - "datafusion-datasource-json 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-expr-common 50.3.0", - "datafusion-functions 50.3.0", - "datafusion-functions-aggregate 50.3.0", - "datafusion-functions-nested 50.3.0", - "datafusion-functions-table 50.3.0", - "datafusion-functions-window 50.3.0", - "datafusion-optimizer 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-adapter 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "datafusion-physical-optimizer 50.3.0", - "datafusion-physical-plan 50.3.0", - "datafusion-session 50.3.0", - "datafusion-sql 50.3.0", - "futures", - "itertools 0.14.0", - "log", - "object_store", - "parking_lot", - "rand 0.9.2", - "regex", - "sqlparser 0.58.0", - "tempfile", - "tokio", - "url", - "uuid", -] - -[[package]] -name = "datafusion" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ba7cb113e9c0bedf9e9765926031e132fa05a1b09ba6e93a6d1a4d7044457b8" -dependencies = [ - "arrow 57.1.0", - "arrow-schema 57.1.0", + "arrow", + "arrow-ipc", + "arrow-schema", "async-trait", "bytes", "chrono", - "datafusion-catalog 51.0.0", - "datafusion-catalog-listing 51.0.0", - "datafusion-common 51.0.0", - "datafusion-common-runtime 51.0.0", - "datafusion-datasource 51.0.0", - "datafusion-datasource-arrow", - "datafusion-datasource-csv 51.0.0", - "datafusion-datasource-json 51.0.0", + "datafusion-catalog", + "datafusion-catalog-listing", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-datasource", + "datafusion-datasource-csv", + "datafusion-datasource-json", "datafusion-datasource-parquet", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-expr-common 51.0.0", - "datafusion-functions 51.0.0", - "datafusion-functions-aggregate 51.0.0", - "datafusion-functions-nested 51.0.0", - "datafusion-functions-table 51.0.0", - "datafusion-functions-window 51.0.0", - "datafusion-optimizer 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-adapter 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-optimizer 51.0.0", - "datafusion-physical-plan 51.0.0", - "datafusion-session 51.0.0", - "datafusion-sql 51.0.0", + "datafusion-execution", + "datafusion-expr", + "datafusion-expr-common", + "datafusion-functions", + "datafusion-functions-aggregate", + "datafusion-functions-nested", + "datafusion-functions-table", + "datafusion-functions-window", + "datafusion-optimizer", + "datafusion-physical-expr", + "datafusion-physical-expr-adapter", + "datafusion-physical-expr-common", + "datafusion-physical-optimizer", + "datafusion-physical-plan", + "datafusion-session", + "datafusion-sql", "futures", "itertools 0.14.0", "log", "object_store", "parking_lot", - "parquet 57.0.0", + "parquet", "rand 0.9.2", "regex", - "rstest", - "sqlparser 0.59.0", + "sqlparser", "tempfile", "tokio", "url", "uuid", ] -[[package]] -name = "datafusion-bench" -version = "0.1.0" -dependencies = [ - "anyhow", - "arrow-ipc 57.1.0", - "clap", - "datafusion 51.0.0", - "datafusion-common 51.0.0", - "datafusion-physical-plan 51.0.0", - "futures", - "get_dir", - "itertools 0.14.0", - "object_store", - "opentelemetry", - "opentelemetry-otlp", - "opentelemetry_sdk", - "tokio", - "url", - "vortex-bench", - "vortex-datafusion", -] - [[package]] name = "datafusion-catalog" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "187622262ad8f7d16d3be9202b4c1e0116f1c9aa387e5074245538b755261621" dependencies = [ - "arrow 56.2.0", - "async-trait", - "dashmap", - "datafusion-common 50.3.0", - "datafusion-common-runtime 50.3.0", - "datafusion-datasource 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-plan 50.3.0", - "datafusion-session 50.3.0", - "datafusion-sql 50.3.0", - "futures", - "itertools 0.14.0", - "log", - "object_store", - "parking_lot", - "tokio", -] - -[[package]] -name = "datafusion-catalog" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66a3a799f914a59b1ea343906a0486f17061f39509af74e874a866428951130d" -dependencies = [ - "arrow 57.1.0", + "arrow", "async-trait", "dashmap", - "datafusion-common 51.0.0", - "datafusion-common-runtime 51.0.0", - "datafusion-datasource 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-plan 51.0.0", - "datafusion-session 51.0.0", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-datasource", + "datafusion-execution", + "datafusion-expr", + "datafusion-physical-expr", + "datafusion-physical-plan", + "datafusion-session", + "datafusion-sql", "futures", "itertools 0.14.0", "log", @@ -2516,42 +2147,18 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9657314f0a32efd0382b9a46fdeb2d233273ece64baa68a7c45f5a192daf0f83" dependencies = [ - "arrow 56.2.0", - "async-trait", - "datafusion-catalog 50.3.0", - "datafusion-common 50.3.0", - "datafusion-datasource 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "datafusion-physical-plan 50.3.0", - "datafusion-session 50.3.0", - "futures", - "log", - "object_store", - "tokio", -] - -[[package]] -name = "datafusion-catalog-listing" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6db1b113c80d7a0febcd901476a57aef378e717c54517a163ed51417d87621b0" -dependencies = [ - "arrow 57.1.0", + "arrow", "async-trait", - "datafusion-catalog 51.0.0", - "datafusion-common 51.0.0", - "datafusion-datasource 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-adapter 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-plan 51.0.0", + "datafusion-catalog", + "datafusion-common", + "datafusion-datasource", + "datafusion-execution", + "datafusion-expr", + "datafusion-physical-expr", + "datafusion-physical-expr-common", + "datafusion-physical-plan", + "datafusion-session", "futures", - "itertools 0.14.0", "log", "object_store", "tokio", @@ -2563,9 +2170,9 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a83760d9a13122d025fbdb1d5d5aaf93dd9ada5e90ea229add92aa30898b2d1" dependencies = [ - "ahash 0.8.12", - "arrow 56.2.0", - "arrow-ipc 56.2.0", + "ahash", + "arrow", + "arrow-ipc", "base64", "chrono", "half", @@ -2574,31 +2181,9 @@ dependencies = [ "libc", "log", "object_store", + "parquet", "paste", - "sqlparser 0.58.0", - "tokio", - "web-time", -] - -[[package]] -name = "datafusion-common" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c10f7659e96127d25e8366be7c8be4109595d6a2c3eac70421f380a7006a1b0" -dependencies = [ - "ahash 0.8.12", - "arrow 57.1.0", - "arrow-ipc 57.1.0", - "chrono", - "half", - "hashbrown 0.14.5", - "indexmap", - "libc", - "log", - "object_store", - "parquet 57.0.0", - "paste", - "sqlparser 0.59.0", + "sqlparser", "tokio", "web-time", ] @@ -2614,141 +2199,56 @@ dependencies = [ "tokio", ] -[[package]] -name = "datafusion-common-runtime" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b92065bbc6532c6651e2f7dd30b55cba0c7a14f860c7e1d15f165c41a1868d95" -dependencies = [ - "futures", - "log", - "tokio", -] - [[package]] name = "datafusion-datasource" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7256c9cb27a78709dd42d0c80f0178494637209cac6e29d5c93edd09b6721b86" dependencies = [ - "arrow 56.2.0", + "arrow", "async-trait", "bytes", "chrono", - "datafusion-common 50.3.0", - "datafusion-common-runtime 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-adapter 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "datafusion-physical-plan 50.3.0", - "datafusion-session 50.3.0", - "futures", - "glob", - "itertools 0.14.0", - "log", - "object_store", - "rand 0.9.2", - "tokio", - "url", -] - -[[package]] -name = "datafusion-datasource" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fde13794244bc7581cd82f6fff217068ed79cdc344cafe4ab2c3a1c3510b38d6" -dependencies = [ - "arrow 57.1.0", - "async-trait", - "bytes", - "chrono", - "datafusion-common 51.0.0", - "datafusion-common-runtime 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-adapter 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-plan 51.0.0", - "datafusion-session 51.0.0", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-execution", + "datafusion-expr", + "datafusion-physical-expr", + "datafusion-physical-expr-adapter", + "datafusion-physical-expr-common", + "datafusion-physical-plan", + "datafusion-session", "futures", "glob", "itertools 0.14.0", "log", "object_store", + "parquet", "rand 0.9.2", + "tempfile", "tokio", "url", ] -[[package]] -name = "datafusion-datasource-arrow" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "804fa9b4ecf3157982021770617200ef7c1b2979d57bec9044748314775a9aea" -dependencies = [ - "arrow 57.1.0", - "arrow-ipc 57.1.0", - "async-trait", - "bytes", - "datafusion-common 51.0.0", - "datafusion-common-runtime 51.0.0", - "datafusion-datasource 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-plan 51.0.0", - "datafusion-session 51.0.0", - "futures", - "itertools 0.14.0", - "object_store", - "tokio", -] - [[package]] name = "datafusion-datasource-csv" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64533a90f78e1684bfb113d200b540f18f268134622d7c96bbebc91354d04825" dependencies = [ - "arrow 56.2.0", - "async-trait", - "bytes", - "datafusion-catalog 50.3.0", - "datafusion-common 50.3.0", - "datafusion-common-runtime 50.3.0", - "datafusion-datasource 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "datafusion-physical-plan 50.3.0", - "datafusion-session 50.3.0", - "futures", - "object_store", - "regex", - "tokio", -] - -[[package]] -name = "datafusion-datasource-csv" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61a1641a40b259bab38131c5e6f48fac0717bedb7dc93690e604142a849e0568" -dependencies = [ - "arrow 57.1.0", + "arrow", "async-trait", "bytes", - "datafusion-common 51.0.0", - "datafusion-common-runtime 51.0.0", - "datafusion-datasource 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-plan 51.0.0", - "datafusion-session 51.0.0", + "datafusion-catalog", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-datasource", + "datafusion-execution", + "datafusion-expr", + "datafusion-physical-expr", + "datafusion-physical-expr-common", + "datafusion-physical-plan", + "datafusion-session", "futures", "object_store", "regex", @@ -2761,74 +2261,55 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d7ebeb12c77df0aacad26f21b0d033aeede423a64b2b352f53048a75bf1d6e6" dependencies = [ - "arrow 56.2.0", + "arrow", "async-trait", "bytes", - "datafusion-catalog 50.3.0", - "datafusion-common 50.3.0", - "datafusion-common-runtime 50.3.0", - "datafusion-datasource 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "datafusion-physical-plan 50.3.0", - "datafusion-session 50.3.0", + "datafusion-catalog", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-datasource", + "datafusion-execution", + "datafusion-expr", + "datafusion-physical-expr", + "datafusion-physical-expr-common", + "datafusion-physical-plan", + "datafusion-session", "futures", "object_store", "serde_json", "tokio", ] -[[package]] -name = "datafusion-datasource-json" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adeacdb00c1d37271176f8fb6a1d8ce096baba16ea7a4b2671840c5c9c64fe85" -dependencies = [ - "arrow 57.1.0", - "async-trait", - "bytes", - "datafusion-common 51.0.0", - "datafusion-common-runtime 51.0.0", - "datafusion-datasource 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-plan 51.0.0", - "datafusion-session 51.0.0", - "futures", - "object_store", - "tokio", -] - [[package]] name = "datafusion-datasource-parquet" -version = "51.0.0" +version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43d0b60ffd66f28bfb026565d62b0a6cbc416da09814766a3797bba7d85a3cd9" +checksum = "09e783c4c7d7faa1199af2df4761c68530634521b176a8d1331ddbc5a5c75133" dependencies = [ - "arrow 57.1.0", + "arrow", "async-trait", "bytes", - "datafusion-common 51.0.0", - "datafusion-common-runtime 51.0.0", - "datafusion-datasource 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-functions-aggregate-common 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-adapter 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-plan 51.0.0", - "datafusion-pruning 51.0.0", - "datafusion-session 51.0.0", + "datafusion-catalog", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-datasource", + "datafusion-execution", + "datafusion-expr", + "datafusion-functions-aggregate", + "datafusion-physical-expr", + "datafusion-physical-expr-adapter", + "datafusion-physical-expr-common", + "datafusion-physical-optimizer", + "datafusion-physical-plan", + "datafusion-pruning", + "datafusion-session", "futures", "itertools 0.14.0", "log", "object_store", "parking_lot", - "parquet 57.0.0", + "parquet", + "rand 0.9.2", "tokio", ] @@ -2838,43 +2319,17 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "99ee6b1d9a80d13f9deb2291f45c07044b8e62fb540dbde2453a18be17a36429" -[[package]] -name = "datafusion-doc" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b99e13947667b36ad713549237362afb054b2d8f8cc447751e23ec61202db07" - [[package]] name = "datafusion-execution" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4cec0a57653bec7b933fb248d3ffa3fa3ab3bd33bd140dc917f714ac036f531" dependencies = [ - "arrow 56.2.0", + "arrow", "async-trait", "dashmap", - "datafusion-common 50.3.0", - "datafusion-expr 50.3.0", - "futures", - "log", - "object_store", - "parking_lot", - "rand 0.9.2", - "tempfile", - "url", -] - -[[package]] -name = "datafusion-execution" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63695643190679037bc946ad46a263b62016931547bf119859c511f7ff2f5178" -dependencies = [ - "arrow 57.1.0", - "async-trait", - "dashmap", - "datafusion-common 51.0.0", - "datafusion-expr 51.0.0", + "datafusion-common", + "datafusion-expr", "futures", "log", "object_store", @@ -2890,41 +2345,19 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef76910bdca909722586389156d0aa4da4020e1631994d50fadd8ad4b1aa05fe" dependencies = [ - "arrow 56.2.0", - "async-trait", - "chrono", - "datafusion-common 50.3.0", - "datafusion-doc 50.3.0", - "datafusion-expr-common 50.3.0", - "datafusion-functions-aggregate-common 50.3.0", - "datafusion-functions-window-common 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "indexmap", - "paste", - "serde_json", - "sqlparser 0.58.0", -] - -[[package]] -name = "datafusion-expr" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9a4787cbf5feb1ab351f789063398f67654a6df75c4d37d7f637dc96f951a91" -dependencies = [ - "arrow 57.1.0", + "arrow", "async-trait", "chrono", - "datafusion-common 51.0.0", - "datafusion-doc 51.0.0", - "datafusion-expr-common 51.0.0", - "datafusion-functions-aggregate-common 51.0.0", - "datafusion-functions-window-common 51.0.0", - "datafusion-physical-expr-common 51.0.0", + "datafusion-common", + "datafusion-doc", + "datafusion-expr-common", + "datafusion-functions-aggregate-common", + "datafusion-functions-window-common", + "datafusion-physical-expr-common", "indexmap", - "itertools 0.14.0", "paste", "serde_json", - "sqlparser 0.59.0", + "sqlparser", ] [[package]] @@ -2933,21 +2366,8 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d155ccbda29591ca71a1344dd6bed26c65a4438072b400df9db59447f590bb6" dependencies = [ - "arrow 56.2.0", - "datafusion-common 50.3.0", - "indexmap", - "itertools 0.14.0", - "paste", -] - -[[package]] -name = "datafusion-expr-common" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ce2fb1b8c15c9ac45b0863c30b268c69dc9ee7a1ee13ecf5d067738338173dc" -dependencies = [ - "arrow 57.1.0", - "datafusion-common 51.0.0", + "arrow", + "datafusion-common", "indexmap", "itertools 0.14.0", "paste", @@ -2959,18 +2379,18 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7de2782136bd6014670fd84fe3b0ca3b3e4106c96403c3ae05c0598577139977" dependencies = [ - "arrow 56.2.0", - "arrow-buffer 56.2.0", + "arrow", + "arrow-buffer", "base64", "blake2", "blake3", "chrono", - "datafusion-common 50.3.0", - "datafusion-doc 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-expr-common 50.3.0", - "datafusion-macros 50.3.0", + "datafusion-common", + "datafusion-doc", + "datafusion-execution", + "datafusion-expr", + "datafusion-expr-common", + "datafusion-macros", "hex", "itertools 0.14.0", "log", @@ -2982,69 +2402,22 @@ dependencies = [ "uuid", ] -[[package]] -name = "datafusion-functions" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "794a9db7f7b96b3346fc007ff25e994f09b8f0511b4cf7dff651fadfe3ebb28f" -dependencies = [ - "arrow 57.1.0", - "arrow-buffer 57.1.0", - "base64", - "chrono", - "datafusion-common 51.0.0", - "datafusion-doc 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-expr-common 51.0.0", - "datafusion-macros 51.0.0", - "hex", - "itertools 0.14.0", - "log", - "num-traits", - "rand 0.9.2", - "regex", - "unicode-segmentation", - "uuid", -] - [[package]] name = "datafusion-functions-aggregate" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07331fc13603a9da97b74fd8a273f4238222943dffdbbed1c4c6f862a30105bf" dependencies = [ - "ahash 0.8.12", - "arrow 56.2.0", - "datafusion-common 50.3.0", - "datafusion-doc 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-functions-aggregate-common 50.3.0", - "datafusion-macros 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "half", - "log", - "paste", -] - -[[package]] -name = "datafusion-functions-aggregate" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c25210520a9dcf9c2b2cbbce31ebd4131ef5af7fc60ee92b266dc7d159cb305" -dependencies = [ - "ahash 0.8.12", - "arrow 57.1.0", - "datafusion-common 51.0.0", - "datafusion-doc 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-functions-aggregate-common 51.0.0", - "datafusion-macros 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-common 51.0.0", + "ahash", + "arrow", + "datafusion-common", + "datafusion-doc", + "datafusion-execution", + "datafusion-expr", + "datafusion-functions-aggregate-common", + "datafusion-macros", + "datafusion-physical-expr", + "datafusion-physical-expr-common", "half", "log", "paste", @@ -3056,24 +2429,11 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5951e572a8610b89968a09b5420515a121fbc305c0258651f318dc07c97ab17" dependencies = [ - "ahash 0.8.12", - "arrow 56.2.0", - "datafusion-common 50.3.0", - "datafusion-expr-common 50.3.0", - "datafusion-physical-expr-common 50.3.0", -] - -[[package]] -name = "datafusion-functions-aggregate-common" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62f4a66f3b87300bb70f4124b55434d2ae3fe80455f3574701d0348da040b55d" -dependencies = [ - "ahash 0.8.12", - "arrow 57.1.0", - "datafusion-common 51.0.0", - "datafusion-expr-common 51.0.0", - "datafusion-physical-expr-common 51.0.0", + "ahash", + "arrow", + "datafusion-common", + "datafusion-expr-common", + "datafusion-physical-expr-common", ] [[package]] @@ -3082,40 +2442,17 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdacca9302c3d8fc03f3e94f338767e786a88a33f5ebad6ffc0e7b50364b9ea3" dependencies = [ - "arrow 56.2.0", - "arrow-ord 56.2.0", - "datafusion-common 50.3.0", - "datafusion-doc 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-functions 50.3.0", - "datafusion-functions-aggregate 50.3.0", - "datafusion-functions-aggregate-common 50.3.0", - "datafusion-macros 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "itertools 0.14.0", - "log", - "paste", -] - -[[package]] -name = "datafusion-functions-nested" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae5c06eed03918dc7fe7a9f082a284050f0e9ecf95d72f57712d1496da03b8c4" -dependencies = [ - "arrow 57.1.0", - "arrow-ord 57.1.0", - "datafusion-common 51.0.0", - "datafusion-doc 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-expr-common 51.0.0", - "datafusion-functions 51.0.0", - "datafusion-functions-aggregate 51.0.0", - "datafusion-functions-aggregate-common 51.0.0", - "datafusion-macros 51.0.0", - "datafusion-physical-expr-common 51.0.0", + "arrow", + "arrow-ord", + "datafusion-common", + "datafusion-doc", + "datafusion-execution", + "datafusion-expr", + "datafusion-functions", + "datafusion-functions-aggregate", + "datafusion-functions-aggregate-common", + "datafusion-macros", + "datafusion-physical-expr-common", "itertools 0.14.0", "log", "paste", @@ -3127,28 +2464,12 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c37ff8a99434fbbad604a7e0669717c58c7c4f14c472d45067c4b016621d981" dependencies = [ - "arrow 56.2.0", + "arrow", "async-trait", - "datafusion-catalog 50.3.0", - "datafusion-common 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-physical-plan 50.3.0", - "parking_lot", - "paste", -] - -[[package]] -name = "datafusion-functions-table" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db4fed1d71738fbe22e2712d71396db04c25de4111f1ec252b8f4c6d3b25d7f5" -dependencies = [ - "arrow 57.1.0", - "async-trait", - "datafusion-catalog 51.0.0", - "datafusion-common 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-physical-plan 51.0.0", + "datafusion-catalog", + "datafusion-common", + "datafusion-expr", + "datafusion-physical-plan", "parking_lot", "paste", ] @@ -3159,32 +2480,14 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48e2aea7c79c926cffabb13dc27309d4eaeb130f4a21c8ba91cdd241c813652b" dependencies = [ - "arrow 56.2.0", - "datafusion-common 50.3.0", - "datafusion-doc 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-functions-window-common 50.3.0", - "datafusion-macros 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "log", - "paste", -] - -[[package]] -name = "datafusion-functions-window" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d92206aa5ae21892f1552b4d61758a862a70956e6fd7a95cb85db1de74bc6d1" -dependencies = [ - "arrow 57.1.0", - "datafusion-common 51.0.0", - "datafusion-doc 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-functions-window-common 51.0.0", - "datafusion-macros 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-common 51.0.0", + "arrow", + "datafusion-common", + "datafusion-doc", + "datafusion-expr", + "datafusion-functions-window-common", + "datafusion-macros", + "datafusion-physical-expr", + "datafusion-physical-expr-common", "log", "paste", ] @@ -3195,18 +2498,8 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fead257ab5fd2ffc3b40fda64da307e20de0040fe43d49197241d9de82a487f" dependencies = [ - "datafusion-common 50.3.0", - "datafusion-physical-expr-common 50.3.0", -] - -[[package]] -name = "datafusion-functions-window-common" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53ae9bcc39800820d53a22d758b3b8726ff84a5a3e24cecef04ef4e5fdf1c7cc" -dependencies = [ - "datafusion-common 51.0.0", - "datafusion-physical-expr-common 51.0.0", + "datafusion-common", + "datafusion-physical-expr-common", ] [[package]] @@ -3215,20 +2508,9 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec6f637bce95efac05cdfb9b6c19579ed4aa5f6b94d951cfa5bb054b7bb4f730" dependencies = [ - "datafusion-expr 50.3.0", - "quote", - "syn 2.0.110", -] - -[[package]] -name = "datafusion-macros" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1063ad4c9e094b3f798acee16d9a47bd7372d9699be2de21b05c3bd3f34ab848" -dependencies = [ - "datafusion-doc 51.0.0", + "datafusion-expr", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -3237,31 +2519,12 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6583ef666ae000a613a837e69e456681a9faa96347bf3877661e9e89e141d8a" dependencies = [ - "arrow 56.2.0", - "chrono", - "datafusion-common 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-expr-common 50.3.0", - "datafusion-physical-expr 50.3.0", - "indexmap", - "itertools 0.14.0", - "log", - "regex", - "regex-syntax", -] - -[[package]] -name = "datafusion-optimizer" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f35f9ec5d08b87fd1893a30c2929f2559c2f9806ca072d8fefca5009dc0f06a" -dependencies = [ - "arrow 57.1.0", + "arrow", "chrono", - "datafusion-common 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-expr-common 51.0.0", - "datafusion-physical-expr 51.0.0", + "datafusion-common", + "datafusion-expr", + "datafusion-expr-common", + "datafusion-physical-expr", "indexmap", "itertools 0.14.0", "log", @@ -3275,13 +2538,13 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8668103361a272cbbe3a61f72eca60c9b7c706e87cc3565bcf21e2b277b84f6" dependencies = [ - "ahash 0.8.12", - "arrow 56.2.0", - "datafusion-common 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-expr-common 50.3.0", - "datafusion-functions-aggregate-common 50.3.0", - "datafusion-physical-expr-common 50.3.0", + "ahash", + "arrow", + "datafusion-common", + "datafusion-expr", + "datafusion-expr-common", + "datafusion-functions-aggregate-common", + "datafusion-physical-expr-common", "half", "hashbrown 0.14.5", "indexmap", @@ -3292,55 +2555,18 @@ dependencies = [ "petgraph 0.8.3", ] -[[package]] -name = "datafusion-physical-expr" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c30cc8012e9eedcb48bbe112c6eff4ae5ed19cf3003cb0f505662e88b7014c5d" -dependencies = [ - "ahash 0.8.12", - "arrow 57.1.0", - "datafusion-common 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-expr-common 51.0.0", - "datafusion-functions-aggregate-common 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "half", - "hashbrown 0.14.5", - "indexmap", - "itertools 0.14.0", - "parking_lot", - "paste", - "petgraph 0.8.3", -] - [[package]] name = "datafusion-physical-expr-adapter" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "815acced725d30601b397e39958e0e55630e0a10d66ef7769c14ae6597298bb0" dependencies = [ - "arrow 56.2.0", - "datafusion-common 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-functions 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "itertools 0.14.0", -] - -[[package]] -name = "datafusion-physical-expr-adapter" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f9ff2dbd476221b1f67337699eff432781c4e6e1713d2aefdaa517dfbf79768" -dependencies = [ - "arrow 57.1.0", - "datafusion-common 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-functions 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-common 51.0.0", + "arrow", + "datafusion-common", + "datafusion-expr", + "datafusion-functions", + "datafusion-physical-expr", + "datafusion-physical-expr-common", "itertools 0.14.0", ] @@ -3350,24 +2576,10 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6652fe7b5bf87e85ed175f571745305565da2c0b599d98e697bcbedc7baa47c3" dependencies = [ - "ahash 0.8.12", - "arrow 56.2.0", - "datafusion-common 50.3.0", - "datafusion-expr-common 50.3.0", - "hashbrown 0.14.5", - "itertools 0.14.0", -] - -[[package]] -name = "datafusion-physical-expr-common" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90da43e1ec550b172f34c87ec68161986ced70fd05c8d2a2add66eef9c276f03" -dependencies = [ - "ahash 0.8.12", - "arrow 57.1.0", - "datafusion-common 51.0.0", - "datafusion-expr-common 51.0.0", + "ahash", + "arrow", + "datafusion-common", + "datafusion-expr-common", "hashbrown 0.14.5", "itertools 0.14.0", ] @@ -3378,88 +2590,39 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49b7d623eb6162a3332b564a0907ba00895c505d101b99af78345f1acf929b5c" dependencies = [ - "arrow 56.2.0", - "datafusion-common 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-expr-common 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "datafusion-physical-plan 50.3.0", - "datafusion-pruning 50.3.0", + "arrow", + "datafusion-common", + "datafusion-execution", + "datafusion-expr", + "datafusion-expr-common", + "datafusion-physical-expr", + "datafusion-physical-expr-common", + "datafusion-physical-plan", + "datafusion-pruning", "itertools 0.14.0", "log", ] -[[package]] -name = "datafusion-physical-optimizer" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce9804f799acd7daef3be7aaffe77c0033768ed8fdbf5fb82fc4c5f2e6bc14e6" -dependencies = [ - "arrow 57.1.0", - "datafusion-common 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-expr-common 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-plan 51.0.0", - "datafusion-pruning 51.0.0", - "itertools 0.14.0", -] - [[package]] name = "datafusion-physical-plan" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2f7f778a1a838dec124efb96eae6144237d546945587557c9e6936b3414558c" dependencies = [ - "ahash 0.8.12", - "arrow 56.2.0", - "arrow-ord 56.2.0", - "arrow-schema 56.2.0", - "async-trait", - "chrono", - "datafusion-common 50.3.0", - "datafusion-common-runtime 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-functions-aggregate-common 50.3.0", - "datafusion-functions-window-common 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "futures", - "half", - "hashbrown 0.14.5", - "indexmap", - "itertools 0.14.0", - "log", - "parking_lot", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "datafusion-physical-plan" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0acf0ad6b6924c6b1aa7d213b181e012e2d3ec0a64ff5b10ee6282ab0f8532ac" -dependencies = [ - "ahash 0.8.12", - "arrow 57.1.0", - "arrow-ord 57.1.0", - "arrow-schema 57.1.0", + "ahash", + "arrow", + "arrow-ord", + "arrow-schema", "async-trait", "chrono", - "datafusion-common 51.0.0", - "datafusion-common-runtime 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-functions-aggregate-common 51.0.0", - "datafusion-functions-window-common 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-common 51.0.0", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-execution", + "datafusion-expr", + "datafusion-functions-aggregate-common", + "datafusion-functions-window-common", + "datafusion-physical-expr", + "datafusion-physical-expr-common", "futures", "half", "hashbrown 0.14.5", @@ -3477,31 +2640,14 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd1e59e2ca14fe3c30f141600b10ad8815e2856caa59ebbd0e3e07cd3d127a65" dependencies = [ - "arrow 56.2.0", - "arrow-schema 56.2.0", - "datafusion-common 50.3.0", - "datafusion-datasource 50.3.0", - "datafusion-expr-common 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-expr-common 50.3.0", - "datafusion-physical-plan 50.3.0", - "itertools 0.14.0", - "log", -] - -[[package]] -name = "datafusion-pruning" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac2c2498a1f134a9e11a9f5ed202a2a7d7e9774bd9249295593053ea3be999db" -dependencies = [ - "arrow 57.1.0", - "datafusion-common 51.0.0", - "datafusion-datasource 51.0.0", - "datafusion-expr-common 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-plan 51.0.0", + "arrow", + "arrow-schema", + "datafusion-common", + "datafusion-datasource", + "datafusion-expr-common", + "datafusion-physical-expr", + "datafusion-physical-expr-common", + "datafusion-physical-plan", "itertools 0.14.0", "log", ] @@ -3510,71 +2656,40 @@ dependencies = [ name = "datafusion-session" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21ef8e2745583619bd7a49474e8f45fbe98ebb31a133f27802217125a7b3d58d" -dependencies = [ - "arrow 56.2.0", - "async-trait", - "dashmap", - "datafusion-common 50.3.0", - "datafusion-common-runtime 50.3.0", - "datafusion-execution 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-plan 50.3.0", - "datafusion-sql 50.3.0", - "futures", - "itertools 0.14.0", - "log", - "object_store", - "parking_lot", - "tokio", -] - -[[package]] -name = "datafusion-session" -version = "51.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f96eebd17555386f459037c65ab73aae8df09f464524c709d6a3134ad4f4776" -dependencies = [ - "async-trait", - "datafusion-common 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-physical-plan 51.0.0", - "parking_lot", -] - -[[package]] -name = "datafusion-sql" -version = "50.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89abd9868770386fede29e5a4b14f49c0bf48d652c3b9d7a8a0332329b87d50b" +checksum = "21ef8e2745583619bd7a49474e8f45fbe98ebb31a133f27802217125a7b3d58d" dependencies = [ - "arrow 56.2.0", - "bigdecimal", - "datafusion-common 50.3.0", - "datafusion-expr 50.3.0", - "indexmap", + "arrow", + "async-trait", + "dashmap", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-execution", + "datafusion-expr", + "datafusion-physical-expr", + "datafusion-physical-plan", + "datafusion-sql", + "futures", + "itertools 0.14.0", "log", - "regex", - "sqlparser 0.58.0", + "object_store", + "parking_lot", + "tokio", ] [[package]] name = "datafusion-sql" -version = "51.0.0" +version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fc195fe60634b2c6ccfd131b487de46dc30eccae8a3c35a13f136e7f440414f" +checksum = "89abd9868770386fede29e5a4b14f49c0bf48d652c3b9d7a8a0332329b87d50b" dependencies = [ - "arrow 57.1.0", + "arrow", "bigdecimal", - "chrono", - "datafusion-common 51.0.0", - "datafusion-expr 51.0.0", + "datafusion-common", + "datafusion-expr", "indexmap", "log", "regex", - "sqlparser 0.59.0", + "sqlparser", ] [[package]] @@ -3603,12 +2718,6 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "26bf8fc351c5ed29b5c2f0cbbac1b209b74f60ecd62e675a998df72c49af5204" -[[package]] -name = "deltae" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5729f5117e208430e437df2f4843f5e5952997175992d1414f94c57d61e270b4" - [[package]] name = "der" version = "0.7.10" @@ -3622,9 +2731,9 @@ dependencies = [ [[package]] name = "deranged" -version = "0.5.5" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587" +checksum = "a41953f86f8a05768a6cda24def994fd2f424b04ec5c719cf89989779f199071" dependencies = [ "powerfmt", "serde_core", @@ -3638,7 +2747,7 @@ checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -3659,7 +2768,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -3692,7 +2801,7 @@ dependencies = [ "libc", "option-ext", "redox_users", - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -3703,7 +2812,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -3714,7 +2823,7 @@ checksum = "8dc51d98e636f5e3b0759a39257458b22619cac7e96d932da6eeb052891bb67c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -3728,9 +2837,9 @@ dependencies = [ [[package]] name = "document-features" -version = "0.2.12" +version = "0.2.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4b8a88685455ed29a21542a33abd9cb6510b6b129abadabdcef0f4c55bc8f61" +checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d" dependencies = [ "litrs", ] @@ -3747,34 +2856,12 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3a5ccdfd6c5e7e2fea9c5cf256f2a08216047fab19c621c3da64e9ae4a1462d" -[[package]] -name = "duckdb-bench" -version = "0.1.0" -dependencies = [ - "anyhow", - "clap", - "get_dir", - "similar", - "tokio", - "tracing", - "url", - "vortex", - "vortex-bench", - "vortex-duckdb", -] - [[package]] name = "dunce" version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" -[[package]] -name = "dyn-clone" -version = "1.0.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" - [[package]] name = "either" version = "1.15.0" @@ -3813,24 +2900,38 @@ checksum = "685adfa4d6f3d765a26bc5dbc936577de9abf756c1feeb3089b01dd395034842" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] -name = "env_filter" -version = "0.1.4" +name = "enum-map" +version = "2.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bf3c259d255ca70051b30e2e95b5446cdb8949ac4cd22c0d7fd634d89f568e2" +checksum = "6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9" dependencies = [ - "log", - "regex", + "enum-map-derive", ] [[package]] -name = "env_home" -version = "0.1.0" +name = "enum-map-derive" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.106", +] + +[[package]] +name = "env_filter" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7f84e12ccf0a7ddc17a6c41c93326024c42920d7ee630d04950e6926645c0fe" +checksum = "186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0" +dependencies = [ + "log", + "regex", +] [[package]] name = "env_logger" @@ -3851,6 +2952,17 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" +[[package]] +name = "erased-serde" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89e8918065695684b2b0702da20382d5ae6065cf3327bc2d6436bd49a71ce9f3" +dependencies = [ + "serde", + "serde_core", + "typeid", +] + [[package]] name = "errno" version = "0.3.14" @@ -3858,7 +2970,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] @@ -3867,15 +2979,6 @@ version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca81e6b4777c89fd810c25a4be2b1bd93ea034fbe58e6a75216a34c6b82c539b" -[[package]] -name = "euclid" -version = "0.22.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad9cdb4b747e485a12abb0e6566612956c7a1bafa3bdb8d682c5b6d403589e48" -dependencies = [ - "num-traits", -] - [[package]] name = "event-listener" version = "5.4.1" @@ -3899,9 +3002,9 @@ dependencies = [ [[package]] name = "exponential-decay-histogram" -version = "0.1.14" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7962d7e9baab6ea05af175491fa6a8441f3bf461558037622142573d98dd6d6" +checksum = "988360e80225a42d5e2f78fcb90ef7d54d1e4394d335476b5465d34942426776" dependencies = [ "ordered-float 5.1.0", "rand 0.9.2", @@ -3936,16 +3039,6 @@ dependencies = [ "ext-trait", ] -[[package]] -name = "fancy-regex" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2" -dependencies = [ - "bit-set", - "regex", -] - [[package]] name = "fast-float2" version = "0.2.3" @@ -3978,27 +3071,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] -name = "filedescriptor" -version = "0.8.3" +name = "filetime" +version = "0.2.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e40758ed24c9b2eeb76c35fb0aebc66c626084edd827e07e1552279814c6682d" +checksum = "bc0505cd1b6fa6580283f6bdf70a73fcf4aba1184038c90902b92b3dd0df63ed" dependencies = [ + "cfg-if", "libc", - "thiserror 1.0.69", - "winapi", + "libredox", + "windows-sys 0.60.2", ] [[package]] name = "find-msvc-tools" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645cbb3a84e60b7531617d5ae4e57f7e27308f6445f5abf653209ea76dec8dff" - -[[package]] -name = "finl_unicode" -version = "1.4.0" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9844ddc3a6e533d62bba727eb6c28b5d360921d5175e9ff0f1e621a5c590a4d5" +checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844" [[package]] name = "fixed-hash" @@ -4013,12 +3101,6 @@ dependencies = [ "static_assertions", ] -[[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" @@ -4031,15 +3113,15 @@ version = "25.9.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09b6620799e7340ebd9968d2e0708eb82cf1971e9a16821e2091b6d6e475eed5" dependencies = [ - "bitflags 2.10.0", + "bitflags", "rustc_version", ] [[package]] name = "flate2" -version = "1.1.5" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfe33edd8e85a12a67454e37f8c75e730830d83e313556ab9ebf9ee7fbeb3bfb" +checksum = "dc5a4e564e38c699f2880d3fda590bedc2e69f3f84cd48b457bd892ce61d0aa9" dependencies = [ "crc32fast", "libz-rs-sys", @@ -4064,21 +3146,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" -[[package]] -name = "foreign-types" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" -dependencies = [ - "foreign-types-shared", -] - -[[package]] -name = "foreign-types-shared" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" - [[package]] name = "form_urlencoded" version = "1.2.2" @@ -4110,7 +3177,7 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d2475ce218217196b161b025598f77e2b405d5e729f7c37bfff145f5df00a41" dependencies = [ - "arrow-array 56.2.0", + "arrow-array", "rand 0.9.2", ] @@ -4204,7 +3271,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -4254,35 +3321,28 @@ dependencies = [ [[package]] name = "generator" -version = "0.8.8" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52f04ae4152da20c76fe800fa48659201d5cf627c5149ca0b707b69d7eef6cf9" +checksum = "605183a538e3e2a9c1038635cc5c2d194e2ee8fd0d1b66b8349fad7dbacce5a2" dependencies = [ "cc", "cfg-if", "libc", "log", "rustversion", - "windows-link 0.2.1", - "windows-result 0.3.4", + "windows", ] [[package]] name = "generic-array" -version = "0.14.7" +version = "0.14.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +checksum = "1dc8f7d2ded5f9209535e4b3fd4d39c002f30902ff5ce9f64e2c33d549576500" dependencies = [ "typenum", "version_check", ] -[[package]] -name = "get_dir" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7be53a543a609b266f8ed4237af223fa96bdaa54d69fd6845c71a421a4a4748" - [[package]] name = "getrandom" version = "0.2.16" @@ -4348,9 +3408,9 @@ checksum = "f9e2d4c0a8296178d8802098410ca05d86b17a10bb5ab559b3fb404c1f948220" [[package]] name = "h2" -version = "0.4.13" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f44da3a8150a6703ed5d34e164b875fd14c2cdab9af1252a9a1020bde2bdc54" +checksum = "f3c0b69cfcb4e1b9f1bf2f53f95f766e4661169728ec61cd3fe5a0166f2d1386" dependencies = [ "atomic-waker", "bytes", @@ -4385,22 +3445,13 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52ed72152641d513a6084a3907bfcba3f35ae2d3335c22ce2242969c25ff8e46" -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -dependencies = [ - "ahash 0.7.8", -] - [[package]] name = "hashbrown" version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ - "ahash 0.8.12", + "ahash", "allocator-api2", ] @@ -4455,11 +3506,11 @@ dependencies = [ [[package]] name = "home" -version = "0.5.12" +version = "0.5.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc627f471c528ff0c4a49e1d5e60450c8f6461dd6d10ba9dcd3a61d3dff7728d" +checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf" dependencies = [ - "windows-sys 0.61.2", + "windows-sys 0.59.0", ] [[package]] @@ -4547,9 +3598,9 @@ checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" [[package]] name = "hyper" -version = "1.8.1" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ab2d4f250c3d7b1c9fcdff1cece94ea4e2dfbec68614f7b87cb205f24ca9d11" +checksum = "eb3aa54a13a0dfe7fbe3a59e0c76093041720fdc77b110cc0fc260fafb4dc51e" dependencies = [ "atomic-waker", "bytes", @@ -4585,27 +3636,11 @@ dependencies = [ "webpki-roots", ] -[[package]] -name = "hyper-tls" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" -dependencies = [ - "bytes", - "http-body-util", - "hyper", - "hyper-util", - "native-tls", - "tokio", - "tokio-native-tls", - "tower-service", -] - [[package]] name = "hyper-util" -version = "0.1.19" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "727805d60e7938b76b826a6ef209eb70eaa1812794f9424d4a4e2d740662df5f" +checksum = "3c6995591a8f1380fcb4ba966a252a4b29188d51d2b89e3a252f5305be65aea8" dependencies = [ "base64", "bytes", @@ -4619,7 +3654,7 @@ dependencies = [ "libc", "percent-encoding", "pin-project-lite", - "socket2 0.6.1", + "socket2", "system-configuration", "tokio", "tower-service", @@ -4662,9 +3697,9 @@ dependencies = [ [[package]] name = "icu_collections" -version = "2.1.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6b649701667bbe825c3b7e6388cb521c23d88644678e83c0c4d0a621a34b43" +checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47" dependencies = [ "displaydoc", "potential_utf", @@ -4675,9 +3710,9 @@ dependencies = [ [[package]] name = "icu_locale_core" -version = "2.1.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edba7861004dd3714265b4db54a3c390e880ab658fec5f7db895fae2046b5bb6" +checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a" dependencies = [ "displaydoc", "litemap", @@ -4688,10 +3723,11 @@ dependencies = [ [[package]] name = "icu_normalizer" -version = "2.1.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f6c8828b67bf8908d82127b2054ea1b4427ff0230ee9141c54251934ab1b599" +checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979" dependencies = [ + "displaydoc", "icu_collections", "icu_normalizer_data", "icu_properties", @@ -4702,38 +3738,42 @@ dependencies = [ [[package]] name = "icu_normalizer_data" -version = "2.1.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a" +checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3" [[package]] name = "icu_properties" -version = "2.1.1" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e93fcd3157766c0c8da2f8cff6ce651a31f0810eaa1c51ec363ef790bbb5fb99" +checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b" dependencies = [ + "displaydoc", "icu_collections", "icu_locale_core", "icu_properties_data", "icu_provider", + "potential_utf", "zerotrie", "zerovec", ] [[package]] name = "icu_properties_data" -version = "2.1.1" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02845b3647bb045f1100ecd6480ff52f34c35f82d9880e029d329c21d1054899" +checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632" [[package]] name = "icu_provider" -version = "2.1.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85962cf0ce02e1e0a629cc34e7ca3e373ce20dda4c4d7294bbd0bf1fdb59e614" +checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af" dependencies = [ "displaydoc", "icu_locale_core", + "stable_deref_trait", + "tinystr", "writeable", "yoke", "zerofrom", @@ -4785,17 +3825,17 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] name = "indexmap" -version = "2.12.1" +version = "2.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" +checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" dependencies = [ "equivalent", - "hashbrown 0.16.1", + "hashbrown 0.15.5", ] [[package]] @@ -4807,19 +3847,16 @@ dependencies = [ "console 0.16.1", "futures-core", "portable-atomic", - "unicode-width", + "unicode-width 0.2.0", "unit-prefix", "web-time", ] [[package]] name = "indoc" -version = "2.0.7" +version = "2.0.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706" -dependencies = [ - "rustversion", -] +checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd" [[package]] name = "inout" @@ -4833,14 +3870,13 @@ dependencies = [ [[package]] name = "insta" -version = "1.46.0" +version = "1.44.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b66886d14d18d420ab5052cbff544fc5d34d0b2cdd35eb5976aaa10a4a472e5" +checksum = "b5c943d4415edd8153251b6f197de5eb1640e56d84e8d9159bea190421c73698" dependencies = [ "console 0.15.11", "once_cell", "similar", - "tempfile", ] [[package]] @@ -4853,7 +3889,7 @@ dependencies = [ "indoc", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -4879,9 +3915,9 @@ checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "iri-string" -version = "0.7.10" +version = "0.7.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c91338f0783edbd6195decb37bae672fd3b165faffb89bf7b9e6942f8b1a731a" +checksum = "dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2" dependencies = [ "memchr", "serde", @@ -4889,9 +3925,9 @@ dependencies = [ [[package]] name = "is_terminal_polyfill" -version = "1.70.2" +version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695" +checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" [[package]] name = "itertools" @@ -4937,9 +3973,9 @@ dependencies = [ [[package]] name = "jiff" -version = "0.2.17" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a87d9b8105c23642f50cbbae03d1f75d8422c5cb98ce7ee9271f7ff7505be6b8" +checksum = "49cce2b81f2098e7e3efc35bc2e0a6b7abec9d34128283d7a26fa8f32a6dbb35" dependencies = [ "jiff-static", "jiff-tzdb-platform", @@ -4947,18 +3983,18 @@ dependencies = [ "portable-atomic", "portable-atomic-util", "serde_core", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] name = "jiff-static" -version = "0.2.17" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b787bebb543f8969132630c51fd0afab173a86c6abae56ff3b9e5e3e3f9f6e58" +checksum = "980af8b43c3ad5d8d349ace167ec8170839f753a42d233ba19e08afe1850fa69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -5012,9 +4048,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.83" +version = "0.3.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "464a3709c7f55f1f721e5389aa6ea4e3bc6aba669353300af094b29ffbdde1d8" +checksum = "b011eec8cc36da2aab2d5cff675ec18454fad408585853910a202391cf9f8e65" dependencies = [ "once_cell", "wasm-bindgen", @@ -5022,9 +4058,9 @@ dependencies = [ [[package]] name = "jsonb" -version = "0.5.5" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a901f06163d352fbe41c3c2ff5e08b75330a003cc941e988fb501022f5421e6" +checksum = "a452366d21e8d3cbca680c41388e01d6a88739afef7877961946a6da409f9ccd" dependencies = [ "byteorder", "ethnum", @@ -5065,38 +4101,21 @@ dependencies = [ "lock_api", ] -[[package]] -name = "kasuari" -version = "0.4.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fe90c1150662e858c7d5f945089b7517b0a80d8bf7ba4b1b5ffc984e7230a5b" -dependencies = [ - "hashbrown 0.16.1", - "portable-atomic", - "thiserror 2.0.17", -] - -[[package]] -name = "lab" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf36173d4167ed999940f804952e6b08197cae5ad5d572eb4db150ce8ad5d58f" - [[package]] name = "lance" version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2f0ca022d0424d991933a62d2898864cf5621873962bd84e65e7d1f023f9c36" dependencies = [ - "arrow 56.2.0", - "arrow-arith 56.2.0", - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-ipc 56.2.0", - "arrow-ord 56.2.0", - "arrow-row 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow", + "arrow-arith", + "arrow-array", + "arrow-buffer", + "arrow-ipc", + "arrow-ord", + "arrow-row", + "arrow-schema", + "arrow-select", "async-recursion", "async-trait", "async_cell", @@ -5105,11 +4124,11 @@ dependencies = [ "bytes", "chrono", "dashmap", - "datafusion 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-functions 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-physical-plan 50.3.0", + "datafusion", + "datafusion-expr", + "datafusion-functions", + "datafusion-physical-expr", + "datafusion-physical-plan", "deepsize", "either", "futures", @@ -5153,12 +4172,12 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7552f8d528775bf0ab21e1f75dcb70bdb2a828eeae58024a803b5a4655fd9a11" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-cast 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow-array", + "arrow-buffer", + "arrow-cast", + "arrow-data", + "arrow-schema", + "arrow-select", "bytes", "getrandom 0.2.16", "half", @@ -5167,25 +4186,6 @@ dependencies = [ "rand 0.9.2", ] -[[package]] -name = "lance-bench" -version = "0.1.0" -dependencies = [ - "anyhow", - "arrow-cast 56.2.0", - "async-trait", - "clap", - "futures", - "get_dir", - "lance", - "lance-encoding", - "parquet 56.2.0", - "tempfile", - "tokio", - "tracing", - "vortex-bench", -] - [[package]] name = "lance-bitpacking" version = "0.39.0" @@ -5203,15 +4203,15 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69c752dedd207384892006c40930f898d6634e05e3d489e89763abfe4b9307e7" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-schema 56.2.0", + "arrow-array", + "arrow-buffer", + "arrow-schema", "async-trait", "byteorder", "bytes", "chrono", - "datafusion-common 50.3.0", - "datafusion-sql 50.3.0", + "datafusion-common", + "datafusion-sql", "deepsize", "futures", "lance-arrow", @@ -5241,18 +4241,18 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21e1e98ca6e5cd337bdda2d9fb66063f295c0c2852d2bc6831366fea833ee608" dependencies = [ - "arrow 56.2.0", - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-ord 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow", + "arrow-array", + "arrow-buffer", + "arrow-ord", + "arrow-schema", + "arrow-select", "async-trait", "chrono", - "datafusion 50.3.0", - "datafusion-common 50.3.0", - "datafusion-functions 50.3.0", - "datafusion-physical-expr 50.3.0", + "datafusion", + "datafusion-common", + "datafusion-functions", + "datafusion-physical-expr", "futures", "jsonb", "lance-arrow", @@ -5272,10 +4272,10 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "483c643fc2806ed1a2766edf4d180511bbd1d549bcc60373e33f4785c6185891" dependencies = [ - "arrow 56.2.0", - "arrow-array 56.2.0", - "arrow-cast 56.2.0", - "arrow-schema 56.2.0", + "arrow", + "arrow-array", + "arrow-cast", + "arrow-schema", "chrono", "futures", "half", @@ -5291,13 +4291,13 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a199d1fa3487529c5ffc433fbd1721231330b9350c2ff9b0c7b7dbdb98f0806a" dependencies = [ - "arrow-arith 56.2.0", - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-cast 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow-arith", + "arrow-array", + "arrow-buffer", + "arrow-cast", + "arrow-data", + "arrow-schema", + "arrow-select", "bytemuck", "byteorder", "bytes", @@ -5330,17 +4330,17 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b57def2279465232cf5a8cd996300c632442e368745768bbed661c7f0a35334b" dependencies = [ - "arrow-arith 56.2.0", - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow-arith", + "arrow-array", + "arrow-buffer", + "arrow-data", + "arrow-schema", + "arrow-select", "async-recursion", "async-trait", "byteorder", "bytes", - "datafusion-common 50.3.0", + "datafusion-common", "deepsize", "futures", "lance-arrow", @@ -5364,12 +4364,12 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75938c61e986aef8c615dc44c92e4c19e393160a59e2b57402ccfe08c5e63af" dependencies = [ - "arrow 56.2.0", - "arrow-arith 56.2.0", - "arrow-array 56.2.0", - "arrow-ord 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow", + "arrow-arith", + "arrow-array", + "arrow-ord", + "arrow-schema", + "arrow-select", "async-channel", "async-recursion", "async-trait", @@ -5377,11 +4377,11 @@ dependencies = [ "bitvec", "bytes", "crossbeam-queue", - "datafusion 50.3.0", - "datafusion-common 50.3.0", - "datafusion-expr 50.3.0", - "datafusion-physical-expr 50.3.0", - "datafusion-sql 50.3.0", + "datafusion", + "datafusion-common", + "datafusion-expr", + "datafusion-physical-expr", + "datafusion-sql", "deepsize", "dirs", "fst", @@ -5427,14 +4427,14 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa6c3b5b28570d6c951206c5b043f1b35c936928af14fca6f2ac25b0097e4c32" dependencies = [ - "arrow 56.2.0", - "arrow-arith 56.2.0", - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-cast 56.2.0", - "arrow-data 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", + "arrow", + "arrow-arith", + "arrow-array", + "arrow-buffer", + "arrow-cast", + "arrow-data", + "arrow-schema", + "arrow-select", "async-recursion", "async-trait", "aws-config", @@ -5469,9 +4469,9 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3cbc7e85a89ff9cb3a4627559dea3fd1c1fb16c0d8bc46ede75eefef51eec06" dependencies = [ - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-schema 56.2.0", + "arrow-array", + "arrow-buffer", + "arrow-schema", "cc", "deepsize", "half", @@ -5487,7 +4487,7 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897dd6726816515bb70a698ce7cda44670dca5761637696d7905b45f405a8cd9" dependencies = [ - "arrow 56.2.0", + "arrow", "async-trait", "bytes", "lance-core", @@ -5514,11 +4514,11 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8facc13760ba034b6c38767b16adba85e44cbcbea8124dc0c63c43865c60630" dependencies = [ - "arrow 56.2.0", - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-ipc 56.2.0", - "arrow-schema 56.2.0", + "arrow", + "arrow-array", + "arrow-buffer", + "arrow-ipc", + "arrow-schema", "async-trait", "byteorder", "bytes", @@ -5704,12 +4704,13 @@ dependencies = [ [[package]] name = "libredox" -version = "0.1.12" +version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d0b95e02c851351f877147b7deea7b1afb1df71b63aa5f8270716e0c5720616" +checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" dependencies = [ - "bitflags 2.10.0", + "bitflags", "libc", + "redox_syscall", ] [[package]] @@ -5721,15 +4722,6 @@ dependencies = [ "zlib-rs", ] -[[package]] -name = "line-clipping" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f4de44e98ddbf09375cbf4d17714d18f39195f4f4894e8524501726fd9a8a4a" -dependencies = [ - "bitflags 2.10.0", -] - [[package]] name = "link-cplusplus" version = "1.0.12" @@ -5753,15 +4745,15 @@ checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" [[package]] name = "litemap" -version = "0.8.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77" +checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956" [[package]] name = "litrs" -version = "1.0.0" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11d3d7f243d5c5a8b9bb5d6dd2b1602c0cb0b9db1621bafc7ed66e35ff9fe092" +checksum = "f5e54036fe321fd421e10d732f155734c4e4afd610dd556d9a82833ab3ee0bed" [[package]] name = "lock_api" @@ -5774,9 +4766,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.29" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" +checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" [[package]] name = "loom" @@ -5800,15 +4792,6 @@ dependencies = [ "hashbrown 0.15.5", ] -[[package]] -name = "lru" -version = "0.16.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1dc47f592c06f33f8e3aea9591776ec7c9f9e4124778ff8a3c3b87159f7e593" -dependencies = [ - "hashbrown 0.16.1", -] - [[package]] name = "lru-slab" version = "0.1.2" @@ -5843,15 +4826,6 @@ dependencies = [ "twox-hash", ] -[[package]] -name = "lz4_flex" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab6473172471198271ff72e9379150e9dfd70d8e533e0752a27e515b48dd375e" -dependencies = [ - "twox-hash", -] - [[package]] name = "lzma-rust2" version = "0.13.0" @@ -5862,16 +4836,6 @@ dependencies = [ "sha2", ] -[[package]] -name = "mac_address" -version = "1.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0aeb26bf5e836cc1c341c8106051b573f1766dfa05aa87f0b98be5e51b02303" -dependencies = [ - "nix 0.29.0", - "winapi", -] - [[package]] name = "macro_rules_attribute" version = "0.1.3" @@ -5944,12 +4908,6 @@ dependencies = [ "libc", ] -[[package]] -name = "memmem" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a64a92489e2744ce060c349162be1c5f33c6969234104dbd99ddb5feb08b8c15" - [[package]] name = "memoffset" version = "0.9.1" @@ -6002,14 +4960,14 @@ dependencies = [ [[package]] name = "mio" -version = "1.1.0" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69d83b0086dc8ecf3ce9ae2874b2d1290252e2a30720bea58a5c6639b0092873" +checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c" dependencies = [ "libc", "log", "wasi", - "windows-sys 0.61.2", + "windows-sys 0.59.0", ] [[package]] @@ -6020,9 +4978,9 @@ checksum = "dce6dd36094cac388f119d2e9dc82dc730ef91c32a6222170d630e5414b956e6" [[package]] name = "moka" -version = "0.12.12" +version = "0.12.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a3dec6bd31b08944e08b58fd99373893a6c17054d6f3ea5006cc894f4f4eee2a" +checksum = "8261cd88c312e0004c1d51baad2980c66528dfdb2bee62003e643a4d8f86b077" dependencies = [ "async-lock", "crossbeam-channel", @@ -6033,6 +4991,7 @@ dependencies = [ "futures-util", "parking_lot", "portable-atomic", + "rustc_version", "smallvec", "tagptr", "uuid", @@ -6062,32 +5021,15 @@ checksum = "b093064383341eb3271f42e381cb8f10a01459478446953953c75d24bd339fc0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", "target-features", ] [[package]] name = "murmurhash32" version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2195bf6aa996a481483b29d62a7663eed3fe39600c460e323f8ff41e90bdd89b" - -[[package]] -name = "native-tls" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" -dependencies = [ - "libc", - "log", - "openssl", - "openssl-probe 0.1.6", - "openssl-sys", - "schannel", - "security-framework 2.11.1", - "security-framework-sys", - "tempfile", -] +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2195bf6aa996a481483b29d62a7663eed3fe39600c460e323f8ff41e90bdd89b" [[package]] name = "ndarray" @@ -6110,26 +5052,13 @@ version = "6.6.666" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf5a574dadd7941adeaa71823ecba5e28331b8313fb2e1c6a5c7e5981ea53ad6" -[[package]] -name = "nix" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" -dependencies = [ - "bitflags 2.10.0", - "cfg-if", - "cfg_aliases", - "libc", - "memoffset", -] - [[package]] name = "nix" version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" dependencies = [ - "bitflags 2.10.0", + "bitflags", "cfg-if", "cfg_aliases", "libc", @@ -6184,7 +5113,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d09e31153abd7996f22a50d70f43af6c2ebf96a44ee250326ed15d4e183744c9" dependencies = [ - "bit-vec 0.8.0", + "bit-vec", "bstr", "indexmap", "noodles-bgzf", @@ -6246,9 +5175,9 @@ dependencies = [ [[package]] name = "ntapi" -version = "0.4.2" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c70f219e21142367c70c0b30c6a9e3a14d55b4d12a204d897fbec83a0363f081" +checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" dependencies = [ "winapi", ] @@ -6259,7 +5188,7 @@ version = "0.50.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" dependencies = [ - "windows-sys 0.61.2", + "windows-sys 0.60.2", ] [[package]] @@ -6288,10 +5217,11 @@ dependencies = [ [[package]] name = "num-bigint-dig" -version = "0.8.6" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e661dda6640fad38e827a6d4a310ff4763082116fe217f279885c97f511bb0b7" +checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151" dependencies = [ + "byteorder", "lazy_static", "libm", "num-integer", @@ -6317,17 +5247,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" -[[package]] -name = "num-derive" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.110", -] - [[package]] name = "num-integer" version = "0.1.46" @@ -6397,7 +5316,7 @@ checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -6415,7 +5334,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ - "bitflags 2.10.0", + "bitflags", ] [[package]] @@ -6449,7 +5368,7 @@ dependencies = [ "md-5", "parking_lot", "percent-encoding", - "quick-xml 0.38.4", + "quick-xml 0.38.3", "rand 0.9.2", "reqwest", "ring", @@ -6468,9 +5387,9 @@ dependencies = [ [[package]] name = "object_store_opendal" -version = "0.54.1" +version = "0.54.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0b88fc0e0c4890c1d99e2b8c519c5db40f7d9b69a0f562ff1ad4967a4c8bbc6" +checksum = "5ce697ee723fdc3eaf6c457abf4059034be15167022b18b619993802cd1443d5" dependencies = [ "async-trait", "bytes", @@ -6492,9 +5411,9 @@ dependencies = [ [[package]] name = "once_cell_polyfill" -version = "1.70.2" +version = "1.70.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe" +checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad" [[package]] name = "oneshot" @@ -6504,9 +5423,9 @@ checksum = "b4ce411919553d3f9fa53a0880544cda985a112117a0444d5ff1e870a893d6ea" [[package]] name = "opendal" -version = "0.54.1" +version = "0.54.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42afda58fa2cf50914402d132cc1caacff116a85d10c72ab2082bb7c50021754" +checksum = "ffb9838d0575c6dbaf3fcec7255af8d5771996d4af900bbb6fa9a314dec00a1a" dependencies = [ "anyhow", "backon", @@ -6521,7 +5440,7 @@ dependencies = [ "log", "md-5", "percent-encoding", - "quick-xml 0.38.4", + "quick-xml 0.37.5", "reqsign", "reqwest", "serde", @@ -6531,56 +5450,12 @@ dependencies = [ "uuid", ] -[[package]] -name = "openssl" -version = "0.10.75" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08838db121398ad17ab8531ce9de97b244589089e290a384c900cb9ff7434328" -dependencies = [ - "bitflags 2.10.0", - "cfg-if", - "foreign-types", - "libc", - "once_cell", - "openssl-macros", - "openssl-sys", -] - -[[package]] -name = "openssl-macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.110", -] - [[package]] name = "openssl-probe" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" -[[package]] -name = "openssl-probe" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f50d9b3dabb09ecd771ad0aa242ca6894994c130308ca3d7684634df8037391" - -[[package]] -name = "openssl-sys" -version = "0.9.111" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82cab2d520aa75e3c58898289429321eb788c3106963d0dc886ec7a5f4adc321" -dependencies = [ - "cc", - "libc", - "pkg-config", - "vcpkg", -] - [[package]] name = "opentelemetry" version = "0.31.0" @@ -6668,15 +5543,6 @@ dependencies = [ "num-traits", ] -[[package]] -name = "ordered-float" -version = "4.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7bb71e1b3fa6ca1c61f383464aaf2bb0e2f8e772a1f01d486832464de363b951" -dependencies = [ - "num-traits", -] - [[package]] name = "ordered-float" version = "5.1.0" @@ -6719,7 +5585,7 @@ checksum = "6978128c8b51d8f4080631ceb2302ab51e32cc6e8615f735ee2f83fd269ae3f1" dependencies = [ "bytecount", "fnv", - "unicode-width", + "unicode-width 0.2.0", ] [[package]] @@ -6747,7 +5613,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -6785,47 +5651,14 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0dbd48ad52d7dccf8ea1b90a3ddbfaea4f69878dd7683e51c507d4bc52b5b27" dependencies = [ - "ahash 0.8.12", - "arrow-array 56.2.0", - "arrow-buffer 56.2.0", - "arrow-cast 56.2.0", - "arrow-data 56.2.0", - "arrow-ipc 56.2.0", - "arrow-schema 56.2.0", - "arrow-select 56.2.0", - "base64", - "brotli", - "bytes", - "chrono", - "flate2", - "half", - "hashbrown 0.16.1", - "lz4_flex 0.11.5", - "num", - "num-bigint", - "paste", - "seq-macro", - "simdutf8", - "snap", - "thrift", - "twox-hash", - "zstd", -] - -[[package]] -name = "parquet" -version = "57.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a0f31027ef1af7549f7cec603a9a21dce706d3f8d7c2060a68f43c1773be95a" -dependencies = [ - "ahash 0.8.12", - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-cast 57.1.0", - "arrow-data 57.1.0", - "arrow-ipc 57.1.0", - "arrow-schema 57.1.0", - "arrow-select 57.1.0", + "ahash", + "arrow-array", + "arrow-buffer", + "arrow-cast", + "arrow-data", + "arrow-ipc", + "arrow-schema", + "arrow-select", "base64", "brotli", "bytes", @@ -6834,12 +5667,12 @@ dependencies = [ "futures", "half", "hashbrown 0.16.1", - "lz4_flex 0.11.5", + "lz4_flex", + "num", "num-bigint", - "num-integer", - "num-traits", "object_store", "paste", + "ring", "seq-macro", "simdutf8", "snap", @@ -6879,9 +5712,9 @@ dependencies = [ [[package]] name = "pco" -version = "0.4.9" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42382de9fb564e2d10cb4d5ca97cc06d928f0f9667bbef456b57e60827b6548b" +checksum = "daea1197f2969fab4d5c6620eade5d46c98a8e9b04ad2bc3725fc5dfc4eb8a49" dependencies = [ "better_io", "dtype_dispatch", @@ -6920,56 +5753,13 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df202b0b0f5b8e389955afd5f27b007b00fb948162953f1db9c70d2c7e3157d7" -[[package]] -name = "pest" -version = "2.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c9eb05c21a464ea704b53158d358a31e6425db2f63a1a7312268b05fe2b75f7" -dependencies = [ - "memchr", - "ucd-trie", -] - -[[package]] -name = "pest_derive" -version = "2.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68f9dbced329c441fa79d80472764b1a2c7e57123553b8519b36663a2fb234ed" -dependencies = [ - "pest", - "pest_generator", -] - -[[package]] -name = "pest_generator" -version = "2.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bb96d5051a78f44f43c8f712d8e810adb0ebf923fc9ed2655a7f66f63ba8ee5" -dependencies = [ - "pest", - "pest_meta", - "proc-macro2", - "quote", - "syn 2.0.110", -] - -[[package]] -name = "pest_meta" -version = "2.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "602113b5b5e8621770cfd490cfd90b9f84ab29bd2b0e49ad83eb6d186cef2365" -dependencies = [ - "pest", - "sha2", -] - [[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", ] @@ -6979,71 +5769,19 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455" dependencies = [ - "fixedbitset 0.5.7", + "fixedbitset", "hashbrown 0.15.5", "indexmap", "serde", ] -[[package]] -name = "phf" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" -dependencies = [ - "phf_macros", - "phf_shared 0.11.3", -] - [[package]] name = "phf" version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "913273894cec178f401a31ec4b656318d95473527be05c0752cc41cdc32be8b7" dependencies = [ - "phf_shared 0.12.1", -] - -[[package]] -name = "phf_codegen" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" -dependencies = [ - "phf_generator", - "phf_shared 0.11.3", -] - -[[package]] -name = "phf_generator" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" -dependencies = [ - "phf_shared 0.11.3", - "rand 0.8.5", -] - -[[package]] -name = "phf_macros" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" -dependencies = [ - "phf_generator", - "phf_shared 0.11.3", - "proc-macro2", - "quote", - "syn 2.0.110", -] - -[[package]] -name = "phf_shared" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" -dependencies = [ - "siphasher", + "phf_shared", ] [[package]] @@ -7072,7 +5810,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -7087,17 +5825,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" -[[package]] -name = "ping" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "122ee1f5a6843bec84fcbd5c6ba3622115337a6b8965b93a61aad347648f4e8d" -dependencies = [ - "rand 0.8.5", - "socket2 0.4.10", - "thiserror 1.0.69", -] - [[package]] name = "piper" version = "0.2.4" @@ -7190,9 +5917,9 @@ dependencies = [ [[package]] name = "potential_utf" -version = "0.1.4" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b73949432f5e2a09657003c25bca5e19a0e9c84f8058ca374f49e0ebe605af77" +checksum = "84df19adbe5b5a0782edcab45899906947ab039ccf4573713735ee7de1e6b08a" dependencies = [ "zerovec", ] @@ -7205,9 +5932,9 @@ checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" [[package]] name = "ppmd-rust" -version = "1.3.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d558c559f0450f16f2a27a1f017ef38468c1090c9ce63c8e51366232d53717b4" +checksum = "c834641d8ad1b348c9ee86dec3b9840d805acd5f24daa5f90c788951a52ff59b" [[package]] name = "ppv-lite86" @@ -7225,7 +5952,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -7248,33 +5975,11 @@ dependencies = [ "toml_edit", ] -[[package]] -name = "proc-macro-error-attr2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" -dependencies = [ - "proc-macro2", - "quote", -] - -[[package]] -name = "proc-macro-error2" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" -dependencies = [ - "proc-macro-error-attr2", - "proc-macro2", - "quote", - "syn 2.0.110", -] - [[package]] name = "proc-macro2" -version = "1.0.103" +version = "1.0.101" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" +checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de" dependencies = [ "unicode-ident", ] @@ -7325,7 +6030,7 @@ dependencies = [ "prost 0.13.5", "prost-types 0.13.5", "regex", - "syn 2.0.110", + "syn 2.0.106", "tempfile", ] @@ -7345,7 +6050,7 @@ dependencies = [ "prost 0.14.1", "prost-types 0.14.1", "regex", - "syn 2.0.110", + "syn 2.0.106", "tempfile", ] @@ -7359,7 +6064,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -7372,7 +6077,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -7385,7 +6090,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -7406,26 +6111,6 @@ dependencies = [ "prost 0.14.1", ] -[[package]] -name = "ptr_meta" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" -dependencies = [ - "ptr_meta_derive", -] - -[[package]] -name = "ptr_meta_derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "pyo3" version = "0.27.2" @@ -7492,7 +6177,7 @@ dependencies = [ "proc-macro2", "pyo3-macros-backend", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -7505,7 +6190,7 @@ dependencies = [ "proc-macro2", "pyo3-build-config", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -7520,9 +6205,9 @@ dependencies = [ [[package]] name = "quick-xml" -version = "0.38.4" +version = "0.38.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b66c2058c55a409d601666cffe35f04333cf1013010882cec174a7467cd4e21c" +checksum = "42a232e7487fc2ef313d96dde7948e7a3c05101870d8985e4fd8d26aedd27b89" dependencies = [ "memchr", "serde", @@ -7541,7 +6226,7 @@ dependencies = [ "quinn-udp", "rustc-hash", "rustls", - "socket2 0.6.1", + "socket2", "thiserror 2.0.17", "tokio", "tracing", @@ -7578,16 +6263,16 @@ dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2 0.6.1", + "socket2", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] name = "quote" -version = "1.0.42" +version = "1.0.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" +checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1" dependencies = [ "proc-macro2", ] @@ -7664,158 +6349,81 @@ dependencies = [ ] [[package]] -name = "rand_distr" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" -dependencies = [ - "num-traits", - "rand 0.8.5", -] - -[[package]] -name = "rand_distr" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8615d50dcf34fa31f7ab52692afec947c4dd0ab803cc87cb3b0b4570ff7463" -dependencies = [ - "num-traits", - "rand 0.9.2", -] - -[[package]] -name = "rand_xoshiro" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" -dependencies = [ - "rand_core 0.6.4", -] - -[[package]] -name = "rand_xoshiro" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f703f4665700daf5512dcca5f43afa6af89f09db47fb56be587f80636bda2d41" -dependencies = [ - "rand_core 0.9.3", -] - -[[package]] -name = "random-access-bench" -version = "0.1.0" -dependencies = [ - "anyhow", - "clap", - "indicatif", - "lance-bench", - "tokio", - "vortex", - "vortex-bench", -] - -[[package]] -name = "random_word" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e47a395bdb55442b883c89062d6bcff25dc90fa5f8369af81e0ac6d49d78cf81" -dependencies = [ - "ahash 0.8.12", - "brotli", - "paste", - "rand 0.9.2", - "unicase", -] - -[[package]] -name = "rangemap" -version = "1.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "973443cf09a9c8656b574a866ab68dfa19f0867d0340648c7d2f6a71b8a8ea68" - -[[package]] -name = "ratatui" -version = "0.30.0" +name = "rand_distr" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1ce67fb8ba4446454d1c8dbaeda0557ff5e94d39d5e5ed7f10a65eb4c8266bc" +checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31" dependencies = [ - "instability", - "ratatui-core", - "ratatui-crossterm", - "ratatui-macros", - "ratatui-termwiz", - "ratatui-widgets", + "num-traits", + "rand 0.8.5", ] [[package]] -name = "ratatui-core" -version = "0.1.0" +name = "rand_distr" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ef8dea09a92caaf73bff7adb70b76162e5937524058a7e5bff37869cbbec293" +checksum = "6a8615d50dcf34fa31f7ab52692afec947c4dd0ab803cc87cb3b0b4570ff7463" dependencies = [ - "bitflags 2.10.0", - "compact_str", - "hashbrown 0.16.1", - "indoc", - "itertools 0.14.0", - "kasuari", - "lru 0.16.3", - "strum 0.27.2", - "thiserror 2.0.17", - "unicode-segmentation", - "unicode-truncate", - "unicode-width", + "num-traits", + "rand 0.9.2", ] [[package]] -name = "ratatui-crossterm" -version = "0.1.0" +name = "rand_xoshiro" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "577c9b9f652b4c121fb25c6a391dd06406d3b092ba68827e6d2f09550edc54b3" +checksum = "6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa" dependencies = [ - "cfg-if", - "crossterm", - "instability", - "ratatui-core", + "rand_core 0.6.4", ] [[package]] -name = "ratatui-macros" +name = "rand_xoshiro" version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7f1342a13e83e4bb9d0b793d0ea762be633f9582048c892ae9041ef39c936f4" +checksum = "f703f4665700daf5512dcca5f43afa6af89f09db47fb56be587f80636bda2d41" dependencies = [ - "ratatui-core", - "ratatui-widgets", + "rand_core 0.9.3", ] [[package]] -name = "ratatui-termwiz" -version = "0.1.0" +name = "random_word" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f76fe0bd0ed4295f0321b1676732e2454024c15a35d01904ddb315afd3d545c" +checksum = "e47a395bdb55442b883c89062d6bcff25dc90fa5f8369af81e0ac6d49d78cf81" dependencies = [ - "ratatui-core", - "termwiz", + "ahash", + "brotli", + "paste", + "rand 0.9.2", + "unicase", ] [[package]] -name = "ratatui-widgets" -version = "0.3.0" +name = "rangemap" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f93e7e49bb0bf967717f7bd674458b3d6b0c5f48ec7e3038166026a69fc22223" + +[[package]] +name = "ratatui" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7dbfa023cd4e604c2553483820c5fe8aa9d71a42eea5aa77c6e7f35756612db" +checksum = "eabd94c2f37801c20583fc49dd5cd6b0ba68c716787c2dd6ed18571e1e63117b" dependencies = [ - "bitflags 2.10.0", - "hashbrown 0.16.1", + "bitflags", + "cassowary", + "compact_str", + "crossterm 0.28.1", "indoc", "instability", - "itertools 0.14.0", - "line-clipping", - "ratatui-core", - "strum 0.27.2", - "time", + "itertools 0.13.0", + "lru", + "paste", + "strum 0.26.3", "unicode-segmentation", - "unicode-width", + "unicode-truncate", + "unicode-width 0.2.0", ] [[package]] @@ -7850,7 +6458,7 @@ version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ - "bitflags 2.10.0", + "bitflags", ] [[package]] @@ -7864,26 +6472,6 @@ dependencies = [ "thiserror 2.0.17", ] -[[package]] -name = "ref-cast" -version = "1.0.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d" -dependencies = [ - "ref-cast-impl", -] - -[[package]] -name = "ref-cast-impl" -version = "1.0.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.110", -] - [[package]] name = "regex" version = "1.12.2" @@ -7898,9 +6486,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.13" +version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c" +checksum = "722166aa0d7438abbaa4d5cc2c649dac844e8c56d82fb3d33e9c34b5cd268fc6" dependencies = [ "aho-corasick", "memchr", @@ -7915,9 +6503,9 @@ checksum = "8d942b98df5e658f56f20d592c7f868833fe38115e65c33003d8cd224b0155da" [[package]] name = "regex-syntax" -version = "0.8.8" +version = "0.8.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58" +checksum = "c3160422bbd54dd5ecfdca71e5fd59b7b8fe2b1697ab2baf64f6d05dcc66d298" [[package]] name = "relative-path" @@ -7925,15 +6513,6 @@ version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" -[[package]] -name = "rend" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" -dependencies = [ - "bytecheck", -] - [[package]] name = "reqsign" version = "0.16.5" @@ -7968,10 +6547,11 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.28" +version = "0.12.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" +checksum = "9d0946410b9f7b082a427e4ef5c8ff541a88b357bc6c637c40db3a68ac70a36f" dependencies = [ + "async-compression", "base64", "bytes", "encoding_rs", @@ -7984,13 +6564,11 @@ dependencies = [ "http-body-util", "hyper", "hyper-rustls", - "hyper-tls", "hyper-util", "js-sys", "log", "mime", "mime_guess", - "native-tls", "percent-encoding", "pin-project-lite", "quinn", @@ -8002,7 +6580,6 @@ dependencies = [ "serde_urlencoded", "sync_wrapper", "tokio", - "tokio-native-tls", "tokio-rustls", "tokio-util", "tower", @@ -8030,35 +6607,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "rkyv" -version = "0.7.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2297bf9c81a3f0dc96bc9521370b88f054168c29826a75e89c55ff196e7ed6a1" -dependencies = [ - "bitvec", - "bytecheck", - "bytes", - "hashbrown 0.12.3", - "ptr_meta", - "rend", - "rkyv_derive", - "seahash", - "tinyvec", - "uuid", -] - -[[package]] -name = "rkyv_derive" -version = "0.7.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84d7b42d4b8d06048d3ac8db0eb31bcb942cbeb709f0b5f2b2ebde398d3038f5" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "roaring" version = "0.10.12" @@ -8071,9 +6619,9 @@ dependencies = [ [[package]] name = "roaring" -version = "0.11.3" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ba9ce64a8f45d7fc86358410bb1a82e8c987504c0d4900e9141d69a9f26c885" +checksum = "f08d6a905edb32d74a5d5737a0c9d7e950c312f3c46cb0ca0a2ca09ea11878a0" dependencies = [ "bytemuck", "byteorder", @@ -8081,9 +6629,9 @@ dependencies = [ [[package]] name = "rsa" -version = "0.9.10" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8573f03f5883dcaebdfcf4725caa1ecb9c15b2ef50c43a07b816e06799bb12d" +checksum = "78928ac1ed176a5ca1d17e578a1825f3d81ca54cf41053a592584b020cfd691b" dependencies = [ "const-oid", "digest", @@ -8125,7 +6673,7 @@ dependencies = [ "regex", "relative-path", "rustc_version", - "syn 2.0.110", + "syn 2.0.106", "unicode-ident", ] @@ -8137,7 +6685,7 @@ checksum = "b3a8fb4672e840a587a66fc577a5491375df51ddb88f2a2c2a792598c326fe14" dependencies = [ "quote", "rand 0.8.5", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -8160,22 +6708,6 @@ dependencies = [ "serde_derive", ] -[[package]] -name = "rust_decimal" -version = "1.39.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35affe401787a9bd846712274d97654355d21b2a2c092a3139aabe31e9022282" -dependencies = [ - "arrayvec", - "borsh", - "bytes", - "num-traits", - "rand 0.8.5", - "rkyv", - "serde", - "serde_json", -] - [[package]] name = "rustc-hash" version = "2.1.1" @@ -8203,11 +6735,11 @@ version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags 2.10.0", + "bitflags", "errno", "libc", "linux-raw-sys 0.4.15", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -8216,18 +6748,18 @@ version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" dependencies = [ - "bitflags 2.10.0", + "bitflags", "errno", "libc", "linux-raw-sys 0.11.0", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] name = "rustls" -version = "0.23.36" +version = "0.23.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c665f33d38cea657d9614f766881e4d510e0eda4239891eea56b4cadcf01801b" +checksum = "cd3c25631629d034ce7cd9940adc9d45762d46de2b0f57193c4443b92c6d4d40" dependencies = [ "aws-lc-rs", "once_cell", @@ -8240,14 +6772,14 @@ dependencies = [ [[package]] name = "rustls-native-certs" -version = "0.8.3" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" +checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3" dependencies = [ - "openssl-probe 0.2.0", + "openssl-probe", "rustls-pki-types", "schannel", - "security-framework 3.5.1", + "security-framework", ] [[package]] @@ -8261,9 +6793,9 @@ dependencies = [ [[package]] name = "rustls-pki-types" -version = "1.13.2" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21e6f2ab2928ca4291b86736a8bd920a277a399bba1589409d72154ff87c1282" +checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" dependencies = [ "web-time", "zeroize", @@ -8271,9 +6803,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.8" +version = "0.103.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ffdfa2f5286e2247234e03f680868ac2815974dc39e00ea15adc445d0aafe52" +checksum = "e10b3f4191e8a80e6b43eebabfac91e5dcecebb27a71f04e820c47ec41d314bf" dependencies = [ "aws-lc-rs", "ring", @@ -8320,18 +6852,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[package]] -name = "schemars" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54e910108742c57a770f492731f99be216a52fadd361b06c8fb59d74ccc267d2" -dependencies = [ - "dyn-clone", - "ref-cast", - "serde", - "serde_json", -] - [[package]] name = "scoped-tls" version = "1.0.1" @@ -8361,32 +6881,13 @@ dependencies = [ "sha2", ] -[[package]] -name = "seahash" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" - -[[package]] -name = "security-framework" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" -dependencies = [ - "bitflags 2.10.0", - "core-foundation 0.9.4", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - [[package]] name = "security-framework" version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3297343eaf830f66ede390ea39da1d462b6b0c1b000f420d0a83f898bbbe6ef" dependencies = [ - "bitflags 2.10.0", + "bitflags", "core-foundation 0.10.1", "core-foundation-sys", "libc", @@ -8452,20 +6953,20 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] name = "serde_json" -version = "1.0.148" +version = "1.0.145" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3084b546a1dd6289475996f182a22aba973866ea8e8b02c51d9f46b1336a22da" +checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" dependencies = [ "itoa", "memchr", + "ryu", "serde", "serde_core", - "zmij", ] [[package]] @@ -8476,14 +6977,14 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] name = "serde_spanned" -version = "1.0.4" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8bbf91e5a4d6315eee45e704372590b30e260ee83af6639d64557f51b067776" +checksum = "e24345aa0fe688594e73770a5f6d1b216508b4f93484c0026d521acd30134392" dependencies = [ "serde_core", ] @@ -8567,9 +7068,9 @@ dependencies = [ [[package]] name = "signal-hook-mio" -version = "0.2.5" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b75a19a7a740b25bc7944bdee6172368f988763b744e3d4dfe753f6b4ece40cc" +checksum = "34db1a06d485c9142248b7a054f034b349b212551f3dfd19c94d45a754a217cd" dependencies = [ "libc", "mio", @@ -8578,9 +7079,9 @@ dependencies = [ [[package]] name = "signal-hook-registry" -version = "1.4.7" +version = "1.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7664a098b8e616bdfcc2dc0e9ac44eb231eedf41db4e9fe95d8d32ec728dedad" +checksum = "b2a4719bff48cee6b39d12c020eeb490953ad2443b7055bd0b21fca26bd8c28b" dependencies = [ "libc", ] @@ -8639,6 +7140,17 @@ dependencies = [ "time", ] +[[package]] +name = "simplelog" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16257adbfaef1ee58b1363bdc0664c9b8e1e30aed86049635fb5f147d065a9c0" +dependencies = [ + "log", + "termcolor", + "time", +] + [[package]] name = "siphasher" version = "1.0.1" @@ -8710,7 +7222,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -8721,22 +7233,12 @@ checksum = "1b6b67fb9a61334225b5b790716f609cd58395f895b3fe8b328786812a40bc3b" [[package]] name = "socket2" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" -dependencies = [ - "libc", - "winapi", -] - -[[package]] -name = "socket2" -version = "0.6.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "17129e116933cf371d018bb80ae557e889637989d8638274fb25622827b03881" +checksum = "233504af464074f9d066d7b5416c5f9b894a5862a6506e306f7b816cdd6f1807" dependencies = [ "libc", - "windows-sys 0.60.2", + "windows-sys 0.59.0", ] [[package]] @@ -8765,16 +7267,6 @@ dependencies = [ "sqlparser_derive", ] -[[package]] -name = "sqlparser" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4591acadbcf52f0af60eafbb2c003232b2b4cd8de5f0e9437cb8b1b59046cc0f" -dependencies = [ - "log", - "sqlparser_derive", -] - [[package]] name = "sqlparser_derive" version = "0.3.0" @@ -8783,7 +7275,7 @@ checksum = "da5fc6819faabb412da764b99d3b713bb55083c11e7e0c00144d386cd6a1939c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -8854,7 +7346,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -8866,7 +7358,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -8888,9 +7380,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.110" +version = "2.0.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a99801b5bd34ede4cf3fc688c5919368fea4e4814a4664359503e6015b280aea" +checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" dependencies = [ "proc-macro2", "quote", @@ -8914,21 +7406,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", -] - -[[package]] -name = "sysinfo" -version = "0.35.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c3ffa3e4ff2b324a57f7aeb3c349656c7b127c3c189520251a648102a92496e" -dependencies = [ - "libc", - "memchr", - "ntapi", - "objc2-core-foundation", - "objc2-io-kit", - "windows", + "syn 2.0.106", ] [[package]] @@ -8951,7 +7429,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ - "bitflags 2.10.0", + "bitflags", "core-foundation 0.9.4", "system-configuration-sys", ] @@ -9024,8 +7502,8 @@ dependencies = [ "itertools 0.14.0", "levenshtein_automata", "log", - "lru 0.12.5", - "lz4_flex 0.11.5", + "lru", + "lz4_flex", "measure_time", "memmap2", "once_cell", @@ -9152,6 +7630,17 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" +[[package]] +name = "tar" +version = "0.4.44" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d863878d212c87a19c1a610eb53bb01fe12951c0501cf5a0d65f724914a667a" +dependencies = [ + "filetime", + "libc", + "xattr", +] + [[package]] name = "target-features" version = "0.1.6" @@ -9160,9 +7649,9 @@ checksum = "c1bbb9f3c5c463a01705937a24fdabc5047929ac764b2d5b9cf681c1f5041ed5" [[package]] name = "target-lexicon" -version = "0.13.4" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1dd07eb858a2067e2f3c7155d54e929265c264e6f37efe3ee7a8d1b5a1dd0ba" +checksum = "df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c" [[package]] name = "tempfile" @@ -9174,7 +7663,7 @@ dependencies = [ "getrandom 0.3.4", "once_cell", "rustix 1.1.2", - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] @@ -9196,103 +7685,19 @@ dependencies = [ "windows-sys 0.60.2", ] -[[package]] -name = "terminfo" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4ea810f0692f9f51b382fff5893887bb4580f5fa246fde546e0b13e7fcee662" -dependencies = [ - "fnv", - "nom 7.1.3", - "phf 0.11.3", - "phf_codegen", -] - -[[package]] -name = "termios" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "411c5bf740737c7918b8b1fe232dca4dc9f8e754b8ad5e20966814001ed0ac6b" -dependencies = [ - "libc", -] - [[package]] name = "termtree" version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683" -[[package]] -name = "termwiz" -version = "0.23.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4676b37242ccbd1aabf56edb093a4827dc49086c0ffd764a5705899e0f35f8f7" -dependencies = [ - "anyhow", - "base64", - "bitflags 2.10.0", - "fancy-regex", - "filedescriptor", - "finl_unicode", - "fixedbitset 0.4.2", - "hex", - "lazy_static", - "libc", - "log", - "memmem", - "nix 0.29.0", - "num-derive", - "num-traits", - "ordered-float 4.6.0", - "pest", - "pest_derive", - "phf 0.11.3", - "sha2", - "signal-hook", - "siphasher", - "terminfo", - "termios", - "thiserror 1.0.69", - "ucd-trie", - "unicode-segmentation", - "vtparse", - "wezterm-bidi", - "wezterm-blob-leases", - "wezterm-color-types", - "wezterm-dynamic", - "wezterm-input-types", - "winapi", -] - -[[package]] -name = "test-with" -version = "0.14.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d75791778b593ea6d76454886a69cd37245c4c9af6fee37c42f024593bf1fb03" -dependencies = [ - "byte-unit", - "chrono", - "num_cpus", - "ping", - "proc-macro-error2", - "proc-macro2", - "quote", - "regex", - "reqwest", - "syn 2.0.110", - "sysinfo 0.35.2", - "uzers", - "which", -] - [[package]] name = "testing_table" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0f8daae29995a24f65619e19d8d31dea5b389f3d853d8bf297bbf607cd0014cc" dependencies = [ - "unicode-width", + "unicode-width 0.2.0", ] [[package]] @@ -9321,7 +7726,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -9332,7 +7737,7 @@ checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -9418,9 +7823,9 @@ dependencies = [ [[package]] name = "tinystr" -version = "0.8.2" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42d3e9c45c09de15d06dd8acf5f4e0e399e85927b7f00711024eb7ae10fa4869" +checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b" dependencies = [ "displaydoc", "zerovec", @@ -9453,7 +7858,7 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2 0.6.1", + "socket2", "tokio-macros", "windows-sys 0.61.2", ] @@ -9466,17 +7871,7 @@ checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", -] - -[[package]] -name = "tokio-native-tls" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" -dependencies = [ - "native-tls", - "tokio", + "syn 2.0.106", ] [[package]] @@ -9491,9 +7886,9 @@ dependencies = [ [[package]] name = "tokio-stream" -version = "0.1.18" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32da49809aab5c3bc678af03902d4ccddea2a87d028d86392a4b1560c6906c70" +checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" dependencies = [ "futures-core", "pin-project-lite", @@ -9502,9 +7897,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.18" +version = "0.7.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" +checksum = "2efa149fe76073d6e8fd97ef4f4eca7b67f599660115591483572e406e165594" dependencies = [ "bytes", "futures-core", @@ -9560,9 +7955,9 @@ dependencies = [ [[package]] name = "toml_writer" -version = "1.0.6+spec-1.1.0" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607" +checksum = "df8b2b54733674ad286d16267dcfc7a71ed5c776e4ac7aa3c3e2561f7c637bf2" [[package]] name = "tonic" @@ -9613,22 +8008,17 @@ dependencies = [ [[package]] name = "tower-http" -version = "0.6.8" +version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" +checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" dependencies = [ - "async-compression", - "bitflags 2.10.0", + "bitflags", "bytes", - "futures-core", "futures-util", "http 1.3.1", "http-body 1.0.1", - "http-body-util", "iri-string", "pin-project-lite", - "tokio", - "tokio-util", "tower", "tower-layer", "tower-service", @@ -9648,27 +8038,26 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tpchgen" -version = "2.0.2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d651db770ccf53b89dd769ed47899c0c089452e3b725c3c48fbc6a2be579638" +checksum = "d5315a6fb66b84b9dc4ade3ce3d85fc246305c87a8106193e9565b8a45394cbe" [[package]] name = "tpchgen-arrow" -version = "2.0.2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "180f3759dffbf26d47021d2a84245a00f20945384bcf22e63c32652b04916e5a" +checksum = "a9e70da6e86f54ff3524628dc84cb0a9e674ea28e8a8a82fe3839af8c7fd743b" dependencies = [ - "arrow 57.1.0", + "arrow", "tpchgen", ] [[package]] name = "tracing" -version = "0.1.44" +version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" +checksum = "2d15d90a0b5c19378952d479dc858407149d7bb45a14de0142f6c534b16fc647" dependencies = [ - "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -9682,14 +8071,14 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] name = "tracing-core" -version = "0.1.36" +version = "0.1.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" +checksum = "7a04e24fab5c89c6a36eb8558c9656f30d81de51dfa4d3b45f26b21d61fa0a6c" dependencies = [ "once_cell", "valuable", @@ -9756,16 +8145,16 @@ dependencies = [ ] [[package]] -name = "typenum" -version = "1.19.0" +name = "typeid" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" +checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" [[package]] -name = "ucd-trie" -version = "0.1.7" +name = "typenum" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" [[package]] name = "uint" @@ -9782,15 +8171,15 @@ dependencies = [ [[package]] name = "unicase" -version = "2.9.0" +version = "2.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142" +checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539" [[package]] name = "unicode-ident" -version = "1.0.22" +version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5" +checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" [[package]] name = "unicode-segmentation" @@ -9800,15 +8189,21 @@ checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" [[package]] name = "unicode-truncate" -version = "2.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fbf03860ff438702f3910ca5f28f8dac63c1c11e7efb5012b8b175493606330" +checksum = "b3644627a5af5fa321c95b9b235a72fd24cd29c648c2c379431e6628655627bf" dependencies = [ "itertools 0.13.0", "unicode-segmentation", - "unicode-width", + "unicode-width 0.1.14", ] +[[package]] +name = "unicode-width" +version = "0.1.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" + [[package]] name = "unicode-width" version = "0.2.0" @@ -9829,9 +8224,9 @@ checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3" [[package]] name = "unit-prefix" -version = "0.5.2" +version = "0.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81e544489bf3d8ef66c953931f56617f423cd4b5494be343d9b9d3dda037b9a3" +checksum = "323402cff2dd658f39ca17c789b502021b3f18707c91cdf22e3838e1b4023817" [[package]] name = "untrusted" @@ -9863,12 +8258,6 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7fcfc827f90e53a02eaef5e535ee14266c1d569214c6aa70133a624d8a3164ba" -[[package]] -name = "utf8-width" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1292c0d970b54115d14f2492fe0170adf21d68a1de108eebc51c1df4f346a091" - [[package]] name = "utf8_iter" version = "1.0.4" @@ -9887,35 +8276,18 @@ version = "1.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" dependencies = [ - "atomic", "getrandom 0.3.4", "js-sys", "serde", "wasm-bindgen", ] -[[package]] -name = "uzers" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76d283dc7e8c901e79e32d077866eaf599156cbf427fffa8289aecc52c5c3f63" -dependencies = [ - "libc", - "log", -] - [[package]] name = "valuable" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" -[[package]] -name = "vcpkg" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" - [[package]] name = "version_check" version = "0.9.5" @@ -9927,12 +8299,12 @@ name = "vortex" version = "0.1.0" dependencies = [ "anyhow", - "arrow-array 57.1.0", + "arrow-array", "codspeed-divan-compat", "fastlanes", "itertools 0.14.0", "mimalloc", - "parquet 57.0.0", + "parquet", "rand 0.9.2", "serde_json", "tokio", @@ -9944,7 +8316,6 @@ dependencies = [ "vortex-btrblocks", "vortex-buffer", "vortex-bytebool", - "vortex-compute", "vortex-datetime-parts", "vortex-decimal-byte-parts", "vortex-dtype", @@ -9967,7 +8338,6 @@ dependencies = [ "vortex-session", "vortex-sparse", "vortex-utils", - "vortex-vector", "vortex-zigzag", "vortex-zstd", ] @@ -10001,18 +8371,21 @@ version = "0.1.0" dependencies = [ "arbitrary", "arcref", - "arrow-arith 57.1.0", - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-cast 57.1.0", - "arrow-data 57.1.0", - "arrow-ord 57.1.0", - "arrow-schema 57.1.0", - "arrow-select 57.1.0", - "arrow-string 57.1.0", + "arrow-arith", + "arrow-array", + "arrow-buffer", + "arrow-cast", + "arrow-data", + "arrow-ord", + "arrow-schema", + "arrow-select", + "arrow-string", + "async-trait", + "bitvec", "cfg-if", "codspeed-divan-compat", "enum-iterator", + "enum-map", "flatbuffers", "futures", "getrandom 0.3.4", @@ -10021,6 +8394,7 @@ dependencies = [ "insta", "inventory", "itertools 0.14.0", + "log", "multiversion", "num-traits", "num_enum", @@ -10029,22 +8403,23 @@ dependencies = [ "pin-project-lite", "prost 0.14.1", "rand 0.9.2", - "rand_distr 0.5.1", "rstest", "rstest_reuse", "rustc-hash", "serde", "simdutf8", + "static_assertions", "tabled", "termtree", - "tracing", "vortex-array", "vortex-buffer", "vortex-compute", "vortex-dtype", "vortex-error", "vortex-flatbuffers", + "vortex-io", "vortex-mask", + "vortex-metrics", "vortex-proto", "vortex-scalar", "vortex-session", @@ -10052,62 +8427,19 @@ dependencies = [ "vortex-vector", ] -[[package]] -name = "vortex-bench" -version = "0.1.0" -dependencies = [ - "anyhow", - "arrow-array 57.1.0", - "arrow-schema 57.1.0", - "arrow-select 57.1.0", - "async-trait", - "bytes", - "bzip2", - "clap", - "futures", - "get_dir", - "glob", - "humansize", - "indicatif", - "itertools 0.14.0", - "mimalloc", - "noodles-bgzf", - "noodles-vcf", - "parking_lot", - "parquet 57.0.0", - "rand 0.9.2", - "regex", - "reqwest", - "serde", - "serde_json", - "sysinfo 0.37.2", - "tabled", - "target-lexicon", - "tokio", - "tokio-stream", - "tokio-util", - "tpchgen", - "tpchgen-arrow", - "tracing", - "tracing-perfetto", - "tracing-subscriber", - "url", - "uuid", - "vortex", -] - [[package]] name = "vortex-btrblocks" version = "0.1.0" dependencies = [ "codspeed-divan-compat", + "env_logger", "getrandom 0.3.4", "itertools 0.14.0", + "log", "num-traits", "rand 0.9.2", + "rstest", "rustc-hash", - "test-with", - "tracing", "vortex-alp", "vortex-array", "vortex-buffer", @@ -10130,18 +8462,18 @@ dependencies = [ name = "vortex-buffer" version = "0.1.0" dependencies = [ - "arrow-buffer 57.1.0", + "arrow-buffer", "bitvec", "bytes", "codspeed-divan-compat", "cudarc", "itertools 0.14.0", + "log", "memmap2", "num-traits", "rstest", "serde", "simdutf8", - "tracing", "vortex-error", ] @@ -10149,6 +8481,7 @@ dependencies = [ name = "vortex-bytebool" version = "0.1.0" dependencies = [ + "itertools 0.14.0", "num-traits", "rstest", "vortex-array", @@ -10163,17 +8496,14 @@ dependencies = [ name = "vortex-compute" version = "0.1.0" dependencies = [ - "arrow-array 57.1.0", - "arrow-buffer 57.1.0", - "arrow-schema 57.1.0", + "arrow-array", + "arrow-buffer", + "arrow-schema", "codspeed-divan-compat", - "half", - "itertools 0.14.0", + "log", "multiversion", "num-traits", "paste", - "rstest", - "tracing", "vortex-buffer", "vortex-dtype", "vortex-error", @@ -10186,8 +8516,8 @@ name = "vortex-cxx" version = "0.1.0" dependencies = [ "anyhow", - "arrow-array 57.1.0", - "arrow-schema 57.1.0", + "arrow-array", + "arrow-schema", "async-fs", "cxx", "cxx-build", @@ -10202,25 +8532,26 @@ name = "vortex-datafusion" version = "0.1.0" dependencies = [ "anyhow", - "arrow-schema 57.1.0", + "arrow-schema", "async-trait", "chrono", - "datafusion 51.0.0", - "datafusion-catalog 51.0.0", - "datafusion-common 51.0.0", - "datafusion-common-runtime 51.0.0", - "datafusion-datasource 51.0.0", - "datafusion-execution 51.0.0", - "datafusion-expr 51.0.0", - "datafusion-functions 51.0.0", - "datafusion-physical-expr 51.0.0", - "datafusion-physical-expr-adapter 51.0.0", - "datafusion-physical-expr-common 51.0.0", - "datafusion-physical-plan 51.0.0", - "datafusion-pruning 51.0.0", + "datafusion", + "datafusion-catalog", + "datafusion-common", + "datafusion-common-runtime", + "datafusion-datasource", + "datafusion-execution", + "datafusion-expr", + "datafusion-functions", + "datafusion-physical-expr", + "datafusion-physical-expr-adapter", + "datafusion-physical-expr-common", + "datafusion-physical-plan", + "datafusion-pruning", "futures", "insta", "itertools 0.14.0", + "log", "moka", "object_store", "rstest", @@ -10228,7 +8559,6 @@ dependencies = [ "tokio", "tokio-stream", "tracing", - "url", "vortex", "vortex-utils", "walkdir", @@ -10253,6 +8583,7 @@ dependencies = [ name = "vortex-decimal-byte-parts" version = "0.1.0" dependencies = [ + "itertools 0.14.0", "num-traits", "prost 0.14.1", "rstest", @@ -10269,8 +8600,8 @@ name = "vortex-dtype" version = "0.1.0" dependencies = [ "arbitrary", - "arrow-buffer 57.1.0", - "arrow-schema 57.1.0", + "arrow-buffer", + "arrow-schema", "flatbuffers", "half", "insta", @@ -10308,6 +8639,7 @@ dependencies = [ "glob", "itertools 0.14.0", "jiff", + "log", "num-traits", "object_store", "once_cell", @@ -10316,7 +8648,6 @@ dependencies = [ "reqwest", "rstest", "tempfile", - "tracing", "url", "vortex", "vortex-runend", @@ -10331,7 +8662,7 @@ dependencies = [ name = "vortex-error" version = "0.1.0" dependencies = [ - "arrow-schema 57.1.0", + "arrow-schema", "flatbuffers", "jiff", "object_store", @@ -10347,14 +8678,18 @@ name = "vortex-fastlanes" version = "0.1.0" dependencies = [ "arrayref", + "arrow-buffer", "codspeed-divan-compat", "fastlanes", "itertools 0.14.0", "lending-iterator", + "log", + "mimalloc", "num-traits", "prost 0.14.1", "rand 0.9.2", "rstest", + "static_assertions", "vortex-alp", "vortex-array", "vortex-buffer", @@ -10365,6 +8700,7 @@ dependencies = [ "vortex-mask", "vortex-scalar", "vortex-session", + "vortex-utils", "vortex-vector", ] @@ -10376,13 +8712,15 @@ dependencies = [ "cbindgen", "futures", "itertools 0.14.0", + "log", "mimalloc", + "moka", "object_store", + "parking_lot", "paste", "prost 0.14.1", + "simplelog", "tempfile", - "tracing", - "tracing-subscriber", "url", "vortex", ] @@ -10398,10 +8736,10 @@ dependencies = [ "getrandom 0.3.4", "itertools 0.14.0", "kanal", + "log", "object_store", "parking_lot", "tokio", - "tracing", "uuid", "vortex-alp", "vortex-array", @@ -10441,9 +8779,10 @@ dependencies = [ name = "vortex-fsst" version = "0.1.0" dependencies = [ + "async-trait", "codspeed-divan-compat", "fsst-rs", - "num-traits", + "itertools 0.14.0", "prost 0.14.1", "rand 0.9.2", "rstest", @@ -10489,11 +8828,13 @@ dependencies = [ "async-stream", "async-trait", "bytes", + "cfg-if", "futures", "getrandom 0.3.4", "handle", "itertools 0.14.0", "kanal", + "log", "object_store", "oneshot", "parking_lot", @@ -10503,6 +8844,7 @@ dependencies = [ "tempfile", "tokio", "tracing", + "tracing-subscriber", "vortex-buffer", "vortex-error", "vortex-metrics", @@ -10531,18 +8873,18 @@ dependencies = [ name = "vortex-jni" version = "0.1.0" dependencies = [ - "arrow-array 57.1.0", - "arrow-ipc 57.1.0", - "arrow-schema 57.1.0", + "arrow-array", + "arrow-ipc", + "arrow-schema", "futures", "jni", + "log", "object_store", "parking_lot", "prost 0.14.1", + "simplelog", "thiserror 2.0.17", "tokio", - "tracing", - "tracing-subscriber", "url", "vortex", ] @@ -10552,12 +8894,14 @@ name = "vortex-layout" version = "0.1.0" dependencies = [ "arcref", + "arrow-buffer", "async-stream", "async-trait", "flatbuffers", "futures", "itertools 0.14.0", "kanal", + "log", "moka", "once_cell", "oneshot", @@ -10570,7 +8914,6 @@ dependencies = [ "rustc-hash", "termtree", "tokio", - "tracing", "uuid", "vortex-array", "vortex-btrblocks", @@ -10587,7 +8930,6 @@ dependencies = [ "vortex-sequence", "vortex-session", "vortex-utils", - "vortex-vector", "vortex-zstd", ] @@ -10595,7 +8937,6 @@ dependencies = [ name = "vortex-mask" version = "0.1.0" dependencies = [ - "arrow-buffer 57.1.0", "itertools 0.14.0", "rstest", "serde", @@ -10618,6 +8959,7 @@ name = "vortex-pco" version = "0.1.0" dependencies = [ "codspeed-divan-compat", + "itertools 0.14.0", "mimalloc", "pco", "prost 0.14.1", @@ -10625,10 +8967,12 @@ dependencies = [ "rstest", "vortex-array", "vortex-buffer", + "vortex-compute", "vortex-dtype", "vortex-error", "vortex-mask", "vortex-scalar", + "vortex-vector", ] [[package]] @@ -10643,9 +8987,9 @@ dependencies = [ name = "vortex-python" version = "0.1.0" dependencies = [ - "arrow-array 57.1.0", - "arrow-data 57.1.0", - "arrow-schema 57.1.0", + "arrow-array", + "arrow-data", + "arrow-schema", "bytes", "itertools 0.14.0", "log", @@ -10655,7 +8999,6 @@ dependencies = [ "pyo3-bytes", "pyo3-log", "tokio", - "tracing", "url", "vortex", "vortex-array", @@ -10665,7 +9008,8 @@ dependencies = [ name = "vortex-runend" version = "0.1.0" dependencies = [ - "arrow-array 57.1.0", + "arrow-array", + "arrow-buffer", "codspeed-divan-compat", "itertools 0.14.0", "num-traits", @@ -10678,7 +9022,6 @@ dependencies = [ "vortex-error", "vortex-mask", "vortex-scalar", - "vortex-session", ] [[package]] @@ -10686,7 +9029,7 @@ name = "vortex-scalar" version = "0.1.0" dependencies = [ "arbitrary", - "arrow-array 57.1.0", + "arrow-array", "bytes", "itertools 0.14.0", "num-traits", @@ -10706,15 +9049,16 @@ dependencies = [ name = "vortex-scan" version = "0.1.0" dependencies = [ - "arrow-array 57.1.0", - "arrow-schema 57.1.0", - "bit-vec 0.8.0", + "arrow-array", + "arrow-schema", + "bit-vec", "futures", "itertools 0.14.0", + "log", "parking_lot", - "roaring 0.11.3", + "roaring 0.11.2", "sketches-ddsketch", - "tracing", + "tokio", "vortex-array", "vortex-buffer", "vortex-dtype", @@ -10734,10 +9078,14 @@ dependencies = [ "num-traits", "prost 0.14.1", "rstest", + "tokio", "vortex-array", "vortex-buffer", "vortex-dtype", "vortex-error", + "vortex-file", + "vortex-io", + "vortex-layout", "vortex-mask", "vortex-proto", "vortex-scalar", @@ -10775,8 +9123,11 @@ name = "vortex-tui" version = "0.1.0" dependencies = [ "anyhow", + "arrow-array", + "arrow-schema", "clap", - "crossterm", + "crossterm 0.29.0", + "datafusion", "env_logger", "flatbuffers", "futures", @@ -10784,11 +9135,15 @@ dependencies = [ "humansize", "indicatif", "itertools 0.14.0", - "parquet 57.0.0", + "parquet", "ratatui", + "serde", + "serde_json", "taffy", + "termtree", "tokio", "vortex", + "vortex-datafusion", ] [[package]] @@ -10797,15 +9152,12 @@ version = "0.1.0" dependencies = [ "dashmap", "hashbrown 0.16.1", - "parking_lot", - "vortex-error", ] [[package]] name = "vortex-vector" version = "0.1.0" dependencies = [ - "num-traits", "paste", "static_assertions", "vortex-buffer", @@ -10818,6 +9170,7 @@ dependencies = [ name = "vortex-zigzag" version = "0.1.0" dependencies = [ + "itertools 0.14.0", "rstest", "vortex-array", "vortex-buffer", @@ -10842,6 +9195,7 @@ dependencies = [ "vortex-error", "vortex-mask", "vortex-scalar", + "vortex-sparse", "vortex-vector", "zstd", ] @@ -10852,15 +9206,6 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" -[[package]] -name = "vtparse" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d9b2acfb050df409c972a37d3b8e08cdea3bddb0c09db9d53137e504cfabed0" -dependencies = [ - "utf8parse", -] - [[package]] name = "walkdir" version = "2.5.0" @@ -10897,9 +9242,9 @@ dependencies = [ [[package]] name = "wasm-bindgen" -version = "0.2.106" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d759f433fa64a2d763d1340820e46e111a7a5ab75f993d1852d70b03dbb80fd" +checksum = "da95793dfc411fbbd93f5be7715b0578ec61fe87cb1a42b12eb625caa5c5ea60" dependencies = [ "cfg-if", "once_cell", @@ -10910,9 +9255,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.56" +version = "0.4.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "836d9622d604feee9e5de25ac10e3ea5f2d65b41eac0d9ce72eb5deae707ce7c" +checksum = "551f88106c6d5e7ccc7cd9a16f312dd3b5d36ea8b4954304657d5dfba115d4a0" dependencies = [ "cfg-if", "js-sys", @@ -10923,9 +9268,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.106" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48cb0d2638f8baedbc542ed444afc0644a29166f1595371af4fecf8ce1e7eeb3" +checksum = "04264334509e04a7bf8690f2384ef5265f05143a4bff3889ab7a3269adab59c2" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -10933,22 +9278,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.106" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cefb59d5cd5f92d9dcf80e4683949f15ca4b511f4ac0a6e14d4e1ac60c6ecd40" +checksum = "420bc339d9f322e562942d52e115d57e950d12d88983a14c79b86859ee6c7ebc" dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.106" +version = "0.2.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbc538057e648b67f72a982e708d485b2efa771e1ac05fec311f9f63e5800db4" +checksum = "76f218a38c84bcb33c25ec7059b07847d465ce0e0a76b995e134a45adcb6af76" dependencies = [ "unicode-ident", ] @@ -10968,9 +9313,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.83" +version = "0.3.82" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b32828d774c412041098d182a8b38b16ea816958e07cf40eec2bc080ae137ac" +checksum = "3a1f95c0d03a47f4ae1f7a64643a6bb97465d9b740f0fa8f90ea33915c99a9a1" dependencies = [ "js-sys", "wasm-bindgen", @@ -10988,96 +9333,13 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "1.0.5" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12bed680863276c63889429bfd6cab3b99943659923822de1c8a39c49e4d722c" +checksum = "32b130c0d2d49f8b6889abc456e795e82525204f27c42cf767cf0d7734e089b8" dependencies = [ "rustls-pki-types", ] -[[package]] -name = "wezterm-bidi" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c0a6e355560527dd2d1cf7890652f4f09bb3433b6aadade4c9b5ed76de5f3ec" -dependencies = [ - "log", - "wezterm-dynamic", -] - -[[package]] -name = "wezterm-blob-leases" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "692daff6d93d94e29e4114544ef6d5c942a7ed998b37abdc19b17136ea428eb7" -dependencies = [ - "getrandom 0.3.4", - "mac_address", - "sha2", - "thiserror 1.0.69", - "uuid", -] - -[[package]] -name = "wezterm-color-types" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7de81ef35c9010270d63772bebef2f2d6d1f2d20a983d27505ac850b8c4b4296" -dependencies = [ - "csscolorparser", - "deltae", - "lazy_static", - "wezterm-dynamic", -] - -[[package]] -name = "wezterm-dynamic" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f2ab60e120fd6eaa68d9567f3226e876684639d22a4219b313ff69ec0ccd5ac" -dependencies = [ - "log", - "ordered-float 4.6.0", - "strsim", - "thiserror 1.0.69", - "wezterm-dynamic-derive", -] - -[[package]] -name = "wezterm-dynamic-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c0cf2d539c645b448eaffec9ec494b8b19bd5077d9e58cb1ae7efece8d575b" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "wezterm-input-types" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7012add459f951456ec9d6c7e6fc340b1ce15d6fc9629f8c42853412c029e57e" -dependencies = [ - "bitflags 1.3.2", - "euclid", - "lazy_static", - "serde", - "wezterm-dynamic", -] - -[[package]] -name = "which" -version = "8.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3fabb953106c3c8eea8306e4393700d7657561cb43122571b172bbfb7c7ba1d" -dependencies = [ - "env_home", - "rustix 1.1.2", - "winsafe", -] - [[package]] name = "winapi" version = "0.3.9" @@ -11100,7 +9362,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.61.2", + "windows-sys 0.52.0", ] [[package]] @@ -11140,8 +9402,8 @@ dependencies = [ "windows-implement", "windows-interface", "windows-link 0.1.3", - "windows-result 0.3.4", - "windows-strings 0.4.2", + "windows-result", + "windows-strings", ] [[package]] @@ -11163,7 +9425,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -11174,7 +9436,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -11201,13 +9463,13 @@ dependencies = [ [[package]] name = "windows-registry" -version = "0.6.1" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02752bf7fbdcce7f2a27a742f798510f3e5ad88dbe84871e5168e2120c3d5720" +checksum = "5b8a9ed28765efc97bbc954883f4e6796c33a06546ebafacbabee9696967499e" dependencies = [ - "windows-link 0.2.1", - "windows-result 0.4.1", - "windows-strings 0.5.1", + "windows-link 0.1.3", + "windows-result", + "windows-strings", ] [[package]] @@ -11219,15 +9481,6 @@ dependencies = [ "windows-link 0.1.3", ] -[[package]] -name = "windows-result" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5" -dependencies = [ - "windows-link 0.2.1", -] - [[package]] name = "windows-strings" version = "0.4.2" @@ -11237,15 +9490,6 @@ dependencies = [ "windows-link 0.1.3", ] -[[package]] -name = "windows-strings" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091" -dependencies = [ - "windows-link 0.2.1", -] - [[package]] name = "windows-sys" version = "0.45.0" @@ -11495,12 +9739,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "winsafe" -version = "0.0.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d135d17ab770252ad95e9a872d365cf3090e3be864a34ab46f48555993efc904" - [[package]] name = "wit-bindgen" version = "0.46.0" @@ -11522,9 +9760,9 @@ dependencies = [ [[package]] name = "writeable" -version = "0.6.2" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9" +checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb" [[package]] name = "wyz" @@ -11535,6 +9773,16 @@ dependencies = [ "tap", ] +[[package]] +name = "xattr" +version = "1.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32e45ad4206f6d2479085147f02bc2ef834ac85886624a23575ae137c8aa8156" +dependencies = [ + "libc", + "rustix 1.1.2", +] + [[package]] name = "xmlparser" version = "0.13.6" @@ -11580,10 +9828,11 @@ checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" [[package]] name = "yoke" -version = "0.8.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72d6e5c6afb84d73944e5cedb052c4680d5657337201555f9f2a16b7406d4954" +checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc" dependencies = [ + "serde", "stable_deref_trait", "yoke-derive", "zerofrom", @@ -11591,34 +9840,34 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.8.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" +checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.28" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43fa6694ed34d6e57407afbccdeecfa268c470a7d2a5b0cf49ce9fcc345afb90" +checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.28" +version = "0.8.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c640b22cd9817fae95be82f0d2f90b11f7605f6c319d16705c459b27ac2cbc26" +checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -11638,7 +9887,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", "synstructure", ] @@ -11653,20 +9902,20 @@ dependencies = [ [[package]] name = "zeroize_derive" -version = "1.4.3" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] name = "zerotrie" -version = "0.2.3" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a59c17a5562d507e4b54960e8569ebee33bee890c70aa3fe7b97e85a9fd7851" +checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595" dependencies = [ "displaydoc", "yoke", @@ -11675,9 +9924,9 @@ dependencies = [ [[package]] name = "zerovec" -version = "0.11.5" +version = "0.11.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c28719294829477f525be0186d13efa9a3c602f7ec202ca9e353d310fb9a002" +checksum = "e7aa2bd55086f1ab526693ecbe444205da57e25f4489879da80635a46d90e73b" dependencies = [ "yoke", "zerofrom", @@ -11686,13 +9935,13 @@ dependencies = [ [[package]] name = "zerovec-derive" -version = "0.11.2" +version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" +checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.110", + "syn 2.0.106", ] [[package]] @@ -11737,17 +9986,11 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f06ae92f42f5e5c42443fd094f245eb656abf56dd7cce9b8b263236565e00f2" -[[package]] -name = "zmij" -version = "1.0.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30e0d8dffbae3d840f64bda38e28391faef673a7b5a6017840f2a106c8145868" - [[package]] name = "zopfli" -version = "0.8.3" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f05cd8797d63865425ff89b5c4a48804f35ba0ce8d125800027ad6017d2b5249" +checksum = "edfc5ee405f504cd4984ecc6f14d02d55cfda60fa4b689434ef4102aae150cd7" dependencies = [ "bumpalo", "crc32fast", diff --git a/vortex-tui/Cargo.toml b/vortex-tui/Cargo.toml index 30cc3f974b4..919298afff6 100644 --- a/vortex-tui/Cargo.toml +++ b/vortex-tui/Cargo.toml @@ -15,8 +15,11 @@ version = { workspace = true } [dependencies] anyhow = { workspace = true } +arrow-array = { workspace = true } +arrow-schema = { workspace = true } clap = { workspace = true, features = ["derive"] } crossterm = { workspace = true } +datafusion = { workspace = true } env_logger = { version = "0.11" } flatbuffers = { workspace = true } futures = { workspace = true, features = ["executor"] } @@ -26,9 +29,12 @@ indicatif = { workspace = true, features = ["futures"] } itertools = { workspace = true } parquet = { workspace = true, features = ["arrow", "async"] } ratatui = { workspace = true } +serde = { workspace = true, features = ["derive"] } +serde_json = { workspace = true } taffy = { workspace = true } tokio = { workspace = true, features = ["rt-multi-thread"] } vortex = { workspace = true, features = ["tokio"] } +vortex-datafusion = { workspace = true } [lints] workspace = true diff --git a/vortex-tui/src/datafusion_helper.rs b/vortex-tui/src/datafusion_helper.rs new file mode 100644 index 00000000000..6cc839c9867 --- /dev/null +++ b/vortex-tui/src/datafusion_helper.rs @@ -0,0 +1,232 @@ +// SPDX-License-Identifier: Apache-2.0 +// SPDX-FileCopyrightText: Copyright the Vortex contributors + +//! Shared DataFusion query execution utilities for both CLI and TUI. + +use std::sync::Arc; + +use arrow_array::Array as ArrowArray; +use arrow_array::RecordBatch; +use datafusion::datasource::listing::ListingOptions; +use datafusion::datasource::listing::ListingTable; +use datafusion::datasource::listing::ListingTableConfig; +use datafusion::datasource::listing::ListingTableUrl; +use datafusion::prelude::SessionContext; +use vortex::session::VortexSession; +use vortex_datafusion::VortexFormat; + +/// Execute a SQL query against a Vortex file. +/// +/// The file is registered as a table named "data". +/// Returns the result as a vector of RecordBatches. +/// +/// # Errors +/// +/// Returns an error if the query fails to parse or execute. +pub async fn execute_vortex_query( + session: &VortexSession, + file_path: &str, + sql: &str, +) -> Result, String> { + let ctx = create_vortex_context(session, file_path).await?; + + let df = ctx.sql(sql).await.map_err(|e| format!("SQL error: {e}"))?; + + df.collect() + .await + .map_err(|e| format!("Query execution error: {e}")) +} + +/// Create a DataFusion SessionContext with a Vortex file registered as "data". +/// +/// # Errors +/// +/// Returns an error if the context cannot be created. +pub async fn create_vortex_context( + session: &VortexSession, + file_path: &str, +) -> Result { + let ctx = SessionContext::new(); + let format = Arc::new(VortexFormat::new(session.clone())); + + let table_url = + ListingTableUrl::parse(file_path).map_err(|e| format!("Failed to parse file path: {e}"))?; + + let config = ListingTableConfig::new(table_url) + .with_listing_options( + ListingOptions::new(format).with_session_config_options(ctx.state().config()), + ) + .infer_schema(&ctx.state()) + .await + .map_err(|e| format!("Failed to infer schema: {e}"))?; + + let listing_table = Arc::new( + ListingTable::try_new(config).map_err(|e| format!("Failed to create table: {e}"))?, + ); + + ctx.register_table("data", listing_table) + .map_err(|e| format!("Failed to register table: {e}"))?; + + Ok(ctx) +} + +/// Convert an Arrow array value at a given index to a JSON value. +#[allow(clippy::unwrap_used)] +pub fn arrow_value_to_json(array: &dyn ArrowArray, idx: usize) -> serde_json::Value { + use arrow_array::*; + use arrow_schema::DataType; + + if array.is_null(idx) { + return serde_json::Value::Null; + } + + match array.data_type() { + DataType::Null => serde_json::Value::Null, + DataType::Boolean => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::Value::Bool(arr.value(idx)) + } + DataType::Int8 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::Int16 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::Int32 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::Int64 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::UInt8 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::UInt16 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::UInt32 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::UInt64 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::Float16 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx).to_f32()) + } + DataType::Float32 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::Float64 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::Utf8 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::Value::String(arr.value(idx).to_string()) + } + DataType::LargeUtf8 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::Value::String(arr.value(idx).to_string()) + } + DataType::Utf8View => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::Value::String(arr.value(idx).to_string()) + } + DataType::Binary => { + let arr = array.as_any().downcast_ref::().unwrap(); + let hex: String = arr.value(idx).iter().map(|b| format!("{b:02x}")).collect(); + serde_json::Value::String(hex) + } + DataType::LargeBinary => { + let arr = array.as_any().downcast_ref::().unwrap(); + let hex: String = arr.value(idx).iter().map(|b| format!("{b:02x}")).collect(); + serde_json::Value::String(hex) + } + DataType::BinaryView => { + let arr = array.as_any().downcast_ref::().unwrap(); + let hex: String = arr.value(idx).iter().map(|b| format!("{b:02x}")).collect(); + serde_json::Value::String(hex) + } + DataType::Date32 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::Date64 => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::json!(arr.value(idx)) + } + DataType::Timestamp(_, _) => { + if let Some(arr) = array.as_any().downcast_ref::() { + serde_json::json!(arr.value(idx)) + } else if let Some(arr) = array.as_any().downcast_ref::() { + serde_json::json!(arr.value(idx)) + } else if let Some(arr) = array.as_any().downcast_ref::() { + serde_json::json!(arr.value(idx)) + } else if let Some(arr) = array.as_any().downcast_ref::() { + serde_json::json!(arr.value(idx)) + } else { + serde_json::Value::String("".to_string()) + } + } + DataType::Decimal128(_, _) => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::Value::String(arr.value_as_string(idx)) + } + DataType::Decimal256(_, _) => { + let arr = array.as_any().downcast_ref::().unwrap(); + serde_json::Value::String(arr.value_as_string(idx)) + } + DataType::List(_) => { + let arr = array.as_any().downcast_ref::().unwrap(); + let value_arr = arr.value(idx); + let elements: Vec = (0..value_arr.len()) + .map(|i| arrow_value_to_json(value_arr.as_ref(), i)) + .collect(); + serde_json::Value::Array(elements) + } + DataType::LargeList(_) => { + let arr = array.as_any().downcast_ref::().unwrap(); + let value_arr = arr.value(idx); + let elements: Vec = (0..value_arr.len()) + .map(|i| arrow_value_to_json(value_arr.as_ref(), i)) + .collect(); + serde_json::Value::Array(elements) + } + DataType::Struct(_) => { + let arr = array.as_any().downcast_ref::().unwrap(); + let mut obj = serde_json::Map::new(); + for (i, field) in arr.fields().iter().enumerate() { + let col = arr.column(i); + obj.insert(field.name().clone(), arrow_value_to_json(col.as_ref(), idx)); + } + serde_json::Value::Object(obj) + } + _ => { + // Fallback for unsupported types + serde_json::Value::String(format!("<{}>", array.data_type())) + } + } +} + +/// Format a JSON value for display in the TUI. +/// +/// - Null becomes "NULL" +/// - Strings are displayed without quotes +/// - Other values use their JSON string representation +pub fn json_value_to_display(value: serde_json::Value) -> String { + match value { + serde_json::Value::Null => "NULL".to_string(), + serde_json::Value::String(s) => s, + other => other.to_string(), + } +} diff --git a/vortex-tui/src/lib.rs b/vortex-tui/src/lib.rs index 14088889e98..78a63895410 100644 --- a/vortex-tui/src/lib.rs +++ b/vortex-tui/src/lib.rs @@ -31,7 +31,9 @@ use vortex::session::VortexSession; pub mod browse; pub mod convert; +pub mod datafusion_helper; pub mod inspect; +pub mod query; pub mod segment_tree; pub mod segments; pub mod tree; @@ -53,6 +55,8 @@ enum Commands { Browse { file: PathBuf }, /// Inspect Vortex file footer and metadata Inspect(inspect::InspectArgs), + /// Execute a SQL query against a Vortex file using DataFusion + Query(query::QueryArgs), /// Display segment information for a Vortex file Segments(segments::SegmentsArgs), } @@ -67,6 +71,7 @@ impl Commands { Commands::Browse { file } => file, Commands::Convert(flags) => &flags.file, Commands::Inspect(args) => &args.file, + Commands::Query(args) => &args.file, Commands::Segments(args) => &args.file, } } @@ -100,6 +105,7 @@ pub async fn launch(session: &VortexSession) -> anyhow::Result<()> { Commands::Convert(flags) => convert::exec_convert(session, flags).await?, Commands::Browse { file } => browse::exec_tui(session, file).await?, Commands::Inspect(args) => inspect::exec_inspect(session, args).await?, + Commands::Query(args) => query::exec_query(session, args).await?, Commands::Segments(args) => segments::exec_segments(session, args).await?, }; diff --git a/vortex-tui/src/query.rs b/vortex-tui/src/query.rs new file mode 100644 index 00000000000..fa789bef4dc --- /dev/null +++ b/vortex-tui/src/query.rs @@ -0,0 +1,121 @@ +// SPDX-License-Identifier: Apache-2.0 +// SPDX-FileCopyrightText: Copyright the Vortex contributors + +//! Execute SQL queries against Vortex files using DataFusion. + +use std::path::PathBuf; + +use arrow_array::RecordBatch; +use serde::Serialize; +use vortex::error::VortexResult; +use vortex::error::vortex_err; +use vortex::session::VortexSession; + +use crate::datafusion_helper::arrow_value_to_json; +use crate::datafusion_helper::execute_vortex_query; + +/// Command-line arguments for the query command. +#[derive(Debug, clap::Parser)] +pub struct QueryArgs { + /// Path to the Vortex file + pub file: PathBuf, + + /// SQL query to execute. The table is available as 'data'. + /// Example: "SELECT * FROM data WHERE col > 10 LIMIT 100" + #[arg(long, short)] + pub sql: String, +} + +#[derive(Serialize)] +struct QueryOutput { + schema: SchemaInfo, + total_rows: u64, + rows: Vec, +} + +#[derive(Serialize)] +struct SchemaInfo { + fields: Vec, +} + +#[derive(Serialize)] +struct FieldInfo { + name: String, + dtype: String, + nullable: bool, +} + +/// Execute a SQL query against a Vortex file. +/// +/// # Errors +/// +/// Returns an error if the file cannot be opened or the query fails. +pub async fn exec_query(session: &VortexSession, args: QueryArgs) -> VortexResult<()> { + let file_path = args + .file + .to_str() + .ok_or_else(|| vortex_err!("Path is not valid UTF-8"))?; + + let batches: Vec = execute_vortex_query(session, file_path, &args.sql) + .await + .map_err(|e| vortex_err!("{e}"))?; + + // Build schema info from the result + let schema = if let Some(batch) = batches.first() { + build_schema_from_arrow(batch.schema().as_ref()) + } else { + SchemaInfo { fields: vec![] } + }; + + // Convert batches to JSON rows + let mut rows = Vec::new(); + for batch in &batches { + batch_to_json_rows(batch, &mut rows)?; + } + + let total_rows = rows.len() as u64; + + let output = QueryOutput { + schema, + total_rows, + rows, + }; + + let json_output = serde_json::to_string_pretty(&output) + .map_err(|e| vortex_err!("Failed to serialize JSON: {e}"))?; + println!("{json_output}"); + + Ok(()) +} + +fn build_schema_from_arrow(schema: &arrow_schema::Schema) -> SchemaInfo { + let fields = schema + .fields() + .iter() + .map(|f| FieldInfo { + name: f.name().clone(), + dtype: f.data_type().to_string(), + nullable: f.is_nullable(), + }) + .collect(); + + SchemaInfo { fields } +} + +fn batch_to_json_rows(batch: &RecordBatch, rows: &mut Vec) -> VortexResult<()> { + let schema = batch.schema(); + + for row_idx in 0..batch.num_rows() { + let mut obj = serde_json::Map::new(); + + for (col_idx, field) in schema.fields().iter().enumerate() { + let column = batch.column(col_idx); + let value = arrow_value_to_json(column.as_ref(), row_idx); + obj.insert(field.name().clone(), value); + } + + rows.push(serde_json::Value::Object(obj)); + } + + Ok(()) +} From 3d88542bb4d728ed41fe742f543d73c8d2e80301 Mon Sep 17 00:00:00 2001 From: Baris Palaska Date: Sun, 7 Dec 2025 03:36:36 +0000 Subject: [PATCH 4/7] feat(vx browse): add interactive SQL query tab Adds a Query tab to the TUI browse mode with: - SQL input with cursor navigation - Paginated result display with LIMIT/OFFSET - Column sorting (click header to cycle ASC/DESC/none) - Uses shared DataFusion helper for query execution Signed-off-by: Baris Palaska --- Cargo.lock | 3333 +++++++++++++++++++------- vortex-tui/src/browse/app.rs | 18 + vortex-tui/src/browse/mod.rs | 119 +- vortex-tui/src/browse/ui/mod.rs | 20 +- vortex-tui/src/browse/ui/query.rs | 665 +++++ vortex-tui/src/browse/ui/segments.rs | 120 +- 6 files changed, 3344 insertions(+), 931 deletions(-) create mode 100644 vortex-tui/src/browse/ui/query.rs diff --git a/Cargo.lock b/Cargo.lock index eabeaa7df5c..1d99f854811 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -19,6 +19,17 @@ dependencies = [ "cpufeatures", ] +[[package]] +name = "ahash" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +dependencies = [ + "getrandom 0.2.16", + "once_cell", + "version_check", +] + [[package]] name = "ahash" version = "0.8.12" @@ -176,19 +187,40 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e833808ff2d94ed40d9379848a950d995043c7fb3e81a30b383f4c6033821cc" dependencies = [ - "arrow-arith", - "arrow-array", - "arrow-buffer", - "arrow-cast", - "arrow-csv", - "arrow-data", - "arrow-ipc", - "arrow-json", - "arrow-ord", - "arrow-row", - "arrow-schema", - "arrow-select", - "arrow-string", + "arrow-arith 56.2.0", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-cast 56.2.0", + "arrow-csv 56.2.0", + "arrow-data 56.2.0", + "arrow-ipc 56.2.0", + "arrow-json 56.2.0", + "arrow-ord 56.2.0", + "arrow-row 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", + "arrow-string 56.2.0", +] + +[[package]] +name = "arrow" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb372a7cbcac02a35d3fb7b3fc1f969ec078e871f9bb899bf00a2e1809bec8a3" +dependencies = [ + "arrow-arith 57.1.0", + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-cast 57.1.0", + "arrow-csv 57.1.0", + "arrow-data 57.1.0", + "arrow-ipc 57.1.0", + "arrow-json 57.1.0", + "arrow-ord 57.1.0", + "arrow-row 57.1.0", + "arrow-schema 57.1.0", + "arrow-select 57.1.0", + "arrow-string 57.1.0", ] [[package]] @@ -197,24 +229,38 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad08897b81588f60ba983e3ca39bda2b179bdd84dced378e7df81a5313802ef8" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-data", - "arrow-schema", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", "chrono", "num", ] +[[package]] +name = "arrow-arith" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f377dcd19e440174596d83deb49cd724886d91060c07fec4f67014ef9d54049" +dependencies = [ + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-data 57.1.0", + "arrow-schema 57.1.0", + "chrono", + "num-traits", +] + [[package]] name = "arrow-array" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8548ca7c070d8db9ce7aa43f37393e4bfcf3f2d3681df278490772fd1673d08d" dependencies = [ - "ahash", - "arrow-buffer", - "arrow-data", - "arrow-schema", + "ahash 0.8.12", + "arrow-buffer 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", "chrono", "chrono-tz", "half", @@ -222,6 +268,25 @@ dependencies = [ "num", ] +[[package]] +name = "arrow-array" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a23eaff85a44e9fa914660fb0d0bb00b79c4a3d888b5334adb3ea4330c84f002" +dependencies = [ + "ahash 0.8.12", + "arrow-buffer 57.1.0", + "arrow-data 57.1.0", + "arrow-schema 57.1.0", + "chrono", + "chrono-tz", + "half", + "hashbrown 0.16.1", + "num-complex", + "num-integer", + "num-traits", +] + [[package]] name = "arrow-buffer" version = "56.2.0" @@ -233,17 +298,29 @@ dependencies = [ "num", ] +[[package]] +name = "arrow-buffer" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2819d893750cb3380ab31ebdc8c68874dd4429f90fd09180f3c93538bd21626" +dependencies = [ + "bytes", + "half", + "num-bigint", + "num-traits", +] + [[package]] name = "arrow-cast" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "919418a0681298d3a77d1a315f625916cb5678ad0d74b9c60108eb15fd083023" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-data", - "arrow-schema", - "arrow-select", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "atoi", "base64", "chrono", @@ -254,15 +331,52 @@ dependencies = [ "ryu", ] +[[package]] +name = "arrow-cast" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3d131abb183f80c450d4591dc784f8d7750c50c6e2bc3fcaad148afc8361271" +dependencies = [ + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-data 57.1.0", + "arrow-ord 57.1.0", + "arrow-schema 57.1.0", + "arrow-select 57.1.0", + "atoi", + "base64", + "chrono", + "comfy-table", + "half", + "lexical-core", + "num-traits", + "ryu", +] + [[package]] name = "arrow-csv" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa9bf02705b5cf762b6f764c65f04ae9082c7cfc4e96e0c33548ee3f67012eb" dependencies = [ - "arrow-array", - "arrow-cast", - "arrow-schema", + "arrow-array 56.2.0", + "arrow-cast 56.2.0", + "arrow-schema 56.2.0", + "chrono", + "csv", + "csv-core", + "regex", +] + +[[package]] +name = "arrow-csv" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2275877a0e5e7e7c76954669366c2aa1a829e340ab1f612e647507860906fb6b" +dependencies = [ + "arrow-array 57.1.0", + "arrow-cast 57.1.0", + "arrow-schema 57.1.0", "chrono", "csv", "csv-core", @@ -275,39 +389,67 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a5c64fff1d142f833d78897a772f2e5b55b36cb3e6320376f0961ab0db7bd6d0" dependencies = [ - "arrow-buffer", - "arrow-schema", + "arrow-buffer 56.2.0", + "arrow-schema 56.2.0", "half", "num", ] +[[package]] +name = "arrow-data" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05738f3d42cb922b9096f7786f606fcb8669260c2640df8490533bb2fa38c9d3" +dependencies = [ + "arrow-buffer 57.1.0", + "arrow-schema 57.1.0", + "half", + "num-integer", + "num-traits", +] + [[package]] name = "arrow-ipc" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d3594dcddccc7f20fd069bc8e9828ce37220372680ff638c5e00dea427d88f5" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-data", - "arrow-schema", - "arrow-select", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "flatbuffers", - "lz4_flex", + "lz4_flex 0.11.5", "zstd", ] +[[package]] +name = "arrow-ipc" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d09446e8076c4b3f235603d9ea7c5494e73d441b01cd61fb33d7254c11964b3" +dependencies = [ + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-data 57.1.0", + "arrow-schema 57.1.0", + "arrow-select 57.1.0", + "flatbuffers", + "lz4_flex 0.12.0", +] + [[package]] name = "arrow-json" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "88cf36502b64a127dc659e3b305f1d993a544eab0d48cce704424e62074dc04b" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-cast", - "arrow-data", - "arrow-schema", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-cast 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", "chrono", "half", "indexmap", @@ -319,17 +461,54 @@ dependencies = [ "simdutf8", ] +[[package]] +name = "arrow-json" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "371ffd66fa77f71d7628c63f209c9ca5341081051aa32f9c8020feb0def787c0" +dependencies = [ + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-cast 57.1.0", + "arrow-data 57.1.0", + "arrow-schema 57.1.0", + "chrono", + "half", + "indexmap", + "itoa", + "lexical-core", + "memchr", + "num-traits", + "ryu", + "serde_core", + "serde_json", + "simdutf8", +] + [[package]] name = "arrow-ord" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c8f82583eb4f8d84d4ee55fd1cb306720cddead7596edce95b50ee418edf66f" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-data", - "arrow-schema", - "arrow-select", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", +] + +[[package]] +name = "arrow-ord" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbc94fc7adec5d1ba9e8cd1b1e8d6f72423b33fe978bf1f46d970fafab787521" +dependencies = [ + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-data 57.1.0", + "arrow-schema 57.1.0", + "arrow-select 57.1.0", ] [[package]] @@ -338,10 +517,23 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9d07ba24522229d9085031df6b94605e0f4b26e099fb7cdeec37abd941a73753" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-data", - "arrow-schema", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", + "half", +] + +[[package]] +name = "arrow-row" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "169676f317157dc079cc5def6354d16db63d8861d61046d2f3883268ced6f99f" +dependencies = [ + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-data 57.1.0", + "arrow-schema 57.1.0", "half", ] @@ -351,42 +543,84 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3aa9e59c611ebc291c28582077ef25c97f1975383f1479b12f3b9ffee2ffabe" dependencies = [ - "bitflags", + "bitflags 2.10.0", "serde", "serde_json", ] +[[package]] +name = "arrow-schema" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d27609cd7dd45f006abae27995c2729ef6f4b9361cde1ddd019dc31a5aa017e0" +dependencies = [ + "bitflags 2.10.0", + "serde_core", + "serde_json", +] + [[package]] name = "arrow-select" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c41dbbd1e97bfcaee4fcb30e29105fb2c75e4d82ae4de70b792a5d3f66b2e7a" dependencies = [ - "ahash", - "arrow-array", - "arrow-buffer", - "arrow-data", - "arrow-schema", + "ahash 0.8.12", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", "num", ] +[[package]] +name = "arrow-select" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae980d021879ea119dd6e2a13912d81e64abed372d53163e804dfe84639d8010" +dependencies = [ + "ahash 0.8.12", + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-data 57.1.0", + "arrow-schema 57.1.0", + "num-traits", +] + [[package]] name = "arrow-string" version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "53f5183c150fbc619eede22b861ea7c0eebed8eaac0333eaa7f6da5205fd504d" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-data", - "arrow-schema", - "arrow-select", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "memchr", "num", "regex", "regex-syntax", ] +[[package]] +name = "arrow-string" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf35e8ef49dcf0c5f6d175edee6b8af7b45611805333129c541a8b89a0fc0534" +dependencies = [ + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-data 57.1.0", + "arrow-schema 57.1.0", + "arrow-select 57.1.0", + "memchr", + "num-traits", + "regex", + "regex-syntax", +] + [[package]] name = "async-channel" version = "2.5.0" @@ -516,7 +750,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -556,7 +790,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -573,7 +807,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -594,6 +828,15 @@ dependencies = [ "num-traits", ] +[[package]] +name = "atomic" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a89cbf775b137e9b968e67227ef7f775587cde3fd31b0d8599dbd0f598a48340" +dependencies = [ + "bytemuck", +] + [[package]] name = "atomic-waker" version = "1.1.2" @@ -987,70 +1230,6 @@ version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba" -[[package]] -name = "bench-vortex" -version = "0.1.0" -dependencies = [ - "anyhow", - "arrow-array", - "arrow-cast", - "arrow-schema", - "arrow-select", - "async-trait", - "bytes", - "bzip2", - "clap", - "datafusion", - "datafusion-common", - "datafusion-physical-plan", - "dirs", - "erased-serde", - "futures", - "glob", - "humansize", - "indicatif", - "itertools 0.14.0", - "lance", - "lance-encoding", - "log", - "mimalloc", - "noodles-bgzf", - "noodles-vcf", - "object_store", - "opentelemetry", - "opentelemetry-otlp", - "opentelemetry_sdk", - "parking_lot", - "parquet", - "paste", - "rand 0.9.2", - "rayon", - "regex", - "reqwest", - "serde", - "serde_json", - "similar", - "sysinfo", - "tabled", - "tar", - "target-lexicon", - "tempfile", - "tokio", - "tokio-stream", - "tokio-util", - "tpchgen", - "tpchgen-arrow", - "tracing", - "tracing-perfetto", - "tracing-subscriber", - "url", - "uuid", - "vortex", - "vortex-datafusion", - "vortex-duckdb", - "xshell", -] - [[package]] name = "better_io" version = "0.1.0" @@ -1076,7 +1255,7 @@ version = "0.72.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "993776b509cfb49c750f11b8f07a46fa23e0a1386ffc01fb1e7d343efc387895" dependencies = [ - "bitflags", + "bitflags 2.10.0", "cexpr", "clang-sys", "itertools 0.13.0", @@ -1087,9 +1266,24 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.106", + "syn 2.0.114", +] + +[[package]] +name = "bit-set" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1" +dependencies = [ + "bit-vec 0.6.3", ] +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + [[package]] name = "bit-vec" version = "0.8.0" @@ -1098,9 +1292,15 @@ checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" [[package]] name = "bitflags" -version = "2.9.4" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394" +checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" [[package]] name = "bitpacking" @@ -1198,7 +1398,30 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.106", + "syn 2.0.114", +] + +[[package]] +name = "borsh" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1da5ab77c1437701eeff7c88d968729e7766172279eab0676857b3d63af7a6f" +dependencies = [ + "borsh-derive", + "cfg_aliases", +] + +[[package]] +name = "borsh-derive" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0686c856aa6aac0c4498f936d7d6a02df690f614c03e4d906d1018062b5c5e2c" +dependencies = [ + "once_cell", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.114", ] [[package]] @@ -1245,6 +1468,40 @@ version = "1.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7575182f7272186991736b70173b0ea045398f984bf5ebbb3804736ce1330c9d" +[[package]] +name = "byte-unit" +version = "5.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c6d47a4e2961fb8721bcfc54feae6455f2f64e7054f9bc67e875f0e77f4c58d" +dependencies = [ + "rust_decimal", + "schemars", + "serde", + "utf8-width", +] + +[[package]] +name = "bytecheck" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" +dependencies = [ + "bytecheck_derive", + "ptr_meta", + "simdutf8", +] + +[[package]] +name = "bytecheck_derive" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "bytecount" version = "0.6.9" @@ -1289,14 +1546,8 @@ dependencies = [ ] [[package]] -name = "cassowary" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df8670b8c7b9dae1793364eafadf7239c40d669904660c5960d74cfd80b46a53" - -[[package]] -name = "castaway" -version = "0.2.4" +name = "castaway" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dec551ab6e7578819132c713a93c022a05d60159dc86e7a7050223577484c55a" dependencies = [ @@ -1326,7 +1577,7 @@ dependencies = [ "quote", "serde", "serde_json", - "syn 2.0.106", + "syn 2.0.114", "tempfile", "toml", ] @@ -1397,7 +1648,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a6139a8597ed92cf816dfb33f5dd6cf0bb93a6adc938f11039f371bc5bcd26c3" dependencies = [ "chrono", - "phf", + "phf 0.12.1", ] [[package]] @@ -1453,7 +1704,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1479,7 +1730,7 @@ checksum = "af491d569909a7e4dee0ad7db7f5341fef5c614d5b8ec8cf765732aba3cff681" dependencies = [ "serde", "termcolor", - "unicode-width 0.1.14", + "unicode-width", ] [[package]] @@ -1494,7 +1745,7 @@ dependencies = [ "getrandom 0.2.16", "glob", "libc", - "nix", + "nix 0.30.1", "serde", "serde_json", "statrs", @@ -1524,7 +1775,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1555,7 +1806,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c" dependencies = [ "lazy_static", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -1576,14 +1827,14 @@ checksum = "e0d05af1e006a2407bedef5af410552494ce5be9090444dbbcb57258c1af3d56" dependencies = [ "strum 0.26.3", "strum_macros 0.26.4", - "unicode-width 0.2.0", + "unicode-width", ] [[package]] name = "compact_str" -version = "0.8.1" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b79c4069c6cad78e2e0cdfcbd26275770669fb39fd308a752dc110e83b9af32" +checksum = "3fdb1325a1cece981e8a296ab8f0f9b63ae357bd0784a9faaf548cc7b480707a" dependencies = [ "castaway", "cfg-if", @@ -1593,6 +1844,29 @@ dependencies = [ "static_assertions", ] +[[package]] +name = "compress-bench" +version = "0.1.0" +dependencies = [ + "anyhow", + "arrow-array 57.1.0", + "arrow-schema 57.1.0", + "async-trait", + "bytes", + "clap", + "futures", + "indicatif", + "itertools 0.14.0", + "lance-bench", + "parquet 57.1.0", + "regex", + "serde", + "tokio", + "tracing", + "vortex", + "vortex-bench", +] + [[package]] name = "compression-codecs" version = "0.4.31" @@ -1646,7 +1920,7 @@ dependencies = [ "encode_unicode", "libc", "once_cell", - "unicode-width 0.2.0", + "unicode-width", "windows-sys 0.61.2", ] @@ -1828,29 +2102,13 @@ version = "0.8.21" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" -[[package]] -name = "crossterm" -version = "0.28.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6" -dependencies = [ - "bitflags", - "crossterm_winapi", - "mio", - "parking_lot", - "rustix 0.38.44", - "signal-hook", - "signal-hook-mio", - "winapi", -] - [[package]] name = "crossterm" version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d8b9f2e4c67f833b660cdb0a3523065869fb35570177239812ed4c905aeff87b" dependencies = [ - "bitflags", + "bitflags 2.10.0", "crossterm_winapi", "derive_more", "document-features", @@ -1887,6 +2145,16 @@ dependencies = [ "typenum", ] +[[package]] +name = "csscolorparser" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb2a7d3066da2de787b7f032c736763eb7ae5d355f81a68bab2675a96008b0bf" +dependencies = [ + "lab", + "phf 0.11.3", +] + [[package]] name = "csv" version = "1.3.1" @@ -1945,7 +2213,7 @@ dependencies = [ "proc-macro2", "quote", "scratch", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1959,7 +2227,7 @@ dependencies = [ "indexmap", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -1977,7 +2245,7 @@ dependencies = [ "indexmap", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2011,7 +2279,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2025,7 +2293,7 @@ dependencies = [ "proc-macro2", "quote", "strsim", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2036,7 +2304,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core 0.20.11", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2047,7 +2315,7 @@ checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ "darling_core 0.21.3", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2070,69 +2338,167 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2af15bb3c6ffa33011ef579f6b0bcbe7c26584688bd6c994f548e44df67f011a" dependencies = [ - "arrow", - "arrow-ipc", - "arrow-schema", + "arrow 56.2.0", + "arrow-ipc 56.2.0", + "arrow-schema 56.2.0", "async-trait", "bytes", "chrono", - "datafusion-catalog", - "datafusion-catalog-listing", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-datasource", - "datafusion-datasource-csv", - "datafusion-datasource-json", + "datafusion-catalog 50.3.0", + "datafusion-catalog-listing 50.3.0", + "datafusion-common 50.3.0", + "datafusion-common-runtime 50.3.0", + "datafusion-datasource 50.3.0", + "datafusion-datasource-csv 50.3.0", + "datafusion-datasource-json 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-expr-common 50.3.0", + "datafusion-functions 50.3.0", + "datafusion-functions-aggregate 50.3.0", + "datafusion-functions-nested 50.3.0", + "datafusion-functions-table 50.3.0", + "datafusion-functions-window 50.3.0", + "datafusion-optimizer 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-adapter 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "datafusion-physical-optimizer 50.3.0", + "datafusion-physical-plan 50.3.0", + "datafusion-session 50.3.0", + "datafusion-sql 50.3.0", + "futures", + "itertools 0.14.0", + "log", + "object_store", + "parking_lot", + "rand 0.9.2", + "regex", + "sqlparser 0.58.0", + "tempfile", + "tokio", + "url", + "uuid", +] + +[[package]] +name = "datafusion" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ba7cb113e9c0bedf9e9765926031e132fa05a1b09ba6e93a6d1a4d7044457b8" +dependencies = [ + "arrow 57.1.0", + "arrow-schema 57.1.0", + "async-trait", + "bytes", + "chrono", + "datafusion-catalog 51.0.0", + "datafusion-catalog-listing 51.0.0", + "datafusion-common 51.0.0", + "datafusion-common-runtime 51.0.0", + "datafusion-datasource 51.0.0", + "datafusion-datasource-arrow", + "datafusion-datasource-csv 51.0.0", + "datafusion-datasource-json 51.0.0", "datafusion-datasource-parquet", - "datafusion-execution", - "datafusion-expr", - "datafusion-expr-common", - "datafusion-functions", - "datafusion-functions-aggregate", - "datafusion-functions-nested", - "datafusion-functions-table", - "datafusion-functions-window", - "datafusion-optimizer", - "datafusion-physical-expr", - "datafusion-physical-expr-adapter", - "datafusion-physical-expr-common", - "datafusion-physical-optimizer", - "datafusion-physical-plan", - "datafusion-session", - "datafusion-sql", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-expr-common 51.0.0", + "datafusion-functions 51.0.0", + "datafusion-functions-aggregate 51.0.0", + "datafusion-functions-nested 51.0.0", + "datafusion-functions-table 51.0.0", + "datafusion-functions-window 51.0.0", + "datafusion-optimizer 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-adapter 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-optimizer 51.0.0", + "datafusion-physical-plan 51.0.0", + "datafusion-session 51.0.0", + "datafusion-sql 51.0.0", "futures", "itertools 0.14.0", "log", "object_store", "parking_lot", - "parquet", + "parquet 57.1.0", "rand 0.9.2", "regex", - "sqlparser", + "rstest", + "sqlparser 0.59.0", "tempfile", "tokio", "url", "uuid", ] +[[package]] +name = "datafusion-bench" +version = "0.1.0" +dependencies = [ + "anyhow", + "arrow-ipc 57.1.0", + "clap", + "datafusion 51.0.0", + "datafusion-common 51.0.0", + "datafusion-physical-plan 51.0.0", + "futures", + "get_dir", + "itertools 0.14.0", + "object_store", + "opentelemetry", + "opentelemetry-otlp", + "opentelemetry_sdk", + "tokio", + "url", + "vortex-bench", + "vortex-datafusion", +] + [[package]] name = "datafusion-catalog" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "187622262ad8f7d16d3be9202b4c1e0116f1c9aa387e5074245538b755261621" dependencies = [ - "arrow", + "arrow 56.2.0", "async-trait", "dashmap", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-datasource", - "datafusion-execution", - "datafusion-expr", - "datafusion-physical-expr", - "datafusion-physical-plan", - "datafusion-session", - "datafusion-sql", + "datafusion-common 50.3.0", + "datafusion-common-runtime 50.3.0", + "datafusion-datasource 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-plan 50.3.0", + "datafusion-session 50.3.0", + "datafusion-sql 50.3.0", + "futures", + "itertools 0.14.0", + "log", + "object_store", + "parking_lot", + "tokio", +] + +[[package]] +name = "datafusion-catalog" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66a3a799f914a59b1ea343906a0486f17061f39509af74e874a866428951130d" +dependencies = [ + "arrow 57.1.0", + "async-trait", + "dashmap", + "datafusion-common 51.0.0", + "datafusion-common-runtime 51.0.0", + "datafusion-datasource 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-plan 51.0.0", + "datafusion-session 51.0.0", "futures", "itertools 0.14.0", "log", @@ -2147,32 +2513,56 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9657314f0a32efd0382b9a46fdeb2d233273ece64baa68a7c45f5a192daf0f83" dependencies = [ - "arrow", + "arrow 56.2.0", "async-trait", - "datafusion-catalog", - "datafusion-common", - "datafusion-datasource", - "datafusion-execution", - "datafusion-expr", - "datafusion-physical-expr", - "datafusion-physical-expr-common", - "datafusion-physical-plan", - "datafusion-session", + "datafusion-catalog 50.3.0", + "datafusion-common 50.3.0", + "datafusion-datasource 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "datafusion-physical-plan 50.3.0", + "datafusion-session 50.3.0", "futures", "log", "object_store", "tokio", ] +[[package]] +name = "datafusion-catalog-listing" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6db1b113c80d7a0febcd901476a57aef378e717c54517a163ed51417d87621b0" +dependencies = [ + "arrow 57.1.0", + "async-trait", + "datafusion-catalog 51.0.0", + "datafusion-common 51.0.0", + "datafusion-datasource 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-adapter 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-plan 51.0.0", + "futures", + "itertools 0.14.0", + "log", + "object_store", + "tokio", +] + [[package]] name = "datafusion-common" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5a83760d9a13122d025fbdb1d5d5aaf93dd9ada5e90ea229add92aa30898b2d1" dependencies = [ - "ahash", - "arrow", - "arrow-ipc", + "ahash 0.8.12", + "arrow 56.2.0", + "arrow-ipc 56.2.0", "base64", "chrono", "half", @@ -2181,9 +2571,31 @@ dependencies = [ "libc", "log", "object_store", - "parquet", "paste", - "sqlparser", + "sqlparser 0.58.0", + "tokio", + "web-time", +] + +[[package]] +name = "datafusion-common" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c10f7659e96127d25e8366be7c8be4109595d6a2c3eac70421f380a7006a1b0" +dependencies = [ + "ahash 0.8.12", + "arrow 57.1.0", + "arrow-ipc 57.1.0", + "chrono", + "half", + "hashbrown 0.14.5", + "indexmap", + "libc", + "log", + "object_store", + "parquet 57.1.0", + "paste", + "sqlparser 0.59.0", "tokio", "web-time", ] @@ -2199,56 +2611,141 @@ dependencies = [ "tokio", ] +[[package]] +name = "datafusion-common-runtime" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b92065bbc6532c6651e2f7dd30b55cba0c7a14f860c7e1d15f165c41a1868d95" +dependencies = [ + "futures", + "log", + "tokio", +] + [[package]] name = "datafusion-datasource" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7256c9cb27a78709dd42d0c80f0178494637209cac6e29d5c93edd09b6721b86" dependencies = [ - "arrow", + "arrow 56.2.0", "async-trait", "bytes", "chrono", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-execution", - "datafusion-expr", - "datafusion-physical-expr", - "datafusion-physical-expr-adapter", - "datafusion-physical-expr-common", - "datafusion-physical-plan", - "datafusion-session", + "datafusion-common 50.3.0", + "datafusion-common-runtime 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-adapter 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "datafusion-physical-plan 50.3.0", + "datafusion-session 50.3.0", "futures", "glob", "itertools 0.14.0", "log", "object_store", - "parquet", "rand 0.9.2", - "tempfile", "tokio", "url", ] +[[package]] +name = "datafusion-datasource" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fde13794244bc7581cd82f6fff217068ed79cdc344cafe4ab2c3a1c3510b38d6" +dependencies = [ + "arrow 57.1.0", + "async-trait", + "bytes", + "chrono", + "datafusion-common 51.0.0", + "datafusion-common-runtime 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-adapter 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-plan 51.0.0", + "datafusion-session 51.0.0", + "futures", + "glob", + "itertools 0.14.0", + "log", + "object_store", + "rand 0.9.2", + "tokio", + "url", +] + +[[package]] +name = "datafusion-datasource-arrow" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "804fa9b4ecf3157982021770617200ef7c1b2979d57bec9044748314775a9aea" +dependencies = [ + "arrow 57.1.0", + "arrow-ipc 57.1.0", + "async-trait", + "bytes", + "datafusion-common 51.0.0", + "datafusion-common-runtime 51.0.0", + "datafusion-datasource 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-plan 51.0.0", + "datafusion-session 51.0.0", + "futures", + "itertools 0.14.0", + "object_store", + "tokio", +] + [[package]] name = "datafusion-datasource-csv" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "64533a90f78e1684bfb113d200b540f18f268134622d7c96bbebc91354d04825" dependencies = [ - "arrow", + "arrow 56.2.0", + "async-trait", + "bytes", + "datafusion-catalog 50.3.0", + "datafusion-common 50.3.0", + "datafusion-common-runtime 50.3.0", + "datafusion-datasource 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "datafusion-physical-plan 50.3.0", + "datafusion-session 50.3.0", + "futures", + "object_store", + "regex", + "tokio", +] + +[[package]] +name = "datafusion-datasource-csv" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61a1641a40b259bab38131c5e6f48fac0717bedb7dc93690e604142a849e0568" +dependencies = [ + "arrow 57.1.0", "async-trait", "bytes", - "datafusion-catalog", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-datasource", - "datafusion-execution", - "datafusion-expr", - "datafusion-physical-expr", - "datafusion-physical-expr-common", - "datafusion-physical-plan", - "datafusion-session", + "datafusion-common 51.0.0", + "datafusion-common-runtime 51.0.0", + "datafusion-datasource 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-plan 51.0.0", + "datafusion-session 51.0.0", "futures", "object_store", "regex", @@ -2261,55 +2758,74 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8d7ebeb12c77df0aacad26f21b0d033aeede423a64b2b352f53048a75bf1d6e6" dependencies = [ - "arrow", + "arrow 56.2.0", "async-trait", "bytes", - "datafusion-catalog", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-datasource", - "datafusion-execution", - "datafusion-expr", - "datafusion-physical-expr", - "datafusion-physical-expr-common", - "datafusion-physical-plan", - "datafusion-session", + "datafusion-catalog 50.3.0", + "datafusion-common 50.3.0", + "datafusion-common-runtime 50.3.0", + "datafusion-datasource 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "datafusion-physical-plan 50.3.0", + "datafusion-session 50.3.0", "futures", "object_store", "serde_json", "tokio", ] +[[package]] +name = "datafusion-datasource-json" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adeacdb00c1d37271176f8fb6a1d8ce096baba16ea7a4b2671840c5c9c64fe85" +dependencies = [ + "arrow 57.1.0", + "async-trait", + "bytes", + "datafusion-common 51.0.0", + "datafusion-common-runtime 51.0.0", + "datafusion-datasource 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-plan 51.0.0", + "datafusion-session 51.0.0", + "futures", + "object_store", + "tokio", +] + [[package]] name = "datafusion-datasource-parquet" -version = "50.3.0" +version = "51.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09e783c4c7d7faa1199af2df4761c68530634521b176a8d1331ddbc5a5c75133" +checksum = "43d0b60ffd66f28bfb026565d62b0a6cbc416da09814766a3797bba7d85a3cd9" dependencies = [ - "arrow", + "arrow 57.1.0", "async-trait", "bytes", - "datafusion-catalog", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-datasource", - "datafusion-execution", - "datafusion-expr", - "datafusion-functions-aggregate", - "datafusion-physical-expr", - "datafusion-physical-expr-adapter", - "datafusion-physical-expr-common", - "datafusion-physical-optimizer", - "datafusion-physical-plan", - "datafusion-pruning", - "datafusion-session", + "datafusion-common 51.0.0", + "datafusion-common-runtime 51.0.0", + "datafusion-datasource 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-functions-aggregate-common 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-adapter 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-plan 51.0.0", + "datafusion-pruning 51.0.0", + "datafusion-session 51.0.0", "futures", "itertools 0.14.0", "log", "object_store", "parking_lot", - "parquet", - "rand 0.9.2", + "parquet 57.1.0", "tokio", ] @@ -2319,17 +2835,43 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "99ee6b1d9a80d13f9deb2291f45c07044b8e62fb540dbde2453a18be17a36429" +[[package]] +name = "datafusion-doc" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b99e13947667b36ad713549237362afb054b2d8f8cc447751e23ec61202db07" + [[package]] name = "datafusion-execution" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4cec0a57653bec7b933fb248d3ffa3fa3ab3bd33bd140dc917f714ac036f531" dependencies = [ - "arrow", + "arrow 56.2.0", "async-trait", "dashmap", - "datafusion-common", - "datafusion-expr", + "datafusion-common 50.3.0", + "datafusion-expr 50.3.0", + "futures", + "log", + "object_store", + "parking_lot", + "rand 0.9.2", + "tempfile", + "url", +] + +[[package]] +name = "datafusion-execution" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63695643190679037bc946ad46a263b62016931547bf119859c511f7ff2f5178" +dependencies = [ + "arrow 57.1.0", + "async-trait", + "dashmap", + "datafusion-common 51.0.0", + "datafusion-expr 51.0.0", "futures", "log", "object_store", @@ -2345,19 +2887,41 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef76910bdca909722586389156d0aa4da4020e1631994d50fadd8ad4b1aa05fe" dependencies = [ - "arrow", + "arrow 56.2.0", "async-trait", "chrono", - "datafusion-common", - "datafusion-doc", - "datafusion-expr-common", - "datafusion-functions-aggregate-common", - "datafusion-functions-window-common", - "datafusion-physical-expr-common", + "datafusion-common 50.3.0", + "datafusion-doc 50.3.0", + "datafusion-expr-common 50.3.0", + "datafusion-functions-aggregate-common 50.3.0", + "datafusion-functions-window-common 50.3.0", + "datafusion-physical-expr-common 50.3.0", "indexmap", "paste", "serde_json", - "sqlparser", + "sqlparser 0.58.0", +] + +[[package]] +name = "datafusion-expr" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9a4787cbf5feb1ab351f789063398f67654a6df75c4d37d7f637dc96f951a91" +dependencies = [ + "arrow 57.1.0", + "async-trait", + "chrono", + "datafusion-common 51.0.0", + "datafusion-doc 51.0.0", + "datafusion-expr-common 51.0.0", + "datafusion-functions-aggregate-common 51.0.0", + "datafusion-functions-window-common 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "indexmap", + "itertools 0.14.0", + "paste", + "serde_json", + "sqlparser 0.59.0", ] [[package]] @@ -2366,8 +2930,21 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6d155ccbda29591ca71a1344dd6bed26c65a4438072b400df9db59447f590bb6" dependencies = [ - "arrow", - "datafusion-common", + "arrow 56.2.0", + "datafusion-common 50.3.0", + "indexmap", + "itertools 0.14.0", + "paste", +] + +[[package]] +name = "datafusion-expr-common" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ce2fb1b8c15c9ac45b0863c30b268c69dc9ee7a1ee13ecf5d067738338173dc" +dependencies = [ + "arrow 57.1.0", + "datafusion-common 51.0.0", "indexmap", "itertools 0.14.0", "paste", @@ -2379,18 +2956,18 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7de2782136bd6014670fd84fe3b0ca3b3e4106c96403c3ae05c0598577139977" dependencies = [ - "arrow", - "arrow-buffer", + "arrow 56.2.0", + "arrow-buffer 56.2.0", "base64", "blake2", "blake3", "chrono", - "datafusion-common", - "datafusion-doc", - "datafusion-execution", - "datafusion-expr", - "datafusion-expr-common", - "datafusion-macros", + "datafusion-common 50.3.0", + "datafusion-doc 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-expr-common 50.3.0", + "datafusion-macros 50.3.0", "hex", "itertools 0.14.0", "log", @@ -2402,22 +2979,69 @@ dependencies = [ "uuid", ] +[[package]] +name = "datafusion-functions" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "794a9db7f7b96b3346fc007ff25e994f09b8f0511b4cf7dff651fadfe3ebb28f" +dependencies = [ + "arrow 57.1.0", + "arrow-buffer 57.1.0", + "base64", + "chrono", + "datafusion-common 51.0.0", + "datafusion-doc 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-expr-common 51.0.0", + "datafusion-macros 51.0.0", + "hex", + "itertools 0.14.0", + "log", + "num-traits", + "rand 0.9.2", + "regex", + "unicode-segmentation", + "uuid", +] + [[package]] name = "datafusion-functions-aggregate" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "07331fc13603a9da97b74fd8a273f4238222943dffdbbed1c4c6f862a30105bf" dependencies = [ - "ahash", - "arrow", - "datafusion-common", - "datafusion-doc", - "datafusion-execution", - "datafusion-expr", - "datafusion-functions-aggregate-common", - "datafusion-macros", - "datafusion-physical-expr", - "datafusion-physical-expr-common", + "ahash 0.8.12", + "arrow 56.2.0", + "datafusion-common 50.3.0", + "datafusion-doc 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-functions-aggregate-common 50.3.0", + "datafusion-macros 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "half", + "log", + "paste", +] + +[[package]] +name = "datafusion-functions-aggregate" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c25210520a9dcf9c2b2cbbce31ebd4131ef5af7fc60ee92b266dc7d159cb305" +dependencies = [ + "ahash 0.8.12", + "arrow 57.1.0", + "datafusion-common 51.0.0", + "datafusion-doc 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-functions-aggregate-common 51.0.0", + "datafusion-macros 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-common 51.0.0", "half", "log", "paste", @@ -2429,11 +3053,24 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5951e572a8610b89968a09b5420515a121fbc305c0258651f318dc07c97ab17" dependencies = [ - "ahash", - "arrow", - "datafusion-common", - "datafusion-expr-common", - "datafusion-physical-expr-common", + "ahash 0.8.12", + "arrow 56.2.0", + "datafusion-common 50.3.0", + "datafusion-expr-common 50.3.0", + "datafusion-physical-expr-common 50.3.0", +] + +[[package]] +name = "datafusion-functions-aggregate-common" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62f4a66f3b87300bb70f4124b55434d2ae3fe80455f3574701d0348da040b55d" +dependencies = [ + "ahash 0.8.12", + "arrow 57.1.0", + "datafusion-common 51.0.0", + "datafusion-expr-common 51.0.0", + "datafusion-physical-expr-common 51.0.0", ] [[package]] @@ -2442,17 +3079,40 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdacca9302c3d8fc03f3e94f338767e786a88a33f5ebad6ffc0e7b50364b9ea3" dependencies = [ - "arrow", - "arrow-ord", - "datafusion-common", - "datafusion-doc", - "datafusion-execution", - "datafusion-expr", - "datafusion-functions", - "datafusion-functions-aggregate", - "datafusion-functions-aggregate-common", - "datafusion-macros", - "datafusion-physical-expr-common", + "arrow 56.2.0", + "arrow-ord 56.2.0", + "datafusion-common 50.3.0", + "datafusion-doc 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-functions 50.3.0", + "datafusion-functions-aggregate 50.3.0", + "datafusion-functions-aggregate-common 50.3.0", + "datafusion-macros 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "itertools 0.14.0", + "log", + "paste", +] + +[[package]] +name = "datafusion-functions-nested" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae5c06eed03918dc7fe7a9f082a284050f0e9ecf95d72f57712d1496da03b8c4" +dependencies = [ + "arrow 57.1.0", + "arrow-ord 57.1.0", + "datafusion-common 51.0.0", + "datafusion-doc 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-expr-common 51.0.0", + "datafusion-functions 51.0.0", + "datafusion-functions-aggregate 51.0.0", + "datafusion-functions-aggregate-common 51.0.0", + "datafusion-macros 51.0.0", + "datafusion-physical-expr-common 51.0.0", "itertools 0.14.0", "log", "paste", @@ -2464,12 +3124,28 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c37ff8a99434fbbad604a7e0669717c58c7c4f14c472d45067c4b016621d981" dependencies = [ - "arrow", + "arrow 56.2.0", + "async-trait", + "datafusion-catalog 50.3.0", + "datafusion-common 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-physical-plan 50.3.0", + "parking_lot", + "paste", +] + +[[package]] +name = "datafusion-functions-table" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db4fed1d71738fbe22e2712d71396db04c25de4111f1ec252b8f4c6d3b25d7f5" +dependencies = [ + "arrow 57.1.0", "async-trait", - "datafusion-catalog", - "datafusion-common", - "datafusion-expr", - "datafusion-physical-plan", + "datafusion-catalog 51.0.0", + "datafusion-common 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-physical-plan 51.0.0", "parking_lot", "paste", ] @@ -2480,14 +3156,32 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "48e2aea7c79c926cffabb13dc27309d4eaeb130f4a21c8ba91cdd241c813652b" dependencies = [ - "arrow", - "datafusion-common", - "datafusion-doc", - "datafusion-expr", - "datafusion-functions-window-common", - "datafusion-macros", - "datafusion-physical-expr", - "datafusion-physical-expr-common", + "arrow 56.2.0", + "datafusion-common 50.3.0", + "datafusion-doc 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-functions-window-common 50.3.0", + "datafusion-macros 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "log", + "paste", +] + +[[package]] +name = "datafusion-functions-window" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d92206aa5ae21892f1552b4d61758a862a70956e6fd7a95cb85db1de74bc6d1" +dependencies = [ + "arrow 57.1.0", + "datafusion-common 51.0.0", + "datafusion-doc 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-functions-window-common 51.0.0", + "datafusion-macros 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-common 51.0.0", "log", "paste", ] @@ -2498,8 +3192,18 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fead257ab5fd2ffc3b40fda64da307e20de0040fe43d49197241d9de82a487f" dependencies = [ - "datafusion-common", - "datafusion-physical-expr-common", + "datafusion-common 50.3.0", + "datafusion-physical-expr-common 50.3.0", +] + +[[package]] +name = "datafusion-functions-window-common" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53ae9bcc39800820d53a22d758b3b8726ff84a5a3e24cecef04ef4e5fdf1c7cc" +dependencies = [ + "datafusion-common 51.0.0", + "datafusion-physical-expr-common 51.0.0", ] [[package]] @@ -2508,9 +3212,20 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec6f637bce95efac05cdfb9b6c19579ed4aa5f6b94d951cfa5bb054b7bb4f730" dependencies = [ - "datafusion-expr", + "datafusion-expr 50.3.0", + "quote", + "syn 2.0.114", +] + +[[package]] +name = "datafusion-macros" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1063ad4c9e094b3f798acee16d9a47bd7372d9699be2de21b05c3bd3f34ab848" +dependencies = [ + "datafusion-doc 51.0.0", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2519,12 +3234,31 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c6583ef666ae000a613a837e69e456681a9faa96347bf3877661e9e89e141d8a" dependencies = [ - "arrow", + "arrow 56.2.0", + "chrono", + "datafusion-common 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-expr-common 50.3.0", + "datafusion-physical-expr 50.3.0", + "indexmap", + "itertools 0.14.0", + "log", + "regex", + "regex-syntax", +] + +[[package]] +name = "datafusion-optimizer" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f35f9ec5d08b87fd1893a30c2929f2559c2f9806ca072d8fefca5009dc0f06a" +dependencies = [ + "arrow 57.1.0", "chrono", - "datafusion-common", - "datafusion-expr", - "datafusion-expr-common", - "datafusion-physical-expr", + "datafusion-common 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-expr-common 51.0.0", + "datafusion-physical-expr 51.0.0", "indexmap", "itertools 0.14.0", "log", @@ -2538,13 +3272,13 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8668103361a272cbbe3a61f72eca60c9b7c706e87cc3565bcf21e2b277b84f6" dependencies = [ - "ahash", - "arrow", - "datafusion-common", - "datafusion-expr", - "datafusion-expr-common", - "datafusion-functions-aggregate-common", - "datafusion-physical-expr-common", + "ahash 0.8.12", + "arrow 56.2.0", + "datafusion-common 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-expr-common 50.3.0", + "datafusion-functions-aggregate-common 50.3.0", + "datafusion-physical-expr-common 50.3.0", "half", "hashbrown 0.14.5", "indexmap", @@ -2555,18 +3289,55 @@ dependencies = [ "petgraph 0.8.3", ] +[[package]] +name = "datafusion-physical-expr" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c30cc8012e9eedcb48bbe112c6eff4ae5ed19cf3003cb0f505662e88b7014c5d" +dependencies = [ + "ahash 0.8.12", + "arrow 57.1.0", + "datafusion-common 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-expr-common 51.0.0", + "datafusion-functions-aggregate-common 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "half", + "hashbrown 0.14.5", + "indexmap", + "itertools 0.14.0", + "parking_lot", + "paste", + "petgraph 0.8.3", +] + [[package]] name = "datafusion-physical-expr-adapter" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "815acced725d30601b397e39958e0e55630e0a10d66ef7769c14ae6597298bb0" dependencies = [ - "arrow", - "datafusion-common", - "datafusion-expr", - "datafusion-functions", - "datafusion-physical-expr", - "datafusion-physical-expr-common", + "arrow 56.2.0", + "datafusion-common 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-functions 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "itertools 0.14.0", +] + +[[package]] +name = "datafusion-physical-expr-adapter" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f9ff2dbd476221b1f67337699eff432781c4e6e1713d2aefdaa517dfbf79768" +dependencies = [ + "arrow 57.1.0", + "datafusion-common 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-functions 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-common 51.0.0", "itertools 0.14.0", ] @@ -2576,10 +3347,24 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6652fe7b5bf87e85ed175f571745305565da2c0b599d98e697bcbedc7baa47c3" dependencies = [ - "ahash", - "arrow", - "datafusion-common", - "datafusion-expr-common", + "ahash 0.8.12", + "arrow 56.2.0", + "datafusion-common 50.3.0", + "datafusion-expr-common 50.3.0", + "hashbrown 0.14.5", + "itertools 0.14.0", +] + +[[package]] +name = "datafusion-physical-expr-common" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90da43e1ec550b172f34c87ec68161986ced70fd05c8d2a2add66eef9c276f03" +dependencies = [ + "ahash 0.8.12", + "arrow 57.1.0", + "datafusion-common 51.0.0", + "datafusion-expr-common 51.0.0", "hashbrown 0.14.5", "itertools 0.14.0", ] @@ -2590,39 +3375,88 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "49b7d623eb6162a3332b564a0907ba00895c505d101b99af78345f1acf929b5c" dependencies = [ - "arrow", - "datafusion-common", - "datafusion-execution", - "datafusion-expr", - "datafusion-expr-common", - "datafusion-physical-expr", - "datafusion-physical-expr-common", - "datafusion-physical-plan", - "datafusion-pruning", + "arrow 56.2.0", + "datafusion-common 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-expr-common 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "datafusion-physical-plan 50.3.0", + "datafusion-pruning 50.3.0", "itertools 0.14.0", "log", ] +[[package]] +name = "datafusion-physical-optimizer" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce9804f799acd7daef3be7aaffe77c0033768ed8fdbf5fb82fc4c5f2e6bc14e6" +dependencies = [ + "arrow 57.1.0", + "datafusion-common 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-expr-common 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-plan 51.0.0", + "datafusion-pruning 51.0.0", + "itertools 0.14.0", +] + [[package]] name = "datafusion-physical-plan" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2f7f778a1a838dec124efb96eae6144237d546945587557c9e6936b3414558c" dependencies = [ - "ahash", - "arrow", - "arrow-ord", - "arrow-schema", + "ahash 0.8.12", + "arrow 56.2.0", + "arrow-ord 56.2.0", + "arrow-schema 56.2.0", + "async-trait", + "chrono", + "datafusion-common 50.3.0", + "datafusion-common-runtime 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-functions-aggregate-common 50.3.0", + "datafusion-functions-window-common 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "futures", + "half", + "hashbrown 0.14.5", + "indexmap", + "itertools 0.14.0", + "log", + "parking_lot", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "datafusion-physical-plan" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0acf0ad6b6924c6b1aa7d213b181e012e2d3ec0a64ff5b10ee6282ab0f8532ac" +dependencies = [ + "ahash 0.8.12", + "arrow 57.1.0", + "arrow-ord 57.1.0", + "arrow-schema 57.1.0", "async-trait", "chrono", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-execution", - "datafusion-expr", - "datafusion-functions-aggregate-common", - "datafusion-functions-window-common", - "datafusion-physical-expr", - "datafusion-physical-expr-common", + "datafusion-common 51.0.0", + "datafusion-common-runtime 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-functions-aggregate-common 51.0.0", + "datafusion-functions-window-common 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-common 51.0.0", "futures", "half", "hashbrown 0.14.5", @@ -2640,14 +3474,31 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd1e59e2ca14fe3c30f141600b10ad8815e2856caa59ebbd0e3e07cd3d127a65" dependencies = [ - "arrow", - "arrow-schema", - "datafusion-common", - "datafusion-datasource", - "datafusion-expr-common", - "datafusion-physical-expr", - "datafusion-physical-expr-common", - "datafusion-physical-plan", + "arrow 56.2.0", + "arrow-schema 56.2.0", + "datafusion-common 50.3.0", + "datafusion-datasource 50.3.0", + "datafusion-expr-common 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-expr-common 50.3.0", + "datafusion-physical-plan 50.3.0", + "itertools 0.14.0", + "log", +] + +[[package]] +name = "datafusion-pruning" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac2c2498a1f134a9e11a9f5ed202a2a7d7e9774bd9249295593053ea3be999db" +dependencies = [ + "arrow 57.1.0", + "datafusion-common 51.0.0", + "datafusion-datasource 51.0.0", + "datafusion-expr-common 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-plan 51.0.0", "itertools 0.14.0", "log", ] @@ -2658,16 +3509,16 @@ version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21ef8e2745583619bd7a49474e8f45fbe98ebb31a133f27802217125a7b3d58d" dependencies = [ - "arrow", + "arrow 56.2.0", "async-trait", "dashmap", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-execution", - "datafusion-expr", - "datafusion-physical-expr", - "datafusion-physical-plan", - "datafusion-sql", + "datafusion-common 50.3.0", + "datafusion-common-runtime 50.3.0", + "datafusion-execution 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-plan 50.3.0", + "datafusion-sql 50.3.0", "futures", "itertools 0.14.0", "log", @@ -2676,20 +3527,51 @@ dependencies = [ "tokio", ] +[[package]] +name = "datafusion-session" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f96eebd17555386f459037c65ab73aae8df09f464524c709d6a3134ad4f4776" +dependencies = [ + "async-trait", + "datafusion-common 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-physical-plan 51.0.0", + "parking_lot", +] + [[package]] name = "datafusion-sql" version = "50.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "89abd9868770386fede29e5a4b14f49c0bf48d652c3b9d7a8a0332329b87d50b" dependencies = [ - "arrow", + "arrow 56.2.0", "bigdecimal", - "datafusion-common", - "datafusion-expr", + "datafusion-common 50.3.0", + "datafusion-expr 50.3.0", "indexmap", "log", "regex", - "sqlparser", + "sqlparser 0.58.0", +] + +[[package]] +name = "datafusion-sql" +version = "51.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fc195fe60634b2c6ccfd131b487de46dc30eccae8a3c35a13f136e7f440414f" +dependencies = [ + "arrow 57.1.0", + "bigdecimal", + "chrono", + "datafusion-common 51.0.0", + "datafusion-expr 51.0.0", + "indexmap", + "log", + "regex", + "sqlparser 0.59.0", ] [[package]] @@ -2718,6 +3600,12 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "26bf8fc351c5ed29b5c2f0cbbac1b209b74f60ecd62e675a998df72c49af5204" +[[package]] +name = "deltae" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5729f5117e208430e437df2f4843f5e5952997175992d1414f94c57d61e270b4" + [[package]] name = "der" version = "0.7.10" @@ -2747,7 +3635,7 @@ checksum = "1e567bd82dcff979e4b03460c307b3cdc9e96fde3d73bed1496d2bc75d9dd62a" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2768,7 +3656,7 @@ dependencies = [ "convert_case", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2801,7 +3689,7 @@ dependencies = [ "libc", "option-ext", "redox_users", - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -2812,7 +3700,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2823,7 +3711,7 @@ checksum = "8dc51d98e636f5e3b0759a39257458b22619cac7e96d932da6eeb052891bb67c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2856,12 +3744,34 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3a5ccdfd6c5e7e2fea9c5cf256f2a08216047fab19c621c3da64e9ae4a1462d" +[[package]] +name = "duckdb-bench" +version = "0.1.0" +dependencies = [ + "anyhow", + "clap", + "get_dir", + "similar", + "tokio", + "tracing", + "url", + "vortex", + "vortex-bench", + "vortex-duckdb", +] + [[package]] name = "dunce" version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "92773504d58c093f6de2459af4af33faa518c13451eb8f2b5698ed3d36e7c813" +[[package]] +name = "dyn-clone" +version = "1.0.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0881ea181b1df73ff77ffaaf9c7544ecc11e82fba9b5f27b262a3c73a332555" + [[package]] name = "either" version = "1.15.0" @@ -2900,27 +3810,7 @@ checksum = "685adfa4d6f3d765a26bc5dbc936577de9abf756c1feeb3089b01dd395034842" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", -] - -[[package]] -name = "enum-map" -version = "2.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6866f3bfdf8207509a033af1a75a7b08abda06bbaaeae6669323fd5a097df2e9" -dependencies = [ - "enum-map-derive", -] - -[[package]] -name = "enum-map-derive" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f282cfdfe92516eb26c2af8589c274c7c17681f5ecc03c18255fe741c6aa64eb" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -2933,6 +3823,12 @@ dependencies = [ "regex", ] +[[package]] +name = "env_home" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7f84e12ccf0a7ddc17a6c41c93326024c42920d7ee630d04950e6926645c0fe" + [[package]] name = "env_logger" version = "0.11.8" @@ -2952,17 +3848,6 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" -[[package]] -name = "erased-serde" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89e8918065695684b2b0702da20382d5ae6065cf3327bc2d6436bd49a71ce9f3" -dependencies = [ - "serde", - "serde_core", - "typeid", -] - [[package]] name = "errno" version = "0.3.14" @@ -2970,7 +3855,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" dependencies = [ "libc", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -2979,6 +3864,15 @@ version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca81e6b4777c89fd810c25a4be2b1bd93ea034fbe58e6a75216a34c6b82c539b" +[[package]] +name = "euclid" +version = "0.22.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad9cdb4b747e485a12abb0e6566612956c7a1bafa3bdb8d682c5b6d403589e48" +dependencies = [ + "num-traits", +] + [[package]] name = "event-listener" version = "5.4.1" @@ -3034,9 +3928,19 @@ dependencies = [ name = "extension-traits" version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a296e5a895621edf9fa8329c83aa1cb69a964643e36cf54d8d7a69b789089537" +checksum = "a296e5a895621edf9fa8329c83aa1cb69a964643e36cf54d8d7a69b789089537" +dependencies = [ + "ext-trait", +] + +[[package]] +name = "fancy-regex" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b95f7c0680e4142284cf8b22c14a476e87d61b004a3a0861872b32ef7ead40a2" dependencies = [ - "ext-trait", + "bit-set", + "regex", ] [[package]] @@ -3071,15 +3975,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" [[package]] -name = "filetime" -version = "0.2.26" +name = "filedescriptor" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc0505cd1b6fa6580283f6bdf70a73fcf4aba1184038c90902b92b3dd0df63ed" +checksum = "e40758ed24c9b2eeb76c35fb0aebc66c626084edd827e07e1552279814c6682d" dependencies = [ - "cfg-if", "libc", - "libredox", - "windows-sys 0.60.2", + "thiserror 1.0.69", + "winapi", ] [[package]] @@ -3088,6 +3991,12 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844" +[[package]] +name = "finl_unicode" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9844ddc3a6e533d62bba727eb6c28b5d360921d5175e9ff0f1e621a5c590a4d5" + [[package]] name = "fixed-hash" version = "0.8.0" @@ -3101,6 +4010,12 @@ dependencies = [ "static_assertions", ] +[[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" @@ -3113,7 +4028,7 @@ version = "25.9.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09b6620799e7340ebd9968d2e0708eb82cf1971e9a16821e2091b6d6e475eed5" dependencies = [ - "bitflags", + "bitflags 2.10.0", "rustc_version", ] @@ -3146,6 +4061,21 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" +[[package]] +name = "foreign-types" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" +dependencies = [ + "foreign-types-shared", +] + +[[package]] +name = "foreign-types-shared" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" + [[package]] name = "form_urlencoded" version = "1.2.2" @@ -3177,7 +4107,7 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d2475ce218217196b161b025598f77e2b405d5e729f7c37bfff145f5df00a41" dependencies = [ - "arrow-array", + "arrow-array 56.2.0", "rand 0.9.2", ] @@ -3271,7 +4201,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -3343,6 +4273,12 @@ dependencies = [ "version_check", ] +[[package]] +name = "get_dir" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7be53a543a609b266f8ed4237af223fa96bdaa54d69fd6845c71a421a4a4748" + [[package]] name = "getrandom" version = "0.2.16" @@ -3445,13 +4381,22 @@ version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52ed72152641d513a6084a3907bfcba3f35ae2d3335c22ce2242969c25ff8e46" +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash 0.7.8", +] + [[package]] name = "hashbrown" version = "0.14.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" dependencies = [ - "ahash", + "ahash 0.8.12", "allocator-api2", ] @@ -3636,6 +4581,22 @@ dependencies = [ "webpki-roots", ] +[[package]] +name = "hyper-tls" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" +dependencies = [ + "bytes", + "http-body-util", + "hyper", + "hyper-util", + "native-tls", + "tokio", + "tokio-native-tls", + "tower-service", +] + [[package]] name = "hyper-util" version = "0.1.17" @@ -3654,7 +4615,7 @@ dependencies = [ "libc", "percent-encoding", "pin-project-lite", - "socket2", + "socket2 0.6.0", "system-configuration", "tokio", "tower-service", @@ -3825,17 +4786,17 @@ checksum = "a0eb5a3343abf848c0984fe4604b2b105da9539376e24fc0a3b0007411ae4fd9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] name = "indexmap" -version = "2.11.4" +version = "2.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5" +checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" dependencies = [ "equivalent", - "hashbrown 0.15.5", + "hashbrown 0.16.1", ] [[package]] @@ -3847,7 +4808,7 @@ dependencies = [ "console 0.16.1", "futures-core", "portable-atomic", - "unicode-width 0.2.0", + "unicode-width", "unit-prefix", "web-time", ] @@ -3889,7 +4850,7 @@ dependencies = [ "indoc", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -3983,7 +4944,7 @@ dependencies = [ "portable-atomic", "portable-atomic-util", "serde_core", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -3994,7 +4955,7 @@ checksum = "980af8b43c3ad5d8d349ace167ec8170839f753a42d233ba19e08afe1850fa69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -4101,21 +5062,38 @@ dependencies = [ "lock_api", ] +[[package]] +name = "kasuari" +version = "0.4.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fe90c1150662e858c7d5f945089b7517b0a80d8bf7ba4b1b5ffc984e7230a5b" +dependencies = [ + "hashbrown 0.16.1", + "portable-atomic", + "thiserror 2.0.17", +] + +[[package]] +name = "lab" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf36173d4167ed999940f804952e6b08197cae5ad5d572eb4db150ce8ad5d58f" + [[package]] name = "lance" version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a2f0ca022d0424d991933a62d2898864cf5621873962bd84e65e7d1f023f9c36" dependencies = [ - "arrow", - "arrow-arith", - "arrow-array", - "arrow-buffer", - "arrow-ipc", - "arrow-ord", - "arrow-row", - "arrow-schema", - "arrow-select", + "arrow 56.2.0", + "arrow-arith 56.2.0", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-ipc 56.2.0", + "arrow-ord 56.2.0", + "arrow-row 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "async-recursion", "async-trait", "async_cell", @@ -4124,11 +5102,11 @@ dependencies = [ "bytes", "chrono", "dashmap", - "datafusion", - "datafusion-expr", - "datafusion-functions", - "datafusion-physical-expr", - "datafusion-physical-plan", + "datafusion 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-functions 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-physical-plan 50.3.0", "deepsize", "either", "futures", @@ -4172,12 +5150,12 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7552f8d528775bf0ab21e1f75dcb70bdb2a828eeae58024a803b5a4655fd9a11" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-cast", - "arrow-data", - "arrow-schema", - "arrow-select", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-cast 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "bytes", "getrandom 0.2.16", "half", @@ -4186,6 +5164,25 @@ dependencies = [ "rand 0.9.2", ] +[[package]] +name = "lance-bench" +version = "0.1.0" +dependencies = [ + "anyhow", + "arrow-cast 56.2.0", + "async-trait", + "clap", + "futures", + "get_dir", + "lance", + "lance-encoding", + "parquet 56.2.0", + "tempfile", + "tokio", + "tracing", + "vortex-bench", +] + [[package]] name = "lance-bitpacking" version = "0.39.0" @@ -4203,15 +5200,15 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "69c752dedd207384892006c40930f898d6634e05e3d489e89763abfe4b9307e7" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-schema", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-schema 56.2.0", "async-trait", "byteorder", "bytes", "chrono", - "datafusion-common", - "datafusion-sql", + "datafusion-common 50.3.0", + "datafusion-sql 50.3.0", "deepsize", "futures", "lance-arrow", @@ -4241,18 +5238,18 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21e1e98ca6e5cd337bdda2d9fb66063f295c0c2852d2bc6831366fea833ee608" dependencies = [ - "arrow", - "arrow-array", - "arrow-buffer", - "arrow-ord", - "arrow-schema", - "arrow-select", + "arrow 56.2.0", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-ord 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "async-trait", "chrono", - "datafusion", - "datafusion-common", - "datafusion-functions", - "datafusion-physical-expr", + "datafusion 50.3.0", + "datafusion-common 50.3.0", + "datafusion-functions 50.3.0", + "datafusion-physical-expr 50.3.0", "futures", "jsonb", "lance-arrow", @@ -4272,10 +5269,10 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "483c643fc2806ed1a2766edf4d180511bbd1d549bcc60373e33f4785c6185891" dependencies = [ - "arrow", - "arrow-array", - "arrow-cast", - "arrow-schema", + "arrow 56.2.0", + "arrow-array 56.2.0", + "arrow-cast 56.2.0", + "arrow-schema 56.2.0", "chrono", "futures", "half", @@ -4291,13 +5288,13 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a199d1fa3487529c5ffc433fbd1721231330b9350c2ff9b0c7b7dbdb98f0806a" dependencies = [ - "arrow-arith", - "arrow-array", - "arrow-buffer", - "arrow-cast", - "arrow-data", - "arrow-schema", - "arrow-select", + "arrow-arith 56.2.0", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-cast 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "bytemuck", "byteorder", "bytes", @@ -4330,17 +5327,17 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b57def2279465232cf5a8cd996300c632442e368745768bbed661c7f0a35334b" dependencies = [ - "arrow-arith", - "arrow-array", - "arrow-buffer", - "arrow-data", - "arrow-schema", - "arrow-select", + "arrow-arith 56.2.0", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "async-recursion", "async-trait", "byteorder", "bytes", - "datafusion-common", + "datafusion-common 50.3.0", "deepsize", "futures", "lance-arrow", @@ -4364,12 +5361,12 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a75938c61e986aef8c615dc44c92e4c19e393160a59e2b57402ccfe08c5e63af" dependencies = [ - "arrow", - "arrow-arith", - "arrow-array", - "arrow-ord", - "arrow-schema", - "arrow-select", + "arrow 56.2.0", + "arrow-arith 56.2.0", + "arrow-array 56.2.0", + "arrow-ord 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "async-channel", "async-recursion", "async-trait", @@ -4377,11 +5374,11 @@ dependencies = [ "bitvec", "bytes", "crossbeam-queue", - "datafusion", - "datafusion-common", - "datafusion-expr", - "datafusion-physical-expr", - "datafusion-sql", + "datafusion 50.3.0", + "datafusion-common 50.3.0", + "datafusion-expr 50.3.0", + "datafusion-physical-expr 50.3.0", + "datafusion-sql 50.3.0", "deepsize", "dirs", "fst", @@ -4427,14 +5424,14 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fa6c3b5b28570d6c951206c5b043f1b35c936928af14fca6f2ac25b0097e4c32" dependencies = [ - "arrow", - "arrow-arith", - "arrow-array", - "arrow-buffer", - "arrow-cast", - "arrow-data", - "arrow-schema", - "arrow-select", + "arrow 56.2.0", + "arrow-arith 56.2.0", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-cast 56.2.0", + "arrow-data 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "async-recursion", "async-trait", "aws-config", @@ -4469,9 +5466,9 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3cbc7e85a89ff9cb3a4627559dea3fd1c1fb16c0d8bc46ede75eefef51eec06" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-schema", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-schema 56.2.0", "cc", "deepsize", "half", @@ -4487,7 +5484,7 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "897dd6726816515bb70a698ce7cda44670dca5761637696d7905b45f405a8cd9" dependencies = [ - "arrow", + "arrow 56.2.0", "async-trait", "bytes", "lance-core", @@ -4514,11 +5511,11 @@ version = "0.39.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8facc13760ba034b6c38767b16adba85e44cbcbea8124dc0c63c43865c60630" dependencies = [ - "arrow", - "arrow-array", - "arrow-buffer", - "arrow-ipc", - "arrow-schema", + "arrow 56.2.0", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-ipc 56.2.0", + "arrow-schema 56.2.0", "async-trait", "byteorder", "bytes", @@ -4708,9 +5705,8 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" dependencies = [ - "bitflags", + "bitflags 2.10.0", "libc", - "redox_syscall", ] [[package]] @@ -4722,6 +5718,15 @@ dependencies = [ "zlib-rs", ] +[[package]] +name = "line-clipping" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f4de44e98ddbf09375cbf4d17714d18f39195f4f4894e8524501726fd9a8a4a" +dependencies = [ + "bitflags 2.10.0", +] + [[package]] name = "link-cplusplus" version = "1.0.12" @@ -4792,6 +5797,15 @@ dependencies = [ "hashbrown 0.15.5", ] +[[package]] +name = "lru" +version = "0.16.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1dc47f592c06f33f8e3aea9591776ec7c9f9e4124778ff8a3c3b87159f7e593" +dependencies = [ + "hashbrown 0.16.1", +] + [[package]] name = "lru-slab" version = "0.1.2" @@ -4826,6 +5840,15 @@ dependencies = [ "twox-hash", ] +[[package]] +name = "lz4_flex" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab6473172471198271ff72e9379150e9dfd70d8e533e0752a27e515b48dd375e" +dependencies = [ + "twox-hash", +] + [[package]] name = "lzma-rust2" version = "0.13.0" @@ -4836,6 +5859,16 @@ dependencies = [ "sha2", ] +[[package]] +name = "mac_address" +version = "1.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0aeb26bf5e836cc1c341c8106051b573f1766dfa05aa87f0b98be5e51b02303" +dependencies = [ + "nix 0.29.0", + "winapi", +] + [[package]] name = "macro_rules_attribute" version = "0.1.3" @@ -4908,6 +5941,12 @@ dependencies = [ "libc", ] +[[package]] +name = "memmem" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a64a92489e2744ce060c349162be1c5f33c6969234104dbd99ddb5feb08b8c15" + [[package]] name = "memoffset" version = "0.9.1" @@ -5021,7 +6060,7 @@ checksum = "b093064383341eb3271f42e381cb8f10a01459478446953953c75d24bd339fc0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", "target-features", ] @@ -5031,6 +6070,23 @@ version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2195bf6aa996a481483b29d62a7663eed3fe39600c460e323f8ff41e90bdd89b" +[[package]] +name = "native-tls" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" +dependencies = [ + "libc", + "log", + "openssl", + "openssl-probe", + "openssl-sys", + "schannel", + "security-framework 2.11.1", + "security-framework-sys", + "tempfile", +] + [[package]] name = "ndarray" version = "0.16.1" @@ -5052,13 +6108,26 @@ version = "6.6.666" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf5a574dadd7941adeaa71823ecba5e28331b8313fb2e1c6a5c7e5981ea53ad6" +[[package]] +name = "nix" +version = "0.29.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46" +dependencies = [ + "bitflags 2.10.0", + "cfg-if", + "cfg_aliases", + "libc", + "memoffset", +] + [[package]] name = "nix" version = "0.30.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "74523f3a35e05aba87a1d978330aef40f67b0304ac79c1c00b294c9830543db6" dependencies = [ - "bitflags", + "bitflags 2.10.0", "cfg-if", "cfg_aliases", "libc", @@ -5113,7 +6182,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d09e31153abd7996f22a50d70f43af6c2ebf96a44ee250326ed15d4e183744c9" dependencies = [ - "bit-vec", + "bit-vec 0.8.0", "bstr", "indexmap", "noodles-bgzf", @@ -5188,7 +6257,7 @@ version = "0.50.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5" dependencies = [ - "windows-sys 0.60.2", + "windows-sys 0.61.2", ] [[package]] @@ -5247,6 +6316,17 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" +[[package]] +name = "num-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.114", +] + [[package]] name = "num-integer" version = "0.1.46" @@ -5316,7 +6396,7 @@ checksum = "ff32365de1b6743cb203b710788263c44a03de03802daf96092f2da4fe6ba4d7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -5334,7 +6414,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a180dd8642fa45cdb7dd721cd4c11b1cadd4929ce112ebd8b9f5803cc79d536" dependencies = [ - "bitflags", + "bitflags 2.10.0", ] [[package]] @@ -5450,12 +6530,50 @@ dependencies = [ "uuid", ] +[[package]] +name = "openssl" +version = "0.10.75" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08838db121398ad17ab8531ce9de97b244589089e290a384c900cb9ff7434328" +dependencies = [ + "bitflags 2.10.0", + "cfg-if", + "foreign-types", + "libc", + "once_cell", + "openssl-macros", + "openssl-sys", +] + +[[package]] +name = "openssl-macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.114", +] + [[package]] name = "openssl-probe" version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" +[[package]] +name = "openssl-sys" +version = "0.9.111" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82cab2d520aa75e3c58898289429321eb788c3106963d0dc886ec7a5f4adc321" +dependencies = [ + "cc", + "libc", + "pkg-config", + "vcpkg", +] + [[package]] name = "opentelemetry" version = "0.31.0" @@ -5543,6 +6661,15 @@ dependencies = [ "num-traits", ] +[[package]] +name = "ordered-float" +version = "4.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7bb71e1b3fa6ca1c61f383464aaf2bb0e2f8e772a1f01d486832464de363b951" +dependencies = [ + "num-traits", +] + [[package]] name = "ordered-float" version = "5.1.0" @@ -5585,7 +6712,7 @@ checksum = "6978128c8b51d8f4080631ceb2302ab51e32cc6e8615f735ee2f83fd269ae3f1" dependencies = [ "bytecount", "fnv", - "unicode-width 0.2.0", + "unicode-width", ] [[package]] @@ -5613,7 +6740,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -5651,28 +6778,61 @@ version = "56.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f0dbd48ad52d7dccf8ea1b90a3ddbfaea4f69878dd7683e51c507d4bc52b5b27" dependencies = [ - "ahash", - "arrow-array", - "arrow-buffer", - "arrow-cast", - "arrow-data", - "arrow-ipc", - "arrow-schema", - "arrow-select", + "ahash 0.8.12", + "arrow-array 56.2.0", + "arrow-buffer 56.2.0", + "arrow-cast 56.2.0", + "arrow-data 56.2.0", + "arrow-ipc 56.2.0", + "arrow-schema 56.2.0", + "arrow-select 56.2.0", "base64", "brotli", "bytes", "chrono", "flate2", - "futures", "half", "hashbrown 0.16.1", - "lz4_flex", + "lz4_flex 0.11.5", "num", "num-bigint", + "paste", + "seq-macro", + "simdutf8", + "snap", + "thrift", + "twox-hash", + "zstd", +] + +[[package]] +name = "parquet" +version = "57.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be3e4f6d320dd92bfa7d612e265d7d08bba0a240bab86af3425e1d255a511d89" +dependencies = [ + "ahash 0.8.12", + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-cast 57.1.0", + "arrow-data 57.1.0", + "arrow-ipc 57.1.0", + "arrow-schema 57.1.0", + "arrow-select 57.1.0", + "base64", + "brotli", + "bytes", + "chrono", + "flate2", + "futures", + "half", + "hashbrown 0.16.1", + "lz4_flex 0.12.0", + "num-bigint", + "num-integer", + "num-traits", "object_store", "paste", - "ring", "seq-macro", "simdutf8", "snap", @@ -5753,13 +6913,56 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "df202b0b0f5b8e389955afd5f27b007b00fb948162953f1db9c70d2c7e3157d7" +[[package]] +name = "pest" +version = "2.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c9eb05c21a464ea704b53158d358a31e6425db2f63a1a7312268b05fe2b75f7" +dependencies = [ + "memchr", + "ucd-trie", +] + +[[package]] +name = "pest_derive" +version = "2.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68f9dbced329c441fa79d80472764b1a2c7e57123553b8519b36663a2fb234ed" +dependencies = [ + "pest", + "pest_generator", +] + +[[package]] +name = "pest_generator" +version = "2.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bb96d5051a78f44f43c8f712d8e810adb0ebf923fc9ed2655a7f66f63ba8ee5" +dependencies = [ + "pest", + "pest_meta", + "proc-macro2", + "quote", + "syn 2.0.114", +] + +[[package]] +name = "pest_meta" +version = "2.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "602113b5b5e8621770cfd490cfd90b9f84ab29bd2b0e49ad83eb6d186cef2365" +dependencies = [ + "pest", + "sha2", +] + [[package]] name = "petgraph" version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" dependencies = [ - "fixedbitset", + "fixedbitset 0.5.7", "indexmap", ] @@ -5769,19 +6972,71 @@ version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455" dependencies = [ - "fixedbitset", + "fixedbitset 0.5.7", "hashbrown 0.15.5", "indexmap", "serde", ] +[[package]] +name = "phf" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd6780a80ae0c52cc120a26a1a42c1ae51b247a253e4e06113d23d2c2edd078" +dependencies = [ + "phf_macros", + "phf_shared 0.11.3", +] + [[package]] name = "phf" version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "913273894cec178f401a31ec4b656318d95473527be05c0752cc41cdc32be8b7" dependencies = [ - "phf_shared", + "phf_shared 0.12.1", +] + +[[package]] +name = "phf_codegen" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a" +dependencies = [ + "phf_generator", + "phf_shared 0.11.3", +] + +[[package]] +name = "phf_generator" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c80231409c20246a13fddb31776fb942c38553c51e871f8cbd687a4cfb5843d" +dependencies = [ + "phf_shared 0.11.3", + "rand 0.8.5", +] + +[[package]] +name = "phf_macros" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f84ac04429c13a7ff43785d75ad27569f2951ce0ffd30a3321230db2fc727216" +dependencies = [ + "phf_generator", + "phf_shared 0.11.3", + "proc-macro2", + "quote", + "syn 2.0.114", +] + +[[package]] +name = "phf_shared" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67eabc2ef2a60eb7faa00097bd1ffdb5bd28e62bf39990626a582201b7a754e5" +dependencies = [ + "siphasher", ] [[package]] @@ -5810,7 +7065,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -5823,7 +7078,18 @@ checksum = "3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b" name = "pin-utils" version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "ping" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "122ee1f5a6843bec84fcbd5c6ba3622115337a6b8965b93a61aad347648f4e8d" +dependencies = [ + "rand 0.8.5", + "socket2 0.4.10", + "thiserror 1.0.69", +] [[package]] name = "piper" @@ -5952,7 +7218,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -5975,6 +7241,28 @@ dependencies = [ "toml_edit", ] +[[package]] +name = "proc-macro-error-attr2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" +dependencies = [ + "proc-macro2", + "quote", +] + +[[package]] +name = "proc-macro-error2" +version = "2.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" +dependencies = [ + "proc-macro-error-attr2", + "proc-macro2", + "quote", + "syn 2.0.114", +] + [[package]] name = "proc-macro2" version = "1.0.101" @@ -6030,7 +7318,7 @@ dependencies = [ "prost 0.13.5", "prost-types 0.13.5", "regex", - "syn 2.0.106", + "syn 2.0.114", "tempfile", ] @@ -6050,7 +7338,7 @@ dependencies = [ "prost 0.14.1", "prost-types 0.14.1", "regex", - "syn 2.0.106", + "syn 2.0.114", "tempfile", ] @@ -6064,7 +7352,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -6077,7 +7365,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -6090,7 +7378,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -6111,6 +7399,26 @@ dependencies = [ "prost 0.14.1", ] +[[package]] +name = "ptr_meta" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" +dependencies = [ + "ptr_meta_derive", +] + +[[package]] +name = "ptr_meta_derive" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "pyo3" version = "0.27.2" @@ -6177,7 +7485,7 @@ dependencies = [ "proc-macro2", "pyo3-macros-backend", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -6190,7 +7498,7 @@ dependencies = [ "proc-macro2", "pyo3-build-config", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -6226,7 +7534,7 @@ dependencies = [ "quinn-udp", "rustc-hash", "rustls", - "socket2", + "socket2 0.6.0", "thiserror 2.0.17", "tokio", "tracing", @@ -6263,9 +7571,9 @@ dependencies = [ "cfg_aliases", "libc", "once_cell", - "socket2", + "socket2 0.6.0", "tracing", - "windows-sys 0.52.0", + "windows-sys 0.60.2", ] [[package]] @@ -6386,13 +7694,26 @@ dependencies = [ "rand_core 0.9.3", ] +[[package]] +name = "random-access-bench" +version = "0.1.0" +dependencies = [ + "anyhow", + "clap", + "indicatif", + "lance-bench", + "tokio", + "vortex", + "vortex-bench", +] + [[package]] name = "random_word" version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e47a395bdb55442b883c89062d6bcff25dc90fa5f8369af81e0ac6d49d78cf81" dependencies = [ - "ahash", + "ahash 0.8.12", "brotli", "paste", "rand 0.9.2", @@ -6407,23 +7728,87 @@ checksum = "f93e7e49bb0bf967717f7bd674458b3d6b0c5f48ec7e3038166026a69fc22223" [[package]] name = "ratatui" -version = "0.29.0" +version = "0.30.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1ce67fb8ba4446454d1c8dbaeda0557ff5e94d39d5e5ed7f10a65eb4c8266bc" +dependencies = [ + "instability", + "ratatui-core", + "ratatui-crossterm", + "ratatui-macros", + "ratatui-termwiz", + "ratatui-widgets", +] + +[[package]] +name = "ratatui-core" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eabd94c2f37801c20583fc49dd5cd6b0ba68c716787c2dd6ed18571e1e63117b" +checksum = "5ef8dea09a92caaf73bff7adb70b76162e5937524058a7e5bff37869cbbec293" dependencies = [ - "bitflags", - "cassowary", + "bitflags 2.10.0", "compact_str", - "crossterm 0.28.1", + "hashbrown 0.16.1", "indoc", - "instability", - "itertools 0.13.0", - "lru", - "paste", - "strum 0.26.3", + "itertools 0.14.0", + "kasuari", + "lru 0.16.3", + "strum 0.27.2", + "thiserror 2.0.17", "unicode-segmentation", "unicode-truncate", - "unicode-width 0.2.0", + "unicode-width", +] + +[[package]] +name = "ratatui-crossterm" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "577c9b9f652b4c121fb25c6a391dd06406d3b092ba68827e6d2f09550edc54b3" +dependencies = [ + "cfg-if", + "crossterm", + "instability", + "ratatui-core", +] + +[[package]] +name = "ratatui-macros" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7f1342a13e83e4bb9d0b793d0ea762be633f9582048c892ae9041ef39c936f4" +dependencies = [ + "ratatui-core", + "ratatui-widgets", +] + +[[package]] +name = "ratatui-termwiz" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f76fe0bd0ed4295f0321b1676732e2454024c15a35d01904ddb315afd3d545c" +dependencies = [ + "ratatui-core", + "termwiz", +] + +[[package]] +name = "ratatui-widgets" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7dbfa023cd4e604c2553483820c5fe8aa9d71a42eea5aa77c6e7f35756612db" +dependencies = [ + "bitflags 2.10.0", + "hashbrown 0.16.1", + "indoc", + "instability", + "itertools 0.14.0", + "line-clipping", + "ratatui-core", + "strum 0.27.2", + "time", + "unicode-segmentation", + "unicode-width", ] [[package]] @@ -6458,7 +7843,7 @@ version = "0.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" dependencies = [ - "bitflags", + "bitflags 2.10.0", ] [[package]] @@ -6472,6 +7857,26 @@ dependencies = [ "thiserror 2.0.17", ] +[[package]] +name = "ref-cast" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f354300ae66f76f1c85c5f84693f0ce81d747e2c3f21a45fef496d89c960bf7d" +dependencies = [ + "ref-cast-impl", +] + +[[package]] +name = "ref-cast-impl" +version = "1.0.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.114", +] + [[package]] name = "regex" version = "1.12.2" @@ -6513,6 +7918,15 @@ version = "1.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba39f3699c378cd8970968dcbff9c43159ea4cfbd88d43c00b22f2ef10a435d2" +[[package]] +name = "rend" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" +dependencies = [ + "bytecheck", +] + [[package]] name = "reqsign" version = "0.16.5" @@ -6564,11 +7978,13 @@ dependencies = [ "http-body-util", "hyper", "hyper-rustls", + "hyper-tls", "hyper-util", "js-sys", "log", "mime", "mime_guess", + "native-tls", "percent-encoding", "pin-project-lite", "quinn", @@ -6580,6 +7996,7 @@ dependencies = [ "serde_urlencoded", "sync_wrapper", "tokio", + "tokio-native-tls", "tokio-rustls", "tokio-util", "tower", @@ -6607,6 +8024,35 @@ dependencies = [ "windows-sys 0.52.0", ] +[[package]] +name = "rkyv" +version = "0.7.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2297bf9c81a3f0dc96bc9521370b88f054168c29826a75e89c55ff196e7ed6a1" +dependencies = [ + "bitvec", + "bytecheck", + "bytes", + "hashbrown 0.12.3", + "ptr_meta", + "rend", + "rkyv_derive", + "seahash", + "tinyvec", + "uuid", +] + +[[package]] +name = "rkyv_derive" +version = "0.7.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "84d7b42d4b8d06048d3ac8db0eb31bcb942cbeb709f0b5f2b2ebde398d3038f5" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + [[package]] name = "roaring" version = "0.10.12" @@ -6673,7 +8119,7 @@ dependencies = [ "regex", "relative-path", "rustc_version", - "syn 2.0.106", + "syn 2.0.114", "unicode-ident", ] @@ -6685,7 +8131,7 @@ checksum = "b3a8fb4672e840a587a66fc577a5491375df51ddb88f2a2c2a792598c326fe14" dependencies = [ "quote", "rand 0.8.5", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -6708,6 +8154,22 @@ dependencies = [ "serde_derive", ] +[[package]] +name = "rust_decimal" +version = "1.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35affe401787a9bd846712274d97654355d21b2a2c092a3139aabe31e9022282" +dependencies = [ + "arrayvec", + "borsh", + "bytes", + "num-traits", + "rand 0.8.5", + "rkyv", + "serde", + "serde_json", +] + [[package]] name = "rustc-hash" version = "2.1.1" @@ -6735,11 +8197,11 @@ version = "0.38.44" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154" dependencies = [ - "bitflags", + "bitflags 2.10.0", "errno", "libc", "linux-raw-sys 0.4.15", - "windows-sys 0.52.0", + "windows-sys 0.59.0", ] [[package]] @@ -6748,11 +8210,11 @@ version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" dependencies = [ - "bitflags", + "bitflags 2.10.0", "errno", "libc", "linux-raw-sys 0.11.0", - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -6779,7 +8241,7 @@ dependencies = [ "openssl-probe", "rustls-pki-types", "schannel", - "security-framework", + "security-framework 3.5.1", ] [[package]] @@ -6852,6 +8314,18 @@ dependencies = [ "windows-sys 0.61.2", ] +[[package]] +name = "schemars" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "54e910108742c57a770f492731f99be216a52fadd361b06c8fb59d74ccc267d2" +dependencies = [ + "dyn-clone", + "ref-cast", + "serde", + "serde_json", +] + [[package]] name = "scoped-tls" version = "1.0.1" @@ -6881,13 +8355,32 @@ dependencies = [ "sha2", ] +[[package]] +name = "seahash" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" + +[[package]] +name = "security-framework" +version = "2.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" +dependencies = [ + "bitflags 2.10.0", + "core-foundation 0.9.4", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + [[package]] name = "security-framework" version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b3297343eaf830f66ede390ea39da1d462b6b0c1b000f420d0a83f898bbbe6ef" dependencies = [ - "bitflags", + "bitflags 2.10.0", "core-foundation 0.10.1", "core-foundation-sys", "libc", @@ -6953,7 +8446,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -6977,7 +8470,7 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7140,17 +8633,6 @@ dependencies = [ "time", ] -[[package]] -name = "simplelog" -version = "0.12.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16257adbfaef1ee58b1363bdc0664c9b8e1e30aed86049635fb5f147d065a9c0" -dependencies = [ - "log", - "termcolor", - "time", -] - [[package]] name = "siphasher" version = "1.0.1" @@ -7222,7 +8704,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7231,6 +8713,16 @@ version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1b6b67fb9a61334225b5b790716f609cd58395f895b3fe8b328786812a40bc3b" +[[package]] +name = "socket2" +version = "0.4.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" +dependencies = [ + "libc", + "winapi", +] + [[package]] name = "socket2" version = "0.6.0" @@ -7267,6 +8759,16 @@ dependencies = [ "sqlparser_derive", ] +[[package]] +name = "sqlparser" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4591acadbcf52f0af60eafbb2c003232b2b4cd8de5f0e9437cb8b1b59046cc0f" +dependencies = [ + "log", + "sqlparser_derive", +] + [[package]] name = "sqlparser_derive" version = "0.3.0" @@ -7275,7 +8777,7 @@ checksum = "da5fc6819faabb412da764b99d3b713bb55083c11e7e0c00144d386cd6a1939c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7346,7 +8848,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7358,7 +8860,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7380,9 +8882,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.106" +version = "2.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6" +checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a" dependencies = [ "proc-macro2", "quote", @@ -7406,7 +8908,21 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", +] + +[[package]] +name = "sysinfo" +version = "0.35.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c3ffa3e4ff2b324a57f7aeb3c349656c7b127c3c189520251a648102a92496e" +dependencies = [ + "libc", + "memchr", + "ntapi", + "objc2-core-foundation", + "objc2-io-kit", + "windows", ] [[package]] @@ -7429,7 +8945,7 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" dependencies = [ - "bitflags", + "bitflags 2.10.0", "core-foundation 0.9.4", "system-configuration-sys", ] @@ -7502,8 +9018,8 @@ dependencies = [ "itertools 0.14.0", "levenshtein_automata", "log", - "lru", - "lz4_flex", + "lru 0.12.5", + "lz4_flex 0.11.5", "measure_time", "memmap2", "once_cell", @@ -7630,17 +9146,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" -[[package]] -name = "tar" -version = "0.4.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d863878d212c87a19c1a610eb53bb01fe12951c0501cf5a0d65f724914a667a" -dependencies = [ - "filetime", - "libc", - "xattr", -] - [[package]] name = "target-features" version = "0.1.6" @@ -7663,41 +9168,125 @@ dependencies = [ "getrandom 0.3.4", "once_cell", "rustix 1.1.2", - "windows-sys 0.52.0", + "windows-sys 0.61.2", +] + +[[package]] +name = "termcolor" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "terminal_size" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0" +dependencies = [ + "rustix 1.1.2", + "windows-sys 0.60.2", +] + +[[package]] +name = "terminfo" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4ea810f0692f9f51b382fff5893887bb4580f5fa246fde546e0b13e7fcee662" +dependencies = [ + "fnv", + "nom 7.1.3", + "phf 0.11.3", + "phf_codegen", +] + +[[package]] +name = "termios" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "411c5bf740737c7918b8b1fe232dca4dc9f8e754b8ad5e20966814001ed0ac6b" +dependencies = [ + "libc", ] [[package]] -name = "termcolor" -version = "1.4.1" +name = "termtree" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683" + +[[package]] +name = "termwiz" +version = "0.23.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +checksum = "4676b37242ccbd1aabf56edb093a4827dc49086c0ffd764a5705899e0f35f8f7" dependencies = [ - "winapi-util", + "anyhow", + "base64", + "bitflags 2.10.0", + "fancy-regex", + "filedescriptor", + "finl_unicode", + "fixedbitset 0.4.2", + "hex", + "lazy_static", + "libc", + "log", + "memmem", + "nix 0.29.0", + "num-derive", + "num-traits", + "ordered-float 4.6.0", + "pest", + "pest_derive", + "phf 0.11.3", + "sha2", + "signal-hook", + "siphasher", + "terminfo", + "termios", + "thiserror 1.0.69", + "ucd-trie", + "unicode-segmentation", + "vtparse", + "wezterm-bidi", + "wezterm-blob-leases", + "wezterm-color-types", + "wezterm-dynamic", + "wezterm-input-types", + "winapi", ] [[package]] -name = "terminal_size" -version = "0.4.3" +name = "test-with" +version = "0.14.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0" +checksum = "d75791778b593ea6d76454886a69cd37245c4c9af6fee37c42f024593bf1fb03" dependencies = [ - "rustix 1.1.2", - "windows-sys 0.60.2", + "byte-unit", + "chrono", + "num_cpus", + "ping", + "proc-macro-error2", + "proc-macro2", + "quote", + "regex", + "reqwest", + "syn 2.0.114", + "sysinfo 0.35.2", + "uzers", + "which", ] -[[package]] -name = "termtree" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f50febec83f5ee1df3015341d8bd429f2d1cc62bcba7ea2076759d315084683" - [[package]] name = "testing_table" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0f8daae29995a24f65619e19d8d31dea5b389f3d853d8bf297bbf607cd0014cc" dependencies = [ - "unicode-width 0.2.0", + "unicode-width", ] [[package]] @@ -7726,7 +9315,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7737,7 +9326,7 @@ checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -7858,7 +9447,7 @@ dependencies = [ "parking_lot", "pin-project-lite", "signal-hook-registry", - "socket2", + "socket2 0.6.0", "tokio-macros", "windows-sys 0.61.2", ] @@ -7871,7 +9460,17 @@ checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", +] + +[[package]] +name = "tokio-native-tls" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" +dependencies = [ + "native-tls", + "tokio", ] [[package]] @@ -8012,7 +9611,7 @@ version = "0.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2" dependencies = [ - "bitflags", + "bitflags 2.10.0", "bytes", "futures-util", "http 1.3.1", @@ -8038,17 +9637,17 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tpchgen" -version = "2.0.1" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d5315a6fb66b84b9dc4ade3ce3d85fc246305c87a8106193e9565b8a45394cbe" +checksum = "2d651db770ccf53b89dd769ed47899c0c089452e3b725c3c48fbc6a2be579638" [[package]] name = "tpchgen-arrow" -version = "2.0.1" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9e70da6e86f54ff3524628dc84cb0a9e674ea28e8a8a82fe3839af8c7fd743b" +checksum = "180f3759dffbf26d47021d2a84245a00f20945384bcf22e63c32652b04916e5a" dependencies = [ - "arrow", + "arrow 57.1.0", "tpchgen", ] @@ -8058,6 +9657,7 @@ version = "0.1.43" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2d15d90a0b5c19378952d479dc858407149d7bb45a14de0142f6c534b16fc647" dependencies = [ + "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -8071,7 +9671,7 @@ checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -8144,18 +9744,18 @@ dependencies = [ "rand 0.9.2", ] -[[package]] -name = "typeid" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc7d623258602320d5c55d1bc22793b57daff0ec7efc270ea7d55ce1d5f5471c" - [[package]] name = "typenum" version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" +[[package]] +name = "ucd-trie" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" + [[package]] name = "uint" version = "0.10.0" @@ -8189,21 +9789,15 @@ checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" [[package]] name = "unicode-truncate" -version = "1.1.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3644627a5af5fa321c95b9b235a72fd24cd29c648c2c379431e6628655627bf" +checksum = "8fbf03860ff438702f3910ca5f28f8dac63c1c11e7efb5012b8b175493606330" dependencies = [ "itertools 0.13.0", "unicode-segmentation", - "unicode-width 0.1.14", + "unicode-width", ] -[[package]] -name = "unicode-width" -version = "0.1.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af" - [[package]] name = "unicode-width" version = "0.2.0" @@ -8258,6 +9852,12 @@ version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7fcfc827f90e53a02eaef5e535ee14266c1d569214c6aa70133a624d8a3164ba" +[[package]] +name = "utf8-width" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1292c0d970b54115d14f2492fe0170adf21d68a1de108eebc51c1df4f346a091" + [[package]] name = "utf8_iter" version = "1.0.4" @@ -8276,18 +9876,35 @@ version = "1.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" dependencies = [ + "atomic", "getrandom 0.3.4", "js-sys", "serde", "wasm-bindgen", ] +[[package]] +name = "uzers" +version = "0.11.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76d283dc7e8c901e79e32d077866eaf599156cbf427fffa8289aecc52c5c3f63" +dependencies = [ + "libc", + "log", +] + [[package]] name = "valuable" version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" +[[package]] +name = "vcpkg" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" + [[package]] name = "version_check" version = "0.9.5" @@ -8299,12 +9916,12 @@ name = "vortex" version = "0.1.0" dependencies = [ "anyhow", - "arrow-array", + "arrow-array 57.1.0", "codspeed-divan-compat", "fastlanes", "itertools 0.14.0", "mimalloc", - "parquet", + "parquet 57.1.0", "rand 0.9.2", "serde_json", "tokio", @@ -8316,6 +9933,7 @@ dependencies = [ "vortex-btrblocks", "vortex-buffer", "vortex-bytebool", + "vortex-compute", "vortex-datetime-parts", "vortex-decimal-byte-parts", "vortex-dtype", @@ -8338,6 +9956,7 @@ dependencies = [ "vortex-session", "vortex-sparse", "vortex-utils", + "vortex-vector", "vortex-zigzag", "vortex-zstd", ] @@ -8371,21 +9990,18 @@ version = "0.1.0" dependencies = [ "arbitrary", "arcref", - "arrow-arith", - "arrow-array", - "arrow-buffer", - "arrow-cast", - "arrow-data", - "arrow-ord", - "arrow-schema", - "arrow-select", - "arrow-string", - "async-trait", - "bitvec", + "arrow-arith 57.1.0", + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-cast 57.1.0", + "arrow-data 57.1.0", + "arrow-ord 57.1.0", + "arrow-schema 57.1.0", + "arrow-select 57.1.0", + "arrow-string 57.1.0", "cfg-if", "codspeed-divan-compat", "enum-iterator", - "enum-map", "flatbuffers", "futures", "getrandom 0.3.4", @@ -8394,7 +10010,6 @@ dependencies = [ "insta", "inventory", "itertools 0.14.0", - "log", "multiversion", "num-traits", "num_enum", @@ -8403,23 +10018,22 @@ dependencies = [ "pin-project-lite", "prost 0.14.1", "rand 0.9.2", + "rand_distr 0.5.1", "rstest", "rstest_reuse", "rustc-hash", "serde", "simdutf8", - "static_assertions", "tabled", "termtree", + "tracing", "vortex-array", "vortex-buffer", "vortex-compute", "vortex-dtype", "vortex-error", "vortex-flatbuffers", - "vortex-io", "vortex-mask", - "vortex-metrics", "vortex-proto", "vortex-scalar", "vortex-session", @@ -8427,19 +10041,62 @@ dependencies = [ "vortex-vector", ] +[[package]] +name = "vortex-bench" +version = "0.1.0" +dependencies = [ + "anyhow", + "arrow-array 57.1.0", + "arrow-schema 57.1.0", + "arrow-select 57.1.0", + "async-trait", + "bytes", + "bzip2", + "clap", + "futures", + "get_dir", + "glob", + "humansize", + "indicatif", + "itertools 0.14.0", + "mimalloc", + "noodles-bgzf", + "noodles-vcf", + "parking_lot", + "parquet 57.1.0", + "rand 0.9.2", + "regex", + "reqwest", + "serde", + "serde_json", + "sysinfo 0.37.2", + "tabled", + "target-lexicon", + "tokio", + "tokio-stream", + "tokio-util", + "tpchgen", + "tpchgen-arrow", + "tracing", + "tracing-perfetto", + "tracing-subscriber", + "url", + "uuid", + "vortex", +] + [[package]] name = "vortex-btrblocks" version = "0.1.0" dependencies = [ "codspeed-divan-compat", - "env_logger", "getrandom 0.3.4", "itertools 0.14.0", - "log", "num-traits", "rand 0.9.2", - "rstest", "rustc-hash", + "test-with", + "tracing", "vortex-alp", "vortex-array", "vortex-buffer", @@ -8462,18 +10119,18 @@ dependencies = [ name = "vortex-buffer" version = "0.1.0" dependencies = [ - "arrow-buffer", + "arrow-buffer 57.1.0", "bitvec", "bytes", "codspeed-divan-compat", "cudarc", "itertools 0.14.0", - "log", "memmap2", "num-traits", "rstest", "serde", "simdutf8", + "tracing", "vortex-error", ] @@ -8481,7 +10138,6 @@ dependencies = [ name = "vortex-bytebool" version = "0.1.0" dependencies = [ - "itertools 0.14.0", "num-traits", "rstest", "vortex-array", @@ -8496,14 +10152,17 @@ dependencies = [ name = "vortex-compute" version = "0.1.0" dependencies = [ - "arrow-array", - "arrow-buffer", - "arrow-schema", + "arrow-array 57.1.0", + "arrow-buffer 57.1.0", + "arrow-schema 57.1.0", "codspeed-divan-compat", - "log", + "half", + "itertools 0.14.0", "multiversion", "num-traits", "paste", + "rstest", + "tracing", "vortex-buffer", "vortex-dtype", "vortex-error", @@ -8516,8 +10175,8 @@ name = "vortex-cxx" version = "0.1.0" dependencies = [ "anyhow", - "arrow-array", - "arrow-schema", + "arrow-array 57.1.0", + "arrow-schema 57.1.0", "async-fs", "cxx", "cxx-build", @@ -8532,26 +10191,25 @@ name = "vortex-datafusion" version = "0.1.0" dependencies = [ "anyhow", - "arrow-schema", + "arrow-schema 57.1.0", "async-trait", "chrono", - "datafusion", - "datafusion-catalog", - "datafusion-common", - "datafusion-common-runtime", - "datafusion-datasource", - "datafusion-execution", - "datafusion-expr", - "datafusion-functions", - "datafusion-physical-expr", - "datafusion-physical-expr-adapter", - "datafusion-physical-expr-common", - "datafusion-physical-plan", - "datafusion-pruning", + "datafusion 51.0.0", + "datafusion-catalog 51.0.0", + "datafusion-common 51.0.0", + "datafusion-common-runtime 51.0.0", + "datafusion-datasource 51.0.0", + "datafusion-execution 51.0.0", + "datafusion-expr 51.0.0", + "datafusion-functions 51.0.0", + "datafusion-physical-expr 51.0.0", + "datafusion-physical-expr-adapter 51.0.0", + "datafusion-physical-expr-common 51.0.0", + "datafusion-physical-plan 51.0.0", + "datafusion-pruning 51.0.0", "futures", "insta", "itertools 0.14.0", - "log", "moka", "object_store", "rstest", @@ -8559,6 +10217,7 @@ dependencies = [ "tokio", "tokio-stream", "tracing", + "url", "vortex", "vortex-utils", "walkdir", @@ -8583,7 +10242,6 @@ dependencies = [ name = "vortex-decimal-byte-parts" version = "0.1.0" dependencies = [ - "itertools 0.14.0", "num-traits", "prost 0.14.1", "rstest", @@ -8600,8 +10258,8 @@ name = "vortex-dtype" version = "0.1.0" dependencies = [ "arbitrary", - "arrow-buffer", - "arrow-schema", + "arrow-buffer 57.1.0", + "arrow-schema 57.1.0", "flatbuffers", "half", "insta", @@ -8639,7 +10297,6 @@ dependencies = [ "glob", "itertools 0.14.0", "jiff", - "log", "num-traits", "object_store", "once_cell", @@ -8648,6 +10305,7 @@ dependencies = [ "reqwest", "rstest", "tempfile", + "tracing", "url", "vortex", "vortex-runend", @@ -8662,7 +10320,7 @@ dependencies = [ name = "vortex-error" version = "0.1.0" dependencies = [ - "arrow-schema", + "arrow-schema 57.1.0", "flatbuffers", "jiff", "object_store", @@ -8678,18 +10336,14 @@ name = "vortex-fastlanes" version = "0.1.0" dependencies = [ "arrayref", - "arrow-buffer", "codspeed-divan-compat", "fastlanes", "itertools 0.14.0", "lending-iterator", - "log", - "mimalloc", "num-traits", "prost 0.14.1", "rand 0.9.2", "rstest", - "static_assertions", "vortex-alp", "vortex-array", "vortex-buffer", @@ -8700,7 +10354,6 @@ dependencies = [ "vortex-mask", "vortex-scalar", "vortex-session", - "vortex-utils", "vortex-vector", ] @@ -8712,15 +10365,13 @@ dependencies = [ "cbindgen", "futures", "itertools 0.14.0", - "log", "mimalloc", - "moka", "object_store", - "parking_lot", "paste", "prost 0.14.1", - "simplelog", "tempfile", + "tracing", + "tracing-subscriber", "url", "vortex", ] @@ -8736,10 +10387,10 @@ dependencies = [ "getrandom 0.3.4", "itertools 0.14.0", "kanal", - "log", "object_store", "parking_lot", "tokio", + "tracing", "uuid", "vortex-alp", "vortex-array", @@ -8779,10 +10430,9 @@ dependencies = [ name = "vortex-fsst" version = "0.1.0" dependencies = [ - "async-trait", "codspeed-divan-compat", "fsst-rs", - "itertools 0.14.0", + "num-traits", "prost 0.14.1", "rand 0.9.2", "rstest", @@ -8828,13 +10478,11 @@ dependencies = [ "async-stream", "async-trait", "bytes", - "cfg-if", "futures", "getrandom 0.3.4", "handle", "itertools 0.14.0", "kanal", - "log", "object_store", "oneshot", "parking_lot", @@ -8844,7 +10492,6 @@ dependencies = [ "tempfile", "tokio", "tracing", - "tracing-subscriber", "vortex-buffer", "vortex-error", "vortex-metrics", @@ -8873,18 +10520,18 @@ dependencies = [ name = "vortex-jni" version = "0.1.0" dependencies = [ - "arrow-array", - "arrow-ipc", - "arrow-schema", + "arrow-array 57.1.0", + "arrow-ipc 57.1.0", + "arrow-schema 57.1.0", "futures", "jni", - "log", "object_store", "parking_lot", "prost 0.14.1", - "simplelog", "thiserror 2.0.17", "tokio", + "tracing", + "tracing-subscriber", "url", "vortex", ] @@ -8894,14 +10541,12 @@ name = "vortex-layout" version = "0.1.0" dependencies = [ "arcref", - "arrow-buffer", "async-stream", "async-trait", "flatbuffers", "futures", "itertools 0.14.0", "kanal", - "log", "moka", "once_cell", "oneshot", @@ -8914,6 +10559,7 @@ dependencies = [ "rustc-hash", "termtree", "tokio", + "tracing", "uuid", "vortex-array", "vortex-btrblocks", @@ -8930,6 +10576,7 @@ dependencies = [ "vortex-sequence", "vortex-session", "vortex-utils", + "vortex-vector", "vortex-zstd", ] @@ -8937,6 +10584,7 @@ dependencies = [ name = "vortex-mask" version = "0.1.0" dependencies = [ + "arrow-buffer 57.1.0", "itertools 0.14.0", "rstest", "serde", @@ -8959,7 +10607,6 @@ name = "vortex-pco" version = "0.1.0" dependencies = [ "codspeed-divan-compat", - "itertools 0.14.0", "mimalloc", "pco", "prost 0.14.1", @@ -8967,12 +10614,10 @@ dependencies = [ "rstest", "vortex-array", "vortex-buffer", - "vortex-compute", "vortex-dtype", "vortex-error", "vortex-mask", "vortex-scalar", - "vortex-vector", ] [[package]] @@ -8987,9 +10632,9 @@ dependencies = [ name = "vortex-python" version = "0.1.0" dependencies = [ - "arrow-array", - "arrow-data", - "arrow-schema", + "arrow-array 57.1.0", + "arrow-data 57.1.0", + "arrow-schema 57.1.0", "bytes", "itertools 0.14.0", "log", @@ -8999,6 +10644,7 @@ dependencies = [ "pyo3-bytes", "pyo3-log", "tokio", + "tracing", "url", "vortex", "vortex-array", @@ -9008,8 +10654,7 @@ dependencies = [ name = "vortex-runend" version = "0.1.0" dependencies = [ - "arrow-array", - "arrow-buffer", + "arrow-array 57.1.0", "codspeed-divan-compat", "itertools 0.14.0", "num-traits", @@ -9022,6 +10667,7 @@ dependencies = [ "vortex-error", "vortex-mask", "vortex-scalar", + "vortex-session", ] [[package]] @@ -9029,7 +10675,7 @@ name = "vortex-scalar" version = "0.1.0" dependencies = [ "arbitrary", - "arrow-array", + "arrow-array 57.1.0", "bytes", "itertools 0.14.0", "num-traits", @@ -9049,16 +10695,15 @@ dependencies = [ name = "vortex-scan" version = "0.1.0" dependencies = [ - "arrow-array", - "arrow-schema", - "bit-vec", + "arrow-array 57.1.0", + "arrow-schema 57.1.0", + "bit-vec 0.8.0", "futures", "itertools 0.14.0", - "log", "parking_lot", "roaring 0.11.2", "sketches-ddsketch", - "tokio", + "tracing", "vortex-array", "vortex-buffer", "vortex-dtype", @@ -9078,14 +10723,10 @@ dependencies = [ "num-traits", "prost 0.14.1", "rstest", - "tokio", "vortex-array", "vortex-buffer", "vortex-dtype", "vortex-error", - "vortex-file", - "vortex-io", - "vortex-layout", "vortex-mask", "vortex-proto", "vortex-scalar", @@ -9123,11 +10764,11 @@ name = "vortex-tui" version = "0.1.0" dependencies = [ "anyhow", - "arrow-array", - "arrow-schema", + "arrow-array 57.1.0", + "arrow-schema 57.1.0", "clap", - "crossterm 0.29.0", - "datafusion", + "crossterm", + "datafusion 51.0.0", "env_logger", "flatbuffers", "futures", @@ -9135,12 +10776,11 @@ dependencies = [ "humansize", "indicatif", "itertools 0.14.0", - "parquet", + "parquet 57.1.0", "ratatui", "serde", "serde_json", "taffy", - "termtree", "tokio", "vortex", "vortex-datafusion", @@ -9152,12 +10792,15 @@ version = "0.1.0" dependencies = [ "dashmap", "hashbrown 0.16.1", + "parking_lot", + "vortex-error", ] [[package]] name = "vortex-vector" version = "0.1.0" dependencies = [ + "num-traits", "paste", "static_assertions", "vortex-buffer", @@ -9170,7 +10813,6 @@ dependencies = [ name = "vortex-zigzag" version = "0.1.0" dependencies = [ - "itertools 0.14.0", "rstest", "vortex-array", "vortex-buffer", @@ -9195,7 +10837,6 @@ dependencies = [ "vortex-error", "vortex-mask", "vortex-scalar", - "vortex-sparse", "vortex-vector", "zstd", ] @@ -9206,6 +10847,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" +[[package]] +name = "vtparse" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d9b2acfb050df409c972a37d3b8e08cdea3bddb0c09db9d53137e504cfabed0" +dependencies = [ + "utf8parse", +] + [[package]] name = "walkdir" version = "2.5.0" @@ -9285,7 +10935,7 @@ dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", "wasm-bindgen-shared", ] @@ -9340,6 +10990,89 @@ dependencies = [ "rustls-pki-types", ] +[[package]] +name = "wezterm-bidi" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c0a6e355560527dd2d1cf7890652f4f09bb3433b6aadade4c9b5ed76de5f3ec" +dependencies = [ + "log", + "wezterm-dynamic", +] + +[[package]] +name = "wezterm-blob-leases" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "692daff6d93d94e29e4114544ef6d5c942a7ed998b37abdc19b17136ea428eb7" +dependencies = [ + "getrandom 0.3.4", + "mac_address", + "sha2", + "thiserror 1.0.69", + "uuid", +] + +[[package]] +name = "wezterm-color-types" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7de81ef35c9010270d63772bebef2f2d6d1f2d20a983d27505ac850b8c4b4296" +dependencies = [ + "csscolorparser", + "deltae", + "lazy_static", + "wezterm-dynamic", +] + +[[package]] +name = "wezterm-dynamic" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f2ab60e120fd6eaa68d9567f3226e876684639d22a4219b313ff69ec0ccd5ac" +dependencies = [ + "log", + "ordered-float 4.6.0", + "strsim", + "thiserror 1.0.69", + "wezterm-dynamic-derive", +] + +[[package]] +name = "wezterm-dynamic-derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "46c0cf2d539c645b448eaffec9ec494b8b19bd5077d9e58cb1ae7efece8d575b" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "wezterm-input-types" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7012add459f951456ec9d6c7e6fc340b1ce15d6fc9629f8c42853412c029e57e" +dependencies = [ + "bitflags 1.3.2", + "euclid", + "lazy_static", + "serde", + "wezterm-dynamic", +] + +[[package]] +name = "which" +version = "8.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3fabb953106c3c8eea8306e4393700d7657561cb43122571b172bbfb7c7ba1d" +dependencies = [ + "env_home", + "rustix 1.1.2", + "winsafe", +] + [[package]] name = "winapi" version = "0.3.9" @@ -9362,7 +11095,7 @@ version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.61.2", ] [[package]] @@ -9425,7 +11158,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -9436,7 +11169,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -9739,6 +11472,12 @@ dependencies = [ "memchr", ] +[[package]] +name = "winsafe" +version = "0.0.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d135d17ab770252ad95e9a872d365cf3090e3be864a34ab46f48555993efc904" + [[package]] name = "wit-bindgen" version = "0.46.0" @@ -9773,16 +11512,6 @@ dependencies = [ "tap", ] -[[package]] -name = "xattr" -version = "1.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32e45ad4206f6d2479085147f02bc2ef834ac85886624a23575ae137c8aa8156" -dependencies = [ - "libc", - "rustix 1.1.2", -] - [[package]] name = "xmlparser" version = "0.13.6" @@ -9846,7 +11575,7 @@ checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", "synstructure", ] @@ -9867,7 +11596,7 @@ checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -9887,7 +11616,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", "synstructure", ] @@ -9908,7 +11637,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] @@ -9941,7 +11670,7 @@ checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.106", + "syn 2.0.114", ] [[package]] diff --git a/vortex-tui/src/browse/app.rs b/vortex-tui/src/browse/app.rs index c9e079b91a9..869c89d33ff 100644 --- a/vortex-tui/src/browse/app.rs +++ b/vortex-tui/src/browse/app.rs @@ -25,6 +25,7 @@ use vortex::layout::segments::SegmentId; use vortex::layout::segments::SegmentSource; use vortex::session::VortexSession; +use super::ui::QueryState; use super::ui::SegmentGridState; /// The currently active tab in the TUI browser. @@ -41,6 +42,9 @@ pub enum Tab { /// /// Displays a visual representation of how segments are laid out in the file. Segments, + + /// SQL query interface powered by DataFusion. + Query, } /// A navigable pointer into the layout hierarchy of a Vortex file. @@ -254,6 +258,12 @@ pub struct AppState<'a> { /// Vertical scroll offset for the encoding tree display in flat layout view. pub tree_scroll_offset: u16, + + /// State for the Query tab + pub query_state: QueryState, + + /// File path for use in query execution + pub file_path: String, } impl<'a> AppState<'a> { @@ -270,6 +280,12 @@ impl<'a> AppState<'a> { let cursor = LayoutCursor::new(vxf.footer().clone(), vxf.segment_source()); + let file_path = path + .as_ref() + .to_str() + .map(|s| s.to_string()) + .unwrap_or_default(); + Ok(AppState { session, vxf, @@ -282,6 +298,8 @@ impl<'a> AppState<'a> { segment_grid_state: SegmentGridState::default(), frame_size: Size::new(0, 0), tree_scroll_offset: 0, + query_state: QueryState::default(), + file_path, }) } diff --git a/vortex-tui/src/browse/mod.rs b/vortex-tui/src/browse/mod.rs index 63299af6b3e..cbc962282af 100644 --- a/vortex-tui/src/browse/mod.rs +++ b/vortex-tui/src/browse/mod.rs @@ -20,6 +20,9 @@ use vortex::error::VortexResult; use vortex::layout::layouts::flat::FlatVTable; use vortex::session::VortexSession; +use ui::QueryFocus; +use ui::SortDirection; + pub mod app; pub mod ui; @@ -81,10 +84,61 @@ fn navigate_layout_down(app: &mut AppState, amount: usize) { } } +#[allow(clippy::cognitive_complexity)] fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { if let Event::Key(key) = event && key.kind == KeyEventKind::Press { + // Check if we're in Query tab with SQL input focus - handle text input first + let in_sql_input = + app.current_tab == Tab::Query && app.query_state.focus == QueryFocus::SqlInput; + + // Handle SQL input mode - most keys should type into the input + if in_sql_input { + match (key.code, key.modifiers) { + // These keys exit/switch even in SQL input mode + (KeyCode::Tab, _) => { + app.current_tab = Tab::Layout; + } + (KeyCode::Esc, _) => { + app.query_state.toggle_focus(); + } + (KeyCode::Enter, _) => { + // Execute the SQL query with COUNT(*) for pagination + app.query_state.sort_column = None; + app.query_state.sort_direction = SortDirection::None; + let file_path = app.file_path.clone(); + app.query_state.execute_initial_query(app.session, &file_path); + // Switch focus to results table after executing + app.query_state.focus = QueryFocus::ResultsTable; + } + // Navigation keys + (KeyCode::Left, _) => app.query_state.move_cursor_left(), + (KeyCode::Right, _) => app.query_state.move_cursor_right(), + (KeyCode::Home, _) => app.query_state.move_cursor_start(), + (KeyCode::End, _) => app.query_state.move_cursor_end(), + // Control key shortcuts + (KeyCode::Char('a'), KeyModifiers::CONTROL) => app.query_state.move_cursor_start(), + (KeyCode::Char('e'), KeyModifiers::CONTROL) => app.query_state.move_cursor_end(), + (KeyCode::Char('u'), KeyModifiers::CONTROL) => app.query_state.clear_input(), + (KeyCode::Char('b'), KeyModifiers::CONTROL) => app.query_state.move_cursor_left(), + (KeyCode::Char('f'), KeyModifiers::CONTROL) => app.query_state.move_cursor_right(), + (KeyCode::Char('d'), KeyModifiers::CONTROL) => { + app.query_state.delete_char_forward() + } + // Delete keys + (KeyCode::Backspace, _) => app.query_state.delete_char(), + (KeyCode::Delete, _) => app.query_state.delete_char_forward(), + // All other characters get typed into the input + (KeyCode::Char(c), KeyModifiers::NONE | KeyModifiers::SHIFT) => { + app.query_state.insert_char(c); + } + _ => {} + } + return HandleResult::Continue; + } + + // Normal mode handling for all other cases match (key.code, key.modifiers) { (KeyCode::Char('q'), _) => { return HandleResult::Exit; @@ -92,30 +146,58 @@ fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { (KeyCode::Tab, _) => { app.current_tab = match app.current_tab { Tab::Layout => Tab::Segments, - Tab::Segments => Tab::Layout, + Tab::Segments => Tab::Query, + Tab::Query => Tab::Layout, }; } + + // Query tab: Ctrl+h for previous page + (KeyCode::Char('h'), KeyModifiers::CONTROL) => { + if app.current_tab == Tab::Query { + app.query_state.prev_page(app.session, &app.file_path.clone()); + } + } + + // Query tab: Ctrl+l for next page + (KeyCode::Char('l'), KeyModifiers::CONTROL) => { + if app.current_tab == Tab::Query { + app.query_state.next_page(app.session, &app.file_path.clone()); + } + } + (KeyCode::Up | KeyCode::Char('k'), _) | (KeyCode::Char('p'), KeyModifiers::CONTROL) => { match app.current_tab { Tab::Layout => navigate_layout_up(app, SCROLL_LINE), Tab::Segments => app.segment_grid_state.scroll_up(SEGMENT_SCROLL_LINE), + Tab::Query => { + app.query_state.table_state.select_previous(); + } } } (KeyCode::Down | KeyCode::Char('j'), _) | (KeyCode::Char('n'), KeyModifiers::CONTROL) => match app.current_tab { Tab::Layout => navigate_layout_down(app, SCROLL_LINE), Tab::Segments => app.segment_grid_state.scroll_down(SEGMENT_SCROLL_LINE), + Tab::Query => { + app.query_state.table_state.select_next(); + } }, (KeyCode::PageUp, _) | (KeyCode::Char('v'), KeyModifiers::ALT) => { match app.current_tab { Tab::Layout => navigate_layout_up(app, SCROLL_PAGE), Tab::Segments => app.segment_grid_state.scroll_up(SEGMENT_SCROLL_PAGE), + Tab::Query => { + app.query_state.prev_page(app.session, &app.file_path.clone()); + } } } (KeyCode::PageDown, _) | (KeyCode::Char('v'), KeyModifiers::CONTROL) => { match app.current_tab { Tab::Layout => navigate_layout_down(app, SCROLL_PAGE), Tab::Segments => app.segment_grid_state.scroll_down(SEGMENT_SCROLL_PAGE), + Tab::Query => { + app.query_state.next_page(app.session, &app.file_path.clone()); + } } } (KeyCode::Home, _) | (KeyCode::Char('<'), KeyModifiers::ALT) => match app.current_tab { @@ -123,12 +205,18 @@ fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { Tab::Segments => app .segment_grid_state .scroll_left(SEGMENT_SCROLL_HORIZONTAL_JUMP), + Tab::Query => { + app.query_state.table_state.select_first(); + } }, (KeyCode::End, _) | (KeyCode::Char('>'), KeyModifiers::ALT) => match app.current_tab { Tab::Layout => app.layouts_list_state.select_last(), Tab::Segments => app .segment_grid_state .scroll_right(SEGMENT_SCROLL_HORIZONTAL_JUMP), + Tab::Query => { + app.query_state.table_state.select_last(); + } }, (KeyCode::Enter, _) => { if app.current_tab == Tab::Layout && app.cursor.layout().nchildren() > 0 { @@ -147,6 +235,10 @@ fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { Tab::Segments => app .segment_grid_state .scroll_left(SEGMENT_SCROLL_HORIZONTAL_STEP), + Tab::Query => { + app.query_state.horizontal_scroll = + app.query_state.horizontal_scroll.saturating_sub(1); + } }, (KeyCode::Right | KeyCode::Char('l'), _) | (KeyCode::Char('b'), KeyModifiers::ALT) => { match app.current_tab { @@ -154,11 +246,34 @@ fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { Tab::Segments => app .segment_grid_state .scroll_right(SEGMENT_SCROLL_HORIZONTAL_STEP), + Tab::Query => { + let max_col = app.query_state.column_count().saturating_sub(1); + if app.query_state.horizontal_scroll < max_col { + app.query_state.horizontal_scroll += 1; + } + } } } (KeyCode::Char('/'), _) | (KeyCode::Char('s'), KeyModifiers::CONTROL) => { - app.key_mode = KeyMode::Search; + if app.current_tab != Tab::Query { + app.key_mode = KeyMode::Search; + } + } + + (KeyCode::Char('s'), KeyModifiers::NONE) => { + if app.current_tab == Tab::Query { + // Sort by selected column - modifies the SQL query + let col = app.query_state.selected_column(); + app.query_state.apply_sort(app.session, col, &app.file_path); + } + } + + (KeyCode::Esc, _) => { + if app.current_tab == Tab::Query { + // Toggle focus in Query tab + app.query_state.toggle_focus(); + } } _ => {} diff --git a/vortex-tui/src/browse/ui/mod.rs b/vortex-tui/src/browse/ui/mod.rs index e639a756b66..6080d3940c5 100644 --- a/vortex-tui/src/browse/ui/mod.rs +++ b/vortex-tui/src/browse/ui/mod.rs @@ -4,9 +4,14 @@ //! UI rendering components for the TUI browser. mod layouts; +mod query; mod segments; use layouts::render_layouts; +pub use query::QueryFocus; +pub use query::QueryState; +pub use query::SortDirection; +use query::render_query; use ratatui::prelude::*; use ratatui::widgets::Block; use ratatui::widgets::BorderType; @@ -65,17 +70,13 @@ pub fn render_app(app: &mut AppState<'_>, frame: &mut Frame<'_>) { let selected_tab = match app.current_tab { Tab::Layout => 0, Tab::Segments => 1, + Tab::Query => 2, }; - let tabs = Tabs::new([ - "File Layout", - "Segments", - // TODO(aduffy): add SQL query interface - // "Query", - ]) - .style(Style::default().bold().white()) - .highlight_style(Style::default().bold().black().on_white()) - .select(Some(selected_tab)); + let tabs = Tabs::new(["File Layout", "Segments", "Query"]) + .style(Style::default().bold().white()) + .highlight_style(Style::default().bold().black().on_white()) + .select(Some(selected_tab)); frame.render_widget(tabs, tab_view); @@ -85,5 +86,6 @@ pub fn render_app(app: &mut AppState<'_>, frame: &mut Frame<'_>) { render_layouts(app, app_view, frame.buffer_mut()); } Tab::Segments => segments_ui(app, app_view, frame.buffer_mut()), + Tab::Query => render_query(app, app_view, frame.buffer_mut()), } } diff --git a/vortex-tui/src/browse/ui/query.rs b/vortex-tui/src/browse/ui/query.rs new file mode 100644 index 00000000000..0b1fdb565ab --- /dev/null +++ b/vortex-tui/src/browse/ui/query.rs @@ -0,0 +1,665 @@ +// SPDX-License-Identifier: Apache-2.0 +// SPDX-FileCopyrightText: Copyright the Vortex contributors + +use arrow_array::RecordBatch; +use ratatui::buffer::Buffer; +use ratatui::layout::Constraint; +use ratatui::layout::Layout; +use ratatui::layout::Rect; +use ratatui::style::Color; +use ratatui::style::Style; +use ratatui::style::Stylize; +use ratatui::text::Line; +use ratatui::text::Span; +use ratatui::widgets::Block; +use ratatui::widgets::BorderType; +use ratatui::widgets::Borders; +use ratatui::widgets::Cell; +use ratatui::widgets::Paragraph; +use ratatui::widgets::Row; +use ratatui::widgets::Scrollbar; +use ratatui::widgets::ScrollbarOrientation; +use ratatui::widgets::ScrollbarState; +use ratatui::widgets::StatefulWidget; +use ratatui::widgets::Table; +use ratatui::widgets::TableState; +use ratatui::widgets::Widget; +use tokio::runtime::Handle; +use tokio::task::block_in_place; + +use crate::browse::app::AppState; +use crate::datafusion_helper::arrow_value_to_json; +use crate::datafusion_helper::execute_vortex_query; +use crate::datafusion_helper::json_value_to_display; + +/// Sort direction for table columns. +#[derive(Debug, Clone, Copy, Default, PartialEq, Eq)] +pub enum SortDirection { + #[default] + None, + Ascending, + Descending, +} + +impl SortDirection { + pub fn cycle(self) -> Self { + match self { + SortDirection::None => SortDirection::Ascending, + SortDirection::Ascending => SortDirection::Descending, + SortDirection::Descending => SortDirection::None, + } + } + + pub fn indicator(self) -> &'static str { + match self { + SortDirection::None => "", + SortDirection::Ascending => " ▲", + SortDirection::Descending => " ▼", + } + } +} + +/// Focus state within the Query tab. +#[derive(Debug, Clone, Copy, Default, PartialEq, Eq)] +pub enum QueryFocus { + #[default] + SqlInput, + ResultsTable, +} + +/// State for the SQL query interface. +pub struct QueryState { + /// The SQL query input text. + pub sql_input: String, + /// Cursor position in the SQL input. + pub cursor_position: usize, + /// Current focus within the Query tab. + pub focus: QueryFocus, + /// Query results as RecordBatches. + pub results: Option, + /// Error message if query failed. + pub error: Option, + /// Whether a query is currently running. + pub running: bool, + /// Table state for the results view. + pub table_state: TableState, + /// Horizontal scroll offset for the results table. + pub horizontal_scroll: usize, + /// Column being sorted (if any). + pub sort_column: Option, + /// Sort direction. + pub sort_direction: SortDirection, + /// Current page (0-indexed). + pub current_page: usize, + /// Rows per page (parsed from LIMIT clause). + pub page_size: usize, + /// Total row count from COUNT(*) query. + pub total_row_count: Option, + /// Base SQL query (without LIMIT/OFFSET) for pagination. + pub base_query: String, + /// ORDER BY clause if any. + pub order_clause: Option, +} + +impl Default for QueryState { + fn default() -> Self { + let default_sql = "SELECT * FROM data LIMIT 20"; + Self { + sql_input: default_sql.to_string(), + cursor_position: default_sql.len(), + focus: QueryFocus::default(), + results: None, + error: None, + running: false, + table_state: TableState::default(), + horizontal_scroll: 0, + sort_column: None, + sort_direction: SortDirection::default(), + current_page: 0, + page_size: 20, + total_row_count: None, + base_query: "SELECT * FROM data".to_string(), + order_clause: None, + } + } +} + +impl QueryState { + /// Insert a character at the cursor position. + pub fn insert_char(&mut self, c: char) { + self.sql_input.insert(self.cursor_position, c); + self.cursor_position += 1; + } + + /// Delete the character before the cursor. + pub fn delete_char(&mut self) { + if self.cursor_position > 0 { + self.cursor_position -= 1; + self.sql_input.remove(self.cursor_position); + } + } + + /// Delete the character at the cursor. + pub fn delete_char_forward(&mut self) { + if self.cursor_position < self.sql_input.len() { + self.sql_input.remove(self.cursor_position); + } + } + + /// Move cursor left. + pub fn move_cursor_left(&mut self) { + self.cursor_position = self.cursor_position.saturating_sub(1); + } + + /// Move cursor right. + pub fn move_cursor_right(&mut self) { + if self.cursor_position < self.sql_input.len() { + self.cursor_position += 1; + } + } + + /// Move cursor to start. + pub fn move_cursor_start(&mut self) { + self.cursor_position = 0; + } + + /// Move cursor to end. + pub fn move_cursor_end(&mut self) { + self.cursor_position = self.sql_input.len(); + } + + /// Clear the SQL input. + pub fn clear_input(&mut self) { + self.sql_input.clear(); + self.cursor_position = 0; + } + + /// Toggle focus between SQL input and results table. + pub fn toggle_focus(&mut self) { + self.focus = match self.focus { + QueryFocus::SqlInput => QueryFocus::ResultsTable, + QueryFocus::ResultsTable => QueryFocus::SqlInput, + }; + } + + /// Execute initial query - parses SQL, gets total count, fetches first page. + pub fn execute_initial_query( + &mut self, + session: &vortex::session::VortexSession, + file_path: &str, + ) { + self.running = true; + self.error = None; + + // Parse the SQL to extract base query, order clause, and page size + let (base_sql, order_clause, limit) = self.parse_sql_parts(); + self.base_query = base_sql; + self.order_clause = order_clause; + self.page_size = limit.unwrap_or(20); + self.current_page = 0; + + // Get total row count + self.total_row_count = get_row_count(session, file_path, &self.base_query).ok(); + + // Build and execute the query + self.rebuild_and_execute(session, file_path); + } + + /// Navigate to next page. + pub fn next_page(&mut self, session: &vortex::session::VortexSession, file_path: &str) { + let total_pages = self.total_pages(); + if self.current_page + 1 < total_pages { + self.current_page += 1; + self.rebuild_and_execute(session, file_path); + } + } + + /// Navigate to previous page. + pub fn prev_page(&mut self, session: &vortex::session::VortexSession, file_path: &str) { + if self.current_page > 0 { + self.current_page -= 1; + self.rebuild_and_execute(session, file_path); + } + } + + /// Get total number of pages. + pub fn total_pages(&self) -> usize { + match self.total_row_count { + Some(total) if total > 0 => total.div_ceil(self.page_size), + _ => 1, + } + } + + /// Build SQL query from current state and execute it. + fn rebuild_and_execute( + &mut self, + session: &vortex::session::VortexSession, + file_path: &str, + ) { + let offset = self.current_page * self.page_size; + + let new_sql = match &self.order_clause { + Some(order) => { + format!( + "{} {} LIMIT {} OFFSET {}", + self.base_query, order, self.page_size, offset + ) + } + None => { + format!( + "{} LIMIT {} OFFSET {}", + self.base_query, self.page_size, offset + ) + } + }; + + self.sql_input = new_sql; + self.cursor_position = self.sql_input.len(); + + self.running = true; + self.error = None; + + match execute_query(session, file_path, &self.sql_input) { + Ok(results) => { + self.results = Some(results); + self.table_state.select(Some(0)); + } + Err(e) => { + self.error = Some(e); + } + } + self.running = false; + } + + /// Parse SQL to extract base query, ORDER BY clause, and LIMIT value. + fn parse_sql_parts(&self) -> (String, Option, Option) { + let sql = &self.sql_input; + let sql_upper = sql.to_uppercase(); + + // Find positions of clauses + let order_idx = sql_upper.find(" ORDER BY "); + let limit_idx = sql_upper.find(" LIMIT "); + let offset_idx = sql_upper.find(" OFFSET "); + + // Extract limit value if present + let limit_value = if let Some(li) = limit_idx { + let after_limit = &sql[li + 7..]; // Skip " LIMIT " + let end_idx = after_limit + .find(|c: char| !c.is_ascii_digit() && c != ' ') + .unwrap_or(after_limit.len()); + after_limit[..end_idx].trim().parse::().ok() + } else { + None + }; + + // Find the earliest of LIMIT or OFFSET to know where to cut + let cut_idx = match (limit_idx, offset_idx) { + (Some(li), Some(oi)) => Some(li.min(oi)), + (Some(li), None) => Some(li), + (None, Some(oi)) => Some(oi), + (None, None) => None, + }; + + match (order_idx, cut_idx) { + (Some(oi), Some(ci)) if oi < ci => { + // ORDER BY comes before LIMIT/OFFSET + let base = sql[..oi].trim().to_string(); + let order = sql[oi..ci].trim().to_string(); + (base, Some(order), limit_value) + } + (Some(oi), None) => { + // Only ORDER BY, no LIMIT/OFFSET + let base = sql[..oi].trim().to_string(); + let order = sql[oi..].trim().to_string(); + (base, Some(order), limit_value) + } + (None, Some(ci)) => { + // No ORDER BY, just LIMIT/OFFSET + let base = sql[..ci].trim().to_string(); + (base, None, limit_value) + } + (Some(_oi), Some(ci)) => { + // ORDER BY comes after LIMIT (unusual) - just cut at LIMIT + let base = sql[..ci].trim().to_string(); + (base, None, limit_value) + } + (None, None) => { + // No ORDER BY or LIMIT/OFFSET + (sql.clone(), None, limit_value) + } + } + } + + /// Get the currently selected column index. + pub fn selected_column(&self) -> usize { + self.horizontal_scroll + } + + /// Total number of columns in results. + pub fn column_count(&self) -> usize { + self.results + .as_ref() + .and_then(|r| r.batches.first()) + .map(|b| b.num_columns()) + .unwrap_or(0) + } + + /// Apply sort on a column by modifying the ORDER BY clause and re-executing. + pub fn apply_sort( + &mut self, + session: &vortex::session::VortexSession, + column: usize, + file_path: &str, + ) { + // Get the column name from results + let column_name = match &self.results { + Some(results) if column < results.column_names.len() => { + results.column_names[column].clone() + } + _ => return, + }; + + // Cycle sort direction + if self.sort_column == Some(column) { + self.sort_direction = self.sort_direction.cycle(); + if self.sort_direction == SortDirection::None { + self.sort_column = None; + } + } else { + self.sort_column = Some(column); + self.sort_direction = SortDirection::Ascending; + } + + // Update the ORDER BY clause + self.order_clause = if self.sort_direction == SortDirection::None { + None + } else { + let direction = match self.sort_direction { + SortDirection::Ascending => "ASC", + SortDirection::Descending => "DESC", + SortDirection::None => unreachable!(), + }; + Some(format!("ORDER BY \"{column_name}\" {direction}")) + }; + + // Reset to first page and re-execute + self.current_page = 0; + self.rebuild_and_execute(session, file_path); + } +} + +/// Holds query results for display. +pub struct QueryResults { + pub batches: Vec, + pub total_rows: usize, + pub column_names: Vec, +} + +/// Execute a SQL query against the Vortex file. +pub fn execute_query( + session: &vortex::session::VortexSession, + file_path: &str, + sql: &str, +) -> Result { + block_in_place(|| { + Handle::current().block_on(async { + let batches = execute_vortex_query(session, file_path, sql).await?; + + let total_rows: usize = batches.iter().map(|b| b.num_rows()).sum(); + + let column_names = if let Some(batch) = batches.first() { + let schema = batch.schema(); + schema.fields().iter().map(|f| f.name().clone()).collect() + } else { + vec![] + }; + + Ok(QueryResults { + batches, + total_rows, + column_names, + }) + }) + }) +} + +/// Get total row count for a base query using COUNT(*). +pub fn get_row_count( + session: &vortex::session::VortexSession, + file_path: &str, + base_query: &str, +) -> Result { + block_in_place(|| { + Handle::current().block_on(async { + let count_sql = format!("SELECT COUNT(*) as count FROM ({base_query}) AS subquery"); + + let batches = execute_vortex_query(session, file_path, &count_sql).await?; + + // Extract count from result + if let Some(batch) = batches.first() + && batch.num_rows() > 0 + && batch.num_columns() > 0 + { + use arrow_array::Int64Array; + if let Some(arr) = batch.column(0).as_any().downcast_ref::() { + #[allow(clippy::cast_sign_loss, clippy::cast_possible_truncation)] + return Ok(arr.value(0) as usize); + } + } + + Ok(0) + }) + }) +} + +/// Render the Query tab UI. +pub fn render_query(app: &mut AppState<'_>, area: Rect, buf: &mut Buffer) { + let [input_area, results_area] = + Layout::vertical([Constraint::Length(5), Constraint::Min(10)]).areas(area); + + render_sql_input(app, input_area, buf); + render_results_table(app, results_area, buf); +} + +fn render_sql_input(app: &mut AppState<'_>, area: Rect, buf: &mut Buffer) { + let is_focused = app.query_state.focus == QueryFocus::SqlInput; + + let border_color = if is_focused { + Color::Cyan + } else { + Color::DarkGray + }; + + let block = Block::default() + .title("SQL Query (Enter to execute, Esc to switch focus)") + .borders(Borders::ALL) + .border_type(BorderType::Rounded) + .border_style(Style::default().fg(border_color)); + + let inner = block.inner(area); + block.render(area, buf); + + // Create the input text with cursor + let sql = &app.query_state.sql_input; + let cursor_pos = app.query_state.cursor_position; + + let (before_cursor, after_cursor) = sql.split_at(cursor_pos.min(sql.len())); + + let first_char = after_cursor.chars().next(); + let cursor_char = if is_focused { + match first_char { + None => Span::styled(" ", Style::default().bg(Color::White).fg(Color::Black)), + Some(c) => Span::styled( + c.to_string(), + Style::default().bg(Color::White).fg(Color::Black), + ), + } + } else { + match first_char { + None => Span::raw(""), + Some(c) => Span::raw(c.to_string()), + } + }; + + let rest = match first_char { + Some(c) if after_cursor.len() > c.len_utf8() => &after_cursor[c.len_utf8()..], + _ => "", + }; + + let line = Line::from(vec![Span::raw(before_cursor), cursor_char, Span::raw(rest)]); + + let paragraph = Paragraph::new(line).style(Style::default().fg(Color::White)); + + paragraph.render(inner, buf); +} + +fn render_results_table(app: &mut AppState<'_>, area: Rect, buf: &mut Buffer) { + let is_focused = app.query_state.focus == QueryFocus::ResultsTable; + + let border_color = if is_focused { + Color::Cyan + } else { + Color::DarkGray + }; + + // Show status in title + let title = if app.query_state.running { + "Results (running...)".to_string() + } else if let Some(ref error) = app.query_state.error { + format!("Results (error: {})", truncate_str(error, 50)) + } else if let Some(ref _results) = app.query_state.results { + let total_rows = app.query_state.total_row_count.unwrap_or(0); + let total_pages = app.query_state.total_pages(); + format!( + "Results ({} rows, page {}/{}) [hjkl navigate, ^h/^l pages, s sort]", + total_rows, + app.query_state.current_page + 1, + total_pages, + ) + } else { + "Results (press Enter to execute query)".to_string() + }; + + let block = Block::default() + .title(title) + .borders(Borders::ALL) + .border_type(BorderType::Rounded) + .border_style(Style::default().fg(border_color)); + + let inner = block.inner(area); + block.render(area, buf); + + if let Some(ref error) = app.query_state.error { + let error_text = Paragraph::new(error.as_str()) + .style(Style::default().fg(Color::Red)) + .wrap(ratatui::widgets::Wrap { trim: true }); + error_text.render(inner, buf); + return; + } + + let Some(ref results) = app.query_state.results else { + let help = Paragraph::new("Enter a SQL query above and press Enter to execute.\nThe table is available as 'data'.\n\nExample: SELECT * FROM data WHERE column > 10 LIMIT 100") + .style(Style::default().fg(Color::Gray)); + help.render(inner, buf); + return; + }; + + if results.batches.is_empty() || results.total_rows == 0 { + let empty = + Paragraph::new("Query returned no results.").style(Style::default().fg(Color::Yellow)); + empty.render(inner, buf); + return; + } + + // Build header row with sort indicators + let header_cells: Vec = results + .column_names + .iter() + .enumerate() + .map(|(i, name)| { + let indicator = if app.query_state.sort_column == Some(i) { + app.query_state.sort_direction.indicator() + } else { + "" + }; + + let style = if is_focused && i == app.query_state.horizontal_scroll { + Style::default().fg(Color::Black).bg(Color::Cyan).bold() + } else { + Style::default().fg(Color::Green).bold() + }; + + Cell::from(format!("{name}{indicator}")).style(style) + }) + .collect(); + + let header = Row::new(header_cells).height(1); + + // Since we use LIMIT/OFFSET in SQL, batches contain only the current page's data + // Display all rows from the batches + let rows = get_all_rows(results, &app.query_state); + + // Calculate column widths + #[allow(clippy::cast_possible_truncation)] + let widths: Vec = results + .column_names + .iter() + .map(|name| Constraint::Min((name.len() + 3).max(10) as u16)) + .collect(); + + let table = Table::new(rows, widths) + .header(header) + .row_highlight_style(Style::default().bg(Color::DarkGray)); + + // Split area for table and scrollbar + let [table_area, scrollbar_area] = + Layout::horizontal([Constraint::Min(0), Constraint::Length(1)]).areas(inner); + + StatefulWidget::render(table, table_area, buf, &mut app.query_state.table_state); + + // Render vertical scrollbar + let total_pages = app.query_state.total_pages(); + if total_pages > 1 { + let mut scrollbar_state = ScrollbarState::new(total_pages) + .position(app.query_state.current_page) + .viewport_content_length(1); + + Scrollbar::new(ScrollbarOrientation::VerticalRight) + .begin_symbol(Some("▲")) + .end_symbol(Some("▼")) + .render(scrollbar_area, buf, &mut scrollbar_state); + } +} + +/// Get all rows from batches (pagination is handled via SQL LIMIT/OFFSET). +fn get_all_rows<'a>(results: &'a QueryResults, query_state: &QueryState) -> Vec> { + let mut rows = Vec::new(); + + for batch in &results.batches { + for row_idx in 0..batch.num_rows() { + let cells: Vec = (0..batch.num_columns()) + .map(|col_idx| { + let json_value = arrow_value_to_json(batch.column(col_idx).as_ref(), row_idx); + let value = json_value_to_display(json_value); + let style = if query_state.sort_column == Some(col_idx) { + Style::default().fg(Color::Cyan) + } else { + Style::default() + }; + Cell::from(truncate_str(&value, 30).to_string()).style(style) + }) + .collect(); + rows.push(Row::new(cells)); + } + } + + rows +} + +fn truncate_str(s: &str, max_len: usize) -> &str { + if s.len() <= max_len { + s + } else { + &s[..max_len.saturating_sub(3)] + } +} diff --git a/vortex-tui/src/browse/ui/segments.rs b/vortex-tui/src/browse/ui/segments.rs index d73f2291a02..b8d20dbc2b1 100644 --- a/vortex-tui/src/browse/ui/segments.rs +++ b/vortex-tui/src/browse/ui/segments.rs @@ -1,8 +1,6 @@ // SPDX-License-Identifier: Apache-2.0 // SPDX-FileCopyrightText: Copyright the Vortex contributors -use std::sync::Arc; - use humansize::DECIMAL; use ratatui::buffer::Buffer; use ratatui::layout::Rect; @@ -30,14 +28,12 @@ use taffy::TaffyTree; use taffy::TraversePartialTree; use vortex::dtype::FieldName; use vortex::error::VortexExpect; -use vortex::error::VortexResult; use vortex::error::vortex_err; -use vortex::file::SegmentSpec; -use vortex::layout::Layout; -use vortex::layout::LayoutChildType; use vortex::utils::aliases::hash_map::HashMap; use crate::browse::app::AppState; +use crate::segment_tree::SegmentTree; +use crate::segment_tree::collect_segment_tree; /// State for the segment grid visualization. /// @@ -111,13 +107,6 @@ pub struct NodeContents<'a> { contents: Vec>, } -pub struct SegmentDisplay { - name: FieldName, - spec: SegmentSpec, - row_offset: u64, - row_count: u64, -} - #[expect( clippy::cast_possible_truncation, reason = "UI coordinates are small enough" @@ -404,108 +393,3 @@ fn to_display_segment_tree<'a>( )?; Ok((tree, root, node_contents)) } - -fn collect_segment_tree(root_layout: &dyn Layout, segments: &Arc<[SegmentSpec]>) -> SegmentTree { - let mut tree = SegmentTree { - segments: HashMap::new(), - segment_ordering: Vec::new(), - }; - segments_by_name_impl(root_layout, None, None, Some(0), segments, &mut tree) - .vortex_expect("operation should succeed in TUI"); - - tree -} - -struct SegmentTree { - segments: HashMap>, - segment_ordering: Vec, -} - -fn segments_by_name_impl( - root: &dyn Layout, - group_name: Option, - name: Option, - row_offset: Option, - segments: &Arc<[SegmentSpec]>, - segment_tree: &mut SegmentTree, -) -> VortexResult<()> { - // Recurse into children - for (child, child_type) in root.children()?.into_iter().zip(root.child_types()) { - match child_type { - LayoutChildType::Transparent(sub_name) => segments_by_name_impl( - child.as_ref(), - group_name.clone(), - Some( - name.as_ref() - .map(|n| format!("{n}.{sub_name}").into()) - .unwrap_or_else(|| sub_name.into()), - ), - row_offset, - segments, - segment_tree, - )?, - LayoutChildType::Auxiliary(aux_name) => segments_by_name_impl( - child.as_ref(), - group_name.clone(), - Some( - name.as_ref() - .map(|n| format!("{n}.{aux_name}").into()) - .unwrap_or_else(|| aux_name.into()), - ), - Some(0), - segments, - segment_tree, - )?, - LayoutChildType::Chunk((idx, chunk_row_offset)) => { - segments_by_name_impl( - child.as_ref(), - group_name.clone(), - Some( - name.as_ref() - .map(|n| format!("{n}.[{idx}]")) - .unwrap_or_else(|| format!("[{idx}]")) - .into(), - ), - // Compute absolute row offset. - Some(chunk_row_offset + row_offset.unwrap_or(0)), - segments, - segment_tree, - )? - } - LayoutChildType::Field(field_name) => { - // Step into a new group name - let group_name = group_name - .as_ref() - .map(|n| format!("{n}.{field_name}").into()) - .unwrap_or_else(|| field_name); - segment_tree.segment_ordering.push(group_name.clone()); - - segments_by_name_impl( - child.as_ref(), - Some(group_name), - None, - row_offset, - segments, - segment_tree, - )? - } - } - } - - let current_segments = segment_tree - .segments - .entry(group_name.unwrap_or_else(|| FieldName::from("root"))) - .or_default(); - - for segment_id in root.segment_ids() { - let segment_spec = segments[*segment_id as usize].clone(); - current_segments.push(SegmentDisplay { - name: name.clone().unwrap_or_else(|| "".into()), - spec: segment_spec, - row_count: root.row_count(), - row_offset: row_offset.unwrap_or(0), - }) - } - - Ok(()) -} From 021eab24a9ae9eacaf4d39ed36120822d0a4ee3b Mon Sep 17 00:00:00 2001 From: Baris Palaska Date: Sun, 7 Dec 2025 04:14:39 +0000 Subject: [PATCH 5/7] nits Signed-off-by: Baris Palaska --- vortex-tui/src/tree.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/vortex-tui/src/tree.rs b/vortex-tui/src/tree.rs index ebf923572f4..32ef339d6b4 100644 --- a/vortex-tui/src/tree.rs +++ b/vortex-tui/src/tree.rs @@ -100,7 +100,6 @@ async fn exec_array_tree(session: &VortexSession, file: &Path, _json: bool) -> V .read_all() .await?; - // TODO: Add JSON output support for array tree println!("{}", full.display_tree()); Ok(()) From ec89a20d28bc0c52c513011a9d8e6efabb1f821b Mon Sep 17 00:00:00 2001 From: Baris Palaska Date: Fri, 9 Jan 2026 20:57:37 +0000 Subject: [PATCH 6/7] fix: resolve clippy warnings and add missing docs - Add lifetime parameter to VortexInspector references - Add doc comments for SortDirection and QueryFocus variants - Add # Panics section for arrow_value_to_json - Import VortexSessionDefault trait in main.rs - Format code with rustfmt Signed-off-by: Baris Palaska Co-Authored-By: Claude Opus 4.5 --- vortex-tui/src/browse/mod.rs | 20 ++++++++++++-------- vortex-tui/src/browse/ui/query.rs | 14 ++++++++------ vortex-tui/src/datafusion_helper.rs | 11 ++++++++--- vortex-tui/src/inspect.rs | 4 ++-- vortex-tui/src/main.rs | 1 + 5 files changed, 31 insertions(+), 19 deletions(-) diff --git a/vortex-tui/src/browse/mod.rs b/vortex-tui/src/browse/mod.rs index cbc962282af..1e2e5552ae5 100644 --- a/vortex-tui/src/browse/mod.rs +++ b/vortex-tui/src/browse/mod.rs @@ -14,15 +14,14 @@ use crossterm::event::KeyCode; use crossterm::event::KeyEventKind; use crossterm::event::KeyModifiers; use ratatui::DefaultTerminal; +use ui::QueryFocus; +use ui::SortDirection; use ui::render_app; use vortex::error::VortexExpect; use vortex::error::VortexResult; use vortex::layout::layouts::flat::FlatVTable; use vortex::session::VortexSession; -use ui::QueryFocus; -use ui::SortDirection; - pub mod app; pub mod ui; @@ -108,7 +107,8 @@ fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { app.query_state.sort_column = None; app.query_state.sort_direction = SortDirection::None; let file_path = app.file_path.clone(); - app.query_state.execute_initial_query(app.session, &file_path); + app.query_state + .execute_initial_query(app.session, &file_path); // Switch focus to results table after executing app.query_state.focus = QueryFocus::ResultsTable; } @@ -154,14 +154,16 @@ fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { // Query tab: Ctrl+h for previous page (KeyCode::Char('h'), KeyModifiers::CONTROL) => { if app.current_tab == Tab::Query { - app.query_state.prev_page(app.session, &app.file_path.clone()); + app.query_state + .prev_page(app.session, &app.file_path.clone()); } } // Query tab: Ctrl+l for next page (KeyCode::Char('l'), KeyModifiers::CONTROL) => { if app.current_tab == Tab::Query { - app.query_state.next_page(app.session, &app.file_path.clone()); + app.query_state + .next_page(app.session, &app.file_path.clone()); } } @@ -187,7 +189,8 @@ fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { Tab::Layout => navigate_layout_up(app, SCROLL_PAGE), Tab::Segments => app.segment_grid_state.scroll_up(SEGMENT_SCROLL_PAGE), Tab::Query => { - app.query_state.prev_page(app.session, &app.file_path.clone()); + app.query_state + .prev_page(app.session, &app.file_path.clone()); } } } @@ -196,7 +199,8 @@ fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { Tab::Layout => navigate_layout_down(app, SCROLL_PAGE), Tab::Segments => app.segment_grid_state.scroll_down(SEGMENT_SCROLL_PAGE), Tab::Query => { - app.query_state.next_page(app.session, &app.file_path.clone()); + app.query_state + .next_page(app.session, &app.file_path.clone()); } } } diff --git a/vortex-tui/src/browse/ui/query.rs b/vortex-tui/src/browse/ui/query.rs index 0b1fdb565ab..6d99a3c8881 100644 --- a/vortex-tui/src/browse/ui/query.rs +++ b/vortex-tui/src/browse/ui/query.rs @@ -8,7 +8,6 @@ use ratatui::layout::Layout; use ratatui::layout::Rect; use ratatui::style::Color; use ratatui::style::Style; -use ratatui::style::Stylize; use ratatui::text::Line; use ratatui::text::Span; use ratatui::widgets::Block; @@ -35,13 +34,17 @@ use crate::datafusion_helper::json_value_to_display; /// Sort direction for table columns. #[derive(Debug, Clone, Copy, Default, PartialEq, Eq)] pub enum SortDirection { + /// No sorting applied. #[default] None, + /// Sort in ascending order. Ascending, + /// Sort in descending order. Descending, } impl SortDirection { + /// Cycle to the next sort direction: None -> Ascending -> Descending -> None. pub fn cycle(self) -> Self { match self { SortDirection::None => SortDirection::Ascending, @@ -50,6 +53,7 @@ impl SortDirection { } } + /// Get the sort direction indicator character for display. pub fn indicator(self) -> &'static str { match self { SortDirection::None => "", @@ -62,8 +66,10 @@ impl SortDirection { /// Focus state within the Query tab. #[derive(Debug, Clone, Copy, Default, PartialEq, Eq)] pub enum QueryFocus { + /// Focus is on the SQL input field. #[default] SqlInput, + /// Focus is on the results table. ResultsTable, } @@ -231,11 +237,7 @@ impl QueryState { } /// Build SQL query from current state and execute it. - fn rebuild_and_execute( - &mut self, - session: &vortex::session::VortexSession, - file_path: &str, - ) { + fn rebuild_and_execute(&mut self, session: &vortex::session::VortexSession, file_path: &str) { let offset = self.current_page * self.page_size; let new_sql = match &self.order_clause { diff --git a/vortex-tui/src/datafusion_helper.rs b/vortex-tui/src/datafusion_helper.rs index 6cc839c9867..9205ca0bede 100644 --- a/vortex-tui/src/datafusion_helper.rs +++ b/vortex-tui/src/datafusion_helper.rs @@ -71,6 +71,11 @@ pub async fn create_vortex_context( } /// Convert an Arrow array value at a given index to a JSON value. +/// +/// # Panics +/// +/// Panics if the array type doesn't match the expected Arrow array type during downcast. +/// This should not happen for well-formed Arrow arrays. #[allow(clippy::unwrap_used)] pub fn arrow_value_to_json(array: &dyn ArrowArray, idx: usize) -> serde_json::Value { use arrow_array::*; @@ -165,7 +170,7 @@ pub fn arrow_value_to_json(array: &dyn ArrowArray, idx: usize) -> serde_json::Va let arr = array.as_any().downcast_ref::().unwrap(); serde_json::json!(arr.value(idx)) } - DataType::Timestamp(_, _) => { + DataType::Timestamp(..) => { if let Some(arr) = array.as_any().downcast_ref::() { serde_json::json!(arr.value(idx)) } else if let Some(arr) = array.as_any().downcast_ref::() { @@ -178,11 +183,11 @@ pub fn arrow_value_to_json(array: &dyn ArrowArray, idx: usize) -> serde_json::Va serde_json::Value::String("".to_string()) } } - DataType::Decimal128(_, _) => { + DataType::Decimal128(..) => { let arr = array.as_any().downcast_ref::().unwrap(); serde_json::Value::String(arr.value_as_string(idx)) } - DataType::Decimal256(_, _) => { + DataType::Decimal256(..) => { let arr = array.as_any().downcast_ref::().unwrap(); serde_json::Value::String(arr.value_as_string(idx)) } diff --git a/vortex-tui/src/inspect.rs b/vortex-tui/src/inspect.rs index b182324dd51..65ad6da1105 100644 --- a/vortex-tui/src/inspect.rs +++ b/vortex-tui/src/inspect.rs @@ -161,7 +161,7 @@ pub async fn exec_inspect(session: &VortexSession, args: InspectArgs) -> anyhow: } async fn exec_inspect_json( - inspector: &mut VortexInspector, + inspector: &mut VortexInspector<'_>, file_path: &Path, mode: InspectMode, ) -> anyhow::Result<()> { @@ -271,7 +271,7 @@ async fn exec_inspect_json( } async fn exec_inspect_text( - inspector: &mut VortexInspector, + inspector: &mut VortexInspector<'_>, file_path: &Path, mode: InspectMode, ) -> anyhow::Result<()> { diff --git a/vortex-tui/src/main.rs b/vortex-tui/src/main.rs index 1ef1041c1a2..d813ff4dc4f 100644 --- a/vortex-tui/src/main.rs +++ b/vortex-tui/src/main.rs @@ -1,6 +1,7 @@ // SPDX-License-Identifier: Apache-2.0 // SPDX-FileCopyrightText: Copyright the Vortex contributors +use vortex::VortexSessionDefault; use vortex::io::session::RuntimeSessionExt; use vortex::session::VortexSession; use vortex_tui::launch; From 950cf351bdabd3ff02ebb5004cf9a36d6f125bf6 Mon Sep 17 00:00:00 2001 From: Baris Palaska Date: Fri, 9 Jan 2026 21:28:19 +0000 Subject: [PATCH 7/7] feat(vx browse): change Query tab pagination keys from Ctrl+h/l to [/] Ctrl+h and Ctrl+l conflict with common tmux and terminal shortcuts. Using [ and ] for prev/next page is more compatible and follows conventions from other CLI tools like less and mutt. Signed-off-by: Baris Palaska --- vortex-tui/src/browse/mod.rs | 8 ++++---- vortex-tui/src/browse/ui/query.rs | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/vortex-tui/src/browse/mod.rs b/vortex-tui/src/browse/mod.rs index 1e2e5552ae5..adeb0bb4da0 100644 --- a/vortex-tui/src/browse/mod.rs +++ b/vortex-tui/src/browse/mod.rs @@ -151,16 +151,16 @@ fn handle_normal_mode(app: &mut AppState, event: Event) -> HandleResult { }; } - // Query tab: Ctrl+h for previous page - (KeyCode::Char('h'), KeyModifiers::CONTROL) => { + // Query tab: '[' for previous page + (KeyCode::Char('['), KeyModifiers::NONE) => { if app.current_tab == Tab::Query { app.query_state .prev_page(app.session, &app.file_path.clone()); } } - // Query tab: Ctrl+l for next page - (KeyCode::Char('l'), KeyModifiers::CONTROL) => { + // Query tab: ']' for next page + (KeyCode::Char(']'), KeyModifiers::NONE) => { if app.current_tab == Tab::Query { app.query_state .next_page(app.session, &app.file_path.clone()); diff --git a/vortex-tui/src/browse/ui/query.rs b/vortex-tui/src/browse/ui/query.rs index 6d99a3c8881..692edd74423 100644 --- a/vortex-tui/src/browse/ui/query.rs +++ b/vortex-tui/src/browse/ui/query.rs @@ -533,7 +533,7 @@ fn render_results_table(app: &mut AppState<'_>, area: Rect, buf: &mut Buffer) { let total_rows = app.query_state.total_row_count.unwrap_or(0); let total_pages = app.query_state.total_pages(); format!( - "Results ({} rows, page {}/{}) [hjkl navigate, ^h/^l pages, s sort]", + "Results ({} rows, page {}/{}) [hjkl navigate, [/] pages, s sort]", total_rows, app.query_state.current_page + 1, total_pages,