Merge pull request #6595 from str4d/merge-v5.5.0-rc1

Merge v5.5.0-rc1 into the main branch
This commit is contained in:
str4d 2023-04-21 19:28:28 +01:00 committed by GitHub
commit ac7f8d88c6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 468 additions and 139 deletions

View File

@ -19,7 +19,7 @@ repository = "https://github.com/zcash/zcash"
readme = "README.md"
license = "MIT OR Apache-2.0"
edition = "2018"
rust-version = "1.68"
rust-version = "1.69"
[package.metadata.vet]
store = { path = "./qa/supply-chain" }

View File

@ -1,4 +1,4 @@
Zcash 5.4.2
Zcash 5.5.0-rc1
<img align="right" width="120" height="80" src="doc/imgs/logo.png">
===========

View File

@ -1,9 +1,9 @@
dnl require autoconf 2.60 (AS_ECHO/AS_ECHO_N)
AC_PREREQ([2.60])
define(_CLIENT_VERSION_MAJOR, 5)
define(_CLIENT_VERSION_MINOR, 4)
define(_CLIENT_VERSION_REVISION, 2)
define(_CLIENT_VERSION_BUILD, 50)
define(_CLIENT_VERSION_MINOR, 5)
define(_CLIENT_VERSION_REVISION, 0)
define(_CLIENT_VERSION_BUILD, 25)
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_IS_RELEASE, true)

View File

@ -1,3 +1,9 @@
zcash (5.5.0~rc1) stable; urgency=medium
* 5.5.0-rc1 release.
-- Electric Coin Company <team@electriccoin.co> Thu, 20 Apr 2023 22:19:50 +0000
zcash (5.4.2) stable; urgency=high
* 5.4.2 release.

View File

@ -1,5 +1,5 @@
---
name: "zcash-5.4.2"
name: "zcash-5.5.0-rc1"
enable_cache: true
distro: "debian"
suites:

View File

@ -1,5 +1,5 @@
---
name: "zcash-5.4.2"
name: "zcash-5.5.0-rc1"
enable_cache: true
distro: "debian"
suites:

View File

@ -3,16 +3,16 @@ package=native_rust
# ./contrib/devtools/update-rust-hashes.sh
# The Rust compiler should use the same LLVM version as the Clang compiler; you
# can check this with `rustc --version -v`.
$(package)_version=1.68.2
$(package)_version=1.69.0
$(package)_download_path=https://static.rust-lang.org/dist
$(package)_file_name_linux=rust-$($(package)_version)-x86_64-unknown-linux-gnu.tar.gz
$(package)_sha256_hash_linux=df7c7466ef35556e855c0d35af7ff08e133040400452eb3427c53202b6731926
$(package)_sha256_hash_linux=2ca4a306047c0b8b4029c382910fcbc895badc29680e0332c9df990fd1c70d4f
$(package)_file_name_darwin=rust-$($(package)_version)-x86_64-apple-darwin.tar.gz
$(package)_sha256_hash_darwin=632540d3d83758cb048dc45fcfbc0b29f6f170161a3051be22b0a2962a566fb9
$(package)_sha256_hash_darwin=9818dab2c3726d63dfbfde12c9273e62e484ef6d6f6e05a6431a3e089c335454
$(package)_file_name_freebsd=rust-$($(package)_version)-x86_64-unknown-freebsd.tar.gz
$(package)_sha256_hash_freebsd=3b824f662c48ed3a5117bad7992d467837cbf6fa93ac18c4816a175034eee178
$(package)_sha256_hash_freebsd=2985d98910b4a1dd336bfc7a1ac3b18082ed917cff097b4db6f0d6602016c289
$(package)_file_name_aarch64_linux=rust-$($(package)_version)-aarch64-unknown-linux-gnu.tar.gz
$(package)_sha256_hash_aarch64_linux=b24d0df852490d80791a228f18c2b75f24b1e6437e6e745f85364edab245f7fa
$(package)_sha256_hash_aarch64_linux=88af5aa7a40c8f1b40416a1f27de8ffbe09c155d933f69d3e109c0ccee92353b
# Mapping from GCC canonical hosts to Rust targets
# If a mapping is not present, we assume they are identical, unless $host_os is
@ -21,10 +21,10 @@ $(package)_rust_target_x86_64-pc-linux-gnu=x86_64-unknown-linux-gnu
$(package)_rust_target_x86_64-w64-mingw32=x86_64-pc-windows-gnu
# Mapping from Rust targets to SHA-256 hashes
$(package)_rust_std_sha256_hash_aarch64-unknown-linux-gnu=74c2cca31e34cbc0913fc2445c4853acb20c52dba2d0c3012a007cc5decc3bb1
$(package)_rust_std_sha256_hash_x86_64-apple-darwin=5d6a7d62ae67c2f7aae6eabb782a3125cf9fed6bbc2993d59b3714f4f832e797
$(package)_rust_std_sha256_hash_x86_64-pc-windows-gnu=4598f3f44f84353dcf64aab9669b7c3982fccc1e7840f3ef1aa90cadc37864a4
$(package)_rust_std_sha256_hash_x86_64-unknown-freebsd=c94334345413a28669b271584b385ed0c0d6c410458103d7242353dd8fb9048d
$(package)_rust_std_sha256_hash_aarch64-unknown-linux-gnu=8f42b40c0a0658ee75ce758652c9821fac7db3fbd8d20f7fb2483ec2c57ee0ac
$(package)_rust_std_sha256_hash_x86_64-apple-darwin=e44d71250dc5a238da0dc4784dad59d562862653adecd31ea52e0920b85c6a7c
$(package)_rust_std_sha256_hash_x86_64-pc-windows-gnu=09ded4a4c27c16aff9c9911640b1bdf6e1172237ce540ed4dc3e166e9438f0d7
$(package)_rust_std_sha256_hash_x86_64-unknown-freebsd=eed4b3f3358a8887b0f6a62e021469878a8990af9b94c2fe87d3c1b0220913bb
define rust_target
$(if $($(1)_rust_target_$(2)),$($(1)_rust_target_$(2)),$(if $(findstring darwin,$(3)),x86_64-apple-darwin,$(if $(findstring freebsd,$(3)),x86_64-unknown-freebsd,$(2))))

