commit
3ffa99f1ad
|
@ -1,4 +1,4 @@
|
||||||
Zcash 5.4.0-rc4
|
Zcash 5.4.0
|
||||||
<img align="right" width="120" height="80" src="doc/imgs/logo.png">
|
<img align="right" width="120" height="80" src="doc/imgs/logo.png">
|
||||||
===========
|
===========
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ AC_PREREQ([2.60])
|
||||||
define(_CLIENT_VERSION_MAJOR, 5)
|
define(_CLIENT_VERSION_MAJOR, 5)
|
||||||
define(_CLIENT_VERSION_MINOR, 4)
|
define(_CLIENT_VERSION_MINOR, 4)
|
||||||
define(_CLIENT_VERSION_REVISION, 0)
|
define(_CLIENT_VERSION_REVISION, 0)
|
||||||
define(_CLIENT_VERSION_BUILD, 28)
|
define(_CLIENT_VERSION_BUILD, 50)
|
||||||
define(_ZC_BUILD_VAL, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, m4_incr(_CLIENT_VERSION_BUILD), m4_eval(_CLIENT_VERSION_BUILD < 50), 1, m4_eval(_CLIENT_VERSION_BUILD - 24), m4_eval(_CLIENT_VERSION_BUILD == 50), 1, , m4_eval(_CLIENT_VERSION_BUILD - 50)))
|
define(_ZC_BUILD_VAL, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, m4_incr(_CLIENT_VERSION_BUILD), m4_eval(_CLIENT_VERSION_BUILD < 50), 1, m4_eval(_CLIENT_VERSION_BUILD - 24), m4_eval(_CLIENT_VERSION_BUILD == 50), 1, , m4_eval(_CLIENT_VERSION_BUILD - 50)))
|
||||||
define(_CLIENT_VERSION_SUFFIX, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, _CLIENT_VERSION_REVISION-beta$1, m4_eval(_CLIENT_VERSION_BUILD < 50), 1, _CLIENT_VERSION_REVISION-rc$1, m4_eval(_CLIENT_VERSION_BUILD == 50), 1, _CLIENT_VERSION_REVISION, _CLIENT_VERSION_REVISION-$1)))
|
define(_CLIENT_VERSION_SUFFIX, m4_if(m4_eval(_CLIENT_VERSION_BUILD < 25), 1, _CLIENT_VERSION_REVISION-beta$1, m4_eval(_CLIENT_VERSION_BUILD < 50), 1, _CLIENT_VERSION_REVISION-rc$1, m4_eval(_CLIENT_VERSION_BUILD == 50), 1, _CLIENT_VERSION_REVISION, _CLIENT_VERSION_REVISION-$1)))
|
||||||
define(_CLIENT_VERSION_IS_RELEASE, true)
|
define(_CLIENT_VERSION_IS_RELEASE, true)
|
||||||
|
|
|
@ -1,3 +1,9 @@
|
||||||
|
zcash (5.4.0) stable; urgency=medium
|
||||||
|
|
||||||
|
* 5.4.0 release.
|
||||||
|
|
||||||
|
-- Electric Coin Company <team@electriccoin.co> Wed, 08 Feb 2023 17:21:10 +0000
|
||||||
|
|
||||||
zcash (5.4.0~rc4) stable; urgency=medium
|
zcash (5.4.0~rc4) stable; urgency=medium
|
||||||
|
|
||||||
* 5.4.0-rc4 release.
|
* 5.4.0-rc4 release.
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
---
|
---
|
||||||
name: "zcash-5.4.0-rc4"
|
name: "zcash-5.4.0"
|
||||||
enable_cache: true
|
enable_cache: true
|
||||||
distro: "debian"
|
distro: "debian"
|
||||||
suites:
|
suites:
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
---
|
---
|
||||||
name: "zcash-5.4.0-rc4"
|
name: "zcash-5.4.0"
|
||||||
enable_cache: true
|
enable_cache: true
|
||||||
distro: "debian"
|
distro: "debian"
|
||||||
suites:
|
suites:
|
||||||
|
|
|
@ -1,70 +1,70 @@
|
||||||
Zcash Contributors
|
Zcash Contributors
|
||||||
==================
|
==================
|
||||||
|
|
||||||
Jack Grigg (1244)
|
Jack Grigg (1296)
|
||||||
Kris Nuttycombe (585)
|
Kris Nuttycombe (618)
|
||||||
Simon Liu (460)
|
Simon Liu (460)
|
||||||
Sean Bowe (389)
|
Sean Bowe (389)
|
||||||
Daira Hopwood (369)
|
Daira Hopwood (376)
|
||||||
Eirik Ogilvie-Wigley (216)
|
Eirik Ogilvie-Wigley (216)
|
||||||
Wladimir J. van der Laan (158)
|
Wladimir J. van der Laan (159)
|
||||||
Pieter Wuille (143)
|
Pieter Wuille (143)
|
||||||
Alfredo Garcia (119)
|
Alfredo Garcia (120)
|
||||||
Taylor Hornby (118)
|
Taylor Hornby (118)
|
||||||
Marshall Gaucher (116)
|
Marshall Gaucher (118)
|
||||||
Ying Tong Lai (90)
|
Ying Tong Lai (90)
|
||||||
|
Marco Falke (90)
|
||||||
Jonas Schnelli (90)
|
Jonas Schnelli (90)
|
||||||
Jay Graber (89)
|
Jay Graber (89)
|
||||||
Larry Ruane (88)
|
Larry Ruane (88)
|
||||||
Marco Falke (86)
|
Greg Pfeil (83)
|
||||||
Cory Fields (78)
|
Cory Fields (78)
|
||||||
sasha (62)
|
sasha (62)
|
||||||
Matt Corallo (60)
|
Matt Corallo (60)
|
||||||
Greg Pfeil (60)
|
|
||||||
Nathan Wilcox (57)
|
Nathan Wilcox (57)
|
||||||
practicalswift (42)
|
practicalswift (42)
|
||||||
|
Dimitris Apostolou (40)
|
||||||
Kevin Gallagher (38)
|
Kevin Gallagher (38)
|
||||||
Dimitris Apostolou (38)
|
|
||||||
fanquake (36)
|
fanquake (36)
|
||||||
|
Carl Dong (30)
|
||||||
Luke Dashjr (26)
|
Luke Dashjr (26)
|
||||||
Carl Dong (26)
|
|
||||||
Gregory Maxwell (24)
|
Gregory Maxwell (24)
|
||||||
John Newbery (23)
|
John Newbery (23)
|
||||||
Jorge Timón (22)
|
Jorge Timón (22)
|
||||||
furszy (18)
|
furszy (18)
|
||||||
Jonathan "Duke" Leto (18)
|
Jonathan "Duke" Leto (18)
|
||||||
syd (16)
|
syd (16)
|
||||||
|
Suhas Daftuar (16)
|
||||||
Patick Strateman (16)
|
Patick Strateman (16)
|
||||||
|
Marius Kjærstad (15)
|
||||||
Charlie O'Keefe (15)
|
Charlie O'Keefe (15)
|
||||||
avnish (14)
|
avnish (14)
|
||||||
Per Grön (14)
|
Per Grön (14)
|
||||||
Suhas Daftuar (13)
|
Alex Morcos (14)
|
||||||
Benjamin Winston (13)
|
Benjamin Winston (13)
|
||||||
Steven Smith (12)
|
Steven Smith (12)
|
||||||
Pavel Janík (12)
|
Pavel Janík (12)
|
||||||
Patrick Strateman (12)
|
Patrick Strateman (12)
|
||||||
Jeremy Rubin (12)
|
Jeremy Rubin (12)
|
||||||
Ariel Gabizon (12)
|
Ariel Gabizon (12)
|
||||||
|
Russell Yanofsky (11)
|
||||||
Paige Peterson (11)
|
Paige Peterson (11)
|
||||||
Kaz Wesley (11)
|
Kaz Wesley (11)
|
||||||
João Barbosa (11)
|
João Barbosa (11)
|
||||||
Alex Morcos (11)
|
|
||||||
Philip Kaufmann (10)
|
Philip Kaufmann (10)
|
||||||
Peter Todd (10)
|
Peter Todd (10)
|
||||||
Marius Kjærstad (10)
|
|
||||||
ying tong (9)
|
ying tong (9)
|
||||||
teor (9)
|
teor (9)
|
||||||
nomnombtc (9)
|
nomnombtc (9)
|
||||||
Zancas Wilcox (9)
|
Zancas Wilcox (9)
|
||||||
Russell Yanofsky (9)
|
|
||||||
kozyilmaz (8)
|
kozyilmaz (8)
|
||||||
Jeff Garzik (8)
|
Jeff Garzik (8)
|
||||||
|
James O'Beirne (8)
|
||||||
Chun Kuan Lee (8)
|
Chun Kuan Lee (8)
|
||||||
Ben Wilson (8)
|
Ben Wilson (8)
|
||||||
Karl-Johan Alm (7)
|
Karl-Johan Alm (7)
|
||||||
Hennadii Stepanov (7)
|
Hennadii Stepanov (7)
|
||||||
Alex Wied (7)
|
Alex Wied (7)
|
||||||
James O'Beirne (6)
|
|
||||||
David Mercer (6)
|
David Mercer (6)
|
||||||
Daniel Kraft (6)
|
Daniel Kraft (6)
|
||||||
Daniel Cousens (6)
|
Daniel Cousens (6)
|
||||||
|
@ -126,6 +126,7 @@ Mustafa (2)
|
||||||
Miodrag Popović (2)
|
Miodrag Popović (2)
|
||||||
Matthew King (2)
|
Matthew King (2)
|
||||||
Mary Moore-Simmons (2)
|
Mary Moore-Simmons (2)
|
||||||
|
Mark Friedenbach (2)
|
||||||
Marek (2)
|
Marek (2)
|
||||||
Joe Turgeon (2)
|
Joe Turgeon (2)
|
||||||
Jesse Cohen (2)
|
Jesse Cohen (2)
|
||||||
|
@ -200,10 +201,10 @@ Nick (1)
|
||||||
Nathaniel Mahieu (1)
|
Nathaniel Mahieu (1)
|
||||||
Murilo Santana (1)
|
Murilo Santana (1)
|
||||||
Miles Manley (1)
|
Miles Manley (1)
|
||||||
|
Michał Janiszewski (1)
|
||||||
Maxwell Gubler (1)
|
Maxwell Gubler (1)
|
||||||
Matt Quinn (1)
|
Matt Quinn (1)
|
||||||
Marko Bencun (1)
|
Marko Bencun (1)
|
||||||
Mark Friedenbach (1)
|
|
||||||
Luv Khemani (1)
|
Luv Khemani (1)
|
||||||
Louis Nyffenegger (1)
|
Louis Nyffenegger (1)
|
||||||
LongShao007 (1)
|
LongShao007 (1)
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
|
||||||
.TH ZCASH-CLI "1" "February 2023" "zcash-cli v5.4.0-rc4" "User Commands"
|
.TH ZCASH-CLI "1" "February 2023" "zcash-cli v5.4.0" "User Commands"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
zcash-cli \- manual page for zcash-cli v5.4.0-rc4
|
zcash-cli \- manual page for zcash-cli v5.4.0
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
Zcash RPC client version v5.4.0\-rc4
|
Zcash RPC client version v5.4.0
|
||||||
.PP
|
.PP
|
||||||
In order to ensure you are adequately protecting your privacy when using Zcash,
|
In order to ensure you are adequately protecting your privacy when using Zcash,
|
||||||
please see <https://z.cash/support/security/>.
|
please see <https://z.cash/support/security/>.
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
|
||||||
.TH ZCASH-TX "1" "February 2023" "zcash-tx v5.4.0-rc4" "User Commands"
|
.TH ZCASH-TX "1" "February 2023" "zcash-tx v5.4.0" "User Commands"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
zcash-tx \- manual page for zcash-tx v5.4.0-rc4
|
zcash-tx \- manual page for zcash-tx v5.4.0
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
Zcash zcash\-tx utility version v5.4.0\-rc4
|
Zcash zcash\-tx utility version v5.4.0
|
||||||
.SS "Usage:"
|
.SS "Usage:"
|
||||||
.TP
|
.TP
|
||||||
zcash\-tx [options] <hex\-tx> [commands]
|
zcash\-tx [options] <hex\-tx> [commands]
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
|
||||||
.TH ZCASHD-WALLET-TOOL "1" "February 2023" "zcashd-wallet-tool v5.4.0-rc4" "User Commands"
|
.TH ZCASHD-WALLET-TOOL "1" "February 2023" "zcashd-wallet-tool v5.4.0" "User Commands"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
zcashd-wallet-tool \- manual page for zcashd-wallet-tool v5.4.0-rc4
|
zcashd-wallet-tool \- manual page for zcashd-wallet-tool v5.4.0
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.B zcashd-wallet-tool
|
.B zcashd-wallet-tool
|
||||||
[\fI\,OPTIONS\/\fR]
|
[\fI\,OPTIONS\/\fR]
|
||||||
|
|
|
@ -1,9 +1,9 @@
|
||||||
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
|
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
|
||||||
.TH ZCASHD "1" "February 2023" "zcashd v5.4.0-rc4" "User Commands"
|
.TH ZCASHD "1" "February 2023" "zcashd v5.4.0" "User Commands"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
zcashd \- manual page for zcashd v5.4.0-rc4
|
zcashd \- manual page for zcashd v5.4.0
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
Zcash Daemon version v5.4.0\-rc4
|
Zcash Daemon version v5.4.0
|
||||||
.PP
|
.PP
|
||||||
In order to ensure you are adequately protecting your privacy when using Zcash,
|
In order to ensure you are adequately protecting your privacy when using Zcash,
|
||||||
please see <https://z.cash/support/security/>.
|
please see <https://z.cash/support/security/>.
|
||||||
|
|
|
@ -4,113 +4,3 @@ release-notes at release time)
|
||||||
Notable changes
|
Notable changes
|
||||||
===============
|
===============
|
||||||
|
|
||||||
Fixes
|
|
||||||
-----
|
|
||||||
|
|
||||||
This release fixes an issue that could potentially cause a node to crash with the
|
|
||||||
log message "The wallet's best block hash `<hash>` was not detected in restored
|
|
||||||
chain state. Giving up; please restart with `-rescan`."
|
|
||||||
|
|
||||||
Additionally, a bug that could cause an assertion failure during reindexing has
|
|
||||||
been fixed. See [#6387](https://github.com/zcash/zcash/pull/6387) for details.
|
|
||||||
|
|
||||||
Transparent pool and chain supply tracking
|
|
||||||
------------------------------------------
|
|
||||||
|
|
||||||
Since v2.0.0, `zcashd` has tracked the change in value within the Sprout and
|
|
||||||
Sapling shielded pools for each block; v5.0.0 added the Orchard pool. This
|
|
||||||
release completes the set, by tracking the change in value within the
|
|
||||||
"transparent" pool (more precisely, the value stored in Bitcoin-style UTXOs).
|
|
||||||
|
|
||||||
`zcashd` also now tracks the change in "chain supply" for each block, defined as
|
|
||||||
the sum of coinbase output values, minus unclaimed fees. This is precisely equal
|
|
||||||
to the sum of the value in the transparent and shielded pools, and equivalent to
|
|
||||||
the sum of all unspent coins/notes on the chain. It is bounded above by the
|
|
||||||
theoretical maximum supply, but in practice is lower due to, for example, miners
|
|
||||||
not claiming transaction fees.
|
|
||||||
|
|
||||||
> Bitcoin-style consensus rules implement fees as an imbalance between spent
|
|
||||||
> coins/notes and newly-created coins/notes. The consensus rules require that a
|
|
||||||
> coinbase transaction's outputs have a total value no greater than the sum of
|
|
||||||
> that block's subsidy and the fees made available by the transactions in the
|
|
||||||
> block. However, the consensus rules do not require that all of the available
|
|
||||||
> funds are claimed, and a miner can create coinbase transactions with lower
|
|
||||||
> value in the outputs (though in the case of Zcash, the consensus rules do
|
|
||||||
> require the transaction to include [ZIP 1014](https://zips.z.cash/zip-1014)
|
|
||||||
> Funding Stream outputs).
|
|
||||||
|
|
||||||
After upgrading to v5.4.0, `zcashd` will start tracking changes in transparent
|
|
||||||
pool value and chain supply from the height at which it is restarted. Block
|
|
||||||
heights prior to this will not have any information recorded. To track changes
|
|
||||||
from genesis, and thus monitor the total transparent pool size and chain supply,
|
|
||||||
you would need to restart your node with the `-reindex` option.
|
|
||||||
|
|
||||||
Wallet Performance Fixes
|
|
||||||
------------------------
|
|
||||||
|
|
||||||
The 100MiB memory limit for the batch scanner has been replaced by a 1000-block
|
|
||||||
limit. This eliminates an expensive call to determine the current memory usage
|
|
||||||
of the batch scanner.
|
|
||||||
|
|
||||||
The following associated metric has been removed from the set of metrics
|
|
||||||
reported when `-prometheusport` is set:
|
|
||||||
|
|
||||||
- (gauge) `zcashd.wallet.batchscanner.usage.bytes`
|
|
||||||
|
|
||||||
RPC Changes
|
|
||||||
-----------
|
|
||||||
|
|
||||||
- `z_sendmany` will no longer select transparent coinbase when "ANY\_TADDR" is
|
|
||||||
used as the `fromaddress`. It was already documented to do this, but the
|
|
||||||
previous behavior didn’t match. When coinbase notes were selected in this
|
|
||||||
case, they would (properly) require that the transaction didn’t have any
|
|
||||||
change, but this could be confusing, as the documentation stated that these
|
|
||||||
two conditions (using "ANY\_TADDR" and disallowing change) wouldn’t coincide.
|
|
||||||
- A new value pool object with `"id": "transparent"` has been added to the
|
|
||||||
`valuePools` list in `getblockchaininfo` and `getblock`.
|
|
||||||
- A new `chainSupply` key has been added to `getblockchaininfo` and `getblock`
|
|
||||||
to report the total chain supply as of that block height (if tracked), and the
|
|
||||||
change in chain supply caused by the block (for `getblock`, if measured).
|
|
||||||
|
|
||||||
Mining
|
|
||||||
-------
|
|
||||||
|
|
||||||
- Changes to `getblocktemplate` have been backported from upstream Bitcoin Core,
|
|
||||||
to significantly improve its performance by doing more work ahead of time in
|
|
||||||
the mempool (and reusing the work across multiple `getblocktemplate` calls).
|
|
||||||
|
|
||||||
[Deprecations](https://zcash.github.io/zcash/user/deprecation.html)
|
|
||||||
--------------
|
|
||||||
|
|
||||||
The following features have been deprecated, but remain available by default.
|
|
||||||
These features may be disabled by setting `-allowdeprecated=none`. 18 weeks
|
|
||||||
after this release, these features will be disabled by default and the following
|
|
||||||
flags to `-allowdeprecated` will be required to permit their continued use:
|
|
||||||
|
|
||||||
- `gbt_oldhashes`: the `finalsaplingroothash`, `lightclientroothash`, and
|
|
||||||
`blockcommitmentshash` fields in the output of `getblocktemplate` have been
|
|
||||||
replaced by the `defaultroots` field.
|
|
||||||
|
|
||||||
The following previously-deprecated features have been disabled by default, and
|
|
||||||
will be removed in 18 weeks:
|
|
||||||
|
|
||||||
- `legacy_privacy`
|
|
||||||
- `getnewaddress`
|
|
||||||
- `getrawchangeaddress`
|
|
||||||
- `z_getnewaddress`
|
|
||||||
- `z_listaddresses`
|
|
||||||
- `addrtype`
|
|
||||||
- `wallettxvjoinsplit`
|
|
||||||
|
|
||||||
The following previously-deprecated features have been removed:
|
|
||||||
|
|
||||||
- `dumpwallet`
|
|
||||||
- `zcrawreceive`
|
|
||||||
- `zcrawjoinsplit`
|
|
||||||
- `zcrawkeygen`
|
|
||||||
|
|
||||||
Platform Support
|
|
||||||
----------------
|
|
||||||
|
|
||||||
- CentOS 8 has been removed from the list of supported platforms. It reached EoL
|
|
||||||
on December 31st 2021, and does not satisfy our Tier 2 policy requirements.
|
|
||||||
|
|
|
@ -0,0 +1,311 @@
|
||||||
|
Notable changes
|
||||||
|
===============
|
||||||
|
|
||||||
|
Fixes
|
||||||
|
-----
|
||||||
|
|
||||||
|
This release fixes an issue that could potentially cause a node to crash with the
|
||||||
|
log message "The wallet's best block hash `<hash>` was not detected in restored
|
||||||
|
chain state. Giving up; please restart with `-rescan`."
|
||||||
|
|
||||||
|
Additionally, a bug that could cause an assertion failure during reindexing has
|
||||||
|
been fixed. See [#6387](https://github.com/zcash/zcash/pull/6387) for details.
|
||||||
|
|
||||||
|
### Known issues
|
||||||
|
|
||||||
|
- When `zcashd` is started with `-reindex`, until the node's chain tip catches
|
||||||
|
back up to the main chain, RPC calls might block for long periods of time (or
|
||||||
|
time out), and the wallet's view of the chain may lag significantly behind the
|
||||||
|
node's chain tip. See [#6406](https://github.com/zcash/zcash/pull/6406) for
|
||||||
|
details and the fix (which will be included in the next release).
|
||||||
|
|
||||||
|
Transparent pool and chain supply tracking
|
||||||
|
------------------------------------------
|
||||||
|
|
||||||
|
Since v2.0.0, `zcashd` has tracked the change in value within the Sprout and
|
||||||
|
Sapling shielded pools for each block; v5.0.0 added the Orchard pool. This
|
||||||
|
release completes the set, by tracking the change in value within the
|
||||||
|
"transparent" pool (more precisely, the value stored in Bitcoin-style UTXOs).
|
||||||
|
|
||||||
|
`zcashd` also now tracks the change in "chain supply" for each block, defined as
|
||||||
|
the sum of coinbase output values, minus unclaimed fees. This is precisely equal
|
||||||
|
to the sum of the value in the transparent and shielded pools, and equivalent to
|
||||||
|
the sum of all unspent coins/notes on the chain. It is bounded above by the
|
||||||
|
theoretical maximum supply, but in practice is lower due to, for example, miners
|
||||||
|
not claiming transaction fees.
|
||||||
|
|
||||||
|
> Bitcoin-style consensus rules implement fees as an imbalance between spent
|
||||||
|
> coins/notes and newly-created coins/notes. The consensus rules require that a
|
||||||
|
> coinbase transaction's outputs have a total value no greater than the sum of
|
||||||
|
> that block's subsidy and the fees made available by the transactions in the
|
||||||
|
> block. However, the consensus rules do not require that all of the available
|
||||||
|
> funds are claimed, and a miner can create coinbase transactions with lower
|
||||||
|
> value in the outputs (though in the case of Zcash, the consensus rules do
|
||||||
|
> require the transaction to include [ZIP 1014](https://zips.z.cash/zip-1014)
|
||||||
|
> Funding Stream outputs).
|
||||||
|
|
||||||
|
After upgrading to v5.4.0, `zcashd` will start tracking changes in transparent
|
||||||
|
pool value and chain supply from the height at which it is restarted. Block
|
||||||
|
heights prior to this will not have any information recorded. To track changes
|
||||||
|
from genesis, and thus monitor the total transparent pool size and chain supply,
|
||||||
|
you would need to restart your node with the `-reindex` option.
|
||||||
|
|
||||||
|
Wallet Performance Fixes
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
The 100MiB memory limit for the batch scanner has been replaced by a 1000-block
|
||||||
|
limit. This eliminates an expensive call to determine the current memory usage
|
||||||
|
of the batch scanner.
|
||||||
|
|
||||||
|
The following associated metric has been removed from the set of metrics
|
||||||
|
reported when `-prometheusport` is set:
|
||||||
|
|
||||||
|
- (gauge) `zcashd.wallet.batchscanner.usage.bytes`
|
||||||
|
|
||||||
|
RPC Changes
|
||||||
|
-----------
|
||||||
|
|
||||||
|
- `z_sendmany` will no longer select transparent coinbase when "ANY\_TADDR" is
|
||||||
|
used as the `fromaddress`. It was already documented to do this, but the
|
||||||
|
previous behavior didn’t match. When coinbase notes were selected in this
|
||||||
|
case, they would (properly) require that the transaction didn’t have any
|
||||||
|
change, but this could be confusing, as the documentation stated that these
|
||||||
|
two conditions (using "ANY\_TADDR" and disallowing change) wouldn’t coincide.
|
||||||
|
- A new value pool object with `"id": "transparent"` has been added to the
|
||||||
|
`valuePools` list in `getblockchaininfo` and `getblock`.
|
||||||
|
- A new `chainSupply` key has been added to `getblockchaininfo` and `getblock`
|
||||||
|
to report the total chain supply as of that block height (if tracked), and the
|
||||||
|
change in chain supply caused by the block (for `getblock`, if measured).
|
||||||
|
|
||||||
|
Mining
|
||||||
|
-------
|
||||||
|
|
||||||
|
- Changes to `getblocktemplate` have been backported from upstream Bitcoin Core,
|
||||||
|
to significantly improve its performance by doing more work ahead of time in
|
||||||
|
the mempool (and reusing the work across multiple `getblocktemplate` calls).
|
||||||
|
|
||||||
|
[Deprecations](https://zcash.github.io/zcash/user/deprecation.html)
|
||||||
|
--------------
|
||||||
|
|
||||||
|
The following features have been deprecated, but remain available by default.
|
||||||
|
These features may be disabled by setting `-allowdeprecated=none`. 18 weeks
|
||||||
|
after this release, these features will be disabled by default and the following
|
||||||
|
flags to `-allowdeprecated` will be required to permit their continued use:
|
||||||
|
|
||||||
|
- `gbt_oldhashes`: the `finalsaplingroothash`, `lightclientroothash`, and
|
||||||
|
`blockcommitmentshash` fields in the output of `getblocktemplate` have been
|
||||||
|
replaced by the `defaultroots` field.
|
||||||
|
|
||||||
|
The following previously-deprecated features have been disabled by default, and
|
||||||
|
will be removed in 18 weeks:
|
||||||
|
|
||||||
|
- `legacy_privacy`
|
||||||
|
- `getnewaddress`
|
||||||
|
- `getrawchangeaddress`
|
||||||
|
- `z_getnewaddress`
|
||||||
|
- `z_listaddresses`
|
||||||
|
- `addrtype`
|
||||||
|
- `wallettxvjoinsplit`
|
||||||
|
|
||||||
|
The following previously-deprecated features have been removed:
|
||||||
|
|
||||||
|
- `dumpwallet`
|
||||||
|
- `zcrawreceive`
|
||||||
|
- `zcrawjoinsplit`
|
||||||
|
- `zcrawkeygen`
|
||||||
|
|
||||||
|
Platform Support
|
||||||
|
----------------
|
||||||
|
|
||||||
|
- CentOS 8 has been removed from the list of supported platforms. It reached EoL
|
||||||
|
on December 31st 2021, and does not satisfy our Tier 2 policy requirements.
|
||||||
|
|
||||||
|
Changelog
|
||||||
|
=========
|
||||||
|
|
||||||
|
Alex Morcos (3):
|
||||||
|
Make accessing mempool parents and children public
|
||||||
|
Expose FormatStateMessage
|
||||||
|
Rewrite CreateNewBlock
|
||||||
|
|
||||||
|
Alfredo Garcia (1):
|
||||||
|
Add chain supply and transparent value to block index.
|
||||||
|
|
||||||
|
Carl Dong (4):
|
||||||
|
depends: More robust cmake invocation
|
||||||
|
depends: Cleanup CMake invocation
|
||||||
|
depends: Prepend CPPFLAGS to C{,XX}FLAGS for CMake
|
||||||
|
depends: Specify LDFLAGS to cmake as well
|
||||||
|
|
||||||
|
Daira Hopwood (7):
|
||||||
|
Add tl::expected. refs #4816
|
||||||
|
The std::expected proposal has unnecessary instances of undefined behaviour for operator->, operator*, and error(). Make these into assertion failures (this still conforms to the proposal).
|
||||||
|
Refactor HaveShieldedRequirements to use tl::expected (example with a void T) and rename it to CheckShieldedRequirements.
|
||||||
|
tl::expected follow-up to address @str4d's comments.
|
||||||
|
Cleanup after removing dumpwallet.
|
||||||
|
Change the time that the wallet will wait for the block index to load from 5 minutes to 2 hours.
|
||||||
|
Postpone updates for 5.4.0.
|
||||||
|
|
||||||
|
Dimitris Apostolou (2):
|
||||||
|
Fix typos
|
||||||
|
Fix typos
|
||||||
|
|
||||||
|
Greg Pfeil (23):
|
||||||
|
Add PrivacyPolicyMeet
|
||||||
|
Remove trailing whitespace in fetch-params.sh
|
||||||
|
Migrate fetch-params.sh to bash
|
||||||
|
Scope the fetch-params lock file to the user
|
||||||
|
Update comments to match changed tests
|
||||||
|
Put utf8.h in the correct place
|
||||||
|
Don’t select transparent coinbase with ANY_TADDR
|
||||||
|
Update failing tests after fixing ANY_TADDR behavior
|
||||||
|
Apply suggestions from code review
|
||||||
|
Apply suggestions from code review
|
||||||
|
Appease ShellCheck
|
||||||
|
Defer fixing docker/entrypoint.sh lint failure
|
||||||
|
Apply suggestions from code review
|
||||||
|
Fix a minor bug in docker/entrypoint.sh
|
||||||
|
Improve PrivacyPolicy comments
|
||||||
|
Apply suggestions from code review
|
||||||
|
Add release notes
|
||||||
|
Update src/wallet/asyncrpcoperation_sendmany.cpp
|
||||||
|
Fix a missing newline in the RPC docs
|
||||||
|
No longer test_received_sprout
|
||||||
|
Use cached sprout addresses rather than funding
|
||||||
|
Update overwinter test to not shield to Sprout
|
||||||
|
Support Bash 3.2 in fetch-params.sh
|
||||||
|
|
||||||
|
Jack Grigg (52):
|
||||||
|
test: Handle mining slow start inside `CreateNewBlock_validity`
|
||||||
|
test: Improve CreateNewBlock_validity exception checks
|
||||||
|
txdb: Remove const annotation from blockinfo iterator type
|
||||||
|
Remove `dumpwallet` RPC method
|
||||||
|
qa: Refactor `wallet_deprecation` test to simplify deprecation changes
|
||||||
|
Remove `zcraw*` RPC methods
|
||||||
|
txdb: Clean up for loop syntax in `WriteBatchSync`
|
||||||
|
Disable previously-deprecated features by default
|
||||||
|
Deprecate old hash fields of `getblocktemplate`
|
||||||
|
qa: Change show_help RPC test to print out differences
|
||||||
|
qa: Update mempool_packages RPC test after deprecation ratcheting
|
||||||
|
qa: Import Rust crate audits from Firefox
|
||||||
|
qa: Import Rust crate audits from the Bytecode Alliance
|
||||||
|
qa: Import Rust crate audits from Embark Studios
|
||||||
|
qa: Remove audit-as-crates-io for non-third-party crates
|
||||||
|
cargo update
|
||||||
|
zcash_primitives 0.9
|
||||||
|
clearscreen 2.0
|
||||||
|
depends: googletest 1.12.1
|
||||||
|
Remove CentOS 8 as a supported platform
|
||||||
|
depends: native_zstd 1.5.2
|
||||||
|
depends: native_ccache 4.6.3
|
||||||
|
depends: Add package for native_cmake 3.25.1
|
||||||
|
depends: Force cmake to install libzstd in lib/
|
||||||
|
build-aux: Update Boost macros to latest serials
|
||||||
|
build: Bump required Boost version
|
||||||
|
depends: Force Boost library to be installed in lib/
|
||||||
|
depends: Add tl_expected to update checker
|
||||||
|
depends: Boost 1.81.0
|
||||||
|
depends: utfcpp 3.2.3
|
||||||
|
qa: Postpone LLVM 15 and CCache 4.7 updates
|
||||||
|
depends: Update cxx to 1.0.83
|
||||||
|
cargo update
|
||||||
|
Document -clockoffset option
|
||||||
|
qa: Update show_help RPC test
|
||||||
|
doc: Fix arguments to make-release.py in hotfix process
|
||||||
|
depends: CMake 3.25.2
|
||||||
|
make-release.py: Versioning changes for 5.4.0-rc1.
|
||||||
|
make-release.py: Updated manpages for 5.4.0-rc1.
|
||||||
|
make-release.py: Updated release notes and changelog for 5.4.0-rc1.
|
||||||
|
qa: Enable RPC test execution to be overridden from Python
|
||||||
|
depends: Postpone cxx update
|
||||||
|
metrics: Update `zcash.pool.value.zatoshis` gauge for transparent pool
|
||||||
|
Update release notes with notable changes for v5.4.0
|
||||||
|
make-release.py: Versioning changes for 5.4.0-rc2.
|
||||||
|
make-release.py: Updated manpages for 5.4.0-rc2.
|
||||||
|
make-release.py: Updated release notes and changelog for 5.4.0-rc2.
|
||||||
|
qa: Add RPC test reproducing the Orchard reindex issue
|
||||||
|
Fix return type of `orchard_wallet_reset`
|
||||||
|
Reset Orchard wallet state in `CWallet::ClearNoteWitnessCache`
|
||||||
|
make-release.py: Versioning changes for 5.4.0.
|
||||||
|
make-release.py: Updated manpages for 5.4.0.
|
||||||
|
|
||||||
|
James O'Beirne (2):
|
||||||
|
Clarify help messages for path args to mention datadir prefix
|
||||||
|
Add AbsPathForConfigVal to consolidate datadir prefixing for path args
|
||||||
|
|
||||||
|
Kris Nuttycombe (33):
|
||||||
|
Add TransactionStrategy::IsCompatibleWith
|
||||||
|
Modify TransactionBuilder to use the standard default fee.
|
||||||
|
Factor out memo parsing from asyncrpcoperation_sendmany
|
||||||
|
Remove mergetoaddress_sprout test as sending to Sprout is no longer supported.
|
||||||
|
Remove wallet_shieldcoinbase_sprout test.
|
||||||
|
Update `mergetoaddress_mixednotes.py` to no longer send to Sprout.
|
||||||
|
Verify sum of pool balances against chain total supply.
|
||||||
|
Apply suggestions from code review
|
||||||
|
Add script for verifying block rewards and fees not claimed by miners.
|
||||||
|
Apply suggestions from code review
|
||||||
|
Remove unnecessary delta_count variable.
|
||||||
|
Replace fix-copyright-headers.py with a script that creates a scripted-diff git commit.
|
||||||
|
scripted-diff: Update Zcash copyrights to 2023
|
||||||
|
Apply suggestions from code review
|
||||||
|
Enable tests of chain supply & transparent pool balance.
|
||||||
|
Update doc/release-notes.md
|
||||||
|
Fixes an error in `zcash-cli help` following the removal of `dumpwallet`.
|
||||||
|
Allow rescan to exit in the case that Ctrl-C is pressed.
|
||||||
|
Fetch recently conflicted transactions incrementally in ThreadNotifyWallet.
|
||||||
|
Bound wallet batch scanner size to 1000 blocks instead of 100 MiB
|
||||||
|
Remove unused DEFAULT_BATCHSCANNERMEMLIMIT constant.
|
||||||
|
Tolerate missing cached conflict data in ThreadNotifyWallets
|
||||||
|
make-release.py: Versioning changes for 5.4.0-rc3.
|
||||||
|
make-release.py: Updated manpages for 5.4.0-rc3.
|
||||||
|
make-release.py: Updated release notes and changelog for 5.4.0-rc3.
|
||||||
|
Defer z_getbalance and z_gettotalbalance disablement.
|
||||||
|
Patch uses of `sprintf` in `zeromq` that break the build on macOS
|
||||||
|
Patch zeromq to check the return value of snprintf where necessary.
|
||||||
|
Postpone rustcxx and native_cxxbridge versions 1.0.89
|
||||||
|
Add #6387 fix to v5.4.0 release notes.
|
||||||
|
make-release.py: Versioning changes for 5.4.0-rc4.
|
||||||
|
make-release.py: Updated manpages for 5.4.0-rc4.
|
||||||
|
make-release.py: Updated release notes and changelog for 5.4.0-rc4.
|
||||||
|
|
||||||
|
Marco Falke (4):
|
||||||
|
[init] Add missing help for args
|
||||||
|
[init] Help Msg: Use Params(CBaseChainParams::MAIN)
|
||||||
|
Clarify mocktime help message
|
||||||
|
init: Fix help message for checkblockindex
|
||||||
|
|
||||||
|
Marius Kjærstad (5):
|
||||||
|
Hardened checkpoint update at block 1860000 for mainnet
|
||||||
|
Update src/chainparams.cpp
|
||||||
|
Some more formatting changes to chainparams.cpp
|
||||||
|
Forgot to add 0x
|
||||||
|
Add some more historical checkpoints
|
||||||
|
|
||||||
|
Mark Friedenbach (1):
|
||||||
|
Prevent block.nTime from decreasing
|
||||||
|
|
||||||
|
Marshall Gaucher (4):
|
||||||
|
Update zcash-build-bench.yml
|
||||||
|
Update README.md
|
||||||
|
Update contrib/ci-builders/tekton/tekton-labs/tasks/zcash-build.yml
|
||||||
|
Update contrib/ci-builders/tekton/tekton-labs/tasks/zcash-build-test.yml
|
||||||
|
|
||||||
|
Michał Janiszewski (1):
|
||||||
|
Update debian/compat to version 13
|
||||||
|
|
||||||
|
Russell Yanofsky (2):
|
||||||
|
depends: Add CMake helper for building packages
|
||||||
|
depends: Set CMAKE_INSTALL_RPATH for native packages
|
||||||
|
|
||||||
|
Suhas Daftuar (3):
|
||||||
|
Track transaction packages in CTxMemPoolEntry
|
||||||
|
Add test showing bug in mempool packages
|
||||||
|
Fix mempool package tracking edge case
|
||||||
|
|
||||||
|
Wladimir J. van der Laan (1):
|
||||||
|
rpc: Write authcookie atomically
|
||||||
|
|
||||||
|
Marshall Gaucher (2):
|
||||||
|
add basic tekton zcash env
|
||||||
|
update memory targets with heaptrack
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
#define CLIENT_VERSION_MAJOR 5
|
#define CLIENT_VERSION_MAJOR 5
|
||||||
#define CLIENT_VERSION_MINOR 4
|
#define CLIENT_VERSION_MINOR 4
|
||||||
#define CLIENT_VERSION_REVISION 0
|
#define CLIENT_VERSION_REVISION 0
|
||||||
#define CLIENT_VERSION_BUILD 28
|
#define CLIENT_VERSION_BUILD 50
|
||||||
|
|
||||||
//! Set to true for release, false for prerelease or test build
|
//! Set to true for release, false for prerelease or test build
|
||||||
#define CLIENT_VERSION_IS_RELEASE true
|
#define CLIENT_VERSION_IS_RELEASE true
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
// Per https://zips.z.cash/zip-0200
|
// Per https://zips.z.cash/zip-0200
|
||||||
// Shut down nodes running this version of code, 16 weeks' worth of blocks after the estimated
|
// Shut down nodes running this version of code, 16 weeks' worth of blocks after the estimated
|
||||||
// release block height. A warning is shown during the 14 days' worth of blocks prior to shut down.
|
// release block height. A warning is shown during the 14 days' worth of blocks prior to shut down.
|
||||||
static const int APPROX_RELEASE_HEIGHT = 1969600;
|
static const int APPROX_RELEASE_HEIGHT = 1977500;
|
||||||
static const int RELEASE_TO_DEPRECATION_WEEKS = 16;
|
static const int RELEASE_TO_DEPRECATION_WEEKS = 16;
|
||||||
static const int EXPECTED_BLOCKS_PER_HOUR = 3600 / Consensus::POST_BLOSSOM_POW_TARGET_SPACING;
|
static const int EXPECTED_BLOCKS_PER_HOUR = 3600 / Consensus::POST_BLOSSOM_POW_TARGET_SPACING;
|
||||||
static_assert(EXPECTED_BLOCKS_PER_HOUR == 48, "The value of Consensus::POST_BLOSSOM_POW_TARGET_SPACING was chosen such that this assertion holds.");
|
static_assert(EXPECTED_BLOCKS_PER_HOUR == 48, "The value of Consensus::POST_BLOSSOM_POW_TARGET_SPACING was chosen such that this assertion holds.");
|
||||||
|
|
Loading…
Reference in New Issue