Auto merge of #4995 - str4d:release-notes-4.3.0, r=str4d
Fill out release notes for v4.3.0
This commit is contained in:
commit
6affd6c8e4
|
@ -4,6 +4,23 @@ release-notes at release time)
|
|||
Notable changes
|
||||
===============
|
||||
|
||||
Reduce download traffic
|
||||
-----------------------
|
||||
|
||||
We have made several changes to reduce the amount of data downloaded by `zcashd`
|
||||
during initial block download (IBD):
|
||||
|
||||
- Significant time and bandwidth is spent in issuing `getheaders` P2P requests.
|
||||
This results in noticeable bandwidth usage due to the large size of Zcash
|
||||
block headers.
|
||||
|
||||
We now eliminate redundant requests in cases where we already know the last
|
||||
header in the message. This optimization is enabled by default, but can be
|
||||
disabled by setting the config option `-no-optimize-getheaders`.
|
||||
|
||||
- Transactions in the mempool are no longer downloaded during IBD (`zcashd` will
|
||||
only request block data).
|
||||
|
||||
Reduce upload traffic
|
||||
---------------------
|
||||
|
||||
|
@ -24,4 +41,48 @@ Whitelisted peers will never be disconnected, although their traffic counts for
|
|||
calculating the target.
|
||||
|
||||
A more detailed documentation about keeping traffic low can be found in
|
||||
[/doc/reducetraffic.md](/doc/reducetraffic.md).
|
||||
[/doc/reduce-traffic.md](/doc/reduce-traffic.md).
|
||||
|
||||
`libzcashconsensus` replaced by `libzcash_script`
|
||||
-------------------------------------------------
|
||||
|
||||
The `libzcashconsensus` library inherited from upstream has been unusable since
|
||||
the Overwinter network upgrade in 2018. We made changes to signature digests
|
||||
similar to those made in Bitcoin's SegWit, which required additional per-input
|
||||
data that could not be added to the existing APIs without breaking backwards
|
||||
compatibility.
|
||||
|
||||
Additionally, it has become increasingly inaccurately named; it only covers
|
||||
(Zcash's subset of) the Bitcoin scripting system, and not the myriad of other
|
||||
consensus changes: in particular, Zcash's shielded pools.
|
||||
|
||||
We have now renamed the library to `libzcash_script`, and reworked it to instead
|
||||
focus on transparent script verification:
|
||||
|
||||
- The script verification APIs are altered to take `consensusBranchId` and
|
||||
`amount` fields.
|
||||
- New precomputing APIs have been added that enable multiple transparent inputs
|
||||
on a single transaction to be verified more efficiently.
|
||||
- Equihash has been removed from the compiled library. The canonical Equihash
|
||||
validator is the [`equihash` Rust crate](https://crates.io/crates/equihash)
|
||||
since v3.1.0.
|
||||
|
||||
The C++ library can be built by compiling `zcashd` with the environment variable
|
||||
`CONFIGURE_FLAGS=--with-libs`. It is also wrapped as the
|
||||
[`zcash_script` Rust crate](https://crates.io/crates/zcash_script)
|
||||
(maintained by the Zcash Foundation for use in `zebrad`).
|
||||
|
||||
Other P2P Changes
|
||||
-----------------
|
||||
|
||||
The list of banned peers is now stored on disk rather than in memory. Restarting
|
||||
`zcashd` will no longer clear out the list of banned peers; instead the
|
||||
`clearbanned` RPC call can be used to manually clear the list. The `setban` RPC
|
||||
call can also be used to manually ban or unban a peer.
|
||||
|
||||
Build system updates
|
||||
--------------------
|
||||
|
||||
- We now build with Clang 11 and Rust 1.49.
|
||||
- We have downgraded Boost to 1.74 to mitigate `statx`-related breakage in some
|
||||
container environments.
|
||||
|
|
Loading…
Reference in New Issue