Commit Graph

1001 Commits

Author SHA1 Message Date
ThomasV
7b27f01e07 call fsync before rename 2015-05-19 11:56:33 +02:00
ThomasV
7e9153aaa4 test if labels exist before loop. don't raise if a label cannot be converted 2015-05-11 11:55:26 +02:00
Azelphur
fe5be618db Convert old latin1 labels, Raise exception if json conversion fails.
A couple of changes
1) Old electrum wallets seemed to save labels in latin1, when you call json.dumps on line 83/84 it fails silently, which causes the label import to fail. Whenever electrum saves, it then overwrites your default wallet with no labels - essentially deleting all your labels. The solution to this is iterating over all the labels for old wallets decoding anything that fails to unicode() as latin1, and then unicoding it :)

2) Failing to import data and then deleting it is bad. So I'm raising an exception to avoid data being lost.
2015-05-10 20:28:42 +01:00
ThomasV
59a9e4f710 fix new_wallet and seed language 2015-05-10 08:31:31 +02:00
ThomasV
233fd8ed77 revert 175bfae9e6. store last known height in wallet instead 2015-05-08 13:43:42 +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
Neil Booth
13b9b577a4 Don't use self.network to get the local height.
This restores a working offline mode.
2015-05-08 14:45:23 +09:00
Neil Booth
37c3cce329 Remove wallet.get_transactions()
Because references are returned, it's not threadsafe as ThomasV
pointed out.
2015-05-08 09:31:45 +09:00
Neil Booth
a47881d72b Move the verified and unverified txs to the wallet. 2015-05-07 23:54:39 +09:00
ThomasV
656560be72 show many address labels in tx default label. fixes #1200 2015-05-07 16:09:39 +02:00
Neil Booth
79de458101 Preparation for moving the set of verified and unverified txs to the wallet.
The verifier will retain responsibility for verification, but will no longer
hold the transaction sets itself.

