electrum

Electrum Bitcoin wallet
git clone https://git.parazyd.org/electrum
Log | Files | Refs | Submodules

commit c810c6a3562dd2f9916006437ff1d6a00c24edf3
parent 6dd2b8b471b9803e5f23c0b81e0751c8b8259966
Author: ThomasV <thomasv@electrum.org>
Date:   Sat,  7 Oct 2017 09:48:20 +0200

commands: use the same option names for RPC and command line. fixes #2875

Diffstat:
Mlib/commands.py | 90++++++++++++++++++++++++++++++++++++++++---------------------------------------
1 file changed, 46 insertions(+), 44 deletions(-)

diff --git a/lib/commands.py b/lib/commands.py @@ -387,11 +387,11 @@ class Commands: return out['address'] @command('nw') - def sweep(self, privkey, destination, tx_fee=None, nocheck=False, imax=100): + def sweep(self, privkey, destination, fee=None, nocheck=False, imax=100): """Sweep private keys. Returns a transaction that spends UTXOs from privkey to a destination address. The transaction is not broadcasted.""" - tx_fee = satoshis(tx_fee) + tx_fee = satoshis(fee) privkeys = privkey.split() self.nocheck = nocheck dest = self._resolver(destination) @@ -432,17 +432,17 @@ class Commands: return tx @command('wp') - def payto(self, destination, amount, tx_fee=None, from_addr=None, change_addr=None, nocheck=False, unsigned=False, rbf=False, password=None, locktime=None): + def payto(self, destination, amount, fee=None, from_addr=None, change_addr=None, nocheck=False, unsigned=False, rbf=False, password=None, locktime=None): """Create a transaction. """ - tx_fee = satoshis(tx_fee) + tx_fee = satoshis(fee) domain = [from_addr] if from_addr else None tx = self._mktx([(destination, amount)], tx_fee, change_addr, domain, nocheck, unsigned, rbf, password, locktime) return tx.as_dict() @command('wp') - def paytomany(self, outputs, tx_fee=None, from_addr=None, change_addr=None, nocheck=False, unsigned=False, rbf=False, password=None, locktime=None): + def paytomany(self, outputs, fee=None, from_addr=None, change_addr=None, nocheck=False, unsigned=False, rbf=False, password=None, locktime=None): """Create a multi-output transaction. """ - tx_fee = satoshis(tx_fee) + tx_fee = satoshis(fee) domain = [from_addr] if from_addr else None tx = self._mktx(outputs, tx_fee, change_addr, domain, nocheck, unsigned, rbf, password, locktime) return tx.as_dict() @@ -515,7 +515,7 @@ class Commands: return results @command('w') - def listaddresses(self, receiving=False, change=False, show_labels=False, frozen=False, unused=False, funded=False, show_balance=False): + def listaddresses(self, receiving=False, change=False, labels=False, frozen=False, unused=False, funded=False, balance=False): """List wallet addresses. Returns the list of all addresses in your wallet. Use optional arguments to filter the results.""" out = [] for addr in self.wallet.get_addresses(): @@ -530,10 +530,12 @@ class Commands: if funded and self.wallet.is_empty(addr): continue item = addr - if show_balance: - item += ", "+ format_satoshis(sum(self.wallet.get_addr_balance(addr))) - if show_labels: - item += ', ' + repr(self.wallet.labels.get(addr, '')) + if labels or balance: + item = (item,) + if balance: + item += (format_satoshis(sum(self.wallet.get_addr_balance(addr))),) + if labels: + item += (repr(self.wallet.labels.get(addr, '')),) out.append(item) return out @@ -695,37 +697,36 @@ param_descriptions = { } command_options = { - 'password': ("-W", "--password", "Password"), - 'new_password':(None, "--new_password","New Password"), - 'receiving': (None, "--receiving", "Show only receiving addresses"), - 'change': (None, "--change", "Show only change addresses"), - 'frozen': (None, "--frozen", "Show only frozen addresses"), - 'unused': (None, "--unused", "Show only unused addresses"), - 'funded': (None, "--funded", "Show only funded addresses"), - 'show_balance':("-b", "--balance", "Show the balances of listed addresses"), - 'show_labels': ("-l", "--labels", "Show the labels of listed addresses"), - 'nocheck': (None, "--nocheck", "Do not verify aliases"), - 'imax': (None, "--imax", "Maximum number of inputs"), - 'tx_fee': ("-f", "--fee", "Transaction fee (in BTC)"), - 'from_addr': ("-F", "--from", "Source address. If it isn't in the wallet, it will ask for the private key unless supplied in the format public_key:private_key. It's not saved in the wallet."), - 'change_addr': ("-c", "--change", "Change address. Default is a spare address, or the source address if it's not in the wallet"), - 'nbits': (None, "--nbits", "Number of bits of entropy"), - 'entropy': (None, "--entropy", "Custom entropy"), - 'segwit': (None, "--segwit", "Create segwit seed"), - 'language': ("-L", "--lang", "Default language for wordlist"), - 'gap_limit': ("-G", "--gap", "Gap limit"), - 'privkey': (None, "--privkey", "Private key. Set to '?' to get a prompt."), - 'unsigned': ("-u", "--unsigned", "Do not sign transaction"), - 'rbf': (None, "--rbf", "Replace-by-fee transaction"), - 'locktime': (None, "--locktime", "Set locktime block number"), - 'domain': ("-D", "--domain", "List of addresses"), - 'memo': ("-m", "--memo", "Description of the request"), - 'expiration': (None, "--expiration", "Time in seconds"), - 'timeout': (None, "--timeout", "Timeout in seconds"), - 'force': (None, "--force", "Create new address beyond gap limit, if no more addresses are available."), - 'pending': (None, "--pending", "Show only pending requests."), - 'expired': (None, "--expired", "Show only expired requests."), - 'paid': (None, "--paid", "Show only paid requests."), + 'password': ("-W", "Password"), + 'new_password':(None, "New Password"), + 'receiving': (None, "Show only receiving addresses"), + 'change': (None, "Show only change addresses"), + 'frozen': (None, "Show only frozen addresses"), + 'unused': (None, "Show only unused addresses"), + 'funded': (None, "Show only funded addresses"), + 'balance': ("-b", "Show the balances of listed addresses"), + 'labels': ("-l", "Show the labels of listed addresses"), + 'nocheck': (None, "Do not verify aliases"), + 'imax': (None, "Maximum number of inputs"), + 'fee': ("-f", "Transaction fee (in BTC)"), + 'from_addr': ("-F", "Source address. If it isn't in the wallet, it will ask for the private key unless supplied in the format public_key:private_key. It's not saved in the wallet."), + 'change_addr': ("-c", "Change address. Default is a spare address, or the source address if it's not in the wallet"), + 'nbits': (None, "Number of bits of entropy"), + 'entropy': (None, "Custom entropy"), + 'segwit': (None, "Create segwit seed"), + 'language': ("-L", "Default language for wordlist"), + 'privkey': (None, "Private key. Set to '?' to get a prompt."), + 'unsigned': ("-u", "Do not sign transaction"), + 'rbf': (None, "Replace-by-fee transaction"), + 'locktime': (None, "Set locktime block number"), + 'domain': ("-D", "List of addresses"), + 'memo': ("-m", "Description of the request"), + 'expiration': (None, "Time in seconds"), + 'timeout': (None, "Timeout in seconds"), + 'force': (None, "Create new address beyond gap limit, if no more addresses are available."), + 'pending': (None, "Show only pending requests."), + 'expired': (None, "Show only expired requests."), + 'paid': (None, "Show only paid requests."), } @@ -742,7 +743,7 @@ arg_types = { 'jsontx': json_loads, 'inputs': json_loads, 'outputs': json_loads, - 'tx_fee': lambda x: str(Decimal(x)) if x is not None else None, + 'fee': lambda x: str(Decimal(x)) if x is not None else None, 'amount': lambda x: str(Decimal(x)) if x != '!' else '!', 'locktime': int, } @@ -854,7 +855,8 @@ def get_parser(): if cmdname == 'restore': p.add_argument("-o", "--offline", action="store_true", dest="offline", default=False, help="Run offline") for optname, default in zip(cmd.options, cmd.defaults): - a, b, help = command_options[optname] + a, help = command_options[optname] + b = '--' + optname action = "store_true" if type(default) is bool else 'store' args = (a, b) if a else (b,) if action == 'store':