Skip to content

Commit 0b710ee

Browse files
Support Datafusion v50 (#96)
Co-authored-by: Adrian Garcia Badaracco <[email protected]>
1 parent 52fae14 commit 0b710ee

16 files changed

+25
-17
lines changed

Cargo.toml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
11
[package]
22
name = "datafusion-functions-json"
3-
version = "0.49.1"
3+
version = "0.50.0"
44
edition = "2021"
55
description = "JSON functions for DataFusion"
66
readme = "README.md"
77
license = "Apache-2.0"
88
keywords = ["datafusion", "JSON", "SQL"]
99
categories = ["database-implementations", "parsing"]
1010
repository = "https://github.com/datafusion-contrib/datafusion-functions-json/"
11-
rust-version = "1.85.1"
11+
rust-version = "1.86.0"
1212

1313
[dependencies]
14-
datafusion = { version = "49", default-features = false }
14+
datafusion = { version = "50", default-features = false }
1515
jiter = "0.10"
1616
log = "0.4"
1717
paste = "1"
1818

1919
[dev-dependencies]
2020
codspeed-criterion-compat = "2.6"
21-
datafusion = { version = "49", default-features = false, features = [
21+
datafusion = { version = "50", default-features = false, features = [
2222
"nested_expressions",
2323
] }
2424
tokio = { version = "1.43", features = ["full"] }

benches/main.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ fn bench_json_contains(b: &mut Bencher) {
3333
number_rows: 1,
3434
arg_fields: arg_fields.clone(),
3535
return_field: return_field.clone(),
36+
config_options: Arc::new(datafusion::config::ConfigOptions::default()),
3637
})
3738
.unwrap()
3839
});
@@ -63,6 +64,7 @@ fn bench_json_get_str_scalar(b: &mut Bencher) {
6364
arg_fields: arg_fields.clone(),
6465
number_rows: 1,
6566
return_field: return_field.clone(),
67+
config_options: Arc::new(datafusion::config::ConfigOptions::default()),
6668
})
6769
.unwrap();
6870
});
@@ -94,6 +96,7 @@ fn bench_json_get_str_array(b: &mut Bencher) {
9496
arg_fields: arg_fields.clone(),
9597
number_rows: 1,
9698
return_field: return_field.clone(),
99+
config_options: Arc::new(datafusion::config::ConfigOptions::default()),
97100
})
98101
.unwrap();
99102
});
@@ -125,6 +128,7 @@ fn bench_json_get_str_view_array(b: &mut Bencher) {
125128
arg_fields: arg_fields.clone(),
126129
number_rows: 1,
127130
return_field: return_field.clone(),
131+
config_options: Arc::new(datafusion::config::ConfigOptions::default()),
128132
})
129133
.unwrap();
130134
});

src/common_macros.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ macro_rules! make_udf_function {
3030
static [< STATIC_ $expr_fn_name:upper >]: std::sync::OnceLock<std::sync::Arc<datafusion::logical_expr::ScalarUDF>> =
3131
std::sync::OnceLock::new();
3232

33-
/// ScalarFunction that returns a [`ScalarUDF`] for [`$udf_impl`]
33+
/// `ScalarFunction` that returns a [`ScalarUDF`] for [`$udf_impl`]
3434
///
3535
/// [`ScalarUDF`]: datafusion::logical_expr::ScalarUDF
3636
pub fn [< $expr_fn_name _udf >]() -> std::sync::Arc<datafusion::logical_expr::ScalarUDF> {

src/common_union.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ impl JsonUnionEncoder {
257257
///
258258
/// Panics if the idx is outside the union values or an invalid type id exists in the union.
259259
#[must_use]
260-
pub fn get_value(&self, idx: usize) -> JsonUnionValue {
260+
pub fn get_value(&self, idx: usize) -> JsonUnionValue<'_> {
261261
let type_id = self.type_ids[idx];
262262
match type_id {
263263
TYPE_ID_NULL => JsonUnionValue::JsonNull,

src/json_as_text.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ make_udf_function!(
1717
r#"Get any value from a JSON string by its "path", represented as a string"#
1818
);
1919

20-
#[derive(Debug)]
20+
#[derive(Debug, PartialEq, Eq, Hash)]
2121
pub(super) struct JsonAsText {
2222
signature: Signature,
2323
aliases: [String; 1],

src/json_contains.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ make_udf_function!(
1717
r#"Does the key/index exist within the JSON value as the specified "path"?"#
1818
);
1919

20-
#[derive(Debug)]
20+
#[derive(Debug, PartialEq, Eq, Hash)]
2121
pub(super) struct JsonContains {
2222
signature: Signature,
2323
aliases: [String; 1],

src/json_get.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ make_udf_function!(
2323

2424
// build_typed_get!(JsonGet, "json_get", Union, Float64Array, jiter_json_get_float);
2525

26-
#[derive(Debug)]
26+
#[derive(Debug, PartialEq, Eq, Hash)]
2727
pub(super) struct JsonGet {
2828
signature: Signature,
2929
aliases: [String; 1],

src/json_get_array.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ make_udf_function!(
1717
r#"Get an arrow array from a JSON string by its "path""#
1818
);
1919

20-
#[derive(Debug)]
20+
#[derive(Debug, PartialEq, Eq, Hash)]
2121
pub(super) struct JsonGetArray {
2222
signature: Signature,
2323
aliases: [String; 1],

src/json_get_bool.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ make_udf_function!(
1616
r#"Get an boolean value from a JSON string by its "path""#
1717
);
1818

19-
#[derive(Debug)]
19+
#[derive(Debug, PartialEq, Eq, Hash)]
2020
pub(super) struct JsonGetBool {
2121
signature: Signature,
2222
aliases: [String; 1],

src/json_get_float.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ make_udf_function!(
1717
r#"Get a float value from a JSON string by its "path""#
1818
);
1919

20-
#[derive(Debug)]
20+
#[derive(Debug, PartialEq, Eq, Hash)]
2121
pub(super) struct JsonGetFloat {
2222
signature: Signature,
2323
aliases: [String; 1],

0 commit comments

Comments
 (0)