diff --git a/CHANGELOG.md b/CHANGELOG.md index ac7c7716191..7731a93bfe6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,42 @@ 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-rc.1](https://github.com/ZcashFoundation/zebra/releases/tag/v1.0.0-rc.1) - 2022-11-02 + +This is the second Zebra release candidate. Zebra's consensus rules, node sync, and `lightwalletd` RPCs are ready for user testing and experimental use. Zebra has not been audited yet. + +This release starts work on mining pool RPCs, including some mempool fixes. It also restores support for Rust 1.64. + +### Breaking Changes + +This release has the following breaking changes: +- Remove unused buggy cryptographic code from zebra-chain ([#5464](https://github.com/ZcashFoundation/zebra/pull/5464)). This code was never used in production, and it had known bugs. Anyone using it should migrate to `librustzcash` instead. + +### Added + +- Introduce `getblocktemplate-rpcs` feature ([#5357](https://github.com/ZcashFoundation/zebra/pull/5357)) + - Add getblockcount rpc method ([#5357](https://github.com/ZcashFoundation/zebra/pull/5357)) + - Add getblockhash rpc method ([#4967](https://github.com/ZcashFoundation/zebra/pull/4967)) + - Add getblocktemplate rpc call with stub fields ([#5462](https://github.com/ZcashFoundation/zebra/pull/5462)) +- Add block commit task metrics ([#5327](https://github.com/ZcashFoundation/zebra/pull/5327)) +- Document how we tag and release Zebra ([#5392](https://github.com/ZcashFoundation/zebra/pull/5392)) +- Document how to use Zebra with Docker ([#5504](https://github.com/ZcashFoundation/zebra/pull/5504)) + +### Changed + +- Update mainnet and testnet checkpoints ([#5512](https://github.com/ZcashFoundation/zebra/pull/5512)) + +### Fixed + +- Reject mempool transactions with spent outpoints or nullifiers ([#5434](https://github.com/ZcashFoundation/zebra/pull/5434)) +- Allow extra lookahead blocks in the verifier, state, and block commit task queues. This reduces the number of downloaded blocks that are dropped due to the lookahead limit. ([#5465](https://github.com/ZcashFoundation/zebra/pull/5465)) + +### Contributors + +Thank you to everyone who contributed to this release, we couldn't make Zebra without you: +@arya2, @gustavovalverde, @oxarbitrage, @teor2345 and @upbqdn + + ## [Zebra 1.0.0-rc.0](https://github.com/ZcashFoundation/zebra/releases/tag/v1.0.0-rc.0) - 2022-10-12 This is the first Zebra release candidate. Zebra's consensus rules, node sync, and `lightwalletd` RPCs are ready for user testing and experimental use. Zebra has not been audited yet. diff --git a/Cargo.lock b/Cargo.lock index b1281525257..6b95ddd9f26 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4401,7 +4401,7 @@ dependencies = [ [[package]] name = "tower-batch" -version = "0.2.31" +version = "0.2.32" dependencies = [ "color-eyre", "ed25519-zebra", @@ -4425,7 +4425,7 @@ dependencies = [ [[package]] name = "tower-fallback" -version = "0.2.31" +version = "0.2.32" dependencies = [ "futures-core", "pin-project 0.4.30", @@ -5224,7 +5224,7 @@ dependencies = [ [[package]] name = "zebra-chain" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" dependencies = [ "aes", "bech32 0.9.1", @@ -5288,7 +5288,7 @@ version = "1.0.0-beta.0" [[package]] name = "zebra-consensus" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" dependencies = [ "bellman", "blake2b_simd", @@ -5331,7 +5331,7 @@ dependencies = [ [[package]] name = "zebra-network" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" dependencies = [ "bitflags", "byteorder", @@ -5367,14 +5367,14 @@ dependencies = [ [[package]] name = "zebra-node-services" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" dependencies = [ "zebra-chain", ] [[package]] name = "zebra-rpc" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" dependencies = [ "chrono", "futures", @@ -5404,7 +5404,7 @@ dependencies = [ [[package]] name = "zebra-script" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" dependencies = [ "displaydoc", "hex", @@ -5417,7 +5417,7 @@ dependencies = [ [[package]] name = "zebra-state" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" dependencies = [ "bincode", "chrono", @@ -5455,7 +5455,7 @@ dependencies = [ [[package]] name = "zebra-test" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" dependencies = [ "color-eyre", "futures", @@ -5482,7 +5482,7 @@ dependencies = [ [[package]] name = "zebra-utils" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" dependencies = [ "color-eyre", "hex", @@ -5498,7 +5498,7 @@ dependencies = [ [[package]] name = "zebrad" -version = "1.0.0-rc.0" +version = "1.0.0-rc.1" dependencies = [ "abscissa_core", "atty", diff --git a/README.md b/README.md index 2c3bcac2c68..caedbbd9485 100644 --- a/README.md +++ b/README.md @@ -71,8 +71,8 @@ Currently, Zebra validates all of the Zcash consensus rules for the NU5 network You can run Zebra using our Docker image. This command will run our latest release, and sync it to the tip: -```shell -docker run --detach zfnd/zebra:1.0.0-rc.0 +```sh +docker run zfnd/zebra:1.0.0-rc.1 ``` For more information, read our [Docker documentation](book/src/user/docker.md). @@ -94,7 +94,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-rc.0 zebrad` +3. Run `cargo install --locked --git https://github.com/ZcashFoundation/zebra --tag v1.0.0-rc.1 zebrad` 4. Run `zebrad start` (see [Running Zebra](https://zebra.zfnd.org/user/run.html) for more information) For more detailed instructions, refer to the [documentation](https://zebra.zfnd.org/user/install.html). diff --git a/tower-batch/Cargo.toml b/tower-batch/Cargo.toml index 329389e26ee..b0013b4e100 100644 --- a/tower-batch/Cargo.toml +++ b/tower-batch/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tower-batch" -version = "0.2.31" +version = "0.2.32" authors = ["Zcash Foundation "] license = "MIT" edition = "2021" diff --git a/tower-fallback/Cargo.toml b/tower-fallback/Cargo.toml index 9ade6c6c7d9..c27530b9bed 100644 --- a/tower-fallback/Cargo.toml +++ b/tower-fallback/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tower-fallback" -version = "0.2.31" +version = "0.2.32" authors = ["Zcash Foundation "] license = "MIT" edition = "2021" diff --git a/zebra-chain/Cargo.toml b/zebra-chain/Cargo.toml index 15aa9250b00..86e7f63ad61 100644 --- a/zebra-chain/Cargo.toml +++ b/zebra-chain/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-chain" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-consensus/Cargo.toml b/zebra-consensus/Cargo.toml index 520d7b78c36..e48f8982344 100644 --- a/zebra-consensus/Cargo.toml +++ b/zebra-consensus/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-consensus" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-network/Cargo.toml b/zebra-network/Cargo.toml index 644257c9576..f3e53acd4f7 100644 --- a/zebra-network/Cargo.toml +++ b/zebra-network/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-network" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" 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 609be213a7d..2b0954885a2 100644 --- a/zebra-network/src/constants.rs +++ b/zebra-network/src/constants.rs @@ -242,7 +242,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-rc.0/"; +pub const USER_AGENT: &str = "/Zebra:1.0.0-rc.1/"; /// 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 7f8315f134c..1247d19c669 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.16" +version = "1.0.0-beta.17" edition = "2021" repository = "https://github.com/ZcashFoundation/zebra" diff --git a/zebra-rpc/Cargo.toml b/zebra-rpc/Cargo.toml index 8d8eca6fce7..7211dde7982 100644 --- a/zebra-rpc/Cargo.toml +++ b/zebra-rpc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-rpc" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-script/Cargo.toml b/zebra-script/Cargo.toml index 0a91492d753..054aaa63a79 100644 --- a/zebra-script/Cargo.toml +++ b/zebra-script/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-script" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-state/Cargo.toml b/zebra-state/Cargo.toml index cb1f8f7d53b..5cf37cfa3bb 100644 --- a/zebra-state/Cargo.toml +++ b/zebra-state/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-state" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-test/Cargo.toml b/zebra-test/Cargo.toml index ad783ba25c4..778eb0e7cc6 100644 --- a/zebra-test/Cargo.toml +++ b/zebra-test/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-test" -version = "1.0.0-beta.16" +version = "1.0.0-beta.17" authors = ["Zcash Foundation "] license = "MIT OR Apache-2.0" edition = "2021" diff --git a/zebra-utils/Cargo.toml b/zebra-utils/Cargo.toml index 72b8f49798a..082e83010f2 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.16" +version = "1.0.0-beta.17" edition = "2021" # Prevent accidental publication of this utility crate. publish = false diff --git a/zebrad/Cargo.toml b/zebrad/Cargo.toml index 6d8e5143c6b..c0337636ab5 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-rc.0" +version = "1.0.0-rc.1" edition = "2021" # Zebra is only supported on the latest stable Rust version. Some earlier versions might work. # Zebra uses features introduced in Rust 1.58.