Changelog for
zcashd-5.0.0-2.49.x86_64.rpm :
* Sat Jul 09 2022 marecAATTdetebe.org- Update to version 5.0.0:
* Update v5.0.0 release notes to note NU5 upgrade
* Set NU5 activation height & bump protocol version.
* make-release.py: Updated release notes and changelog for 5.0.0.
* make-release.py: Updated manpages for 5.0.0.
* make-release.py: Versioning changes for 5.0.0.
* Revert \"Set RELEASE_TO_DEPRECATION_WEEKS to 2 weeks to provide RC EOS halt.\"
* Migrate to `zcash_primitives 0.6` et al
* Update rpcwallet help to better distinguish transparent-only APIs.
* Deprecate `getrawchangeaddress` and `z_listaddresses`
* Add tests to check auth data commitments committing to Orchard actions.
* Include getbalance in recommendations for z_getbalance and z_gettotalbalance replacements.
* Add missing parenthesis to -reindex help.
* make-release.py: Updated release notes and changelog for 5.0.0-rc1.
* make-release.py: Updated manpages for 5.0.0-rc1.
* Fix typos in release notes & Orchard wallet internal API doc.
* make-release.py: Versioning changes for 5.0.0-rc1.
* Fix a typo in the release script.
* Set RELEASE_TO_DEPRECATION_WEEKS to 2 weeks to provide RC EOS halt.
* Postpone dependency updates prior to v5.0.0-rc1
* Add -orchardactionlimit help text.
* Add -orchardactionlimit parameter to guard against memory exhaustion.
* Use default anchor confirmations for minconf in z_mergetoaddress.
* Change default anchor depth from 10 confirmations to 3
* Fix missing handling for imported transparent multisig addresses.
* Reproduce an assertion failure in the listaddresses RPC
* Update release process documentation to clarify the use of release stabilization branches.
* Apply suggestions from code review
* Build releases from a commit hash, rather than a named branch.
* Ensure transaction integer fields are zero-initialized.
* Add parity-scale-codec licenses to contrib/debian/copyright
* Gracefully handle Get(Sprout/Sapling)NoteWitnesses failure.
* Apply suggestions from code review
* Add z_get(total)balance to deprecation flags.
* Fix RPC tests that depend upon -anchorconfirmations=1
* Add -anchorconfirmations to the release notes
* Disallow -anchorconfirmations values > 100
* Add anchor depth parameter to Get
*NoteWitnesses
* Fix WalletTests.CachedWitnessesEmptyChain for new anchor selection.
* Select an anchor and notes that have 10 confirmations.
* Rename nOrchardAnchorConfirmations -> nAnchorConfirmations
* Select Orchard anchors at `-orchardanchorconfirmations` depth.
* Clarify documentation of the deprecation process.
* Remove `-allowdeprecated=all`
* Require wallet recovery phrase to be backed up for z_getnewaccount and z_getaddressforaccount
* Use ERROR level logging for fatal errors in main/init
* Add orchard pool metrics
* ThreadStartWalletNotifier: wait until !IBD, rather than !reindex
* Specify the format and epoch
* Add deprecation policy to the zcashd book.
* Remove zcrawreceive, zcrawjoinsplit, zcrawkeygen from default-allowed deprecated methods.
* Allow deprecated wallet features to be preemptively disabled.
* Update minimum chain work and set NU5 activation block hash for testnet
* Document the block time in the `z_gettreestate` RPC response
* Remove -developersapling since it hasn\'t been implemented for a long time
* Tidy up spacing in newly-ported gtests
* Update comments in newly-ported gtests to be more consistent with current codebase
* Update copyright header
* Port anchors_test to gtest suite CoinsTests
* Port anchors_flush_test to gtest suite CoinsTests
* Port nullifiers_test to gtest suite CoinsTests
* Port anchor_regression_test to gtest suite CoinsTests
* Port anchor_pop_regression_test to gtest suite CoinsTests
* Port nullifier_regression_test to gtest suite CoinsTests
* Port CCoinsViewTest to gtest suite CoinsTests
* Create a new gtest suite CoinsTests
* Make [seed_]insecure_rand available to the gtests
* Downgrade btest suite coins_test to BasicTestingSetup
* Port btest rpc_z_sendmany_taddr_to_sapling to gtest suite WalletRPCTests
* Port btest rpc_z_mergetoaddress_internals to gtest suite WalletRPCTests
* Port btest rpc_z_shieldcoinbase_internals to gtest suite WalletRPCTests
* Create a new gtest group WalletRPCTests
* Port btest test_basic_joinsplit_verification to gtest suite Joinsplit
* Allow rpc python tests to be run standalone
* Use bullseye apt source in Dockerfile to match debian:11 base image
* Use fallible version parsing for tags.
* Change the numbering convention for hotfixes to increment the patch number, not the hyphen number. fixes #4364
* btest parallelization work: tag #if\'d out test suites
* Allow parallel btest runs using make as the parallelization tool.
* Separate test suite from tests, inspired by upstream\'s #12926
* Remove proof parameter loading from btests
* Make a LoadGlobalWallet and UnloadGlobalWallet for gtests
* remove JoinSplitTestingSetup from sighash_tests -- it doesn\'t need it
* Closing #1539 simplifies gtest Makefile.
* Fix boolean initialization in Orchard transaction builder.
* zcashd-wallet-tool: improve the error message for an invalid logging filter directive.
* Default to error logging if we can\'t parse the log filter.
* Fix typo
* zcutil/build-debian-package.sh: copy executable and man page for zcashd-wallet-tool.
* Cargo.toml: Rename hdwallet source
* Update boost dependencies to version 1.79.0
* add tx-orchard-duplicate-nullifiers.h to Makefile.gtest.include
* Make `-reindex` and `-reindex-chainstate` imply `-rescan` (provided that the wallet is enabled and pruning is disabled, and unless `-rescan=0` is specified explicitly).
* zcutil/build.sh: Run zcutil/clean.sh before building. fixes #3625
* Fix to 4.7.0 release notes: testnet nodes that upgrade prior to height 1,842,420 actually still need to run with -reindex and -rescan.
* Bump actions/checkout from 2 to 3
* Fix typo in getaddressbalance RPC help
* Move LoadProofParameters to gtest/utils.cpp
* Sat Apr 16 2022 marecAATTdetebe.org- Update to version 4.7.0:
* make-release.py: Updated release notes and changelog for 4.7.0.
* make-release.py: Updated manpages for 4.7.0.
* make-release.py: Versioning changes for 4.7.0.
* qa: postpone native_clang, libcxx, boost, and native_b2 upgrades before 4.7.0 release
* Push back NU5 testnet release height to 1842420
* Apply suggestions from code review
* Update the release notes to describe consensus changes since v4.6.0
* Update protocol version to 170050 for v4.7.0 release.
* fix smoke_tests.py accounting math to remove the warning before test 4r
* Set NU5 testnet reactivation height.
* Defensively check for a null pindex in `FindFork`
* Don\'t advance the wallet init timer until past reindex.
* Revert \"rpc: Reload CNode spans after reloading the log filter\". fixes #5863
* add walletrequirebackup=false to the zcash argument list in smoke_tests.py
* Fix uninitialized sleep variable.
* Fix missing null initialization of `pindexLastTip` pointer in ThreadStartWalletNotifier
* depends: Remove direct `tokio` dependency
* depends: Remove `hyper 0.14.2` pin
* remove final dot from error msg
* cargo update
* qa: Update Berkeley DB release listener regex
* Make Orchard `finalState` serialization format match Sapling.
* fix grammar in message
* Ensure pindexPrev is not null before mining against it.
* test: Capture gtest log output and only print on error
* Fix error in z_listaccounts help text.
* change error message
* rpc: Document that enabling trace-level logging is unsafe
* wallet: Bump a trace log message to error in `Wallet::checkpoint`
* Apply suggestions from code review
* Check for overflow in IncrementAccountCounter().
* Apply suggestions from code review
* Fix assertion in wallet initialization when wallet best block is ahead of the main chain.
* Never consider transactions that pay the default fee to be free.
* qa: Postpone update to Rust 1.60
* Use DEFAULT_FEE consistently in wallet_unified_change test
* Return MAX_PRIORITY when transactions contain an Orchard bundle.
* Add \'AllowRevealedAmounts\' in tests where it is now necessary.
* Make all privacy policy checks after note selection.
* Fix >= bound when iterating over network upgrades.
* Use height of latest network upgrade in -mineraddress validation.
* Inline z_listaccounts check in wallet_accounts.py
* Add z_listaccounts RPC.
* lint: Add check that every Cargo patch has a matching replacement
* Update to orchard-0.1.0-beta.3, incrementalmerkletree 0.3.0-beta.2, secp256k1-0.21
* Correctly derive UAs for unknown Orchard receivers.
* IsNoteSaplingChange: Inline internal recipient check.
* Introduce push_orchard_result in z_listreceivedbyaddress.
* Introduce CWallet::HaveOrchardSpendingKeyForAddress.
* Check privacy strategy when setting allowed change types.
* Add logging to the miner to provide more detail on tx selection.
* Add a test demonstrating that change may cross the pool boundary without permission.
* Update Dockerfile
* wallet: Remove duplicate nullifier insertion into Orchard wallet
* wallet: Add assertions during Orchard wallet bundle appends
* Add trace-level logging to the Orchard wallet
* Fix logic for deciding whether to perform Orchard updates during rescan
* Only check nWitnessCacheSize on rewind if we\'ve ever witnessed a Sprout or Sapling note.
* Omit check of Orchard commitment root after rewind past first checkpoint.
* Update test to verify rewind behavior.
* Improve error output from OrchardWallet::get_spend_info
* Fix a bug in initialization of the Orchard wallet after NU5 activation.
* Refactor ChainTip to take a struct of Merkle trees instead of a pair.
* Adds a test demonstrating an Orchard wallet initialization bug.
* wallet: Rename `CWallet::GetBestBlock` to `GetPersistedBestBlock`
* AcceptToMemoryPool: Re-add missing code comment
* mempool: Remove duplicated anchor and nullifier assertions
* Apply `HaveShieldedRequirements` to coinbase transactions
* wallet: Initialise ThreadNotifyWallets with wallet\'s best block
* Fix the exception message for SetSeedFromMnemonic failure
* Fix sporadic failures in StoreAndRetrieveMnemonicSeedInEncryptedStore
* wallet: Treat `mnemonichdchain` records as key material
* AcceptToMemoryPool: Remove initial nullifier checks for Sprout and Sapling (within the mempool only), that are redundant with checks in HaveShieldedRequirements. The latter take into account nullifiers in the chain (using CCoinsViewMemPool::GetNullifier) and include Orchard.
* Fix test_wallet_zkeys failures by increasing diversifier search offset
* Do not display internal addresses in z_listaddresses.
* Add a test demonstrating that z_listaddresses reveals internal addrs.
* This check done for Sprout and Sapling (which is separate from consensus nullifier checks) was not being done for Orchard.
* Add account ID to z_listunspent results.
* qa: Add test for Orchard support in `z_listunspent`
* Update incrementalmerkletree version to fix GC bug & use updated API.
* Add Orchard support to z_listunspent.
* Apply suggestions from code review
* wallet: Persist Orchard tx height alongside note positions
* wallet: Add version information to Orchard commitment tree data
* wallet: Persist Orchard note positions with the witness tree
* wallet: Move Orchard note position data into a separate map
* qa: Add RPC test testing Orchard note position persistence
* Apply suggestions from code review
* Update FFI to use scoped APIs for viewing keys and addresses
* Add independent wallet persistence tests.
* .gitignore: add files temporarily created by autoconf.
* Fix an incorrect preprocessor symbol. Also repair the lint-includes-guards.sh script that was checking for the incorrect symbol.
* Postpone native_clang and libcxx 14.0.0.
* qa/zcash/updatecheck.py: print status code and response of failed http requests.
* Note that Debian 9 has been removed from the list of supported platforms.
* Update release notes to include all RPC changes since 4.6.0
* Add a test verifying the default addr is added when importing a Sapling key.
* Ensure that legacy imported addresses are properly restored to the wallet.
* Apply suggestions from code review
* Guard against invalid coercion of int to u32 in FindSpendableInputs
* Fix overzealous matching of Orchard FVKs to addresses.
* Add an RPC test that attempts a double-spend.
* Improve error logging in walletdb.cpp
* Rename constant in include file to avoid conflicts with btest
* Activate NU5 at start of DuplicateOrchardNullifier test.
* Revert \"AddBogusOrchardSpends\"
* Hardcode transaction data for DuplicateOrchardNullifier test.
* Add test that checks if a bundle containing duplicate Orchard nullifiers is rejected.
* AddBogusOrchardSpends
* test: Fix `WalletTests.GetConflictedOrchardNotes` gtest
* rust: Improve `PrecomputedTransactionData` construction errors
* test: Improve gtest handling of `TransactionBuilderResult::GetTxOrThrow`
* builder: Handle `std::ios_base::failure` exceptions during sighash
* test: Print all logged errors to stdout during gtests
* Improve error message for when a UA is only usable after a future NU.
* Repair `feature_zip239` RPC test by checking the debug log of node 0 rather than its stderr.
* Switch Jack Grigg\'s copyright on src/rust/{include/tracing.h, src/tracing_ffi.rs} to the Zcash developers (with his permission).
* contrib/debian/copyright: add license for Apache-2.0.
* contrib/debian/copyright: add licenses of Rust dependencies that do not have Expat/MIT as an option.
* contrib/debian/copyright: minor corrections and formatting
* contrib/debian/copyright: add license entries for Libtool macros.
* Remove the fExperimentalOrchardWallet flag and related logic
* Apply suggestions from code review
* Disallow testnet peers with a protocol version older than 170040
* Add missing filter to ensure only fully-transparent transactions end up in mapOrphans.
* Add test for rollback of an Orchard spend.
* Correctly return p2pkh/p2sh labels for z_listunifiedreceivers
* Improve consistency of RPC parameter and result attribute naming.
* Add undocumented components to getinfo API.
* Rename unifiedaddress->address in z_getaddressforaccount results
* Assert that pindexStart cannot be null in CWallet::ScanForWalletTransactions
* orchard_wallet_get_potential_spends: Do not use uint256 type.
* Introduce OrchardWallet::GetPotentialSpendsFromNullifier method.
* Fix GetConflictedOrchardNotes test.
* Only send exceptions to the log, not stderr
* Test Orchard shielded coinbase rules
* Start with an empty banlist if -reindex is set. fixes #5739
* Restore legacy default Sapling addresses to the keystore.
* zcashd-wallet-tool: adjust man page to correct copyright information.
* zcashd-wallet-tool: warn that wallet.dat needs to be backed up. fixes #5704
* zcashd-wallet-tool: add man page generation. fixes #5729
* test_wallet: Test GetConflictedOrchardNotes.
* qa: Remove pinned action indices from wallet_listreceived
* qa: Remove hard-coded consensus branch IDs from RPC tests
* Prevent a pindex == NULL case in the ScanForWalletTransactions traversal
* Set NU5 protocol version for regtest to 170040, bump protocol version
* builder: Use correct `PrecomputedTransactionData` for transparent sigs
* Add regtest documentation to book
* Fix logical merge conflicts after merging 4.7.0-rc1
* Migrate to latest `zcash/librustzcash` revision
* Add missing gtest/test_transaction_builder.h to Makefile.gtest.include
* Add missing wallet/orchard.h to src/Makefile.am
* make-release.py: Updated release notes and changelog for 4.7.0-rc1.
* make-release.py: Updated manpages for 4.7.0-rc1.
* make-release.py: Versioning changes for 4.7.0-rc1.
* Fix typos
* cargo update
* qa: Exclude `native_libtinfo` from dependency update checks
* wallet: Fix expected `listaddresses` sources in `rpc_wallet_tests`
* wallet: Fix Sapling address bug in `listaddresses`
* wallet: Fix bugs in `listaddresses`
* Fix bugs in wallet_addresses RPC test
* update listaddresses RPC for UAs, Orchard
* Documentation fix for UnifiedAddressForReciever (+ spelling corrections.)
* Fix legacy address handling in CWallet::GetPaymentAddressForRecipient
* Lock cs_main for accesses to chainActive in GetPaymentAddressForRecipient.
* Return failure rather than asserting on WriteRecipientMapping failure.
* Make CWallet::DefaultReceiverTypes height-dependent.
* Add RecipientType to GetPaymentAddressForRecipient result.
* Minor rename & documentation improvement.
* Remove stretch (debian 9), add bullseye (debian 11) in gitian descriptor
* Uncomment addtional tests that depend on z_viewtransaction.
* Fix missing AllowRevealedSenders flag in test.
* wallet: Add seedfp to transparent keys in dumpwallet / z_exportwallet
* [Wallet] add HD xpriv to dumpwallet
* Return the default unified address if we have the UFVK but no address metadata.
* Correctly report change outputs in z_viewtransaction.
* Add debug printing for receivers and recipient addresses.
* Update z_viewtransaction documentation to correctly represent field names.
* Apply suggestions from code review
* Ensure z_viewtransaction returns Orchard details
* Add Orchard & unified address support to z_viewtransaction.
* Add OrchardWallet::GetTxActions
* Load previously persisted sent transaction recipient metadata back into the wallet.
* build: Add missing `util/match.h` to `src/Makefile.am`
* z_sendmany: Expand `privacyPolicy` cases
* z_sendmany: Replace `allowRevealedAmount` with `privacyStrategy`
* build: Fix `zcash/address/orchard.hpp` filename in `src/Makefile.am`
* Simplify retrieval of unified account by address.
* Eliminate redundancy between the wallet and the keystore.
* Add UnifiedAddress variant to ZTXOSelector
* Update documentation of z_importviewingkey and z_exportviewingkey to address unified keys.
* Return the correct error for `z_getbalance` if a UA does not correspond to an account in the wallet..
* Style improvements in RPC tests.
* Adapt RPC tests to use z_getbalance for UAs.
* z_getbalance: Handle Unified Address case.
* Document that Orchard keys are not supported in z_importkey help
* Add orchard support to z_getnotescount
* Document that z_getnewaccount and z_getaddressforaccount replace z_getnewaddress.
* Add TODO for Orchard z_listunspent integration.
* Set default Orchard anchor confirmations to 1
* Add support for sending Orchard funds in `z_sendmany`
* Explicitly specify the change address in the Sapling migration.
* Add Orchard to change address generation
* Add Orchard cases to note selection logic
* Implement opportunistic shielding in `SpendableInputs::LimitToAmount`
* Select spendable inputs based on recipient and change pool types
* Fix bug in `SpendableInputs::LimitToAmount`
* Add unit tests for `SpendableInputs::LimitToAmount`
* Refactor `CWallet::GenerateChangeAddressForAccount`
* Apply suggestions from code review
* Fix indentation.
* Derive the new mnemonic seed from the legacy HD seed, if one is available.
* Tweaks to message text.
* qa/zcash/full_test_suite.py: enable `test_rpath_runpath` for Rust binaries, and reenable `test_fortify_source` for C++ binaries.
* Include $(bin_SCRIPTS) in `check-symbols`, `check-security`, and `clean` targets. Checking for stack canaries in `check-security` is disabled for Rust executables (Rust does support `-Z stack-protector=all` but only for the nightly compiler).
* Correct the fallback instruction for how to clear the terminal on macOS: pressing Command + K also clears scrollback.
* Update orchard_wallet_add_notes_from_bundle documentation.
* Simplify debug tracing.
* Serialize the Orchard note commitment tree to the wallet.
* Apply suggestions from code review
* Address suggestions from code review on #5637
* Modify `join_network` in tests to skip mempool resync.
* Ensure that Orchard spentness information is repopulated by LoadUnifiedCaches.
* CWallet::GetConflictS: Handle conflicting Orchard spends.
* Return std::optional
from CExtKey::Master
* Improve FFI interface documentation
* Set `meta` for `-datadir` option.
* Document that \'~\' cannot be used in `-datadir` (see #5661).
* Ensure the buffer used in `prompt` is zeroized even on error.
* Improve error message when the config file cannot be found, taking into account -conf and -datadir.
* Use the tracing crate for debugging.
* wallet: Alter `OrchardWallet::GetSpendInfo` to return the spending key
* Add Orchard spend support to the transaction builder
* Cleanups to error handling for the first invocation of zcash-cli.
* Improve memory hygiene, and use -stdin to pass the recovery phrase to the child zcash-cli process.
* Apply suggestions from code review
* Restore mined block heights when restoring decrypted notes.
* Apply suggestions from code review
* Simplify extraction of recovery phrase.
* Update tests with rollback checks.
* Restore decrypted notes to the wallet.
* Persist Orchard action index/IVK mappings in CWalletTx
* Update walletTx with decrypted Orchard action metadata.
* coins_tests: Update tests to include Orchard case.
* coins_tests.cpp: Add Orchard nullifier to TxWithNullifiers().
* Set number of confirmations for Orchard notes returned by FindSpendableInputs
* Respect maxDepth for Orchard notes in GetFilteredNotes
* Apply suggestions from code review
* Track mined-ness instead of spent-ness of notes in the Orchard wallet.
* Fix missing update to `last_checkpoint` on rewind.
* Apply suggestions from code review
* Add an `InPoint` type to the Orchard wallet to fix incorrect conflict data.
* Apply suggestions from code review
* Assert we never attempt to checkpoint the Orchard wallet at a negative block height.
* Add a test for Orchard note detection.
* Remove assertions that require Orchard wallet persistence to satisfy.
* Check wallet latest anchor against hashFinalOrchardRoot in ChainTip.
* Reset Orchard wallet state when rescanning from below NU5 activation.
* Record when notes are detected as being spent in the Orchard wallet.
* Fix missing locks for GenerateNewUnifiedSpendingKey tests.
* Split LoadWalletTx from AddToWallet
* Update incrementalmerkletree version
* Update MSRV for lints.
* Tweak the wording of the fallback messages when the terminal cannot be automatically cleared.
* Refactor use of `export_path` as suggested.
* The recovery phrase confirmation and `zcashd-wallet-tool` are being introduced in zcashd v4.7.0.
* Improved error handling.
* Move `wallet_tool.rs` from `src/rust/src` into `src/rust/bin`. Also add a brief description of `zcashd-wallet-tool` to `src/rust/README.md`.
* Add some text about choosing location of the physical backup. Add TODO for better handling of file not found and permission errors.
* Attempt to fix linking problem on ARM.
* Make a zcashd-wallet-tool executable.
* Extend uniqueness check in z_sendmany to UA receivers
* Call LoadProofParameters() in gtests that need proofs
* move proof parameter loading out of gtest/main.cpp and into utiltest.cpp
* make librustzcash_init_zksnark_params idempotent
* depends: Revert to `libc++ 13.0.0-3` for Windows cross-compile
* libzcash_script: Add more granular errors to the new APIs
* Respect minDepth argument for Orchard notes in GetFilteredNotes
* Add test for Orchard contribution to z_gettotalbalance
* rpc: Handle keypool exhaustion separately in `generate` RPC
* Add a roundtrip test for Orchard merkle frontier serialization from the C++ side.
* miner: Manually add dummy Orchard output with Orchard miner address
* Select Orchard receivers from UA miner addresses once NU5 activates
* Use `std::optional` in `CValidationInterface::GetAddressForMining`
* Add RPC test for the Orchard commitment tree bug on first NU5 testnet
* Add missing `view.PopAnchor(_, ORCHARD)` in `DisconnectBlock`
* Ensure the view\'s best Orchard anchor matches the previous block
* Orchard: invalidate mempool transactions that use orphaned anchors.
* wallet: add logging for failure cases in unified cache loading
* Log outpoint for failed Sapling witness lookup.
* gtests ordering: clean up wallet files before each WalletZkeysTest
* gtests ordering: make Metrics.GetLocalSolPS idempotent
* implement AtomicTimer::zeroize() that resets start_time and total_time
* wallet: rather than assert, error in case of inconsistency between FVK and address
* wallet_sendmany_any_taddr.py: Expect expired tx to be ignored.
* FindSpendableInputs: Add nDepth < 0 check.
* wallet_sendmany_any_taddr.py: Test sending output from expired tx.
* wallet: restore orchard address to IVK mappings during wallet loading
* wallet: restore Orchard secret keys from mnemonic seed
* wallet: consolidate unified key/address/account map reconstruction
* document global variables
* Modernize best block mutex/cv/hash variable naming
* Fix csBestBlock/cvBlockChange waiting in rpc/mining
* Filter returned Orchard notes by minimum confirmations.
* wallet_sendmany_any_taddr.py: Test sending from a change taddr.
* gtests ordering: CheckBlock.VersionTooLow calls SelectParams(MAIN)
* gtests ordering: ContextualCheckBlockTest\'s TearDown deactivates Blossom
* gtests ordering: change wallet filename in WriteZkeyDirectToDb
* rust: Fix clippy lint
* cargo update
* depends: Update Clang / libcxx to LLVM 13.0.1
* depends: Update Rust to 1.59.0
* qa: Postpone recent CCache release
* qa: Bump all postponed dependencies
* Migrate to `orchard` crate revision with circuit changes
* Add zcash_script V5 functions
* GenerateNewKey must be guarded by a cs_wallet lock
* remove superfluous space at end of native_packages line
* Select Orchard notes in FindSpendableInputs
* Regenerate `TxDigests` after rebuilding tx with Orchard bundle
* Select Orchard receivers preferentially from UAs
* Fix semantic merge conflicts
* Add Orchard to default UA receiver types
* Add mappings from Orchard receivers to IVKs to the wallet
* Update transaction size estimation to include V5 transactions
* Log calls to getblocktemplate
* Trial-decrypt candidate Sapling receivers with all wallet UFVKs
* Rename to `ZcashdUnifiedSpendingKey::GetSaplingKey` for consistency
* Return UFVK from `CWallet::GenerateNewUnifiedSpendingKey`
* Remove OrchardSpendingKey serialization code
* Add Orchard components to unified spending keys
* Add Orchard components to unified full viewing keys
* explain the 0x0f0f[..]0f0f powLimit constant for regtest
* on Arch only, use Debian\'s libtinfo5_6.0 to satisfy clang
* WriteRecipientMapping: Check that receiver exists in UA.
* Apply docfixes from code review
* Add Orchard components to unified address
* Add various bits of documentation
* Apply suggestions from code review
* Remove txid field from TxNotes
* CSerializeRecipientAddress: add Read method and make constructor private.
* Docfixes.
* ShieldToAddress: Factor out static shieldToAddress() helper.
* Move parsing of unified addresses to UnifiedAddress.
* Add test for Orchard wallet note detection.
* Add GetFilteredNotes to Orchard wallet.
* Add Rust backend for Orchard components of the wallet.
* add functional test
* ZIP 244: Address review comments
* Enforce length constraints on allPrevOutputs
* Make SaveRecipientMappings polymorphic in RecipientMapping type.
* Add Orchard support to the z_gettreestate RPC
* z_sendmany: Only get ua if decoded is ua variant.
* Cosmetic whitespace change
* Mark z_gettotalbalance and dumpwallet as deprecated
* Make `TransactionBuilder::AddOrchardOutput` memo optional
* Implement read and write for (txid, recipient) -> ua mapping.
* Enforce ZIP 244 consensus rules on sighash type
* Update ZIP 244 implementation
* Add Orchard recipient support to the transaction builder
* Untested, not working yet, use libtinfo from the debian packages
* z_listreceivedbyaddress: reject UA component addr (#5537)
* Update ZIP 244 test vectors
* Make `PrecomputedTransactionData` a required argument of `SignatureHash`
* Move shielded signature checks out of `ContextualCheckTransaction`
* SendTransaction: Introduce recipients argument.
* Move SendManyRecipient to wallet.h and introduce optional ua field.
* Rename sapling-specific zip32 FFI methods.
* Add test vectors for UFVK derivation
* fix wallet_listreceived.py, add blockdata to taddr output
* Fix missing std::variant header that was breaking Darwin builds.
* Add change field to z_listreceivedbyaddress for transparent addrs.
* Update z_listreceivedbyaddress to support unified addresses (5467)
* wallet: Separate counters for external and internal transparent keys
* wallet: Store internal transparent keys in the keypool
* wallet: Remove `CWallet::GetKeyFromPool`
* Address comments from review.
* wallet: Show UAs instead of Sapling receivers in `z_listunspent`
* Add unified address support to GetSourceForPaymentAddress
* Implement PaymentAddressBelongsToWallet for unified addresses.
* wallet: Don\'t show Sapling receivers from UAs in `z_listaddresses`
* Clarify documentation of z_getbalanceforviewingkey for Sprout viewing keys.
* Replace z_getbalanceforaddress with z_getbalanceforviewingkey
* Fix locking in z_getbalanceforaddress and z_getbalanceforaccount
* contrib/devtools/rust-deps-graph.sh: allow overriding the arguments to `cargo deps`.
* fix minconf parsing for z_getbalanceforaccount and z_getbalanceforaddress
* Fix nondeterministic test failure in wallet_listreceivedby.py
* Apply suggestions from code review.
* Apply suggestions from code review
* Use z_shieldcoinbase for Sprout funds in wallet_listreceived tests.
* allow UA as z_shieldcoinbase destination
* Fix nondeterministic test error (checking for the wrong error case).
* Update librustzcash dependency.
* All implementations of ComparisonTestFramework were overriding num_nodes
* enforce usage of the get_tests comptool interface as ComparisonTestFramework method
* Add a few additional cases to z_sendmany RPC tests.
* Address TODOs in rpc-tests/wallet-accounts.py
* Add accessor method for Sapling IVKs to SaplingDiversifiableFullViewingKey
* Fix a bug in the generation of addresses from UFVKs
* Do not add Sapling addresses to the wallet by default when adding extfvks.
* Add comment to zcash_script_new_precomputed_tx about references to input buffers
* Rename AddSaplingIncomingViewingKey -> AddSaplingPaymentAddress
* GenerateLegacySaplingZKey only needs to return an address, not an extfvk.
* Fix variable shadowing in change address derivation & add change IVK to the keystore.
* Add gtest for change address derivation.
* Add failing tests for z_sendmany ANY_TADDR -> UA and UA ->
* Simplify determination of valid change types.
* Fix z_sendmany handling of transparent OVK derivation in the ANY_TADDR case.
* Add a check for internal vs. external outputs to wallet_listreceived test.
* Use a BIP 44 change address for change when sending from legacy t-addrs.
* Implement derivation of the internal Sapling spending key.
* Implement OVK selection for z_sendmany.
* Add a first-class type for transparent full viewing keys.
* Add correct selection of change addresses to z_sendmany
* wallet: Implement `z_getbalanceforaddress`
* wallet: Fix account generation bug
* wallet: Implement `z_getbalanceforaccount`
* Add documentation for `UnifiedAddress::GetPreferredRecipientAddress`
* Use `ZTXOSelector::IncludesSapling` rather than selector internals.
* Clarify documentation of CWallet::FindAccountForSelector
* Make `FindSpendableInputs` respect `ZTXOSelector::RequireSpendingKeys()`
* Rename ZTXOSelector::SpendingKeysAvailable -> RequireSpendingKeys
* Apply suggestions from code review
* Use libzcash::RecipientAddress for z_sendmany recipients.
* Add RecipientAddress type.
* Add CWallet::FindAccountForSelector
* Modify CWallet::FindSpendableInputs to use ZTXOSelector
* Replace `HaveSpendingKeyForAddress` with checks at ZTXOSelector construction.
* Add support for unified addresses to CWallet::ToZTXOSelector
* Replace the badly-named `PaymentSource` with `ZTXOSelector`
* Move FindSpendableInputs to CWallet
* rust: Add missing checks for transparent UFVK items
* rust: Add missing checks for shielded UFVK items
* rust: Add missing Orchard receiver check in UA parsing
* wallet: Reverse order of arguments to z_getaddressforaccount
* wallet: Show UAs owned by the wallet in `z_viewtransaction`
* wallet: Implement `z_listunifiedreceivers`
* wallet: Implement `z_getaddressforaccount`
* wallet: Implement `z_getnewaccount`
* Update release notes to reflect z_sendmany changes
* Return z_sendmany errors synchronously when possible.
* Apply suggestions from code review
* Require an explicit flag to allow cross-pool transfers in z_sendmany.
* Fix conditions around dust thresholds.
* Transaction builder must not set consensus branch ID for V4 transactions.
* Use transaction builder for asyncrpcoperation_sendmany.
* mining: submitblock: log detailed equihash solution error
* update doctest in gtest suite to prefer hashlib
* blake2b/s is integrated into hashlib, drop external python package dependency
* Apply suggestions from code review
* Replace call to drop with zeroization.
* Avoid a warning by explicitly calling drop.
* Apply suggestions from code review
* Improve error messages in the case of taddr decoding failure.
* Use libzcash::PaymentAddress instead of std::string in mergetoaddress
* Remove a use of KeyIO::DecodeDestination in z_shieldcoinbase
* Remove uses of KeyIO::DecodeDestination
* Replace `DecodeDestination` in `GetMinerAddress` with `DecodePaymentAddress`
* Remove `RawAddress`
* Remove spurious variant from asyncrpcoperation_sendmany
* Add raw transparent address types to PaymentAddress
* Remove spurious uses of HaveSpendingKeyForPaymentAddress
* Use CKeyID and CScriptID instead of new P2PKH/P2SHAddress classes.
* Remove the `InvalidEncoding` type from key & address variants.
* Fix encoding order of unified addresses.
* Apply suggestions from code review
* Improve documentation of UFVK/UA metadata storage semantics.
* Use Bip44TransparentAccountKeyPath() for Bip44AccountChains keypath construction.
* Make `FindAddress` correctly check for maximum transparent child index.
* Fix typos
* Apply suggestions from code review
* Lock cs_main prior to calling blockToJSON
* Update copyright year to 2022
* Ensure that unified address metadata is always correctly populated.
* Remove unused ufvkid argument from AddTransparentSecretKey
* Rename `ZcashdUnifiedSpendingKeyMetadata` -> `ZcashdUnifiedAccount`
* Only derive ZcashdUnifiedFullViewingKey from UnifiedFullViewingKey
* Apply suggestions from code review
* Fix handling of unified full viewing key metadata.
* Add test for CKeyStore::AddUnifiedAddress
* Add test for wallet UA generation & detection.
* Add tests for keystore storage and retrieval of UFVKs.
* Add CWallet::GetUnifiedForReceiver
* Add newly generated transparent UA receivers to the wallet.
* AddTransparentSecretKey does not need to take a CExtKey
* Add unified address generation.
* Add key metadata to walletdb.
* Load unified full viewing keys from the walletdb.
* Add unified address tracking to KeyStore
* Store ufvks to the wallet database.
* Add new and modify existing Orchard RPCs, non-functional
* Add unified key components to the transparent & Sapling wallet parts.
* Add ZcashdUnifiedKeyMetadata and libzcash::ReceiverType
* Compute key id for UFVKs.
* Check the output of zip339_phrase_to_seed in MnemonicSeed initialization.
* Add functions for generating BIP-44 and ZIP-32 keypaths
* add -orchardwallet experimental feature flag
* add ParseArbitraryInt() for diversifier index
* Apply suggestions from code review
* Apply suggestions from code review
* Apply suggestions from code review
* Add tests for ufvk roundtrip serialization.
* Apply suggestions from code review
* Add UnifiedFullViewingKey type.
* Add Rust FFI components for unified full viewing keys.
* Adds SaplingDiversifiableFullViewingKey
* Update to ufvk zcash_address build.
* Remove ZcashdUnifiedAddress in favor of UnifiedAddress
* Use CKeyID and CScriptID instead of new P2PKH/P2SHAddress classes.
* Refine structure of Zcash address generation.
* Remove Orchard spending key equality implementation.
* Remove incorrect FFI method documentation.
* Update orchard & librustzcash dependency versions.
* Apply suggestions from code review
* Adds Orchard Address, IncomingViewingKey, FullViewingKey, and SpendingKey types.
* Add libzcash::AccountId type.
* Improve documentation of the `-walletrequirebackup` zcashd wallet configuration option.
* Minor textual fixes to release notes.
* Apply suggestions from code review
* Fix error message text to refer to zcashd-wallet-tool rather than the RPC method.
* Parameterize HD keypath parsing by coin type.
* Minor naming fixes
* Only maintain CKeyID for the transparent part of ZcashdUnifiedAddress
* Add diversifier_index_t::ToTransparentChildIndex
* Use MnemonicSeed instead of HDSeed where appropriate.
* Update documentation for GenerateNewSeed.
* Generalize keypath parsing over account id.
* Minor cleanup of the code that searches for a valid transparent key.
* Document mnemonic-seed-related RPC method changes & update changelog.
* Fix polymorphism of string serialization.
* Fix name of menmonic entropy length constant.
* Apply suggestions from code review
* Do not strip quotes when verifying mnemonic seed.
* Style fix in BIP 32 path account parsing test.
* Restore legacy HDSeed encryption tests.
* Clean up handling of mnemonic seed metadata.
* Fix max transparent diversifier index.
* Fix naming of unified spending & full viewing keys
* Fix transparent BIP-44 keypaths.
* Restore FindAddress comment
* Fix diversifier_index_t less than operator.
* Apply suggestions from code review
* Use SecureString for mnemonic phrase.
* Clean up format of recovery information in the wallet dump.
* Move CKeyMetadata back to wallet.h
* Fix spurious test passage.
* Restore legacy HD seed storage & retrieval tests.
* Address comments from code review.
* Use hardened derivation for the legacy Sapling key at the address index level.
* Require backup of the emergency recovery phrase.
* Use 0x7FFFFFFF for the legacy account ID.
* Fix wallet import/export test
* Revert change to the type of GenerateNewKey
* Use legacy address for Sapling migration until UA functionality is available to the RPC tests.
* Replace account ID with ZIP-0032 key path in listaddresses output.
* Generate legacy Sapling addresses from the mnemonic seed.
* Derive transparent keys from mnemonic seed.
* Apply suggestions from code review
* Update librustzcash dependency version.
* Remove unused forward declaration.
* Fix tests for wallet operations on legacy Sapling keys.
* Use the default UA-based Sapling address for the saplingmigration tool.
* Add unified full viewing keys and Zcash-internal unified addresses.
* Adds basic unified spending key derivation.
* Add support for externally searching for valid Sapling diversifiers.
* Derive random HD seeds from ZIP-339 seed phrases.
* Update base image used by Dockerfile from debian 10 to debian 11
* Tue Apr 05 2022 marecAATTdetebe.org- Update to version 4.6.0.2:
* Update release notes for v4.6.0-2
* make-release.py: Updated release notes and changelog for 4.6.0-2.
* make-release.py: Updated manpages for 4.6.0-2.
* make-release.py: Versioning changes for 4.6.0-2.
* Remove stretch (debian 9), add bullseye (debian 11) in gitian descriptor
* Postpone native_clang and libcxx 14.0.0.
* qa/zcash/updatecheck.py: print status code and response of failed http requests.
* qa: Exclude `native_libtinfo` from dependency update checks
* depends: Revert to `libc++ 13.0.0-3` for Windows cross-compile
* rust: Fix clippy lint
* depends: Update Clang / libcxx to LLVM 13.0.1
* depends: Update Rust to 1.59.0
* qa: Postpone recent CCache release
* qa: Bump all postponed dependencies
* remove superfluous space at end of native_packages line
* on Arch only, use Debian\'s libtinfo5_6.0 to satisfy clang
* Untested, not working yet, use libtinfo from the debian packages
* document global variables
* Modernize best block mutex/cv/hash variable naming
* Fix csBestBlock/cvBlockChange waiting in rpc/mining
* Update base image used by Dockerfile from debian 10 to debian 11
* Replace call to drop with zeroization.
* Avoid a warning by explicitly calling drop.
* Thu Jan 06 2022 marecAATTdetebe.org- Update to version 4.6.0.1:
* Add release notes for v4.6.0-1
* make-release.py: Updated release notes and changelog for 4.6.0-1.
* make-release.py: Updated manpages for 4.6.0-1.
* make-release.py: Versioning changes for 4.6.0-1.
* rpc: Fix regression in getblocktemplate output
* test: Fix ZIP 244 implementation
* test: check getblocktemplate output before and after NU5
* assert that the return value of submitblock is None
* Thu Dec 23 2021 marecAATTdetebe.org- Update to version 4.6.0:
* str4d suggested changes to release-notes-4.6.0.md
* make-release.py: Updated release notes and changelog for 4.6.0.
* make-release.py: Updated manpages for 4.6.0.
* make-release.py: Versioning changes for 4.6.0.
* test: Use result of getblocktemplate to submitblock
* test: fix bugs in test framework
* Add libtinfo5 to gitian packages list
* only librustzcash in config.offline
* update hash for librustzcash
* make-release.py: Updated release notes and changelog for 4.6.0-rc1.
* make-release.py: Updated manpages for 4.6.0-rc1.
* make-release.py: Versioning changes for 4.6.0-rc1.
* Update release notes
* Migrate to latest revisions of Zcash Rust crates
* [rpc] mining: Omit uninitialized currentblockweight, currentblocktx
* getblocktemplate: add NU5 commitments to new `defaultroots` section
* rust: Remove misleading log message
* Revert \"lint: Fix false positive\"
* qa: Postpone recent CCache releases
* depends Update Rust to 1.57.0
* depends: Update Boost to 1.78.0
* cargo update
* Batch-verify Orchard transactions at the block level.
* Don\'t log \'ERROR: spent index not enabled\'
* cargo update
* test: automatically add missing nuparams
* ed25519-zebra 3
* cargo update
* Rename OrchardMerkleTree -> OrchardMerkleFrontier
* fix typo in docker run\'s volume argument
* CI: Add Pyflakes to lints workflow
* rust: Move `incremental_sinsemilla_tree_ffi` into crate root
* Explain how to get rid of a tiny duplicated function
* Explain UINT_MAX error return value
* Remove redundant variable
* Use correct copyright header
* Remove an unused header
* Increment the zcash_script API version
* Add sigop count functions to zcash_script library
* Move `CurrentTxVersionInfo` into a new file
* Fix typos
* depends: Update Clang / libcxx to LLVM 13
* depends: Update Rust to 1.56.1
* Bump all postponed dependencies
* tracing-subscriber 0.3
* cargo update
* Update entrypoint.sh
* Fix wallet-related wording in doc/reduce-traffic.md
* better wallet network info error handling
* Update support for FreeBSD
* contrib: Add space between URL and period
* Remove unused `AddDestData` method.
* Disable IBD for all boost tests
* Update reduce-traffic.md - add one word
* add TestSetIBD(bool) for testing
* Add a check to test that wallet load fails if we\'re on the wrong network.
* Persist network id string instead of bip44 coin type.
* Add BIP 44 coin type to persisted wallet state.
* contrib: Add license information for libc++ and libevent
* contrib: Update Debian copyright file to follow the v1 format
* Add buster to the list of suites used by gitian
* Sun Oct 10 2021 marecAATTdetebe.org- Update to version 4.5.1:
* Update v4.5.1-1 release notes with bugfix
* make-release.py: Updated release notes and changelog for 4.5.1-1.
* make-release.py: Updated manpages for 4.5.1-1.
* make-release.py: Versioning changes for 4.5.1-1.
* depends: Postpone dependency updates
* cargo update
* Use lowerCamelCase for listaddresses JSON
* Consistently group Sapling addresses by IVK for every source.
* Add listaddresses check to wallet_addresses.py
* Include `ImportedWatchOnly` as a PaymentAddressSource result.
* Update release notes for v4.5.1-1 to reflect the addition of `listaddresses`
* Group legacy_hdseed Sapling addresses by account ID.
* Apply suggestions from code review
* Apply suggestions from code review
* Correctly handle imported Sapling addresses
* Fix comment
* Mark v5 transaction format as standard for NU5
* Categorize listaddresses result by source type.
* Add `listaddresses` RPC method.
* Wed Sep 29 2021 marecAATTdetebe.org- Update to version 4.5.1:
* make-release.py: Updated release notes and changelog for 4.5.1.
* make-release.py: Updated manpages for 4.5.1.
* make-release.py: Versioning changes for 4.5.1.
* depends: Postpone native_ccache 4.4.2
* Fix bugs in testnet Orchard circuit
* wallet: Check spent shielded notes in CWalletTx::IsFromMe
* Fri Sep 24 2021 marecAATTdetebe.org- Update to version 4.5.0:
* Add notable changes to v4.5.0 release notes
* Set testnet activation height for NU5
* make-release.py: Updated release notes and changelog for 4.5.0.
* make-release.py: Updated manpages for 4.5.0.
* make-release.py: Versioning changes for 4.5.0.
* Update halo2 and orchard dependencies with BOSL Zcash exception
* cargo update
* bench: Add Orchard logic to zcbenchmarks
* rust: Skip running the Orchard batch validator on an empty batch
* wallet: Batch-validate all Orchard signatures in the wallet on load
* rust: Move Orchard batch logic into BatchValidator methods
* build: Add missing source file to zcash_gtest_SOURCES
* build: Ensure that cargo uses vendored dependencies for git repos
* build: Add primitives/orchard.h to list of header files
* cargo update
* contrib: Add script for generating a graph of our Rust dependencies
* Migrate to latest revisions of orchard and the zcash_
* crates
* make-release.py: Updated release notes and changelog for 4.5.0-rc1.
* make-release.py: Updated manpages for 4.5.0-rc1.
* make-release.py: Versioning changes for 4.5.0-rc1.
* net: Reject unknown CInv message types
* test: Set up mininodes at the start of feature_zip239
* Migrate to latest revisions of Zcash Rust crates
* cargo update
* qa: Boost 1.77.0
* Add named constants for legacy tx authDigest placeholder value
* test: Fix bug in mininode.SpendDescription.deserialize
* depends: Update Rust to 1.54.0
* Postpone dependency updates that require CMake
* Update authors of librustzcash to everyone currently and formerly on Core team (in alphabetical order).
* Update funding logic
* Add usage documentation for manual and faucet driven tests
* Update funding logic bug
* test: Implement CInv.__eq__() for mininode to simplify RPC test
* Use wtxid for peer state management
* Add MSG_WTX support to inv messages
* ProcessGetData: Respond to MSG_WTX requests
* test: Add v5 tx support to mininode
* test: Fix bugs in mininode transaction parser
* Implement CInv message type MSG_WTX
* Add fix and note for timing issue
* Remove sprout funding flow logic
* Introduce a WTxId struct
* Update depends/packages/native_rust.mk
* Update depends/packages/native_clang.mk
* add missing aarch64 build deps
* Sort taddr txns by txindex in addition to height
* CI: Add Dependabot config to keep Actions up-to-date
* test: Use correct field of getnetworkinfo to read protocol version
* Fix typos
* Parse consensus branch ID when reading v5 transaction format
* Separate the consensus and internal consistency checks for branch ID
* Print `nConsensusBranchId` in `CTransaction::ToString`
* builder: Generate v5 transactions from NU5 activation
* test: Add NU5 test cases to existing RPC tests
* Lock the wallet in SetBestChainINTERNAL
* Fix clippy complaints.
* Use manual serialization for Merkle frontiers rather than bincode.
* lint: Add missing include guards
* lint: remove duplicate include
* CI: Ignore errors from general lints we don\'t yet have passing
* Avoid need to cast away const in the C caller of zip339_free_phrase.
* Update unified address test data to take account of HRPs in padding (https://github.com/zcash/librustzcash/pull/419).
* Cargo.toml: use librustzcash after the merge of https://github.com/zcash/librustzcash/pull/424 .
* test: Fix pyflakes warnings
* Update URL for Boost source download (from dl.bintray.com to boostorg.jfrog.io).
* ZIP 339 support.
* test: Print reject reason if RPC test block rejected instead of accepted
* Only use AddInventoryKnown for transactions
* [qa] py2: Unfiddle strings into bytes explicitly
* test: Add basic test for `reject` code
* net: Fix sent reject messages for blocks and transactions
* Move mempool rejections to new debug category
* Add information to errors in ConnectBlock, CheckBlock
* Remove most logging from transaction validation
* Add function to convert CValidationState to a human-readable message
* Introduce REJECT_INTERNAL codes for local AcceptToMempool errors
* Add debug message to CValidationState for optional extra information
* Add assertion and cast before sending reject code
* Add absurdly high fee message to validation state (for RPC propagation)
* [net] split PushInventory()
* protocol.h: Make enums in GetDataMsg concrete values
* protocol.h: Move MESSAGE_START_SIZE into CMessageHeader
* net: Hardcode protocol sizes and use fixed-size types
* net: Consistent checksum handling
* tidy up CInv::GetCommand
* getdata enum issue fix
* Removed ppszTypeName from protocol.cpp
* Get rid of CTxMempool::lookup() entirely
* Optimization: use usec in expiration and reuse nNow
* Optimization: don\'t check the mempool at all if no mempool req ever
* Optimize the relay map to use shared_ptr\'s
* Switch CTransaction storage in mempool to std::shared_ptr
* Add support for unique_ptr and shared_ptr to memusage
* Defer inserting into maprelay until just before relaying.
* Do not use mempool for GETDATA for tx accepted after the last mempool req.
* ProcessGetData(): Rework IsExpiringSoon check
* qa: Bump `sync_mempool` timeout for `prioritisetransaction.py`
* Adjust code comments to remove topological-sort references
* Remove unused account-related wallet methods.
* [wallet] Kill accounts
* [wallet] Remove wallet account RPCs
* [RPC] [wallet] allow getbalance to use min_conf and watch_only without accounts.
* Move bloom and feerate filtering to just prior to tx sending.
* Return mempool queries in dependency order
* Handle mempool requests in send loop, subject to trickle
* Split up and optimize transaction and block inv queues
* Eliminate TX trickle bypass, sort TX invs for privacy and priority.
* [wallet] GetBalance can take a min_depth argument.
* [wallet] factor out GetAvailableWatchOnlyBalance()
* [wallet] deduplicate GetAvailableCredit logic
* [wallet] Factor out GetWatchOnlyBalance()
* [wallet] GetBalance can take an isminefilter filter.
* [wallet] Remove unneeded legacy getbalance code
* [wallet] Add GetLegacyBalance method to simplify getbalance RPC
* Move GetAccountBalance from rpcwallet.cpp into CWallet::GetAccountBalance
* [tests] Remove wallet accounts test
* Move CWalletDB::ReorderTransactions to CWallet
* Optimisation: Store transaction list order in memory rather than compute it every need
* Add CWallet::ReorderTransactions and use in accounting_tests.cpp
* Add CWallet::ListAccountCreditDebit
* Fix insanity of CWalletDB::WriteTx and CWalletTx::WriteToDisk
* Add TxPriority class and comparator
* Add a score index to the mempool.
* Store the total sig op count of a tx.
* Print mempool size in KB when adding txn
* Add CFeeRate += operator
* Track (and define) ::minRelayTxFee in CTxMemPool
* Fix calling mempool directly, instead of pool, in ATMP
* Reverse the sort on the mempool\'s feerate index
* test: Flush wallet in WriteCryptedSaplingZkeyDirectToDb before reopening
* Revert \"Remove reference to -reindex-chainstate\"
* Report reindexing progress in GUI
* Add -reindex-chainstate that does not rebuild block index
* Optimize ActivateBestChain for long chains
* Switch reindexing to AcceptBlock in-loop and ActivateBestChain afterwards
* Make ProcessNewBlock dbp const and update comment
* test: Fix race condition in p2p_txexpiringsoon
* test: Wait for transaction propagation in shorter_block_times RPC test
* More precise terminology: \"lock free\" -> \"unlocked\"
* Change mapRelay to store CTransactions
* Use txid as key in mapAlreadyAskedFor
* Replace trickle nodes with per-node/message Poisson delays
* fix locking issue with new mempool limiting
* depends: Greatly simplify the Clang 12 patch
* cargo fmt
* CI: Use Rust 1.54 for lints
* rust: metrics 0.17
* rust: cargo update
* depends: Fix issue cross-compiling BDB to Windows with Clang 12
* depends: Update utfcpp to 3.2.1
* depends: Update Clang / libcxx to LLVM 12
* depends: Update Rust to 1.54.0
* Fix error strings to correctly reflect context.
* Use DOS level 100 for noncontextual checks.
* Postpone dependency updates we aren\'t doing in this release
* Track lengths when copying receiver data from C++ to Rust
* Add constants for UA typecodes
* Make Sapling Spend and Ouput count, and Orchard Action count checks be noncontextual.
* Improve error message when a block would overfill the Orchard commitment tree.
* Document why a nested call to ExtractMinerAddress is not recursive
* Fix typo in method documentation
* CI: Add Rust lints
* CI: Check scripted diffs
* CI: Add workflow that runs general lints
* Pass network type through to UA address handling logic
* Add support for decoding and encoding Unified Addresses
* Use a visitor for handling -mineraddress config option
* Use `libzcash::RawAddress` in `CWallet::GetFilteredNotes`
* Introduce libzcash::RawAddress type
* Apply suggestions from code review
* Update Orchard commitment tree hashes to use total MerkleCRH^Orchard.
* Ensure that the Orchard note commitment tree does not exceed its maximum size.
* Add check for consistency between nActionsOrchard and Orchard flags.
* miner: Set coinbase expiry height to block height from NU5 activation
* test: Fix OverwinterExpiryHeight test after ZIP 203 contextual changes
* test: Check for updated empty-tx reject messages in transaction tests
* ZIP 213: Add checks to support Orchard shielded coinbase outputs.
* ZIP 203: Enforce coinbase nExpiryHeight consensus rule from NU5
* Prevent undefined behaviour in `CTransaction::GetValueOut()`
* Add check that v5 transactions have empty Sprout joinsplits.
* Retract partial Orchard test support.
* Account for Orchard balance in GetValueOut and GetShieldedValueIn.
* Add Orchard value balance checks.
* Make valueBalanceSapling a private non-const member of CTransaction.
* Rename tx.valueBalance -> tx.valueBalanceSapling
* Check consensus branch ID for V5 transactions.
* Add NU5 upper bound check on nSpendsSapling, nOutputsSapling, nActionsOrchard
* Make CTransaction::nConsensusBranchId a std::optional
* Ensure Sapling versions are valid after NU5
* ZIP 225: v5 transaction check rules
* Include Orchard bundle in transaction dynamic usage
* test: Update CCoinsViewTest with changes to CCoinsView interface
* Apply suggestions from code review
* Add Orchard nullifiers to nullifiers cache.
* Add consensus check for duplicate Orchard nullifiers within a single transaction.
* Apply suggestions from code review
* Document source of Orchard merkle tree test data.
* Fix implmentation of OrchardMerkleTree.DynamicMemoryUsage
* Consistently panic on null commitment tree pointers.
* Apply style suggestions.
* Fix header guards for incremental_sinsemilla_tree.h
* Fix Orchard incremental Merkle tree empty root.
* Apply suggestions from code review
* Apply suggestions from code review
* Update to released version of incrementalmerkletree
* Update orchard dependency.
* Documentation cleanup.
* Add Orchard merkle tree anchor tests.
* Add Orchard bundle commitments to merkle tree.
* Check nullifiers length against bundle actions length.
* Return std::optional for GetAnchor
* Orchard changes to coins & consensus.
* Implement the Rust side of the incremental merkle tree FFI.
* Check Orchard bundle-specific consensus rules, i.e. proofs
* rust: Load Orchard circuit parameters at startup
* Minor fixes to documentation and formatting
* Implement Orchard pool value tracking
* test: Add test case for popping from an empty history tree
* rust: Document some requirements for history tree FFI methods
* rpc: Document getblock RPC finalorchardroot field, omit before NU5
* test: Cleanups to ZIP 221 Python test code
* test: Check history trees across Canopy and NU5 activations
* Use V2 history trees from NU5 onward
* test: Use valid consensus branch IDs in history tree tests
* rust: Move history tree FFI declarations into a separate header
* rust: Migrate to zcash_history with versioned trees
* rust: Move history tree FFI logic into a module
* Copy authDigest in CTransaction::operator=(const CTransaction &tx)
* ConnectBlock: Check NU activation when deriving block commitments
* test: Check hashBlockCommitments before, at, and after NU5 activation
* Improve docs about setting CBlockIndex hash fields
* Skip hashBlockCommitments check when testing block templates
* test: Check for valid hashBlockCommitments construction post-NU5
* ZIP 244 hashBlockCommitments implementation
* Rename hashLightClientRoot to hashBlockCommitments in block header
* Move OrchardBundle to its own header file.
* Fix typo adddrman to addrman as requested in #8070
* Remove non-determinism which is breaking net_tests #8069
* book: Note that cargo patches work with absolute paths
* book: Add dev guide page about Rust dependencies
* Update transaction auth commitments for pre-v5 transactions.
* rust: Fix patched dependencies
* Implement Orchard signature validation consensus rules
* Implement Orchard authorization batch validator
* rust: Explicitly return null hash for pre-v5 auth digests
* Improvements to CBlock::BuildAuthDataMerkleTree
* Document next_pow2 effects and algorithm source
* rust: Documentation improvements to FFI methods
* CI: Build book with latest mdbook
* CI: Publish correct book directory
* Throw an exception instead of asserting if Rust tx parser fails
* test: Regenerate sighash.json after generator fixes
* test: Small fixes to sighash test vector generation
* test: Generate valid Sapling types
* Fix tests that assume CTxOuts can be \"null\"
* ZIP 244 hashAuthDataRoot computation
* ZIP 244 signature digests
* ZIP 244 transaction digests
* CTransaction: Make new ZIP 225 fields non-const and private
* rust: Document read_callback_t and write_callback_t
* Remove early return logic from transaction parsing
* wallet: Use CDataStream.data()
* dbwrapper: Use new .data() method of CDataStream
* streams: Remove special cases for ancient MSVC
* streams: Add data() method to CDataStream
* contrib: Add BOSL to contrib/debian/copyright
* v5 transaction format parser
* ZIP 225 tx format constants
* rust: Enable C++ streams to be passed into Rust code
* Extract SpendDescriptionV5 and OutputDescriptionV5 classes
* Implement ZIP 216 consensus rules
* metrics 0.16 and metrics-exporter-prometheus 0.5
* Migrate to latest zcash_
* crates
* cargo update
* Re-include reading blocks from disk in block connection benchmark
* Thu Jun 10 2021 marecAATTdetebe.org- Update to version 4.4.1:
* Fix typo in release notes
* Add bugfix to v4.4.1 release notes
* make-release.py: Updated release notes and changelog for 4.4.1.
* make-release.py: Updated manpages for 4.4.1.
* make-release.py: Versioning changes for 4.4.1.
* make-release.py: Updated release notes and changelog for 4.4.1-rc1.
* make-release.py: Updated manpages for 4.4.1-rc1.
* make-release.py: Versioning changes for 4.4.1-rc1.
* Postpone native_ccache 4.3
* Fix Rust dependency name in postponed-updates.txt
* Postpone dependency updates until after 4.4.1
* doc: Add removal of 32-bit Windows binaries to release notes
* doc: Add Windows version support change to release notes
* build: Link to libbcrypt on Windows
* Move Win32 defines to configure.ac to ensure they are globally defined
* build: pass _WIN32_WINNT=0x0601 when building libevent for Windows
* depends: Patch libevent build to fix IPv6 -rpcbind on Windows
* build: enforce minimum required Windows version (7)
* build: don\'t pass -w when building for Windows
* build: remove --large-address-aware linker flag
* build: remove configure checks for win libraries we don\'t link against
* build: remove WINDOWS_BITS from build system
* build: Remove WINVER pre define in Makefile.leveldb.inlcude
* Drop defunct Windows compat fixes
* windows: Call SetProcessDEPPolicy directly
* windows: Set _WIN32_WINNT to 0x0601 (Windows 7)
* when rewinding, set pindexBestHeader to the highest-work block index
* add tekton build/worker docker, organize legacy buildbot docker
* clean up ubuntu 18.04 and 20.04 commands
* Add Debian 11 ci-builder
* Prevent mutex lock fail even if --enable-debug
* [wallet] Make CWallet::ListCoins atomic
* Add braces to meet code style on line-after-the-one-changed.
* Hold mempool.cs for the duration of ATMP.
* http: Remove numThreads and ThreadCounter
* http: Remove WaitExit from WorkQueue
* http: Join worker threads before deleting work queue
* [rpc] Reduce scope of cs_main and cs_wallet locks in listtransactions
* wallet: Remove unnecessary mempool lock in ReacceptWalletTransactions
* Remove redundant pwallet nullptr check
* Add ability to assert a lock is not held in DEBUG_LOCKORDER
* Add missing cs_main locks when calling blockToJSON/blockheaderToJSON
* addrman: Add missing lock in Clear() (CAddrMan)
* rpc: further constrain the libevent workaround
* rpc: work-around an upstream libevent bug
* Make fUseCrypto atomic
* keystore GetKeys(): return result instead of writing to reference
* Acquire cs_main lock before cs_wallet during wallet initialization
* doc: clarify CRollingBloomFilter size estimate
* net: remove is{Empty,Full} flags from CBloomFilter, clarify CVE fix
* refactor: Remove unused methods CBloomFilter::reset()/clear()
* refactor: Improve CRollingBloomFilter::reset by using std::fill
* bench: Add benchmark for CRollingBloomFilter::reset
* Removes unsed `CBloomFilter` constructor.
* replace modulus with FastMod
* param variables made const
* Fix msvc compiler error C4146 (unary minus operator applied to unsigned type)
* Fix msvc compiler error C4146 (minus operator applied to unsigned type)
* Refactor: Remove using namespace from src/
*.cpp.
* unification of Bloom filter representation
* trivial: fix bloom filter init to isEmpty = true
* Do not shadow variables
* More efficient bitsliced rolling Bloom filter
* Fix formatting of NOPs for generated script tests
* Switch to a more efficient rolling Bloom filter
* Thu Apr 15 2021 marecAATTdetebe.org- Update to version 4.4.0:
* make-release.py: Updated release notes and changelog for 4.4.0.
* make-release.py: Updated manpages for 4.4.0.
* make-release.py: Versioning changes for 4.4.0.
* book: Fix comment in metrics example, and clarify usage
* Postpone Clang 12
* clean.sh: Remove secp256k1 test log
* python: Use UTF-8 encodings for opened files
* Fix include guards
* Remove duplicate / unused includes
* scripted-diff: Remove direct usages of boost::filesystem
* make-release.py: Updated release notes and changelog for 4.4.0-rc1.
* make-release.py: Updated manpages for 4.4.0-rc1.
* make-release.py: Versioning changes for 4.4.0-rc1.
* Cleanup: get the definition of ENABLE_VIRTUAL_TERMINAL_PROCESSING from wincon.h.
* configure.ac: tidy up spacing.
* configure.ac: Add check for ntdll on Windows.
* qa: Postpone Boost 1.75.0
* qa: Postpone updates that require CMake in the build system
* qa: Point univalue update checker at correct upstream
* CurrentTxVersionInfo should return SPROUT_MIN_CURRENT_VERSION pre-overwinter.
* Add CheckQueue Tests
* Fix CCheckQueue IsIdle (potential) race condition and remove dangerous constructors.
* Address review comments.
* Add missing cs_wallet lock that triggers new lock held assertion
* Move CNode::addrLocal access behind locked accessors
* Move CNode::addrName accesses behind locked accessors
* Make nTimeBestReceived atomic
* Move [clean|str]SubVer writes/copyStats into a lock
* Make nServices atomic
* Make nStartingHeight atomic
* Access fRelayTxes with cs_filter lock in copyStats
* Avoid copying CNodeStats to make helgrind OK with buggy std::string
* Make nTimeConnected const in CNode
* net: fix a few races. Credit AATTTheBlueMatt
* net: add a lock around hSocket
* net: rearrange so that socket accesses can be grouped together
* Make nWalletDBUpdated atomic to avoid a potential race.
* Access WorkQueue::running only within the cs lock.
* Ensure cs_vNodes is held when using the return value from FindNode
* Lock mapArgs/mapMultiArgs access in util
* Fix race when accessing std::locale::classic()
* Fix some locks
* Do not shadow LOCK\'s criticalblock variable for LOCK inside LOCK
* Delete spare mainnet Founders\' Reward addresses that will never be used.
* lint: Fix false positive
* Remove usage of local from fetch-params.sh
* Ensure that Sapling version range checks are always guarded by SAPLING_VERSION_GROUP_ID
* native_rust: don\'t install Rust docs. This speeds up builds, especially native builds on macOS. fixes #5042
* Update -blocksonly documentation
* [doc] mention whitelist is inbound, and applies to blocksonly
* doc: Mention blocksonly in reduce-traffic.md, unhide option
* removed bashisms from build scripts
* metrics: Don\'t assert that the Sprout tree is accessible
* book: Fix typo in metrics documentation
* rust: Add license header to metrics_ffi::prometheus
* net: Clear CNode::strSendCommand if a message is aborted
* metrics: Rework pool metrics in anticipation of transparent pool
* metrics: Remove zcash.sync.
* metrics
* metrics: Rename metrics with consistent naming scheme
* metrics: Use labels for pool statistics
* metrics: Enable gauges with fully-static labels
* metrics: Move documentation into zcashd book
* rust: Pin hyper 0.14.2
* metrics: Implement IP access control on Prometheus scrape endpoint
* Mention in release notes that metrics names may still change
* Add -prometheusmetrics to release notes
* rust: Check for invalid UTF-8 in -prometheusmetrics argument
* Clean up comment
* Add security warnings for -prometheusmetrics option
* rust: Use consistent include guards in header files
* Add more detailed metrics
* metrics: Expose binary metadata
* metrics: Add support for labels
* rust: Move helper macros into rust/helpers.h
* tracing: Merge TracingSpanFields macro into TracingSpan
* metrics: Add documentation and example configs
* Add some metrics that match existing zebrad metrics
* rust: Add a Prometheus metrics exporter
* rust: Implement FFI interface to metrics crate
* qa: Update BerkeleyDB downloads page URL
* depends: Update Rust to 1.51.0
* rust: zcash_{primitives, proofs} 0.5.0
* cargo update
* Document UPGRADE_ZFUTURE
* Document FeatureSet type.
* Add feature flagging tests.
* Apply suggestions from code review
* Use SPROUT_MAX_CURRENT_VERSION
* Add future version group & version checks
* Move sapling version group checks back inside of saplingActive check.
* Add TxVersionInfo for feature/future-base transaction construction.
* Relocate contextual Sapling version checks
* Add feature flagging infrastructure to consensus parameters.
* Adding base NU5 declarations and logic
* Fix regression introduced in e286250ce49309bfa931b622fabfc37100246266 by adding #include . fixes #5014
* CI: Correctly build zcashd book
* Ignore temporary build artifacts.
* Blacklist -whitelistalwaysrelay; replaced by -whitelistrelay.
* Add whitelistforcerelay to control forced relaying.
* lock cs_main for chainActive
* lock cs_main for State/Misbehaving
* Notify other serviceQueue thread we are finished to prevent deadlocks.
* Fix for incorrect locking in GetPubKey() (keystore.cpp)
* Clean up lockorder data of destroyed mutexes
* Actually only use filterInventoryKnown with MSG_TX inventory messages.
* Only use filterInventoryKnown with MSG_TX inventory messages.
* Rename setInventoryKnown filterInventoryKnown
* Remove mruset as it is no longer used.
* Replace setInventoryKnown with a rolling bloom filter.
* Move blocksonly parameter interaction to InitParameterInteraction()
* Move -blocksonly parameter interaction to the new ParameterInteraction() function
* Improve log messages for blocks only violations.
* Add relaytxes status to getpeerinfo
* Bail early in processing transactions in blocks only mode.
* Fix relay mechanism for whitelisted peers under blocks only mode.
* Fix comment for blocksonly parameter interactions
* Fix fRelayTxs comment
* Display DEFAULT_WHITELISTALWAYSRELAY in help text
* Use DEFAULT_BLOCKSONLY and DEFAULT_WHITELISTALWAYSRELAY constants
* Add help text for blocksonly and whitelistalwaysrelay
* Add whitelistalwaysrelay option
* Do not process tx inv\'s in blocksonly mode
* Add blocksonly mode
* Squashed \'src/secp256k1/\' changes from 3967d96bf1..a4abaab793
* Squashed \'src/secp256k1/\' changes from c6b6b8f1bb..3967d96bf1
* Thu Feb 25 2021 marecAATTdetebe.org- Update to version 4.3.0:
* doc: Minor fixes to v4.3.0 release notes
* make-release.py: Updated release notes and changelog for 4.3.0.
* make-release.py: Updated manpages for 4.3.0.
* make-release.py: Versioning changes for 4.3.0.
* add libxml2
* add zstd package
* rust: Pin funty =1.1.0
* cargo update
* make-release.py: Updated release notes and changelog for 4.3.0-rc1.
* make-release.py: Updated manpages for 4.3.0-rc1.
* make-release.py: Versioning changes for 4.3.0-rc1.
* Fill out the rest of the 4.3.0 release notes
* Add IBD download traffic reduction to release notes
* [walletdb] Add missing LOCK() in Recover() for dummyWallet
* rpc: remove cs_main lock from `createrawtransaction`
* Rename responsible_disclosure.md to SECURITY.md
* Update URL for Zcash Foundation security policy
* Disconnect on mempool requests from peers when over the upload limit.
* Move time data log print to \'net\' category to reduce log noise
* Always allow getheaders from whitelisted peers
* doc: add comment explaining initial header request
* timedata: Prevent warning overkill
* Add limitedmap test
* Disallow unlimited limited maps
* Make limited map actually respect max size
* Re-organize -maxconnections option handling
* Postpone dependencies
* Cargo update
* Remove LOCK(cs_main) from decodescript
* Update the maxuploadtarget.py tests to accommodate zcash.
* zcash_script: Clarify return values in docs
* Add a FastRandomContext::randrange and use it
* Switch FastRandomContext to ChaCha20
* Add ChaCha20
* Fix some typos
* init: Pass post-Blossom spacing into CNode::SetMaxOutboundTarget()
* Pass current PoWTargetSpacing() into CNode::OutboundTargetReached()
* test: Migrate maxuploadtarget.py to Python 3
* add (max)uploadtarget infos to getnettotals RPC help
* add documentation for exluding whitelistes peer from maxuploadtarget
* [docs] rename reducetraffic.md to reduce-traffic.md
* don\'t enforce maxuploadtargets disconnect for whitelisted peers
* [doc] Add -maxuploadtarget release notes
* [net] Cleanup maxuploadtarget
* [doc] Improve lanaguge in reducetraffic.md
* [doc] add documentation how to reduce traffic
* Add RPC test for -maxuploadtarget
* Introduce -maxuploadtarget
* Whitespace-only fix in chainparams.cpp
* Minimal fix to slow prevector tests as stopgap measure
* prevector::swap: fix (unreached) data corruption
* test prevector::swap
* prevector: destroy elements only via erase()
* test: Add more test vectors for siphash
* Use C++11 thread-safe static initializers
* Use 64-bit SipHash of netgroups in eviction
* Make tests pass after 2020
* Support SipHash with arbitrary byte writes
* Avoid recalculating vchKeyedNetGroup in eviction logic.
* net: Drop CNodeRef for AttemptToEvictConnection
* Return early in IsBanned.
* net: move CBanDB and CAddrDB out of net.h/cpp
* Add extra message to avoid a long \'Loading banlist\'
* net: No need to export DumpBanlist
* net: make Ban/Unban/ClearBan functionality consistent
* fix race that could fail to persist a ban
* Fix de-serialization bug where AddrMan is corrupted after exception
* CAddrDB modified so that when de-serialization code throws an exception Addrman is reset to a clean state
* CAddrDB modified to make unit tests possible
* Regression test created to ensure bug is fixed
* StartNode modifed to clear adrman if CAddrDB::Read returns an error code.
* peers.dat, banlist.dat recreated when missing
* banlist (bugfix): allow CNode::SweepBanned() to run on interval
* banlist: add more banlist infos to log / add GUI signal
* banlist: better handling of banlist in StartNode()
* banlist: update set dirty to be more fine grained
* [QA] fix netbase tests because of new CSubNet::ToString() output
* net: Fix CIDR notation in ToString()
* net: use CIDR notation in CSubNet::ToString()
* [Qt] banlist, UI optimizing and better signal handling
* [Qt] add ui signal for banlist changes
* Adding CSubNet constructor over a single CNetAddr
* use CBanEntry as object container for banned nodes
* CAddrDB/CBanDB: change filesize variables from int to uint64_t
* banlist.dat: store banlist on disk
* zcash_script: Add API to verify scripts with precomputed tx data
* Use SipHash-2-4 for address relay selection
* Switch CTxMempool::mapTx to use a hash index for txids
* Use SipHash-2-4 for CCoinsCache index
* Add SipHash-2-4 primitives to hash
* Remove bad chain alert partition check
* test: Convert Bech32 test vectors into known-answer test vectors
* Link to zips.z.cash for protocol spec
* Show README as root of zcashd book
* Actions: Add a workflow to deploy the zcashd book
* Set up an mdbook in which we can document zcashd\'s architecture design
* Fix unlocked access to vNodes.size()
* Remove double brackets in addrman
* Fix AddrMan locking
* Make fImporting an std::atomic
* Make fDisconnect an std::atomic
* Rename libzcashconsensus.la -> libzcash_script.la
* Rename zcashconsensus_
* -> zcash_script_
* in APIs
* Rename src/script/zcashconsensus.
* -> src/script/zcash_script.
*
* Add amount and consensus branch ID to zcashconsensus_verify_script
* Remove crypto/equihash from libzcashconsensus
* Document the required .updatecheck-token file in the release docs
* scripted-diff: Use UniValue.pushKV instead of push_back(Pair())
* Move the github API token out of updatecheck.py into an untracked file.
* Squashed \'src/univalue/\' changes from 9ef5b78c1..98fadc090
* Define TARGET_OS when host is android
* Ensure that `CONFIGURE_FLAGS=--enable-debug` correctly uses -O0 for dependencies and main build.
* build: add missing leveldb defines
* [build] Add NETBSD leveldb target to configure.ac
* build: Updates for OpenBSD
* Re-instate TARGET_OS=linux in configure.ac. Removed by 351abf9e035.
* cargo update
* depends: Postpone updates that require adding CMake
* depends: ZeroMQ 4.3.4
* QA: Postpone BDB update again
* QA: Remove unused update postponements
* qa: Postpone Boost and native_b2 updates
* Revert \"Update boost to 1.75, postpone other updates.\"
* Added foundation to responsible_disclosure.md
* depends: Ensure the native_clang download path is for the builder
* depends: Allow per-host package download paths
* depends: Fix Boost warnings under Clang 11
* depends: Move to Clang 11
* depends: boost: Specify cflags+compileflags
* depends: boost: Remove unnecessary _archiver_
* depends: boost: Cleanup toolset selection
* depends: boost: Cleanup architecture/address-model
* depends: boost: Disable all compression
* depends: boost: Split into non-/native packages
* depends: boost: Refer to version in URL
* depends: Propagate only specific CLI variables to sub-makes
* depends: boost: Use clang toolset if clang in CXX
* depends: boost: Split target-os from toolset
* depends: boost: Specify toolset to bootstrap.sh
* depends: Propagate well-known vars into depends
* depends: Consistent use of package variable
* depends: fix boost mac cross build with clang 9+
* build: Add variable printing target to Makefiles
* Fix pyflakes complaints
* Apply suggestions from code review
* hide password in -stdin `walletpassphrase` command
* #4624 improve IBD sync by eliminating getheaders requests
* Use parentheses for defined in windows-unused-variables.diff
* Set rust_target for all FreeBSD versions
* Skip \"tx\" messages during initial block download.
* depends: cargo update
* rust: Use renamed broken_intra_doc_links lint
* depends: Update Rust to 1.49.0
* Update of copyright year to 2021
* Update COPYRIGHT_YEAR in clientversion.h to 2021
* Update _COPYRIGHT_YEAR in configure.ac to 2021
* Add support for FreeBSD 12
* split wallet.py tests
* Discord invite instead of direct link
* Store inputs and outputs by reference in JSDescriptionInfo
* Remove init_and_check_sodium from crypto/common.h
* prevector: Terminate without logging on failed allocation
* Remove JSDescription::h_sig
* Add JSDescriptionInfo for constructing JSDescriptions
* Default to defining endian-conversion DECLs in compat w/o config
* qa/zcash/updatecheck.py: remove dead code; print instructions to run `cargo outdated` and `cargo update`.
* Tue Dec 22 2020 marecAATTdetebe.org- Update to version 4.2.0:
* make-release.py: Updated release notes and changelog for 4.2.0.
* make-release.py: Updated manpages for 4.2.0.
* make-release.py: Versioning changes for 4.2.0.
* Revert changes in #4916 that assumed arguments represent fees, when they are actually number of confirmations.
* gtest/test_mempoollimit: the test failed to properly ensure that the \"low fee penalty\" threshold matches the new ZIP 313 fee.
* make-release.py: Updated release notes and changelog for 4.2.0-rc1.
* make-release.py: Updated manpages for 4.2.0-rc1.
* make-release.py: Versioning changes for 4.2.0-rc1.
* Don\'t log to stdout if a file logger is configured.
* Remove workaround affecting old Boost version
* Always allow transactions paying at least DEFAULT_FEE to be relayed, and do not rate-limit them. In other words, make sure that the \"minimum relay fee\" is no greater than DEFAULT_FEE.
* Update boost to 1.75, postpone other updates.
* tracing: Simplify init logic using optional layers
* tracing: Remove unnecessary tracing_init_inner internal function
* cargo update
* Reduce the default fee for z_
* operations, and the \"low fee penalty\" threshold for mempool limiting, to 1000 zatoshis.
* Fix a typo introduced in #4904.
* Partial revert of \"Update links\". See #4904
* test: Fix test_bitcoin compilation on macOS High Sierra
* Remove vestigial OSX_SDK_VERSION from darwin build.
* build: set minimum supported macOS to 10.14
* lint: Remove boost::variant and boost::optional from allowed includes
* Finish migrating to std::optional
* scripted-diff: Migrate from boost::optional to std::optional
* Add header to files that will need it
* Migrate from boost::optional::get to boost::optional::value
* Finish migrating to std::variant
* scripted-diff: Migrate from boost::variant to std::variant
* Add header to files that will need it
* mempool: Log all accepted txids at INFO level
* rpc: Log the new filter when we set it
* rpc: Reload CNode spans after reloading the log filter
* net: Rework CNode spans
* Prefer explicit passing of CChainParams to the Params() global.
* improve getblocktemplate performance for shielded coinbase
* Update links
* Update minimum chain work and set activation block hashes for testnet
* Update minimum chain work and set activation block hashes for mainnet
* test: Use ed25519_verify in ConsensusTests
* Write down the folklore about nSequence
* Fix readelf configuration
* Switch to ed25519-zebra for consensus signature checks
* Fix Hungarian notation nit from Daira
* Include transaction hex in verbose getblock output
* add more version information to getinfo rpc
* test: Run shielding-heavy RPC tests in serial
* test: Silence pyflakes unused import warning
* readelf is Linux only
* lint: Remove boost/foreach.hpp from allowed includes
* refactor: Drop boost::this_thread::interruption_point and boost::thread_interrupted in main thread
* gui: get special folder in unicode
* util: Replace boost::signals2 with std::function
* clang-format: Delete ForEachMacros
* scripted-diff: Remove #include
* scripted-diff: Remove BOOST_REVERSE_FOREACH
* Fix const_reverse_iterator constructor (pass const ptr)
* Introduce src/reverse_iterator.hpp and include it...
* scripted-diff: Remove PAIRTYPE
* scripted-diff: Fully remove BOOST_FOREACH
* Small preparations for Q_FOREACH, PAIRTYPE and #include removal
* Add autocomplete to bitcoin-qt\'s console window.
* test: Run rpc-tests.py in full_test_suite.py
* test: Adjust some Zcash RPC tests to work with parallel runner
* qa: Set correct path for binaries in rpc tests
* Add exclude option to rpc-tests.py
* [qa][doc] Correct rpc test options in readme
* [trivial] Add tests_config.ini to .gitignore
* Various review markups for rpc-tests.py improvements
* Refactor rpc-tests.py
* Improve rpc-tests.py arguments
* Use argparse in rpc_tests.py
* Use configparser in rpc-tests.py
* remove obsolete run-bitcoind-for-test.sh
* Reorder RPC tests for running time
* [qa] rpc-tests: Apply random offset to portseed
* [qa] test_framework: Exit when tmpdir exists
* [qa] pull-tester: Only print output when failed
* [qa] Refactor RPCTestHandler to prevent TimeoutExpired
* [qa] create_cache: Delete temp dir when done
* [doc] - clarify statement about parallel jobs in rpc-tests.py
* [qa] pull-tester: Don\'t mute zmq ImportError
* [qa] Remove unused code
* [qa] Use single cache dir for chains
* [qa] Adjust timeouts for micro-optimization of run time
* [qa]: enable rpcbind_test
* [qa]: add parsing for \':\' argument form to rpc_url()
* [doc] Add OS X ZMQ requirement to QA readme
* [qa] pull-tester: Start longest test first
* [qa] pull-tester: Fix assertion and check for run_parallel
* [qa] test_framework: Use different rpc_auth_pair for each node
* build: a few ugly hacks to get the rpc tests working out-of-tree
* Tests: add timeout to sync_blocks() and sync_mempools()
* [qa] test_framework: Append portseed to tmpdir
* [qa] Remove hardcoded \"4 nodes\" from test_framework
* [qa] Add option --portseed to test_framework
* [qa] pull-tester: Run rpc test in parallel
* [qa] pull-tester: Adjust comment
* [qa] Stop other nodes, even when one fails to stop
* [qa] Update README.md
* [qa] Refactor test_framework and pull tester
* [qa] Switch to py3
* [qa] rpc-tests: Fix link in comment and label error msg
* [qa] pull-tester: Exit early when no tests are run
* [qa] pull-tester: Don\'t mute zmq ImportError
* [qa] mininode: Catch exceptions in got_data
* [qa] rpc-tests: Properly use integers, floats
* [qa] Use python2/3 syntax
* Check if zmq is installed in tests, update docs
* test: don\'t override BITCOIND and BITCOINCLI if they\'re set
* [qa] pull-tester: Cleanup (run keypool, tidy stdout)
* [qa] keypool: DRY: Use test framework
* [qa] keypool: Fix white space to prepare transition to test framework
* [qa] Extend README.md
* [qa] Split README.md to /qa and /qa/rpc-tests
* Remove unmaintained example test script_test.py
* Add basic coverage reporting for RPC tests
* build: don\'t distribute tests_config.py
* [rpc-tests] Check return code
* [rpc-tests] fundrawtransaction: Update fee after minRelayTxFee increase
* Add tests for gettxoutsetinfo, CLevelDBBatch, CLevelDBIterator
* [doc] trivial: fix markdown syntax in qa/rpc-tests/README.md
* qa/pull-tester/rpc-tests.py: chmod 0755
* Migrated rpc-tests.sh to all python rpc-tests.py
* Add p2p-fullblocktest.py
* Fix crash when mining with empty keypool.
* configure.ac: Introduce macros to simplify requiring tools.
* test: Re-enable regtest difficulty adjustment for unit tests that use it
* test: Set hashFinalSaplingRoot default correctly in create_block
* test: Fix SignatureHash RPC test helper
* test: Remove FindAndDelete from RPC test framework
* Revert \"remove SignatureHash from python rpc tests\"
* [doc][trivial] no retargeting in regtest mode
* Added fPowNoRetargeting field to Consensus::Params that disables nBits recalculation.
* Fix typo
* Update expected fails for Sprout txns flows on Canopy
* Windows cross-build generates .lib files, which should be ignored by git and removed by clean.
* sendmany::find_unspent_notes removing an unneeded recursive lock, GetFilteredNotes is already locking cs_main and cs_wallet.
* asyncOp sendmany: moved inputs total amount check inside load_utxo before the dust validation.
* rpc_wallet_tests: changed \"Insufficient funds\" error message to a proper \"Insufficient transparent funds\". This is because we are now throwing the insufficient transparent balance rpc error inside load_utxo.
* Improving asyncoperation_sendmany, removing another redundant for loop over all of the available utxos.
* sendmany operation: Creating TxValues struct to store the transaction values in a more organized manner.
* move-only: asyncOp_sendmany, target amount calculation moved before find inputs (utxos and notes).
* sendmany: removing now unused SendManyInputUTXO class.
* asyncRPCOperation_sendmany:find_utxos, removing a redundant loop over all of the available utxo in the wallet.
* COutput: implemented Value() method.
* wallet:COutput adding fIsCoinbase member.
* sendmany::find_utxo removing an unneeded recursive lock, AvailableCoins is already locking cs_main and cs_wallet.
* wallet:AvailableCoins filter by destination/s feature implemented + connected to sendmany async operation.
* asyncrpcoperation_sendmany::find_utxos removing a redundant coinbase check, coinbases are already being filtered by the AvailableCoins flag.
* wallet:AvailableCoins nMinDepth filter implemented + connected to sendmany async operation.
* wallet:AvailableCoins fOnlySpendable filtering flag implemented + connected to sendmany async operation.
* test: Use default shielded address in RPC tests where the type is irrelevant
* add address to z_importviewingkey error
* Tue Nov 17 2020 marecAATTdetebe.org- Update to version 4.1.1:
* Add notable changes to release notes for v4.1.1
* make-release.py: Updated release notes and changelog for 4.1.1.
* make-release.py: Updated manpages for 4.1.1.
* make-release.py: Versioning changes for 4.1.1.
* Update getblocktemplate documentation.
* Document how to get block subsidy information in getblocktemplate.
* Correctly report founder\'s reward amount in getblocktemplate prior to Canopy
* Set release CFLAGS/CXXFLAGS to use -O3.
* Change order of checks to skip IsInitialBlockDownload check if flag is unset.
* GetNextWorkRequired: clarify why this computation is equivalent to that in the protocol spec. refs https://github.com/zcash/zips/pull/418
* cargo update
* Don\'t compile ehHashState::
* if mining is disabled
* Wording improvements to getrawtransaction RPC documentation
* doc: Adjust subtree developer notes to refer to Zcash
* lint: Fix minor shellcheck lints
* lint: s/trim/lenTrim in src/crypto/equihash.[cpp,h]
* lint: Apply include guard style to src/rust/include
* lint: Re-exclude subtrees from lint-include-guards.sh
* lint: Opt out of locale dependence in Zcash shell scripts
* lint: Use consistent shebangs
* python: Explicitly set encoding to utf8 when opening text files
* lint: Fix duplicate includes
* lint: Fix missing or inconsistent include guards
* doc: improve subtree check instructions
* [linter] Strip trailing / in path for git-subtree-check
* Revert \"Remove unused variable in shell script\"
* Improve git-subtree-check.sh
* Remove unused variables in shell scripts.
* uint256: replace sprintf with HexStr and reverse-iterator
* test: Explicitly set encoding to utf8 when opening text files
* [copyright] add MIT license headers to .sh scripts where missing
* lint: Remove some subtrees from exclusion
* lint: Allow stoi in src/rpc/blockchain.cpp
* test: Fix pyflakes warning in bitcoin-util-test.py
* lints: Add a missing copyright header
* Small documentation fixes
* Improve logging in bctest.py if there is a formatting mismatch
* Clean up bctest.py and bitcoin-util-test.py
* Add logging to bitcoin-util-test.py
* test: Add format-dependent comparison to bctest
* add verbose mode to bitcoin-util-test.py
* bitcoin-util-test.py should fail if the output file is empty
* Add option to run bitcoin-util-test.py manually
* Add bitcoin-tx JSON tests
* lints: Match `export LC_ALL=\"C\"` in lint-shell-locale
* Follow-up to #13454: Fix broken build by exporting LC_ALL=C
* lints: Update expected Boost imports
* lints: Use Zcash-specific include guards for new files
* Make lint-includes.sh work from any directory
* Run all lint scripts
* Remove no longer needed shellcheck suppressions
* Fix warnings introduced in shellcheck v0.6.0
* Remove repeated suppression. Fix indentation.
* refactor/lint: Add ignored suggestions to an array
* qa: Ignore shellcheck warning SC2236
* Scripts and tools & Docs: Used #!/usr/bin/env bash instead of obsolete #!/bin/bash, added linting for .sh files shebang and updated the Developer Notes.
* macOS fix: Add excludes for checks added in the newer shellcheck version installed by brew
* macOS fix: Work around empty (sub)expression error when using BSD grep
* use export LC_ALL=C.UTF-8
* fix locale for lint-shell
* Obsolete #!/bin/bash shebang
* Add linter: Make sure we explicitly open all text files using UTF-8 or ASCII encoding in Python
* Explicitly specify encoding when opening text files in Python code
* Add linter: Make sure all shell scripts opt out of locale dependence using \"export LC_ALL=C\"
* Add \"export LC_ALL=C\" to all shell scripts
* docs: Mention lint-locale-dependence.sh in developer-notes.md
* build: Add linter for checking accidental locale dependence
* build: Guard against accidental introduction of new Boost dependencies
* test: Move linters to test/lint, add readme
* [contrib] convert test-security-check to python3
* add lint tool to check python3 shebang
* Add shell script linting: Check for shellcheck warnings in shell scripts
* Refine travis check for duplicate includes
* Add Travis check for duplicate includes
* Add lint-include-guards.sh which checks include guard consistency
* Fix missing or inconsistent include guards
* Document include guard convention
* [script] lint-whitespace: improve print linenumber
* devtools: Exclude patches from lint-whitespace
* [scripts] lint-whitespace: check last N commits or unstaged changes
* [scripts] lint-whitespace: use perl instead of grep -P
* contrib: Ignore historical release notes for whitespace check
* Add tab char lint check and exclude imported dependencies
* Add a lint check for trailing whitespace.
* Fix header guards using reserved identifiers
* [Trivial] ensure minimal header conventions
* add myblockhash parameter to getrawtransaction
* Tue Nov 03 2020 marecAATTdetebe.org- Update to version 4.1.0:
* Update approximate release height
* Fix a comment about postponement of Clang upgrade
* Update doc/release-notes/release-notes-4.1.0.md
* Update doc/release-notes/release-notes-4.1.0.md
* make-release.py: Updated release notes and changelog for 4.1.0.
* make-release.py: Updated manpages for 4.1.0.
* make-release.py: Versioning changes for 4.1.0.
* Postpone clang and libc++ dependency updates until after the 4.1.0 release.
* Gitian builds: Remove manual CFLAGS and CXXFLAGS from descriptor.
* Update release-notes-4.1.0-rc1.md
* make-release.py: Updated release notes and changelog for 4.1.0-rc1.
* make-release.py: Updated manpages for 4.1.0-rc1.
* make-release.py: Versioning changes for 4.1.0-rc1.
* Use bash instead of POSIX sh. POSIX sh does not support arrays.
* Add error handling: exit if cd fails
* Rename the FS_ZIP214_ECC funding stream to FS_ZIP214_BP. See also https://github.com/zcash/zips/pull/412 .
* scripted-diff: Remove BOOST_STATIC_ASSERT
* add z_gettreestate rpc
* tests: Update chained_joinsplits test for HaveShieldedRequirements API change
* Use HTTPS in script license headers
* Update example scripted-diff comit in doc/developer-notes.md
* test/lint: Check for working changes before checking scripted diffs
* test: Mention commit id in scripted diff error
* Enable ShellCheck rules
* scripted-diff: Run scripted-diff in subshell
* Add \"export LC_ALL=C\" to all shell scripts
* test: Move linters to test/lint, add readme
* [docs] document scripted-diff
* Fail on commit with VERIFY SCRIPT but no scripted-diff
* devtools: add script to verify scriptable changes
* Add txid to \"shielded requirements not met\" messages
* Fix an error reporting bug in \"Checksum missing or mismatched ...\"
* utils: Remove unnecessary GetTempPath()
* Add logging to CCoinsViewCache::HaveShieldedRequirements
* Improve reject reasons for unmet shielded requirements
* Fix death gtests on macOS by switching to the threadsafe style.
* Replace invalid characters in log message decoding.
* Fix invocation of updatecheck.py in make-release.py
* depends: fix a logging bug for multi-archive packages.
* Remove unused Boost includes
* [Trivial] Add BITCOIN_FS_H endif footer in fs.h
* Remove `namespace fs=fs`
* torcontrol: Use fs::path instead of std::string for private key path
* Use fsbridge for fopen and freopen
* Replace uses of boost::filesystem with fs
* Replace includes of boost/filesystem.h with fs.h
* Add fs.cpp/h
* Move GetTempPath() to testutil.
* Add a source file for unit test utils.
* build: Update secp256k1 configure flags
* Squashed \'src/secp256k1/\' changes from 8ab24e8da..c6b6b8f1b
* Postpone native_ccache 4.0
* Switch from std::random_shuffle to std::shuffle
* Add new copyright entries for build-aux/m4/ax_cxx_compile_stdcxx.m4
* depends: Build C++ dependencies with C++ 17
* build: Require and build with C++ 17
* build: Update AX_CXX_COMPILE_STDCXX macro
* depends: Add untested note to FreeBSD host
* allow getaddressutxos if -lightwalletd
* Remove void declaration of ScriptPubKeyToJSON()
* Comment and error message cleanups for transaction checks.
* contrib/devtools/symbol-check.py: add info about Fedora-based distributions.
* Update contrib/devtools/symbol-check.py
* Rename `time` to `duration` in `DisplayDuration`.
* Fix integer types in DisplayDuration.
* Only return address instead of CScript
* log(x)/log(2.0) can be written as log2(x).
* Apply suggestions from code review
* Minor cleanups
* Handle shielded address case
* Fix CScript encoding
* Add funding stream addresses to getblocksubsidy RPC output
* doc: Add Clang and libc++ migration to release notes
* test: Fix various pyflakes warnings
* QA: Add native_clang and libcxx to updatecheck.py
* qa/zcash/full_test_suite.py: print immediately if a test fails.
* qa/zcash/full_test_suite.py: changes needed for macOS. fixes #4785
* Build python for debian9 and ubuntu16.04
* Fixed Centos and Arch python requirements
* Added Arch and Centos to script, added libtinfo5 for arch
* qa: Disable FORTIFY_SOURCE checks
* Added libtinfo5 to ci builder containers
* update function comment
* simplify TestBlockValidity
* performance: auto params = CChainParams::GetConsensus()
* build: Add -lpthread to univalue test LDFLAGS
* build: Compile secp256k1 with C99
* depends: Fix boost::iostreams usage on Windows with libc++
* depends: Rename Boost libraries to follow MinGW/GCC convention
* Use the current time as the timestamp if we override a misc warning.
* Fix command-line help for -ibdskiptxverification
* depends: Fix \"unused variables\" warning when compiling zeromq for Windows
* build: Add missing LIBUNIVALUE to Makefile.bench.include LDADD
* build: Statically link libc++
* depends: Add multilib paths for Linux cross-compile
* depends: Don\'t replace default CXXFLAGS in C++ dependencies
* depends: Add libc++ as a dependency
* Rename IBDSkipTxVerification back to ShouldCheckTransaction
* depends: Vendor LLD and use it for linking
* depends: Use vendored Clang for macOS cross-compilation
* Fix warnings surfaced by compiling with clang++.
* depends: Use vendored Clang for native compilation
* depends: Add Clang 8.0.0
* Convert a sed command to a static patch file.
* Beef up the CoC to address use of dog-whistles.
* Fix a new warning about use of boost::bind placeholders after updating Boost. closes #4774
* Reject incompatible flags in \"Step 2\"
* Ensure conflicting flags are reported as an error.
* Apply suggestions from code review
* -ibdskiptxverification must imply -checkpoints
* MOVEONLY: Move logging code from util.{h,cpp} to new files
* Apply style suggestions from code review
* depends: Postpone current and scheduled Rust releases until 2021
* Reduce diff complexity.
* FFI: Merge librustzcash_init_zksnark_params variants into one function
* Add logging when we receive an invalid note plaintext (using the \"receiveunsafe\" log category).
* depends: Update packages documentation for Zcash
* Remove redundant CheckBlock calls.
* Add a config option to skip transaction verification in IBD mode
* depends: ZeroMQ 4.3.3
* build: pass --enable-option-checking to applicable packages
* build: only pass --disable-dependency-tracking to packages that understand it
* depends: zeromq: disable draft classes and methods
* depends: Purge libtool archives
* depends: Build secondary deps statically.
* [depends, zmq, doc] avoid deprecated zeromq api functions
* depends: Disable unused ZeroMQ features
* cargo update
* depends: ccache 3.7.12
* depends: Boost 1.74.0
* Remove Bitcoin release notes
* Remove deprecated init.md
* Fix zeromq warning
* Fix undefined behavior in the test_bitcoin tests
* httpserver: Code style cleanups
* QA: Fix backporting bugs in httpbasics.py
* depends: Use correct HOST for download-linux target
* depends: utfcpp 3.1.2
* depends: googletest 1.8.1
* depends: ccache 3.7.11
* depends: libevent 2.1.12
* build: Use the endomorphism optimization for secp256k1
* Squashed \'src/secp256k1/\' changes from 6ad5cdb42..8ab24e8da
* build: Remove a stray -lcrypto
* Cosmetics in CScriptNum code and tests.
* It\'s unnecessary to pass int64_t by const reference.
* Add assertions for CScriptNum[10] +/- int64_t to avoid the possibility of UB.
* Avoid undefined behaviour in scriptnum tests.
* httpserver: replace boost threads with std
* httpserver: use a future rather than relying on boost\'s try_join_for
* http: use std::move to move HTTPRequest into HTTPWorkItem
* http: Change boost::scoped_ptr to std::unique_ptr in HTTPRequest
* http: Add log message when work queue is full
* http: Do a pending c++11 simplification
* Minor additional OpenSSL scouring.
* QA: Remove OpenSSL from updatecheck.py
* Remove remaining OpenSSL references
* util: Remove OpenSSL multithreading infrastructure
* build: remove libcrypto as internal dependency in libbitcoinconsensus.pc
* doc: remove OpenSSL from build instructions and licensing info
* depends: remove OpenSSL package
* build: remove OpenSSL detection and libs
* build: remove SSL lib detection
* tests: Remove OldSetKeyFromPassphrase/OldEncrypt/OldDecrypt
* Replace scriptnum_test\'s normative ScriptNum implementation
* Move uiInterface.NotifyBlockTip signal above the core/wallet signal
* NotifyBlockTip signal: switch from hash (uint256) to CBlockIndex
*
* http: Restrict maximum size of request line + headers
* [RPC] Add transaction size to JSON output
* gitian: Switch from x86_64-unknown-linux-gnu to x86_64-linux-gnu
* build: Switch to x86_64-pc-linux-gnu for codecov filtering
* QA: Switch to x86_64-pc-linux-gnu for hard-coded Linux HOST
* depends: Update map of GCC canonical hosts to Rust targets
* allocators: Apply Allocator named requirements to secure_allocator::deallocate
* LockedPool: Make Arena::free and LockedPool::free noexcept
* LockedPool: Fix LockedPool::free(nullptr) to be a no-op
* test: Fix LFSR period in comments
* LockedPool: Switch to HTTPS URLs in licenses and comments
* leveldb: Fix typo
* Update license headers
* leveldb: Assert that ssize_t is the same size as size_t on Windows
* build: out-of-tree fixups
* Improve readability by removing redundant casts to same type (on all platforms)
* Fix subscript[0] potential bugs in key.cpp
* depends: Update to latest config.guess & config.sub
* Fix typos
* Remove reference to cargo-checksum.sh
* build: Remove Rust staticlib naming workaround
* tracing: Correctly override tracing::Span move constructors
* blake2b: Allow consuming partial BLAKE2b output
* Replace libsodium\'s crypto_generichash_blake2b with blake2b_simd
* depends: Remove cargo-checksum.sh
* Squashed \'src/leveldb/\' changes from 524b7e36a..f545dfabf
* Squashed \'src/leveldb/\' changes from 64052c76c..524b7e36a
* Squashed \'src/leveldb/\' changes from c521b3ac6..64052c76c
* Squashed \'src/leveldb/\' changes from 196962ff0..c521b3ac6
* build: verify that the assembler can handle crc32 functions
* Fixed multiple typos
* Add extra LevelDB source to Makefile
* leveldb: enable runtime-detected crc32 instructions
* Squashed \'src/leveldb/\' changes from a31c8aa40..196962ff0
* Squashed \'src/leveldb/\' changes from 20ca81f08..a31c8aa40
* Do not include env_win.cc on non-Windows systems
* Add MIT license to Makefiles
* build: out-of-tree fixups
* build: No need to check for leveldb atomics
* leveldb: integrate leveldb into our buildsystem
* Update to latest zcash_
* and zkcrypto crates.
* cargo update
* Update Rust to 1.44.1.
* rpc: Fix comma spacing in example z_sendmany commands
* wallet: Ignore coinbase UTXOs with z_sendmany ANY_TADDR
* Line-wrap addition to README.md
* Link the README.md to the specific readthedocs.io page for building on Debian/Ubuntu.
* depends: Ensure that SOURCES_PATH exists before vendoring crates
* QA: Comment out Rust crate checks in updatecheck.py
* depends: Switch to `cargo vendor` for Rust dependencies
* Postponed dependency updates, refer to core team sync meeting.
* Flush witness data when consistent (part 2)
* Allow multiple nuparams options in config file
* Ensure that the absolute path used in the test definitely does not exist.
* Fix grammar in error messages.
* Apply suggestions from code review
* allow wallet file to be outside datadir
* Fix forward declaration.
* Rename z_
*_balance fields of getwalletinfo output to shielded_
*_balance
* Revert the move of the `getBalanceZaddr` block for ease of review.
* Prevent creation of shielded transactions in initial block download.
* wallet: Add ANY_TADDR special string to z_sendmany
* Make some conversions explicit to reduce sanitizer warnings.
* Add a missing % to a string interpolation in rpc test framework
* Fix buffer overflows in P2PKH tests
* CBufferedFile: use eof() method rather than feof(src) in error message.
* CBufferedFile: assert that Fill() is only called when nReadPos == nSrcPos, and simplify based on that assumption.
* Add null check to feof.
* add shielded balance to getwalletinfo
* Limit scope of all global std::once_flag
* Assorted small changes to the locked pool manager
* lockedpool: avoid sensitive data in core files (FreeBSD)
* lockedpool: When possible, use madvise to avoid including sensitive information in core dumps
* Fix segfault in allocator_tests/arena_tests
* Fix compilation errors in support/lockedpool.cpp
* Fix out-of-bounds write in case of failing mmap(...) in PosixLockedPageAllocator::AllocateLocked
* fix nits: variable naming, typos
* Use best-fit strategy in Arena, now O(log(n)) instead O(n)
* Remove some unused functions and methods
* LockedPool: avoid quadratic-time allocation
* LockedPool: fix explosion for illegal-sized alloc
* LockedPool: test handling of invalid allocations
* Do not shadow variable, use deprecated MAP_ANON if MAP_ANONYMOUS is not defined.
* bench: Add benchmark for lockedpool allocation/deallocation
* rpc: Add `getmemoryinfo` call
* support: Add LockedPool
* wallet: Get rid of LockObject and UnlockObject calls in key.h
* wallet: Change CCrypter to use vectors with secure allocator
* [trivial] Switched constants to sizeof()
* revert result key change, fix calls to getime
* change order of returned pair, fix compatibility issue
* add timestamp to warnings
* Add assert_raises_message to the python test framework.
* Wed Sep 02 2020 marecAATTdetebe.org- Update to version 4.0.0:
* minor: Add backticks to avoid formatting in 4.0.0 release notes.
* make-release.py: Updated release notes and changelog for 4.0.0.
* make-release.py: Updated manpages for 4.0.0.
* make-release.py: Versioning changes for 4.0.0.
* Postpone updates for dependencies until after 4.0.0 release.
* Set activation height for Canopy on mainnet.
* Clarify a comment about the ZF and MG addresses
* Add dev fund addresses for mainnet.
* Specify 4.0.0 in release notes
* Update names of contributors in release notes.
* Add release notes to describe the Canopy network upgrade.
* make-release.py: Updated release notes and changelog for 4.0.0-rc1.
* make-release.py: Updated manpages for 4.0.0-rc1.
* make-release.py: Versioning changes for 4.0.0-rc1.
* Postpone rust updates
* Postpone boost 1.74.0 update
* Add comment in lieu of redundant overwinter version check & fix tests.
* wallet: lock cs_main while accessing chainActive
* FFI: Rename r to rcm
* FFI: Rename to librustzcash_sapling_compute_cmu
* qa: Update list of postponed crate versions
* depends: cargo update
* FFI: Migrate to bls12_381 and jubjub crates
* FFI: Remove circuit parameter hashes from librustzcash_init_zksnark_params
* depends: Migrate to zcash_
* 0.3.0 Rust crates
* make deprecation.h include consensus/params.h
* consensus: Remove redundant contextual consensus rules
* consensus: Reorder Overwinter+!Sapling rules
* consensus: Move Sapling-disabled Overwinter rules above Sapling rules
* consensus: Combine saplingActive conditionals
* consensus: Move overwinterActive rules ahead of saplingActive rules
* consensus: Add a placeholder for !canopyActive
* consensus: Combine heartwoodActive conditionals
* consensus: Remove canopyActive gate around GetActiveFundingStreamElements
* consensus: Refactor Sprout contextual rules to match the rest
* consensus: Clean up some whitespace and variable names
* test: Update ZIP 215 test cases from ed25519-zebra
* Adjust GetActiveFundingStream
* comments
* ed25519: Panic (triggering abort) if nullptr passed into APIs
* Replace libsodium\'s crypto_sign with ed25519-zebra
* consensus: Clearly gate active funding stream elements on Canopy
* Add link to ZIP212 in coinbase comment
* consensus: Statically check funding stream numerators and denominators
* consensus: Document the empty conditional branch in ContextualCheckBlock
* consensus: Add assertions for Params::HalvingHeight parameters
* Rename PRV_DIVERSIFIER to PRF_TAG
* assert(leadbyte == 0x02) after every if(leadbyte != 0x01)
* Define PRF diversifiers in prf.h
* Move esk derivation check to beginning of plaintext_checks_without_height()
* Add documentation specific to ZIP 212
* Replace libsodium\'s randombytes_buf with rand_core::OsRng::fill_bytes
* Remove \'jessie\' (debian 8) from suites list in linux gitian descriptors
* debian: Rename X11 to Expat-with-advertising-clause in copyright
* Repair full_test_suite.py for new checksec.sh.
* Newer version of checksec.sh from https://github.com/slimm609/checksec.sh/commit/a6df608ac077689b2160e521db6601abc7b9e26e
* Make sure garbage bytes are different
* Add test for garbage memory in history nodes
* Add missing curly braces after if statement
* Added libfuzzer support.
* Added support for afl-clang-fast.
* init: Add spans for initialization and shutdown
* init: Rework tracing_init call
* tracing: Rework tracing_init into a single function
* tracing: Parse log_path into an Option
* util: Use DEBUG level for LogPrint(), leaving INFO for LogPrintf()
* Add fields to logging in CNode and UpdateTip
* tracing: Format field values with Display
* tracing: Add support for span fields
* tracing: Add support for event fields
* tracing: Add MAP macro
* FFI: Fix tracing log path handling on Windows
* depends: Split check-packages and check-sources across categories
* depends: Add platform-specific overrides for download files
* depends: Rework Rust integration
* Remove deprecated contrib utilities
* contrib: Update macdeploy README
* Throw error if -paramsdir not a valid directory
* Add paramsdir option for manpage
* Allow configure params directory
* Revert \"Add check-depends step to STAGE_COMMANDS list\"
* depends: tracing-core 0.1.13
* qa: Add tracing dependencies to updatecheck.py
* doc: Update release notes for tracing backend
* tracing: Document macro arguments that MUST be static constant UTF-8 strings
* tracing: Log field values that aren\'t valid UTF-8
* rpc: Throw error in setlogfilter if filter reloading fails
* init: Place additional constraints on pathDebug
* FFI: Add missing includes
* wallet: Fix logging to satisfy constexpr requirements
* tracing: Use \'static constexpr\' hack in macros
* FFI: Extract common codeunit types into a rust/types.h header
* Add some spans to the Zcash codebase
* Add support for tracing spans
* Add an RPC method for setting the tracing filter directives
* Add support for reloading the tracing filter
* Use a tracing EnvFilter directive for -debug flags
* Replace C++ logging with tracing logging
* FFI wrapper around tracing crate
* Add tracing to librustzcash dependencies
* test: Remove obsolete TransactionBuilder test
* Update Makefile.am
* depends: Use FALLBACK_DOWNLOAD_PATH if the primary\'s hash doesn\'t match
* Revert \"Try downloading from our mirror first to avoid headaches.\"
* Revert \"Rename FALLBACK_DOWNLOAD_PATH to PRIORITY_DOWNLOAD_PATH\"
* Fix a comment typo in pow.cpp
* Add new dependencies to updatecheck.py, add a flag we can use to have our CI test it.
* Extend deadline for postponing dependency updates
* Remove Proton license from contrib/debian/copyright
* Remove amqp code and Proton library depenencies & flags.
* Debian: Add copyright entries for ctaes and secp256k1
* depends: bump native_cctools for fixed lto with external clang
* depends: enable lto support for Apple\'s ld64
* depends: Add justifications for macOS clang flags
* depends: specify libc++ header location for darwin
* depends: Specify path to native binaries as clang argument
* depends: Decouple toolchain + binutils
* doc: explain why passing -mlinker-version is required
* darwin: pass mlinker-version so that clang enables new features
* macos: Bump to xcode 11.3.1 and 10.15 SDK
* depends: bump MacOS toolchain
* contrib: macdeploy: Remove historical extraction notes
* contrib: macdeploy: Use apple-sdk-tools instead of xar+pbzx
* native_cctools: Don\'t use libc++ from pinned clang
* Adapt rest of tooling to new SDK naming scheme
* contrib: macdeploy: Correctly generate macOS SDK
* Fix naming of macOS SDK and clarify version
* build: use macOS 10.14 SDK
* depends: native_cctools 921, ld64 409.12, libtapi 1000.10.8
* depends: clang 6.0.1
* build: set minimum supported macOS to 10.12
* scripted-diff: prefer MAC_OSX over __APPLE__
* doc: mention that macOS 10.10 is now required
* depends: set OSX_MIN_VERSION to 10.10
* Fix a return status issue.
* Update .gitignore.
* zcutil/distclean.sh: remove BDB utility programs.
* add more allowed duplicates
* Update doc/release-notes/release-notes-3.1.0.md
* Add Debian8 deprecation to release notes
* flush wallet db (SetBestChain()) on clean shutdown
* metrics: Collect general stats before clearing screen
* build: shuffle gtest Makefile so that crypto can be used by the wallet
* build: Enumerate ctaes rather than globbing
* crypter: add tests for crypter
* crypter: add a BytesToKey clone to replace the use of openssl
* crypter: hook up the new aes cbc classes
* crypter: constify encrypt/decrypt
* crypter: fix the stored initialization vector size
* crypto: add aes cbc tests
* crypto: add AES 128/256 CBC classes
* Add ctaes-based constant time AES implementation
* Squashed \'src/crypto/ctaes/\' content from commit 003a4acfc
* Send alert to put pre-Heartwood nodes into safe mode.
* Skip Sprout proof verification for ProofVerifier::Disabled
* Move JSDescription::Verify to ProofVerifier::VerifySprout
* Move ProofVerifier out of the libzcash namespace
* Make ZCJoinSplit::prove static and remove ZCJoinSplit globals
* Remove unused declarations left over from libsnark verification
* Move GrothProof and SproutProof definitions into zcash/Proof.hpp
* Update to Python 3
* Updating to Python 3
* install bdb binaries
* Enforce pre-release dependency update check in make-release.py
* Change release instructions to block the release when dependencies are not updated and not postponed.
* Implement system for postponing dependency updates.
* only allow duplicates for certain options of the config
* explain expiry error
* fix bug of bdb.mk
* Be consistent with how to #include test data headers
* Be consistent about what path to include bitcoin-config.h with
* Include header files within the source tree using \"\" instead of <>
* Don\'t clobber cwd in rpc_wallet_tests.cpp
* Add missing libsnark initialization call
* libsnark: Don\'t (implicitly) rely on other tests initializing the public params
* Remove Checkpoints_tests.cpp
* Fix linkage issue with consts in primitives/block.h
* Add actual header file for utilities in gtest/utils.cpp
* Add missing #includes to test_block.cpp
* Get rid of implicit hidden dependencies between test .cpp files
* Tue Jul 28 2020 marecAATTdetebe.org- Update to version 3.1.0:
* Set APPROX_RELEASE_HEIGHT to 917000 and update release-notes-3.1.0.md
* make-release.py: Updated release notes and changelog for 3.1.0.
* make-release.py: Updated manpages for 3.1.0.
* make-release.py: Versioning changes for 3.1.0.
* Allow Equihash validation tests to be compiled with --disable-mining.
* Fix --disable-mining build regression. closes #4634
* Use 51 Testnet Dev Fund addresses, and adjust the end heights.
* Delay testnet activation height by one week
* Zero-initialize HistoryNode values.
* Pass HistoryNode struct to librustzcash FFI
* Set PROTOCOL_VERSION to 170012
* Set Canopy testnet activation height to 1020500
* Fix the formatting of the 3.0.0 release notes.
* Add unit tests for DisplayDuration, DisplaySize, and DisplayHashRate.
* Metrics screen: display hash rates using SI prefixes rather than as powers of 2.
* src/metrics.cpp: cosmetic whitespace changes.
* Add dev fund addresses for testnet NU4 activation.
* More iterator cleanups.
* Edit release notes to specify that rc2 does not enable Canopy support on the testnet
* make-release.py: Updated release notes and changelog for 3.1.0-rc2.
* make-release.py: Updated manpages for 3.1.0-rc2.
* make-release.py: Versioning changes for 3.1.0-rc2.
* Revert \"Pass the block height through to CheckEquihashSolution()\"
* Remove C++ Equihash validator
* Use Rust Equihash validator unconditionally
* Fix an unintended consensus change in decryption of coinbase outputs.
* Add key_constants.h to src/Makefile.am.
* Undo manual DEPRECATION_HEIGHT
* make-release.py: Updated release notes and changelog for 3.1.0-rc1.
* make-release.py: Updated manpages for 3.1.0-rc1.
* make-release.py: Versioning changes for 3.1.0-rc1.
* Apply suggestions from code review
* Another cleanup.
* Remove an unnecessary iterator increment.
* Fix bug in CScheduler
* Clean up some iterator usage.
* Update release notes for v3.1.0
* Trivial whitespace fix.
* Apply suggestions from code review
* Fix assertion check in GetBlockSubsidy
* Change the format of `getblocksubsidy` output to use an array of funding stream objects.
* Apply suggestions from code review
* Cosmetic spacing changes.
* Use ValueFromAmount instead of double arithmetic, and improve variable names.
* Fix typo in constant.
* Rename KeyInfo -> KeyConstants and move out of Consensus namespace.
* Make evident the relationship between chainparams and key IO.
* Change getblocksubsidy RPC to take into account funding streams.
* Tests for changes to getblocksubsidy.
* Use for..in rather than an indexed loop.
* Add GetActiveFundingStreams function.
* sync before stopping nodes
* Remove assertion that was breaking regtest in the case that blossom activates after the halving.
* Use ed25519-zebra from crates.io.
* Fix ordering of transparent outputs such that miner reward is vout[0]
* undo flushing witness data on shutdown
* Directly call RegtestActivate
* in gtests
* Pass nHeight instead of pindex to AddToWalletIfInvolvingMe()
* Remove old SaplingNote() constructor
* Minor changes
* Fix incorrect subtraction of Halving(blossomActivationHeight) from halvingIndex
* Use uint32_t for vFundingStreams indexing.
* Pass by const reference where possible.
* Minor help message correction.
* Trivial comment correction.
* Move test-only code into test sources.
* Add `RegtestDeactivateCanopy` calls to restore shared regtest params.
* Fix funding stream end-height-exclusion bugs
* Remove outdated comment.
* Hash \"Zcash\" to align tests with ZIP 215 test vectors.
* Change LIBSODIUM_ERROR to -1.
* Migrate ZIP 215 test vectors to gtest suite.
* Refactor bool is_zip_212 to enum Zip212Enabled
* Remove plaintext check from GetFilteredNotes
* Remove plaintext check from AddSaplingSpend
* Fix pyflakes.
* fix pyflakes CI errors
* Update HalvingHeight documentation.
* Record-constructor syntax for funding stream initialization.
* Minor naming change FundingStreamShare -> FundingStreamElement
* Remove unused imports from remove_sprout_shielding RPC test.
* add log aporximation to metrics solution rates
* Capitalization fixes from code review
* Pass pindex to AddToWalletIfInvolvingMe()
* Throw error in plaintext deserialization
* Replace leadByte in SaplingNote with is_zip_212
* Qualified imports of std:: types
* Replace BOOST_FOREACH with for..:
* self.sync_all(), not time.sleep(4)
* Trivial copyright fix.
* Add RPC tests
* Add checks to z_ methods in rpcwallet
* Add gtests
* Add contextual check to main.cpp
* Add joinSplitPubKey and joinSplitSig to RPC
* Minor fixes for ZIP-207 review comments.
* Trivial error message fix.
* Use for..: rather than BOOST_FOREACH
* Identify `-fundingstream` parameter as being regtest-only
* Cargo fmt
* Add more exhaustive tests for ZIP 215 compatibility.
* Turn return values for libsodium-like API into constants for clarity.
* Implement zip-207 and zip-214.
* review, cleanup: eliminate uninitialized variable
* Add gtests for v2 plaintexts
* Refactor SaplingNotePlaintext::decrypt
* Check epk vs esk whenever caller has esk
* Reject v1 plaintexts after grace period
* Make transaction builder take the next block height into account for use of v2 note plaintexts.
* Require that shielded coinbase output note plaintexts are version 2 if Canopy is active.
* flush witness cache correctly
* Redirect git checkouts of ebfull/ed25519-zebra through our vendored sources in offline mode.
* add python test to reproduce bug 4301
* Minor adjustments to librustzcash and tests.
* Remove unused curve25519-dalek dev-dependency.
* Remove bincode crate.
* Add test that a weird signature successfully validates.
* Enforce ZIP 215 rules upon activation of Canopy.
* Change to version of ed25519-zebra crate which is compliant with ZIP 215.
* Remove an unused CCriticalSection.
* Make ed25519-zebra available via librustzcash.
* Change transaction builder and miner to use v2 Sapling note plaintexts after Canopy activates.
* Add support for receiving v2 Sapling note plaintexts.
* Add a getter method to obtain rcm from a Sapling note plaintext.
* Remove bare SaplingNote constructor.
* Add implementations of PRF_expand calls that obtain esk and rcm.
* Add ZF and gtank\'s DNS seeders
* Remove unused import in qa/rpc-tests/listtransactions.py
* fix/improve docs
* metrics: Only print IBD progress bar on TTY
* metrics: Switch to ANSI colour codes for progress bar
* initialize size_t
* add new parameters to rpc client and fix some bugs
* update docs
* remove not needed comments from wallet.py
* Missing NU4->Canopy renames.
* Rename golden/nu4.tar.gz to canopy.tar.gz.
* fix sort of options
* fix test cases
* test: Add tests for `-debuglogfile` with subdirs
* doc: Update release notes for `-debuglogfile`
* test: Add test for `-debuglogfile`
* Add `-debuglogfile` option
* Rename NU4 to Canopy in constant and function names.
* qa: Add --automate flag to smoke tests
* qa: Remove unused timeout configuration from wait_for_balance
* qa: Add --use-faucet flag to smoke tests
* metrics: Don\'t show \"not mining\" text for mainnet
* metrics: Draw IBD progress bar showing headers and blocks
* metrics: Fix indents
* During initial blocks download, also report the number of headers
* Fix typos in ProcessMessage() \"headers\"
* Add helpers for tapping and donating to the testnet faucet
* Various improvements
* Resolve decimal vs float issues
* qa: Improve reliability of smoke test cleanup
* qa: Improve reliability of smoke tests
* qa: Don\'t allow smoke tests with mainnet wallet.dat
* qa: Use slick-bitcoinrpc for smoke tests
* qa: Transaction chain smoke test
* qa: Simple smoke tests
* qa: Run Zcash node for smoke tests
* qa: Smoke test driver
* Add RPC tests for post-Heartwood rollback
* Use the cached consensusBranchId in DisconnectBlock
* Add missing header for std::invalid_argument
* change name of harden option
* remove additional not needed casts from py tests
* add MINOR_CURRENCY_UNIT
* Fix casting in listtransactions.py
* simplify inzat balances logic
* Fix casting in wallet.py
* replace with AssertionError assert_equal in receivedby.py
* add amountZat field to z_listreceivedbyaddress
* add amountZat field to listunspent
* add amountZat field to listtransactions, gettransaction and listsinceblock
* add amountZat field to listreceivedbyaddress and listreceivedbyaccount
* add boolean inZat to z_getbalance
* add boolean inZat to getbalance
* add boolean inZat to getreceivedbyaccount
* change argument name
* add documentation to flag
* add bool argument to get balance in satoshis to rpc getreceivedbyaddress
* Use preprocessor for ENTRY_SERIALIZED_LENGTH
* Use assert.h instead of define manually static_assert
* librustzcash: make the header C compatible
* get fuzzing options from directory
* add documentation and command line parsing to afl scripts
* Fix undefined behavior in gtest tests
* add estimatedheight to getblockchaininfo
* Wed May 27 2020 marecAATTdetebe.org- Update to version 3.0.0:
* make-release.py: Updated release notes and changelog for 3.0.0.
* make-release.py: Updated manpages for 3.0.0.
* make-release.py: Versioning changes for 3.0.0.
* Set deprecation of 3.0.0 to target EOS halt mid-September.
* make-release.py: Updated release notes and changelog for 3.0.0-rc1.
* make-release.py: Updated manpages for 3.0.0-rc1.
* make-release.py: Versioning changes for 3.0.0-rc1.
* Bump the protocol version, as this node supports Heartwood on mainnet.
* Set the Heartwood activation height to 903000.
* Explicitly assert that chainActive[upgrade.nActivationHeight] is non-null at this point.
* Pass DO_NOT_UPDATE_CONFIG_SCRIPTS=1 to autogen.sh in libsodium dependency, to avoid updating config scripts over the network.
* Remove unused imports.
* Update minimum chain work on testnet to reflect Heartwood activation.
* Fix a null pointer dereference that occurs when formatting an error message, if we haven\'t activated an upgrade as expected.
* Avoid names starting with __.
* Add univalue to updatecheck.py and update univalue, removing calls to deprecated methods
* Add NU4 activation to golden test.
* Fix off-by-one error in CreateNewBlock()
* Fully remove the regtest tree from restored nodes.
* remove not needed help parameters to dump and import impl
* Update golden test for heartwood network upgrade.
* Add baseline for golden testing across network upgrade boundaries.
* Remove unused imports.
* Revert \"Update qa/rpc-tests/sapling_rewind_check.py\"
* Update test description and clarify internal comments.
* Add Zcash copyright to sapling_rewind_check.py
* Update qa/rpc-tests/sapling_rewind_check.py
* Update qa/rpc-tests/test_framework/mininode.py
* Use `%x` formatter for branch id hex string in test_framework/util.py
* Clean up imports in sapling_rewind_check.py
* Dockerfiles for zcashd CI builds
* Update URLs for prior network upgrades
* Add NU4 test helpers
* Add NU4 to upgrade list
* Improve memory_cleanse documentation
* Use BOOST_SCOPE_EXIT_TPL to clean and free datValue in CDB::Read
* Update to the Cargo V2 lockfile format.
* Update all crates.
* Improve documentation of memory_cleanse()
* Clean up logic in memory_cleanse() for MSVC
* Minimal code changes to allow msvc compilation.
* Switch memory_cleanse implementation to BoringSSL\'s to ensure memory clearing even with link-time optimization.
* [wallet] Securely erase potentially sensitive keys/values
* implement z_getnotescount api call
* Ensure that we don\'t pass a null block pointer to ConnectTip.
* Make condition closer to original, Fix incorrect comment.
* Remove option to load new blocks from ConnectTip
* add a test case
* Fix typos
* Fixed Docker README grammar
* Trivial comment.
* Restart node in a chain split state to allow the test to complete.
* The last valid height condition reads better flipped.
* Fix #4119.
* Make the test reproduce the actual off-by-one error in rewind length.
* Fix typo
* Fixed README grammar, reuse Dockerfile vars
* Added Dockerfile to contrib with README
* Narrow down the test case.
* fix wallet nullifiers test
* Check network reunification.
* Add a test reproducing the off-by-one error.
* Add a new safe chars rule for node version string
* minor cleanup style, var names
* minor fix
* add status to transactions
* change time to blocktime in help
* add blockheight, blockindex and blocktime to z_listreceivedbyaddress
* fix rpc testcase
* Add confirmations to z_listreceivedbyaddress
* Sat May 09 2020 marecAATTdetebe.org- Update to version 2.1.2.3:
* Set the deprecation height manually to roughly July 14th.
* Update release notes for v2.1.2-3.
* make-release.py: Updated release notes and changelog for 2.1.2-3.
* make-release.py: Updated manpages for 2.1.2-3.
* make-release.py: Versioning changes for 2.1.2-3.
* Sat May 09 2020 marecAATTdetebe.org- Update to version 2.1.2.2:
* Modify release notes for v2.1.2-1 and v2.1.2-2 to reflect the changes more accurately.
* make-release.py: Updated release notes and changelog for 2.1.2-2.
* make-release.py: Updated manpages for 2.1.2-2.
* make-release.py: Versioning changes for 2.1.2-2.
* txdb: log additional debug information.
* txdb: More complete fix for the Heartwood chain consistency check issue.
* Thu May 07 2020 marecAATTdetebe.org- Update to version 2.1.2.1:
* Add release details about v2.1.2-1 hotfix.
* make-release.py: Updated release notes and changelog for 2.1.2-1.
* make-release.py: Updated manpages for 2.1.2-1.
* make-release.py: Versioning changes for 2.1.2-1.
* Don\'t throw exception in PopHistoryNode when popping from empty tree.
* txdb/chain: Restrict Heartwood chain consistency check to block index objects that were created by Heartwood-unaware clients.
* Add the intended testnet activation block of Heartwood to our intended rewind logic.
* Thu Apr 23 2020 marecAATTdetebe.org- Update to version 2.1.2:
* make-release.py: Updated release notes and changelog for 2.1.2.
* make-release.py: Updated manpages for 2.1.2.
* make-release.py: Versioning changes for 2.1.2.
* Clarify definition of NETWORK_UPGRADE_PEER_PREFERENCE_BLOCK_PERIOD.
* Set Heartwood activation height for testnet to 903800.
* Add test_random.h to distribution tarball.
* Add Rust resources to distribution tarball.
* Set hashFinalSaplingRoot and hashChainHistoryRoot in AddToBlockIndex
* make-release.py: Updated release notes and changelog for 2.1.2-rc1.
* make-release.py: Updated manpages for 2.1.2-rc1.
* make-release.py: Versioning changes for 2.1.2-rc1.
* Fix undefined behavior in CScriptNum
* Address review comments: `target` and `depends/work` should be cleaned by clean.sh.
* zcutil/release-notes.py: Add Python 3 execution header
* Update release notes for v2.1.2
* Fix typos
* zcutil/make-release.py: Check for release dependencies
* zcutil/make-release.py: Fix to run with Python 3
* consensus: From Heartwood activation, use Rust Equihash validator
* Pass the block height through to CheckEquihashSolution()
* test: Run Equihash test vectors on both C++ and Rust validators
* compute more structures in mempool DynamicMemoryUsage
* test: Add a second Sapling note to WalletTests.ClearNoteWitnessCache
* test: Ignore timestamps in addressindex checks
* Update documentation info
* Make peak_pos zero-indexed in CCoinsViewCache::PreloadHistoryTree
* Comment clarifications and fixes
* Truncate HistoryCache.appends correctly for zero-indexed entries
* Improve documentation of CCoinsViewCache::PreloadHistoryTree
* Remove unnecessary else case in CCoinsViewCache::PreloadHistoryTree
* test: Add an extra assertion to feature_zip221.py
* Refer to altitude instead of height for history tree peaks
* Point at support community on Discord
* Comment tweaks and cleanups
* add -lightwalletd experimental option
* Remove stale comment
* test: Assert that GetValidTransaction supports the given branch ID
* Lock with cs_main inside gtests that call chainActive.Height()
* build: Connect cargo verbosity to make verbosity
* test: Build Rust tests as part of qa/zcash/full_test_suite.py
* build: Correctly remove generated files from .cargo
* build: Move cargo arguments into RUST_BUILD_OPTS
* test: Verify ZIP 221 logic against reference implementation
* Use a C array for HistoryEntry instead of std::array
* Return the correct root from librustzcash_mmr_{append, delete}
* Implement ZIP 221 consensus rules
* Add ZIP 221 support to miner and getblocktemplate
* Add ZIP 221 logic to block index
* use iterative platform-independent log2i
* update chain history in ConnectBlock and DisconnectBlock
* push/pop history with tests
* change unclear wording in z_import calls address returned
* add expected address check to tests
* return address info in z_importviewingkey
* multiple debug categories documentation
* fix dead openssl download path
* Remove a redundant `rm -f` command.
* Use `SA_RESTART` in `sa_flags` when setting up signal handlers.
* Address review comments.
* Avoid spurious error messages when cleaning up directories.
* Executables end with .exe on Windows.
* Minor refactoring.
* [qa] assert_start_raises_init_error
* test_framework: detect failure of bitcoind startup
* Add basic coverage reporting for RPC tests
* Enable python tests for Native Windows
* Split into clean.sh and distclean.sh.
* Add a `zcutil/clean.sh` script that works (unlike `make clean`).
* remove unused import
* preserve test semantics
* minor comment fix
* Update updatecheck.py with the new Rust dependencies and improve the error message in case the untracked dependency list becomes out of date.
* Make the memo a mandatory argument for SendManyRecipient
* Avoid a theoretical possibility of division-by-zero introduced in #4368.
* Simplification for MacOS in rust-test.
* Minor typo fixes.
* Add release profile optimizations and turn off panic unwinding in librustzcash.
* Add librustzcash tests to the full test suite.
* depends: Hard-code Rust target for all Darwin hosts
* depends: Define Rust target in a single location
* Bring in updates to librustzcash crate
* depends: Use Rust 1.42.0 toolchain
* Update RPCs to support cross platform paths and libs
* change constructors
* consensus: Check JoinSplit signatures against the previous network upgrade
* test: Add Overwinter and Sapling support to GetValidTransaction() helper
* mempool: Remove duplicate consensusBranchId from AcceptToMemoryPool
* mempool: Check transparent signatures against the previous network upgrade
* test: Add missing parameter selection to Validation.ReceivedBlockTransactions
* test: Modify ValidationFakeCoinsViewDB to optionally contain a coin
* test: Rename FakeCoinsViewDB -> ValidationFakeCoinsViewDB
* Fix typos/minor errors in comments, and wrap some lines.
* Fix typo in updatecheck.py
* Fix bug in updatecheck.py and add utfcpp to its dependency list
* Fix Rust static library linking for Windows builds
* Exit init early if we request shutdown before having loaded the genesis block.
* Add comment to `MilliSleep` documenting that it is an interruption point.
* Setting a std::atomic variable in a signal handler only has defined behaviour if it is lock-free.
* Resolve a race condition on `chainActive.Tip()` in initialization (introduced in #4379).
* Acquire lock to check for genesis block.
* add stop_node argument to check_node_log, use it in shieldingcoinbase
* use check_node_log in turnstile.py
* move check_node_log framework test to a new file
* Move reindex progress globals to metrics.h/cpp
* Byte sizes format
* Use processed file size as progress in metrics during reindex
* Show reindex state in metrics
* remove space after new line
* Consistent parameter names in txdb.h
* Make fReindex atomic to avoid race
* Fix race for mapBlockIndex in AppInitMain
* add check_node_log utility function
* make fInsightExplorer a local
* refactor experimental features
* add getexperimentalfeatures rpc call
* depends: Remove unused vendored crates
* Move root of Rust crate into repo root
* Replace librustzcash from depends system with src/rust
* Update .gitignore for Rust code
* rust: Adjust Cargo.toml so that it compiles
* rust: Pin toolchain to 1.36.0, matching depends system
* Bring in Cargo.lock from librustzcash repo
* Bring in librustzcash crate
* depends: Remove comments from libsodium signature validation patch
* Add GitHub issue templates for feature requests and UX reports
* Migrate GitHub issue template to new format
* test: Explicitly check Sapling consensus rules apply to shielded coinbase
* init: Inform on error that -mineraddress must be Sapling or transparent
* test: Check that shielded coinbase can be spent to a t-address
* Use DoS level constants and parameters for ZIP 213 rejections
* Adjust comments on ZIP 213 logic
* test: RPC test for shielded coinbase
* Add release notes for removal of -maxtimeadjustment.
* test: Minor tweaks to comments in LibsodiumPubkeyValidation
* util: CBufferedFile fixes
* Add regtest-only -nurejectoldversions option
* wallet: Include coinbase txs in Sapling note selection
* Add support for Sapling addresses in -mineraddress
* ZIP 213 consensus rules
* Clarify comment
* OutputDescriptionInfo::Build()
* Handle case of fresh wallets in ThreadNotifyWallets.
* change maybe_cm to maybe_cmu
* change the cm member of OutputDescription to cmu
* change cm() to cmu() in SaplingNote class
* Initialize ThreadNotifyWallets before additional blocks are imported.
* Have make clean delete AFL output directories.
* Add AFL build directory to .gitignore
* Have make clean delete temporary AFL build directory
* Sort entries in zcash_gtest_SOURCES (other than test_tautology which is deliberately first).
* Update GetAdjustedTime() to GetTime().
* Replace time adjustment with warning only.
* Remove uses of GetTimeOffset().
* Revert \"Add -maxtimeadjustment with default of 0 instead of the 4200 seconds used in Bitcoin Core.\"
* Store imported Sapling ExtFVKs in wallet database
* Move GetWarnings() into its own file.
* Eliminate data races for strMiscWarning and fLargeWork
*Found.
* Add in-memory Sapling ExtFVK support to z_importviewingkey
* Move GetWarnings and related globals to util.
* util: Don\'t set strMiscWarning on every exception
* Add Sapling ExtFVK support to z_exportviewingkey
* Add encoding and decoding for Sapling extended full viewing keys
* test: Add test for CBasicKeyStore::AddSaplingFullViewingKey
* Remove default address parameter from Sapling keystore methods
* SaplingFullViewingKey -> SaplingExtendedFullViewingKey in keystore maps
* Move ZIP 32 classes inside zcash/Address.hpp
* Move Sprout and Sapling address logic into separate files
* Deduplicate some wallet keystore logic
* Add release notes for z_viewtransaction
* change tuples to classes
* add destination wrappers
* Patch libsodium 1.0.15 signature validation onto 1.0.18
* Patch libsodium 1.0.15 pubkey validation onto 1.0.18
* update libsodium to v1.0.18
* Add test vectors for small-order Ed25519 pubkeys
* add missing calls to DecodeAny
* make type and size a pair in DecodeAny arguments
* remove debug noise from 2 gtests
* fix rpx_wallet_tests
* End diff with LF character
* Add missing cases for Blossom in ContextualCheckBlock tests.
* bench: \"Use\" result of crypto_sign_verify_detached
* add txexpirynotify
* test: Fix pyflakes warnings
* test: Hard-code hex memo in wallet_listreceived for Python3 compatibility
* Fix typo
* Remove libsnark preprocessor flags
* remove unused imports
* Update #! env for python3
* Updating remaining python3 conventions
* Update remaining Python3 conventions
* Fix remaining python3 conventions
* update comment regarding prior py2 exception
* fix string pattern issue on byte object
* clean up conventions and whitespace
* fix pyflakes errors
* Update py3 division
* Update json to simplejson to remove unicode and str issue from py2 to py3
* cleanups and fixing odd casting
* fix url and port issue
* clean up
* clean up
* clean up
* Clean up import calls
* Fix decimal 0 issues
* remove u encoding
* clean up to minimize diff
* remove debug lines from prior commits
* update type for decimal 0
* clean up initiliaze statements from imports
* fix initialize statements for imports
* fix type issue
* Use upstream encoding for encodeDecimal
* clean up
* clean-up imports, keep string notation consistent, remove spacing
* Update qa/rpc-tests/addressindex.py
* correct update to python3
* make import urlparse module consistent,httplib update to py3
* Remove semi colons
* fix except bug for undefined url
* Clean up code from upstream we dont use
* Use more meaningful assert_equal from our original codebase
* update remaining encoding issues, add pyblake2
* update io module, fix py3 division, and string encoding
* Clean up code not needed from upstream
* Update to py3, ISSUE with encoding in create_block
* Update to py3, ISSUE with encoding in create_block
* Update to py3, ISSUE with encoding
* Update to py3, ISSUE with encoding
* Update io modules for py3, ISSUE with create_transaction function
* update to py3 conventions, BUG with last assert_equal
* Update type to be decimal
* update encoding, decoding, serialize funcs for py3
* update to py3 encodings
* update to py3 conventions, clean up code to be upstream consistent
* update to py3 conventions, update functions to be upstream consistent
* update to py3 env path
* Add keyerror execption
* clean up binascii call
* update str cast to prevent address assert issues
* update to py3 conventions, preserve ipv6 patch
* update to py3 conventions, update cmp to be py3 compatible, update map to return list for py3
* update to py3 convention, update execfile to py3 call
* update to py3 conventions, update range to return list for py3
* Update to py3 conventions, update filter to return list
* Update to py3 conventions, update decimal calls to be consistent
* Update py2 modules to py3, update encoding to be py3 compatible
* Standard py2 to py3 updates
* Update cmp to py3 functions, update map return to list for py3
* Update py2 env path, remove py2 assert, update http module and assert encoding
* Update py2 env path, remove py2 assert, update filter to return list for py3
* Update py2 env path, remove py2 assert
* Update py2 env path, remove py2 assert
* Update py2 conventions to py3, update Decimal calls
* Update py2 conventions to py3, remove py2 env and assert
* Update py3 env path, remove py2 assert
* Update hexlify for encoding, update to py3 io module
* Update python3 env path, remove python 2.7 assert
* Update ignored testScriptsExt to Python3
* Update rpc-test/test_framework to Py3 convention,modules,encoding
* update test_framework modules
* update /usr/bin/env; fix print conventions
* Fix Boost compilation on macOS
* dedup decode keys and addresses
* Remove remaining instances of boost::function
* Replace boost::function with std::function (C++11)
* replace \"virtual\" with \"override\" in subclasses
* Add build system changes to release notes
* Move default -g flag into configure.ac behind --enable-debug=no
* Make -fwrapv conditional on --enable-debug=no
* zcutil/build.sh: Turn off verbosity by default
* configure: Change default Proton to match build.sh
* zcutil/build.sh: Remove lcov and mining flags
* Simulate worst-case block verification
* Benchmark Zcash verification operations
* Make updatecheck.py compatible with python2
* test: Check z_viewtransaction output in wallet_listreceived RPC test
* RPC: Use OutgoingViewingKeys to recover non-wallet Sapling outputs
* RPC: Display valid UTF-8 memos in z_viewtransaction
* depends: Add utfcpp to dependencies
* RPC: z_viewtransaction
* Delete travis file
* Cache releases to reduce network usage and improve performance
* Wrap long lines
* Fix issue #3772
* update comment, to correctly specify number of methods injected
* build: Split hardening/fPIE options out
* Initialize recently introduced non-static class member lastCycles to zero in constructor
* Require a steady clock for bench with at least micro precision
* bench: prefer a steady clock if the resolution is no worse
* bench: switch to std::chrono for time measurements
* Remove countMaskInv caching in bench framework
* Restore default format state of cout after printing with std::fixed/setprecision
* Avoid static analyzer warnings regarding uninitialized arguments
* Replace boost::function with std::function (C++11)
* Prevent warning: variable \'x\' is uninitialized
* FastRandom benchmark
* Introduce FastRandomContext::randbool()
* Add prevector destructor benchmark
* Assert that what might look like a possible division by zero is actually unreachable
* bench: Fix initialization order in registration
* Address ryanofsky feedback on CCheckQueue benchmarks. Eliminated magic numbers, fixed scoping of vectors (and memory movement component of benchmark).
* Add Basic CheckQueue Benchmark
* Refactoring: Removed using namespace from bench/ and test/ source files.
* bench: Add support for measuring CPU cycles
* bench: Fix subtle counting issue when rescaling iteration count
* Kill insecure_random and associated global state
* Avoid integer division in the benchmark inner-most loop.
* bench: Added base58 encoding/decoding benchmarks
* bench: Add crypto hash benchmarks
* Benchmark rolling bloom filter
* [Trivial] ensure minimal header conventions
* Ignore bench_bitcoin binary.
* Support very-fast-running benchmarks
* Simple benchmarking framework
* Return address and type of imported key in z_importkey
* change regex
* change convention
* add additional tests to rpc_wallet_z_getnewaddress
* Improve z_getnewaddress tests
* update docs
* allow negative index to getblockhash
* add negative height to getblock
* Update list of dependencies to check
* Add GitHub API credential
* Add Python script for checking if dependencies have updates.
* remove SignatureHash from python rpc tests
* Account for malloc overhead
* configure: Re-introduce additional sanitizer flags
* autoconf: Sane --enable-debug defaults.
* Add -ftrapv to DEBUG_CXXFLAGS when --enable-debug is used
* Reset default -g -O2 flags when enable debug
* Make --enable-debug to pick better options
* build: Show enabled sanitizers in configure output
* Add --with-sanitizers option to configure
* Add build support for \'gprof\' profiling.
* Rewrite help texts for features enabled by default.
* Revert \"Add configure flags for enabling ASan/UBSan and TSan\"
* Include shielded transaction data when calculating RecursiveDynamicUsage of transactions
* Add test for unused bits in the Equihash solution encoding.
* Make the equihash validator macro set its output to false when throwing an exception.
* requested changes are rectified
* zcutil/fetch-params.sh unneeded --testnet arg should warn user
* changed wallet_zkeys_test to WalletZkeysTest
* changed txid_tests to TxidTests
* changed seven_eq_seven to SevenEqSeven
* changed test to CamelCase
* changed test to CamelCase
* changed test to CamelCase
* changed libzcash_utils to LibzcashUtils
* chnged keystore_tests to KeystoreTests
* changes tests to camelcase
* changed founders_reward_test to FoundersRewardTest
* changed \"equihash_tests\" to EquihashTests
* changed header_size_is_expected to HeaderSizeIsExpected
* changed test names from _ to CamelCase
* changed block_test to BlockTests
* Mon Feb 17 2020 marecAATTdetebe.org- Update to version 2.1.1.1:
* Mark release v2.1.1-1 as critical.
* Changes to release notes.
* make-release.py: Updated release notes and changelog for 2.1.1-1.
* make-release.py: Updated manpages for 2.1.1-1.
* make-release.py: Versioning changes for 2.1.1-1.
* Add string argument to static_asserts to satisfy C++11.
* Fix ContextualCheckBlock test (the ban score should be 100 since these are mined transactions).
* Apply a consistent ban policy within ContextualCheckTransaction
* Release notes for vulnerability and -maxtimeadjustment option.
* Add -maxtimeadjustment with default of 0 instead of the 4200 seconds used in Bitcoin Core.
* Cosmetic: brace style in ContextualCheckBlockHeader.
* Enable future timestamp soft fork at varying heights according to network.
* test: Update RPC test cache generation to handle new consensus rule
* Adjust the miner to satisfy consensus regarding future timestamps relative to median-time-past.
* Soft fork: restrict block timestamps to be no more than 90 minutes after the MTP of the previous block.
* Add constant for how far a block timestamp can be ahead of adjusted time. Loosely based on https://github.com/bitcoin/bitcoin/commit/e57a1fd8999800b3fc744d45bb96354cae294032
* Improve messages for timestamp rules.
* Move check for block times that are too far ahead of adjusted time, to ContextualCheckBlock.
* Fri Jan 24 2020 marecAATTdetebe.org- Update to version 2.1.1:
* make-release.py: Updated release notes and changelog for 2.1.1.
* make-release.py: Updated manpages for 2.1.1.
* make-release.py: Versioning changes for 2.1.1.
* make-release.py: Updated release notes and changelog for 2.1.1-rc2.
* make-release.py: Updated manpages for 2.1.1-rc2.
* make-release.py: Versioning changes for 2.1.1-rc2.
* Update libsodium download-path
* Fix broken proton build
* Remove temporary workaround for deprecation height.
* make-release.py: Updated release notes and changelog for 2.1.1-rc1.
* make-release.py: Updated manpages for 2.1.1-rc1.
* make-release.py: Versioning changes for 2.1.1-rc1.
* Update proton from 0.26.0 to 0.30.0
* fix tests for enable-debug build
* insightexplorer: LOCK(cs_main) during rpcs
* Update _COPYRIGHT_YEAR in configure.ac to 2020
* Update COPYRIGHT_YEAR in clientversion.h to 2020
* Update of copyright year to 2020
* Use anonymous namespace instead of static functions
* Mention removal of bare multisig IsMine in release notes
* Do not treat bare multisig as IsMine
* Track difference between scriptPubKey and P2SH execution in IsMine
* Switch to a private version of SigVersion inside IsMine
* Do not expose SigVersion argument to IsMine
* Make CScript -> CScriptID conversion explicit
* [script] Unit tests for IsMine
* [script] Unit tests for script/standard functions
* Stop treating importaddress\'ed scripts as change
* test: Rename wallet.dat to wallet_test.dat
* wallet_ismine.h → script/ismine.h
* test: Create test fixture for wallet
* test: move accounting_tests and rpc_wallet_tests to wallet/test
* [Wallet] refactor wallet/init interaction
* [wallet] Move hardcoded file name out of log messages
* [Wallet] optimize return value of InitLoadWallet()
* [Wallet] move \"load wallet phase\" to CWallet
* [Wallet] move wallet help string creation to CWallet
* test: Update wallet RPC test with change to \"absurdly high fee\" limit
* test: Add missing sync_all point
* test: Reverse hashtx and hashblock ordering at start of ZMQ RPC test
* test: Remove genesis-block Sapling activation from shorter_block_times
* test: Add sync_all points after block generation to RPC tests
* Extend comment with reason for taking care with locks
* Tie sync_blocks in RPC tests to notifier thread
* Move block-notifying logic into ThreadNotifyWallets
* Merge tree and boolean fields in ChainTip API
* Move mempool tx notifying logic out of CTxMemPool
* ThreadNotifyRecentlyAdded -> ThreadNotifyWallets
* Correct importaddress help reference to importpubkey
* Make sure LogPrintf strings are line-terminated
* [doc] Fix markdown
* Fix doxygen comment for payTxFee
* Common argument defaults for NODE_BLOOM stuff and -wallet
* [doxygen] Actually display comment
* mempool: Replace maxFeeRate of 10000
*minRelayTxFee with maxTxFee
* HelpMessage: Don\'t hide -mintxfee behind showDebug
* rpcwallet: Clarify what settxfee does
* contrib: Del. gitian downloader config and update gitian README
* [trivial] init: Use defaults MIN_RELAY_TX_FEE & TRANSACTION_MAXFEE
* transaction_tests: Be more strict checking dust
* translations: Don\'t translate markdown or force English grammar
* Clarify what minrelaytxfee does
* [qt] Properly display required fee instead of minTxFee
* Init: Use DEFAULT_TRANSACTION_MINFEE in help message
* [wallet] Add comments for doxygen
* [wallet] Refactor to use new MIN_CHANGE
* [trivial] init cleanup
* Update RPC generate help for numblocks to include required
* Apply suggestions from code review
* Add z_mergetoaddress to release notes
* depends macOS: hide linker visibility warnings
* Revert \"depends: Explicitly set Boost toolchain during configuration\"
* depends: Manually apply build_env to second half of googletest build
* configure: Don\'t require RELRO and BIND_NOW when cross-compiling darwin
* depends: Add Rust targets for cross-compiling darwin
* depends: Compile bdb with --disable-atomics when cross-compiling darwin
* depends: switch to secure download of all dependencies
* depends: tar: Always extract as yourself
* depends: make osx output deterministic
* depends: bump OSX toolchain
* depends: qt/cctools: fix checksum checksum tests
* Revert \"Remove insecurely-downloaded dependencies that we don\'t currently use.\"
* readd create_directories
* Change \"protect\" terminology to \"shield\"
* Remove template matching and pseudo opcodes
* Assert CPubKey::ValidLength to the pubkey\'s header-relevent size
* Comments: More comments on functions/globals in standard.h.
* Accept any sequence of PUSHDATAs in OP_RETURN outputs
* Add IsPushOnly(const_iterator pc)
* Make TX_SCRIPTHASH clear vSolutionsRet first
* Policy: MOVEONLY: 3 functions to policy.o:
* Policy: MOVEONLY: Create policy/policy.h with some constants
* pyflakes fixes
* Match alerts both with and without comments
* Wrap long line
* cleanup: Comments
* Parameterize zcash.conf in init error message
* Add tests covering the current interaction of alerts with subver comments
* Handle Equihash and optional miner code in TestChain100Setup
* Fix benchmarks after removal of SelectParamsFromCommandLine()
* Make connect=0 disable automatic outbound connections.
* Globals: Decouple GetConfigFile and ReadConfigFile from global mapArgs
* Added additional config option for multiple RPC users.
* [qt] Move GUI related HelpMessage() part downstream
* [trivial] Reuse translation and cleanup DEFAULT_
* values
* Bugfix: Omit wallet-related options from -help when wallet is not supported
* Constrain constant values to a single location in code
* Initialize experimental mode in a separate function
* Initialize logging before we do parameter interaction
* Refactor parameter interaction, call it before AppInit2()
* Bugfix: Omit wallet-related options from -help when wallet is disabled
* Bugfix: If genproclimit is omitted to RPC setgenerate, don\'t change it; also show correct default in getmininginfo
* Bugfix: Describe dblogsize option correctly (it refers to the wallet database, not memory pool)
* Bugfix: RPC: blockchain: Display correct defaults in help for verifychain method
* Chainparams: Translations: DRY: options and error strings
* Chainparams: Replace CBaseChainParams::Network enum with string constants (suggested by Wladimir)
* Give a better error message if system clock is bad
* doc: mention change to option parsing behavior in release notes
* Fix argument parsing oddity with -noX
* Unit test doublespends in new blocks
* Update to stop random race error from assert
* Update z_sendmany calls passing int 0, instead of Decimal(\'0\')
* Apply suggestions from code review
* Update `import
*` to unblock pyflakes from failing
* Remove stale comment
* remove dead code in init
* Add check-depends step to STAGE_COMMANDS list
* make proxy_test work on servers without ipv6
* Add Heartwood to upgrade list
* Remove option mempooltxinputlimit
* SQUASH \"Implement watchonly support in fundrawtransaction\"
* SQUASH \"Add have-pubkey distinction to ISMINE flags\"
* Implement watchonly support in fundrawtransaction
* Add logic to track pubkeys as watch-only, not just scripts
* Add have-pubkey distinction to ISMINE flags
* Update importaddress help to push its use to script-only
* Add importpubkey method to import a watch-only pubkey
* Add p2sh option to importaddress to import redeemScripts
* Split up importaddress into helper functions
* Also remove pay-2-pubkey from watch when adding a priv key
* [squashme] improve/corrects prune mode detection test for required wallet rescans
* [RPC] disable import functions in pruned mode
* [autoprune] allow wallet in pruned mode
* Fix typo
* Cast uint8
* in InterruptibleRecv to char
* for recv
* get UPGRADE_TESTDUMMY back to default at the end of the test
* Add fuzzing stub for CheckBlock
* Add fuzzing stub for ReadFeeEstimates
* Add fuzzing stub for AddrMan deserialization
* remove zmergetoaddress from experimental state in rpc-tests
* Remove invalid address comparison from gtest
* Update team email
* Cosmetic update to README.md .
* remove redundant line from test
* reverse conditional, replace get_value_or(0) calls
* revert CCryptoKeyStore::SetCrypted() return value
* eliminate races: hold cs_KeyStore lock while reading fUseCrypto
* simplify locking, merge cs_SpendingKeyStore into cs_KeyStore
* change var and function names for clarity, refactor function
* add after blossom test
* fix spacing
* add NextUpgrade test case
* create and use SecondsLeftToHeight to display next upgrade info
* change target spacing to up to upgrade height
* add next upgrade info to metrics console
* add version to thank you string
* Pass AFL input file path to zcashd
* Have make clean delete fuzz.cpp
* Separate AFL build, run fuzz stages, and add afl argument pass-through
* remove z_mergetoaddress from experimental
* limit blockchain progress to a max of 1.000000
* Show time elapsed when running RPC tests
* Add all-in-one script for starting AFL fuzzing
* change some wallet functions from bool to void
* Add configure option to replace main with a stub for fuzzing
* Add AFL instrumentation scripts to zcutil.
* Consensus: Decouple pow.cpp from util.h
* remove duplicated prefix in errors and warnings
* Migrate to librustzcash 0.2.0 API
* Upgrade librustzcash to 0.2.0
* Added basic fuzzing to the monolith, see ticket #4155
* Closes #3911. Fix help message of RPC getwalletinfo.