View File

@ -2,13 +2,13 @@ Zcash Contributors
==================
Jack Grigg (1297)
Kris Nuttycombe (622)
Kris Nuttycombe (626)
Simon Liu (460)
Sean Bowe (389)
Daira Hopwood (379)
Daira Hopwood (382)
Eirik Ogilvie-Wigley (216)
Wladimir J. van der Laan (159)
Pieter Wuille (146)
Pieter Wuille (149)
Alfredo Garcia (120)
Taylor Hornby (118)
Marshall Gaucher (118)
@ -17,10 +17,10 @@ Marco Falke (90)
Jonas Schnelli (90)
Jay Graber (89)
Larry Ruane (88)
Greg Pfeil (84)
Greg Pfeil (85)
Cory Fields (78)
sasha (62)
Matt Corallo (61)
sasha (67)
Matt Corallo (62)
Nathan Wilcox (57)
practicalswift (42)
Dimitris Apostolou (40)
@ -71,7 +71,6 @@ Daniel Cousens (6)
Casey Rodarmor (6)
jnewbery (5)
ca333 (5)
Sasha (5)
MeshCollider (5)
Johnathan Corgan (5)
George Tankersley (5)
@ -128,6 +127,7 @@ Matthew King (2)
Mary Moore-Simmons (2)
Mark Friedenbach (2)
Marek (2)
Jon Atack (2)
Joe Turgeon (2)
Jesse Cohen (2)
Jeffrey Czyz (2)
@ -219,7 +219,6 @@ Josh Lehan (1)
Josh Ellithorpe (1)
Jonas Nick (1)
Jon Layton (1)
Jon Atack (1)
Jeffrey Walton (1)
Janito Vaqueiro Ferreira Filho (1)
James White (1)

View File

@ -42,10 +42,9 @@ time, and may shift due to changes in network solution power.
<!-- RELEASE_SCRIPT_START_MARKER - If you make changes here, check make-release.py -->
| `zcashd` version | Release date | Halt height | End of Support |
| ---------------- | ------------ | ----------- | -------------- |
| 5.3.1 | 2022-12-02 | 2027524 | 2023-03-24 |
| 5.3.2 | 2022-12-03 | 2029524 | 2023-03-25 |
| 5.4.0 | 2023-02-09 | 2106524 | 2023-06-01 |
| 5.4.1 | 2023-02-13 | 2112024 | 2023-06-05 |
| 5.3.3 | 2023-03-13 | 2121024 | 2023-06-13 |
| 5.4.2 | 2023-03-13 | 2121024 | 2023-06-13 |
| 5.5.0-rc1 | 2023-04-20 | 2059000 | 2023-08-10 |
<!-- RELEASE_SCRIPT_END_MARKER -->

View File