Change requires_fee to take a wallet.
Add new function add_unverified_tx()
Move get_confirmations() to the wallet from the verifier.
2015-05-07 09:21:08 +09:00
ThomasV
687cc7783f show unmatured coins in status bar. fixes #1163 2015-05-05 20:52:14 +02:00
ThomasV
25c6a78ae0 fix missing immport 2015-05-02 16:29:41 +02:00
Neil Booth
2fc38332e7 Make it 3-step instead of four. Avoid quadratic insertions.
This is preparation to hopefully fix #1163
2015-05-02 23:17:50 +09:00
ThomasV
75ddc066bb fix #1181 2015-05-02 11:05:38 +02:00
Neil Booth
db2517b901 Shrink size of changes; functionality unchanged. 2015-04-30 13:32:01 +09:00
Neil Booth
f56413d602 Put title() member func, with localization, in main_window.py 2015-04-28 21:12:25 +09:00
Neil Booth
889174ae19 Show wallet basename in tray tooltip for those of us using multiple wallets
Move basename (and title) logic to the wallet and use those member functions.
2015-04-28 19:32:56 +09:00
ThomasV
cb09d88322 fix bug introduced in 21673c95f4 2015-04-24 21:01:34 +02:00
Maran
21673c95f4 Fix wallet write to support windows 2015-04-24 13:14:17 +02:00
ThomasV
4a28c88946 atomic write wallet file 2015-04-23 17:12:02 +02:00
ThomasV
e8189490e9 store contacts in a separate file, shared between wallets 2015-04-23 12:16:46 +02:00
ThomasV
065145e557 get_history: return empty history if balance check fails 2015-04-23 09:49:24 +02:00
ThomasV
524db55b90 don't display hashes or addresses as default labels 2015-04-19 14:30:44 +02:00
ThomasV
eac3129cba Merge pull request #1135 from Kausheel/get_addr_received
Add wallet function get_addr_received()
2015-04-19 13:38:45 +02:00
ThomasV
036f96cf35 store invoices in a separate file, with their status 2015-04-13 14:19:59 +02:00
ThomasV
eb9802356a fix variable name in from_seed 2015-04-09 18:59:51 +02:00
Kausheel Kumar
8cf793ab98 Add wallet function get_addr_received() 2015-04-09 01:44:44 +10:00
ThomasV
b8a72180c7 HistoryWidget class; address history window 2015-04-04 18:26:52 +02:00
ThomasV
0a7b585b6c redo default labels with incoming tx outputs 2015-04-04 15:55:28 +02:00
ThomasV
75cf142be0 fix typo 2015-04-03 11:30:36 +02:00
ThomasV
a3422d3fae generic multisig wallet constructor. fixes #1129 2015-04-03 11:27:57 +02:00
ThomasV
e3e5d95794 fix account key bug 2015-03-31 22:44:00 +02:00
ThomasV
a44f1bc4d3 Merge pull request #1115 from romanz/offline-mode-fix
Offline mode fixes
2015-03-31 13:57:27 +02:00
ThomasV
f77311328a add get_completions to wallet 2015-03-31 12:01:42 +02:00
ThomasV
4d7b68658b fix delete_contact 2015-03-31 11:29:18 +02:00
Roman Zeyde
a7440fc89c wallet: skip history sort when verifier is not set 2015-03-31 09:32:21 +03:00
ThomasV
da502076bd fix get_history 2015-03-30 20:39:06 +02:00
ThomasV
2d84deeaad sanity check history 2015-03-30 14:10:46 +02:00
ThomasV
ec11e58add handle pruning in wallet.txi/txo 2015-03-30 14:10:46 +02:00
ThomasV
3d1fa1e27f find_pay_to_pubkey_address 2015-03-30 14:10:46 +02:00
ThomasV
bc3ed470e1 use hash as default label 2015-03-30 14:10:46 +02:00
ThomasV
e3de121be9 store deserialized tx in/out in wallet file for fast computation 2015-03-30 14:10:46 +02:00
ThomasV
973f7f9fe5 mpk window: detect self and cosigner keys 2015-03-24 17:33:08 +01:00
ThomasV
1369c02011 safeguard: do not let daemon treads write wallet file 2015-03-24 12:23:11 +01:00
ThomasV
a5a7a34c2d IOError: add file path to exception message 2015-03-15 08:04:02 +01:00
ThomasV
5b8588ee90 rename spv class, use own print_error 2015-03-14 09:20:27 +01:00
ThomasV
72688a5cfa clean implementation of daemon threads 2015-03-13 23:04:29 +01:00
ThomasV
58f9ab3492 add a lock to wallet.synchronize() and fix #1049 2015-03-13 16:51:31 +01:00
Christopher Gurnee
4ba4611599 check arg type in change_gap_limit() 2015-03-07 12:51:35 -05:00
ThomasV
15636282e4 fix issue #1061: normalize trezor passphrases. Add passphrases to restore from seed with trezor. 2015-03-05 17:09:39 +01:00
ThomasV
490de0d8ce fix password bug with xprv wallet 2015-03-04 18:57:28 +01:00
ThomasV
78573e202d add try..except arount get_next_account 2015-02-27 21:35:50 +01:00
ThomasV
52b43c57b8 android create and restore 2015-02-25 22:48:47 +01:00
ThomasV
18d16ba82c bugfix: add pubkey to PendingAccount, to be able to spend from it 2015-02-23 19:33:31 +01:00
ThomasV
0934976f3a fix #1011 2015-02-17 10:30:10 +01:00
ThomasV
76cbafe754 fix Master Public Keys dialog 2015-02-05 13:29:18 +01:00
ThomasV
8982a463a4 allow change_gap_limit in bip32 wallets 2015-02-03 16:26:00 +01:00
ThomasV
036147db44 fix: change_gap_limit 2015-02-03 16:18:42 +01:00
ThomasV
2f7b8ce864 fix wallet.can_sign: use isinstance with BIP32 class 2015-02-03 13:14:35 +01:00
ThomasV
ca01e1d7be handle 1.9.8 bug that created seed_v6 wallets 2015-02-03 12:20:03 +01:00
ThomasV
0b674eb35d fix can_sign: detect if OldWallet is used 2015-02-02 16:06:29 +01:00
ThomasV
395312e70f fix: add wallet types only if available 2015-02-01 10:44:29 +01:00
ThomasV
4ce699bf25 disable key import in all bip32 wallet classes; users should create an ImportedWallet 2015-01-23 13:54:33 +01:00
ThomasV
84fc4574d6 add password when creating imported wallet 2015-01-23 00:06:17 +01:00
ThomasV
8863b6f294 remove remaining instances of op_return type 2015-01-18 17:23:21 +01:00
Charles Lehner
6d2d53b43f Move root_name to parent class 2015-01-11 13:58:03 -05:00
ThomasV
da968b60e4 drop support for multiple accounts (bip44) in standard wallets 2015-01-05 00:33:10 +01:00
ThomasV
9f9bab6cf0 fix issue #968 2014-12-31 19:21:54 +01:00
ThomasV
63c7a27d7e add InvalidPassword exception 2014-12-03 22:35:05 +01:00
ThomasV
7ca3ba4e80 various fixes for reveive_requests 2014-11-24 12:28:11 +01:00
ThomasV
f2988b657b Merge branch 'contacts' of github.com:Tafelpoot/electrum into Tafelpoot-contacts 2014-11-24 11:55:57 +01:00
ThomasV
01cf04079f add NotEnoughFunds exception 2014-11-20 19:10:43 +01:00
ThomasV
6d8eebe2db raise exception when seed version does not match 2014-11-15 14:42:35 +01:00
Tafelpoot
218a1ee2f7 Updated Requests
- added Date and Account field to Saved Requests
- requests are now saved as dict()
  old requests will be deleted!!
