Merge bitcoin/bitcoin#33819: mining: getCoinbase() returns struct instead of raw tx
48f57bb35bmining: add new getCoinbaseTx() returning a struct (Sjors Provoost)d59b4cdb57mining: rename getCoinbaseTx() to ..RawTx() (Sjors Provoost) Pull request description: The first commit renames `getCoinbaseTx()` to `getCoinbaseRawTx()` to reflect that it returns a serialised transaction. This does not impact IPC clients, because they do not use the function name. The second commit then introduces a replacement `getCoinbase()` that provides a struct with everything clients need to construct a coinbase. This avoids clients having to parse and manipulate our dummy transaction. Deprecate but don't remove `getCoinbaseRawTx()`, `getCoinbaseCommitment()` and `getWitnessCommitmentIndex()`. After this change we can drop these deprecated methods, which in turn would allow us to clear the dummy transaction from the `getBlock()` result. But that is left for a followup to keep this PR focussed. See https://github.com/Sjors/bitcoin/pull/106 for an approach. Expand the `interface_ipc.py` functional test to document its usage. Can be tested using: - https://github.com/stratum-mining/sv2-tp/pull/59 ACKs for top commit: ryanofsky: Code review ACK48f57bb35b. Just rebased and addressed comments and dropped coinbase tx "template" suffix, which is a nice change ismaelsadeeq: code review ACK48f57bb35bvasild: ACK48f57bb35bTree-SHA512: c4f1d752777fb3086a1a0b7b8b06e4205dbe2f3adb41f218855ad1dee952adccc263cf82acd3bf9300cc83c2c64cebd2b27f66a69beee32d325b9a85e3643b0d
This commit is contained in:
9 files changed
+239
-10
No files matched your search
@@ -0,0 +1,8 @@
|
||||
Mining IPC
|
||||
----------
|
||||
|
||||
- The `getCoinbaseTx()` method is renamed to `getCoinbaseRawTx()` and deprecated.
|
||||
IPC clients do not use the function name, so they're not affected. (#33819)
|
||||
- Adds `getCoinbaseTx()` which clients should use instead of `getCoinbaseRawTx()`. It
|
||||
contains all fields required to construct a coinbase transaction, and omits the
|
||||
dummy output which Bitcoin Core uses internally. (#33819)
|
||||
Reference in new issue
Block a user