@ -1,9 +1,9 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
.TH ZCASH-CLI "1" "February 2023" "zcash-cli v5.4.2" "User Commands"
.TH ZCASH-CLI "1" "April 2023" "zcash-cli v5.5.0-rc1" "User Commands"
.SH NAME
zcash-cli \- manual page for zcash-cli v5.4.2
zcash-cli \- manual page for zcash-cli v5.5.0-rc1
.SH DESCRIPTION
Zcash RPC client version v5.4.2
Zcash RPC client version v5.5.0\-rc1
.PP
In order to ensure you are adequately protecting your privacy when using Zcash,
please see <https://z.cash/support/security/>.

View File

@ -1,9 +1,9 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
.TH ZCASH-TX "1" "February 2023" "zcash-tx v5.4.2" "User Commands"
.TH ZCASH-TX "1" "April 2023" "zcash-tx v5.5.0-rc1" "User Commands"
.SH NAME
zcash-tx \- manual page for zcash-tx v5.4.2
zcash-tx \- manual page for zcash-tx v5.5.0-rc1
.SH DESCRIPTION
Zcash zcash\-tx utility version v5.4.2
Zcash zcash\-tx utility version v5.5.0\-rc1
.SS "Usage:"
.TP
zcash\-tx [options] <hex\-tx> [commands]

View File

@ -1,7 +1,7 @@
.\" 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.2" "User Commands"
.TH ZCASHD-WALLET-TOOL "1" "April 2023" "zcashd-wallet-tool v5.5.0-rc1" "User Commands"
.SH NAME
zcashd-wallet-tool \- manual page for zcashd-wallet-tool v5.4.2
zcashd-wallet-tool \- manual page for zcashd-wallet-tool v5.5.0-rc1
.SH SYNOPSIS
.B zcashd-wallet-tool
[\fI\,OPTIONS\/\fR]

View File

@ -1,9 +1,9 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.49.1.
.TH ZCASHD "1" "February 2023" "zcashd v5.4.2" "User Commands"
.TH ZCASHD "1" "April 2023" "zcashd v5.5.0-rc1" "User Commands"
.SH NAME
zcashd \- manual page for zcashd v5.4.2
zcashd \- manual page for zcashd v5.5.0-rc1
.SH DESCRIPTION
Zcash Daemon version v5.4.2
Zcash Daemon version v5.5.0\-rc1
.PP
In order to ensure you are adequately protecting your privacy when using Zcash,
please see <https://z.cash/support/security/>.
@ -34,10 +34,10 @@ long fork (%s in cmd is replaced by message)
.IP
Explicitly allow the use of the specified deprecated feature. Multiple
instances of this parameter are permitted; values for <feature> must be
selected from among {"none", "gbt_oldhashes", "z_getbalance",
"z_gettotalbalance", "addrtype", "getnewaddress", "getrawchangeaddress",
"legacy_privacy", "wallettxvjoinsplit", "z_getnewaddress",
"z_listaddresses"}
selected from among {"none", "deprecationinfo_deprecationheight",
"gbt_oldhashes", "z_getbalance", "z_gettotalbalance", "addrtype",
"getnewaddress", "getrawchangeaddress", "legacy_privacy",
"wallettxvjoinsplit", "z_getnewaddress", "z_listaddresses"}
.HP
\fB\-blocknotify=\fR<cmd>
.IP
@ -316,7 +316,11 @@ Set the maximum number of Orchard actions permitted in a transaction
.HP
\fB\-paytxfee=\fR<amt>
.IP
Fee (in ZEC/kB) to add to transactions you send (default: 0.00)
The preferred fee rate (in ZEC per 1000 bytes) used for transactions
created by legacy APIs (sendtoaddress, sendmany, and
fundrawtransaction). If the transaction is less than 1000 bytes then the
fee rate is applied as though it were 1000 bytes. When this option is
not set, the ZIP 317 fee calculation is used.
.HP
\fB\-rescan\fR
.IP
@ -327,10 +331,6 @@ Rescan the block chain for missing wallet transactions on startup
Attempt to recover private keys from a corrupt wallet on startup
(implies \fB\-rescan\fR)
.HP
\fB\-sendfreetransactions\fR
.IP
Send transactions as zero\-fee transactions if possible (default: 0)
.HP
\fB\-spendzeroconfchange\fR
.IP
Spend unconfirmed change when sending transactions (default: 1)
@ -450,8 +450,9 @@ Prepend debug output with timestamp (default: 1)
.HP
\fB\-minrelaytxfee=\fR<amt>
.IP
Fees (in ZEC/kB) smaller than this are considered zero fee for relaying,
mining and transaction creation (default: 0.000001)
Transactions must have at least this fee rate (in ZEC per 1000 bytes)
for relaying, mining and transaction creation (default: 0.000001). This
is not the only fee constraint.
.HP
\fB\-maxtxfee=\fR<amt>
.IP
@ -482,18 +483,14 @@ Maximum size of data in data carrier transactions we relay and mine
.PP
Block creation options:
.HP
\fB\-blockminsize=\fR<n>
.IP
Set minimum block size in bytes (default: 0)
.HP
\fB\-blockmaxsize=\fR<n>
.IP
Set maximum block size in bytes (default: 2000000)
.HP
\fB\-blockprioritysize=\fR<n>
\fB\-blockunpaidactionlimit=\fR<n>
.IP
Set maximum size of high\-priority/low\-fee transactions in bytes
(default: 1000000)
Set the limit on unpaid actions that will be accepted in a block for
transactions paying less than the ZIP 317 fee (default: 50)
.PP
Mining options:
.HP

