Wallet persists utxo metadata; currently only
contains a field 'disabled' indexed by utxo.
User can switch this on or off (enabled) via
wallet-tool 'freeze' method.
Disabled utxos will not be used in coin
selection in any transaction.
Wallet still displays all utxo balances in
display method (and in GUI).
Add tests of disabling to test_utxomanager
Add Coins tab to Qt, with freeze/unfreeze feature.
Coins tab shows updated utxo info txid:n, amt, address and
enabled/disabled, which can be toggled from right click menu.
Instead of displaying blank tree of wallet mixdepths / addresses.
Also renamed self.history to self.walletTree, for the name to be less
confusing, as there is also TxHistoryTab which is unrelated.
Before this change with wallet-tool.py you would get "ValueError:
invalid padding byte" and "jmclient.storage.StoragePasswordError: Wrong
password." exceptions, joinmarket-qt would fail silently.
Prior to this commit, if a user chose cancel while selecting a
filename for a new wallet in Qt, the wallet name was set to the
default `wallet.jmdat`, which could lead to a crash or overwrite.
This fixes that by ensuring that the wallet generation code
recognizes the cancel operation.
Previous to this commit, the jmbitcoin package was accessed via
a file in jmclient `btc.py` which was originally added as an
interface to allow the client to use a non-jmbitcoin package to
provide the implementation; while this idea is useful, the way
it was implemented was not, moreover it is not currently used
and contained duplicated code that was unmanaged. Also, the
original usage of this was only by the electrum plugin, which
has currently been abandoned. This simplifies the code and
avoids spurious error messages. Note that most of the changes
are a result of pulling the logging function directly from the
jmbase package instead of indirectly via this interface (which
was unnecessary and not connected with jmbitcoin).
As for maker, to use this feature set segwit = false
in the POLICY section of the config file.
This commit does *not* include support in the GUI.
Additionally, minor fixes to utility scripts for non-sw wallets,
and updated add-utxo tool to support non-sw wallets.
Bugfixes to wallet_utils to support non-sw wallets
and signmessage.
Set wallet synced to True on code branch where wallet is empty, so sync completes.
Ensure wallet_synced is False at the start of new sync (otherwise Resync in Qt fails).
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
Ensure reactor not already installed (from pyinstaller created
binaries, reactor is already installed on startup before
pyqt4reactor is imported, causing failure to start. Does not
affect non-binary Qt script run).
Qt reads daemon config flag from DAEMON section not GUI.
Typo in JMQT walkthrough guide.
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