Constant WORKSPACE_MANIFEST
Source const WORKSPACE_MANIFEST: &'static str = "#cargo-features = [\"profile-rustflags\"]\n\n[workspace]\nresolver = \"2\"\nmembers = [\"src/*\"]\ndefault-members = [\"src/*\"]\n\n[workspace.package]\nauthors = [\n\t\"Timo K\u{f6}sters <timo@koesters.xyz>\",\n\t\"June Clementine Strawberry <june@girlboss.ceo>\",\n\t\"Jason Volk <jason@zemos.net>\",\n\t\"Conduit Contributors\",\n\t\"Conduwuit Contributors\",\n\t\"Tuwunel Contributors\",\n]\ncategories = [\"network-programming\"]\ndescription = \"High Performance Matrix Homeserver in Rust!\"\n# also update edition in rustfmt.toml\nedition = \"2024\"\nhomepage = \"https://tuwunel.chat\"\nkeywords = [\n\t\"chat\",\n\t\"matrix\",\n\t\"networking\",\n\t\"server\",\n\t\"uwu\",\n]\nlicense = \"Apache-2.0\"\nreadme = \"README.md\"\nrepository = \"https://github.com/matrix-construct/tuwunel\"\nrust-version = \"1.94.0\"\nversion = \"1.6.2\"\n\n[workspace.metadata.crane]\nname = \"tuwunel\"\n\n#\n# Dependencies\n#\n\n[workspace.dependencies.argon2]\nversion = \"0.5\"\ndefault-features = false\nfeatures = [\n\t\"alloc\",\n\t\"rand\",\n]\n\n[workspace.dependencies.arrayvec]\nversion = \"0.7\"\nfeatures = [\"serde\"]\n\n[workspace.dependencies.async-channel]\nversion = \"2.3.1\"\n\n[workspace.dependencies.async-trait]\nversion = \"0.1\"\n\n[workspace.dependencies.axum]\nversion = \"0.8\"\ndefault-features = false\nfeatures = [\n\t\"form\",\n\t\"http1\",\n\t\"http2\",\n\t\"json\",\n\t\"matched-path\",\n\t\"tokio\",\n\t\"tracing\",\n]\n\n[workspace.dependencies.axum-client-ip]\nversion = \"0.7\"\n\n[workspace.dependencies.axum-extra]\nversion = \"0.12\"\ndefault-features = false\nfeatures = [\n\t\"cookie\",\n\t\"typed-header\",\n\t\"tracing\",\n]\n\n[workspace.dependencies.axum-server]\nversion = \"0.8\"\ndefault-features = false\n\n[workspace.dependencies.axum-server-dual-protocol]\ngit = \"https://github.com/matrix-construct/axum-server-dual-protocol\"\nrev = \"76c782fa6f129f83ffdca59e903093e798d4a82f\"\ndefault-features = false\n\n[workspace.dependencies.base64]\nversion = \"0.22\"\ndefault-features = false\n\n[workspace.dependencies.blurhash]\nversion = \"0.2\"\ndefault-features = false\nfeatures = [\n\t\"fast-linear-to-srgb\",\n\t\"image\",\n]\n\n[workspace.dependencies.bytes]\nversion = \"1.11\"\n\n[workspace.dependencies.bytesize]\nversion = \"2.3\"\ndefault-features = false\nfeatures = [\"serde\", \"std\"]\n\n[workspace.dependencies.cargo_toml]\nversion = \"0.22\"\ndefault-features = false\nfeatures = [\"features\"]\n\n[workspace.dependencies.checked_ops]\nversion = \"0.1\"\n\n[workspace.dependencies.chrono]\nversion = \"0.4\"\nfeatures = [\"alloc\", \"std\"]\ndefault-features = false\n\n[workspace.dependencies.clap]\nversion = \"4.6\"\ndefault-features = false\nfeatures = [\n\t\"derive\",\n\t\"env\",\n\t\"error-context\",\n\t\"help\",\n\t\"std\",\n\t\"string\",\n\t\"usage\",\n]\n\n# Disabled until Axum updated. Remember to remove cfgs for tuwunel_disable.\n#[workspace.dependencies.console-subscriber]\n#version = \"0.4\"\n\n[workspace.dependencies.core_affinity]\nversion = \"0.8.3\"\n\n[workspace.dependencies.const-str]\nversion = \"1.1\"\nfeatures = [\"proc\"]\n\n[workspace.dependencies.criterion]\nversion = \"0.8\"\ndefault-features = false\nfeatures = [\n\t\"cargo_bench_support\",\n\t\"async_futures\",\n\t\"async_tokio\",\n]\n\n[workspace.dependencies.ctor]\nversion = \"0.10\"\n\n[workspace.dependencies.cyborgtime]\nversion = \"2.1\"\n\n[workspace.dependencies.derive_more]\nversion = \"2.1\"\ndefault-features = false\nfeatures = [\"debug\"]\n\n[workspace.dependencies.either]\nversion = \"1.15\"\ndefault-features = false\nfeatures = [\"serde\"]\n\n[workspace.dependencies.figment]\nversion = \"0.10\"\ndefault-features = false\nfeatures = [\"env\", \"toml\"]\n\n[workspace.dependencies.futures]\nversion = \"0.3\"\ndefault-features = false\nfeatures = [\n\t\"async-await\",\n\t\"std\",\n]\n\n[workspace.dependencies.hickory-resolver]\nversion = \"0.26\"\ndefault-features = false\nfeatures = [\n\t\"serde\",\n\t\"system-config\",\n\t\"tokio\",\n]\n\n[workspace.dependencies.hmac]\nversion = \"0.12\"\ndefault-features = false\n\n[workspace.dependencies.http]\nversion = \"1.4\"\n\n[workspace.dependencies.http-body-util]\nversion = \"0.1\"\n\n[workspace.dependencies.hyper]\nversion = \"1.8\"\ndefault-features = false\nfeatures = [\n\t\"server\",\n\t\"http1\",\n\t\"http2\",\n]\n\n[workspace.dependencies.image]\nversion = \"0.25\"\ndefault-features = false\nfeatures = [\n\t\"jpeg\",\n\t\"png\",\n\t\"gif\",\n\t\"webp\",\n]\n\n[workspace.dependencies.insta]\nversion = \"1.47\"\nfeatures = [\n\t\"json\",\n]\n\n[workspace.dependencies.ipaddress]\nversion = \"0.1\"\n\n[workspace.dependencies.itertools]\nversion = \"0.14\"\n\n[workspace.dependencies.jevmalloc]\ngit = \"https://github.com/matrix-construct/jevmalloc\"\nrev = \"93795449913f65ab533b7fa482333eef63fc3ae0\"\n\n[workspace.dependencies.jsonwebtoken]\nversion = \"10.3\"\ndefault-features = false\nfeatures = [\n\t\"aws_lc_rs\",\n\t\"ed25519-dalek\",\n\t\"hmac\",\n\t\"sha2\",\n\t\"use_pem\",\n]\n\n[workspace.dependencies.ldap3]\ngit = \"https://github.com/matrix-construct/ldap3\"\nrev = \"fdfbba2bf916b53e5f73cdb1a495ebb649978079\"\ndefault-features = false\nfeatures = [\"sync\", \"tls-rustls\"]\n\n[workspace.dependencies.libc]\nversion = \"0.2\"\n\n[workspace.dependencies.libloading]\nversion = \"0.9\"\n\n[workspace.dependencies.log]\nversion = \"0.4\"\ndefault-features = false\n\n[workspace.dependencies.loole]\nversion = \"0.4\"\n\n[workspace.dependencies.lru-cache]\nversion = \"0.1\"\n\n[workspace.dependencies.maplit]\nversion = \"1.0\"\n\n[workspace.dependencies.minicbor]\nversion = \"2.2\"\nfeatures = [\"std\"]\n\n[workspace.dependencies.minicbor-serde]\nversion = \"0.6\"\nfeatures = [\"std\"]\n\n[workspace.dependencies.nix]\nversion = \"0\"\ndefault-features = false\nfeatures = [\n\t\"resource\",\n\t\"socket\",\n\t\"user\",\n]\n\n[workspace.dependencies.num_cpus]\nversion = \"1\"\n\n[workspace.dependencies.num-traits]\nversion = \"0.2\"\n\n[workspace.dependencies.object_store]\nversion = \"0.13\"\ndefault-features = false\nfeatures = [\n\t\"aws\",\n\t\"fs\",\n\t\"tls-webpki-roots\",\n]\n\n[workspace.dependencies.opentelemetry]\nversion = \"0.31\"\n\n# Disabled until they move to opentelemetry 0.30\n#[workspace.dependencies.opentelemetry-jaeger]\n#version = \"0.22.0\"\n#features = [\"rt-tokio\"]\n\n[workspace.dependencies.opentelemetry_sdk]\nversion = \"0.31\"\nfeatures = [\"rt-tokio\"]\n\n[workspace.dependencies.proc-macro2]\nversion = \"1.0\"\n\n[workspace.dependencies.quote]\nversion = \"1.0\"\n\n[workspace.dependencies.rand]\nversion = \"0.10\"\n\n[workspace.dependencies.regex]\nversion = \"1.12\"\n\n[workspace.dependencies.reqwest]\nversion = \"0.13\"\ndefault-features = false\nfeatures = [\n\t\"charset\",\n\t\"http2\",\n\t\"json\",\n\t\"rustls\",\n\t\"socks\",\n]\n\n[workspace.dependencies.ring]\nversion = \"0.17\"\ndefault-features = false\n\n[workspace.dependencies.ruma]\ngit = \"https://github.com/matrix-construct/ruma\"\nrev = \"5c368f5f3bc96d3834058aa3758d2e09b0ae6079\"\nfeatures = [\n \"__compat\",\n \"appservice-api-c\",\n \"client-api\",\n \"client-api-s\",\n \"compat-upload-signatures\",\n \"federation-api\",\n \"identifiers-validation\",\n \"markdown\",\n \"push-gateway-api-c\",\n \"rand\",\n \"ring-compat\",\n \"unstable-msc2448\",\n \"unstable-msc2666\",\n \"unstable-msc2815\",\n \"unstable-msc2867\",\n \"unstable-msc2870\",\n \"unstable-msc3026\",\n \"unstable-msc3061\",\n \"unstable-msc3391\",\n \"unstable-msc3814\",\n \"unstable-msc3824\",\n \"unstable-msc3245\",\n \"unstable-msc3381\", # polls\n \"unstable-msc3489\", # beacon / live location\n \"unstable-msc3930\", # polls push rules\n \"unstable-msc4075\",\n \"unstable-msc4095\",\n \"unstable-msc4121\",\n \"unstable-msc4125\",\n \"unstable-msc4133\",\n \"unstable-msc4143\",\n \"unstable-msc4186\",\n \"unstable-msc4195\",\n \"unstable-msc4203\", # sending to-device events to appservices\n \"unstable-msc4310\",\n \"unstable-msc4311\",\n \"unstable-msc4383\",\n \"unstable-msc4466\",\n \"unstable-extensible-events\",\n]\n\n[workspace.dependencies.rustls]\nversion = \"0.23\"\ndefault-features = false\nfeatures = [\"aws_lc_rs\", \"logging\", \"tls12\", \"prefer-post-quantum\"]\n\n[workspace.dependencies.rustyline-async]\nversion = \"0.4.6\"\ndefault-features = false\n\n[workspace.dependencies.rust-rocksdb]\ngit = \"https://github.com/matrix-construct/rust-rocksdb\"\nrev = \"c11395350bc1f2090a0152f2d15c8c5847821eba\"\ndefault-features = false\nfeatures = [\n\t\"bzip2\",\n\t\"lto\",\n\t\"lz4\",\n\t\"multi-threaded-cf\",\n\t\"serde1\",\n\t\"zstd\",\n\t\"zstd-static-linking-only\",\n]\n\n[workspace.dependencies.sanitize-filename]\nversion = \"0.6\"\n\n[workspace.dependencies.sd-notify]\nversion = \"0.4\"\ndefault-features = false\n\n[workspace.dependencies.sentry]\nversion = \"0.47\"\ndefault-features = false\nfeatures = [\n \"backtrace\",\n \"contexts\",\n \"debug-images\",\n \"panic\",\n \"rustls\",\n \"tower\",\n \"tower-http\",\n \"tracing\",\n \"reqwest\",\n \"log\",\n]\n\n[workspace.dependencies.sentry-tower]\nversion = \"0.47\"\n\n[workspace.dependencies.sentry-tracing]\nversion = \"0.47\"\n\n[workspace.dependencies.serde]\nversion = \"1.0\"\ndefault-features = false\nfeatures = [\"rc\"]\n\n[workspace.dependencies.serde_core]\nversion = \"1.0\"\ndefault-features = false\n\n[workspace.dependencies.serde_html_form]\nversion = \"0.4\"\n\n[workspace.dependencies.serde_json]\nversion = \"1.0\"\ndefault-features = false\nfeatures = [\"raw_value\"]\n\n[workspace.dependencies.serde_regex]\nversion = \"1.1\"\n\n[workspace.dependencies.serde_yaml]\nversion = \"0.9\"\n\n[workspace.dependencies.sha1]\nversion = \"0.10\"\ndefault-features = false\n\n[workspace.dependencies.sha2]\nversion = \"0.10\"\ndefault-features = false\n\n[workspace.dependencies.similar]\nversion = \"3.1\"\n\n[workspace.dependencies.smallstr]\nversion = \"0.3\"\nfeatures = [\n\t\"ffi\",\n\t\"serde\",\n\t\"std\",\n\t\"union\",\n]\n\n[workspace.dependencies.smallvec]\nversion = \"1.15\"\nfeatures = [\n\t\"const_generics\",\n\t\"const_new\",\n\t\"serde\",\n\t\"union\",\n\t\"write\",\n]\n\n[workspace.dependencies.syn]\nversion = \"2.0\"\ndefault-features = false\nfeatures = [\n\t\"extra-traits\",\n\t\"full\",\n\t\"parsing\",\n\t\"proc-macro\",\n\t\"printing\",\n]\n\n[workspace.dependencies.termimad]\nversion = \"0.34\"\ndefault-features = false\n\n[workspace.dependencies.thiserror]\nversion = \"2.0\"\ndefault-features = false\n\n[workspace.dependencies.tokio]\nversion = \"1.52\"\ndefault-features = false\nfeatures = [\n\t\"fs\",\n\t\"net\",\n\t\"macros\",\n\t\"sync\",\n\t\"signal\",\n\t\"time\",\n\t\"rt-multi-thread\",\n\t\"io-util\",\n\t\"tracing\",\n]\n\n[workspace.dependencies.tokio-metrics]\nversion = \"0.5\"\n\n[workspace.dependencies.toml]\nversion = \"1.0\"\ndefault-features = false\nfeatures = [\"parse\", \"serde\"]\n\n[workspace.dependencies.tower]\nversion = \"0.5\"\ndefault-features = false\nfeatures = [\"util\"]\n\n[workspace.dependencies.tower-http]\nversion = \"0.6\"\ndefault-features = false\nfeatures = [\n \"add-extension\",\n \"catch-panic\",\n \"cors\",\n \"sensitive-headers\",\n \"set-header\",\n \"timeout\",\n \"trace\",\n \"util\",\n]\n\n[workspace.dependencies.tracing]\nversion = \"=0.1.43\"\ndefault-features = false\n\n[workspace.dependencies.tracing-core]\nversion = \"0.1\"\ndefault-features = false\n\n[workspace.dependencies.tracing-flame]\nversion = \"0.2\"\n\n[workspace.dependencies.tracing-opentelemetry]\nversion = \"0.32\"\n\n[workspace.dependencies.tracing-subscriber]\nversion = \"0.3\"\ndefault-features = false\nfeatures = [\n\t\"ansi\",\n\t\"env-filter\",\n\t\"fmt\",\n\t\"tracing\",\n\t\"tracing-log\",\n]\n\n[workspace.dependencies.url]\nversion = \"2.5\"\ndefault-features = false\nfeatures = [\"serde\"]\n\n[workspace.dependencies.webpage]\nversion = \"2.0\"\ndefault-features = false\n\n[workspace.dependencies.webpki-root-certs]\nversion = \"1.0\"\n\n#\n# Patches\n#\n\n# adds a tab completion callback:\n# https://github.com/girlbossceo/rustyline-async/commit/de26100b0db03e419a3d8e1dd26895d170d1fe50\n# adds event for CTRL+\\:\n# https://github.com/girlbossceo/rustyline-async/commit/67d8c49aeac03a5ef4e818f663eaa94dd7bf339b\n[patch.crates-io.rustyline-async]\ngit = \"https://github.com/matrix-construct/rustyline-async\"\nrev = \"ba743cae940659e95d7b8604bbd6fdd755171c8c\"\n\n# adds LIFO queue scheduling; this should be updated with PR progress.\n[patch.crates-io.event-listener]\ngit = \"https://github.com/matrix-construct/event-listener\"\nrev = \"fe4aebeeaae435af60087ddd56b573a2e0be671d\"\n[patch.crates-io.async-channel]\ngit = \"https://github.com/matrix-construct/async-channel\"\nrev = \"92e5e74063bf2a3b10414bcc8a0d68b235644280\"\n\n# adds affinity masks for selecting more than one core at a time\n[patch.crates-io.core_affinity]\ngit = \"https://github.com/matrix-construct/core_affinity_rs\"\nrev = \"ff148c2985cbaff3e6e953d45cda4d7696f38d75\"\n\n# reverts hyperium#148 conflicting with our delicate federation resolver hooks\n[patch.crates-io.hyper-util]\ngit = \"https://github.com/matrix-construct/hyper-util\"\nrev = \"a3f59c4e51af19570a9f92839ecfe0ad6482e9e5\"\n\n# allows no-aaaa option in resolv.conf\n# bumps rust edition and toolchain to 1.86.0 and 2024\n# use sat_add on line number errors\n[patch.crates-io.resolv-conf]\ngit = \"https://github.com/matrix-construct/resolv-conf\"\nrev = \"200e958941d522a70c5877e3d846f55b5586c68d\"\n\n#\n# Our crates\n#\n\n[workspace.dependencies.tuwunel-router]\npackage = \"tuwunel_router\"\npath = \"src/router\"\ndefault-features = false\n\n[workspace.dependencies.tuwunel-admin]\npackage = \"tuwunel_admin\"\npath = \"src/admin\"\ndefault-features = false\n\n[workspace.dependencies.tuwunel-api]\npackage = \"tuwunel_api\"\npath = \"src/api\"\ndefault-features = false\n\n[workspace.dependencies.tuwunel-service]\npackage = \"tuwunel_service\"\npath = \"src/service\"\ndefault-features = false\n\n[workspace.dependencies.tuwunel-database]\npackage = \"tuwunel_database\"\npath = \"src/database\"\ndefault-features = false\n\n[workspace.dependencies.tuwunel-core]\npackage = \"tuwunel_core\"\npath = \"src/core\"\ndefault-features = false\n\n[workspace.dependencies.tuwunel-macros]\npackage = \"tuwunel_macros\"\npath = \"src/macros\"\ndefault-features = false\n\n###############################################################################\n#\n# Release profiles\n#\n\n[profile.release]\nstrip = \"symbols\"\nlto = \"thin\"\n\n# release profile with debug symbols\n[profile.release-debuginfo]\ninherits = \"release\"\ndebug = \"full\"\nstrip = \"none\"\n\n[profile.release-debuginfo.package.\'*\']\ndebug = \"limited\"\n\n# do not use without profile-rustflags enabled. uncomment ALL the sections for\n# profile.release-native\n[profile.release-native]\ninherits = \"release\"\nlto = \"fat\"\n#rustflags = [\n#\t\'-Ctarget-cpu=native\',\n#\t\'-Ztune-cpu=native\',\n#\t\'-Ctarget-feature=+crt-static\',\n#\t\'-Crelocation-model=static\',\n#\t\'-Ztls-model=local-exec\',\n#\t\'-Zinline-mir=true\',\n#\t\'-Zmir-opt-level=3\',\n#\t\'-Clink-arg=-Wl,--gc-sections\',\n#\t\'-Ztime-passes\',\n#\t\'-Ztime-llvm-passes\',\n#]\n\n[profile.release-native.build-override]\ninherits = \"release-native\"\nopt-level = 0\ncodegen-units = 32\n#rustflags = [\n#\t\'-Crelocation-model=pic\',\n#\t\'-Ctarget-feature=-crt-static\',\n#\t\'-Clink-arg=-Wl,--no-gc-sections\',\n#]\n\n[profile.release-native.package.tuwunel_macros]\ninherits = \"release-native.build-override\"\n#rustflags = [\n#\t\'-Crelocation-model=pic\',\n#\t\'-Ctarget-feature=-crt-static\',\n#]\n\n[profile.bench]\nstrip = \"none\"\n#rustflags = [\n#\t\"-Cremark=all\",\n#\t\'-Ztime-passes\',\n#\t\'-Ztime-llvm-passes\',\n#]\n\n###############################################################################\n#\n# Developer profile\n#\n\n# To enable hot-reloading:\n# 1. Uncomment all of the rustflags here.\n# 2. Uncomment crate-type=dylib in src/*/Cargo.toml\n#\n# opt-level, mir-opt-level, validate-mir are not known to interfere with reloading\n# and can be raised if build times are tolerable.\n\n[profile.dev]\ndebug = 0\n#rustflags = [\n#\t\'--cfg\', \'tuwunel_mods\',\n#\t\'-Ztime-passes\',\n#\t\'-Zmir-opt-level=0\',\n#\t\'-Zvalidate-mir=false\',\n#\t\'-Ztls-model=global-dynamic\',\n#\t\'-Cprefer-dynamic=true\',\n#\t\'-Zstaticlib-prefer-dynamic=true\',\n#\t\'-Zstaticlib-allow-rdylib-deps=true\',\n#\t\'-Zpacked-bundled-libs=false\',\n#\t\'-Zplt=true\',\n#\t\'-Crpath=true\',\n#\t\'-Clink-arg=-Wl,--as-needed\',\n#\t\'-Clink-arg=-Wl,--allow-shlib-undefined\',\n#\t\'-Clink-arg=-Wl,-z,keep-text-section-prefix\',\n#\t\'-Clink-arg=-Wl,-z,lazy\',\n#]\n\n[profile.dev.package.tuwunel_core]\nincremental = false\n#rustflags = [\n#\t\'--cfg\', \'tuwunel_mods\',\n#\t\'-Ztime-passes\',\n#\t\'-Zmir-opt-level=0\',\n#\t\'-Ztls-model=initial-exec\',\n#\t\'-Cprefer-dynamic=true\',\n#\t\'-Zstaticlib-prefer-dynamic=true\',\n#\t\'-Zstaticlib-allow-rdylib-deps=true\',\n#\t\'-Zpacked-bundled-libs=false\',\n#\t\'-Zplt=true\',\n#\t\'-Clink-arg=-Wl,--as-needed\',\n#\t\'-Clink-arg=-Wl,--allow-shlib-undefined\',\n#\t\'-Clink-arg=-Wl,-z,lazy\',\n#\t\'-Clink-arg=-Wl,-z,unique\',\n#\t\'-Clink-arg=-Wl,-z,nodlopen\',\n#\t\'-Clink-arg=-Wl,-z,nodelete\',\n#]\n\n[profile.dev.package.tuwunel]\n#rustflags = [\n#\t\'--cfg\', \'tuwunel_mods\',\n#\t\'-Ztime-passes\',\n#\t\'-Zmir-opt-level=0\',\n#\t\'-Zvalidate-mir=false\',\n#\t\'-Ztls-model=global-dynamic\',\n#\t\'-Cprefer-dynamic=true\',\n#\t\'-Zexport-executable-symbols=true\',\n#\t\'-Zplt=true\',\n#\t\'-Crpath=true\',\n#\t\'-Clink-arg=-Wl,--as-needed\',\n#\t\'-Clink-arg=-Wl,--allow-shlib-undefined\',\n#\t\'-Clink-arg=-Wl,--export-dynamic\',\n#\t\'-Clink-arg=-Wl,-z,lazy\',\n#]\n\n[profile.dev.package.\'*\']\ndebug = 0\nstrip = \"symbols\"\nopt-level = \'z\'\nincremental = false\n#rustflags = [\n#\t\'--cfg\', \'tuwunel_mods\',\n#\t\'-Ztls-model=global-dynamic\',\n#\t\'-Cprefer-dynamic=true\',\n#\t\'-Zstaticlib-prefer-dynamic=true\',\n#\t\'-Zstaticlib-allow-rdylib-deps=true\',\n#\t\'-Zpacked-bundled-libs=true\',\n#\t\'-Zplt=true\',\n#\t\'-Clink-arg=-Wl,--as-needed\',\n#\t\'-Clink-arg=-Wl,-z,lazy\',\n#\t\'-Clink-arg=-Wl,-z,nodelete\',\n#]\n\n# same as dev but slower.\n[profile.dbg]\ninherits = \"dev\"\ndebug = \"full\"\nincremental = false\n\n[profile.dbg.package.\'*\']\ndebug = \"limited\"\ncodegen-units = 1\nopt-level = \'z\'\n\n# primarily used for CI\n[profile.test]\ndebug = \"limited\"\nincremental = false\n\n[profile.test.package.\'*\']\ndebug = 0\nstrip = \"symbols\"\nopt-level = \'z\'\n\n###############################################################################\n#\n# Linting\n#\n\n[workspace.lints.rust]\nabsolute-paths-not-starting-with-crate = \"warn\"\n#box-pointers = \"warn\"\ndeprecated-in-future = \"warn\"\nelided-lifetimes-in-paths = \"warn\"\nexplicit-outlives-requirements = \"warn\"\nffi-unwind-calls = \"warn\"\nkeyword-idents = \"warn\"\nmacro-extended-temporary-scopes = \"warn\"\nmacro-use-extern-crate = \"warn\"\nmeta-variable-misuse = \"warn\"\nmissing-abi = \"warn\"\n#missing-copy-implementations = \"warn\" # TODO\n#missing-debug-implementations = \"warn\" # TODO\nnon-ascii-idents = \"warn\"\nrust-2021-incompatible-closure-captures = \"warn\"\nrust-2021-incompatible-or-patterns = \"warn\"\nrust-2021-prefixes-incompatible-syntax = \"warn\"\nrust-2021-prelude-collisions = \"warn\"\nsemicolon-in-expressions-from-macros = \"warn\"\nsingle-use-lifetimes = \"warn\"\ntrivial-casts = \"warn\"\ntrivial-numeric-casts = \"warn\"\nunit-bindings = \"warn\"\n#unnameable-types = \"warn\" # TODO\nunreachable-pub = \"warn\"\nunsafe-op-in-unsafe-fn = \"warn\"\nunstable-features = \"warn\"\nunused-extern-crates = \"warn\"\nunused-import-braces = \"warn\"\nunused-lifetimes = \"warn\"\nunused-macro-rules = \"warn\"\nunused-must-use = \"warn\"\nunused-qualifications = \"warn\"\n#unused-results = \"warn\" # TODO\n\n## some sadness\nelided_named_lifetimes = \"allow\" # TODO!\nmismatched_lifetime_syntaxes = \"allow\" # TODO!\nlet_underscore_drop = \"allow\"\nmissing_docs = \"allow\"\n# cfgs cannot be limited to expected cfgs or their de facto non-transitive/opt-in use-case e.g.\n# tokio_unstable will warn.\nunexpected_cfgs = \"allow\"\n# this seems to suggest broken code and is not working correctly\nunused_braces = \"allow\"\n# buggy, but worth checking on occasionally\nunused_crate_dependencies = \"allow\"\nunsafe_code = \"allow\"\nvariant_size_differences = \"allow\"\n\n# we check nightly clippy lints\nunknown_lints = \"allow\"\n\n# rust claims elided_named_lifetimes has been replaced by\n# mismatched_lifetime_syntaxes but it actually has not.\nrenamed_and_removed_lints = \"allow\"\n\n# nightly has a new lint that conflicts with our BoolExt trait at\n# src/core/utils/bool.rs:68:48\n# <https://github.com/rust-lang/rust/issues/142748>\nunstable_name_collisions = \"allow\" # TODO\n\n#######################################\n#\n# Clippy lints\n#\n\n[workspace.lints.clippy]\n\n###################\ncargo = { level = \"warn\", priority = -1 }\n\n## some sadness\nmultiple_crate_versions = { level = \"allow\", priority = 1 }\n\n###################\ncomplexity = { level = \"warn\", priority = -1 }\n\n# promotes forward-compat for literal ..default() construction\nneedless_update = { level = \"allow\", priority = 1 }\n\n###################\ncorrectness = { level = \"warn\", priority = -1 }\n\n###################\nnursery = { level = \"warn\", priority = -1 }\n\n## some sadness\nmissing_const_for_fn = { level = \"allow\", priority = 1 } # TODO\noption_if_let_else = { level = \"allow\", priority = 1 } # TODO\nredundant_pub_crate = { level = \"allow\", priority = 1 } # TODO\nsignificant_drop_in_scrutinee = { level = \"allow\", priority = 1 } # TODO\nsignificant_drop_tightening = { level = \"allow\", priority = 1 } # TODO\ntuple_array_conversions = { level = \"allow\", priority = 1 }\n\n###################\npedantic = { level = \"warn\", priority = -1 }\n\n## some sadness\ntoo_long_first_doc_paragraph = { level = \"allow\", priority = 1 }\ndefault_trait_access = { level = \"allow\", priority = 1 }\ndoc_markdown = { level = \"allow\", priority = 1 }\nelidable_lifetime_names = { level = \"allow\", priority = 1 }\nenum_glob_use = { level = \"allow\", priority = 1 }\nif_not_else = { level = \"allow\", priority = 1 }\nif_then_some_else_none = { level = \"allow\", priority = 1 }\ninline_always = { level = \"allow\", priority = 1 }\nmap_unwrap_or = { level = \"allow\", priority = 1 }\nmatch_bool = { level = \"allow\", priority = 1 }\nmissing_docs_in_private_items = { level = \"allow\", priority = 1 }\nmissing_errors_doc = { level = \"allow\", priority = 1 }\nmissing_panics_doc = { level = \"allow\", priority = 1 }\nmodule_name_repetitions = { level = \"allow\", priority = 1 }\nneedless_continue = { level = \"allow\", priority = 1 }\nno_effect_underscore_binding = { level = \"allow\", priority = 1 }\nsimilar_names = { level = \"allow\", priority = 1 }\nsingle_match_else = { level = \"allow\", priority = 1 }\nstruct_excessive_bools = { level = \"allow\", priority = 1 }\nstruct_field_names = { level = \"allow\", priority = 1 }\nunnecessary_wraps = { level = \"allow\", priority = 1 }\n\n###################\nperf = { level = \"warn\", priority = -1 }\n\n###################\n#restriction = \"warn\"\n\narithmetic_side_effects = \"warn\"\nas_conversions = \"warn\"\nas_underscore = \"warn\"\nassertions_on_result_states = \"warn\"\ndbg_macro = \"warn\"\ndefault_union_representation = \"warn\"\nderef_by_slicing = \"warn\"\nempty_drop = \"warn\"\nempty_structs_with_brackets = \"warn\"\nexit = \"warn\"\nfiletype_is_file = \"warn\"\nfloat_cmp_const = \"warn\"\nfn_to_numeric_cast_any = \"warn\"\nformat_push_string = \"warn\"\nget_unwrap = \"warn\"\nimpl_trait_in_params = \"warn\"\nlet_underscore_untyped = \"warn\"\nlossy_float_literal = \"warn\"\nmem_forget = \"warn\"\nmissing_assert_message = \"warn\"\nmutex_atomic = \"warn\"\npub_without_shorthand = \"warn\"\nrc_buffer = \"warn\"\nrc_mutex = \"warn\"\nredundant_type_annotations = \"warn\"\nsemicolon_outside_block = \"warn\"\nstr_to_string = \"warn\"\nstring_lit_chars_any = \"warn\"\nstring_slice = \"warn\"\nimplicit_clone = \"warn\"\nsuspicious_xor_used_as_pow = \"warn\"\ntests_outside_test_module = \"warn\"\ntry_err = \"warn\"\nundocumented_unsafe_blocks = \"warn\"\nunnecessary_safety_comment = \"warn\"\nunnecessary_safety_doc = \"warn\"\nunnecessary_self_imports = \"warn\"\nunneeded_field_pattern = \"warn\"\nunseparated_literal_suffix = \"warn\"\nunwrap_used = \"warn\"\nverbose_file_reads = \"warn\"\n\n###################\nstyle = { level = \"warn\", priority = -1 }\n\n## some sadness\n# trivial assertions are quite alright\nassertions_on_constants = { level = \"allow\", priority = 1 }\nmodule_inception = { level = \"allow\", priority = 1 }\nobfuscated_if_else = { level = \"allow\", priority = 1 }\ntoplevel-ref-arg = { level = \"allow\", priority = 1 }\n\n###################\nsuspicious = { level = \"warn\", priority = -1 }\n\n## some sadness\nlet_underscore_future = { level = \"allow\", priority = 1 }\n\n# rust doesnt understand tuwunel\'s custom log macros\nliteral_string_with_formatting_args = { level = \"allow\", priority = 1 }\n";