[workspace] members = [ "zebrad", "zebra-chain", "zebra-network", "zebra-state", "zebra-script", "zebra-consensus", "zebra-rpc", "zebra-client", "zebra-node-services", "zebra-test", "zebra-utils", "tower-batch", "tower-fallback", ] [profile.dev] panic = "abort" # Speed up tests by optimizing performance-critical crates [profile.dev.package.blake2b_simd] opt-level = 3 [profile.dev.package.ff] opt-level = 3 [profile.dev.package.group] opt-level = 3 [profile.dev.package.pasta_curves] opt-level = 3 [profile.dev.package.halo2_proofs] opt-level = 3 [profile.dev.package.halo2_gadgets] opt-level = 3 [profile.dev.package.bls12_381] opt-level = 3 [profile.dev.package.minreq] opt-level = 1 [profile.dev.package.zcash_proofs] opt-level = 1 [profile.release] panic = "abort" # Speed up release builds and sync tests using link-time optimization. # Some of Zebra's code is CPU-intensive, and needs extra optimizations for peak performance. # # TODO: # - add "-Clinker-plugin-lto" in .cargo/config.toml to speed up release builds # - add "-Clinker=clang -Clink-arg=-fuse-ld=lld" in .cargo/config.toml # - also use LTO on C/C++ code: # - use clang to compile all C/C++ code # - add "-flto=thin" to all C/C++ code builds # - see https://doc.rust-lang.org/rustc/linker-plugin-lto.html#cc-code-as-a-dependency-in-rust lto = "thin" [patch.crates-io] # TODO: replace with upstream librustzcash when these changes are merged (#3037) # remove these after a new librustzcash release (#2982) # These are librustzcash file requirements specified in its workspace Cargo.toml, # that we must replace with git requirements equihash = { git = "https://github.com/zcash/librustzcash.git", rev = "d14e7a707ce01cefcbc82651dad48f002185dded" } hdwallet = { git = "https://github.com/nuttycom/hdwallet", rev = "9b4c1bdbe0517e3a7a8f285d6048a37d472ba3bc" } zcash_encoding = { git = "https://github.com/zcash/librustzcash.git", rev = "d14e7a707ce01cefcbc82651dad48f002185dded" } zcash_note_encryption = { git = "https://github.com/zcash/librustzcash.git", rev = "d14e7a707ce01cefcbc82651dad48f002185dded" } zcash_primitives = { git = "https://github.com/zcash/librustzcash.git", rev = "d14e7a707ce01cefcbc82651dad48f002185dded" } # Currently pointing to `download-sprout-params-new` branch which contains the # changes from `download-sprout-params-d14e7a70` rebased on top of d14e7a70 as # required by `zcash/Cargo.toml`. zcash_proofs = { git = "https://github.com/ZcashFoundation/librustzcash.git", rev = "c3ff94134b472ba90af665e5454983dc12de1338" }