6.1 KiB
Notable changes
Deprecation of fetch-params.sh
The fetch-params.sh
script (also zcash-fetch-params
) is now deprecated. The
zcashd
binary now bundles zk-SNARK parameters directly and so parameters do not
need to be downloaded or stored separately. The script will now do nothing but
state that it is deprecated; it will be removed in a future release.
Previously, parameters were stored by default in these locations:
~/.zcash-params
(on Linux); or~/Library/Application Support/ZcashParams
(on Mac); orC:\Users\Username\AppData\Roaming\ZcashParams
(on Windows)
Unless you need to generate transactions using the deprecated Sprout shielded
pool, you can delete the parameter files stored in these directories to save
space as they are no longer read or used by zcashd
. If you do wish to use the
Sprout pool, you will need the sprout-groth16.params
file in the
aforementioned directory. This file is currently available for download
here.
Mempool metrics
zcashd
now reports the following new metrics when -prometheusport
is set:
- (gauge)
zcash.mempool.actions.unpaid { "bk" = ["< 0.2", "< 0.4", "< 0.6", "< 0.8", "< 1"] }
- (gauge)
zcash.mempool.actions.paid
- (gauge)
zcash.mempool.size.weighted { "bk" = ["< 1", "1", "> 1", "> 2", "> 3"] }
The zcash.mempool.actions
metrics count the number of logical actions across
the transactions in the mempool, while zcash.mempool.size.weighted
is a
weight-bucketed version of the zcash.mempool.size.bytes
metric.
The ZIP 317 weight ratio of a transaction is used to bucket its
logical actions and byte size. A weight ratio of at least 1 means that the
transaction's fee is at least the ZIP 317 conventional fee, and all of its
logical actions are considered "paid". A weight ratio lower than 1 corresponds
to the fraction of the transaction's logical actions that are "paid". The
remaining fraction (i.e. 1 - weight ratio) are subject to the unpaid action
limit that miners configure for their blocks with -blockunpaidactionlimit
.
Changelog
Daira Emma Hopwood (2): wallet_listreceived.py: fix an assertion message and remove unnecessary use of LEGACY_DEFAULT_FEE. Update ed25519-zebra to 4.0.0. This deduplicates sha2, rand-core, block-buffer, digest, and ahash. (It adds duplications for hashbrown and libm which are less important.)
Daira Hopwood (1): Ensure that the panic when Sprout parameters cannot be loaded says how to fix it by downloading them.
Elijah Hampton (1): Updates getblockcount help message to the appropriate message.
Jack Grigg (53):
CI: Update apt
before installing build dependencies
CI: De-duplicate logic to get the number of available processing cores
CI: Use hw.logicalcpu
instead of hw.ncpu
on macOS
Move mempool metrics updates into a CTxMemPool::UpdateMetrics
method
metrics: Track mempool actions and size bucketed by weight
contrib: Update Grafana dashboard to show mempool composition
CI: Add a lint that checks for headers missing from makefiles
Retroactively use Rust to decrypt shielded coinbase before soft fork
Remove now-unused C++ Sapling note encryption logic
test: Skip WalletTests.WalletNetworkSerialization
Rename reject reason for invalid shielded coinbase ciphertexts
test: Set -limitdescendantcount
to match viable iteration limit
qa: Migrate to cargo-vet 0.8
qa: Remove audit policies for crates we no longer patch
qa: Replace Windows crate audits with a trust policy for Microsoft
depends: native_ccache 4.8.2
depends: cxx 1.0.97
cargo update
CI: Add cargo deny check licenses
job
depends: tl_expected 1.1.0
cargo update again
Use cxx::bridge
for Sprout proofs
Use cxx::bridge
for zcash_history
Use cxx::bridge
for initialization functions
Use cxx::bridge
to load ZKP parameters
Use cxx::bridge
for Sapling specification components
Remove unused Sapling logic
Use cxx::bridge
for Sapling ZIP 32 wrappers
Use cxx::bridge
for getrandom
rust: Rename modules that no longer contain raw FFI functions
depends: libsodium 1.0.19
depends: utfcpp 3.2.4
depends: native_ccache 4.8.3
depends: Boost 1.83.0
depends: native_cmake 3.27.4
qa: Bump postponed dependencies
qa: cargo vet prune
cargo update
depends: cxx 1.0.107
depends: native_cmake 3.27.5
qa: Postpone Clang and Rust updates
depends: native_cmake 3.27.6
qa: Replace cargo vet
ECC self-audits with trust declarations
rust: Upgrade Zcash Rust crates
Remove CentOS 8 from CI builder files
doc: Update release notes for 5.7.0
make-release.py: Versioning changes for 5.7.0-rc1.
make-release.py: Updated manpages for 5.7.0-rc1.
make-release.py: Updated release notes and changelog for 5.7.0-rc1.
make-release.py: Updated book for 5.7.0-rc1.
depends: utfcpp 3.2.5
make-release.py: Versioning changes for 5.7.0.
make-release.py: Updated manpages for 5.7.0.
Kris Nuttycombe (4): Update network upgrade golden tests for serialization to include nu5. Make a few small improvements to the release process doc. Remove audit claim for allocator-api2 Fix description of transaction weight ratio in v5.7.0 release notes.
Marius Kjærstad (1): New checkpoint at block 2200000 for mainnet
Sean Bowe (5):
Bundle the Sprout (Groth16) verification key in librustzcash.
Bundle the Sapling zk-SNARK parameters using the wagyu-zcash-parameters
crate.
Deprecate the fetch-params.sh
script.
cargo fmt
Hash the Sprout parameter file during proving before deserialization.
Yasser (1): Update ZCASH_SIGNING_KEY_ID in Dockerfile
ebfull (1): Update zcutil/fetch-params.sh