[workspace] members = [ "src/api", "src/auth", "src/cache", "src/catalog", "src/cli", "src/client", "src/cmd", "src/common/base", "src/common/catalog", "src/common/config", "src/common/datasource", "src/common/decimal", "src/common/error", "src/common/frontend", "src/common/function", "src/common/greptimedb-telemetry", "src/common/grpc", "src/common/grpc-expr", "src/common/macro", "src/common/mem-prof", "src/common/meta", "src/common/options", "src/common/plugins", "src/common/pprof", "src/common/procedure", "src/common/procedure-test", "src/common/query", "src/common/recordbatch", "src/common/runtime", "src/common/session", "src/common/stat", "src/common/substrait", "src/common/telemetry", "src/common/test-util", "src/common/time", "src/common/version", "src/common/wal", "src/common/workload", "src/datanode", "src/datatypes", "src/file-engine", "src/flow", "src/frontend", "src/index", "src/log-query", "src/log-store", "src/meta-client", "src/meta-srv", "src/metric-engine", "src/mito-codec", "src/mito2", "src/object-store", "src/operator", "src/partition", "src/pipeline", "src/plugins", "src/promql", "src/puffin", "src/query", "src/servers", "src/session", "src/sql", "src/store-api", "src/table", "tests-fuzz", "tests-integration", "tests/runner", ] resolver = "2" [workspace.package] version = "0.15.4" edition = "2021" license = "Apache-2.0" [workspace.lints] clippy.dbg_macro = "warn" clippy.implicit_clone = "warn" clippy.result_large_err = "allow" clippy.large_enum_variant = "allow" clippy.doc_overindented_list_items = "allow" clippy.uninlined_format_args = "allow" rust.unknown_lints = "deny" rust.unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] } [workspace.dependencies] # DO_NOT_REMOVE_THIS: BEGIN_OF_EXTERNAL_DEPENDENCIES # We turn off default-features for some dependencies here so the workspaces which inherit them can # selectively turn them on if needed, since we can override default-features = true (from false) # for the inherited dependency but cannot do the reverse (override from true to false). # # See for more detaiils: https://github.com/rust-lang/cargo/issues/11329 ahash = { version = "0.8", features = ["compile-time-rng"] } aquamarine = "0.6" arrow = { version = "54.2", features = ["prettyprint"] } arrow-array = { version = "54.2", default-features = false, features = ["chrono-tz"] } arrow-flight = "54.2" arrow-ipc = { version = "54.2", default-features = false, features = ["lz4", "zstd"] } arrow-schema = { version = "54.2", features = ["serde"] } async-stream = "0.3" async-trait = "0.1" # Remember to update axum-extra, axum-macros when updating axum axum = "0.8" axum-extra = "0.10" axum-macros = "0.5" backon = "1" base64 = "0.22" bigdecimal = "0.4.2" bitflags = "2.4.1" bytemuck = "1.12" bytes = { version = "1.7", features = ["serde"] } chrono = { version = "0.4", features = ["serde"] } chrono-tz = "0.10.1" clap = { version = "4.4", features = ["derive"] } config = "0.13.0" crossbeam-utils = "0.8" dashmap = "6.1" datafusion = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "12c0381babd52c681043957e9d6ee083a03f7646" } datafusion-common = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "12c0381babd52c681043957e9d6ee083a03f7646" } datafusion-expr = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "12c0381babd52c681043957e9d6ee083a03f7646" } datafusion-functions = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "12c0381babd52c681043957e9d6ee083a03f7646" } datafusion-optimizer = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "12c0381babd52c681043957e9d6ee083a03f7646" } datafusion-physical-expr = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "12c0381babd52c681043957e9d6ee083a03f7646" } datafusion-physical-plan = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "12c0381babd52c681043957e9d6ee083a03f7646" } datafusion-sql = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "12c0381babd52c681043957e9d6ee083a03f7646" } datafusion-substrait = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "12c0381babd52c681043957e9d6ee083a03f7646" } deadpool = "0.12" deadpool-postgres = "0.14" derive_builder = "0.20" dotenv = "0.15" etcd-client = "0.14" fst = "0.4.7" futures = "0.3" futures-util = "0.3" greptime-proto = { git = "https://github.com/GreptimeTeam/greptime-proto.git", rev = "a5d256ba4abb7393e0859ffbf7fca1e38f3433dc" } hex = "0.4" http = "1" humantime = "2.1" humantime-serde = "1.1" hyper = "1.1" hyper-util = "0.1" itertools = "0.14" jsonb = { git = "https://github.com/databendlabs/jsonb.git", rev = "8c8d2fc294a39f3ff08909d60f718639cfba3875", default-features = false } lazy_static = "1.4" local-ip-address = "0.6" loki-proto = { git = "https://github.com/GreptimeTeam/loki-proto.git", rev = "1434ecf23a2654025d86188fb5205e7a74b225d3" } meter-core = { git = "https://github.com/GreptimeTeam/greptime-meter.git", rev = "5618e779cf2bb4755b499c630fba4c35e91898cb" } mockall = "0.13" moka = "0.12" nalgebra = "0.33" nix = { version = "0.30.1", default-features = false, features = ["event", "fs", "process"] } notify = "8.0" num_cpus = "1.16" object_store_opendal = "0.50" once_cell = "1.18" opentelemetry-proto = { version = "0.27", features = [ "gen-tonic", "metrics", "trace", "with-serde", "logs", ] } parking_lot = "0.12" parquet = { version = "54.2", default-features = false, features = ["arrow", "async", "object_store"] } paste = "1.0" pin-project = "1.0" prometheus = { version = "0.13.3", features = ["process"] } promql-parser = { git = "https://github.com/GreptimeTeam/promql-parser.git", rev = "0410e8b459dda7cb222ce9596f8bf3971bd07bd2", features = [ "ser", ] } prost = { version = "0.13", features = ["no-recursion-limit"] } raft-engine = { version = "0.4.1", default-features = false } rand = "0.9" ratelimit = "0.10" regex = "1.8" regex-automata = "0.4" reqwest = { version = "0.12", default-features = false, features = [ "json", "rustls-tls-native-roots", "stream", "multipart", ] } rskafka = { git = "https://github.com/influxdata/rskafka.git", rev = "8dbd01ed809f5a791833a594e85b144e36e45820", features = [ "transport-tls", ] } rstest = "0.25" rstest_reuse = "0.7" rust_decimal = "1.33" rustc-hash = "2.0" # It is worth noting that we should try to avoid using aws-lc-rs until it can be compiled on various platforms. rustls = { version = "0.23.25", default-features = false } serde = { version = "1.0", features = ["derive"] } serde_json = { version = "1.0", features = ["float_roundtrip"] } serde_with = "3" shadow-rs = "1.1" simd-json = "0.15" similar-asserts = "1.6.0" smallvec = { version = "1", features = ["serde"] } snafu = "0.8" sqlparser = { git = "https://github.com/GreptimeTeam/sqlparser-rs.git", rev = "0cf6c04490d59435ee965edd2078e8855bd8471e", features = [ "visitor", "serde", ] } # branch = "v0.54.x" sqlx = { version = "0.8", features = [ "runtime-tokio-rustls", "mysql", "postgres", "chrono", ] } strum = { version = "0.27", features = ["derive"] } sysinfo = "0.33" tempfile = "3" tokio = { version = "1.40", features = ["full"] } tokio-postgres = "0.7" tokio-rustls = { version = "0.26.2", default-features = false } tokio-stream = "0.1" tokio-util = { version = "0.7", features = ["io-util", "compat"] } toml = "0.8.8" tonic = { version = "0.12", features = ["tls", "gzip", "zstd"] } tower = "0.5" tracing-appender = "0.2" tracing-subscriber = { version = "0.3", features = ["env-filter", "json", "fmt"] } typetag = "0.2" uuid = { version = "1.7", features = ["serde", "v4", "fast-rng"] } zstd = "0.13" # DO_NOT_REMOVE_THIS: END_OF_EXTERNAL_DEPENDENCIES ## workspaces members api = { path = "src/api" } auth = { path = "src/auth" } cache = { path = "src/cache" } catalog = { path = "src/catalog" } cli = { path = "src/cli" } client = { path = "src/client" } cmd = { path = "src/cmd", default-features = false } common-base = { path = "src/common/base" } common-catalog = { path = "src/common/catalog" } common-config = { path = "src/common/config" } common-datasource = { path = "src/common/datasource" } common-decimal = { path = "src/common/decimal" } common-error = { path = "src/common/error" } common-frontend = { path = "src/common/frontend" } common-function = { path = "src/common/function" } common-greptimedb-telemetry = { path = "src/common/greptimedb-telemetry" } common-grpc = { path = "src/common/grpc" } common-grpc-expr = { path = "src/common/grpc-expr" } common-macro = { path = "src/common/macro" } common-mem-prof = { path = "src/common/mem-prof" } common-meta = { path = "src/common/meta" } common-options = { path = "src/common/options" } common-plugins = { path = "src/common/plugins" } common-pprof = { path = "src/common/pprof" } common-procedure = { path = "src/common/procedure" } common-procedure-test = { path = "src/common/procedure-test" } common-query = { path = "src/common/query" } common-recordbatch = { path = "src/common/recordbatch" } common-runtime = { path = "src/common/runtime" } common-session = { path = "src/common/session" } common-telemetry = { path = "src/common/telemetry" } common-test-util = { path = "src/common/test-util" } common-time = { path = "src/common/time" } common-version = { path = "src/common/version" } common-wal = { path = "src/common/wal" } common-workload = { path = "src/common/workload" } datanode = { path = "src/datanode" } datatypes = { path = "src/datatypes" } file-engine = { path = "src/file-engine" } flow = { path = "src/flow" } frontend = { path = "src/frontend", default-features = false } index = { path = "src/index" } log-query = { path = "src/log-query" } log-store = { path = "src/log-store" } meta-client = { path = "src/meta-client" } meta-srv = { path = "src/meta-srv" } metric-engine = { path = "src/metric-engine" } mito-codec = { path = "src/mito-codec" } mito2 = { path = "src/mito2" } object-store = { path = "src/object-store" } operator = { path = "src/operator" } otel-arrow-rust = { git = "https://github.com/open-telemetry/otel-arrow", rev = "5d551412d2a12e689cde4d84c14ef29e36784e51", features = [ "server", ] } partition = { path = "src/partition" } pipeline = { path = "src/pipeline" } plugins = { path = "src/plugins" } promql = { path = "src/promql" } puffin = { path = "src/puffin" } query = { path = "src/query" } servers = { path = "src/servers" } session = { path = "src/session" } sql = { path = "src/sql" } stat = { path = "src/common/stat" } store-api = { path = "src/store-api" } substrait = { path = "src/common/substrait" } table = { path = "src/table" } [workspace.dependencies.meter-macros] git = "https://github.com/GreptimeTeam/greptime-meter.git" rev = "5618e779cf2bb4755b499c630fba4c35e91898cb" [profile.release] debug = 1 [profile.nightly] inherits = "release" strip = "debuginfo" lto = "thin" debug = false incremental = false [profile.ci] inherits = "dev" strip = true [profile.dev.package.sqlness-runner] debug = false strip = true [profile.dev.package.tests-fuzz] debug = false strip = true