diff --git a/.github/workflows/scripts/release-crates-dry-run.sh b/.github/workflows/scripts/release-crates-dry-run.sh index 7f13647c65e..434e2156acb 100755 --- a/.github/workflows/scripts/release-crates-dry-run.sh +++ b/.github/workflows/scripts/release-crates-dry-run.sh @@ -20,14 +20,15 @@ fi # We use the same commands as the [release drafter](https://github.com/ZcashFoundation/zebra/blob/main/.github/PULL_REQUEST_TEMPLATE/release-checklist.md#update-crate-versions) # with an extra `--no-confirm` argument for non-interactive testing. # Update everything except for alpha crates and zebrad: -cargo release version --verbose --execute --no-confirm --allow-branch '*' --workspace --exclude zebrad --exclude zebra-scan --exclude zebra-grpc beta +cargo release version --verbose --execute --no-confirm --allow-branch '*' --workspace --exclude zebrad --exclude zebra-scan --exclude zebra-grpc patch # Due to a bug in cargo-release, we need to pass exact versions for alpha crates: -cargo release version --verbose --execute --no-confirm --allow-branch '*' --package zebra-scan 0.1.0-alpha.8 -cargo release version --verbose --execute --no-confirm --allow-branch '*' --package zebra-grpc 0.1.0-alpha.6 +cargo release version --verbose --execute --no-confirm --allow-branch '*' --package zebra-scan 0.1.0-alpha.9 +cargo release version --verbose --execute --no-confirm --allow-branch '*' --package zebra-grpc 0.1.0-alpha.7 # Update zebrad: -cargo release version --verbose --execute --no-confirm --allow-branch '*' --package zebrad patch +# TODO: Revert `2.0.0-rc.0` to `patch` in the next release candidate. +cargo release version --verbose --execute --no-confirm --allow-branch '*' --package zebrad 2.0.0-rc.0 # Continue with the release process: cargo release replace --verbose --execute --no-confirm --allow-branch '*' --package zebrad cargo release commit --verbose --execute --no-confirm --allow-branch '*' diff --git a/CHANGELOG.md b/CHANGELOG.md index 649b14fd26f..5b7d53e5c31 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,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 2.0.0-rc.0](https://github.com/ZcashFoundation/zebra/releases/tag/v2.0.0-rc.0) - 2024-10-11 + +This version is a release candidate for the Zcash NU6 network upgrade on the Mainnet. While this version does not yet include the NU6 Mainnet activation height or current protocol version, all required functionality and tests are in place. + +Please note that support for this release candidate is expected to conclude prior to the NU6 activation heights. + +### Security + +- Added Docker Scout vulnerabilities scanning ([#8871](https://github.com/ZcashFoundation/zebra/pull/8871)) + +### Added + +- Added Regtest-only `generate` and `stop` RPC methods ([#8849](https://github.com/ZcashFoundation/zebra/pull/8849), [#8839](https://github.com/ZcashFoundation/zebra/pull/8839), [#8863](https://github.com/ZcashFoundation/zebra/pull/8863)) +- Added fields to `getmininginfo` RPC method response ([#8860](https://github.com/ZcashFoundation/zebra/pull/8860)) +- Copied the Python RPC test framework from zcashd into Zebra ([#8866](https://github.com/ZcashFoundation/zebra/pull/8866)) + +### Changed + +- Regtest halving interval to match zcashd and added a configurable halving interval for custom testnets ([#8888](https://github.com/ZcashFoundation/zebra/pull/8888), [#8928](https://github.com/ZcashFoundation/zebra/pull/8928)) +- Updates post-NU6 Major Grants funding stream address on Mainnet ([#8914](https://github.com/ZcashFoundation/zebra/pull/8914)) + +### Fixed + +- Remove debugging output by default in Docker image ([#8870](https://github.com/ZcashFoundation/zebra/pull/8870)) +- Fixes a typo in configuration file path of the docker-compose file ([#8893](https://github.com/ZcashFoundation/zebra/pull/8893)) +- Return verification errors from `sendrawtransaction` RPC method ([#8788](https://github.com/ZcashFoundation/zebra/pull/8788)) +- Respond to getheaders requests with a maximum of 160 block headers ([#8913](https://github.com/ZcashFoundation/zebra/pull/8913)) +- Avoids panicking during contextual validation when a parent block is missing ([#8883](https://github.com/ZcashFoundation/zebra/pull/8883)) +- Write database format version to disk atomically to avoid a rare panic ([#8795](https://github.com/ZcashFoundation/zebra/pull/8795)) + +### Contributors + +Thank you to everyone who contributed to this release, we couldn't make Zebra without you: +@arya2, @dismad, @gustavovalverde, @oxarbitrage, @skyl and @upbqdn + + ## [Zebra 1.9.0](https://github.com/ZcashFoundation/zebra/releases/tag/v1.9.0) - 2024-08-02 This release includes deployment of NU6 on Testnet, configurable funding streams on custom Testnets, and updates Zebra's end-of-support (EoS) diff --git a/Cargo.lock b/Cargo.lock index 2572faa0e18..2f4c89b1703 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4734,7 +4734,7 @@ dependencies = [ [[package]] name = "tower-batch-control" -version = "0.2.41-beta.15" +version = "0.2.41-beta.16" dependencies = [ "color-eyre", "ed25519-zebra", @@ -4757,7 +4757,7 @@ dependencies = [ [[package]] name = "tower-fallback" -version = "0.2.41-beta.15" +version = "0.2.41-beta.16" dependencies = [ "futures-core", "pin-project", @@ -5881,7 +5881,7 @@ dependencies = [ [[package]] name = "zebra-chain" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" dependencies = [ "bitflags 2.6.0", "bitflags-serde-legacy", @@ -5946,7 +5946,7 @@ dependencies = [ [[package]] name = "zebra-consensus" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" dependencies = [ "bellman", "blake2b_simd", @@ -5992,7 +5992,7 @@ dependencies = [ [[package]] name = "zebra-grpc" -version = "0.1.0-alpha.6" +version = "0.1.0-alpha.7" dependencies = [ "color-eyre", "futures-util", @@ -6014,7 +6014,7 @@ dependencies = [ [[package]] name = "zebra-network" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" dependencies = [ "bitflags 2.6.0", "byteorder", @@ -6055,7 +6055,7 @@ dependencies = [ [[package]] name = "zebra-node-services" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" dependencies = [ "color-eyre", "jsonrpc-core", @@ -6068,7 +6068,7 @@ dependencies = [ [[package]] name = "zebra-rpc" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" dependencies = [ "chrono", "futures", @@ -6105,7 +6105,7 @@ dependencies = [ [[package]] name = "zebra-scan" -version = "0.1.0-alpha.8" +version = "0.1.0-alpha.9" dependencies = [ "bls12_381", "chrono", @@ -6151,7 +6151,7 @@ dependencies = [ [[package]] name = "zebra-script" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" dependencies = [ "hex", "lazy_static", @@ -6163,7 +6163,7 @@ dependencies = [ [[package]] name = "zebra-state" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" dependencies = [ "bincode", "chrono", @@ -6208,7 +6208,7 @@ dependencies = [ [[package]] name = "zebra-test" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" dependencies = [ "color-eyre", "futures", @@ -6236,7 +6236,7 @@ dependencies = [ [[package]] name = "zebra-utils" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" dependencies = [ "color-eyre", "hex", @@ -6267,7 +6267,7 @@ dependencies = [ [[package]] name = "zebrad" -version = "1.9.0" +version = "2.0.0-rc.0" dependencies = [ "abscissa_core", "atty", diff --git a/tower-batch-control/Cargo.toml b/tower-batch-control/Cargo.toml index 09b959fb5ed..8bcc9a3ba34 100644 --- a/tower-batch-control/Cargo.toml +++ b/tower-batch-control/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tower-batch-control" -version = "0.2.41-beta.15" +version = "0.2.41-beta.16" authors = ["Zcash Foundation ", "Tower Maintainers "] description = "Tower middleware for batch request processing" # # Legal @@ -43,10 +43,10 @@ rand = "0.8.5" tokio = { version = "1.40.0", features = ["full", "tracing", "test-util"] } tokio-test = "0.4.4" -tower-fallback = { path = "../tower-fallback/", version = "0.2.41-beta.15" } +tower-fallback = { path = "../tower-fallback/", version = "0.2.41-beta.16" } tower-test = "0.4.0" -zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.39" } +zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.40" } [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] } diff --git a/tower-fallback/Cargo.toml b/tower-fallback/Cargo.toml index 4ddf8a8401d..a3078d916cc 100644 --- a/tower-fallback/Cargo.toml +++ b/tower-fallback/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tower-fallback" -version = "0.2.41-beta.15" +version = "0.2.41-beta.16" authors = ["Zcash Foundation "] description = "A Tower service combinator that sends requests to a first service, then retries processing on a second fallback service if the first service errors." license = "MIT OR Apache-2.0" @@ -24,4 +24,4 @@ tracing = "0.1.39" [dev-dependencies] tokio = { version = "1.40.0", features = ["full", "tracing", "test-util"] } -zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.39" } +zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.40" } diff --git a/zebra-chain/Cargo.toml b/zebra-chain/Cargo.toml index 6ffb22409c3..3f932ea298a 100644 --- a/zebra-chain/Cargo.toml +++ b/zebra-chain/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-chain" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" authors = ["Zcash Foundation "] description = "Core Zcash data structures" license = "MIT OR Apache-2.0" @@ -145,7 +145,7 @@ proptest-derive = { version = "0.5.0", optional = true } rand = { version = "0.8.5", optional = true } rand_chacha = { version = "0.3.1", optional = true } -zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.39", optional = true } +zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.40", optional = true } [dev-dependencies] # Benchmarks @@ -168,7 +168,7 @@ rand_chacha = "0.3.1" tokio = { version = "1.40.0", features = ["full", "tracing", "test-util"] } -zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.39" } +zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.40" } [[bench]] name = "block" diff --git a/zebra-consensus/Cargo.toml b/zebra-consensus/Cargo.toml index 3914087e997..ba71369d060 100644 --- a/zebra-consensus/Cargo.toml +++ b/zebra-consensus/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-consensus" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" authors = ["Zcash Foundation "] description = "Implementation of Zcash consensus checks" license = "MIT OR Apache-2.0" @@ -63,13 +63,13 @@ orchard.workspace = true zcash_proofs = { workspace = true, features = ["multicore" ] } wagyu-zcash-parameters = "0.2.0" -tower-fallback = { path = "../tower-fallback/", version = "0.2.41-beta.15" } -tower-batch-control = { path = "../tower-batch-control/", version = "0.2.41-beta.15" } +tower-fallback = { path = "../tower-fallback/", version = "0.2.41-beta.16" } +tower-batch-control = { path = "../tower-batch-control/", version = "0.2.41-beta.16" } -zebra-script = { path = "../zebra-script", version = "1.0.0-beta.39" } -zebra-state = { path = "../zebra-state", version = "1.0.0-beta.39" } -zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.39" } -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39" } +zebra-script = { path = "../zebra-script", version = "1.0.0-beta.40" } +zebra-state = { path = "../zebra-state", version = "1.0.0-beta.40" } +zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.40" } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40" } # prod feature progress-bar howudoin = { version = "0.1.2", optional = true } @@ -94,6 +94,6 @@ tokio = { version = "1.40.0", features = ["full", "tracing", "test-util"] } tracing-error = "0.2.0" tracing-subscriber = "0.3.18" -zebra-state = { path = "../zebra-state", version = "1.0.0-beta.39", features = ["proptest-impl"] } -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39", features = ["proptest-impl"] } -zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.39" } +zebra-state = { path = "../zebra-state", version = "1.0.0-beta.40", features = ["proptest-impl"] } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40", features = ["proptest-impl"] } +zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.40" } diff --git a/zebra-grpc/Cargo.toml b/zebra-grpc/Cargo.toml index 9cdaadafa2d..9f10802f7d6 100644 --- a/zebra-grpc/Cargo.toml +++ b/zebra-grpc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-grpc" -version = "0.1.0-alpha.6" +version = "0.1.0-alpha.7" authors = ["Zcash Foundation "] description = "Zebra gRPC interface" license = "MIT OR Apache-2.0" @@ -28,8 +28,8 @@ color-eyre = "0.6.3" zcash_primitives.workspace = true -zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.39", features = ["shielded-scan"] } -zebra-chain = { path = "../zebra-chain" , version = "1.0.0-beta.39" } +zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.40", features = ["shielded-scan"] } +zebra-chain = { path = "../zebra-chain" , version = "1.0.0-beta.40" } [build-dependencies] tonic-build = "0.12.3" diff --git a/zebra-network/Cargo.toml b/zebra-network/Cargo.toml index 39cd209c49e..e042e583955 100644 --- a/zebra-network/Cargo.toml +++ b/zebra-network/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-network" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" authors = ["Zcash Foundation ", "Tower Maintainers "] description = "Networking code for Zebra" # # Legal @@ -83,7 +83,7 @@ howudoin = { version = "0.1.2", optional = true } proptest = { version = "1.4.0", optional = true } proptest-derive = { version = "0.5.0", optional = true } -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39", features = ["async-error"] } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40", features = ["async-error"] } [dev-dependencies] proptest = "1.4.0" diff --git a/zebra-node-services/Cargo.toml b/zebra-node-services/Cargo.toml index e0da107d053..01c464b361b 100644 --- a/zebra-node-services/Cargo.toml +++ b/zebra-node-services/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-node-services" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" authors = ["Zcash Foundation "] description = "The interfaces of some Zebra node services" license = "MIT OR Apache-2.0" @@ -37,7 +37,7 @@ rpc-client = [ shielded-scan = [] [dependencies] -zebra-chain = { path = "../zebra-chain" , version = "1.0.0-beta.39" } +zebra-chain = { path = "../zebra-chain" , version = "1.0.0-beta.40" } # Optional dependencies diff --git a/zebra-rpc/Cargo.toml b/zebra-rpc/Cargo.toml index 909d9a468f6..517c565574c 100644 --- a/zebra-rpc/Cargo.toml +++ b/zebra-rpc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-rpc" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" authors = ["Zcash Foundation "] description = "A Zebra JSON Remote Procedure Call (JSON-RPC) interface" license = "MIT OR Apache-2.0" @@ -100,16 +100,16 @@ zcash_address = { workspace = true, optional = true} # Test-only feature proptest-impl proptest = { version = "1.4.0", optional = true } -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39", features = [ +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40", features = [ "json-conversion", ] } -zebra-consensus = { path = "../zebra-consensus", version = "1.0.0-beta.39" } -zebra-network = { path = "../zebra-network", version = "1.0.0-beta.39" } -zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.39", features = [ +zebra-consensus = { path = "../zebra-consensus", version = "1.0.0-beta.40" } +zebra-network = { path = "../zebra-network", version = "1.0.0-beta.40" } +zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.40", features = [ "rpc-client", ] } -zebra-script = { path = "../zebra-script", version = "1.0.0-beta.39" } -zebra-state = { path = "../zebra-state", version = "1.0.0-beta.39" } +zebra-script = { path = "../zebra-script", version = "1.0.0-beta.40" } +zebra-state = { path = "../zebra-state", version = "1.0.0-beta.40" } [build-dependencies] tonic-build = { version = "0.12.3", optional = true } @@ -122,17 +122,17 @@ proptest = "1.4.0" thiserror = "1.0.64" tokio = { version = "1.40.0", features = ["full", "tracing", "test-util"] } -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39", features = [ +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40", features = [ "proptest-impl", ] } -zebra-consensus = { path = "../zebra-consensus", version = "1.0.0-beta.39", features = [ +zebra-consensus = { path = "../zebra-consensus", version = "1.0.0-beta.40", features = [ "proptest-impl", ] } -zebra-network = { path = "../zebra-network", version = "1.0.0-beta.39", features = [ +zebra-network = { path = "../zebra-network", version = "1.0.0-beta.40", features = [ "proptest-impl", ] } -zebra-state = { path = "../zebra-state", version = "1.0.0-beta.39", features = [ +zebra-state = { path = "../zebra-state", version = "1.0.0-beta.40", features = [ "proptest-impl", ] } -zebra-test = { path = "../zebra-test", version = "1.0.0-beta.39" } +zebra-test = { path = "../zebra-test", version = "1.0.0-beta.40" } diff --git a/zebra-scan/Cargo.toml b/zebra-scan/Cargo.toml index c81c749632f..8ca2facdb47 100644 --- a/zebra-scan/Cargo.toml +++ b/zebra-scan/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-scan" -version = "0.1.0-alpha.8" +version = "0.1.0-alpha.9" authors = ["Zcash Foundation "] description = "Shielded transaction scanner for the Zcash blockchain" license = "MIT OR Apache-2.0" @@ -77,11 +77,11 @@ zcash_primitives.workspace = true zcash_address.workspace = true sapling-crypto.workspace = true -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39", features = ["shielded-scan"] } -zebra-state = { path = "../zebra-state", version = "1.0.0-beta.39", features = ["shielded-scan"] } -zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.39", features = ["shielded-scan"] } -zebra-grpc = { path = "../zebra-grpc", version = "0.1.0-alpha.6" } -zebra-rpc = { path = "../zebra-rpc", version = "1.0.0-beta.39" } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40", features = ["shielded-scan"] } +zebra-state = { path = "../zebra-state", version = "1.0.0-beta.40", features = ["shielded-scan"] } +zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.40", features = ["shielded-scan"] } +zebra-grpc = { path = "../zebra-grpc", version = "0.1.0-alpha.7" } +zebra-rpc = { path = "../zebra-rpc", version = "1.0.0-beta.40" } chrono = { version = "0.4.38", default-features = false, features = ["clock", "std", "serde"] } @@ -96,7 +96,7 @@ jubjub = { version = "0.10.0", optional = true } rand = { version = "0.8.5", optional = true } zcash_note_encryption = { version = "0.4.0", optional = true } -zebra-test = { path = "../zebra-test", version = "1.0.0-beta.39", optional = true } +zebra-test = { path = "../zebra-test", version = "1.0.0-beta.40", optional = true } # zebra-scanner binary dependencies tracing-subscriber = { version = "0.3.18", features = ["env-filter"] } @@ -107,7 +107,7 @@ serde_json = "1.0.128" jsonrpc = { version = "0.18.0", optional = true } hex = { version = "0.4.3", optional = true } -zebrad = { path = "../zebrad", version = "1.8.1" } +zebrad = { path = "../zebrad", version = "2.0.0-rc.0" } [dev-dependencies] insta = { version = "1.40.0", features = ["ron", "redactions"] } @@ -125,6 +125,6 @@ zcash_note_encryption = "0.4.0" toml = "0.8.19" tonic = "0.12.3" -zebra-state = { path = "../zebra-state", version = "1.0.0-beta.39", features = ["proptest-impl"] } -zebra-test = { path = "../zebra-test", version = "1.0.0-beta.39" } +zebra-state = { path = "../zebra-state", version = "1.0.0-beta.40", features = ["proptest-impl"] } +zebra-test = { path = "../zebra-test", version = "1.0.0-beta.40" } diff --git a/zebra-script/Cargo.toml b/zebra-script/Cargo.toml index 095e0ed2950..28d748c8eff 100644 --- a/zebra-script/Cargo.toml +++ b/zebra-script/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-script" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" authors = ["Zcash Foundation "] description = "Zebra script verification wrapping zcashd's zcash_script library" license = "MIT OR Apache-2.0" @@ -16,11 +16,11 @@ categories = ["api-bindings", "cryptography::cryptocurrencies"] [dependencies] zcash_script = "0.2.0" -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39" } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40" } thiserror = "1.0.64" [dev-dependencies] hex = "0.4.3" lazy_static = "1.4.0" -zebra-test = { path = "../zebra-test", version = "1.0.0-beta.39" } +zebra-test = { path = "../zebra-test", version = "1.0.0-beta.40" } diff --git a/zebra-state/Cargo.toml b/zebra-state/Cargo.toml index f1776424b13..a3ee910ef11 100644 --- a/zebra-state/Cargo.toml +++ b/zebra-state/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-state" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" authors = ["Zcash Foundation "] description = "State contextual verification and storage code for Zebra" license = "MIT OR Apache-2.0" @@ -77,13 +77,13 @@ tracing = "0.1.39" elasticsearch = { version = "8.5.0-alpha.1", default-features = false, features = ["rustls-tls"], optional = true } serde_json = { version = "1.0.128", package = "serde_json", optional = true } -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39", features = ["async-error"] } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40", features = ["async-error"] } # prod feature progress-bar howudoin = { version = "0.1.2", optional = true } # test feature proptest-impl -zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.39", optional = true } +zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.40", optional = true } proptest = { version = "1.4.0", optional = true } proptest-derive = { version = "0.5.0", optional = true } @@ -108,5 +108,5 @@ jubjub = "0.10.0" tokio = { version = "1.40.0", features = ["full", "tracing", "test-util"] } -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39", features = ["proptest-impl"] } -zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.39" } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40", features = ["proptest-impl"] } +zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.40" } diff --git a/zebra-test/Cargo.toml b/zebra-test/Cargo.toml index 66c2f168284..8cbec5f35ac 100644 --- a/zebra-test/Cargo.toml +++ b/zebra-test/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-test" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" authors = ["Zcash Foundation "] description = "Test harnesses and test vectors for Zebra" license = "MIT OR Apache-2.0" diff --git a/zebra-utils/Cargo.toml b/zebra-utils/Cargo.toml index 66c884d3ced..9e241bd58f7 100644 --- a/zebra-utils/Cargo.toml +++ b/zebra-utils/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "zebra-utils" -version = "1.0.0-beta.39" +version = "1.0.0-beta.40" authors = ["Zcash Foundation "] description = "Developer tools for Zebra maintenance and testing" license = "MIT OR Apache-2.0" @@ -94,11 +94,11 @@ tracing-error = "0.2.0" tracing-subscriber = "0.3.18" thiserror = "1.0.64" -zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.39" } -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39" } +zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.40" } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40" } # These crates are needed for the block-template-to-proposal binary -zebra-rpc = { path = "../zebra-rpc", version = "1.0.0-beta.39", optional = true } +zebra-rpc = { path = "../zebra-rpc", version = "1.0.0-beta.40", optional = true } # These crates are needed for the zebra-checkpoints binary itertools = { version = "0.13.0", optional = true } diff --git a/zebrad/Cargo.toml b/zebrad/Cargo.toml index 8d42e2421ea..6020978c1ad 100644 --- a/zebrad/Cargo.toml +++ b/zebrad/Cargo.toml @@ -1,7 +1,7 @@ [package] # Crate metadata name = "zebrad" -version = "1.9.0" +version = "2.0.0-rc.0" authors = ["Zcash Foundation "] description = "The Zcash Foundation's independent, consensus-compatible implementation of a Zcash node" license = "MIT OR Apache-2.0" @@ -157,15 +157,15 @@ test_sync_past_mandatory_checkpoint_mainnet = [] test_sync_past_mandatory_checkpoint_testnet = [] [dependencies] -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39" } -zebra-consensus = { path = "../zebra-consensus", version = "1.0.0-beta.39" } -zebra-network = { path = "../zebra-network", version = "1.0.0-beta.39" } -zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.39", features = ["rpc-client"] } -zebra-rpc = { path = "../zebra-rpc", version = "1.0.0-beta.39" } -zebra-state = { path = "../zebra-state", version = "1.0.0-beta.39" } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40" } +zebra-consensus = { path = "../zebra-consensus", version = "1.0.0-beta.40" } +zebra-network = { path = "../zebra-network", version = "1.0.0-beta.40" } +zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.40", features = ["rpc-client"] } +zebra-rpc = { path = "../zebra-rpc", version = "1.0.0-beta.40" } +zebra-state = { path = "../zebra-state", version = "1.0.0-beta.40" } # Required for crates.io publishing, but it's only used in tests -zebra-utils = { path = "../zebra-utils", version = "1.0.0-beta.39", optional = true } +zebra-utils = { path = "../zebra-utils", version = "1.0.0-beta.40", optional = true } abscissa_core = "0.7.0" clap = { version = "4.5.18", features = ["cargo"] } @@ -279,13 +279,13 @@ proptest-derive = "0.5.0" # enable span traces and track caller in tests color-eyre = { version = "0.6.3" } -zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.39", features = ["proptest-impl"] } -zebra-consensus = { path = "../zebra-consensus", version = "1.0.0-beta.39", features = ["proptest-impl"] } -zebra-network = { path = "../zebra-network", version = "1.0.0-beta.39", features = ["proptest-impl"] } -zebra-state = { path = "../zebra-state", version = "1.0.0-beta.39", features = ["proptest-impl"] } +zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.40", features = ["proptest-impl"] } +zebra-consensus = { path = "../zebra-consensus", version = "1.0.0-beta.40", features = ["proptest-impl"] } +zebra-network = { path = "../zebra-network", version = "1.0.0-beta.40", features = ["proptest-impl"] } +zebra-state = { path = "../zebra-state", version = "1.0.0-beta.40", features = ["proptest-impl"] } -zebra-test = { path = "../zebra-test", version = "1.0.0-beta.39" } -zebra-grpc = { path = "../zebra-grpc", version = "0.1.0-alpha.6" } +zebra-test = { path = "../zebra-test", version = "1.0.0-beta.40" } +zebra-grpc = { path = "../zebra-grpc", version = "0.1.0-alpha.7" } # Used by the checkpoint generation tests via the zebra-checkpoints feature # (the binaries in this crate won't be built unless their features are enabled). @@ -296,7 +296,7 @@ zebra-grpc = { path = "../zebra-grpc", version = "0.1.0-alpha.6" } # When `-Z bindeps` is stabilised, enable this binary dependency instead: # https://github.com/rust-lang/cargo/issues/9096 # zebra-utils { path = "../zebra-utils", artifact = "bin:zebra-checkpoints" } -zebra-utils = { path = "../zebra-utils", version = "1.0.0-beta.39" } +zebra-utils = { path = "../zebra-utils", version = "1.0.0-beta.40" } [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] } diff --git a/zebrad/src/components/sync/end_of_support.rs b/zebrad/src/components/sync/end_of_support.rs index 553ba2e4b00..1ba3c1863c8 100644 --- a/zebrad/src/components/sync/end_of_support.rs +++ b/zebrad/src/components/sync/end_of_support.rs @@ -13,7 +13,7 @@ use zebra_chain::{ use crate::application::release_version; /// The estimated height that this release will be published. -pub const ESTIMATED_RELEASE_HEIGHT: u32 = 2_626_500; +pub const ESTIMATED_RELEASE_HEIGHT: u32 = 2_678_363; /// The maximum number of days after `ESTIMATED_RELEASE_HEIGHT` where a Zebra server will run /// without halting. @@ -22,8 +22,8 @@ pub const ESTIMATED_RELEASE_HEIGHT: u32 = 2_626_500; /// /// - Zebra will exit with a panic if the current tip height is bigger than the `ESTIMATED_RELEASE_HEIGHT` /// plus this number of days. -/// - Currently set to 14 weeks. -pub const EOS_PANIC_AFTER: u32 = 70; +/// - Currently set to 5 weeks to end support before Mainnet Nu6 activation at block [`2_726_400`](https://zips.z.cash/zip-0253). +pub const EOS_PANIC_AFTER: u32 = 35; /// The number of days before the end of support where Zebra will display warnings. pub const EOS_WARN_AFTER: u32 = EOS_PANIC_AFTER - 14;