Browse Source

Merge pull request #404 from WyseNynja/flake8_electrum

flake8 cleanup of ./electrum
283
ThomasV 11 years ago
parent
commit
9b247c1653
  1. 60
      electrum

60
electrum

@ -16,21 +16,22 @@
# You should have received a copy of the GNU General Public License # You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>. # along with this program. If not, see <http://www.gnu.org/licenses/>.
import re
import pkgutil
import sys, os, time, json
import optparse
import platform
from decimal import Decimal from decimal import Decimal
import json
import optparse
import os
import re
import sys
import time
import traceback import traceback
try: try:
import ecdsa import ecdsa # todo: 'ecdsa' imported but unused
except ImportError: except ImportError:
sys.exit("Error: python-ecdsa does not seem to be installed. Try 'sudo pip install ecdsa'") sys.exit("Error: python-ecdsa does not seem to be installed. Try 'sudo pip install ecdsa'")
try: try:
import aes import aes # todo: 'aes' imported but unused
except ImportError: except ImportError:
sys.exit("Error: AES does not seem to be installed. Try 'sudo pip install slowaes'") sys.exit("Error: AES does not seem to be installed. Try 'sudo pip install slowaes'")
@ -47,7 +48,8 @@ if __builtin__.use_local_modules:
imp.load_module('electrum', *imp.find_module('lib')) imp.load_module('electrum', *imp.find_module('lib'))
imp.load_module('electrum_gui', *imp.find_module('gui')) imp.load_module('electrum_gui', *imp.find_module('gui'))
from electrum import * from electrum import * # todo: import * is generally frowned upon. should import just what is used
# get password routine # get password routine
def prompt_password(prompt, confirm=True): def prompt_password(prompt, confirm=True):
@ -64,6 +66,7 @@ def prompt_password(prompt, confirm=True):
password = None password = None
return password return password
def arg_parser(): def arg_parser():
usage = "%prog [options] command" usage = "%prog [options] command"
parser = optparse.OptionParser(prog=usage, add_help_option=False) parser = optparse.OptionParser(prog=usage, add_help_option=False)
@ -88,6 +91,7 @@ def arg_parser():
parser.add_option("-1", "--oneserver", action="store_true", dest="oneserver", default=False, help="connect to one server only") parser.add_option("-1", "--oneserver", action="store_true", dest="oneserver", default=False, help="connect to one server only")
return parser return parser
def print_help(parser): def print_help(parser):
parser.print_help() parser.print_help()
print_msg("Type 'electrum help <command>' to see the help for a specific command") print_msg("Type 'electrum help <command>' to see the help for a specific command")
@ -95,17 +99,18 @@ def print_help(parser):
run_command('help') run_command('help')
exit(1) exit(1)
def print_help_cb(self, opt, value, parser): def print_help_cb(self, opt, value, parser):
print_help(parser) print_help(parser)
def run_command(cmd, password=None, args=[]): def run_command(cmd, password=None, args=[]):
cmd_runner = Commands(wallet, network) cmd_runner = Commands(wallet, network)
func = getattr(cmd_runner, cmd) func = getattr(cmd_runner, cmd)
cmd_runner.password = password cmd_runner.password = password
try: try:
result = func(*args[1:]) result = func(*args[1:])
except Exception as e: except Exception:
import traceback
traceback.print_exc(file=sys.stdout) traceback.print_exc(file=sys.stdout)
sys.exit(1) sys.exit(1)
@ -124,11 +129,17 @@ if __name__ == '__main__':
# config is an object passed to the various constructors (wallet, interface, gui) # config is an object passed to the various constructors (wallet, interface, gui)
if is_android: if is_android:
config_options = {'portable':True, 'verbose':True, 'gui':'android', 'auto_cycle':True} config_options = {
'portable': True,
'verbose': True,
'gui': 'android',
'auto_cycle': True,
}
else: else:
config_options = eval(str(options)) config_options = eval(str(options))
for k, v in config_options.items(): for k, v in config_options.items():
if v is None: config_options.pop(k) if v is None:
config_options.pop(k)
set_verbosity(config_options.get('verbose')) set_verbosity(config_options.get('verbose'))
@ -143,10 +154,10 @@ if __name__ == '__main__':
else: else:
cmd = args[0] cmd = args[0]
if cmd == 'gui': if cmd == 'gui':
gui_name = config.get('gui', 'classic') gui_name = config.get('gui', 'classic')
if gui_name in ['lite', 'classic']: gui_name = 'qt' if gui_name in ['lite', 'classic']:
gui_name = 'qt'
try: try:
gui = __import__('electrum_gui.' + gui_name, fromlist=['electrum_gui']) gui = __import__('electrum_gui.' + gui_name, fromlist=['electrum_gui'])
except ImportError: except ImportError:
@ -193,7 +204,7 @@ if __name__ == '__main__':
if cmd.name in ['create', 'restore']: if cmd.name in ['create', 'restore']:
if storage.file_exists: if storage.file_exists:
sys.exit("Error: Remove the existing wallet first!") sys.exit("Error: Remove the existing wallet first!")
if options.password != None: if options.password is not None:
password = options.password password = options.password
else: else:
password = prompt_password("Password (hit return if you do not wish to encrypt your wallet):") password = prompt_password("Password (hit return if you do not wish to encrypt your wallet):")
@ -207,8 +218,10 @@ if __name__ == '__main__':
fee = options.tx_fee if options.tx_fee else raw_input("fee (default:%s):" % (str(Decimal(wallet.fee)/100000000))) fee = options.tx_fee if options.tx_fee else raw_input("fee (default:%s):" % (str(Decimal(wallet.fee)/100000000)))
gap = options.gap_limit if options.gap_limit else raw_input("gap limit (default 5):") gap = options.gap_limit if options.gap_limit else raw_input("gap limit (default 5):")
if fee: wallet.set_fee(float(fee)*100000000) if fee:
if gap: wallet.change_gap_limit(int(gap)) wallet.set_fee(float(fee)*100000000)
if gap:
wallet.change_gap_limit(int(gap))
if cmd.name == 'restore': if cmd.name == 'restore':
import getpass import getpass
@ -254,8 +267,6 @@ if __name__ == '__main__':
# terminate # terminate
sys.exit(0) sys.exit(0)
# important warning # important warning
if cmd.name in ['dumpprivkey', 'dumpprivkeys']: if cmd.name in ['dumpprivkey', 'dumpprivkeys']:
print_msg("WARNING: ALL your private keys are secret.") print_msg("WARNING: ALL your private keys are secret.")
@ -281,7 +292,6 @@ if __name__ == '__main__':
else: else:
password = None password = None
# add missing arguments, do type conversions # add missing arguments, do type conversions
if cmd.name == 'importprivkey': if cmd.name == 'importprivkey':
# See if they specificed a key on the cmd line, if not prompt # See if they specificed a key on the cmd line, if not prompt
@ -318,8 +328,6 @@ if __name__ == '__main__':
if len(args) < 2: if len(args) < 2:
print_help(parser) print_help(parser)
# check the number of arguments # check the number of arguments
if len(args) - 1 < cmd.min_args: if len(args) - 1 < cmd.min_args:
print_msg("Not enough arguments") print_msg("Not enough arguments")
@ -337,7 +345,6 @@ if __name__ == '__main__':
print_msg("Warning: Final argument was reconstructed from several arguments:", repr(message)) print_msg("Warning: Final argument was reconstructed from several arguments:", repr(message))
args = args[0:cmd.min_args] + [message] args = args[0:cmd.min_args] + [message]
# open session # open session
if cmd.requires_network and not options.offline: if cmd.requires_network and not options.offline:
network = Network(config) network = Network(config)
@ -352,10 +359,7 @@ if __name__ == '__main__':
else: else:
network = None network = None
# run the command # run the command
if cmd.name == 'deseed': if cmd.name == 'deseed':
if not wallet.seed: if not wallet.seed:
print_msg("Error: This wallet has no seed") print_msg("Error: This wallet has no seed")
@ -368,7 +372,8 @@ if __name__ == '__main__':
wallet.storage.put('seed', '', True) wallet.storage.put('seed', '', True)
wallet.use_encryption = False wallet.use_encryption = False
wallet.storage.put('use_encryption', wallet.use_encryption, True) wallet.storage.put('use_encryption', wallet.use_encryption, True)
for k in wallet.imported_keys.keys(): wallet.imported_keys[k] = '' for k in wallet.imported_keys.keys():
wallet.imported_keys[k] = ''
wallet.storage.put('imported_keys', wallet.imported_keys, True) wallet.storage.put('imported_keys', wallet.imported_keys, True)
print_msg("Done.") print_msg("Done.")
else: else:
@ -391,7 +396,6 @@ if __name__ == '__main__':
else: else:
run_command(cmd.name, password, args) run_command(cmd.name, password, args)
if network: if network:
if wallet: if wallet:
wallet.stop_threads() wallet.stop_threads()

Loading…
Cancel
Save