Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

merge queue: embarking main (5ff2563) and #8655 together #8661

Closed
wants to merge 9 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/scripts/release-crates-dry-run.sh
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ fi
cargo release version --verbose --execute --no-confirm --allow-branch '*' --workspace --exclude zebrad --exclude zebra-scan --exclude zebra-grpc beta

# 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.7
cargo release version --verbose --execute --no-confirm --allow-branch '*' --package zebra-grpc 0.1.0-alpha.5
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

# Update zebrad:
cargo release version --verbose --execute --no-confirm --allow-branch '*' --package zebrad patch
Expand Down
54 changes: 41 additions & 13 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,25 +5,53 @@ 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.X.X - XXXX-XX-XX
## [Zebra 1.8.0](https://github.com/ZcashFoundation/zebra/releases/tag/v1.8.0) - 2024-07-02

### Changed

- We realized that a longer than `zcashd` end of support could be problematic in
some cases so we reverted back from 20 to 16 weeks
([#8530](https://github.com/ZcashFoundation/zebra/pull/8530))
- Zebra now uses a default unpaid actions limit of 0, dropping transactions with
any unpaid actions from the mempool and excluding them when selecting
transactions from the mempool during block template construction.
- The `zebrad` binary no longer contains the scanner of shielded transactions.
This means `zebrad` no longer contains users' viewing keys.
- We're no longer using general conditional compilation attributes for `tor`,
but only feature flags instead.
- Fixed a bug with trailing characters in the openapi spec method descriptions ([#8597](https://github.com/ZcashFoundation/zebra/pull/8597))
- Added default constructions for several RPC method responses ([#8616](https://github.com/ZcashFoundation/zebra/pull/8616))
- Added Windows to the list of supported platforms in Tier 2 ([#8637](https://github.com/ZcashFoundation/zebra/pull/8637))
- Zebra now drops transactions with unpaid actions in block templates and from the mempool.
- Support for custom Testnets and Regtest is greatly enhanced.
- Windows is now back in the second tier of supported platforms.
- The end-of-support time interval is set to match `zcashd`'s 16 weeks.
- The RPC serialization of empty treestates matches `zcashd`.

### Added

- Added a page to the Zebra book describing custom Testnets ([#8636](https://github.com/ZcashFoundation/zebra/pull/8636))
- Add an init function for a standalone `ReadStateService` ([#8595](https://github.com/ZcashFoundation/zebra/pull/8595))
- Allow configuring more parameters on custom Testnets and an NU5 activation height on Regtest ([#8477](https://github.com/ZcashFoundation/zebra/pull/8477), [#8518](https://github.com/ZcashFoundation/zebra/pull/8518), [#8524](https://github.com/ZcashFoundation/zebra/pull/8524), [#8528](https://github.com/ZcashFoundation/zebra/pull/8528), [#8636](https://github.com/ZcashFoundation/zebra/pull/8636))
- Add default constructions for several RPC method responses ([#8616](https://github.com/ZcashFoundation/zebra/pull/8616), [#8505](https://github.com/ZcashFoundation/zebra/pull/8505))
- Support constructing Canopy proposal blocks from block templates ([#8505](https://github.com/ZcashFoundation/zebra/pull/8505))

#### Docs

- Document custom Testnets, Regtest and how they compare to Mainnet and the default Testnet in the Zebra book ([#8526](https://github.com/ZcashFoundation/zebra/pull/8526), [#8636](https://github.com/ZcashFoundation/zebra/pull/8636))

### Changed

- Use a default unpaid action limit of 0 so that transactions with unpaid actions are excluded from the mempool and block templates by default ([#8638](https://github.com/ZcashFoundation/zebra/pull/8638))
- Lower the mandatory checkpoint height from immediately above the ZIP-212 grace period to immediately below Canopy activation ([#8629](https://github.com/ZcashFoundation/zebra/pull/8629))
- Use the new `zcash_script` callback API in `zebra-script`, allowing Zebra's ECC dependencies to be upgraded independently of `zcash_script` and `zcashd` ([#8566](https://github.com/ZcashFoundation/zebra/pull/8566))
- Put Windows in Tier 2 of supported platforms ([#8637](https://github.com/ZcashFoundation/zebra/pull/8637))
- Remove experimental support for starting the `zebra-scan` in the `zebrad` process as a step towards moving the scanner to its own process ([#8594](https://github.com/ZcashFoundation/zebra/pull/8594))
- Reduce the end of support time from 20 weeks to 16 weeks ([#8530](https://github.com/ZcashFoundation/zebra/pull/8530))
- Restore parts of the experimental `internal-miner` feature for use on Regtest ([#8506](https://github.com/ZcashFoundation/zebra/pull/8506))

### Fixed

- Allow square brackets in network config listen addr and external addr without explicitly configuring a port in the listen addr ([#8504](https://github.com/ZcashFoundation/zebra/pull/8504))
- Fix general conditional compilation attributes ([#8602](https://github.com/ZcashFoundation/zebra/pull/8602))
- Update `median_timespan()` method to align with zcashd implementation ([#8491](https://github.com/ZcashFoundation/zebra/pull/8491))
- Allow custom Testnets to make peer connections ([#8528](https://github.com/ZcashFoundation/zebra/pull/8528))
- Refactor and simplify the serialization of empty treestates to fix an incorrect serialization of empty note commitment trees for RPCs ([#8533](https://github.com/ZcashFoundation/zebra/pull/8533))
- Fix port conflict issue in some tests and re-enable those tests on Windows where those issues were especially problematic ([#8624](https://github.com/ZcashFoundation/zebra/pull/8624))
- Fix a bug with trailing characters in the OpenAPI spec method descriptions ([#8597](https://github.com/ZcashFoundation/zebra/pull/8597))

### Contributors

Thank you to everyone who contributed to this release, we couldn't make Zebra without you:
@arya2, @conradoplg, @gustavovalverde, @oxarbitrage and @upbqdn

## [Zebra 1.7.0](https://github.com/ZcashFoundation/zebra/releases/tag/v1.7.0) - 2024-05-07

Expand Down
28 changes: 14 additions & 14 deletions Cargo.lock
Original file line number Diff line number Diff line change
Expand Up @@ -4768,7 +4768,7 @@ dependencies = [

[[package]]
name = "tower-batch-control"
version = "0.2.41-beta.13"
version = "0.2.41-beta.14"
dependencies = [
"color-eyre",
"ed25519-zebra",
Expand All @@ -4791,7 +4791,7 @@ dependencies = [

[[package]]
name = "tower-fallback"
version = "0.2.41-beta.13"
version = "0.2.41-beta.14"
dependencies = [
"futures-core",
"pin-project",
Expand Down Expand Up @@ -5817,7 +5817,7 @@ dependencies = [

[[package]]
name = "zebra-chain"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
dependencies = [
"bitflags 2.6.0",
"bitflags-serde-legacy",
Expand Down Expand Up @@ -5880,7 +5880,7 @@ dependencies = [

[[package]]
name = "zebra-consensus"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
dependencies = [
"bellman",
"blake2b_simd",
Expand Down Expand Up @@ -5926,7 +5926,7 @@ dependencies = [

[[package]]
name = "zebra-grpc"
version = "0.1.0-alpha.4"
version = "0.1.0-alpha.5"
dependencies = [
"color-eyre",
"futures-util",
Expand All @@ -5948,7 +5948,7 @@ dependencies = [

[[package]]
name = "zebra-network"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
dependencies = [
"bitflags 2.6.0",
"byteorder",
Expand Down Expand Up @@ -5989,7 +5989,7 @@ dependencies = [

[[package]]
name = "zebra-node-services"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
dependencies = [
"color-eyre",
"jsonrpc-core",
Expand All @@ -6002,7 +6002,7 @@ dependencies = [

[[package]]
name = "zebra-rpc"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
dependencies = [
"chrono",
"futures",
Expand Down Expand Up @@ -6034,7 +6034,7 @@ dependencies = [

[[package]]
name = "zebra-scan"
version = "0.1.0-alpha.6"
version = "0.1.0-alpha.7"
dependencies = [
"bls12_381",
"chrono",
Expand Down Expand Up @@ -6069,7 +6069,7 @@ dependencies = [

[[package]]
name = "zebra-script"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
dependencies = [
"hex",
"lazy_static",
Expand All @@ -6081,7 +6081,7 @@ dependencies = [

[[package]]
name = "zebra-state"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
dependencies = [
"bincode",
"chrono",
Expand Down Expand Up @@ -6126,7 +6126,7 @@ dependencies = [

[[package]]
name = "zebra-test"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
dependencies = [
"color-eyre",
"futures",
Expand Down Expand Up @@ -6154,7 +6154,7 @@ dependencies = [

[[package]]
name = "zebra-utils"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
dependencies = [
"color-eyre",
"hex",
Expand Down Expand Up @@ -6185,7 +6185,7 @@ dependencies = [

[[package]]
name = "zebrad"
version = "1.7.0"
version = "1.8.0"
dependencies = [
"abscissa_core",
"atty",
Expand Down
2 changes: 1 addition & 1 deletion book/src/user/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ docker run -d --platform linux/amd64 \
### Build it locally

```shell
git clone --depth 1 --branch v1.7.0 https://github.com/ZcashFoundation/zebra.git
git clone --depth 1 --branch v1.8.0 https://github.com/ZcashFoundation/zebra.git
docker build --file docker/Dockerfile --target runtime --tag zebra:local .
docker run --detach zebra:local
```
Expand Down
4 changes: 2 additions & 2 deletions book/src/user/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ To compile Zebra directly from GitHub, or from a GitHub release source archive:
```sh
git clone https://github.com/ZcashFoundation/zebra.git
cd zebra
git checkout v1.7.0
git checkout v1.8.0
```

3. Build and Run `zebrad`
Expand All @@ -89,7 +89,7 @@ target/release/zebrad start
### Compiling from git using cargo install

```sh
cargo install --git https://github.com/ZcashFoundation/zebra --tag v1.7.0 zebrad
cargo install --git https://github.com/ZcashFoundation/zebra --tag v1.8.0 zebrad
```

### Compiling on ARM
Expand Down
6 changes: 3 additions & 3 deletions tower-batch-control/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "tower-batch-control"
version = "0.2.41-beta.13"
version = "0.2.41-beta.14"
authors = ["Zcash Foundation <[email protected]>", "Tower Maintainers <[email protected]>"]
description = "Tower middleware for batch request processing"
# # Legal
Expand Down Expand Up @@ -43,10 +43,10 @@ rand = "0.8.5"

tokio = { version = "1.37.0", features = ["full", "tracing", "test-util"] }
tokio-test = "0.4.4"
tower-fallback = { path = "../tower-fallback/", version = "0.2.41-beta.13" }
tower-fallback = { path = "../tower-fallback/", version = "0.2.41-beta.14" }
tower-test = "0.4.0"

zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.37" }
zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.38" }

[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tokio_unstable)'] }
4 changes: 2 additions & 2 deletions tower-fallback/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "tower-fallback"
version = "0.2.41-beta.13"
version = "0.2.41-beta.14"
authors = ["Zcash Foundation <[email protected]>"]
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"
Expand All @@ -24,4 +24,4 @@ tracing = "0.1.39"
[dev-dependencies]
tokio = { version = "1.37.0", features = ["full", "tracing", "test-util"] }

zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.37" }
zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.38" }
6 changes: 3 additions & 3 deletions zebra-chain/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "zebra-chain"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
authors = ["Zcash Foundation <[email protected]>"]
description = "Core Zcash data structures"
license = "MIT OR Apache-2.0"
Expand Down Expand Up @@ -143,7 +143,7 @@ proptest-derive = { version = "0.4.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.37", optional = true }
zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.38", optional = true }

[dev-dependencies]
# Benchmarks
Expand All @@ -166,7 +166,7 @@ rand_chacha = "0.3.1"

tokio = { version = "1.37.0", features = ["full", "tracing", "test-util"] }

zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.37" }
zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.38" }

[[bench]]
name = "block"
Expand Down
20 changes: 10 additions & 10 deletions zebra-consensus/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "zebra-consensus"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
authors = ["Zcash Foundation <[email protected]>"]
description = "Implementation of Zcash consensus checks"
license = "MIT OR Apache-2.0"
Expand Down Expand Up @@ -63,13 +63,13 @@ orchard = "0.8.0"
zcash_proofs = { version = "0.15.0", features = ["multicore" ] }
wagyu-zcash-parameters = "0.2.0"

tower-fallback = { path = "../tower-fallback/", version = "0.2.41-beta.13" }
tower-batch-control = { path = "../tower-batch-control/", version = "0.2.41-beta.13" }
tower-fallback = { path = "../tower-fallback/", version = "0.2.41-beta.14" }
tower-batch-control = { path = "../tower-batch-control/", version = "0.2.41-beta.14" }

zebra-script = { path = "../zebra-script", version = "1.0.0-beta.37" }
zebra-state = { path = "../zebra-state", version = "1.0.0-beta.37" }
zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.37" }
zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.37" }
zebra-script = { path = "../zebra-script", version = "1.0.0-beta.38" }
zebra-state = { path = "../zebra-state", version = "1.0.0-beta.38" }
zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.38" }
zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.38" }

# prod feature progress-bar
howudoin = { version = "0.1.2", optional = true }
Expand All @@ -94,6 +94,6 @@ tokio = { version = "1.37.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.37", features = ["proptest-impl"] }
zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.37", features = ["proptest-impl"] }
zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.37" }
zebra-state = { path = "../zebra-state", version = "1.0.0-beta.38", features = ["proptest-impl"] }
zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.38", features = ["proptest-impl"] }
zebra-test = { path = "../zebra-test/", version = "1.0.0-beta.38" }
6 changes: 3 additions & 3 deletions zebra-grpc/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "zebra-grpc"
version = "0.1.0-alpha.4"
version = "0.1.0-alpha.5"
authors = ["Zcash Foundation <[email protected]>"]
description = "Zebra gRPC interface"
license = "MIT OR Apache-2.0"
Expand Down Expand Up @@ -28,8 +28,8 @@ color-eyre = "0.6.3"

zcash_primitives = { version = "0.15.0" }

zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.37", features = ["shielded-scan"] }
zebra-chain = { path = "../zebra-chain" , version = "1.0.0-beta.37" }
zebra-node-services = { path = "../zebra-node-services", version = "1.0.0-beta.38", features = ["shielded-scan"] }
zebra-chain = { path = "../zebra-chain" , version = "1.0.0-beta.38" }

[build-dependencies]
tonic-build = "0.11.0"
Expand Down
4 changes: 2 additions & 2 deletions zebra-network/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "zebra-network"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
authors = ["Zcash Foundation <[email protected]>", "Tower Maintainers <[email protected]>"]
description = "Networking code for Zebra"
# # Legal
Expand Down Expand Up @@ -83,7 +83,7 @@ howudoin = { version = "0.1.2", optional = true }
proptest = { version = "1.4.0", optional = true }
proptest-derive = { version = "0.4.0", optional = true }

zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.37", features = ["async-error"] }
zebra-chain = { path = "../zebra-chain", version = "1.0.0-beta.38", features = ["async-error"] }

[dev-dependencies]
proptest = "1.4.0"
Expand Down
4 changes: 2 additions & 2 deletions zebra-node-services/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "zebra-node-services"
version = "1.0.0-beta.37"
version = "1.0.0-beta.38"
authors = ["Zcash Foundation <[email protected]>"]
description = "The interfaces of some Zebra node services"
license = "MIT OR Apache-2.0"
Expand Down Expand Up @@ -37,7 +37,7 @@ rpc-client = [
shielded-scan = ["tokio"]

[dependencies]
zebra-chain = { path = "../zebra-chain" , version = "1.0.0-beta.37" }
zebra-chain = { path = "../zebra-chain" , version = "1.0.0-beta.38" }

# Optional dependencies

Expand Down
Loading
Loading