From 75671c53a29deb8eb4eefa4ebde0ee4ed768e171 Mon Sep 17 00:00:00 2001 From: teor Date: Tue, 19 Apr 2022 13:02:17 +1000 Subject: [PATCH] 1.0.0-beta.8 Release (#4135) * Update changelog for 1.0.0-beta.8 * Bump Zebra crate versions The tower crates and their dependencies haven't changed, so their versions don't need to be bumped. Some Zebra crates haven't changed, but I bumped all the versions to keep them consistent. * Explicitly say that we support NU5 testnet 2 * Expand PR #3799 into changelog entries Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> --- CHANGELOG.md | 75 ++++++++++++++++++++++++++++++++++ Cargo.lock | 20 ++++----- README.md | 7 +++- book/src/user/install.md | 2 +- zebra-chain/Cargo.toml | 2 +- zebra-consensus/Cargo.toml | 2 +- zebra-network/Cargo.toml | 2 +- zebra-network/src/constants.rs | 2 +- zebra-node-services/Cargo.toml | 2 +- zebra-rpc/Cargo.toml | 2 +- zebra-script/Cargo.toml | 2 +- zebra-state/Cargo.toml | 2 +- zebra-test/Cargo.toml | 2 +- zebra-utils/Cargo.toml | 2 +- zebrad/Cargo.toml | 2 +- 15 files changed, 102 insertions(+), 24 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d018e7f66..8853deb25 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,81 @@ All notable changes to Zebra are documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org). +## [Zebra 1.0.0-beta.8](https://github.com/ZcashFoundation/zebra/releases/tag/v1.0.0-beta.8) - 2022-04-19 + +Zebra's latest beta completes our work on the NU5 consensus rules. It continues our work on `lightwalletd` RPC methods, and contains some internal CI improvements. + +### Added + +#### RPCs + +- Implement a retry queue for transactions sent via RPCs (#4015) +- Partially implement the `getaddresstxids` RPC method (#4062) + +#### State + +- Add a transparent address balance index (#3963) +- Add a transparent address UTXO index (#3999) +- Add a transparent address transaction index (#4038) +- Add transparent address indexes to the non-finalized state (#4022) +- Add a query function for transparent address balances (#4097) + +### CI + +- Create cached state disk image after a successful full sync test (#3986) + +### Changed + +#### NU5 + +- Update to new zcash_script V5 API (#3799) +- Update network protocol versions for the second NU5 activation on testnet (#3799) +- Update the consensus branch ID and the second NU5 testnet activation height (#3799) +- Bump database version to trigger testnet rollback (#3799) + +#### State + +- Store transactions in a separate database index, to improve query speed (#3934) +- Store UTXOs by transaction location rather than transaction hash (#3978) +- Stop storing redundant transparent output fields in the database (#3992) +- Use LZ4 compression for RocksDB (#4027) +- Use Ribbon filters for database index lookups (#4040) +- Tune state database file compaction configuration (#4045) + +#### CI + +- Put the state version in cached state disk names (#4073) +- Improve mergify merge throughput (#4094, #4120) +- Run cached state rebuilds in main branch (#4107) +- Use GitHub Branch Protection checks instead of Mergify (#4103, #4105) +- Lint and standardize the actions structure (#3940) + +#### Rust Dependencies + +- Update shared Zcash dependencies for the second NU5 activation on testnet (#3799) +- Disable unused rocksdb compression features (#4082) +- Bump rlimit from 0.7.0 to 0.8.3 (#4051) + +#### CI Dependencies + +- Bump docker/metadata-action from 3.6.2 to 3.7.0 (#4049) +- Bump google-github-actions/auth from 0.6.0 to 0.7.0 (#4050) +- Bump tj-actions/changed-files from 18.6 to 18.7 (#4065) +- Bump reviewdog/action-actionlint from 1.21.0 to 1.23.0 (#4099, #4125) +- Bump actions/checkout from 3.0.0 to 3.0.1 (#4126) + +### Fixed + +#### CI + +- Validate tests exit code after reading the container logs (#3968, #4069) +- Give enough time to zebra before reading logs (#4123) + +#### Rust Clippy + +- Ignore clippy drop warnings in tests (#4081) + + ## [Zebra 1.0.0-beta.7](https://github.com/ZcashFoundation/zebra/releases/tag/v1.0.0-beta.7) - 2022-04-05 Zebra's latest beta fixes a `cargo install` build failure in the previous beta release. It also fixes a `lightwalletd` RPC bug, and improves test coverage. diff --git a/Cargo.lock b/Cargo.lock index 5586d70a0..d601a8f3c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5778,7 +5778,7 @@ dependencies = [ [[package]] name = "zebra-chain" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "aes", "bech32", @@ -5838,7 +5838,7 @@ version = "1.0.0-beta.0" [[package]] name = "zebra-consensus" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "bellman", "blake2b_simd 1.0.0", @@ -5880,7 +5880,7 @@ dependencies = [ [[package]] name = "zebra-network" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "arti-client", "bitflags", @@ -5915,14 +5915,14 @@ dependencies = [ [[package]] name = "zebra-node-services" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "zebra-chain", ] [[package]] name = "zebra-rpc" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "chrono", "futures", @@ -5950,7 +5950,7 @@ dependencies = [ [[package]] name = "zebra-script" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "displaydoc", "hex", @@ -5963,7 +5963,7 @@ dependencies = [ [[package]] name = "zebra-state" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "bincode", "chrono", @@ -5998,7 +5998,7 @@ dependencies = [ [[package]] name = "zebra-test" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "color-eyre 0.5.11", "futures", @@ -6022,7 +6022,7 @@ dependencies = [ [[package]] name = "zebra-utils" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "color-eyre 0.6.1", "hex", @@ -6037,7 +6037,7 @@ dependencies = [ [[package]] name = "zebrad" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" dependencies = [ "abscissa_core", "atty", diff --git a/README.md b/README.md index 641aa20d4..d3d53d8da 100644 --- a/README.md +++ b/README.md @@ -81,7 +81,10 @@ and Zebra implements all the features required to reach Zcash network consensus. The goals of the beta release series are for Zebra to act as a fully validating Zcash node, for all active consensus rules as of NU5 activation. -Currently, Zebra validates all of the documented Zcash consensus rules, but it may not validate any: +Currently, Zebra validates all of the Zcash consensus rules for the NU5 network upgrade. +(As of the second NU5 activation on testnet.) + +But it may not validate any: - Undocumented rules derived from Bitcoin - Undocumented network protocol requirements @@ -100,7 +103,7 @@ for your platform: 2. Install Zebra's build dependencies: - **libclang:** the `libclang`, `libclang-dev`, `llvm`, or `llvm-dev` packages, depending on your package manager - **clang** or another C++ compiler: `g++`, `Xcode`, or `MSVC` -3. Run `cargo install --locked --git https://github.com/ZcashFoundation/zebra --tag v1.0.0-beta.7 zebrad` +3. Run `cargo install --locked --git https://github.com/ZcashFoundation/zebra --tag v1.0.0-beta.8 zebrad` 4. Run `zebrad start` (see [Running Zebra](https://zebra.zfnd.org/user/run.html) for more information) If you're interested in testing out `zebrad` please feel free, but keep in mind diff --git a/book/src/user/install.md b/book/src/user/install.md index bad7e64f1..6d4543204 100644 --- a/book/src/user/install.md +++ b/book/src/user/install.md @@ -9,7 +9,7 @@ for your platform: 2. Install Zebra's build dependencies: - **libclang:** the `libclang`, `libclang-dev`, `llvm`, or `llvm-dev` packages, depending on your package manager - **clang** or another C++ compiler: `g++`, `Xcode`, or `MSVC` -3. Run `cargo install --locked --git https://github.com/ZcashFoundation/zebra --tag v1.0.0-beta.7 zebrad` +3. Run `cargo install --locked --git https://github.com/ZcashFoundation/zebra --tag v1.0.0-beta.8 zebrad` 4. Run `zebrad start` (see [Running Zebra](user/run.md) for more information) If you're interested in testing out `zebrad` please feel free, but keep in mind diff --git a/zebra-chain/Cargo.toml b/zebra-chain/Cargo.toml index 385a71e8e..a9a545e52 100644 --- a/zebra-chain/Cargo.toml +++ b/zebra-chain/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-chain" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-consensus/Cargo.toml b/zebra-consensus/Cargo.toml index 4af9bd61e..916062de8 100644 --- a/zebra-consensus/Cargo.toml +++ b/zebra-consensus/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-consensus" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-network/Cargo.toml b/zebra-network/Cargo.toml index 4b91d29a0..4c8595c15 100644 --- a/zebra-network/Cargo.toml +++ b/zebra-network/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-network" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-network/src/constants.rs b/zebra-network/src/constants.rs index ebe501466..37f688754 100644 --- a/zebra-network/src/constants.rs +++ b/zebra-network/src/constants.rs @@ -231,7 +231,7 @@ pub const TIMESTAMP_TRUNCATION_SECONDS: u32 = 30 * 60; /// [BIP 14]: https://github.com/bitcoin/bips/blob/master/bip-0014.mediawiki // // TODO: generate this from crate metadata (#2375) -pub const USER_AGENT: &str = "/Zebra:1.0.0-beta.7/"; +pub const USER_AGENT: &str = "/Zebra:1.0.0-beta.8/"; /// The Zcash network protocol version implemented by this crate, and advertised /// during connection setup. diff --git a/zebra-node-services/Cargo.toml b/zebra-node-services/Cargo.toml index b48207ae0..36273cc38 100644 --- a/zebra-node-services/Cargo.toml +++ b/zebra-node-services/Cargo.toml @@ -2,7 +2,7 @@ name = "zebra-node-services" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" edition = "2021" repository = "https://github.com/ZcashFoundation/zebra" diff --git a/zebra-rpc/Cargo.toml b/zebra-rpc/Cargo.toml index 8226b0586..f8229cdfa 100644 --- a/zebra-rpc/Cargo.toml +++ b/zebra-rpc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-rpc" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-script/Cargo.toml b/zebra-script/Cargo.toml index 998e944a2..ccddccb3b 100644 --- a/zebra-script/Cargo.toml +++ b/zebra-script/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-script" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-state/Cargo.toml b/zebra-state/Cargo.toml index a0ae3b2a8..4752cb7b6 100644 --- a/zebra-state/Cargo.toml +++ b/zebra-state/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-state" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-test/Cargo.toml b/zebra-test/Cargo.toml index 9da247809..0fc7156c1 100644 --- a/zebra-test/Cargo.toml +++ b/zebra-test/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-test" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-utils/Cargo.toml b/zebra-utils/Cargo.toml index 693646413..8a7f25803 100644 --- a/zebra-utils/Cargo.toml +++ b/zebra-utils/Cargo.toml @@ -2,7 +2,7 @@ name = "zebra-utils" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" edition = "2021" # Prevent accidental publication of this utility crate. publish = false diff --git a/zebrad/Cargo.toml b/zebrad/Cargo.toml index 2b0a3cadf..1bb59ce65 100644 --- a/zebrad/Cargo.toml +++ b/zebrad/Cargo.toml @@ -2,7 +2,7 @@ name = "zebrad" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" -version = "1.0.0-beta.7" +version = "1.0.0-beta.8" edition = "2021" repository = "https://github.com/ZcashFoundation/zebra" # make `cargo run` use `zebrad` by default