make-release.py: Updated release notes and changelog for 5.5.0-rc1.

This commit is contained in:
Jack Grigg 2023-04-20 22:19:50 +00:00
parent d71650e964
commit 7caa4123aa
3 changed files with 420 additions and 8 deletions

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

@ -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

@ -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