Commit Graph

801 Commits

Author SHA1 Message Date
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
ThomasV
1d311b0a04 don't try to import socks anymore 2015-03-01 10:27:05 +01:00
ThomasV
77d010bcec store gui last wallet separately, to fix command line 2015-02-27 10:37:13 +01:00
ThomasV
80284d5516 updates for the old android GUI 2015-02-24 18:45:09 +01:00
ThomasV
1f58673915 add python mode for emacs 2015-02-21 12:24:40 +01:00
Andy Weidenbaum
80446aca9c s/defaut/default/ 2015-02-11 21:53:22 -08:00
ThomasV
19d7a81d70 restrict plugins to qt for now 2015-02-04 12:05:46 +01:00
ThomasV
b6c1b22c35 use sys.exit 2015-02-03 12:29:04 +01:00
ThomasV
935a9a980d disable auo-connect is --server option is passed. fixes #992 2015-01-30 10:19:22 +01:00
ThomasV
56e80566f9 simplify packages insertion 2015-01-27 13:50:02 +01:00
Maran
2bf32880e8 Add dynamic package loading for Py2App osx binaries 2015-01-27 12:18:04 +01:00
ThomasV
3ef3bebeb3 print debug message with ca bundle status 2015-01-27 10:12:44 +01:00
ThomasV
4120678dff add google protobuf to packages 2015-01-27 10:01:40 +01:00
ThomasV
9d40fb2ea8 detect if we are in a pyinstaller bundle 2015-01-26 16:53:59 +01:00
ThomasV
16c72d286c try to import all python dependencies from the main script 2015-01-26 14:14:16 +01:00
ThomasV
576954555c fix: check_password for imported wallets 2015-01-23 00:18:58 +01:00
ThomasV
63c7a27d7e add InvalidPassword exception 2014-12-03 22:35:05 +01:00
ThomasV
72489da26d signtxwithkey: use prompt if privkey is not passed 2014-10-30 17:03:29 +01:00
ThomasV
581ed1ed26 separate signtxwithkey and signtxwithwallet, and simplify sign_transaction 2014-10-30 16:36:29 +01:00
ThomasV
cfa965fdae set env to python2 2014-09-19 14:05:00 +02:00
ThomasV
484cd3983b init_plugins only for gui 2014-09-18 10:16:05 +02:00
ThomasV
b782a1bb3f fix argument for check_seed 2014-09-15 14:42:41 +02:00
ThomasV
bd6f21232d fix restore from mpk command line 2014-09-08 05:17:56 +02:00
ThomasV
65a155401b remove 2of3 option in cmd line 2014-09-02 16:01:41 +02:00
ThomasV
e9f4ed0474 remove deprecated usb option 2014-09-02 15:36:34 +02:00
ThomasV
79588eb4da init plugins before gui. register wallet types in plugin constructor 2014-08-31 15:33:20 +02:00
ThomasV
c7f667e2ed separate add_seed from create_master_keys 2014-08-29 14:11:59 +02:00
ThomasV
4d71707be8 add portuguese wordlist, and adapt wordlist parsing 2014-08-28 17:30:44 +02:00
ThomasV
4dcdcbc068 move mnemonic to separate class and use slush's wordlist. new commands: make_seed and check_seed 2014-08-28 15:37:42 +02:00
ThomasV
f4b390a79f bip44 2014-08-21 18:24:47 +02:00
ThomasV
13a01b11d2 daemon messages 2014-08-18 13:40:08 +02:00
ThomasV
2c6608493f move sys.path addition before imp 2014-08-14 12:57:28 +02:00
ThomasV
58c817f81a close interfaces on shutdown 2014-07-29 12:13:21 +02:00
ThomasV
087490a197 spawn daemon using daemon.py 2014-07-28 23:42:14 +02:00
ThomasV
035ecbc7cd redo inter-thread communication using pipes 2014-07-27 17:13:46 +02:00
ThomasV
37ad7d8b0b gui should always use daemon if it is running 2014-07-25 16:44:22 +02:00
ThomasV
af3fd62fd4 send server height and server lag with daemon 2014-07-25 16:32:19 +02:00
ThomasV
96070246b7 proper start and stop commands for daemon 2014-07-25 15:42:28 +02:00
ThomasV
d60dc94e16 daemon status info 2014-07-25 15:12:39 +02:00
ThomasV
2120b1a573 command line: wait until daemon is connected 2014-07-25 13:30:27 +02:00
ThomasV
3e6f903da3 daemon: use Popen with close_fds=True 2014-07-25 11:13:49 +02:00
ThomasV
9ee0614edb make daemon usable with the GUI 2014-07-24 16:12:18 +02:00
ThomasV
1e91c0f254 fix #744 2014-06-30 18:32:00 +02:00
ThomasV
f635c5110c try pyasn1-modules as well 2014-06-30 18:12:39 +02:00
pooler
4ffd117640 Fix usage summary 2014-06-30 14:59:57 +02:00
Chris Glass
8997c760a2 Do not use mutables as default values!
This blog article explains why (just an example, many other articles
discuss this ad nauseam):
http://pythonconquerstheuniverse.wordpress.com/2012/02/15/mutable-default-arguments/
2014-06-25 17:43:45 +02:00
ThomasV
0636ef8b32 compact serialized format for unsigned and partially signed transactions. 2014-06-21 21:06:09 +02:00
ThomasV
2b2a8d17df bundle dependencies in 'packages' dir. use qrcode instead of pyqrnative 2014-06-17 11:02:46 +02:00
ThomasV
bf969c14ff option to start hidden. fixes #720 2014-06-11 19:21:01 +02:00
ThomasV
52d4437d50 fix bug #717 2014-06-11 13:47:32 +02:00
ThomasV
fd2228feab replace import * 2014-06-05 16:29:23 +02:00
ThomasV
31226b8a34 add pbkdf2 dependency 2014-06-05 16:19:13 +02:00
bolkin
52ba16da3d fix console importprivkey error 2014-05-23 04:19:45 +00:00
ThomasV
a18d21d946 fix cmd line wallet creation. fixes #684 2014-05-08 15:18:38 +02:00
Andy Weidenbaum
8985f2d73a empty seed error msg 2014-05-07 13:04:42 -07:00
ThomasV
dc22ba4d5e print warning in stderr, not stdout 2014-04-30 15:27:50 +02:00
ThomasV
63769c84d1 fix: add_seed 2014-04-27 13:24:31 +02:00
ThomasV
5d9b9492e1 abstract and improve seed and key methods 2014-04-21 22:09:15 +02:00
ThomasV
913ef26dd9 fix: create accounts 2014-04-13 18:41:10 +02:00
ThomasV
e0ad81acdd save cold seed 2014-04-09 08:00:49 +02:00
ThomasV
102bc204d5 hooks and workflow for 2of3 wallets 2014-04-06 21:38:53 +02:00
ThomasV
5a43b633d6 update bip32 accounts and wallet 2014-04-01 11:25:12 +02:00
ThomasV
7dd296273f move daemon spawning code into NetworkProxy class 2014-03-16 12:00:08 +01:00
ThomasV
8395bfe67f disable bip32 option before release 2014-03-15 11:10:06 +01:00
ThomasV
0c786be46f remove print statement 2014-03-11 08:37:58 +01:00
ThomasV
489413d358 move start_daemon code to main script 2014-03-11 08:33:58 +01:00
ThomasV
e6bbf22003 add server to daemon print statement 2014-03-11 07:18:50 +01:00
ThomasV
6e30894af6 daemon; initial commit 2014-03-10 16:16:27 +01:00
ThomasV
271dfeb245 eval arg passed to setconfig, to avoid storing boolean as string 2014-03-03 12:29:10 +01:00
ThomasV
2070672ac7 improve help messages for options 2014-03-02 19:23:54 +01:00
ThomasV
a5629539e4 add timeout to daemon, update getaddressbalance 2014-03-02 10:31:34 +01:00
ThomasV
e955ee69a8 restore from master public key (qt and command line) 2014-02-28 15:43:06 +01:00
ThomasV
9ddd9c7c65 start network daemon automatically when needed 2014-02-28 14:33:56 +01:00
ThomasV
638526712b rebrand this branch as 1.9.8 2014-02-27 10:21:41 +01:00
ThomasV
70bace9b1e use separata class for old wallets; decide with WalletFactory 2014-02-03 06:26:03 +01:00
ThomasV
7c6bc72cb4 daemon 2014-01-27 10:37:39 +01:00
ThomasV
d4fbe85d7d json rpc daemon 2014-01-27 10:37:39 +01:00
xHire
eb6d383da7 Fix generating encrypted wallet from command line 2014-01-10 21:10:48 +01:00
thomasv
2a9c62c9b8 replace exit with sys.exit 2013-12-13 17:53:13 +01:00
thomasv
f045490597 During wallet creation, do not write seed on disk before it is encrypted 2013-12-13 17:30:34 +01:00
ThomasV
6975642227 fix #492 2013-12-13 06:29:51 +01:00
shunyata
419bdc54f3 Remove an obsolete parameter.
This was straight-up crashing before. Need more automated tests, I think. :/
2013-12-12 17:23:40 -05:00
Bryan Stitt
4174924f45 flake8 cleanup of ./electrum 2013-11-12 19:19:32 -08:00
ThomasV
c89223ded9 revert WyseNynja's commit (breaks things) 2013-11-12 23:55:15 +01:00
Bryan Stitt
91061752cf stop using eval 2013-11-11 22:03:20 -08:00
ThomasV
588f8fd110 wallet: call create_accounts in save_seed 2013-11-11 17:41:46 +01:00
Bryan Stitt
6cd4ed486a fix more bare excepts 2013-11-10 12:30:57 -08:00
ThomasV
ff647c79fd Merge pull request #374 from nolith/master
allow to connect to one server only
2013-11-10 02:55:33 -08:00
Bryan Stitt
f0eb0eccde replace BaseException with Exception 2013-11-09 20:21:02 -08:00
Andy Weidenbaum
ef1c2c7760 concealed flag for restore sequence 2013-11-08 03:31:18 -08:00
Alessio Caiazza
423ed77305 allow to connect to one server only
This changeset allow to disable block headers retrieval from multiple
servers.
2013-11-06 18:02:37 +01:00
ThomasV
f340f08a6e fix for portable version: use its own directory 2013-11-05 23:02:51 +01:00
ThomasV
b1472ba1a7 fix regression: offline mode 2013-11-05 18:55:53 +01:00
ThomasV
536c898b59 restore from master public key with seed v4 2013-11-03 14:14:35 +01:00
ThomasV
4f3497027d fix deseed 2013-11-01 12:40:53 +01:00
thomasv
b9eb909554 fixes: get_seed 2013-10-31 15:27:15 +01:00
ThomasV
31aaae8ed2 seed v6 2013-10-26 16:40:05 +02:00
ThomasV
8b1c6fba68 remove -b option for listaddresses (fix issue #343) 2013-10-24 09:45:41 +02:00
ThomasV
d50ad3c301 send connection msg to stderr 2013-10-18 12:25:57 +02:00
ThomasV
a0d9a5efe4 set verbosity after options 2013-10-08 13:10:13 +02:00
Zomnut
d9c595fca8 Fix for the built-in raw_input not redirectin properly without readlin loaded on Unix systems (http://bugs.python.org/issue1927) 2013-10-07 16:12:35 -04:00
thomasv
b00175d00d update android interface 2013-10-07 20:11:41 +02:00
thomasv
1741d1cbd0 move readline 2013-10-07 19:53:42 +02:00
ThomasV
66f224eab4 update a few scripts 2013-10-06 12:28:45 +02:00
Zomnut
bd59f6a835 Fix redirect error
Python bug (http://bugs.python.org/issue1927) causes raw_input to be redirected improperly between stdin/stderr on Unix systems if readline is not initialised first.
2013-10-04 11:35:28 -04:00
ThomasV
1be0ea1494 remove check_windows_wallet_migration 2013-10-03 14:00:57 +02:00
ThomasV
b4cef1b981 print connected to message synchronously 2013-10-03 13:56:31 +02:00
ThomasV
6f2471b69b getpubkeys command 2013-10-03 13:31:59 +02:00
ThomasV
2f66cdf908 new flag for commands: requires_wallet 2013-10-03 12:53:48 +02:00
ThomasV
ecfe5e2590 common wallet.restore() method for GUIs 2013-09-28 13:45:49 +02:00
ThomasV
2c0814f0d3 simplify gui names 2013-09-24 10:06:03 +02:00
rofl0r
4226e9cc45 update help text for --server with available protocols
closes #303
2013-09-22 20:37:52 +02:00
rofl0r
56ebc02cad advertise new text gui in the help screen 2013-09-19 23:57:04 +02:00
rofl0r
bcca6e25ab make it possible to create wallet non-interactively
add a --password option,
respect --server,--fee,--gap as passed on the command line,
and do not ask for them if they were specified.

so if all of them are passed, there are no interactive questions
asked and one can create wallets automatically via scripts.

closes #308

additionally it fixes the bug that the default fee and gap limit
were not stored in the new wallet, if entered manually.

additionally it fixes the bug that the wallet path was not displayed
correctly if a custom wallet path was used.
2013-09-19 17:38:00 +02:00
rofl0r
fd1458aa23 restore 'electrum help command' usage 2013-09-18 20:22:30 +02:00
rofl0r
7d1c6c7980 fix help text when invoked with --help
the built-in optparser help text did not show the available commands

closes #304
2013-09-18 18:21:33 +00:00
ThomasV
01349f6528 fix restore threads 2013-09-16 06:14:23 +02:00
thomasv
7fb406cc05 fallback to classic for old preferences 2013-09-15 13:52:58 +02:00
thomasv
b75f8d795a new command: getrawtransaction 2013-09-15 11:19:48 +02:00
thomasv
ee08b2bfa6 don't show gap limit in GUI 2013-09-12 16:08:17 +02:00
thomasv
e9340db409 fix create and restore (command line) 2013-09-11 17:05:50 +02:00
thomasv
047e4b3478 move callbacks to the network class 2013-09-09 13:33:25 +02:00
ThomasV
328315f94b separate blockchain and network 2013-09-08 17:23:01 +02:00
thomasv
48efc62b2d simplify directories: electrum_dir 2013-09-02 15:05:33 +02:00
ThomasV
1ba3008b49 minor fixes 2013-09-01 23:25:28 +02:00
ThomasV
046ec58d24 start wallet threads from wallet class 2013-09-01 18:44:19 +02:00
ThomasV
d47892b690 separate blockchain verifier from transaction verifier 2013-09-01 18:16:15 +02:00
ThomasV
d99a381d83 separation between wallet storage and config 2013-09-01 15:26:52 +02:00
ThomasV
1637197419 separate gui init() and load_wallet() 2013-08-30 10:11:10 +02:00
ThomasV
084ed6776b structural change: wrap wallet instanciation inside the gui class 2013-08-22 12:39:41 +02:00
nelisky
1b0db8414b implementing paytomany (untested)
Just like mktx/payto, this is only submitting the tx created in mksendmanytx
2013-08-18 02:09:25 +02:00
nelisky
bf173e1c45 implementing mksendmanytx
A simple argument parsing change from mktx to allow passing multiple recipients
2013-08-18 02:07:59 +02:00
ThomasV
81b84fd5ef fixes for signrawtransaction 2013-08-17 18:40:59 +02:00
thomasv
f64c59f66f fix: set auto-cycle to None only during wallet creation 2013-08-01 16:39:45 +02:00
ecdsa
b2c23f9ac8 deprecate wallet.save() and 'eval' command 2013-05-02 10:54:48 +02:00
ecdsa
86fd728a47 move network dialog in a new class; simplify interface.get_servers 2013-04-28 13:47:19 +02:00
ThomasV
4ecb8f897e Merge pull request #206 from JulianTosh/TuxHelpMods
Slightly modifying help output for clarity
2013-04-23 04:55:53 -07:00
Julian Tosh
63f33b64d0 Slightly modifying help output for clarity 2013-04-22 12:19:13 -07:00
ecdsa
de21e2297e os path join 2013-04-20 18:21:51 +02:00
thomasv
921d60468c better help text for offline restore 2013-04-16 15:19:41 +02:00
thomasv
8fcd782ff4 offline restore 2013-04-16 15:17:32 +02:00
ecdsa
076b949039 fix create and restore from command line 2013-04-14 19:32:25 +02:00
Maran
6938636ba2 Changed the way the portable flag uses without supplying a -w argument 2013-04-11 22:08:32 +02:00
thomasv
d09d4e4055 call save_seed only in main script 2013-04-10 12:56:07 +02:00
thomasv
f32f85fb78 better seed dialog + fix bug with restore 2013-04-10 11:53:13 +02:00
thomasv
98f7d36313 ask users to enter their seed on create 2013-04-09 18:08:14 +02:00
thomasv
e89331d138 handle multiple accounts with separation 2013-04-06 18:44:31 +02:00
thomasv
a5168cc09f more accurate computation of transaction fees. 2013-03-23 12:36:37 +01:00
thomasv
45c0880195 global switch use_local_modules 2013-03-15 13:00:59 +01:00
thomasv
e3677eb0a0 simplification 2013-03-15 10:49:08 +01:00
ecdsa
1d3be5fb0b fix: number of arguments 2013-03-13 17:52:54 +01:00
thomasv
1f1693d29b bug fix: init_seed 2013-03-13 15:31:24 +01:00
thomasv
a4f977190e do not call exit() in the interface module 2013-03-13 15:26:29 +01:00
ecdsa
a1be16105b start verifier right after initialization 2013-03-12 23:53:56 +01:00
thomasv
f0c81abafb always enable auto_cycle for android 2013-03-12 14:12:27 +01:00
thomasv
b1a727ef49 updates fro android 2013-03-12 13:48:16 +01:00
ecdsa
837150132d optional wait parameter for interface 2013-03-10 10:24:42 +01:00
ecdsa
49a4c6c92a do not wait for interface when launching gui 2013-03-10 10:15:09 +01:00
ecdsa
22ce3def72 similar fix for text mode 2013-03-07 16:45:55 +01:00
ecdsa
3382354442 fix: restore wallet from master public key 2013-03-07 16:41:43 +01:00
ecdsa
e16451556e make help() available in console 2013-03-04 17:36:49 +01:00
thomasv
190f733de2 restrict plugins to the gui 2013-03-03 16:01:47 +01:00
ecdsa
8f7f511d19 rename gui package 2013-03-02 18:10:22 +01:00
ThomasV
89a8f3ce11 import gui using any name 2013-03-02 18:03:29 +01:00
thomasv
ada36b2554 plugin handler 2013-03-02 16:29:14 +01:00
thomasv
a563091f30 separate core and gui in different modules 2013-03-02 12:26:21 +01:00
thomasv
e84d087a64 accounts 2013-03-02 11:23:08 +01:00
thomasv
c871a79582 use imp to detect and load the local electrum module 2013-03-02 10:22:45 +01:00
thomasv
f72c8ee5d2 move is_valid from wallet class to bitcoin.py 2013-03-01 14:27:56 +01:00
thomasv
f3cc234c87 missing arguments and types conversions 2013-03-01 14:08:51 +01:00
thomasv
454f67e89d fix command names: setconfig, setconfig 2013-03-01 13:40:04 +01:00
thomasv
19d104f023 register commands, check for their arguments 2013-03-01 13:33:11 +01:00
thomasv
4f5023e31b rename 'balance' command as 'getbalance', per bitcoind 2013-03-01 11:33:51 +01:00
thomasv
95dc97b39b rename 'addresses' command as 'listadresses'. use json syntax. 2013-03-01 11:21:10 +01:00
thomasv
3eb746db5c terminate after create or restore 2013-02-28 17:21:30 +01:00
thomasv
ea96b79997 use json format 2013-02-27 18:11:45 +01:00
thomasv
75d2fbcd74 fix: deseed 2013-02-27 18:01:58 +01:00
thomasv
967abcb359 simplify dumpprivkeys 2013-02-27 10:36:52 +01:00
thomasv
f4ac478369 more json formatting 2013-02-27 10:24:53 +01:00
thomasv
2e9c2c1f96 return python objects from commands, and display them as json 2013-02-26 17:57:48 +01:00
thomasv
ea2d8f2491 move commands list to commands.py 2013-02-26 16:29:44 +01:00
thomasv
999adc80af move 'addresses' command 2013-02-26 16:11:19 +01:00
thomasv
96d459ab88 use dumpprivkeys to efficiently dump private keys 2013-02-26 16:03:04 +01:00
thomasv
42a10164ea make most commands available in the console 2013-02-26 13:56:48 +01:00
ThomasV
1f3f6b19e2 launch verifier before synchronizer 2013-02-25 22:21:07 +01:00
ThomasV
f0eb5e1316 sendtx -> sendrawtransaction 2013-02-25 21:01:02 +01:00
thomasv
8225028dd1 change the deseed command, remove reseed 2013-02-25 10:49:31 +01:00
thomasv
8b8e2fd67b rename inpust_info -> input_info 2013-02-25 09:34:47 +01:00
ThomasV
b8a71ff00c offline wallets sign transactions using KeyID 2013-02-25 09:05:45 +01:00
ThomasV
c4f7ce6bae remove signtx command (replaced by signrawtransaction). 2013-02-24 22:05:49 +01:00
thomasv
64ad3fc28c use serialized format in signtx 2013-02-24 21:31:11 +01:00
ThomasV
811d05a1c2 move methods into Transaction class 2013-02-23 17:18:22 +01:00
ThomasV
961b81ba4a rm unneeded address 2013-02-23 16:56:38 +01:00
thomasv
bd8dbbf79b check if multisig transaction is complete, add is_complete to json output 2013-02-23 15:11:41 +01:00
thomasv
2642fa0f7d fix listunspent, add method wallet.get_unspent_coins 2013-02-23 13:18:15 +01:00
thomasv
03e2160503 create separate class for deterministic key generation. add pubkeys to validateaddress 2013-02-23 11:35:46 +01:00
thomasv
76439beec5 simplify get_private_key, use base58 2013-02-22 17:27:19 +01:00
thomasv
5d6496f1f9 move crypto from wallet class to bitcoin.py 2013-02-22 16:17:46 +01:00
thomasv
8a8aeb4567 Merge branch 'master' of github.com:spesmilo/electrum 2013-02-22 14:26:22 +01:00
thomasv
a1a5886e57 add listunspent 2013-02-22 14:26:18 +01:00
ThomasV
95f23ec1ea Merge pull request #149 from polymorphm/tiny-bugfix--history-balance
command ``history`` fail -- if not transactions
2013-02-22 04:45:27 -08:00
thomasv
40b397dc0f signrawtransaction: parse redeemScript 2013-02-22 13:40:42 +01:00
thomasv
299f30944f import ast at the beginning 2013-02-21 16:42:01 +01:00
thomasv
0863f09a06 add dumpprivkey command; finalize private_keys parameter for signrawtransaction 2013-02-21 16:26:26 +01:00
thomasv
ea7718fc59 create Transaction class 2013-02-21 14:18:12 +01:00
Andrej A Antonov
a498ed979b fixed bug: failed command `history if wallet.get_tx_history()` is empty 2013-02-21 14:44:53 +04:00
thomasv
972ba397d1 support for multisig functions 2013-02-20 13:10:32 +01:00
Maran
1b2a319f18 Added migration to APPDATA from LOCALAPPDATA for windows based Electrum installations 2013-02-18 23:44:47 +01:00
ThomasV
043d6addff init_seed method. save seed and master public key separately 2013-02-03 15:08:26 +01:00
ThomasV
e0cf89a794 update help for importprivkey 2013-01-13 21:40:28 +01:00
ThomasV
ec11dac3af restore from mpk (text) 2013-01-08 21:30:03 +01:00
thomasv
8b9d14e303 export seed in gui/restore from seed 2013-01-08 14:29:42 +01:00
slush
cf5661046b Import WalletFactory instead of Wallet
WalletFactory and WalletBitkey classes
--usb parameter enables experimental support for bitkey protocol
2013-01-07 16:23:47 +00:00
ThomasV
088ed3d2dd fix: unencrypted seed 2013-01-06 15:57:01 +01:00
ThomasV
04322b7cc9 fix bug with undetected incorrect password that can damage wallet 2013-01-06 09:41:06 +01:00
ThomasV
279b85e3fe use the same syntax as bitcoind for key import 2013-01-05 21:28:12 +01:00
ThomasV
512a812872 try http if tcp fails. 2013-01-03 21:36:25 +01:00
thomasv
1f71e5e225 call set_language only if gui is used. 2013-01-02 16:12:00 +01:00
thomasv
66fa7b610b option to set gui language from command line 2013-01-02 16:03:54 +01:00
thomasv
accbf7ea82 fix: exit if no password is provided when needed 2013-01-02 13:39:50 +01:00
thomasv
72b4ac97d0 use portable flag on android instead of explicit path for headers file. use urllib.retrieve() 2012-12-17 17:51:52 +01:00
thomasv
6bd57d4829 change headers path for android 2012-12-17 16:21:28 +01:00
thomasv
bd96815eb3 command line option for portable wallets 2012-12-17 15:08:34 +01:00
thomasv
4e070bda57 new command: signtx (offline transaction signing) 2012-12-05 18:18:47 +01:00
thomasv
c763445734 allow multiple-outputs transactions with mktx() 2012-12-05 16:41:39 +01:00
thomasv
108dfb6140 revert to daemon threads because some clients do not seem to close their sockets cleanly 2012-12-05 10:24:30 +01:00
ThomasV
36ef16cfb2 fix path for android 2012-12-01 17:56:31 +01:00
ThomasV
c68bf5a1d7 print_error -> print_msg 2012-11-27 23:32:39 +01:00
ThomasV
9afbf21197 no daemon 2012-11-24 20:35:09 +01:00
ThomasV
0ad7f72d3d nodaemon 2012-11-24 20:35:09 +01:00
ThomasV
a79cda99e5 return True in retore_wallet 2012-11-23 19:31:45 +01:00
ThomasV
acbfa77af5 return True in network dialog, because None means offline 2012-11-23 19:25:35 +01:00
ThomasV
d6edf45eb7 use adhoc print function 2012-11-23 18:48:56 +01:00
thomasv
6e0a62fada return parser object because it is needed to display help 2012-11-23 14:31:25 +01:00
thomasv
537d02977c fix balance display in flatfly's bug. restore the wallet.update() method 2012-11-22 13:10:01 +01:00
flatfly
1b85fa3125 Fix wallet path in deseed and reseed 2012-11-21 22:57:11 +01:00
ThomasV
b6c494ce6a fix network dialog 2012-11-20 21:46:45 +01:00
ThomasV
d2c91d9a0f simplify the create/restore procedure 2012-11-20 21:36:06 +01:00
ThomasV
9a9e7c1b7c simplification 2012-11-20 18:19:37 +01:00
ThomasV
d55aa43cf6 add version to android path 2012-11-20 17:56:23 +01:00
ThomasV
d8c49a2fef android: update create and recover dialogs 2012-11-20 17:21:57 +01:00
thomasv
cf1f533613 allow offline creation/recovery within the gui 2012-11-20 15:30:46 +01:00
thomasv
f7c3b2f067 pop all options that are None before passing them to SimpleConfig 2012-11-19 14:05:42 +01:00
ThomasV
2d13107897 make a regular gui module for android 2012-11-18 11:34:52 +01:00
thomasv
650a9b6074 do not include fee in the transaction amount shown in history. adapt history to the case where it was recovered from a pruning server 2012-11-16 14:39:31 +01:00
thomasv
91f8bb7d0b start synchronizer only after verifier is created 2012-11-05 13:12:22 +01:00
ThomasV
02eece2c4c fix CLI restore 2012-11-04 21:12:08 +01:00
ThomasV
39a85767a3 solve deadlock during restore 2012-11-04 20:53:27 +01:00
ThomasV
5bb441ce37 add mnemonic functions to module 2012-11-04 19:40:17 +01:00
ThomasV
b20188a65d verbose option 2012-11-04 12:27:01 +01:00
ThomasV
99022f51bc fix: get_tx_value 2012-11-04 11:36:08 +01:00
thomasv
5e28ccd09d Improve text gui. Disable print_error when text gui is used. 2012-10-29 16:22:53 +01:00
ThomasV
7a73c2cb50 security fix: do not let user change seed 2012-10-28 09:19:07 +01:00
ThomasV
fa870d83b9 add option to disable spv; just in case 2012-10-28 08:58:21 +01:00
ThomasV
cfb3aa6a12 move 'peers.subscribe' and 'server.version' calls into the interface 2012-10-27 14:15:03 +02:00
ThomasV
1117741e59 new command: 'get' 2012-10-26 17:35:35 +02:00
thomasv
ee4de40c37 use WalletVerifier.add() method to register transactions 2012-10-26 10:02:09 +02:00
thomasv
e20e40829d start verifier thread only after the first wallet synchronization 2012-10-26 09:08:06 +02:00
ThomasV
063fef86aa set command: authorize by default, forbid only when dangerous 2012-10-26 07:05:22 +02:00
ThomasV
2a06a5b493 tie confirmation icons to payment verifier 2012-10-26 00:40:19 +02:00
thomasv
8b865983c6 make the Verifier class usable without a wallet instance 2012-10-25 16:03:16 +02:00
thomasv
0b76e16d04 allow multiple callbacks for a given name 2012-10-22 13:43:58 +02:00
thomasv
82531131ee interface: do not connect inside the constructor 2012-10-22 12:58:57 +02:00
thomasv
4fbd2ea66e use named callbacks with the interface 2012-10-22 11:34:21 +02:00
ThomasV
33eb749c6a interface for command line mode 2012-10-21 23:22:46 +02:00
ThomasV
2da0c0b77e big refactoring of the interface
addition of the wallet verifier class for SPV
2012-10-21 22:55:16 +02:00
thomasv
a361a05b08 text gui 2012-10-20 10:30:29 +02:00
thomasv
5d01831090 text ui: first commit 2012-10-20 10:30:29 +02:00
ThomasV
d0a6e244b1 new 'set' command for the CLI 2012-10-20 10:23:34 +02:00
thomasv
c5f5e92d17 rename qt gui -> classic 2012-10-19 10:26:35 +02:00
ecdsa
52211180ed Merge pull request #42 from samueltardieu/find-wallet
make command-line [un]freeze/prioritize find the wallet object
2012-10-13 11:03:46 -07:00
ThomasV
d92f1991a9 move prompt_password from wallet.py to main script 2012-10-12 01:50:54 +02:00
thomasv
5444f55e6b big refactoring: command line options and electrum.conf options override settings in wallet file. 2012-10-11 20:10:12 +02:00
thomasv
0d11aa75c4 encapsulation: that kind of exception handling should be done in the gui module 2012-10-11 13:43:04 +02:00
thomasv
a27fba8685 use proxy with command line too 2012-10-09 16:29:53 +02:00
thomasv
fd13d19cb8 fix proxy issues: override config with command line option, and use interface.proxy in gui 2012-10-09 15:48:06 +02:00
thomasv
880b08f337 remove remote wallet (broken, will be replaced) 2012-10-05 15:49:03 +02:00
Samuel Tardieu
7e7af3c272 make command-line [un]freeze/prioritize find the wallet object 2012-10-03 20:59:36 +02:00
thomasv
ad3be71ed7 warning against redeem private key services 2012-10-02 13:15:10 +02:00
thomasv
f3ff9b5cf6 make proxy an optional parameter 2012-10-01 18:14:50 +02:00
bkkcoins
aaa56cebf2 Merge branch 'fix-offline-restore' into merged 2012-09-21 13:03:13 +07:00
bkkcoins
9c4023ba58 Revert "Fix for wallet restore when offline"
This reverts commit af750d9363.
2012-09-20 17:01:47 +07:00
bkkcoins
a213655cde fix offline restore 2012-09-20 16:46:11 +07:00
bkkcoins
af750d9363 Fix for wallet restore when offline 2012-09-20 15:30:08 +07:00
bkkcoins
aa6f631f2e Added SOCKS support, with cmdline and SimpleConfig options 2012-09-19 17:37:20 +07:00
Samuel Tardieu
aaa496fa60 Import SimpleConfig from electrum if installed 2012-09-07 11:40:06 +02:00
Maran
a31733d065 Reworked the qt warning dialog 2012-08-30 19:57:32 +02:00
Maran
6da25727f8 Refactored user_dir to utils and replaced it in wallet and config 2012-08-30 18:00:08 +02:00
Maran
fbf854bcb8 Added a set_key setter method that can also write out the changes to file 2012-08-30 17:52:03 +02:00
Maran
0d229383aa Write out the config file to <= 4.7 QT when QT > 4.7 can't be loaded. 2012-08-30 00:11:50 +02:00
Maran
3252b5ae4e Added SimpleConfig class to deal with simple config options added for fallback to other gui when missing deps 2012-08-30 00:03:38 +02:00
Maran
23d314462f Fix merge conflict with master 2012-08-29 22:54:44 +02:00
Amir Taaki
b3b910d926 WalletSynchronizer had a race condition caused by calling the callback before the Qt event loop (or other initialisation) finished. Ergo we split initialisation and the running of the thread, then use Qt SIGNALs to yield back into the Qt event loop. This ensures that the callback for the servers_list_changed is not called until the main Qt event loop is actually running. 2012-08-29 20:53:22 +01:00
Maran
bab09b4627 Fix tab issue for password 2012-08-27 10:38:22 +02:00
Amir Taaki
f2fb235643 be more permissive with catching exceptions here as many varities possible. 2012-08-27 03:12:43 +02:00
Amir Taaki
9815fb5a70 pw_decode returns ValueError on fail. 2012-08-27 03:11:05 +02:00
Maran
850d0dcd5f Made the error message for verifymessage more transparent 2012-08-26 23:35:38 +02:00
Maran
a2db281494 Added a message to the sign/verify message help text to explain spaces inside the message 2012-08-26 22:15:09 +02:00
Amir Taaki
ce584890ea Explanation: Doesn't preserve the same behaviour as code throws BaseException not SystemExit. Therefore it wasn't meant to be catching user errors.
Revert "Added more descriptive error if wallet cannot be loaded"

This reverts commit 47432b32c8.
2012-08-26 16:09:38 +02:00
Jimbo77
dd78f0978b needed to include absolute path for optparse methods 2012-08-25 14:16:21 -07:00
Jimbo77
edf293e611 reverted commit 31aaf473c8 due to it breaking electrum 2012-08-25 14:11:50 -07:00
Jimbo77
47432b32c8 Added more descriptive error if wallet cannot be loaded 2012-08-23 17:44:37 -07:00
Jimbo77
c8f19e1969 removed optparse import statment 2012-08-23 17:07:38 -07:00
Jimbo77
1112348c38 Merge branch 'optparse_upgrade' 2012-08-23 17:05:50 -07:00
Jimbo77
31aaf473c8 upgraded optparse with the newer module argparse. Can't see any problems so far 2012-08-23 17:05:07 -07:00
Amir Taaki
2b96b6dec1 Unneeded exception raised. sys.exit returns before exception ever gets a chance to be thrown. 2012-08-23 10:06:21 +01:00
Jimbo77
990547a06c changed print_error to NameError exception to reduce coupling 2012-08-22 12:01:49 -07:00
Jimbo77
3e89b65025 another small toolkit comment 2012-08-22 11:53:31 -07:00
Jimbo77
434ef95d65 small comment explaining gui importation section of electrum script 2012-08-22 11:36:04 -07:00
Amir Taaki
c9ed01e90b bugfix: wrong indentation level for prompt_password. 2012-08-20 10:12:16 +01:00
Jimbo77
ddf5614af0 getting rid of more unnecessary print_errors() 2012-08-19 18:24:02 -07:00
Jimbo77
1429ef71e1 getting rid of more unnecessary print_errors() 2012-08-19 18:19:59 -07:00
Jimbo77
8bb841787e got rid of another unneeded print_error() 2012-08-19 17:17:47 -07:00
Jimbo77
1829d20d72 got rid of another unneeded print_error() 2012-08-19 17:16:35 -07:00
Jimbo77
59b2762258 got rid of print_error() to reduce coupling 2012-08-19 16:00:46 -07:00