Providing a script for the coinbase transaction is only done in test code and for (unoptimized) CPU solo mining.
Production miners use the getblocktemplate
RPC which omits the coinbase transaction entirely from its block template, leaving it to external (pool) software to construct it.
This commit removes the script_pub_key argument
from createNewBlock()
in the Mining interface.
A coinbase script can still be passed via BlockCreateOptions
instead. Tests are modified to do so.