[workspace] members = [ "src/api", "src/auth", "src/catalog", "src/cache", "src/client", "src/cmd", "src/common/base", "src/common/catalog", "src/common/config", "src/common/datasource", "src/common/error", "src/common/frontend", "src/common/function", "src/common/macro", "src/common/greptimedb-telemetry", "src/common/grpc", "src/common/grpc-expr", "src/common/mem-prof", "src/common/meta", "src/common/plugins", "src/common/pprof", "src/common/procedure", "src/common/procedure-test", "src/common/query", "src/common/recordbatch", "src/common/runtime", "src/common/substrait", "src/common/telemetry", "src/common/test-util", "src/common/time", "src/common/decimal", "src/common/version", "src/common/wal", "src/datanode", "src/datatypes", "src/file-engine", "src/flow", "src/frontend", "src/log-store", "src/meta-client", "src/meta-srv", "src/metric-engine", "src/mito2", "src/object-store", "src/operator", "src/partition", "src/pipeline", "src/plugins", "src/promql", "src/puffin", "src/query", "src/script", "src/servers", "src/session", "src/sql", "src/store-api", "src/table", "src/index", "tests-fuzz", "tests-integration", "tests/runner", ] resolver = "2" [workspace.package] version = "0.9.5" edition = "2021" license = "Apache-2.0" [workspace.lints] clippy.print_stdout = "warn" clippy.print_stderr = "warn" clippy.dbg_macro = "warn" clippy.implicit_clone = "warn" clippy.readonly_write_lock = "allow" rust.unknown_lints = "deny" # Remove this after https://github.com/PyO3/pyo3/issues/4094 rust.non_local_definitions = "allow" rust.unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] } [workspace.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.3" arrow = { version = "51.0.0", features = ["prettyprint"] } arrow-array = { version = "51.0.0", default-features = false, features = ["chrono-tz"] } arrow-flight = "51.0" arrow-ipc = { version = "51.0.0", default-features = false, features = ["lz4", "zstd"] } arrow-schema = { version = "51.0", features = ["serde"] } async-stream = "0.3" async-trait = "0.1" axum = { version = "0.6", features = ["headers"] } base64 = "0.21" bigdecimal = "0.4.2" bitflags = "2.4.1" bytemuck = "1.12" bytes = { version = "1.7", features = ["serde"] } chrono = { version = "0.4", features = ["serde"] } clap = { version = "4.4", features = ["derive"] } config = "0.13.0" crossbeam-utils = "0.8" dashmap = "5.4" datafusion = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "7823ef2f63663907edab46af0d51359900f608d6" } datafusion-common = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "7823ef2f63663907edab46af0d51359900f608d6" } datafusion-expr = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "7823ef2f63663907edab46af0d51359900f608d6" } datafusion-functions = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "7823ef2f63663907edab46af0d51359900f608d6" } datafusion-optimizer = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "7823ef2f63663907edab46af0d51359900f608d6" } datafusion-physical-expr = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "7823ef2f63663907edab46af0d51359900f608d6" } datafusion-physical-plan = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "7823ef2f63663907edab46af0d51359900f608d6" } datafusion-sql = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "7823ef2f63663907edab46af0d51359900f608d6" } datafusion-substrait = { git = "https://github.com/waynexia/arrow-datafusion.git", rev = "7823ef2f63663907edab46af0d51359900f608d6" } derive_builder = "0.12" dotenv = "0.15" etcd-client = { version = "0.13" } fst = "0.4.7" futures = "0.3" futures-util = "0.3" greptime-proto = { git = "https://github.com/GreptimeTeam/greptime-proto.git", rev = "b4d301184eb0d01fd4d1042fcc7c5dfb54f3c1e3" } humantime = "2.1" humantime-serde = "1.1" itertools = "0.10" jsonb = { git = "https://github.com/datafuselabs/jsonb.git", rev = "46ad50fc71cf75afbf98eec455f7892a6387c1fc", default-features = false } lazy_static = "1.4" meter-core = { git = "https://github.com/GreptimeTeam/greptime-meter.git", rev = "a10facb353b41460eeb98578868ebf19c2084fac" } mockall = "0.11.4" moka = "0.12" notify = "6.1" num_cpus = "1.16" once_cell = "1.18" opentelemetry-proto = { version = "0.5", features = [ "gen-tonic", "metrics", "trace", "with-serde", "logs", ] } parquet = { version = "51.0.0", default-features = false, features = ["arrow", "async", "object_store"] } paste = "1.0" pin-project = "1.0" prometheus = { version = "0.13.3", features = ["process"] } promql-parser = { version = "0.4.1" } prost = "0.12" raft-engine = { version = "0.4.1", default-features = false } rand = "0.8" regex = "1.8" regex-automata = { version = "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 = "75535b5ad9bae4a5dbb582c82e44dfd81ec10105", features = [ "transport-tls", ] } rstest = "0.21" rstest_reuse = "0.7" rust_decimal = "1.33" rustc-hash = "2.0" schemars = "0.8" serde = { version = "1.0", features = ["derive"] } serde_json = { version = "1.0", features = ["float_roundtrip"] } serde_with = "3" shadow-rs = "0.31" similar-asserts = "1.6.0" smallvec = { version = "1", features = ["serde"] } snafu = "0.8" sysinfo = "0.30" # on branch v0.44.x sqlparser = { git = "https://github.com/GreptimeTeam/sqlparser-rs.git", rev = "54a267ac89c09b11c0c88934690530807185d3e7", features = [ "visitor", ] } strum = { version = "0.25", features = ["derive"] } tempfile = "3" tokio = { version = "1.36", features = ["full"] } tokio-postgres = "0.7" tokio-stream = { version = "0.1" } tokio-util = { version = "0.7", features = ["io-util", "compat"] } toml = "0.8.8" tonic = { version = "0.11", features = ["tls", "gzip", "zstd"] } tower = { version = "0.4" } uuid = { version = "1.7", features = ["serde", "v4", "fast-rng"] } zstd = "0.13" ## workspaces members api = { path = "src/api" } auth = { path = "src/auth" } cache = { path = "src/cache" } catalog = { path = "src/catalog" } 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-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-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" } 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-store = { path = "src/log-store" } meta-client = { path = "src/meta-client" } meta-srv = { path = "src/meta-srv" } metric-engine = { path = "src/metric-engine" } mito2 = { path = "src/mito2" } object-store = { path = "src/object-store" } operator = { path = "src/operator" } partition = { path = "src/partition" } pipeline = { path = "src/pipeline" } plugins = { path = "src/plugins" } promql = { path = "src/promql" } puffin = { path = "src/puffin" } query = { path = "src/query" } script = { path = "src/script" } servers = { path = "src/servers" } session = { path = "src/session" } sql = { path = "src/sql" } store-api = { path = "src/store-api" } substrait = { path = "src/common/substrait" } table = { path = "src/table" } [patch.crates-io] # change all rustls dependencies to use our fork to default to `ring` to make it "just work" hyper-rustls = { git = "https://github.com/GreptimeTeam/hyper-rustls" } rustls = { git = "https://github.com/GreptimeTeam/rustls" } tokio-rustls = { git = "https://github.com/GreptimeTeam/tokio-rustls" } # This is commented, since we are not using aws-lc-sys, if we need to use it, we need to uncomment this line or use a release after this commit, or it wouldn't compile with gcc < 8.1 # see https://github.com/aws/aws-lc-rs/pull/526 # aws-lc-sys = { git ="https://github.com/aws/aws-lc-rs", rev = "556558441e3494af4b156ae95ebc07ebc2fd38aa" } [workspace.dependencies.meter-macros] git = "https://github.com/GreptimeTeam/greptime-meter.git" rev = "80eb97c24c88af4dd9a86f8bbaf50e741d4eb8cd" [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