Commit Graph

515 Commits

Author SHA1 Message Date
Neil Booth dee402b961 Plugin wallets: better error when unloadable
Used to get:

jsonrpclib.jsonrpc.ProtocolError: (-32603, u'Server error:   File "src/electrum/lib/plugins.py", line 144, in wallet_plugin_loader | KeyError: \'trustedcoin\'')

Now get:

jsonrpclib.jsonrpc.ProtocolError: (-32603, u'Server error:   File "src/electrum/lib/plugins.py", line 81, in load_plugin | RuntimeError: cmdline implementation for trustedcoin plugin not found')
2016-01-24 19:39:59 +09:00
ThomasV e5aa543707 fix #1622 2016-01-10 21:00:41 +01:00
ThomasV 62868ab29a Register loaded wallets in daemon, to prevent a wallet from being opened twice.
Simplify the wizard logic.
2016-01-06 00:58:43 +01:00
Neil Booth d63e754c67 Remove some unused hook infrastructure 2016-01-01 19:15:01 +09:00
ThomasV fb8f9e55ef Cleanup main script, with semantic changes:
The --offline flag applies only to GUI.
Commands must use the daemon if a daemon is running, otherwise they are run offline.
Commands that only require the wallet do not have the require_network flag.
2015-12-23 15:59:32 +01:00
ThomasV 93573282bf fix wallet saving 2015-12-23 15:23:33 +01:00
ThomasV acbe67fd1f separation between RPC and non-RPC commands. 2015-12-23 10:54:31 +01:00
Neil Booth e1c0298fc2 Write the wallet less often
This should speed up synchronization / restoration of large wallets.
Wallets are written only when they switch to up_to_date state, or
when stop_threads() is called when closing the daemon, or when
a command line command finishes.
2015-12-20 15:47:46 +09:00
ThomasV 23868d5769 commands that require wallet require daemon now 2015-12-15 10:39:25 +01:00
ThomasV 74a9e2296c separate Network and Plugins 2015-12-03 11:18:10 +01:00
ThomasV c7b1721f58 fix cmdline trezor 2015-12-01 12:00:18 +01:00
ThomasV 3c11c63289 fix daemon: don't oad wallet if there is a gui 2015-11-30 10:23:38 +01:00
ThomasV 4682d95a76 merge jsonrpc gui and daemon 2015-11-30 10:09:54 +01:00
ThomasV 39af17bc23 load wallets in daemon 2015-11-28 15:37:51 +01:00
ThomasV 00f298d3b1 revert e9c101f 2015-11-27 15:39:31 +01:00
ThomasV e9c101f0c8 daemon: use daemon threads 2015-11-27 09:54:01 +01:00
ThomasV d8ca881457 remove unused setting 2015-11-25 19:09:32 +01:00
ThomasV 1207ad3ba4 fix: websocket uses network object 2015-11-25 10:48:34 +01:00
ThomasV 2934fd17be fix websockets 2015-11-25 10:32:46 +01:00
ThomasV b727824eed fix #1554: use AF_INET instead of AF_UNIX, and write port number to lockfile 2015-11-19 12:42:11 +01:00
ThomasV 7641137ecc simplify get_daemon 2015-11-19 11:05:49 +01:00
ThomasV bb7b0884e3 Various fixes for command line. Make 'payto' command require network (fixes #1525) 2015-10-29 11:06:09 +01:00
ThomasV 079cb311ec call wallet.wait_until_synchronized before commands 2015-10-29 05:01:06 +01:00
ThomasV 826c44e500 restore initial indentation 2015-10-28 11:13:45 +01:00
ThomasV 142b5532ec revert to previous restore method, without daemon 2015-10-28 11:11:41 +01:00
ThomasV ca9eb50821 dont create wallet instance twice 2015-10-28 11:03:39 +01:00
ThomasV 5b96d5166e fix restore messages 2015-10-28 10:46:01 +01:00
ThomasV 052d8b236e fix #1494 2015-10-28 10:36:44 +01:00
ThomasV 94ac0db91f command line: Require 'text' argument for 'restore'. Replace 'concealed' option with ':' magic word 2015-10-28 09:33:35 +01:00
ThomasV 26682491b2 generic restore from command line 2015-10-27 14:33:41 +01:00
ThomasV 22575b9760 dont accept payment requests without uri 2015-10-23 11:20:32 +02:00
ThomasV 610ae91310 restore offline mode with gui 2015-10-16 23:46:53 +02:00
ThomasV a5e94ef0e8 kivy: use plugins 2015-10-13 12:12:49 +02:00
ThomasV f3bd1662f7 fix web request server. fixes #1455 2015-09-30 11:06:27 +02:00
ThomasV 52315fdb72 detect kivy from os.environ 2015-09-07 16:44:17 +02:00
Neil Booth b5f986ee56 Torwards sane signalling for exchange_rate plugin 2015-09-05 21:47:35 +09:00
ThomasV 3cc7c1454b move back URI rewriting to main electrum script 2015-09-03 11:18:35 +02:00
Neil Booth 87cff8e380 Check URI in "electrum" because of ambiguity 2015-09-03 18:07:15 +09:00
Neil Booth 27917af2bf Get URIs working properly for multiple windows 2015-09-03 17:52:41 +09:00
ThomasV 4655c5f565 Fix SocketPipe:
* add errcode 35 for BSD
* in addition, add a very long timeout to command line pipe, in order to prevent that exception to be raised.
2015-09-03 10:47:57 +02:00
ThomasV e3b7239d19 fix SocketPipe for returning empty array 2015-09-03 10:09:25 +02:00
Neil Booth 49797c3094 Create a Plugins class
Encapsulates plugin logic and removes global variable ugliness.
2015-09-03 12:02:03 +09:00
ThomasV bdb4d3ecb8 move methods calling installwizard to main gui class 2015-09-02 12:05:33 +02:00
ThomasV 93c468504e use the parent config instance when daemon starts a window 2015-09-02 09:55:45 +02:00
ThomasV ba2570b8aa check that GUI has new_window method 2015-09-01 10:25:20 +02:00
ThomasV 0e2db1e0ca don't try to open window if started in daemon mode 2015-09-01 10:17:55 +02:00
Neil Booth 2d05e7d891 Merge the network and network_proxy 2015-08-31 12:00:38 +09:00
ThomasV 8b7a8b1337 decode json args after sendind over socket 2015-08-30 17:46:51 +02:00
ThomasV 92e0744470 Refactoring of daemon:
* gui and daemon are in the same process
 * commands that require network are sent to the daemon
 * open only one gui window per wallet
2015-08-30 11:31:51 +02:00
ThomasV 064f0b71e2 dns is used by android now 2015-08-18 12:36:12 +02:00
ThomasV f583fcfedb do not import dns on android 2015-08-18 12:15:56 +02:00
ThomasV 89677c47f7 cmdline: read all arguments before parsing 2015-08-17 09:46:50 +02:00
ThomasV fa9ce51685 deprecate dumpprivkeys 2015-08-16 16:30:55 +02:00
ThomasV 02e81a3655 read command line arguments from stdin if '-' is passed 2015-08-16 16:11:52 +02:00
ThomasV 65c7dfafbc check alias in signrequest 2015-08-07 09:00:00 +02:00
ThomasV 5ddafa8b14 rm tlslite import 2015-08-04 19:29:43 +02:00
ThomasV 77b0e7be5e network: initial status should be 'unknown', distinct from 'connecting' 2015-07-30 11:32:16 +02:00
ThomasV 35923f1df0 add dns to imports 2015-07-29 18:37:00 +02:00
ThomasV e2185da094 sleep to let socket threads timeout 2015-07-18 14:03:52 +02:00
Matt Tanous dac89e212c Update electrum 2015-07-06 18:15:22 -06:00
ThomasV 145bf5cf0a rename decodetx and sendtx commands. merge mktx and payto commands. 2015-06-10 23:21:25 +02:00
ThomasV 2863d19579 command-line handler for trezor 2015-06-10 22:08:19 +02:00
ThomasV ddef165e18 updates for android 2015-06-09 23:18:32 +02:00
ThomasV fbc68d94d6 pop config variables from cmd line 2015-06-07 17:45:13 +02:00
ThomasV 4726d3a1fc minor fix: var name 2015-06-02 14:17:14 +02:00
ThomasV b5435a16e8 fix auto_connect name displayed in status 2015-06-02 11:41:41 +02:00
ThomasV 088d8e8415 show request status 2015-06-02 11:36:06 +02:00
ThomasV e4946cf26e setconfig: return False on error 2015-06-02 11:05:21 +02:00
ThomasV e5b6b05482 show auto-connect in daemon status 2015-06-01 11:05:23 +02:00
ThomasV ddd6a58cc7 commands: extract params and options from arguments 2015-05-31 22:42:34 +02:00
ThomasV c4d822b0cf add 'unsigned' option 2015-05-31 17:38:57 +02:00
ThomasV ee20910c65 fix signtransaction flags 2015-05-31 17:21:02 +02:00
ThomasV 0caa29784c separate param_descriptions and improve help messages 2015-05-31 10:03:53 +02:00
ThomasV cc610d352f merge signtxwithwallet and signtxwithkey 2015-05-31 09:28:47 +02:00
ThomasV aa7f056d02 minor fix: sys.argv length 2015-05-31 08:36:12 +02:00
ThomasV 9acc0e4ed0 minor formatting 2015-05-31 08:06:20 +02:00
ThomasV 92a158b910 proper handling of arg_types. add more options for listaddresses 2015-05-30 18:49:58 +02:00
ThomasV bf98b547e1 fix bug in cmd.params 2015-05-30 17:09:17 +02:00
ThomasV d2f3e3f349 fix cmdline listcontacts 2015-05-30 12:35:58 +02:00
ThomasV 701527df20 fix -P option 2015-05-30 06:56:45 +02:00
ThomasV 3ddbbc1008 Parse arguments with argparse.
Move parser to commands.py
2015-05-29 19:24:50 +02:00
Neil Booth 39fe24b4d3 Rename auto_cycle to auto_connect in config
User config is updated if appropriate.
Add tests behaviour is as expected.
Just the one rename-it reference to auto_cycle remains.
2015-05-25 16:18:52 +09:00
Neil Booth 01d8f79a75 Clean up pick_random_server() and filter_protocol() and their
call sites.

Remove unused imports and redundant random pick of server
2015-05-24 21:07:35 +09:00
ThomasV d40c12c949 check gui when loading plugins 2015-05-24 09:26:28 +02:00
ThomasV 8f98ea4aca make plugins available without the GUI 2015-05-23 10:38:19 +02:00
ThomasV c2a4252065 do not pass config to storage. request height from network_proxy if connected 2015-05-08 10:58:54 +02:00
ThomasV 15826e18b8 Merge pull request #1173 from kyuupichan/is_local
Determine is_local not based on cwd but on existence of setup-release.py
2015-04-30 06:58:57 +02:00
Neil Booth 13341dd4b5 Remove apparenlty dead import and __builtin__ assignment.
Googling reveals this code is likely a remnant of prior code
and no longer needed.  It appears to have no effect on my system.
2015-04-30 10:31:37 +09:00
Neil Booth d27d80eb28 Should have been setup-release.py 2015-04-30 08:29:15 +09:00
Neil Booth f732365821 Determine is_local not based on cwd but on existence of setup-release.py
The goal is to be able to run local instances from arbitrary directories.
It seems that the chances of having a setup-release.py in the same directory
as an installed electrum are extremely remote: not only is the name unusual,
but the file isn't installed anyway.
2015-04-30 08:23:57 +09:00
ThomasV 8f3add1e33 filter out -psn argument 2015-04-24 23:31:31 +02:00
ThomasV 41d498fda0 open payment request file passed as argument 2015-04-21 18:08:35 +02:00
ThomasV f9de19bd78 Merge pull request #1142 from ptrcarta/master
delete -psn arg on osx, fixes #1080
2015-04-20 12:10:50 +02:00
ThomasV 47f89f43b6 get rid of pyasn1 dependencies 2015-04-14 15:10:44 +02:00
ptrcarta f6b6bbbbae fixes osx bug where user couldn't change proxy or connect to network
by default osx passes a -psn arg when launching an app from command
line. this is a process serial number argument and py2app when used with
emulate_argv=True removes it.
commit d2097c15d9 removed this, thus
introducing the -psn arg on launch. this is misinterpreted by the arg
parser as a proxy setting, breaking networking.
2015-04-11 18:53:49 +02:00
ThomasV a3422d3fae generic multisig wallet constructor. fixes #1129 2015-04-03 11:27:57 +02:00
ThomasV 5f29017c9d pass config.path to daemon (exemptore). fixes #901 2015-04-02 12:12:18 +02:00
ThomasV 0200778ac1 require user to start daemon explicitly 2015-03-23 11:50:13 +01:00
ThomasV b1b1a85e80 require ca bundle 2015-03-19 13:42:45 +01:00
ThomasV c3cba78659 remove time.sleep() used for daemon threads 2015-03-13 23:10:54 +01:00