Skip to content

Commit 2a15e3f

Browse files
authored
MINOR: Refactor datafusion-proto dependencies and imports (#2623)
* refactor imports and dependencies in datafusion-proto * more import cleanup * toml format
1 parent 07574bd commit 2a15e3f

File tree

7 files changed

+57
-72
lines changed

7 files changed

+57
-72
lines changed

datafusion/common/src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ mod dfschema;
2020
mod error;
2121
#[cfg(feature = "pyarrow")]
2222
mod pyarrow;
23-
mod scalar;
23+
pub mod scalar;
2424

2525
pub use column::Column;
2626
pub use dfschema::{DFField, DFSchema, DFSchemaRef, ExprSchema, ToDFSchema};

datafusion/proto/Cargo.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,10 @@ path = "src/lib.rs"
3535
[features]
3636

3737
[dependencies]
38+
arrow = { version = "14.0.0" }
3839
datafusion = { path = "../core", version = "8.0.0" }
40+
datafusion-common = { path = "../common", version = "8.0.0" }
41+
datafusion-expr = { path = "../expr", version = "8.0.0" }
3942
prost = "0.10"
4043

4144
[build-dependencies]

datafusion/proto/src/bytes/mod.rs

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,12 @@
1717

1818
//! Serialization / Deserialization to Bytes
1919
use crate::{from_proto::parse_expr, protobuf};
20-
use datafusion::{
21-
common::{DataFusionError, Result},
22-
logical_plan::{Expr, FunctionRegistry},
23-
};
20+
use datafusion_common::{DataFusionError, Result};
21+
use datafusion_expr::Expr;
2422
use prost::{bytes::BytesMut, Message};
2523

2624
// Reexport Bytes which appears in the API
25+
use datafusion::logical_plan::FunctionRegistry;
2726
pub use prost::bytes::Bytes;
2827

2928
mod registry;
@@ -32,8 +31,7 @@ mod registry;
3231
/// bytes.
3332
///
3433
/// ```
35-
/// use datafusion::prelude::*;
36-
/// use datafusion::logical_plan::Expr;
34+
/// use datafusion_expr::{col, lit, Expr};
3735
/// use datafusion_proto::bytes::Serializeable;
3836
///
3937
/// // Create a new `Expr` a < 32
@@ -98,13 +96,13 @@ impl Serializeable for Expr {
9896
#[cfg(test)]
9997
mod test {
10098
use super::*;
101-
use std::sync::Arc;
102-
99+
use arrow::{array::ArrayRef, datatypes::DataType};
100+
use datafusion::prelude::SessionContext;
103101
use datafusion::{
104-
arrow::array::ArrayRef, arrow::datatypes::DataType, logical_expr::Volatility,
105102
logical_plan::create_udf, physical_plan::functions::make_scalar_function,
106-
prelude::*,
107103
};
104+
use datafusion_expr::{lit, Volatility};
105+
use std::sync::Arc;
108106

109107
#[test]
110108
#[should_panic(

datafusion/proto/src/bytes/registry.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,9 @@
1717

1818
use std::{collections::HashSet, sync::Arc};
1919

20-
use datafusion::{
21-
common::{DataFusionError, Result},
22-
logical_expr::{AggregateUDF, ScalarUDF},
23-
logical_plan::FunctionRegistry,
24-
};
20+
use datafusion::logical_plan::FunctionRegistry;
21+
use datafusion_common::{DataFusionError, Result};
22+
use datafusion_expr::{AggregateUDF, ScalarUDF};
2523

2624
/// A default [`FunctionRegistry`] registry that does not resolve any
2725
/// user defined functions

datafusion/proto/src/from_proto.rs

Lines changed: 18 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -21,29 +21,22 @@ use crate::protobuf::plan_type::PlanTypeEnum::{
2121
OptimizedLogicalPlan, OptimizedPhysicalPlan,
2222
};
2323
use crate::protobuf::{OptimizedLogicalPlanType, OptimizedPhysicalPlanType};
24-
use datafusion::logical_plan::plan::StringifiedPlan;
25-
use datafusion::logical_plan::{FunctionRegistry, PlanType};
26-
use datafusion::prelude::bit_length;
27-
use datafusion::{
28-
arrow::datatypes::{DataType, Field, IntervalUnit, Schema, TimeUnit, UnionMode},
29-
error::DataFusionError,
30-
logical_expr::{BuiltInWindowFunction, BuiltinScalarFunction},
31-
logical_plan::{
32-
abs, acos, ascii, asin, atan, ceil, character_length, chr, concat_expr,
33-
concat_ws_expr, cos, digest, exp, floor, left, ln, log10, log2, now_expr, nullif,
34-
power, random, regexp_replace, repeat, replace, reverse, right, round, signum,
35-
sin, split_part, sqrt, starts_with, strpos, substr, tan, to_hex,
36-
to_timestamp_micros, to_timestamp_millis, to_timestamp_seconds, translate, trunc,
37-
window_frames::{WindowFrame, WindowFrameBound, WindowFrameUnits},
38-
Column, DFField, DFSchema, DFSchemaRef, Expr, Operator,
39-
},
40-
physical_plan::aggregates::AggregateFunction,
41-
prelude::{
42-
array, btrim, coalesce, date_part, date_trunc, lower, lpad, ltrim, md5,
43-
octet_length, regexp_match, rpad, rtrim, sha224, sha256, sha384, sha512, trim,
44-
upper,
45-
},
46-
scalar::ScalarValue,
24+
use arrow::datatypes::{DataType, Field, IntervalUnit, Schema, TimeUnit, UnionMode};
25+
use datafusion::logical_plan::FunctionRegistry;
26+
use datafusion_common::{
27+
Column, DFField, DFSchema, DFSchemaRef, DataFusionError, ScalarValue,
28+
};
29+
use datafusion_expr::{
30+
abs, acos, array, ascii, asin, atan, bit_length, btrim, ceil, character_length, chr,
31+
coalesce, concat_expr, concat_ws_expr, cos, date_part, date_trunc, digest, exp,
32+
floor, left, ln, log10, log2,
33+
logical_plan::{PlanType, StringifiedPlan},
34+
lower, lpad, ltrim, md5, now_expr, nullif, octet_length, power, random, regexp_match,
35+
regexp_replace, repeat, replace, reverse, right, round, rpad, rtrim, sha224, sha256,
36+
sha384, sha512, signum, sin, split_part, sqrt, starts_with, strpos, substr, tan,
37+
to_hex, to_timestamp_micros, to_timestamp_millis, to_timestamp_seconds, translate,
38+
trim, trunc, upper, AggregateFunction, BuiltInWindowFunction, BuiltinScalarFunction,
39+
Expr, Operator, WindowFrame, WindowFrameBound, WindowFrameUnits,
4740
};
4841
use std::sync::Arc;
4942

@@ -915,7 +908,6 @@ pub fn parse_expr(
915908
proto: &protobuf::LogicalExprNode,
916909
registry: &dyn FunctionRegistry,
917910
) -> Result<Expr, Error> {
918-
use datafusion::logical_expr::window_function;
919911
use protobuf::{logical_expr_node::ExprType, window_expr_node, ScalarFunction};
920912

921913
let expr_type = proto
@@ -971,7 +963,7 @@ pub fn parse_expr(
971963
let aggr_function = protobuf::AggregateFunction::try_from(i)?.into();
972964

973965
Ok(Expr::WindowFunction {
974-
fun: window_function::WindowFunction::AggregateFunction(
966+
fun: datafusion_expr::window_function::WindowFunction::AggregateFunction(
975967
aggr_function,
976968
),
977969
args: vec![parse_required_expr(&expr.expr, registry, "expr")?],
@@ -986,7 +978,7 @@ pub fn parse_expr(
986978
.into();
987979

988980
Ok(Expr::WindowFunction {
989-
fun: window_function::WindowFunction::BuiltInWindowFunction(
981+
fun: datafusion_expr::window_function::WindowFunction::BuiltInWindowFunction(
990982
built_in_function,
991983
),
992984
args: vec![parse_required_expr(&expr.expr, registry, "expr")?],

datafusion/proto/src/lib.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -29,17 +29,17 @@ pub mod to_proto;
2929
mod roundtrip_tests {
3030
use super::from_proto::parse_expr;
3131
use super::protobuf;
32-
use datafusion::arrow::array::ArrayRef;
32+
use arrow::{
33+
array::ArrayRef,
34+
datatypes::{DataType, Field, IntervalUnit, TimeUnit, UnionMode},
35+
};
3336
use datafusion::logical_plan::create_udaf;
3437
use datafusion::physical_plan::functions::make_scalar_function;
35-
use datafusion::physical_plan::Accumulator;
36-
use datafusion::{
37-
arrow::datatypes::{DataType, Field, IntervalUnit, TimeUnit, UnionMode},
38-
logical_expr::{BuiltinScalarFunction::Sqrt, Volatility},
39-
logical_plan::{col, Expr},
40-
physical_plan::aggregates,
41-
prelude::*,
42-
scalar::ScalarValue,
38+
use datafusion::prelude::{create_udf, SessionContext};
39+
use datafusion_common::ScalarValue;
40+
use datafusion_expr::{
41+
col, lit, Accumulator, AggregateFunction, BuiltinScalarFunction::Sqrt, Expr,
42+
Volatility,
4343
};
4444
use std::sync::Arc;
4545

@@ -704,7 +704,7 @@ mod roundtrip_tests {
704704
#[test]
705705
fn roundtrip_approx_percentile_cont() {
706706
let test_expr = Expr::AggregateFunction {
707-
fun: aggregates::AggregateFunction::ApproxPercentileCont,
707+
fun: AggregateFunction::ApproxPercentileCont,
708708
args: vec![col("bananas"), lit(0.42_f32)],
709709
distinct: false,
710710
};

datafusion/proto/src/to_proto.rs

Lines changed: 14 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -19,28 +19,22 @@
1919
//! DataFusion logical plans to be serialized and transmitted between
2020
//! processes.
2121
22-
use crate::protobuf;
23-
use crate::protobuf::plan_type::PlanTypeEnum::{
24-
FinalLogicalPlan, FinalPhysicalPlan, InitialLogicalPlan, InitialPhysicalPlan,
25-
OptimizedLogicalPlan, OptimizedPhysicalPlan,
26-
};
2722
use crate::protobuf::{
23+
self,
24+
plan_type::PlanTypeEnum::{
25+
FinalLogicalPlan, FinalPhysicalPlan, InitialLogicalPlan, InitialPhysicalPlan,
26+
OptimizedLogicalPlan, OptimizedPhysicalPlan,
27+
},
2828
EmptyMessage, OptimizedLogicalPlanType, OptimizedPhysicalPlanType,
2929
};
30-
31-
use datafusion::logical_plan::plan::StringifiedPlan;
32-
use datafusion::logical_plan::PlanType;
33-
use datafusion::{
34-
arrow::datatypes::{
35-
DataType, Field, IntervalUnit, Schema, SchemaRef, TimeUnit, UnionMode,
36-
},
37-
logical_expr::{BuiltInWindowFunction, BuiltinScalarFunction, WindowFunction},
38-
logical_plan::{
39-
window_frames::{WindowFrame, WindowFrameBound, WindowFrameUnits},
40-
Column, DFField, DFSchemaRef, Expr,
41-
},
42-
physical_plan::aggregates::AggregateFunction,
43-
scalar::ScalarValue,
30+
use arrow::datatypes::{
31+
DataType, Field, IntervalUnit, Schema, SchemaRef, TimeUnit, UnionMode,
32+
};
33+
use datafusion_common::{Column, DFField, DFSchemaRef, ScalarValue};
34+
use datafusion_expr::{
35+
logical_plan::PlanType, logical_plan::StringifiedPlan, AggregateFunction,
36+
BuiltInWindowFunction, BuiltinScalarFunction, Expr, WindowFrame, WindowFrameBound,
37+
WindowFrameUnits, WindowFunction,
4438
};
4539

4640
#[derive(Debug)]
@@ -732,7 +726,7 @@ impl TryFrom<&ScalarValue> for protobuf::ScalarValue {
732726
type Error = Error;
733727

734728
fn try_from(val: &ScalarValue) -> Result<Self, Self::Error> {
735-
use datafusion::scalar;
729+
use datafusion_common::scalar;
736730
use protobuf::{scalar_value::Value, PrimitiveScalarType};
737731

738732
let scalar_val = match val {

0 commit comments

Comments
 (0)