blob: 692b93795e65edfeec6f7d7f31b52ad447e6d41d [file] [log] [blame]
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
[workspace]
members = [
"native-engine/datafusion-ext-commons",
"native-engine/datafusion-ext-exprs",
"native-engine/datafusion-ext-functions",
"native-engine/datafusion-ext-plans",
"native-engine/auron",
"native-engine/auron-jni-bridge",
"native-engine/auron-planner",
"native-engine/auron-memmgr",
]
[workspace.lints.rust]
# Pending processing (temporarily allow)
unused_variables = "allow"
dead_code = "allow"
unused_imports = "allow"
unused_must_use = "allow"
deprecated = "allow"
[workspace.lints.clippy]
unwrap_used = "deny"
panic = "deny"
# Pending processing (temporarily allow)
# Unwrap/Error Handling
unnecessary_unwrap = "allow"
needless_question_mark = "allow"
unnecessary_literal_unwrap = "allow"
bind_instead_of_map = "allow"
expect_fun_call = "allow"
io_other_error = "allow"
unnecessary_fallible_conversions = "allow"
# Unsafe/Memory
missing_transmute_annotations = "allow"
declare_interior_mutable_const = "allow"
borrow_interior_mutable_const = "allow"
uninit_vec = "allow"
macro_metavars_in_unsafe = "allow"
ptr_arg = "allow"
borrowed_box = "allow"
# Iterator/Collection
manual_flatten = "allow"
iter_cloned_collect = "allow"
into_iter_on_ref = "allow"
box_collection = "allow"
useless_vec = "allow"
len_without_is_empty = "allow"
len_zero = "allow"
mem_replace_option_with_none = "allow"
get_first = "allow"
# Loop/Control Flow
needless_range_loop = "allow"
while_let_loop = "allow"
while_let_on_iterator = "allow"
explicit_counter_loop = "allow"
# Format/String
useless_format = "allow"
uninlined_format_args = "allow"
to_string_in_format_args = "allow"
# Code Style/Redundancy (Part 1)
needless_borrow = "allow"
needless_return = "allow"
redundant_closure = "allow"
redundant_locals = "allow"
redundant_pattern_matching = "allow"
# Code Style/Redundancy (Part 2)
unnecessary_cast = "allow"
unnecessary_to_owned = "allow"
useless_asref = "allow"
clone_on_copy = "allow"
unit_arg = "allow"
manual_repeat_n = "allow"
manual_div_ceil = "allow"
# Condition/Logic
collapsible_if = "allow"
collapsible_else_if = "allow"
if_same_then_else = "allow"
match_like_matches_macro = "allow"
explicit_auto_deref = "allow"
bool_assert_comparison = "allow"
# Naming/Structure/Remaining
upper_case_acronyms = "allow"
module_inception = "allow"
too_many_arguments = "allow"
should_implement_trait = "allow"
extra_unused_lifetimes = "allow"
crate_in_macro_def = "allow"
int_plus_one = "allow"
derived_hash_with_manual_eq = "allow"
approx_constant = "allow"
op_ref = "allow"
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
strip = false
[profile.pre]
inherits = "release"
#incremental = true
opt-level = 1
lto = false
codegen-units = 16
strip = false
[profile.dev]
debug = true
overflow-checks = false
[workspace.dependencies]
auron = { path = "./native-engine/auron" }
auron-jni-bridge = { path = "./native-engine/auron-jni-bridge" }
auron-planner = { path = "./native-engine/auron-planner" }
auron-memmgr = { path = "./native-engine/auron-memmgr" }
datafusion-ext-commons = { path = "./native-engine/datafusion-ext-commons" }
datafusion-ext-exprs = { path = "./native-engine/datafusion-ext-exprs" }
datafusion-ext-functions = { path = "./native-engine/datafusion-ext-functions" }
datafusion-ext-plans = { path = "./native-engine/datafusion-ext-plans" }
# datafusion
datafusion = { version = "49.0.0" }
datafusion-datasource = { version = "49.0.0" }
datafusion-datasource-parquet = { version = "49.0.0" }
datafusion-spark = { version = "49.0.0" }
# orc
orc-rust = { version = "0.7.0" }
# arrow
arrow = { version = "55.2.0", features = ["ffi"]}
arrow-schema = { version = "55.2.0", features = ["serde"] }
# parquet
parquet = { version = "55.2.0" }
# json
serde_json = { version = "1.0.96" }
# other dependencies
async-trait = "0.1.89"
base64 = "0.22.1"
bigdecimal = "0.4.10"
bitvec = "1.0.1"
byteorder = "1.5.0"
bytes = "1.11.0"
bytesize = "2.3.1"
chrono = "0.4.43"
count-write = "0.1.0"
foldhash = "0.2.0"
futures = "0.3"
futures-util = "0.3.31"
hashbrown = "0.14.5"
itertools = "0.14.0"
jni = "0.20.0"
log = "0.4.29"
lz4_flex = "0.12.0"
num = "0.4.2"
object_store = "0.12.4"
once_cell = "1.21.3"
panic-message = "0.3.0"
parking_lot = "0.12.5"
paste = "1.0.15"
procfs = "0.18.0"
prost = "0.14.3"
rand = "0.9.2"
smallvec = "2.0.0-alpha.11"
sonic-rs = "0.5.6"
tempfile = "3"
tokio = "1.49.0"
tonic-build = "0.13.1"
transpose = "0.2.3"
unchecked-index = "0.2.2"
zstd = "0.13.3"
[patch.crates-io]
# datafusion: branch=v49.0.0-blaze
datafusion = { git = "https://github.com/auron-project/datafusion.git", rev = "9034aeffb"}
datafusion-common = { git = "https://github.com/auron-project/datafusion.git", rev = "9034aeffb"}
datafusion-expr = { git = "https://github.com/auron-project/datafusion.git", rev = "9034aeffb"}
datafusion-datasource = { git = "https://github.com/auron-project/datafusion.git", rev = "9034aeffb"}
datafusion-datasource-parquet = { git = "https://github.com/auron-project/datafusion.git", rev = "9034aeffb"}
datafusion-execution = { git = "https://github.com/auron-project/datafusion.git", rev = "9034aeffb"}
datafusion-optimizer = { git = "https://github.com/auron-project/datafusion.git", rev = "9034aeffb"}
datafusion-physical-expr = { git = "https://github.com/auron-project/datafusion.git", rev = "9034aeffb"}
datafusion-spark = { git = "https://github.com/auron-project/datafusion.git", rev = "9034aeffb"}
orc-rust = { git = "https://github.com/auron-project/datafusion-orc.git", rev = "17f7012"}
# arrow: branch=v55.2.0-blaze
arrow = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-arith = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-array = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-buffer = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-cast = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-data = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-ipc = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-ord = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-row = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-schema = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-select = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
arrow-string = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
parquet = { git = "https://github.com/auron-project/arrow-rs.git", rev = "5de02520c"}
# serde_json: branch=v1.0.96-blaze
serde_json = { git = "https://github.com/auron-project/json", rev = "95fa6cb" }