[workspace] resolver = "2" package.version = "3.0.0" package.edition = "2021" package.license = "Apache-2.0" members = [ "crates/auth/*", "crates/compatibility", "crates/custom-connector", "crates/engine", "crates/execute", "crates/frontends/*", "crates/graphql/*", "crates/graphql-ws", "crates/jsonapi", "crates/lang-graphql", "crates/metadata-resolve", "crates/metadata-schema-generator", "crates/open-dds", "crates/plan", "crates/plan-types", "crates/plugins/*", "crates/query-usage-analytics", "crates/sql", "crates/utils/*", ] # generally following guidance from https://nnethercote.github.io/perf-book/build-configuration.html [profile.release] codegen-units = 1 # reduce parallelisation to increase optimisations [workspace.lints.clippy] all = { level = "warn", priority = -1 } pedantic = { level = "warn", priority = -1 } # ban printing to stdout and stderr print_stdout = "warn" print_stderr = "warn" # unstable warnings; we might need to suppress them redundant_clone = "warn" # disable this warning until # https://github.com/rust-lang/rust-clippy/issues/12643 is fixed manual_unwrap_or_default = "allow" # disable certain pedantic warnings doc_markdown = "allow" implicit_hasher = "allow" missing_errors_doc = "allow" missing_panics_doc = "allow" module_name_repetitions = "allow" must_use_candidate = "allow" return_self_not_must_use = "allow" struct_field_names = "allow" wildcard_imports = "allow" trivially_copy_pass_by_ref = "allow" # disable these for now, but we should probably fix them result_large_err = "allow" similar_names = "allow" too_many_arguments = "allow" too_many_lines = "allow" unreadable_literal = "allow" used_underscore_binding = "allow" [workspace.lints.rustdoc] private_intra_doc_links = "allow" [workspace.dependencies] ndc-models = { git = "https://github.com/hasura/ndc-spec.git", rev = "54baf298b5d6a69f12a701e9f0e3ce8f188a194d" } # When you update this tag, also update the schema references in crates/open-dds/src/data_connector.rs ndc-models-v01 = { package = "ndc-models", git = "https://github.com/hasura/ndc-spec.git", tag = "v0.1.6" } anyhow = "1" apollo-parser = "0.7" async-graphql-parser = "7" async-recursion = "1" async-trait = "0.1" axum = "0.7" axum-core = "0.4" base64 = "0.22" bincode = "1" blake2 = "0.10.6" bson = "2" build-data = "0.2" bytes = "1" chrono = "0.4" clap = "4" convert_case = "0.6" cookie = "0.18" criterion = "0.5" darling = "0.20" datafusion = "41" derive_more = "0.99" diffy = "0.4" env_logger = "0.11" expect-test = "1" futures = "0.3" futures-util = "0.3" goldenfile = "1" graphql-parser = "0.4" http = "1" http-body-util = "0.1" human_bytes = "0.4" indexmap = "2" insta = "1" json_value_merge = "2" jsonapi_library = { package = "jsonapi", git = "https://github.com/hasura/jsonapi-rust.git", rev = "b908b340ddfc620d33b71f279b88a0233bd5ff5c" } jsonptr = "0.4" jsonwebkey = "0.3" jsonwebtoken = "8" lazy_static = "1.5.0" lexical-core = "0.8" mimalloc = "0.1" mockito = { version = "~1.4", default-features = false } # v1.5+ depends on http v1 nonempty = "0.10" openssl = "0.10" opentelemetry = "0.24" opentelemetry-contrib = "0.16" opentelemetry-http = "0.13" opentelemetry-otlp = "0.17" opentelemetry-semantic-conventions = "0.16" opentelemetry-stdout = { version = "0.5", default-features = false } opentelemetry-zipkin = "0.22" opentelemetry_sdk = "0.24" postcard = "1" pretty_assertions = "1" proc-macro2 = "1" quote = "1" rand = "0.8" ref-cast = "1" regex = "1" reqwest = "0.12" rmp-serde = "1" semver = "1.0" schemars = "0.8" serde = { version = "1", features = ["rc"] } serde_json = "1" serde_path_to_error = "0.1" serde_with = { version = "3", features = ["indexmap_2"] } sha2 = "0.10" smol_str = "0.1" strum = "0.26" strum_macros = "0.26" syn = "2" thiserror = "1" tokio = "1" tokio-test = "0.4" tokio-tungstenite = "0.24.0" tower = "0.5" tower-http = "0.5" tracing = "0.1" tracing-subscriber = "0.3" transitive = "0.5" url = "2" uuid = "1"