zebra/Cargo.toml

83 lines
1.7 KiB
TOML
Raw Normal View History

[workspace]
members = [
2020-07-14 13:23:43 -07:00
"zebrad",
"zebra-chain",
"zebra-network",
"zebra-state",
"zebra-script",
"zebra-consensus",
"zebra-rpc",
Refactor to create a new `zebra-node-services` crate (#3648) * Create new empty `zebra-node-services` crate The goal is to store the mempool `Request` and `Response` types so that the `zebra-rpc` crate can interface with the mempool service without having to import `zebrad`. * Move `Gossip` mempool type into new crate It is required by the `Request` type, which will be moved next. * Add documentation to `Gossip` variants Avoid having to add an exception to allow undocumented code. * Move `mempool::Request` type to new crate The first part of the service interface definition. Usages have been changed to refer to the new crate directly, and since this refactor is still incomplete, some `mp` aliases are used in a few places to refer to the old module. * Create an `UnboxMempoolError` helper trait Centralize some common code to extract and downcast boxed mempool errors. The `mempool::Response` will need to contain a `BoxError` instead of a `MempoolError` when it is moved to the `zebra-node-services` crate, so this prepares the tests to be updated with less changes. * Use `UnboxMempoolError` in tests Make the necessary changes so that the tests are ready to support a `BoxError` in the `mempool::Response` type. * Use `BoxError` in `mempool::Response` Prepare it to be moved to the `zebra-node-services` crate. * Move `mempool::Response` to `zebra-node-services` Update usages to import from the new crate directly. * Remove `mp` aliases for mempool component module Use any internal types directly instead. * Replace `tower::BoxService` with custom alias Remove the dependency of `zebra-node-services` on `tower`. * Move `Gossip` into a separate `sub-module` Keep only the main `Request` and `Response` types in the `mempool` module. * Use `crate::BoxError` instead of `tower::BoxError` Follow the existing convention. * Add missing `gossip.rs` module file It was missing from a previous refactor commit.
2022-02-25 13:43:21 -08:00
"zebra-node-services",
"zebra-test",
"zebra-utils",
2020-07-14 13:23:43 -07:00
"tower-batch",
2020-07-14 16:21:01 -07:00
"tower-fallback",
]
# Use the edition 2021 dependency resolver in the workspace, to match the crates
resolver = "2"
[profile.dev]
panic = "abort"
# Speed up tests by optimizing performance-critical crates
# Cryptographic 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
change(nu5): use new V5 transaction script verification API (#3799) * update librustzcash; adapt to new API * add ticket reference for removing zcash_proofs duplicated dependencies * update to new zcash_script V5 API * use zp_tx shorthand * update to Zcash 4.7.0 dependencies * update protocol versions * feat(rpc): Implement `getblockchaininfo` RPC method (#3891) * Implement `getblockchaininfo` RPC method * add a test for `get_blockchain_info` * fix tohex/fromhex * move comment * Update lightwalletd acceptance test for getblockchaininfo RPC (#3914) * change(rpc): Return getblockchaininfo network upgrades in height order (#3915) * Update lightwalletd acceptance test for getblockchaininfo RPC * Update some doc comments for network upgrades * List network upgrades in order in the getblockchaininfo RPC Also: - Use a constant for the "missing consensus branch ID" RPC value - Simplify fetching consensus branch IDs - Make RPC type derives consistent - Update RPC type documentation * Make RPC type derives consistent * Fix a confusing test comment * get hashand height at the same time * fix estimated_height * fix lint * add extra check Co-authored-by: Janito Vaqueiro Ferreira Filho <janito.vff@gmail.com> * fix typo Co-authored-by: Janito Vaqueiro Ferreira Filho <janito.vff@gmail.com> * split test Co-authored-by: Janito Vaqueiro Ferreira Filho <janito.vff@gmail.com> * fix(rpc): ignore an expected error in the RPC acceptance tests (#3961) * Add ignored regexes to test command failure regex methods * Ignore empty chain error in getblockchaininfo We expect this error when zebrad starts up with an empty state. Co-authored-by: teor <teor@riseup.net> Co-authored-by: Janito Vaqueiro Ferreira Filho <janito.vff@gmail.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> * Make sync error logs more user-friendly (#3944) - use info level, there is nothing the user needs to do, particularly for a single error - explain that the errors are temporary - hide backtraces, because they look like crashes * Update test.patch.yml with lightwalletd job (#3970) * Update test.patch.yml with lightwalletd job * Remove a workflow condition that will always be false In general, patch workflows need the opposite conditions to the original workflow. But in this case, we know the result of the condition will always be true, so we can just delete it. Co-authored-by: teor <teor@riseup.net> * fix(doc): Fix bugs in the lightwalletd database design (#3964) * Re-order column families in design in dependency order * Minor RFC design tweaks and fixes Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> * Repoint zebra image links to our new zfnd.org site for now (#3949) * Repoint zebra image links to our new zfnd.org site for now * Remove images/ Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> * Fix typos (#3956) Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: teor <teor@riseup.net> * bump database version to trigger testnet rollback * reduce minimum protocol version for now (will be changed later) * update dependencies * Apply suggestions from code review Co-authored-by: teor <teor@riseup.net> * update versions to match zcash 4.7.0 * deny.toml: update 'darling' Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com> Co-authored-by: teor <teor@riseup.net> Co-authored-by: Janito Vaqueiro Ferreira Filho <janito.vff@gmail.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Deirdre Connolly <durumcrustulum@gmail.com> Co-authored-by: Dimitris Apostolou <dimitris.apostolou@icloud.com>
2022-04-18 17:14:16 -07:00
[profile.dev.package.halo2_proofs]
opt-level = 3
[profile.dev.package.halo2_gadgets]
opt-level = 3
[profile.dev.package.bls12_381]
opt-level = 3
# Cryptographic and parameter download crates
[profile.dev.package.zcash_proofs]
opt-level = 3
[profile.dev.package.minreq]
opt-level = 3
[profile.dev.package.rustls]
opt-level = 3
[profile.dev.package.ring]
opt-level = 3
[profile.dev.package.spin]
opt-level = 3
[profile.dev.package.untrusted]
opt-level = 3
[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"