Skip to content

Commit 03a1766

Browse files
committed
Initial commit
1 parent 72ac4cb commit 03a1766

File tree

14 files changed

+1504
-581
lines changed

14 files changed

+1504
-581
lines changed

Cargo.lock

Lines changed: 1428 additions & 518 deletions
Large diffs are not rendered by default.

Cargo.toml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ ahash = "0.8"
190190
anyhow = { version = "1.0", default-features = false }
191191
argh = "0.1.12"
192192
array-init = "2.1"
193-
arrow = { version = "55.2", default-features = false }
193+
arrow = { version = "56.1", default-features = false }
194194
async-stream = "0.3"
195195
axum = "0.8.4"
196196
backtrace = "0.3"
@@ -219,10 +219,10 @@ convert_case = "0.6"
219219
criterion = "0.5"
220220
cros-codecs = "0.0.6"
221221
crossbeam = "0.8"
222-
datafusion = { version = "47", default-features = false, features = [
222+
datafusion = { version = "50", default-features = false, features = [
223223
"nested_expressions",
224224
] }
225-
datafusion-ffi = "47"
225+
datafusion-ffi = "49.0.2"
226226
directories = "5"
227227
document-features = "0.2.8"
228228
econtext = "0.2" # Prints error contexts on crashes
@@ -275,15 +275,15 @@ nohash-hasher = "0.2"
275275
notify = { version = "6.1.1", features = ["macos_kqueue"] }
276276
num-derive = "0.4"
277277
num-traits = "0.2"
278-
numpy = "0.24"
278+
numpy = "0.25"
279279
objc2-app-kit = "0.3"
280280
opentelemetry = { version = "0.30", features = ["metrics"] }
281281
opentelemetry-appender-tracing = "0.30"
282282
opentelemetry-otlp = "0.30"
283283
opentelemetry_sdk = { version = "0.30", features = ["rt-tokio"] }
284284
ordered-float = "4.3.0"
285285
parking_lot = "0.12.3"
286-
parquet = { version = "55.1", default-features = false }
286+
parquet = { version = "56.1", default-features = false }
287287
paste = "1.0"
288288
pathdiff = "0.2"
289289
percent-encoding = "2.3"
@@ -301,8 +301,8 @@ prost-types = "0.13.3"
301301
prost-reflect = "0.15.3"
302302
puffin = "0.19.1"
303303
puffin_http = "0.16"
304-
pyo3 = "0.24.1"
305-
pyo3-build-config = "0.24.1"
304+
pyo3 = "0.25.1"
305+
pyo3-build-config = "0.25.1"
306306
quote = "1.0"
307307
rand = { version = "0.8", default-features = false, features = ["small_rng"] }
308308
rand_distr = { version = "0.4", default-features = false }

crates/store/re_datafusion/src/dataframe_query_common.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -223,8 +223,8 @@ impl DataframeQueryTableProvider {
223223
}
224224
Expr::BinaryExpr(binary) => {
225225
if binary.op == Operator::NotEq
226-
&& let (Expr::Column(col), Expr::Literal(sv))
227-
| (Expr::Literal(sv), Expr::Column(col)) =
226+
&& let (Expr::Column(col), Expr::Literal(sv, _))
227+
| (Expr::Literal(sv, _), Expr::Column(col)) =
228228
(binary.left.as_ref(), binary.right.as_ref())
229229
&& sv.is_null()
230230
{

crates/store/re_datafusion/src/dataframe_query_provider.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -233,13 +233,16 @@ impl PartitionStreamExec {
233233
SortOptions::new(false, true),
234234
));
235235
}
236-
vec![LexOrdering::new(physical_ordering)]
236+
vec![
237+
LexOrdering::new(physical_ordering)
238+
.expect("LexOrdering should return Some since input is not empty"),
239+
]
237240
} else {
238241
vec![]
239242
};
240243

241244
let eq_properties =
242-
EquivalenceProperties::new_with_orderings(Arc::clone(&projected_schema), &orderings);
245+
EquivalenceProperties::new_with_orderings(Arc::clone(&projected_schema), orderings);
243246

244247
let partition_in_output_schema = projection.map(|p| p.contains(&0)).unwrap_or(false);
245248

crates/store/re_datafusion/src/dataframe_query_provider_wasm.rs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -232,10 +232,13 @@ impl PartitionStreamExec {
232232
));
233233
}
234234

235-
let orderings = vec![LexOrdering::new(physical_ordering)];
235+
let orderings = vec![
236+
LexOrdering::new(physical_ordering)
237+
.expect("LexOrdering should return Some when non-empty vec is passed"),
238+
];
236239

237240
let eq_properties =
238-
EquivalenceProperties::new_with_orderings(Arc::clone(&projected_schema), &orderings);
241+
EquivalenceProperties::new_with_orderings(Arc::clone(&projected_schema), orderings);
239242

240243
let partition_in_output_schema = projection.map(|p| p.contains(&0)).unwrap_or(false);
241244

crates/store/re_types_core/src/reflection.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -224,6 +224,8 @@ pub fn generic_placeholder_for_datatype(
224224
))
225225
}
226226

