graphql-engine/v3/Cargo.toml
Philip Lykke Carlsen 5f861736c4 Pass Configuration by reference, for clearer intent (#1010)
### What

Passing `Configuration` by reference signals intent (there is only ever
one configuration that is given at the toplevel which is never altered)
better than owning and copying values.

While in its current state it requires slightly more memory to pass a
reference to a `Configuration` rather than a value, this does not seem
like the thing to optimize for when it inhibits readability.

V3_GIT_ORIGIN_REV_ID: e5e05ad2e7ee41dfb49173ec9575de17552c63ae
2024-08-23 14:36:45 +00:00

143 lines
3.4 KiB
TOML

[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/ir",
"crates/lang-graphql",
"crates/metadata-resolve",
"crates/metadata-schema-generator",
"crates/open-dds",
"crates/plugins/*",
"crates/query-usage-analytics",
"crates/schema",
"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", tag = "v0.2.0-rc.0" } # 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.5" }
anyhow = "1"
apollo-parser = "0.7"
async-graphql-parser = "7"
async-recursion = "1"
async-trait = "0.1"
axum = "0.6"
base64 = "0.22"
bincode = "1"
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 = "0.2"
human_bytes = "0.4"
indexmap = "2"
insta = "1"
json_value_merge = "2"
jsonptr = "0.4"
jsonwebkey = "0.3"
jsonwebtoken = "8"
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.22"
opentelemetry-contrib = "0.14"
opentelemetry-http = "0.11"
opentelemetry-otlp = "0.15"
opentelemetry-semantic-conventions = "0.14"
opentelemetry-stdout = { version = "0.3", default-features = false }
opentelemetry-zipkin = "0.20"
opentelemetry_sdk = "0.22"
postcard = "1"
pretty_assertions = "1"
proc-macro2 = "1"
quote = "1"
rand = "0.8"
ref-cast = "1"
regex = "1"
reqwest = "0.11"
rmp-serde = "1"
semver = "1.0"
schemars = "0.8"
serde = "1"
serde_json = "1"
serde_path_to_error = "0.1"
serde_with = "3"
sha2 = "0.10"
smol_str = "0.1"
strum = "0.26"
strum_macros = "0.26"
syn = "2"
thiserror = "1"
tokio = "1"
tokio-test = "0.4"
tower = "0.4"
tower-http = "0.4"
tracing = "0.1"
tracing-subscriber = "0.3"
transitive = "0.5"
url = "2"