From c23786eed0f7b4b7fd5b1959dde7b5f17e071c31 Mon Sep 17 00:00:00 2001 From: Linwei Zhang Date: Mon, 30 Oct 2023 23:12:37 +0800 Subject: [PATCH 1/5] Improve datafusion-* --- Cargo.toml | 11 +++++++++++ datafusion/core/Cargo.toml | 8 ++++---- datafusion/execution/Cargo.toml | 4 ++-- datafusion/expr/Cargo.toml | 2 +- datafusion/optimizer/Cargo.toml | 4 ++-- datafusion/physical-expr/Cargo.toml | 4 ++-- datafusion/physical-plan/Cargo.toml | 8 ++++---- datafusion/proto/Cargo.toml | 4 ++-- datafusion/sql/Cargo.toml | 4 ++-- datafusion/sqllogictest/Cargo.toml | 2 +- datafusion/substrait/Cargo.toml | 2 +- datafusion/wasmtest/Cargo.toml | 10 +++++----- 12 files changed, 37 insertions(+), 26 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 77e3c6038ea7..5ecf560fccf8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -54,6 +54,17 @@ arrow-array = { version = "48.0.0", default-features = false, features = ["chron arrow-buffer = { version = "48.0.0", default-features = false } arrow-flight = { version = "48.0.0", features = ["flight-sql-experimental"] } arrow-schema = { version = "48.0.0", default-features = false } +datafusion = { path = "datafusion/core" } +datafusion-common = { path = "datafusion/common" } +datafusion-expr = { path = "datafusion/expr" } +datafusion-sql = { path = "datafusion/sql" } +datafusion-optimizer = { path = "datafusion/optimizer" } +datafusion-physical-expr = { path = "datafusion/physical-expr" } +datafusion-physical-plan = { path = "datafusion/physical-plan" } +datafusion-execution = { path = "datafusion/execution" } +datafusion-proto = { path = "datafusion/proto" } +datafusion-sqllogictest = { path = "datafusion/sqllogictest" } +datafusion-substrait = { path = "datafusion/substrait" } parquet = { version = "48.0.0", features = ["arrow", "async", "object_store"] } sqlparser = { version = "0.38.0", features = ["visitor"] } chrono = { version = "0.4.31", default-features = false } diff --git a/datafusion/core/Cargo.toml b/datafusion/core/Cargo.toml index 5f9d28bd620b..3b3c0dce94f1 100644 --- a/datafusion/core/Cargo.toml +++ b/datafusion/core/Cargo.toml @@ -63,12 +63,12 @@ bzip2 = { version = "0.4.3", optional = true } chrono = { workspace = true } dashmap = "5.4.0" datafusion-common = { path = "../common", version = "32.0.0", features = ["object_store"], default-features = false } -datafusion-execution = { path = "../execution", version = "32.0.0" } -datafusion-expr = { path = "../expr", version = "32.0.0" } +datafusion-execution = { workspace = true } +datafusion-expr = { workspace = true } datafusion-optimizer = { path = "../optimizer", version = "32.0.0", default-features = false } datafusion-physical-expr = { path = "../physical-expr", version = "32.0.0", default-features = false } -datafusion-physical-plan = { path = "../physical-plan", version = "32.0.0", default-features = false } -datafusion-sql = { path = "../sql", version = "32.0.0" } +datafusion-physical-plan = { workspace = true } +datafusion-sql = { workspace = true } flate2 = { version = "1.0.24", optional = true } futures = "0.3" glob = "0.3.0" diff --git a/datafusion/execution/Cargo.toml b/datafusion/execution/Cargo.toml index 6ae8bccdae38..131900ddb170 100644 --- a/datafusion/execution/Cargo.toml +++ b/datafusion/execution/Cargo.toml @@ -36,8 +36,8 @@ path = "src/lib.rs" arrow = { workspace = true } chrono = { version = "0.4", default-features = false } dashmap = "5.4.0" -datafusion-common = { path = "../common", version = "32.0.0" } -datafusion-expr = { path = "../expr", version = "32.0.0" } +datafusion-common = { workspace = true } +datafusion-expr = { workspace = true } futures = "0.3" hashbrown = { version = "0.14", features = ["raw"] } log = "^0.4" diff --git a/datafusion/expr/Cargo.toml b/datafusion/expr/Cargo.toml index a7919a557ad7..13828db6102f 100644 --- a/datafusion/expr/Cargo.toml +++ b/datafusion/expr/Cargo.toml @@ -38,7 +38,7 @@ path = "src/lib.rs" ahash = { version = "0.8", default-features = false, features = ["runtime-rng"] } arrow = { workspace = true } arrow-array = { workspace = true } -datafusion-common = { path = "../common", version = "32.0.0", default-features = false } +datafusion-common = { workspace = true } sqlparser = { workspace = true } strum = { version = "0.25.0", features = ["derive"] } strum_macros = "0.25.0" diff --git a/datafusion/optimizer/Cargo.toml b/datafusion/optimizer/Cargo.toml index dce05058b826..02ea9d1413d1 100644 --- a/datafusion/optimizer/Cargo.toml +++ b/datafusion/optimizer/Cargo.toml @@ -42,8 +42,8 @@ unicode_expressions = ["datafusion-physical-expr/unicode_expressions"] arrow = { workspace = true } async-trait = "0.1.41" chrono = { workspace = true } -datafusion-common = { path = "../common", version = "32.0.0", default-features = false } -datafusion-expr = { path = "../expr", version = "32.0.0" } +datafusion-common = { workspace = true } +datafusion-expr = { workspace = true } datafusion-physical-expr = { path = "../physical-expr", version = "32.0.0", default-features = false } hashbrown = { version = "0.14", features = ["raw"] } itertools = "0.11" diff --git a/datafusion/physical-expr/Cargo.toml b/datafusion/physical-expr/Cargo.toml index f7c0221756fd..fedd41834935 100644 --- a/datafusion/physical-expr/Cargo.toml +++ b/datafusion/physical-expr/Cargo.toml @@ -49,8 +49,8 @@ base64 = { version = "0.21", optional = true } blake2 = { version = "^0.10.2", optional = true } blake3 = { version = "1.0", optional = true } chrono = { workspace = true } -datafusion-common = { path = "../common", version = "32.0.0", default-features = false } -datafusion-expr = { path = "../expr", version = "32.0.0" } +datafusion-common = { workspace = true } +datafusion-expr = { workspace = true } half = { version = "2.1", default-features = false } hashbrown = { version = "0.14", features = ["raw"] } hex = { version = "0.4", optional = true } diff --git a/datafusion/physical-plan/Cargo.toml b/datafusion/physical-plan/Cargo.toml index 2dfcf12e350a..68c0aa89c5b7 100644 --- a/datafusion/physical-plan/Cargo.toml +++ b/datafusion/physical-plan/Cargo.toml @@ -40,10 +40,10 @@ arrow-buffer = { workspace = true } arrow-schema = { workspace = true } async-trait = "0.1.41" chrono = { version = "0.4.23", default-features = false } -datafusion-common = { path = "../common", version = "32.0.0", default-features = false } -datafusion-execution = { path = "../execution", version = "32.0.0" } -datafusion-expr = { path = "../expr", version = "32.0.0" } -datafusion-physical-expr = { path = "../physical-expr", version = "32.0.0" } +datafusion-common = { workspace = true } +datafusion-execution = { workspace = true } +datafusion-expr = { workspace = true } +datafusion-physical-expr = { workspace = true } futures = "0.3" half = { version = "2.1", default-features = false } hashbrown = { version = "0.14", features = ["raw"] } diff --git a/datafusion/proto/Cargo.toml b/datafusion/proto/Cargo.toml index 5e52dadc0b18..f9c2fcfdb0c3 100644 --- a/datafusion/proto/Cargo.toml +++ b/datafusion/proto/Cargo.toml @@ -44,8 +44,8 @@ parquet = ["datafusion/parquet", "datafusion-common/parquet"] arrow = { workspace = true } chrono = { workspace = true } datafusion = { path = "../core", version = "32.0.0" } -datafusion-common = { path = "../common", version = "32.0.0", default-features = false } -datafusion-expr = { path = "../expr", version = "32.0.0" } +datafusion-common = { workspace = true } +datafusion-expr = { workspace = true } object_store = { version = "0.7.0" } pbjson = { version = "0.5", optional = true } prost = "0.12.0" diff --git a/datafusion/sql/Cargo.toml b/datafusion/sql/Cargo.toml index fe60feb6ab1f..3836d94936f3 100644 --- a/datafusion/sql/Cargo.toml +++ b/datafusion/sql/Cargo.toml @@ -39,8 +39,8 @@ unicode_expressions = [] [dependencies] arrow = { workspace = true } arrow-schema = { workspace = true } -datafusion-common = { path = "../common", version = "32.0.0", default-features = false } -datafusion-expr = { path = "../expr", version = "32.0.0" } +datafusion-common = { workspace = true } +datafusion-expr = { workspace = true } log = "^0.4" sqlparser = { workspace = true } diff --git a/datafusion/sqllogictest/Cargo.toml b/datafusion/sqllogictest/Cargo.toml index f1a730351417..56dfbd6dd11a 100644 --- a/datafusion/sqllogictest/Cargo.toml +++ b/datafusion/sqllogictest/Cargo.toml @@ -37,7 +37,7 @@ bigdecimal = "0.4.1" bytes = { version = "1.4.0", optional = true } chrono = { workspace = true, optional = true } datafusion = { path = "../core", version = "32.0.0" } -datafusion-common = { path = "../common", version = "32.0.0", default-features = false } +datafusion-common = { workspace = true } futures = { version = "0.3.28" } half = "2.2.1" itertools = "0.11" diff --git a/datafusion/substrait/Cargo.toml b/datafusion/substrait/Cargo.toml index 67d31caca260..6a6380a8e6fd 100644 --- a/datafusion/substrait/Cargo.toml +++ b/datafusion/substrait/Cargo.toml @@ -30,7 +30,7 @@ rust-version = "1.70" [dependencies] async-recursion = "1.0" chrono = { workspace = true } -datafusion = { version = "32.0.0", path = "../core" } +datafusion = { workspace = true } itertools = "0.11" object_store = "0.7.0" prost = "0.12" diff --git a/datafusion/wasmtest/Cargo.toml b/datafusion/wasmtest/Cargo.toml index 3195c989e223..882b02bcc84b 100644 --- a/datafusion/wasmtest/Cargo.toml +++ b/datafusion/wasmtest/Cargo.toml @@ -38,11 +38,11 @@ crate-type = ["cdylib", "rlib",] # code size when deploying. console_error_panic_hook = { version = "0.1.1", optional = true } -datafusion-common = { path = "../common", version = "32.0.0", default-features = false } -datafusion-expr = { path = "../expr" } -datafusion-optimizer = { path = "../optimizer" } -datafusion-physical-expr = { path = "../physical-expr" } -datafusion-sql = { path = "../sql" } +datafusion-common = { workspace = true } +datafusion-expr = { workspace = true } +datafusion-optimizer = { workspace = true } +datafusion-physical-expr = { workspace = true } +datafusion-sql = { workspace = true } # getrandom must be compiled with js feature getrandom = { version = "0.2.8", features = ["js"] } From cd538f249c40678f6635af60b0a332f63762ff32 Mon Sep 17 00:00:00 2001 From: Linwei Zhang Date: Mon, 30 Oct 2023 23:23:28 +0800 Subject: [PATCH 2/5] More common crates --- Cargo.toml | 12 ++++++++++++ benchmarks/Cargo.toml | 6 +++--- datafusion-cli/Cargo.toml | 2 +- datafusion-examples/Cargo.toml | 10 +++++----- datafusion/common/Cargo.toml | 2 +- datafusion/core/Cargo.toml | 24 ++++++++++++------------ datafusion/execution/Cargo.toml | 16 ++++++++-------- datafusion/optimizer/Cargo.toml | 4 ++-- datafusion/physical-expr/Cargo.toml | 8 ++++---- datafusion/physical-plan/Cargo.toml | 10 +++++----- datafusion/sql/Cargo.toml | 2 +- datafusion/sqllogictest/Cargo.toml | 10 +++++----- datafusion/substrait/Cargo.toml | 4 ++-- test-utils/Cargo.toml | 2 +- 14 files changed, 62 insertions(+), 50 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 5ecf560fccf8..ae8c1be5c412 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -54,6 +54,7 @@ arrow-array = { version = "48.0.0", default-features = false, features = ["chron arrow-buffer = { version = "48.0.0", default-features = false } arrow-flight = { version = "48.0.0", features = ["flight-sql-experimental"] } arrow-schema = { version = "48.0.0", default-features = false } +bytes = "1.4" datafusion = { path = "datafusion/core" } datafusion-common = { path = "datafusion/common" } datafusion-expr = { path = "datafusion/expr" } @@ -65,9 +66,20 @@ datafusion-execution = { path = "datafusion/execution" } datafusion-proto = { path = "datafusion/proto" } datafusion-sqllogictest = { path = "datafusion/sqllogictest" } datafusion-substrait = { path = "datafusion/substrait" } +dashmap = "5.4.0" +futures = "0.3" +indexmap = "2.0.0" +itertools = "0.11" +log = "^0.4" +num_cpus = "1.13.0" +object_store = "0.7.0" +parking_lot = "0.12" parquet = { version = "48.0.0", features = ["arrow", "async", "object_store"] } +rand = "0.8" sqlparser = { version = "0.38.0", features = ["visitor"] } +tempfile = "3" chrono = { version = "0.4.31", default-features = false } +url = "2.2" [profile.release] codegen-units = 1 diff --git a/benchmarks/Cargo.toml b/benchmarks/Cargo.toml index 0def335521ce..5f1398d8db45 100644 --- a/benchmarks/Cargo.toml +++ b/benchmarks/Cargo.toml @@ -37,10 +37,10 @@ arrow = { workspace = true } datafusion = { path = "../datafusion/core", version = "32.0.0" } datafusion-common = { path = "../datafusion/common", version = "32.0.0" } env_logger = "0.10" -futures = "0.3" -log = "^0.4" +futures = { workspace = true } +log = { workspace = true } mimalloc = { version = "0.1", optional = true, default-features = false } -num_cpus = "1.13.0" +num_cpus = { workspace = true } parquet = { workspace = true } serde = { version = "1.0.136", features = ["derive"] } serde_json = "1.0.78" diff --git a/datafusion-cli/Cargo.toml b/datafusion-cli/Cargo.toml index 7dd9cb8bcb37..c54bceefb2af 100644 --- a/datafusion-cli/Cargo.toml +++ b/datafusion-cli/Cargo.toml @@ -43,7 +43,7 @@ parking_lot = { version = "0.12" } regex = "1.8" rustyline = "11.0" tokio = { version = "1.24", features = ["macros", "rt", "rt-multi-thread", "sync", "parking_lot"] } -url = "2.2" +url = { workspace = true } [dev-dependencies] assert_cmd = "2.0" diff --git a/datafusion-examples/Cargo.toml b/datafusion-examples/Cargo.toml index 7350c4ab981f..419987f06af8 100644 --- a/datafusion-examples/Cargo.toml +++ b/datafusion-examples/Cargo.toml @@ -34,7 +34,7 @@ arrow = { workspace = true } arrow-flight = { workspace = true } arrow-schema = { workspace = true } async-trait = "0.1.41" -bytes = "1.4" +bytes = { workspace = true } dashmap = "5.4" datafusion = { path = "../datafusion/core", features = ["avro"] } datafusion-common = { path = "../datafusion/common" } @@ -42,17 +42,17 @@ datafusion-expr = { path = "../datafusion/expr" } datafusion-optimizer = { path = "../datafusion/optimizer" } datafusion-sql = { path = "../datafusion/sql" } env_logger = "0.10" -futures = "0.3" +futures = { workspace = true } log = "0.4" mimalloc = { version = "0.1", default-features = false } -num_cpus = "1.13.0" +num_cpus = { workspace = true } object_store = { version = "0.7.0", features = ["aws", "http"] } prost = { version = "0.12", default-features = false } prost-derive = { version = "0.11", default-features = false } serde = { version = "1.0.136", features = ["derive"] } serde_json = "1.0.82" -tempfile = "3" +tempfile = { workspace = true } tokio = { version = "1.0", features = ["macros", "rt", "rt-multi-thread", "sync", "parking_lot"] } tonic = "0.10" -url = "2.2" +url = { workspace = true } uuid = "1.2" diff --git a/datafusion/common/Cargo.toml b/datafusion/common/Cargo.toml index 87087c50a2d2..d04db86b7830 100644 --- a/datafusion/common/Cargo.toml +++ b/datafusion/common/Cargo.toml @@ -46,7 +46,7 @@ arrow-buffer = { workspace = true } arrow-schema = { workspace = true } chrono = { workspace = true } half = { version = "2.1", default-features = false } -num_cpus = "1.13.0" +num_cpus = { workspace = true } object_store = { version = "0.7.0", default-features = false, optional = true } parquet = { workspace = true, optional = true } pyo3 = { version = "0.20.0", optional = true } diff --git a/datafusion/core/Cargo.toml b/datafusion/core/Cargo.toml index 3b3c0dce94f1..0f2a34f2e3f1 100644 --- a/datafusion/core/Cargo.toml +++ b/datafusion/core/Cargo.toml @@ -58,10 +58,10 @@ arrow-array = { workspace = true } arrow-schema = { workspace = true } async-compression = { version = "0.4.0", features = ["bzip2", "gzip", "xz", "zstd", "futures-io", "tokio"], optional = true } async-trait = "0.1.73" -bytes = "1.4" +bytes = { workspace = true } bzip2 = { version = "0.4.3", optional = true } chrono = { workspace = true } -dashmap = "5.4.0" +dashmap = { workspace = true } datafusion-common = { path = "../common", version = "32.0.0", features = ["object_store"], default-features = false } datafusion-execution = { workspace = true } datafusion-expr = { workspace = true } @@ -70,26 +70,26 @@ datafusion-physical-expr = { path = "../physical-expr", version = "32.0.0", defa datafusion-physical-plan = { workspace = true } datafusion-sql = { workspace = true } flate2 = { version = "1.0.24", optional = true } -futures = "0.3" +futures = { workspace = true } glob = "0.3.0" half = { version = "2.1", default-features = false } hashbrown = { version = "0.14", features = ["raw"] } -indexmap = "2.0.0" -itertools = "0.11" -log = "^0.4" +indexmap = { workspace = true } +itertools = { workspace = true } +log = { workspace = true } num-traits = { version = "0.2", optional = true } -num_cpus = "1.13.0" -object_store = "0.7.0" -parking_lot = "0.12" +num_cpus = { workspace = true } +object_store = { workspace = true } +parking_lot = { workspace = true } parquet = { workspace = true, optional = true } percent-encoding = "2.2.0" pin-project-lite = "^0.2.7" -rand = "0.8" +rand = { workspace = true } sqlparser = { workspace = true } -tempfile = "3" +tempfile = { workspace = true } tokio = { version = "1.28", features = ["macros", "rt", "rt-multi-thread", "sync", "fs", "parking_lot"] } tokio-util = { version = "0.7.4", features = ["io"] } -url = "2.2" +url = { workspace = true } uuid = { version = "1.0", features = ["v4"] } xz2 = { version = "0.1", optional = true } zstd = { version = "0.13", optional = true, default-features = false } diff --git a/datafusion/execution/Cargo.toml b/datafusion/execution/Cargo.toml index 131900ddb170..dc8a9b7068ea 100644 --- a/datafusion/execution/Cargo.toml +++ b/datafusion/execution/Cargo.toml @@ -35,14 +35,14 @@ path = "src/lib.rs" [dependencies] arrow = { workspace = true } chrono = { version = "0.4", default-features = false } -dashmap = "5.4.0" +dashmap = { workspace = true } datafusion-common = { workspace = true } datafusion-expr = { workspace = true } -futures = "0.3" +futures = { workspace = true } hashbrown = { version = "0.14", features = ["raw"] } -log = "^0.4" -object_store = "0.7.0" -parking_lot = "0.12" -rand = "0.8" -tempfile = "3" -url = "2.2" +log = { workspace = true } +object_store = { workspace = true } +parking_lot = { workspace = true } +rand = { workspace = true } +tempfile = { workspace = true } +url = { workspace = true } diff --git a/datafusion/optimizer/Cargo.toml b/datafusion/optimizer/Cargo.toml index 02ea9d1413d1..9363cf3a6a21 100644 --- a/datafusion/optimizer/Cargo.toml +++ b/datafusion/optimizer/Cargo.toml @@ -46,8 +46,8 @@ datafusion-common = { workspace = true } datafusion-expr = { workspace = true } datafusion-physical-expr = { path = "../physical-expr", version = "32.0.0", default-features = false } hashbrown = { version = "0.14", features = ["raw"] } -itertools = "0.11" -log = "^0.4" +itertools = { workspace = true } +log = { workspace = true } regex-syntax = "0.8.0" [dev-dependencies] diff --git a/datafusion/physical-expr/Cargo.toml b/datafusion/physical-expr/Cargo.toml index fedd41834935..46e0a1f83518 100644 --- a/datafusion/physical-expr/Cargo.toml +++ b/datafusion/physical-expr/Cargo.toml @@ -54,14 +54,14 @@ datafusion-expr = { workspace = true } half = { version = "2.1", default-features = false } hashbrown = { version = "0.14", features = ["raw"] } hex = { version = "0.4", optional = true } -indexmap = "2.0.0" +indexmap = { workspace = true } itertools = { version = "0.11", features = ["use_std"] } libc = "0.2.140" -log = "^0.4" +log = { workspace = true } md-5 = { version = "^0.10.0", optional = true } paste = "^1.0" petgraph = "0.6.2" -rand = "0.8" +rand = { workspace = true } regex = { version = "1.8", optional = true } sha2 = { version = "^0.10.1", optional = true } unicode-segmentation = { version = "^1.7.1", optional = true } @@ -69,7 +69,7 @@ uuid = { version = "^1.2", features = ["v4"] } [dev-dependencies] criterion = "0.5" -rand = "0.8" +rand = { workspace = true } rstest = "0.18.0" [[bench]] diff --git a/datafusion/physical-plan/Cargo.toml b/datafusion/physical-plan/Cargo.toml index 68c0aa89c5b7..322a4b867e6b 100644 --- a/datafusion/physical-plan/Cargo.toml +++ b/datafusion/physical-plan/Cargo.toml @@ -44,16 +44,16 @@ datafusion-common = { workspace = true } datafusion-execution = { workspace = true } datafusion-expr = { workspace = true } datafusion-physical-expr = { workspace = true } -futures = "0.3" +futures = { workspace = true } half = { version = "2.1", default-features = false } hashbrown = { version = "0.14", features = ["raw"] } -indexmap = "2.0.0" +indexmap = { workspace = true } itertools = { version = "0.11", features = ["use_std"] } -log = "^0.4" +log = { workspace = true } once_cell = "1.18.0" -parking_lot = "0.12" +parking_lot = { workspace = true } pin-project-lite = "^0.2.7" -rand = "0.8" +rand = { workspace = true } tokio = { version = "1.28", features = ["sync", "fs", "parking_lot"] } uuid = { version = "^1.2", features = ["v4"] } diff --git a/datafusion/sql/Cargo.toml b/datafusion/sql/Cargo.toml index 3836d94936f3..355a90df2009 100644 --- a/datafusion/sql/Cargo.toml +++ b/datafusion/sql/Cargo.toml @@ -41,7 +41,7 @@ arrow = { workspace = true } arrow-schema = { workspace = true } datafusion-common = { workspace = true } datafusion-expr = { workspace = true } -log = "^0.4" +log = { workspace = true } sqlparser = { workspace = true } [dev-dependencies] diff --git a/datafusion/sqllogictest/Cargo.toml b/datafusion/sqllogictest/Cargo.toml index 56dfbd6dd11a..eeacb645489b 100644 --- a/datafusion/sqllogictest/Cargo.toml +++ b/datafusion/sqllogictest/Cargo.toml @@ -40,15 +40,15 @@ datafusion = { path = "../core", version = "32.0.0" } datafusion-common = { workspace = true } futures = { version = "0.3.28" } half = "2.2.1" -itertools = "0.11" -log = "^0.4" -object_store = "0.7.0" +itertools = { workspace = true } +log = { workspace = true } +object_store = { workspace = true } postgres-protocol = { version = "0.6.4", optional = true } postgres-types = { version = "0.2.4", optional = true } rust_decimal = { version = "1.27.0" } sqllogictest = "0.17.0" sqlparser = { workspace = true } -tempfile = "3" +tempfile = { workspace = true } thiserror = "1.0.44" tokio = { version = "1.0" } tokio-postgres = { version = "0.7.7", optional = true } @@ -59,7 +59,7 @@ postgres = ["bytes", "chrono", "tokio-postgres", "postgres-types", "postgres-pro [dev-dependencies] env_logger = "0.10" -num_cpus = "1.13.0" +num_cpus = { workspace = true } [[test]] harness = false diff --git a/datafusion/substrait/Cargo.toml b/datafusion/substrait/Cargo.toml index 6a6380a8e6fd..585cb6e43d15 100644 --- a/datafusion/substrait/Cargo.toml +++ b/datafusion/substrait/Cargo.toml @@ -31,8 +31,8 @@ rust-version = "1.70" async-recursion = "1.0" chrono = { workspace = true } datafusion = { workspace = true } -itertools = "0.11" -object_store = "0.7.0" +itertools = { workspace = true } +object_store = { workspace = true } prost = "0.12" prost-types = "0.12" substrait = "0.18.0" diff --git a/test-utils/Cargo.toml b/test-utils/Cargo.toml index 5ab10e42cf68..b9c4db17c098 100644 --- a/test-utils/Cargo.toml +++ b/test-utils/Cargo.toml @@ -26,4 +26,4 @@ edition = { workspace = true } arrow = { workspace = true } datafusion-common = { path = "../datafusion/common" } env_logger = "0.10.0" -rand = "0.8" +rand = { workspace = true } From 1d3957b32765366e2e4af5e65f3894ddb2dce8b0 Mon Sep 17 00:00:00 2001 From: Linwei Zhang Date: Mon, 30 Oct 2023 23:26:01 +0800 Subject: [PATCH 3/5] Extract async-trait --- Cargo.toml | 1 + datafusion-cli/Cargo.toml | 2 +- datafusion-examples/Cargo.toml | 2 +- datafusion/core/Cargo.toml | 4 ++-- datafusion/optimizer/Cargo.toml | 2 +- datafusion/physical-plan/Cargo.toml | 2 +- datafusion/sqllogictest/Cargo.toml | 2 +- 7 files changed, 8 insertions(+), 7 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index ae8c1be5c412..68825e6bf7c5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -54,6 +54,7 @@ arrow-array = { version = "48.0.0", default-features = false, features = ["chron arrow-buffer = { version = "48.0.0", default-features = false } arrow-flight = { version = "48.0.0", features = ["flight-sql-experimental"] } arrow-schema = { version = "48.0.0", default-features = false } +async-trait = "0.1.73" bytes = "1.4" datafusion = { path = "datafusion/core" } datafusion-common = { path = "datafusion/common" } diff --git a/datafusion-cli/Cargo.toml b/datafusion-cli/Cargo.toml index c54bceefb2af..1cefcb4e65f5 100644 --- a/datafusion-cli/Cargo.toml +++ b/datafusion-cli/Cargo.toml @@ -30,7 +30,7 @@ readme = "README.md" [dependencies] arrow = "48.0.0" -async-trait = "0.1.41" +async-trait = { workspace = true } aws-config = "0.55" aws-credential-types = "0.55" clap = { version = "3", features = ["derive", "cargo"] } diff --git a/datafusion-examples/Cargo.toml b/datafusion-examples/Cargo.toml index 419987f06af8..2ab993d19f2c 100644 --- a/datafusion-examples/Cargo.toml +++ b/datafusion-examples/Cargo.toml @@ -33,7 +33,7 @@ rust-version = { workspace = true } arrow = { workspace = true } arrow-flight = { workspace = true } arrow-schema = { workspace = true } -async-trait = "0.1.41" +async-trait = { workspace = true } bytes = { workspace = true } dashmap = "5.4" datafusion = { path = "../datafusion/core", features = ["avro"] } diff --git a/datafusion/core/Cargo.toml b/datafusion/core/Cargo.toml index 0f2a34f2e3f1..3488ca2130f0 100644 --- a/datafusion/core/Cargo.toml +++ b/datafusion/core/Cargo.toml @@ -57,7 +57,7 @@ arrow = { workspace = true } arrow-array = { workspace = true } arrow-schema = { workspace = true } async-compression = { version = "0.4.0", features = ["bzip2", "gzip", "xz", "zstd", "futures-io", "tokio"], optional = true } -async-trait = "0.1.73" +async-trait = { workspace = true } bytes = { workspace = true } bzip2 = { version = "0.4.3", optional = true } chrono = { workspace = true } @@ -95,7 +95,7 @@ xz2 = { version = "0.1", optional = true } zstd = { version = "0.13", optional = true, default-features = false } [dev-dependencies] -async-trait = "0.1.53" +async-trait = { workspace = true } bigdecimal = "0.4.1" criterion = { version = "0.5", features = ["async_tokio"] } csv = "1.1.6" diff --git a/datafusion/optimizer/Cargo.toml b/datafusion/optimizer/Cargo.toml index 9363cf3a6a21..a84fbd7172eb 100644 --- a/datafusion/optimizer/Cargo.toml +++ b/datafusion/optimizer/Cargo.toml @@ -40,7 +40,7 @@ unicode_expressions = ["datafusion-physical-expr/unicode_expressions"] [dependencies] arrow = { workspace = true } -async-trait = "0.1.41" +async-trait = { workspace = true } chrono = { workspace = true } datafusion-common = { workspace = true } datafusion-expr = { workspace = true } diff --git a/datafusion/physical-plan/Cargo.toml b/datafusion/physical-plan/Cargo.toml index 322a4b867e6b..0af7f1f3f0e2 100644 --- a/datafusion/physical-plan/Cargo.toml +++ b/datafusion/physical-plan/Cargo.toml @@ -38,7 +38,7 @@ arrow = { workspace = true } arrow-array = { workspace = true } arrow-buffer = { workspace = true } arrow-schema = { workspace = true } -async-trait = "0.1.41" +async-trait = { workspace = true } chrono = { version = "0.4.23", default-features = false } datafusion-common = { workspace = true } datafusion-execution = { workspace = true } diff --git a/datafusion/sqllogictest/Cargo.toml b/datafusion/sqllogictest/Cargo.toml index eeacb645489b..774b4f4e9a26 100644 --- a/datafusion/sqllogictest/Cargo.toml +++ b/datafusion/sqllogictest/Cargo.toml @@ -32,7 +32,7 @@ path = "src/lib.rs" [dependencies] arrow = { workspace = true } -async-trait = "0.1.41" +async-trait = { workspace = true } bigdecimal = "0.4.1" bytes = { version = "1.4.0", optional = true } chrono = { workspace = true, optional = true } From 6bfa28a0f705867234b0b13ba534ce09ce16e25a Mon Sep 17 00:00:00 2001 From: Linwei Zhang Date: Mon, 30 Oct 2023 23:35:06 +0800 Subject: [PATCH 4/5] Extract more --- Cargo.toml | 8 ++++++++ benchmarks/Cargo.toml | 4 ++-- datafusion-examples/Cargo.toml | 8 ++++---- datafusion/core/Cargo.toml | 16 ++++++++-------- datafusion/expr/Cargo.toml | 4 ++-- datafusion/optimizer/Cargo.toml | 2 +- datafusion/physical-expr/Cargo.toml | 2 +- datafusion/physical-plan/Cargo.toml | 2 +- datafusion/proto/Cargo.toml | 4 ++-- datafusion/sql/Cargo.toml | 4 ++-- datafusion/sqllogictest/Cargo.toml | 8 ++++---- 11 files changed, 35 insertions(+), 27 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 68825e6bf7c5..bf75d23f9741 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -55,7 +55,9 @@ arrow-buffer = { version = "48.0.0", default-features = false } arrow-flight = { version = "48.0.0", features = ["flight-sql-experimental"] } arrow-schema = { version = "48.0.0", default-features = false } async-trait = "0.1.73" +bigdecimal = "0.4.1" bytes = "1.4" +ctor = "0.2.0" datafusion = { path = "datafusion/core" } datafusion-common = { path = "datafusion/common" } datafusion-expr = { path = "datafusion/expr" } @@ -68,7 +70,10 @@ datafusion-proto = { path = "datafusion/proto" } datafusion-sqllogictest = { path = "datafusion/sqllogictest" } datafusion-substrait = { path = "datafusion/substrait" } dashmap = "5.4.0" +doc-comment = "0.3" +env_logger = "0.10" futures = "0.3" +half = "2.2.1" indexmap = "2.0.0" itertools = "0.11" log = "^0.4" @@ -77,8 +82,11 @@ object_store = "0.7.0" parking_lot = "0.12" parquet = { version = "48.0.0", features = ["arrow", "async", "object_store"] } rand = "0.8" +rstest = "0.18.0" +serde_json = "1" sqlparser = { version = "0.38.0", features = ["visitor"] } tempfile = "3" +thiserror = "1.0.44" chrono = { version = "0.4.31", default-features = false } url = "2.2" diff --git a/benchmarks/Cargo.toml b/benchmarks/Cargo.toml index 5f1398d8db45..ce0a4267fc28 100644 --- a/benchmarks/Cargo.toml +++ b/benchmarks/Cargo.toml @@ -36,14 +36,14 @@ snmalloc = ["snmalloc-rs"] arrow = { workspace = true } datafusion = { path = "../datafusion/core", version = "32.0.0" } datafusion-common = { path = "../datafusion/common", version = "32.0.0" } -env_logger = "0.10" +env_logger = { workspace = true } futures = { workspace = true } log = { workspace = true } mimalloc = { version = "0.1", optional = true, default-features = false } num_cpus = { workspace = true } parquet = { workspace = true } serde = { version = "1.0.136", features = ["derive"] } -serde_json = "1.0.78" +serde_json = { workspace = true } snmalloc-rs = { version = "0.3", optional = true } structopt = { version = "0.3", default-features = false } test-utils = { path = "../test-utils/", version = "0.1.0" } diff --git a/datafusion-examples/Cargo.toml b/datafusion-examples/Cargo.toml index 2ab993d19f2c..57691520a401 100644 --- a/datafusion-examples/Cargo.toml +++ b/datafusion-examples/Cargo.toml @@ -35,22 +35,22 @@ arrow-flight = { workspace = true } arrow-schema = { workspace = true } async-trait = { workspace = true } bytes = { workspace = true } -dashmap = "5.4" +dashmap = { workspace = true } datafusion = { path = "../datafusion/core", features = ["avro"] } datafusion-common = { path = "../datafusion/common" } datafusion-expr = { path = "../datafusion/expr" } datafusion-optimizer = { path = "../datafusion/optimizer" } datafusion-sql = { path = "../datafusion/sql" } -env_logger = "0.10" +env_logger = { workspace = true } futures = { workspace = true } -log = "0.4" +log = { workspace = true } mimalloc = { version = "0.1", default-features = false } num_cpus = { workspace = true } object_store = { version = "0.7.0", features = ["aws", "http"] } prost = { version = "0.12", default-features = false } prost-derive = { version = "0.11", default-features = false } serde = { version = "1.0.136", features = ["derive"] } -serde_json = "1.0.82" +serde_json = { workspace = true } tempfile = { workspace = true } tokio = { version = "1.0", features = ["macros", "rt", "rt-multi-thread", "sync", "parking_lot"] } tonic = "0.10" diff --git a/datafusion/core/Cargo.toml b/datafusion/core/Cargo.toml index 3488ca2130f0..4931c8245667 100644 --- a/datafusion/core/Cargo.toml +++ b/datafusion/core/Cargo.toml @@ -96,23 +96,23 @@ zstd = { version = "0.13", optional = true, default-features = false } [dev-dependencies] async-trait = { workspace = true } -bigdecimal = "0.4.1" +bigdecimal = { workspace = true } criterion = { version = "0.5", features = ["async_tokio"] } csv = "1.1.6" -ctor = "0.2.0" -doc-comment = "0.3" -env_logger = "0.10" -half = "2.2.1" +ctor = { workspace = true } +doc-comment = { workspace = true } +env_logger = { workspace = true } +half = { workspace = true } postgres-protocol = "0.6.4" postgres-types = { version = "0.2.4", features = ["derive", "with-chrono-0_4"] } rand = { version = "0.8", features = ["small_rng"] } rand_distr = "0.4.3" regex = "1.5.4" -rstest = "0.18.0" +rstest = { workspace = true } rust_decimal = { version = "1.27.0", features = ["tokio-pg"] } -serde_json = "1" +serde_json = { workspace = true } test-utils = { path = "../../test-utils" } -thiserror = "1.0.37" +thiserror = { workspace = true } tokio-postgres = "0.7.7" [target.'cfg(not(target_os = "windows"))'.dev-dependencies] nix = { version = "0.27.1", features = ["fs"] } diff --git a/datafusion/expr/Cargo.toml b/datafusion/expr/Cargo.toml index 13828db6102f..5b1b42153877 100644 --- a/datafusion/expr/Cargo.toml +++ b/datafusion/expr/Cargo.toml @@ -44,5 +44,5 @@ strum = { version = "0.25.0", features = ["derive"] } strum_macros = "0.25.0" [dev-dependencies] -ctor = "0.2.0" -env_logger = "0.10" +ctor = { workspace = true } +env_logger = { workspace = true } diff --git a/datafusion/optimizer/Cargo.toml b/datafusion/optimizer/Cargo.toml index a84fbd7172eb..797dd17a26b5 100644 --- a/datafusion/optimizer/Cargo.toml +++ b/datafusion/optimizer/Cargo.toml @@ -51,6 +51,6 @@ log = { workspace = true } regex-syntax = "0.8.0" [dev-dependencies] -ctor = "0.2.0" +ctor = { workspace = true } datafusion-sql = { path = "../sql", version = "32.0.0" } env_logger = "0.10.0" diff --git a/datafusion/physical-expr/Cargo.toml b/datafusion/physical-expr/Cargo.toml index 46e0a1f83518..4be625e384b9 100644 --- a/datafusion/physical-expr/Cargo.toml +++ b/datafusion/physical-expr/Cargo.toml @@ -70,7 +70,7 @@ uuid = { version = "^1.2", features = ["v4"] } [dev-dependencies] criterion = "0.5" rand = { workspace = true } -rstest = "0.18.0" +rstest = { workspace = true } [[bench]] harness = false diff --git a/datafusion/physical-plan/Cargo.toml b/datafusion/physical-plan/Cargo.toml index 0af7f1f3f0e2..016357ceaed4 100644 --- a/datafusion/physical-plan/Cargo.toml +++ b/datafusion/physical-plan/Cargo.toml @@ -58,6 +58,6 @@ tokio = { version = "1.28", features = ["sync", "fs", "parking_lot"] } uuid = { version = "^1.2", features = ["v4"] } [dev-dependencies] -rstest = "0.18.0" +rstest = { workspace = true } termtree = "0.4.1" tokio = { version = "1.28", features = ["macros", "rt", "rt-multi-thread", "sync", "fs", "parking_lot"] } diff --git a/datafusion/proto/Cargo.toml b/datafusion/proto/Cargo.toml index f9c2fcfdb0c3..72a4df66ebd7 100644 --- a/datafusion/proto/Cargo.toml +++ b/datafusion/proto/Cargo.toml @@ -50,8 +50,8 @@ object_store = { version = "0.7.0" } pbjson = { version = "0.5", optional = true } prost = "0.12.0" serde = { version = "1.0", optional = true } -serde_json = { version = "1.0", optional = true } +serde_json = { workspace = true, optional = true } [dev-dependencies] -doc-comment = "0.3" +doc-comment = { workspace = true } tokio = "1.18" diff --git a/datafusion/sql/Cargo.toml b/datafusion/sql/Cargo.toml index 355a90df2009..b91a2ac1fbd7 100644 --- a/datafusion/sql/Cargo.toml +++ b/datafusion/sql/Cargo.toml @@ -45,7 +45,7 @@ log = { workspace = true } sqlparser = { workspace = true } [dev-dependencies] -ctor = "0.2.0" -env_logger = "0.10" +ctor = { workspace = true } +env_logger = { workspace = true } paste = "^1.0" rstest = "0.18" diff --git a/datafusion/sqllogictest/Cargo.toml b/datafusion/sqllogictest/Cargo.toml index 774b4f4e9a26..07debf179529 100644 --- a/datafusion/sqllogictest/Cargo.toml +++ b/datafusion/sqllogictest/Cargo.toml @@ -33,13 +33,13 @@ path = "src/lib.rs" [dependencies] arrow = { workspace = true } async-trait = { workspace = true } -bigdecimal = "0.4.1" +bigdecimal = { workspace = true } bytes = { version = "1.4.0", optional = true } chrono = { workspace = true, optional = true } datafusion = { path = "../core", version = "32.0.0" } datafusion-common = { workspace = true } futures = { version = "0.3.28" } -half = "2.2.1" +half = { workspace = true } itertools = { workspace = true } log = { workspace = true } object_store = { workspace = true } @@ -49,7 +49,7 @@ rust_decimal = { version = "1.27.0" } sqllogictest = "0.17.0" sqlparser = { workspace = true } tempfile = { workspace = true } -thiserror = "1.0.44" +thiserror = { workspace = true } tokio = { version = "1.0" } tokio-postgres = { version = "0.7.7", optional = true } @@ -58,7 +58,7 @@ avro = ["datafusion/avro"] postgres = ["bytes", "chrono", "tokio-postgres", "postgres-types", "postgres-protocol"] [dev-dependencies] -env_logger = "0.10" +env_logger = { workspace = true } num_cpus = { workspace = true } [[test]] From 757c3cec33e0245f0ad6006b1ca16735c7019477 Mon Sep 17 00:00:00 2001 From: Linwei Zhang Date: Mon, 30 Oct 2023 23:37:39 +0800 Subject: [PATCH 5/5] Fix cli --- datafusion-cli/Cargo.toml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/datafusion-cli/Cargo.toml b/datafusion-cli/Cargo.toml index 1cefcb4e65f5..7dd9cb8bcb37 100644 --- a/datafusion-cli/Cargo.toml +++ b/datafusion-cli/Cargo.toml @@ -30,7 +30,7 @@ readme = "README.md" [dependencies] arrow = "48.0.0" -async-trait = { workspace = true } +async-trait = "0.1.41" aws-config = "0.55" aws-credential-types = "0.55" clap = { version = "3", features = ["derive", "cargo"] } @@ -43,7 +43,7 @@ parking_lot = { version = "0.12" } regex = "1.8" rustyline = "11.0" tokio = { version = "1.24", features = ["macros", "rt", "rt-multi-thread", "sync", "parking_lot"] } -url = { workspace = true } +url = "2.2" [dev-dependencies] assert_cmd = "2.0"