- Account field is hidden when only 1 account is available
- address line now follows the current_account
- saved requests is sortable, default sorted by date
- saved requests only shows request for current_account
2014-11-14 19:47:34 +01:00
ThomasV
9b28ed9ba0 do not require name to create an account 2014-11-14 14:08:28 +01:00
ThomasV
c5b47bd513 always store next_account a PendinfAccount is created 2014-11-14 13:48:15 +01:00
Tafelpoot
b6f0f8c02c Merge branch 'master' of https://github.com/spesmilo/electrum into showaccount 2014-11-05 00:38:02 +01:00
Tafelpoot
5c12c2bc2f optimized, cleaned up, commented 2014-11-05 00:37:43 +01:00
ThomasV
fb75e2e53d fix get_private_key_from_xpubkey 2014-11-04 10:50:28 +01:00
ThomasV
e6317ceca1 Merge pull request #909 from Tafelpoot/showaccount
add account info for internal transfer description
2014-10-31 15:01:22 +01:00
ThomasV
16f36ee6e2 Extend transaction serialization, format to handle unsigned inputs where only the address is known, the public key is unknown. 2014-10-31 13:01:16 +01:00
Tafelpoot
b3684ad40a add account info for internal transfer description 2014-10-30 17:56:36 +01:00
ThomasV
581ed1ed26 separate signtxwithkey and signtxwithwallet, and simplify sign_transaction 2014-10-30 16:36:29 +01:00
ThomasV
cf1fbbf3ad fix is_watching_only for imported wallets 2014-10-27 15:47:10 +01:00
ThomasV
063fc4bb2e fix #895 2014-10-24 18:50:57 +02:00
Tafelpoot
d9c5250a6f removed trailing whitespace and fixed indentation in history widget 2014-10-21 19:05:51 +02:00
ThomasV
590659ff4d get_tx_fee 2014-09-15 12:57:56 +02:00
ThomasV
bde0ca3ea1 set default fee to 0.5mBTC/kb 2014-09-15 07:35:05 +02:00
ThomasV
8d396997dc fee estimate: kilobyte 2014-09-14 21:58:13 +02:00
ThomasV
ad4449dc38 add v9 to list of tagged versions 2014-09-13 19:37:42 +02:00
ThomasV
1df007483e check seed_version first 2014-09-13 19:28:09 +02:00
ThomasV
5c5bb6ae3a make estimated fee higher than MIN_RELAY 2014-09-13 15:25:26 +02:00
ThomasV
5f4bcb420b param to addresses is optional 2014-09-13 14:54:02 +02:00
ThomasV
b22048fdfb fix wallet constructor 2014-09-13 10:16:09 +02:00
ThomasV
43513adb5c seed_v9: strip whitespaces before hashing 2014-09-11 15:15:50 +02:00
ThomasV
f3e2e7b501 fix for seed_version 2014-09-11 15:11:46 +02:00
ThomasV
e22dfc443c check seed_version before wallet_type 2014-09-11 15:04:42 +02:00
ThomasV
93d073457c add spanish wordlist and remove accents 2014-09-11 14:20:10 +02:00
ThomasV
e7c7dc8cc9 init fee variable in make_unsigned_transaction 2014-09-11 11:04:45 +02:00
ThomasV
be1a21d974 call add_address in get_next_account 2014-09-10 10:33:49 +02:00
ThomasV
374daa25af create a PendingAccount if coins have been sent to next_account 2014-09-10 10:09:13 +02:00
ThomasV
d2f4eed1f7 multi-account synchronization 2014-09-10 01:33:52 +02:00
ThomasV
0b7f8e74d5 move synchronize_account logic to account.py 2014-09-09 17:31:15 +02:00
ThomasV
1fb8af40c5 disable privkey export menu in trezor wallets 2014-09-09 14:30:57 +02:00
ThomasV
c657212e5b fix: do not add zero change 2014-09-08 20:44:19 +02:00
ThomasV
01ad103c37 don't change fee if it is fixed by user 2014-09-08 09:29:25 +02:00
ThomasV
bd6f21232d fix restore from mpk command line 2014-09-08 05:17:56 +02:00
ThomasV
67b9a59d34 better fees estimates 2014-09-07 20:36:29 +02:00
ThomasV
62179fad58 Merge pull request #772 from dabura667/fiximportchange
Make change address for imported keys the same
2014-09-06 16:59:53 +02:00
ThomasV
b1ecb61105 fix oldwallet master_public_key 2014-09-05 17:30:19 +02:00
ThomasV
2b10ccdcc4 fix 2014-09-05 16:31:57 +02:00
ThomasV
622fb6c08b add wallet categories 2014-09-05 16:28:53 +02:00
ThomasV
0c8c21f64d minor fix 2014-09-05 12:08:09 +02:00
ThomasV
65d0560475 storage: deepcopy and sanitize json 2014-09-05 12:04:03 +02:00
ThomasV
6e363bc097 check length in OP_RETURN 2014-09-03 16:35:35 +02:00
ThomasV
a2065eff72 use language in config to choose wordlist 2014-09-02 15:34:11 +02:00
ThomasV
5a20d07fb8 add hook: make_unsigned_transaction 2014-09-02 07:47:54 +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
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
744eee6858 wizard integration 2014-08-26 16:23:24 +02:00
ThomasV
ef74ae57ff fix tests 2014-08-25 15:32:21 +02:00
ThomasV
91723999aa add_cosigner_seed 2014-08-22 17:22:08 +02:00
ThomasV
b63fcde503 root_name 2014-08-21 18:24:47 +02:00
ThomasV
8df2179025 class for xpub wallets 2014-08-21 18:24:47 +02:00
ThomasV
3a5f64fcc7 account key must be a string (json) 2014-08-21 18:24:47 +02:00
ThomasV
58e1dd2a24 update trezor plugin 2014-08-21 18:24:47 +02:00
ThomasV
61e737c380 wallet types 2014-08-21 18:24:47 +02:00
ThomasV
83b9ecac76 save wallet file as json 2014-08-21 18:24:47 +02:00
ThomasV
f4b390a79f bip44 2014-08-21 18:24:47 +02:00
ThomasV
1d4631d647 bugfix for seed_v7 2014-08-21 18:19:56 +02:00
ThomasV
f400e69d51 move two methods in subclasses 2014-08-19 13:03:29 +02:00
ThomasV
cebc942ccb separate class for bip32 HD 2014-08-19 12:38:01 +02:00
ThomasV
20f93f7df0 set wallet.can_change_password and wallet.has_seed for trezor 2014-08-19 10:36:55 +02:00
ThomasV
cf03f153d9 fix: get_master_public_key 2014-08-13 16:28:27 +02:00
ThomasV
bf3f67c043 do not expose mnemonic_to_seed 2014-08-13 15:43:54 +02:00
ThomasV
606f1cd3f8 prevent seed collisions 2014-08-05 10:00:15 +02:00
ThomasV
b93cde14e7 custom entropy in make_seed 2014-08-01 12:04:38 +02:00
ThomasV
10faf75ee7 wallet fixes 2014-07-30 12:46:03 +02:00
ThomasV
ea29d9009d wallet.can_sign 2014-07-28 08:27:21 +02:00
ThomasV
035ecbc7cd redo inter-thread communication using pipes 2014-07-27 17:13:46 +02:00
dabura667
8722a37f13 Make change address for imported keys the same
Fixes #769
2014-07-26 15:24:55 +09:00
ThomasV
a195ca5c07 fix: check if wallet has master_private_keys 2014-07-14 03:21:51 +02:00
ThomasV
43d2fab9a0 get_seed -> check_password 2014-07-14 02:57:12 +02:00
ThomasV
98acf49b4e fix get_pubkeys call 2014-07-14 02:39:14 +02:00
ThomasV
20c7bef7ac rm dead code 2014-07-14 02:27:51 +02:00
ThomasV
b8f64ad46f rm get_address_flags (no longer used) 2014-07-14 02:23:27 +02:00
ThomasV
b04256b474 load_transactions 2014-07-14 02:20:24 +02:00
ThomasV
3c7346ee9c load imported_keys outside of load_accounts 2014-07-14 02:15:29 +02:00
ThomasV
a471859a3a move master_private_keys and master_public_keys to NewWallet 2014-07-14 02:08:21 +02:00
ThomasV
e2717284eb Merge pull request #749 from chrisglass/clean-tests-wallet
Add tests to the wallet.py module.
2014-07-10 02:58:51 +02:00
ThomasV
042c65939d don't use address_is_old in code that can be run offline 2014-07-09 18:23:33 +02:00
Chris Glass
a9592459ed Add tests to the wallet.py module.
This increases test coverage a lot.
2014-07-09 11:03:44 +02:00
ThomasV
6ad1c46aa5 fix: add type 'aaddress' in change output 2014-07-08 23:53:20 +02:00
ThomasV
1bb00ff5af store output type explicitly in tuple 2014-07-08 19:38:16 +02:00
ThomasV
769b4002cd fix: get_action 2014-07-07 23:35:01 +02:00
ThomasV
0ce2c870bb fixes for pending accounts 2014-07-07 15:43:02 +02:00
ThomasV
5ce50f4421 get_master_public_key: always return xpub of main account 2014-07-06 23:20:27 +02:00
ThomasV
2e1d24939c rm duplicate method getpubkey 2014-07-06 22:24:09 +02:00
ThomasV
b5b5edbee7 add_keypairs: simplification 2014-07-06 22:10:26 +02:00
ThomasV
a89abee969 Rewrite accounts and transactions: store pubkeys instead of addresses in order to avoid unnecessary derivations. 2014-07-06 21:10:41 +02:00
ThomasV
0511d7e76f fix: get_action should call get_master_public_key 2014-07-01 19:17:43 +02:00
ThomasV
2c38e85a50 better integration of plugins in installwizard (for 2fa, trezor plugins) 2014-07-01 18:46:11 +02:00
ThomasV
20060a1177 fix #745 2014-06-30 17:59:36 +02:00
ThomasV
2efad717d8 support for OP_RETURN 2014-06-27 17:08:20 +02:00
ThomasV
7a7e65d66c optional parameters for create_new_address 2014-06-27 11:38:35 +02:00
ThomasV
b5acdab3e9 allow address creation beyond gap limit in GUI. fixes #512 2014-06-26 18:55:22 +02:00
ThomasV
38f5deee86 use an input queue in synchronizer, so that new addresses can be created from other threads 2014-06-26 17:41:09 +02:00
ThomasV
54973062bd restore from xprv 2014-06-25 16:45:55 +02:00
ThomasV
8795e1a746 Comment on wallet classes. Use address_is_old to check if address is beyond gap limit 2014-06-25 10:53:06 +02:00
ThomasV
0c440ee6a6 wallet.is_beyond_limit (False for imported accounts) 2014-06-24 20:47:44 +02:00
ThomasV
0c6d470296 various bugfixes for imported addresses 2014-06-24 16:47:58 +02:00
Chris Glass
2765b66411 Removed uselss comment. 2014-06-24 15:48:50 +02:00
Chris Glass
01f3e31c6b First cleanup branch commit
This fixes some import and whitespace issues to align closer to pep8.
I added a few comments to make further contributions easier.
2014-06-24 16:12:43 +03:00
ThomasV
2c7bf3ca1a detect if wallet can sign tx before showing sign button 2014-06-24 13:22:10 +02:00
ThomasV
b32d0c77a3 fix bug with the order of signatures in tx input 2014-06-23 09:42:07 +02:00
ThomasV
785b54f8f4 fix add_keypairs: support old wallets 2014-06-21 21:39:57 +02:00
ThomasV
85505c1d8e cleanup (dead code) 2014-06-21 21:17:40 +02:00
ThomasV
0636ef8b32 compact serialized format for unsigned and partially signed transactions. 2014-06-21 21:06:09 +02:00
ThomasV
86aba082e1 fix bug #718 2014-06-11 13:10:48 +02:00
ThomasV
38a6747eff fix: sanitize outputs 2014-06-06 07:48:08 +02:00
ThomasV
e699ab6660 coin control: select UTXOs in menu 2014-06-05 21:55:11 +02:00
ThomasV
194291c80b update imported keys 2014-06-02 08:59:41 +02:00
ThomasV
501bb92584 Remove Bitcoin address from serialized encryption format. Enable encrypt commands, fix ser_to_point() and add some tests 2014-05-28 12:20:04 +02:00
ThomasV
adb53e4c41 fix #699 2014-05-21 22:04:10 +02:00
ThomasV
35c270e075 explicit type for imported wallets. fixes #698 2014-05-21 16:04:58 +02:00
ThomasV
c3676cc6e6 wallet.is_used() method 2014-05-12 11:28:00 +02:00
ThomasV
a66df2a3fa multi seed and mpk dialogs 2014-05-12 10:53:04 +02:00
ThomasV
0fb6cdcb1a add 2of3 wallets in wizard 2014-05-09 16:27:12 +02:00
ThomasV
a18d21d946 fix cmd line wallet creation. fixes #684 2014-05-08 15:18:38 +02:00
ThomasV
2642b7e126 can_import 2014-05-07 11:53:32 +02:00
ThomasV
7f67b36a19 fix: num_accounts should return only confirmed bip32 accounts 2014-05-05 12:17:25 +02:00
ThomasV
fa4c2b96d7 p2sh wallets cannot create accounts 2014-05-05 12:03:01 +02:00
ThomasV
97a6f91451 fix: is_address, is_private_key: check that text is not empty 2014-05-05 10:03:31 +02:00
ThomasV
90f5133983 utf8 encode seed (old wallets) 2014-05-05 01:19:04 +02:00
ThomasV
430c7aa92e fix: get_seed 2014-05-04 19:52:47 +02:00
ThomasV
c9fc6275ab move private key methods from wallet to accounts 2014-05-04 19:43:15 +02:00
ThomasV
9b8ad42a66 id of imported account 2014-05-04 14:13:34 +02:00
ThomasV
e9968e4a39 imported_keys and accounts 2014-05-04 13:46:37 +02:00
ThomasV
4a33cf256b remove dead code: get_imported_balance 2014-05-04 12:54:35 +02:00
ThomasV
09a2254739 fix #676 2014-05-04 10:22:35 +02:00
ThomasV
0536f256cf fix: imported_account 2014-05-02 12:41:37 +02:00
ThomasV
2a938ad516 fix: pending accounts 2014-05-02 11:19:02 +02:00
ThomasV
fdf8697e58 handle pending and imported accounts using account child classes 2014-05-02 11:10:12 +02:00
ThomasV
95df9cd103 fix bugs on wallet creation 2014-05-01 18:58:24 +02:00
ThomasV
3faeb7eab6 define check_password for imported wallets 2014-05-01 13:08:12 +02:00
ThomasV
ace127ee43 fix password dialog, for imported wallets 2014-05-01 12:42:06 +02:00
ThomasV
95fce65e12 disable wallet menus when they do not apply 2014-05-01 12:19:24 +02:00
ThomasV
84052bcdb2 fix bug with has_seed 2014-04-30 15:44:46 +02:00
ThomasV
9c37ed68f4 wallet.has_seed 2014-04-30 11:40:53 +02:00
ThomasV
56e8ad3397 cleanup wallet classes 2014-04-30 11:18:13 +02:00
ThomasV
17216da392 can_create_account 2014-04-30 10:40:47 +02:00
ThomasV
7e0711f6ec move synchronizer class in its own file. abstract wallet class. 2014-04-30 10:32:40 +02:00
ThomasV
582fb76e9e new class: Imported_Wallet 2014-04-29 21:04:16 +02:00
ThomasV
0ba73dfc95 restore get_master_public_key function. fixes #668 2014-04-29 12:26:58 +02:00
ThomasV
5d68ce4f22 wizard: option to create multisig wallet manually 2014-04-29 11:45:39 +02:00
ThomasV
70a638a7c3 more robust install wizard 2014-04-28 17:30:48 +02:00
ThomasV
5a02836933 fix input_info for signrawtransaction 2014-04-26 18:44:45 +02:00
ThomasV
0c100c1480 add_cold_seed 2014-04-25 17:51:41 +02:00
ThomasV
217900bbfa watching_only wallets have a single account 2014-04-25 11:48:13 +02:00
ThomasV
1662a9e9c5 fix: get_master_public_key 2014-04-25 10:39:07 +02:00
ThomasV
a1daba6afe get_master_public_keys 2014-04-25 10:16:07 +02:00
ThomasV
a3dd9f700c no accounts in multisig wallets 2014-04-24 14:29:08 +02:00
ThomasV
26c65dd65f lower default fee. fixes #403 2014-04-23 16:10:01 +02:00
ThomasV
5d9b9492e1 abstract and improve seed and key methods 2014-04-21 22:09:15 +02:00
ThomasV
41f9da1559 fix #655 2014-04-20 10:42:13 +02:00
ThomasV
6c96b38abf installwizard: multisig wallets 2014-04-19 20:23:27 +02:00
ThomasV
80a988e337 slightly better notifications. at least, it fixes #652 2014-04-17 17:38:21 +02:00
ThomasV
8a7a6f347b fix #661 2014-04-17 17:05:36 +02:00
ThomasV
1751c3ac7f fix: public instead of private 2014-04-09 07:36:33 +02:00
ThomasV
102bc204d5 hooks and workflow for 2of3 wallets 2014-04-06 21:38:53 +02:00
ThomasV
c24482c21a check seed in gui. fixes #622 2014-04-05 10:34:51 +02:00
ThomasV
38a59c0b37 re-enable seed tests. get_public_keys method 2014-04-05 10:08:54 +02:00
ThomasV
df540cb241 move get_keyID to accounts 2014-04-01 23:53:07 +02:00
ThomasV
5c31263848 fix load_accounts 2014-04-01 19:10:59 +02:00
ThomasV
5a43b633d6 update bip32 accounts and wallet 2014-04-01 11:25:12 +02:00
ThomasV
9543d2b5ec catch exception in signrawtransaction, if wallet is not synchronized 2014-03-15 09:59:00 +01:00
ThomasV
e2c749cdab bip32 uses compressed K 2014-03-13 16:56:53 +01:00
ThomasV
b379a14cd2 guess seed_version on old wallets 2014-03-13 10:42:39 +01:00
ThomasV
4e8bb4dac4 add tx direction info to default labels 2014-03-12 10:16:51 +01:00
ThomasV
960e7bc3df fix reference to verifier 2014-03-11 09:38:08 +01:00
ThomasV
f352832879 Merge branch 'master' of git://github.com/spesmilo/electrum 2014-03-10 16:05:57 +01:00
ThomasV
6ecb977461 add password to sign hook 2014-03-10 16:05:54 +01:00
Michael Wozniak
820328781a print statement should be debug only
comment print statement of seed
2014-03-09 23:27:40 -04:00
CodingAnarchy
b9bf3a2ee8 change estimated_fee to include 34 bytes per output instead of hard-coded 80 (issue #520) 2014-03-05 01:01:09 -07:00
ThomasV
12e9f49042 fix: network.height() is a function 2014-03-04 14:32:52 +01:00
ThomasV
da6f292dd5 encrypt/decrypt messages in gui 2014-03-03 10:39:10 +01:00
ThomasV
e955ee69a8 restore from master public key (qt and command line) 2014-02-28 15:43:06 +01:00
ThomasV
e34c14ee78 Merge pull request #582 from dabura667/csvaddresserr
CSV: Show erroneous addresses in warning window.
2014-02-27 14:12:08 +01:00
ThomasV
7267579fe0 Merge branch '2.0' 2014-02-27 10:41:22 +01:00
ThomasV
638526712b rebrand this branch as 1.9.8 2014-02-27 10:21:41 +01:00
ThomasV
79309c9625 strip whitespaces from seed 2014-02-26 16:24:37 +01:00
ThomasV
22408c1316 fix: do not create old_wallet if seed is empty because user typed gibberish 2014-02-26 16:21:38 +01:00
dabura667
c49a97ef14 Is_valid assert wasn't displaying anything.
Fixed it with a message.
2014-02-25 02:51:14 +09:00
ThomasV
bb859c244b strip whitespaces from seed 2014-02-11 15:27:28 +01:00
ThomasV
cf8c4aa491 fix: do not create wallet if seed is empty because user typed gibberish 2014-02-11 14:44:52 +01:00
CodingAnarchy
cbb99e6585 update estimated_fee to round up and use proper base of 1000 as calculation per issue #527 2014-02-10 01:24:47 -07:00
ThomasV
4693727659 1of1 is default account type 2014-02-03 10:01:21 +01:00
ThomasV
70bace9b1e use separata class for old wallets; decide with WalletFactory 2014-02-03 06:26:03 +01:00
ThomasV
c90bc6aa26 bip39 2014-02-01 11:23:29 +01:00
ThomasV
98ae202d80 fixes for master keys 2014-01-31 15:28:32 +01:00
ThomasV
9218175301 enable bip32 2014-01-29 17:12:08 +01:00
ThomasV
d4fbe85d7d json rpc daemon 2014-01-27 10:37:39 +01:00
ortutay
4edfc6d82e Coinbase BuyBack plugin 2014-01-05 00:19:23 -08:00
ThomasV
e18573dda0 test is_mine in add_keypairs_from_wallet 2013-12-21 17:57:42 +01:00
ThomasV
4446cf44c7 don't set network.interface to None when disconnetced 2013-12-16 19:18:57 +01:00
thomasv
942d009661 network.pending_servers, to avoid connecting the same server multiple times 2013-12-16 18:17:44 +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
3467bd0101 Merge pull request #499 from shunyata/bugfix/synchronizer-attribute-is-uninitialized
wallet.synchronizer should exist at construction.
2013-12-12 15:23:20 -08:00
shunyata
de1a0f5690 wallet.synchronizer should exist at construction.
The `self.synchronizer` attribute is accessed before it ever exists when using
`electrum importprivkey` on the command line. This change sets it to None,
which is a valid state, in the wallet's constructor.
2013-12-12 17:36:17 -05:00
thomasv
1004fbd8f8 fix offline signing with key>5 2013-12-11 11:45:32 +01:00
ThomasV
9b22372c43 remove prioritize altogether. 2013-11-22 16:55:43 +01:00
ThomasV
6dc9bfbe07 fix default value in storage.get 2013-11-20 07:37:14 +01:00
kazcw
3628f6430e clean up sending address input
in particular fee calculation was off for send-from
2013-11-16 10:52:44 +01:00
kazcw
ae028e780d select addresses to send from
based on branch by bkkcoins
2013-11-16 10:52:44 +01:00
ThomasV
7ead6d18f2 fix tx signing with watching only wallets 2013-11-12 11:14:16 +01:00
ThomasV
588f8fd110 wallet: call create_accounts in save_seed 2013-11-11 17:41:46 +01:00
ThomasV
9db6f0c3b7 fix side effect in get_unspent_coins, causing transactions to be rejected 2013-11-11 10:35:28 +01:00
thomasv
eae0c7c3b9 get_private_key: call get_seed first in order to check password 2013-11-10 15:22:22 +01:00
ThomasV
57e7eb2ff9 wallet.py: use get_seed in update_password 2013-11-10 11:51:56 +01:00
Bryan Stitt
225d8b83a3 don't use bare except 2013-11-09 21:23:57 -08:00
Bryan Stitt
f0eb0eccde replace BaseException with Exception 2013-11-09 20:21:02 -08:00
ThomasV
adcda6153d Merge branch 'master' of git://github.com/spesmilo/electrum 2013-11-09 08:15:51 +01:00
ThomasV
30934b69db call check_seed in get_seed 2013-11-09 08:15:46 +01:00
thomasv
48bd2557b7 fix: store seed version 2013-11-08 12:35:27 +01:00
ThomasV
e4cdc4da0f dust threshold 2013-11-06 23:09:24 +01:00
ThomasV
c84cc5bb8b do not return history if offline 2013-11-05 19:18:23 +01:00
ThomasV
b1472ba1a7 fix regression: offline mode 2013-11-05 18:55:53 +01:00
Wallacoloo
cd24eb4feb Fixed indexing a function rather than calling it in WalletStorage.put 2013-11-04 19:36:09 -08:00
ThomasV
536c898b59 restore from master public key with seed v4 2013-11-03 14:14:35 +01:00
ThomasV
d8626793bc fix: wait_for_network 2013-11-02 18:10:18 +01:00
ThomasV
4714160f17 fix redeemPubKey for imported keys (fixes issue #350) 2013-11-02 13:00:10 +01:00
ThomasV
67d185d7f0 offline signing with seed_v4 2013-11-01 13:31:13 +01:00
ThomasV
999bf3d2fd minor fix: restore from hexadecimal seed 2013-11-01 10:34:29 +01:00
thomasv
71429ef4bd no keyid for imported keys 2013-10-31 17:00:20 +01:00
thomasv
4ef6adf3ce exit after seed message 2013-10-31 15:42:52 +01:00
thomasv
83b885c702 fix mnemonic decode 2013-10-31 15:40:10 +01:00
thomasv
5a3b80cfb2 disable bip32 2013-10-31 13:28:52 +01:00
ThomasV
5cb1d6afda seed prefix 01 2013-10-31 09:32:22 +01:00
ThomasV
31aaae8ed2 seed v6 2013-10-26 16:40:05 +02:00
ThomasV
07bdd6c494 move old wallet to subdir 2013-10-24 11:43:55 +02:00
ThomasV
aaaeac3535 create a subdirectory for wallets, under default path 2013-10-24 10:03:48 +02:00
ThomasV
9d3c8efdda bug fix: seed_version 2013-10-15 11:00:36 +02:00
thomasv
a9d341ec9c move pending accounts logic into wallet.py 2013-10-12 13:55:48 +02:00
thomasv
5125ee43de fix parameters in mktx_from_account 2013-10-10 10:43:00 +02:00
thomasv
dfb2d12602 fix: height() 2013-10-10 10:01:44 +02:00
ThomasV
367b11681b fix offline signing: redeemPubkey was missing 2013-10-08 19:24:22 +02:00
ThomasV
14b5a3afd8 fixes for android: restore from seed 2013-10-08 14:12:56 +02:00
ThomasV
f5b54391d7 wallet: include next_addresses by default, so that we count them in balances 2013-10-07 23:00:38 +02:00
ThomasV
ec03932454 simplify get_balance 2013-10-07 22:02:17 +02:00
thomasv
ca75d3c08a check coinbase maturity (fix #252) 2013-10-07 19:24:06 +02:00
ThomasV
ea0f270fd9 update and fix the merchant script (fixes issue #254) 2013-10-06 21:16:09 +02:00
ThomasV
f14d055ad8 choose_tx_from account, and use deterministic signatures (issue #323) 2013-10-05 21:15:48 +02:00
ThomasV
3a894725ae new account creation method (gui) 2013-10-05 17:29:51 +02:00
ThomasV
a38298c5ee handle network.interface being None when network is disconnected 2013-10-04 19:27:50 +02:00
ThomasV
fbf91a67ad better account naming/renaming 2013-10-04 19:02:01 +02:00
ThomasV
6f2471b69b getpubkeys command 2013-10-03 13:31:59 +02:00
ThomasV
7a5016ec42 move synchronous_get to network.py, fix get_balance script 2013-10-03 10:05:01 +02:00
ThomasV
40e393187a manage subscriptions in network.py 2013-10-02 13:00:02 +02:00
ThomasV
5136e59e14 master privae keys dialog 2013-10-01 17:33:39 +02:00
ThomasV
1a8428647f don't create all master public keys on wallet creation 2013-10-01 13:40:22 +02:00
ThomasV
e82653f454 add locks to config and storage 2013-09-29 18:33:54 +02:00
ThomasV
3480cb9ef4 cleanup signrawtrasaction and input_info 2013-09-29 15:16:22 +02:00
ThomasV
a9b05ad188 set label 2013-09-29 12:14:01 +02:00
ThomasV
2b0d92e767 sign_tx hook 2013-09-29 10:16:17 +02:00
ThomasV
401c24e4ad add input_info when transaction is created 2013-09-29 02:43:30 +02:00
ThomasV
ecfe5e2590 common wallet.restore() method for GUIs 2013-09-28 13:45:49 +02:00
ThomasV
3d4a16b5c8 fix is_seeded 2013-09-28 11:54:48 +02:00
ThomasV
4524c107cf add account menus and details window 2013-09-24 16:55:25 +02:00
ThomasV
428fbf1f63 sort coins by age in get_unspent_coins() 2013-09-15 23:37:40 +02:00
thomasv
0eaa894aee fix 2013-09-15 16:22:58 +02:00
thomasv
671a73d02b sanitize prioritized_addresses, making sure they are in the wallet before trying to use them 2013-09-15 16:15:20 +02:00
thomasv
a5c5b05235 fix 2013-09-15 15:28:29 +02:00
thomasv
c8f93879b6 fix 2013-09-15 15:16:47 +02:00
thomasv
75f7050edc subscribe to imported address 2013-09-15 15:06:42 +02:00
thomasv
58ab37d056 send from domain in mktx (fix #294) 2013-09-15 14:51:46 +02:00
ThomasV
5a121526e4 fix 2013-09-13 22:13:17 +02:00
ThomasV
432fae996a fix 2013-09-13 06:43:22 +02:00
thomasv
6b6c508976 replace wallet.interface everywhere 2013-09-12 14:58:42 +02:00
ThomasV
907dca6eb9 simplify interface: use callbacks 2013-09-12 08:41:27 +02:00
thomasv
93c7aee2c8 cleanup: next_addresses 2013-09-11 17:42:32 +02:00
ThomasV
0099b2a560 make gtk gui re-work 2013-09-11 12:05:28 +02:00
thomasv
79645e9b37 fix: wallet.addresses 2013-09-10 19:41:56 +02:00
thomasv
828d8fd3ed fix: sign_message 2013-09-10 16:18:34 +02:00
thomasv
74735bd64e minor fixes 2013-09-10 16:13:30 +02:00
thomasv
620f9f68d4 minor fixes for wallet creation 2013-09-10 14:20:44 +02:00
thomasv
047e4b3478 move callbacks to the network class 2013-09-09 13:33:25 +02:00
ThomasV
cd6832df2e set_label 2013-09-08 20:10:43 +02:00
ThomasV
328315f94b separate blockchain and network 2013-09-08 17:23:01 +02:00
thomasv
90767c4b47 fix 2013-09-04 19:37:56 +02:00
thomasv
21bff48630 perform check_new_tx inside add_transaction 2013-09-04 18:58:53 +02:00
thomasv
8ab6529298 fix: first_addresses 2013-09-04 17:46:13 +02:00
thomasv
afac84e231 move transaction code and fix issue #280 2013-09-04 16:46:27 +02:00
thomasv
903e70566c wallet.make_unsigned_transaction() 2013-09-04 10:33:14 +02:00
ThomasV
6696e9643c fix restore from mpk 2013-09-03 18:35:46 +02:00
thomasv
3e14b7dd72 improved install wizard 2013-09-03 14:32:56 +02:00
thomasv
9b986f8cb6 restore: try old wallet first 2013-09-03 10:58:07 +02:00
thomasv
3ecd81c94a account names 2013-09-03 10:09:13 +02:00
thomasv
a417816e69 disable 'new account' in old wallets 2013-09-03 09:52:55 +02:00
ThomasV
1650eefdd3 synchronizer: wait for interface 2013-09-02 20:52:14 +02:00
ThomasV
a16b0f4630 don't use user_dir in storage 2013-09-02 20:17:04 +02:00
thomasv
8774f1a193 fix: synchronize generated duplicated addresses 2013-09-02 13:41:31 +02:00
ThomasV
fe538cc310 fix get_private_key for old addresses 2013-09-02 10:41:50 +02:00
ThomasV
e9b103b283 fix regressions in tx verifier 2013-09-02 08:50:39 +02:00
ThomasV
7b4046cf68 fee belongs in wallet storage 2013-09-01 23:09:27 +02:00
ThomasV
046ec58d24 start wallet threads from wallet class 2013-09-01 18:44:19 +02:00
ThomasV
d99a381d83 separation between wallet storage and config 2013-09-01 15:26:52 +02:00
ThomasV
b983d12929 restore old accounts from seed 2013-08-31 15:02:20 +02:00
ThomasV
10c805b3e7 restore bip32 accounts 2013-08-29 16:07:55 +02:00
ThomasV
9d00a072fe create new accounts through wallet.synchronize() 2013-08-29 15:08:03 +02:00
ThomasV
fd902de28a delete unneeded test 2013-08-17 23:51:46 +02:00
ThomasV
81b84fd5ef fixes for signrawtransaction 2013-08-17 18:40:59 +02:00
ThomasV
6bb8af5822 include master public key in bip32 metadata 2013-08-17 17:08:43 +02:00
ThomasV
e995f7abfd save account name as label 2013-08-17 11:46:19 +02:00
ThomasV
2abf1b93cb cleanup 2013-08-17 11:11:21 +02:00
ThomasV
799c6571f5 simplify: public_key_from_private_key 2013-08-17 11:09:19 +02:00
ThomasV
4869d05841 don't pass addresses to tx.sign(), pass keypairs instead 2013-08-17 10:56:23 +02:00
ThomasV
0424d5eb85 update signrawtransaction 2013-08-17 09:53:46 +02:00
ThomasV
70445da940 wallet.num_accounts and account_id method 2013-08-16 13:26:48 +02:00
ThomasV
419c778fa3 fix tx signing 2013-08-16 12:17:29 +02:00
ThomasV
7dc69bbc56 create_accounts for 2of3 2013-08-15 17:23:55 +02:00
ThomasV
c9a473c225 2of3 accounts 2013-08-15 15:27:03 +02:00
ThomasV
e6208e2747 fix create_new_account 2013-08-07 22:59:07 +02:00
ThomasV
1ff2f1b308 hex encode the output of account.get_pubkey() 2013-08-07 22:59:07 +02:00
ThomasV
58538ba825 encryption of bip32 master private keys 2013-08-07 22:59:07 +02:00
ThomasV
a3de537d9b make wallet.get_private_keys more general 2013-08-07 22:59:07 +02:00
thomasv
6274cccb9f get_new_address -> get_address 2013-08-07 22:54:21 +02:00
ThomasV
19553a056d bip32 2013-08-07 22:54:21 +02:00
Maran
06bfb60308 Reworked notification flow and combined multiple transactions into one notification 2013-07-16 12:15:23 +02:00
Maran
468c76b66e Added notifications when receiving a new transaction 2013-07-16 12:15:23 +02:00
Maran
e319f5e0ae Save contacts to the proper key in the wallet. fixes #234 2013-06-17 22:09:28 +02:00
ecdsa
3796fceb28 bugfix: referenced transactions 2013-06-01 19:26:07 +02:00
thomasv
4a60db9733 new methods: init_menubar and load_wallet 2013-06-01 11:59:54 +02:00
thomasv
5a015bc290 increase default fee to 0.0005 btc/kb 2013-05-10 14:36:38 +02:00
ecdsa
c81d565665 add error message for import_key failure 2013-05-05 17:38:59 +02:00
ecdsa
0f661aa3a1 minor bugfix 2013-05-02 10:56:28 +02:00
ecdsa
b2c23f9ac8 deprecate wallet.save() and 'eval' command 2013-05-02 10:54:48 +02:00
ecdsa
6be62e44de wallet.delete_contact method 2013-05-02 10:19:18 +02:00
ecdsa
8104a47a3e wallet.add_contact method 2013-05-02 10:10:22 +02:00