View File

@ -4,83 +4,4 @@ release-notes at release time)
Notable changes
===============
RPC Changes
-----------
- `getdeprecationinfo` has several changes:
- It now returns additional information about currently deprecated and
disabled features.
- A new `end_of_service` object that contains both the block height for
end-of-service and the estimated time that the end-of-service halt is
expected to occur. Note that this height is just an approximation and
will change over time as the end-of-service block height approaches,
due to the variability in block times. The
`end_of_service` object is intended to replace the `deprecationheight`
field; see the [Deprecations](#deprecations) section for additional detail.
- This RPC method was previously only available for mainnet nodes; it is now
also available for testnet and regtest nodes, in which case it does not
return end-of-service halt information (as testnet and regtest nodes do not
have an end-of-service halt feature.)
- Several `z_sendmany`, `z_shieldcoinbase` and `z_mergetoaddress` failures have
moved from synchronous to asynchronous, so while you should already be
checking the async operation status, there are now more cases that may trigger
failure at that stage.
- The `AllowRevealedRecipients` privacy policy is now required in order to choose a
transparent change address for a transaction. This will only occur when the wallet
is unable to construct the transaction without selecting funds from the transparent
pool, so the impact of this change is that for such transactions, the user must specify
`AllowFullyTransparent`.
- The `z_shieldcoinbase` and `z_mergetoaddress` RPC methods now support an
optional privacy policy.
- The `estimatepriority` RPC call has been removed.
- The `priority_delta` argument to the `prioritisetransaction` RPC call now has
no effect and must be set to a dummy value (0 or null).
Changes to Transaction Fee Selection
------------------------------------
- The `-mintxfee` and `-sendfreetransactions` options have been removed. These
options used to instruct the wallet's legacy transaction creation APIs
(`sendtoaddress`, `sendmany`, and `fundrawtransaction`) to increase fees to
this limit and to use a zero fee for "small" transactions that spend "old"
inputs, respectively. They will now cause a warning on node startup if used.
Changes to Block Template Construction
--------------------------------------
We now use a new block template construction algorithm documented in
[ZIP 317](https://zips.z.cash/zip-0317#recommended-algorithm-for-block-template-construction).
- This algorithm no longer favours transactions that were previously considered
"high priority" because they spent older inputs. The `-blockprioritysize` config
option, which configured the portion of the block reserved for these transactions,
has been removed and will now cause a warning if used.
- The `-blockminsize` option, which configured the size of a portion of the block
to be filled regardless of transaction fees or priority, has also been removed
and will cause a warning if used.
- A `-blockunpaidactionlimit` option has been added to control the limit on
"unpaid actions" that will be accepted in a block for transactions paying less
than the ZIP 317 fee. This defaults to 50.
Removal of Priority Estimation
------------------------------
- Estimation of "priority" needed for a transaction to be included within a target
number of blocks, and the associated `estimatepriority` RPC call, have been
removed. The format for `fee_estimates.dat` has also changed to no longer save
these priority estimates. It will automatically be converted to the new format
which is not readable by prior versions of the software. The `-txconfirmtarget`
config option is now obsolete and has also been removed. It will cause a
warning if used.
[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:
- `deprecationinfo_deprecationheight`: The `deprecationheight` field of
`getdeprecationinfo` has been deprecated and replaced by the `end_of_service`
object.

View File

@ -0,0 +1,407 @@
Notable changes
===============
RPC Changes
-----------
- `getdeprecationinfo` has several changes:
- It now returns additional information about currently deprecated and
disabled features.
- A new `end_of_service` object that contains both the block height for
end-of-service and the estimated time that the end-of-service halt is
expected to occur. Note that this height is just an approximation and
will change over time as the end-of-service block height approaches,
due to the variability in block times. The
`end_of_service` object is intended to replace the `deprecationheight`
field; see the [Deprecations](#deprecations) section for additional detail.
- This RPC method was previously only available for mainnet nodes; it is now
also available for testnet and regtest nodes, in which case it does not
return end-of-service halt information (as testnet and regtest nodes do not
have an end-of-service halt feature.)
- Several `z_sendmany`, `z_shieldcoinbase` and `z_mergetoaddress` failures have
moved from synchronous to asynchronous, so while you should already be
checking the async operation status, there are now more cases that may trigger
failure at that stage.
- The `AllowRevealedRecipients` privacy policy is now required in order to choose a
transparent change address for a transaction. This will only occur when the wallet
is unable to construct the transaction without selecting funds from the transparent
pool, so the impact of this change is that for such transactions, the user must specify
`AllowFullyTransparent`.
- The `z_shieldcoinbase` and `z_mergetoaddress` RPC methods now support an
optional privacy policy.
- The `estimatepriority` RPC call has been removed.
- The `priority_delta` argument to the `prioritisetransaction` RPC call now has
no effect and must be set to a dummy value (0 or null).
Changes to Transaction Fee Selection
------------------------------------
- The `-mintxfee` and `-sendfreetransactions` options have been removed. These
options used to instruct the wallet's legacy transaction creation APIs
(`sendtoaddress`, `sendmany`, and `fundrawtransaction`) to increase fees to
this limit and to use a zero fee for "small" transactions that spend "old"
inputs, respectively. They will now cause a warning on node startup if used.
Changes to Block Template Construction
--------------------------------------
We now use a new block template construction algorithm documented in
[ZIP 317](https://zips.z.cash/zip-0317#recommended-algorithm-for-block-template-construction).
- This algorithm no longer favours transactions that were previously considered
"high priority" because they spent older inputs. The `-blockprioritysize` config
option, which configured the portion of the block reserved for these transactions,
has been removed and will now cause a warning if used.
- The `-blockminsize` option, which configured the size of a portion of the block
to be filled regardless of transaction fees or priority, has also been removed
and will cause a warning if used.
- A `-blockunpaidactionlimit` option has been added to control the limit on
"unpaid actions" that will be accepted in a block for transactions paying less
than the ZIP 317 fee. This defaults to 50.
Removal of Priority Estimation
------------------------------
- Estimation of "priority" needed for a transaction to be included within a target
number of blocks, and the associated `estimatepriority` RPC call, have been
removed. The format for `fee_estimates.dat` has also changed to no longer save
these priority estimates. It will automatically be converted to the new format
which is not readable by prior versions of the software. The `-txconfirmtarget`
config option is now obsolete and has also been removed. It will cause a
warning if used.
[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:
- `deprecationinfo_deprecationheight`: The `deprecationheight` field of
`getdeprecationinfo` has been deprecated and replaced by the `end_of_service`
object.
Changelog
=========
ANISH M (3):
use SOURCES_PATH instead of local git DEPENDS_SOURCES_DIR
report the git-derived version in metrics screen
Update src/metrics.cpp by removing v prefix.
Alex Morcos (14):
Refactor CreateNewBlock to be a method of the BlockAssembler class
FIX: Account for txs already added to block in addPriorityTxs
FIX: correctly measure size of priority block
[rpc] Remove estimatepriority.
[mining] Remove -blockprioritysize.
[debug] Change -printpriority option
[cleanup] Remove estimatePriority
[rpc] sendrawtransaction no longer bypasses minRelayTxFee
[test] Remove priority from tests
[rpc] Remove priority information from mempool RPC calls
[rpc] Remove priorityDelta from prioritisetransaction
[cleanup] Remove coin age priority completely.
Allow setting minrelaytxfee to 0
Update example zcash.conf
Daira Emma Hopwood (34):
Remove unnecessary #include.
Adjust indentation to be consistent without changing existing code.
Repair show_help RPC test.
Fix bit-rotted code in miner tests.
Implement ZIP 317 computations.
`cargo update`
Add audits for updates to futures-* 0.3.28 and redjubjub 0.7.0.
Add `examine`, a wrapper around `std::visit` that reverses the arguments.
Use the new `examine` macro to replace all instances of `std::visit(match {...}, specimen)`, improving code readability.
Refactoring to avoid duplicated code.
Refactoring to avoid an unnecessary temporary.
Refactor that avoids using exceptions for local flow control and is simpler.
Correct the documentation of `-rpcconnect` in the example `zcash.conf`. `-rpcconnect` is only used by `zcash-cli`.
Change ZIP 401 mempool limiting to use conventional fee.
Change ZIP 401 mempool limiting to use constants decided in zcash/zips#565.
Warn on node startup if the removed `-blockprioritysize` option is set to a non-zero value.
Log (at the mempool DEBUG level) when a transaction cannot be accepted to the mempool because its modified fee is below the minimum relay fee.
Fix the dust threshold rate to three times 100 zats/1000 bytes. (We express it that way rather than 300 zats/1000 bytes, because the threshold is always rounded to an integer and then multiplied by 3.)
Fix some messages, comments, and documentation that: * used "fee" to mean "fee rate", "kB" to mean 1000 bytes, "satoshis" to mean zatoshis, or that incorrectly used "BTC" in place of "ZEC"; * used obsolete concepts such as "zero fee" or "free transaction"; or * did not accurately document their applicability.
Fix tests that failed due to the minimum relay fee being enforced.
Fix miner_tests btest.
Fix mempool_packages and prioritisetransaction RPC tests.
Implement `GetUnpaidActionCount` and `GetWeightRatio` for ZIP 317.
ZIP 317 block construction algorithm. This breaks tests which are repaired in subsequent commits.
Add assertions that `GetRandInt*` functions are called with `nMax >= 0`. All existing uses have been checked to ensure they are consistent with this assertion.
Repair `miner_tests.py` btest.
Repair some RPC tests.
mergetoaddress_helper.py: Use `generate_and_check` helper to mine a block and make sure that it contains the expected number of transactions.
mergetoaddress_helper.py: use Decimal for amounts and integers otherwise.
Remove the implementation of score-based block template construction and the `-blockminsize` option.
Add a `-blockunpaidactionlimit` config option to configure the per-block limit on unpaid actions for ZIP 317 block template construction.
miner_tests.cpp improvements.
random.h documentation improvements.
Fix/suppress clippy warnings.
Daira Hopwood (9):
Use a more recent URL format for GitHub release archives.
Clarify that patches to a dependency are under the same license as that dependency.
Update copyright date and email for tl_expected.
Use the same convention for the tl_expected download files as for native_cctools
Refactoring to split the weighted tx tree out of mempool_limit.{cpp,h} and make it more reusable.
Minor optimization to weighted_map::remove
This PR doesn't bring in any ZIP 317 changes yet
Another minor optimization
Change spelling of prioritisation in an error message
DeckerSU (1):
InsertBlockIndex: pass const reference on hash, instead of hash
Dimitris Apostolou (3):
Fix typo
Update documentation link
Fix typos
Evan Klitzke (1):
Fix automake warnings when running autogen.sh
Greg Pfeil (81):
Show in-progress tests when rpc-tests is interrupted
Make extra newline more explicit
Apply suggestions from code review
Make pool selection order more flexible
Simplify diversifier_index_t handling
Update tests for async z_sendmany
Limit UTXOs
Some orchard fixes for wallet_tx_builder
Return anchorHeight from ResolveInputsAndPayments
Refactoring InsufficientFundsError
Ensure we dont make Orchard change pre-NU5
Test updates for z_sendmany WalletTxBuilder changes
Fix weakened privacy policy for transparent change
Fix some overly-strict privacy policies in btest
Apply suggestions from code review
Unify requireTransparentCoinbase handling
Rename `Get*Balance` to `Get*Total`
Remove changes that arent needed by z_sendmany
Improve GetRequiredPrivacyPolicy
Add release notes for (a)sync z_sendmany changes
Assert that we get a change addr for any selector
Dont pass PrivacyPolicy to selector constructor
Address comments on WalletTxBuilder introduction
Make RPC test output more deterministic
Update WalletTxBuilder based on review
Clarify `AddressResolutionError`
Dont permit user-provided “internal” payments
Address WalletTxBuilder PR feedback
Ensure that a WalletTxBuilder tx balances
Additional z_sendmany test cases
Address WalletTxBuilder review feedback
Apply suggestions for WalletTxBuilder from code review
Simplify SelectOVKs
Have GetRecipientPools return a copy
Remove CWallet member from WalletTxBuilder
Improve taddr no-memo check
Update src/wallet/rpcwallet.cpp
Lock notes (except Orchard) in wallet_tx_builder
Improve Doxygen for note locking
Require `AllowRevealedRecipients` for t-change
Update release-notes for transparent change restriction
Correct EditorConfig for Makefiles
Split C++ generated from Rust into own lib
Simplify canResolveOrchard logic
Support ZIP 317 fees in the zcashd wallet
Correct change handling for ZIP 317 fees
Address review feedback re: ZIP 317 in wallet
Revert "Add `AllowRevealedSenders` to fix `mempool_nu_activation.py`"
Eliminate LegacyCompatZTXOSelector cycle
Simplify client.cpp
Enrich zcash-cli arg conversion
Better messages on client-side zcash-cli errors
Fix accidental reversion of #6409
Remove unnecessary explicit privacy policy
Use examine instead of std::visit
Simplify some vector initialization
Fix edge case revealed by #6409
Rename Arg* to Param
Adjust wallet absurd fee check for ZIP 317
Address review feedback for ZIP 317 fees in wallet
Address more ZIP 317 fee feedback
Fix zcash-cli crash when printing help message
Use null as the ZIP 317 fee sentinel instead of -1
Add z_sendmany RPC examples with fee field
Have z_shieldcoinbase use WalletTxBuilder
Address review feedback on z_shieldcoinbase
Fix an incorrect error message in a test
Minor improvements to z_shieldcoinbase
Support ZIP 317 fees for legacy wallet operations
Remove `-mintxfee` config option
Address review comments re: legacy wallet ZIP 317
Remove `-txconfirmtarget` config option
Restore previous `-maxtxfee` bound
Correct -maxtxfee lower bound diagnostic messages
WalletTxBuilder support for net payments
fixup! WalletTxBuilder support for net payments
Dont test “Insufficient funds” for `z_shieldcoinbase`
Update z_mergetoaddress to use WalletTxBuilder
Many z_mergetoaddress updates
Avoid extra copy in ResolveInputsAndPayments
Address z_mergetoaddress review feedback
Jack Grigg (77):
rust: Add `cxx` version of `RustStream`
rust: Migrate `OrchardMerkleFrontier` to `cxx`
CreateNewBlock: Leave more space for Orchard shielded coinbase
Retroactively enable ZIP 216 before NU5 activation
rust: Compile with ThinLTO
depends: Update Rust to 1.67.1
depends: Update Clang / libcxx to LLVM 15.0.6
Fix 1.67.1 clippy lints
depends: Evaluate `native_packages` before `packages`
qa: Fix year in postponement lines
qa: Fix `google/leveldb` tag parsing in `updatecheck.py`
qa: Handle commit IDs correctly to `updatecheck.py`
depends: `cxx 1.0.91`
depends: `native_zstd 1.5.4`
`cargo vet regenerate imports`
qa: Import Rust crate audits from ISRG
`cargo update`
qa: Postpone LevelDB 1.23
book: Add page with release support details and EoS halt heights
Update release support book page in release process
depends: Update Rust to 1.68.0
qa: Replace Firefox audits with aggregated Mozilla audits in registry
qa: Import Rust crate audits from ChromeOS
Move `fEnableAddrTypeField` outside `ENABLE_WALLET`
`s/string/std::string` in `init.cpp`
CI: Check that the PR branch has a sufficiently recent base for Tekton
CI: Fix permissions for Checks workflow
Add `CChainParams::RustNetwork`
wallet: Consolidate `CWalletTx` Sapling output decryption methods
wallet: Use `zcash_note_encryption` in `CWalletTx::DecryptSaplingNote`
wallet: Use `CWalletTx::DecryptSaplingNote` in more places
wallet: Use `zcash_note_encryption` in `CWallet::FindMySaplingNotes`
wallet: Use `zcash_note_encryption` in `CWalletTx::RecoverSaplingNote`
wallet: Remove recipient-side `SaplingNotePlaintext::decrypt`
CI: Fetch all history for "recent base" check
CI: Include explicit `failure()` condition in "recent base" check
CI: Use `github.head_ref` instead of `HEAD` for "recent base" check
book: Add End-of-Support heights for v5.3.3 and v5.4.2
CI: Remove most usages of `actions-rs` actions
CI: Migrate to `cargo-vet 0.5`
cargo vet prune
CI: Provide `write` permission for `pull-requests`
CI: Check out both the base and PR branches for "recent base" check
Migrate to `zcash_primitives 0.10`
depends: `cxx 1.0.92`
depends: CMake 3.26.0
depends: Postpone CCache updates again
cargo update
Use `RandomInvalidOutputDescription()` everywhere it makes sense
Merge most `cxx::bridge` definitions into a single bridge
Expand `CppStream` to cover all `Stream`-like C++ types
Migrate `OrchardMerkleFrontier` to use new `CppStream` APIs
build: Tolerate split LLVM versions
Use `cxx` bridge for all Orchard bundle inspection and validation
gtest: Minor improvements to `CoinsTests`
rust: Migrate Ed25519 FFI to `cxx`
Tell `cargo-vet` to ignore patched dependencies
cargo-vet: Regenerate imports
cargo-vet: Switch to Google's aggregated audits
More crate audits
Migrate to published `orchard 0.4`
qa: Fix update checker to handle `native_clang` version format
depends: CMake 3.26.3
depends: Rust 1.68.2
depends: `native_zstd 1.5.5`
depends: `cxx 1.0.94`
qa: Postpone dependencies we aren't updating
cargo update
Use published `zcash_primitives 0.11` and `zcash_proofs 0.11`
test: Avoid generating a chain fork in `mempool_packages` RPC test
test: Sync blocks before invalidating them in `mempool_packages` RPC test
depends: Boost 1.82.0
qa: Postpone Clang 16.0.2
cargo update
depends: Rust 1.69.0
make-release.py: Versioning changes for 5.5.0-rc1.
make-release.py: Updated manpages for 5.5.0-rc1.
Kris Nuttycombe (26):
Fix potential path or symlink traversal
Add a docker-compose.yml for prometheus/grafana metrics collection.
Apply suggestions from code review
Make all CCoinsView methods pure-virtual.
Remove `FakeCoinsViewDB` as it is identical to `CCoinsViewDummy`
Postpone dependency updates.
make-release.py: Versioning changes for 5.3.3.
make-release.py: Updated manpages for 5.3.3.
make-release.py: Updated release notes and changelog for 5.3.3.
Set urgency to `high` in Debian changelog.
Add information about deprecated features to `deprecationinfo` results.
Apply suggestions from code review
Add a wallet-aware transaction builder.
Use WalletTxBuilder for z_sendmany
Allow selectors to require transparent coinbase
Fix a longstanding zcashd build warning
Fix `make distclean` to recursively remove `rust/gen`
Improve const-ness of CChainParams retrieval by network ID
Explicitly provide CChainParams to `EnforceNodeDeprecation`
revert broken "safe extract" functionality in golden tests.
Refactor RPC privacyPolicy handling
Update to use the `ff 0.13` dependency stack.
Add `AllowRevealedSenders` to fix `mempool_nu_activation.py`
Calculate convential fee in `CreateTransaction` before stripping sigs.
Fix formating of money strings.
Use the conventional fee for prioritisation in prioritisetransactions.py
Luke Dashjr (1):
RPC/Mining: Restore API compatibility for prioritisetransaction
Marco Falke (1):
wallet: Remove sendfree
Marius Kjærstad (2):
New checkpoint at block 2000000 for mainnet
Update estimated number of transactions due to Blossom NU
Miodrag Popović (2):
Fix for broken cross-build to Windows target on Ubuntu 22.04 and Debian 11
Update depends/hosts/mingw32.mk to use posix variant library path
Sean Bowe (1):
Add additional audits.
Suhas Daftuar (4):
Add tags to mempool's mapTx indices
Fix mempool limiting for PrioritiseTransaction
Use fee deltas for determining mempool acceptance
Remove GetMinRelayFee
TrellixVulnTeam (1):
Adding tarfile member sanitization to extractall()
Wladimir J. van der Laan (1):
Merge #7730: Remove priority estimation
Yasser Isa (1):
DOWNLOAD_URL dynamic in fetch-params.sh
cronicc (1):
Fix Horizen Security contact email
instagibbs (2):
Gave miner test values constants for less error-prone values.
Corrected values
sasha (6):
Partially revert PR #6384, but only for URLs using a git commit hash
Download `native_cctools` and its `libtapi` to meaningful filenames
Better error messages if proof parameters aren't loaded
Enable the (existing) custom error message for the invalid checksum case
Re-download parameters if they already exist but don't have correct sums
Alias Sasha->sasha in release-notes.py to avoid authors.md split
Jack Grigg (2):
Improvements to code comments
Adjust documentation

View File

@ -1,3 +1,3 @@
[toolchain]
channel = "1.68.0"
channel = "1.69.0"
components = ["clippy", "rustfmt"]

View File

@ -16,9 +16,9 @@
//! These need to be macros, as clientversion.cpp's and bitcoin*-res.rc's voodoo requires it
#define CLIENT_VERSION_MAJOR 5
#define CLIENT_VERSION_MINOR 4
#define CLIENT_VERSION_REVISION 2
#define CLIENT_VERSION_BUILD 50
#define CLIENT_VERSION_MINOR 5
#define CLIENT_VERSION_REVISION 0
#define CLIENT_VERSION_BUILD 25
//! Set to true for release, false for prerelease or test build
#define CLIENT_VERSION_IS_RELEASE true

View File

@ -13,7 +13,7 @@
// Per https://zips.z.cash/zip-0200
// 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.
static const int APPROX_RELEASE_HEIGHT = 1992000;
static const int APPROX_RELEASE_HEIGHT = 2059000;
static const int RELEASE_TO_DEPRECATION_WEEKS = 16;
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.");