Fixes issue #3504
Changes the command to obtain the GCC version in the GitHub issue template to `gcc --version`, and adds a couple other useful commands.
add spentindex to getrawtransaction RPC results for bitcore block explorer
#3708 There are a few new `getrawtransaction` JSON result fields that the Insight block explorer depends on.
Closes#3992. Remove obsolete warning message.
Test plan: ensure that no message "%d of last 100 blocks above version %d" occurs in the log or on the metrics screen when syncing the block chain. Verify that this message *was* displayed previously for a sync from the same point.
Replace CSproutNotePlaintextEntry with SproutNoteEntry to match Sapling
This refactoring makes the output of GetFilteredNotes safer to use, by setting the Sprout note at the point of decryption, where the corresponding address is already known, rather than having to recall it using the correct payment address.
Bitcoin Core refactoring and cleanups 1
Cherry-picked from the following upstream PRs:
- bitcoin/bitcoin#6538
- bitcoin/bitcoin#6163
- bitcoin/bitcoin#6982
- bitcoin/bitcoin#6986
- bitcoin/bitcoin#7053
- bitcoin/bitcoin#7444
- bitcoin/bitcoin#7793
- Excluding some comments in `txmempool.h` on code we haven't yet pulled in.
- bitcoin/bitcoin#7916
- bitcoin/bitcoin#7815
Additionally, the Equihash parameters are moved into the consensus parameters, and
various other functions in `main.cpp` have `const CChainParams&` arguments added.
Part of #2074.
Remove old mergetoaddress RPC test
The test wallet_mergetoaddress.py is no longer run and has been replaced by mergetoaddress_sprout.py and mergetoaddress_sapling.py. It should have been removed as part of #3619, but was not.
Break the circular dependency between main and txdb by:
- Moving `CBlockFileInfo` from `main.h` to `chain.h`. I think this makes
sense, as the other block-file stuff is there too.
- Moving `CDiskTxPos` from `main.h` to `txdb.h`. This type seems
specific to txdb.
- Pass a functor `insertBlockIndex` to `LoadBlockIndexGuts`. This leaves
it up to the caller how to insert block indices.
Zcash: This does not actually break the circular dependency for us yet, as we
still need to pull in bitcoin/bitcoin#7756 and bitcoin/bitcoin#7904.
Previously didn't make clear that the ContextualCheckBlock* functions
meant the block headers as context - not the UTXO set itself - and that
ConnectBlock() also did UTXO-related validity checks (in the future we
may split that functionality into a separate UTXO-specific contextual
check block function).
Also, reordered to put validity checks first for better readability.
1) Chainparams: Explicit CChainParams arg for main:
-AcceptBlock
-AcceptBlockHeader
-ActivateBestChain
-ConnectTip
-InitBlockIndex
-LoadExternalBlockFile
-VerifyDB parametric constructor
2) Also pickup more Params()\. in main.cpp
3) Pass nPruneAfterHeight explicitly to new FindFilesToPrune() in main.cpp
Fixes#4013, added BitcoinABC as a disclosure partner
I've tried to avoid using "partner" as a term in general because it's not accurate, but it's quicker to type. We intend to share any vulns we become aware of in our bitcoin code with at least BitcoinABC.