improve getblocktemplate performance for shielded coinbase
Closes#4817. This improvement applies only when the `longpollid` argument is specified. This argument causes the `getblocktemplate` RPC to not return a template immediately, but instead to wait until either a new block arrives, or new transactions arrive in the mempool.
Switch to ed25519-zebra for consensus signature checks
ed25519-zebra can validate all signatures pre-Canopy, and now that Canopy
is active on mainnet, we don't need to worry about consensus divergence.
[Feature] Include transaction hex in verbose getblock output
This fixes https://github.com/zcash/zcash/issues/4888 and actually makes it so the existing documentation is correct!
I also added a small test to make sure the transaction hex is returned correctly in verbose (2) `getblock` calls, and matches the value in `getrawtransaction`.
Let me know if there is anything else I need to update, as this is my first PR for zcash.
-------------------------------------------------------------------------------------------
Please ensure this checklist is followed for any pull requests for this repo. This checklist must be checked by both the PR creator and by anyone who reviews the PR.
* [ ] Relevant documentation for this PR has to be completed and reviewed by @mdr0id before the PR can be merged
* [ ] A test plan for the PR must be documented in the PR notes and included in the test plan for the next regular release
As a note, all buildbot tests need to be passing and all appropriate code reviews need to be done before this PR can be merged.
add more version information to getinfo rpc
Needed for https://github.com/zcash/lightwalletd/issues/319, lightwalletd's `GetLightdInfo` grpc would like to return the zcashd version and commit hash.
Backport Boost removal PRs
Cherry-picked from the following upstream PRs:
- bitcoin/bitcoin#7613
- bitcoin/bitcoin#10502
- bitcoin/bitcoin#10193
- bitcoin/bitcoin#13961
- bitcoin/bitcoin#13734
- Only the second commit (we don't need the first).
- bitcoin/bitcoin#14480
Part of #4819.
Zcash: Added an extra command to handle cases where the pair were not
separated by a space.
-BEGIN VERIFY SCRIPT-
sed -i 's/PAIRTYPE(\([^,]*\), \([^\)]*\))/std::pair<\1, \2>/' ./src/*.h ./src/*.cpp ./src/*/*.h ./src/*/*.cpp ./src/*/*/*.h ./src/*/*/*.cpp ;
sed -i 's/PAIRTYPE(\([^,]*\),\([^\)]*\))/std::pair<\1, \2>/' ./src/*.h ./src/*.cpp ./src/*/*.h ./src/*/*.cpp ./src/*/*/*.h ./src/*/*/*.cpp ;
sed -i ':a;N;$!ba;s/#define std::pair<t1, t2> std::pair<t1, t2>\n//' ./src/utilstrencodings.h ;
-END VERIFY SCRIPT-
Removed externs
Added listCommands() to CRPCTable
Move autocomplete init to RPCConsole::setClientModel()
Zcash: Only the CRPCTable::listCommands() function.
A few miscellaneous improvements to rpc-tests.py command line arguments:
- make all arguments start with double dash for consistency
- improve help text and output
- add nozmq argument to explicitly exclude the ZMQ tests
- change 'parallel' to 'jobs'