The mining interface is defined in:
- https://github.com/bitcoin/bitcoin/blob/master/src/interfaces/mining.h
- https://github.com/bitcoin/bitcoin/blob/master/src/ipc/capnp/mining.capnp
Clients that are known to depend on it:
- https://github.com/stratum-mining/sv2-tp
- https://github.com/stratum-mining/sv2-apps/tree/main/bitcoin-core-sv2
The changes below are not breaking, unless mentioned otherwise. Adding new methods or new arguments to existing methods is not a breaking change.
At this state it’s OK to make breaking changes, such as deleting a method or changing its signature. But ideally we should do so once in a major release, collecting a bunch of fixes.
- low priority breaking change(s): https://github.com/Sjors/bitcoin/pull/106
- https://github.com/Sjors/bitcoin/pull/106/changes/2ece972a3f78cb7faaf75b6271016316ead572f4: clear dummy coinbase by default
- https://github.com/Sjors/bitcoin/pull/106/changes/40d1886584d3d7c89fa5656e325222edd51c2f89:
alwaysAddCoinbaseCommitment: need to check if this already done
Misc related: