wif compressed version byte is the pubkey version byte,
not the address version byte (so x80 or xef).
This is updated in the scripts and the Qt code for
exporting or displaying.
sendtomany update:
script now works with segwit or non-segwit inputs
(segwit by default), still requiring a utxo and a
wif compressed privkey as input.
small clean up in electrum:
remove nonresponsive testnet server
remove unwanted print statement from fee estimate
handle electrum server disconnects and switch to new servers automatically, refactor server lists to data file
add SSL connections to electrum
Bugfixes in electrum code:
Restart on connectionFailed as well as connectionLost
Query utxo set must return (only) None for nonexistent/spent utxos.
Dont include twisted logging for wallet-tool
start thread immediately for early blockchain queries
timeout non-responsive servers
fix abstractBCI refs in subclasses
sys.exit if history invoked but Bitcoin Core is not blockchain interface
Implement wallet history via wallet_fetch_history function
Pass wallet options to wallet_fetch_history
Don't commit transaction IDs in VCS
Replace get_p2pk_vbyte references with get_p2sh_vbyte
Now using pay-to-script-hash transaction types as wrappers around Segwit
transactions.
Remove print statement when invoking wallet history
Make RPC connection persistent to improve high throughput RPC
access where necessary; uses keep alive and recreates connection
when it drops.
Restrict listtransaction calls to the required account, plus only
looks back 100 txs (assuming concurrent txs less than this), thus
greatly reducing the number of gettransaction calls over RPC.
Fixes bug in choose_sweep_orders (was not filtering out non-sw
orders).
Removes tickchainthread from tests, so no longer any threads used
even in tests; replaces with reactor task loop.
Temporarily removes test_wallets and test_segwit from build tests,
since they used blocking which only worked in threaded tests; these
tests must be rebuilt.
Updates to joinmarket-qt to reflect; no signals, only callbacks
Includes code for watching txs both via notify addr and txs;
taker uses the latter (knows full txid), maker the former
Additional code for watching tx spends included for downstream.
Add extpub keys for branches to wallet view
Make extpub keys copyable via context menu
Fix bug in seedwords display
Make all wallet view columns resizable
hexseed only for regtest
In case Taker.initialize() fails for any reason such as no
liquidity, stallMonitor() will not wake up for 20*maker_timeout_sec;
so, in this change, IF the client schedule has length one, we
immediately figure the on_finished_callback with failure parameters
so that the reactor is stopped without waiting.
This change does not apply for the general multi-step schedule, as
that is principally for tumbler-style algos which are intended to
aggressively keep trying in case of any failure.
More on bug: when signing txs with SW and non-SW inputs, the
existing signature_form for non-SW inputs didnt pay attention
to whether the tx serialization was SW or non-SW style, so if
a SW-style tx serialization was passed in, it was kept in SW
form after passing through signature_form, resulting in an attempt
to create a signature based on SW style sighashing. The fix here
just ensures that signature_form always enforces the tx format
to be non-SW style, so allowing callers to sign() to get a valid
signature whatever they pass in.