227+
DataType::Decimal32(_, _) => Arc::new(array::Decimal32Array::from_iter([0])),
228+
DataType::Decimal64(_, _) => Arc::new(array::Decimal64Array::from_iter([0])),
227229
DataType::Decimal128(_, _) => Arc::new(array::Decimal128Array::from_iter([0])),
228230

229231
DataType::Decimal256(_, _) => Arc::new(array::Decimal256Array::from_iter([

crates/utils/re_arrow_util/src/format_data_type.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,8 @@ impl std::fmt::Display for DisplayDatatype<'_> {
110110
DataType::Dictionary(key, value) => {
111111
return write!(f, "Dictionary{{{}: {}}}", Self(key), Self(value));
112112
}
113+
DataType::Decimal32(_, _) => "Decimal32",
114+
DataType::Decimal64(_, _) => "Decimal64",
113115
DataType::Decimal128(_, _) => "Decimal128",
114116
DataType::Decimal256(_, _) => "Decimal256",
115117
DataType::BinaryView => "BinaryView",

crates/utils/re_byte_size/src/arrow_sizes.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,8 @@ impl SizeBytes for DataType {
106106
| Self::Utf8
107107
| Self::LargeUtf8
108108
| Self::BinaryView
109+
| Self::Decimal32(_, _)
110+
| Self::Decimal64(_, _)
109111
| Self::Decimal128(_, _)
110112
| Self::Decimal256(_, _)
111113
| Self::FixedSizeBinary(_)

crates/viewer/re_arrow_ui/src/show_index.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,7 @@ fn make_ui<'a>(
160160
| DataType::Utf8View | DataType::BinaryView
161161
| DataType::Date32 | DataType::Date64 | DataType::Time32(_) | DataType::Time64(_)
162162
| DataType::Timestamp(_, _) | DataType::Duration(_) | DataType::Interval(_)
163-
| DataType::Decimal128(_, _) | DataType::Decimal256(_, _)
163+
| DataType::Decimal32(_,_) | DataType::Decimal64(_,_) | DataType::Decimal128(_, _) | DataType::Decimal256(_, _)
164164
=> {
165165
show_arrow_builtin(array, options)
166166
}

deny.toml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ all-features = true
2929
[advisories]
3030
version = 2
3131
ignore = [
32-
"RUSTSEC-2024-0384", # Waiting for https://github.com/console-rs/indicatif/pull/666
3332
"RUSTSEC-2024-0436", # https://rustsec.org/advisories/RUSTSEC-2024-0436 - paste is unmaintained - https://github.com/dtolnay/paste
3433
"RUSTSEC-2024-0014", # https://rustsec.org/advisories/RUSTSEC-2024-0014 - generational-arena is unmaintained
3534
]
@@ -54,6 +53,7 @@ deny = [
5453
skip = [
5554
{ name = "base64" }, # Too popular
5655
{ name = "block2" }, # Old version via rfd
56+
{ name = "bzip2" }, # Remove after https://github.com/apache/datafusion/pull/17509 closes
5757
{ name = "cargo-platform" }, # Older version used by ply-rs. It's build-time only!
5858
{ name = "cargo_metadata" }, # Older version used by ply-rs. It's small, and it's build-time only!
5959
{ name = "core-foundation" }, # Currently, e.g. `webbrowser` and `winit` use different versions.
@@ -63,7 +63,7 @@ skip = [
6363
{ name = "objc2-foundation" }, # `accesskit_macos` uses a different version than `arboard`
6464
{ name = "objc2" }, # `accesskit_macos` uses a different version than `arboard`
6565
{ name = "ordered-float" }, # Old version being used by parquet, but super small!
66-
{ name = "pollster" }, # rfd is still on 0.3
66+
{ name = "petgraph" }, # Remove after https://github.com/tokio-rs/prost/pull/1268 resolves
6767
{ name = "pulldown-cmark" }, # Build-dependency via `ply-rs` (!). TODO(emilk): use a better crate for .ply parsing
6868
{ name = "redox_syscall" }, # Plenty of versions in the wild
6969
{ name = "rustc-hash" }, # numpy with compatible pyo3 requires different version than wgpu
@@ -95,8 +95,8 @@ allow = [
9595
"OFL-1.1", # https://spdx.org/licenses/OFL-1.1.html
9696
"Ubuntu-font-1.0", # https://ubuntu.com/legal/font-licence
9797
"Unicode-3.0", # https://www.unicode.org/license.txt
98-
"Unicode-DFS-2016", # https://spdx.org/licenses/Unicode-DFS-2016.html
9998
"Zlib", # https://tldrlegal.com/license/zlib-libpng-license-(zlib)
99+
"bzip2-1.0.6", # https://github.com/trifectatechfoundation/libbzip2-rs/blob/v0.2.2/COPYING
100100
]
101101
exceptions = []
102102

@@ -110,7 +110,6 @@ name = "ring"
110110
expression = "MIT AND ISC AND OpenSSL"
111111
license-files = [{ path = "LICENSE", hash = 0xbd0eed23 }]
112112

113-
114113
[sources]
115114
unknown-registry = "deny"
116115
unknown-git = "deny"

0 commit comments

Comments
 (0)