Commit Graph

1158 Commits

Author SHA1 Message Date
ThomasV
7ff32877f7 replace test that should never happen 2018-02-15 15:31:27 +01:00
ThomasV
acbad0a005 change names 2018-02-14 14:25:51 +01:00
ThomasV
8bfe342772 minor fixes 2018-02-14 13:55:01 +01:00
ThomasV
0f16bcdc1f Capital gains:
* Show acquisition price in history.
* Add summary to history command
2018-02-14 12:04:47 +01:00
ThomasV
e0130cafcf
Merge pull request #3895 from SomberNight/fix_3890
locking in wallet.create_new_address
2018-02-13 09:52:16 +01:00
ThomasV
b3a67f7a1f Merge branch 'master' of github.com:spesmilo/electrum 2018-02-13 09:47:30 +01:00
ThomasV
2829de5d49 fix: missing parameter 2018-02-13 09:47:25 +01:00
SomberNight
7e77baf4fb fix #3890 2018-02-12 23:20:58 +01:00
SomberNight
2914090879 wallet.synchronize: remove dead code 2018-02-12 16:12:16 +01:00
ThomasV
4cbdd25c93 Capital gains: Let user enter fiat value of transactions. 2018-02-11 18:11:50 +01:00
ThomasV
0df42fe046 use Decimal for exchange rates 2018-02-10 15:03:45 +01:00
ThomasV
42a16d9c3e computation of capital gains for outgoing transactions 2018-02-09 20:43:42 +01:00
ThomasV
c32435c15e
Merge pull request #3737 from SomberNight/fix_sweep_into_same_wallet
fix: sweeping into same wallet
2018-02-09 15:48:12 +01:00
ThomasV
3f954a8b3d Factorize history export code used in GUI and command line.
Add options to export history limits and exchange rate.
Closes: #1752, #2604,
Replaces: #2715, 3724
2018-02-09 15:28:28 +01:00
ThomasV
d9cf4c2b63
Merge pull request #3810 from SomberNight/conflicting_txns
conflicting transactions
2018-02-06 06:16:19 +01:00
SomberNight
ca19a36478 conflicting transactions 2018-02-06 05:39:40 +01:00
SomberNight
d6c1a933fe some local txns are not getting SPV verified 2018-02-06 05:13:37 +01:00
SomberNight
245cd24f34 follow-up f39f43d58c 2018-02-05 20:15:00 +01:00
ThomasV
f39f43d58c fix #3845 2018-02-05 16:08:57 +01:00
ThomasV
c3f3843cc3 Add memory pool based fee estimates
- fee estimates can use ETA or mempool
 - require protocol version 1.2
 - remove fee_unit preference
2018-02-05 12:23:32 +01:00
SomberNight
0021dbfceb address filter: (qt gui) add "all" filter option besides "receiving" and "change" 2018-02-04 19:17:21 +01:00
SomberNight
ffdc36285b use string.format instead of old style (%) formatting 2018-02-04 07:26:55 +01:00
ThomasV
c49335ed30
Merge pull request #3346 from SomberNight/encrypt_watch_only_wallets
allow encrypting watch-only wallets
2018-02-03 11:02:14 +01:00
SomberNight
48e8bbff69 Revert "fix conflicting local txns, e.g. when using RBF"
This reverts commit 8a71e46e9b.
2018-01-31 16:48:09 +01:00
ThomasV
acf473f7f2
Merge pull request #3777 from SomberNight/fix_wallet_check_history
fix wallet.check_history
2018-01-30 01:08:04 +01:00
ThomasV
64127a8bee
Merge pull request #3782 from SomberNight/opt_wallet_get_address_index
Optimisations in wallet.py
2018-01-30 01:06:44 +01:00
SomberNight
ac69f628fe clean-up wallet.get_address_index 2018-01-30 00:59:12 +01:00
SomberNight
d92a6d46eb wallet.is_mine: use inheritance for more readable code 2018-01-30 00:44:40 +01:00
ThomasV
2343894e0f Merge branch 'local_tx' 2018-01-30 00:22:02 +01:00
ThomasV
0e7e7e3dc5 Merge branch 'local_tx' 2018-01-30 00:18:44 +01:00
SomberNight
704bdedea1 tx heights: replace magic numbers with named constants 2018-01-29 23:04:12 +01:00
SomberNight
2dca7bd39c subtle typo 2018-01-29 17:42:39 +01:00
SomberNight
8a71e46e9b fix conflicting local txns, e.g. when using RBF 2018-01-29 15:39:46 +01:00
Johann Bauer
8676e870f3 Raise exception if transaction is not related to wallet 2018-01-28 22:56:33 +01:00
SomberNight
f0e7ae20f2 fix #3790 2018-01-28 22:20:27 +01:00
SomberNight
c811c5c9d9 allow encrypting watch-only wallets. initial support for hw wallet storage encryption. 2018-01-28 02:09:44 +01:00
SomberNight
d1e2ca4bc5 make wallet.is_change faster 2018-01-27 18:16:31 +01:00
SomberNight
1c67cfe01b optimise wallet.is_mine 2018-01-27 17:51:24 +01:00
SomberNight
7f3b627aa4 make wallet.get_address_index faster by storing an addr->index dict 2018-01-27 17:33:26 +01:00
SomberNight
d09138446f fix wallet.check_history 2018-01-27 04:24:15 +01:00
Johann Bauer
fbcee9a6f6 Also remove child transactions 2018-01-24 19:34:23 +01:00
Johann Bauer
887e06eebb Set icon for offline transactions 2018-01-23 23:50:02 +01:00
ThomasV
e6dd3e6ad8 allow to save unbroadcasted transactions in wallet 2018-01-18 11:56:21 +01:00
SomberNight
a20a3f9714 fix: sweeping into same wallet 2018-01-17 01:46:00 +01:00
SomberNight
7033125186 fee ui - rounding: display info icon with tooltip. show pre-rounding values in ui. 2018-01-03 18:08:10 +01:00
Andrew Chow
0a83b3af22 Avoid modifying self.transactions in prepare_for_verifier
In python3, the `.keys()` function returns an iterator, not a list,
so to get a list that can be iterated over, use `list()` instead to
avoid modification of a list while in use.
2018-01-01 18:03:00 -05:00
SomberNight
6c2b974796 change default relay fee to 1000 sat/kbyte 2017-12-31 05:06:52 +01:00
SomberNight
6f954090e6 fix fee ui: offline case 2017-12-30 01:13:36 +01:00
SomberNight
e2c05c2400 RBF/sweep: use BIP_LI01_sort() 2017-12-22 02:33:22 +01:00
ThomasV
f3a6491df4
Merge pull request #3575 from SomberNight/fix_imported_wallet_addr_filters
fix: address filters for Imported_Wallet: wallet.is_used()
2017-12-21 12:16:31 +01:00
SomberNight
3ba864bbca connect fee edits together 2017-12-21 11:17:20 +01:00
SomberNight
32b248245e fix: address filters for Imported_Wallet: wallet.is_used() 2017-12-21 03:22:21 +01:00
SomberNight
ec99304ae1 fix sweeping for 2fa wallets 2017-12-11 17:37:10 +01:00
SomberNight
4e4a7746fc clean-up: use is_segwit_input in wallet.py 2017-12-11 01:49:38 +01:00
SomberNight
e65b598756 use the send tab when sweeping (qt gui) 2017-11-30 12:27:00 +01:00
ThomasV
f715caa27d fix #3413 2017-11-29 19:04:18 +01:00
ThomasV
2ea59aad14 fix #3345: do not require a wallet in order to sweep 2017-11-29 13:45:02 +01:00
ThomasV
60e0b43b81 fix 3262: protobuf SerializeToString() returns bytes.. 2017-11-13 11:10:51 +01:00
Justin Turner Arthur
857eb4ac1d Remove unused imports. Explicitly import a few deep imports. 2017-11-13 02:28:00 -06:00
SomberNight
9e2cd17790 sweeping minikeys: search for both compressed and uncompressed pubkeys 2017-11-11 11:02:30 +01:00
SomberNight
bdfd3e7190 wallet.check_password() remove code duplication 2017-11-09 19:15:36 +01:00
ThomasV
0a10d6512b follow up previous commit 2017-11-03 17:13:49 +01:00
ThomasV
f7ecfd104d fix #3201 2017-11-03 17:08:13 +01:00
ThomasV
a70970ca20
Merge pull request #3205 from SomberNight/delete_address_proper
proper address deletion for imported wallets
2017-11-03 16:53:10 +01:00
SomberNight
a328f83797 proper address deletion for imported wallets 2017-11-03 16:36:16 +01:00
ThomasV
036d5746a3 fix verified_tx iteration 2017-11-03 14:08:46 +01:00
SomberNight
9bbb3f81b3 fix: import_address() for existing Imported_Wallet was willing to import anything 2017-11-03 07:42:38 +01:00
ThomasV
f36024e216 hardware wallets: pass xtype to get_xpub 2017-10-31 11:45:25 +01:00
ThomasV
8467663448
Merge pull request #3141 from SomberNight/locktime_local_height
txn: set locktime to local height for RBF, CPFP, sweep
2017-10-28 22:41:48 +02:00
SomberNight
211fa9a062 txn: set locktime to local height for RBF, CPFP, sweep 2017-10-28 10:02:37 +02:00
SomberNight
5109075e4f fix: sweep p2pk - small display bug (unknown -> pubkey) 2017-10-28 08:59:44 +02:00
ThomasV
6f3c822867
Merge pull request #3125 from SomberNight/sweep_p2pk
try to sweep p2pk outputs from old type WIF privkeys
2017-10-27 21:01:56 +02:00
ThomasV
0af700bda0 fix typo 2017-10-27 12:04:26 +02:00
ThomasV
a220932711 serialize txin-type in xpub/xprv 2017-10-27 12:04:26 +02:00
SomberNight
1c31177d03 try to sweep p2pk outputs from old type WIF privkeys 2017-10-26 01:17:46 +02:00
SomberNight
1f102913e9 typo in wallet.import_private_key() 2017-10-25 06:54:51 +02:00
ThomasV
ccf1f0f5d1 add class Simple_Wallet 2017-10-15 10:14:55 +02:00
ThomasV
0dbb976baf update unsigned tx format, so that imported wallets can sign all address types 2017-10-14 15:47:36 +02:00
SomberNight
e406829904 fix: Imported_Wallet cannot spend from p2wpkh or p2wpkh-p2sh 2017-10-11 14:00:38 +02:00
ThomasV
de85b56e0a re-enable locktime 2017-10-11 12:24:55 +02:00
SomberNight
0a1ebea669 sweep txs are now always RBF 2017-10-10 19:53:28 +02:00
ThomasV
401d8bc534 fix #2890 2017-10-10 11:48:27 +02:00
ThomasV
8fbabfd796 update delete_address for imported wallets 2017-10-10 11:38:30 +02:00
ThomasV
5873fe8eaf follow up previous commit 2017-10-09 10:45:43 +02:00
ThomasV
5480b7dff5 add_input_info: add txin value for RBF with segwit inputs 2017-10-07 12:54:50 +02:00
ThomasV
332c5d41e6 return dict in get_addr_utxo 2017-10-07 12:52:52 +02:00
ThomasV
9aa3f2d9e2 add txin_type in add_input_info, remove inefficient search 2017-10-07 12:15:18 +02:00
ThomasV
fefcd7bbcd sweep: use scripthash rpc 2017-10-06 09:56:54 +02:00
gdvine
5ce8508cd5 Fix low value error message 2017-10-05 20:06:26 +01:00
ThomasV
15ab48aaa8 fix sweep 2017-10-05 20:08:16 +02:00
ThomasV
3dabb94046 convert wallet format for imported wallets 2017-10-05 19:40:41 +02:00
ThomasV
e299df7b82 add message signing/decryption for segwit addresses 2017-10-05 14:44:44 +02:00
ThomasV
34a786ee43 fix export_private_key of Imported_Wallet 2017-10-05 09:44:37 +02:00
SomberNight
4aa385e0b3 follow-up of wallet.get_private_key() -> wallet.export_private_key() 2017-10-04 23:22:33 +02:00
ThomasV
0f4b5abc15 add use_compressed_pubkeys field to keystores. fix #2973 2017-10-04 13:04:21 +02:00
ThomasV
34628533fb fix typo 2017-09-30 13:00:52 +02:00
ThomasV
e8b564c0e7 Extend Wallet Import Format with txin type. Extend class Imported_Wallet. 2017-09-29 15:32:55 +02:00
ThomasV
9bdac1aae0 detect txintype in keystore. fix #2912 2017-09-23 09:39:12 +02:00
ThomasV
fcea2a065d add support for p2wsh-in-p2sh 2017-09-18 08:52:06 +02:00
ThomasV
5416a4ea8a serialize value for segwit-p2sh inputs too 2017-09-17 16:56:52 +02:00
ThomasV
d7dc804b32 fix iteration bug 2017-09-15 12:07:57 +02:00
ThomasV
63a1db1172 make xpub/xprv version information user-visible 2017-09-13 11:33:28 +02:00
ThomasV
d9f2edf6b0 support native segwit transactions 2017-09-13 11:32:40 +02:00
ThomasV
6b871a7cfd mmonir python3 fix 2017-09-04 14:21:02 +02:00
ThomasV
4d3e079778 rename bc_address functions 2017-08-31 10:21:57 +02:00
ThomasV
794baa16c8 move address_to_script to bitcoin.py 2017-08-31 09:59:40 +02:00
ThomasV
ab15ff3a00 updates for python3 2017-08-26 08:28:24 +02:00
ThomasV
c3388d9677 misc python3 updates:
- use jsonrpclib-pelix
 - update the kivy gui
 - update plugins
2017-08-26 08:28:24 +02:00
Dmitry Sorokin
362ca96f38 x509 fixes and plugins 2017-08-26 08:28:24 +02:00
Dmitry Sorokin
0693403358 sending fixed 2017-08-26 08:28:24 +02:00
Dmitry Sorokin
f02d18226b misc ui and lib fixes for py3 2017-08-26 08:27:47 +02:00
Dmitry Sorokin
d304ccdf17 py3 in qtgui 2017-08-26 08:27:47 +02:00
Dmitry Sorokin
5be78950ca py3 2017-08-26 08:27:47 +02:00
Sebastian Volland
d95e79efab add missing import 2017-08-16 19:11:07 +02:00
ThomasV
08fab753e8 change default value of confirmed_only, spending unconfirmed coins 2017-08-08 06:03:47 +02:00
ThomasV
0c6de8ff56 fix undo_verification 2017-07-20 06:38:49 +02:00
ThomasV
9576f8510d undo verified tx when swapping chains 2017-07-19 06:50:48 +02:00
ThomasV
9c28489bc0 fix wallet.can_export 2017-07-10 09:46:11 +02:00
ThomasV
b02ce2d02c disable locktime until keepkey firmware is updated 2017-07-09 21:06:21 +02:00
ThomasV
777a3aa8bf Fixes for TrustedCoin plugin:
- reset billing_info after broadcast
- when bumping tx fee, do not use Trustedcoin output
2017-07-06 16:03:21 +02:00
ThomasV
faa17f9818 Option to send only confirmed coins (fix #2395) 2017-07-03 07:46:27 +02:00
ThomasV
cad3798f84 follow-up previous commit 2017-06-30 18:52:49 +02:00
ThomasV
7ea2cb41e8 fix #2509: reset pubkeys to None when x_pubkeys are unsorted 2017-06-30 18:31:37 +02:00
ThomasV
853b6169ed hardware wallet support for locktime 2017-04-19 15:02:25 +02:00
ThomasV
6fc6d1ec7d timelock tx to current height. see #2349 2017-04-19 11:55:31 +02:00
ThomasV
0bc777a10c follow-up previous commit 2017-04-05 09:52:52 +02:00
ThomasV
50587c7a24 fix #2353: show error when sweeping dust 2017-04-05 09:17:42 +02:00
ThomasV
57baed4728 check parameter type of create_new_address 2017-04-04 13:52:16 +02:00
ThomasV
1d84029173 input_script: return txin.scriptSig if available. replace txin.is_coinbase with type. fixes #2321 2017-03-21 09:08:16 +01:00
ThomasV
737a7f0bfb fix #2302: signing with imported wallet 2017-03-20 10:47:03 +01:00
ThomasV
107adb186f sort unconfirmed transactions by height 2017-03-15 18:05:05 +01:00
ThomasV
584b19a11e fix for older formats 2017-03-11 14:54:03 +01:00
ThomasV
c506c3e720 fix password message issue #2277 2017-03-11 11:32:00 +01:00
ThomasV
ff9d00ba1d minor fix: do_update_fee 2017-03-06 21:05:48 +01:00
ThomasV
dcffea150e store contacts and invoices in wallet file. fix #1482 2017-03-06 17:12:27 +01:00
ThomasV
411832c4ce cleanup storage and fix tracvis test 2017-03-06 08:33:35 +01:00
ThomasV
fb3e09c24e better error message if fee estimates are missing 2017-03-05 20:39:00 +01:00
ThomasV
9cb576a88c fix multisig update_password 2017-03-04 10:30:05 +01:00
ThomasV
a90431320c fix sweep 2017-03-02 11:57:24 +01:00
ThomasV
fcc92c1ebd Wallet file encryption:
- a keypair is derived from the wallet password
 - only the public key is retained in memory
 - wallets must opened and closed explicitly with the daemon
2017-03-01 13:58:04 +01:00
ThomasV
ff39068867 new wallet structure:
- store addresses instead of pubkeys
 - derive pubkeys only for serialization
 - fix #2024
2017-02-26 08:33:44 +01:00
Johann Bauer
03fc29c4ac Remove newlines from transaction labels
Closes: #2176
2017-02-19 22:56:31 +01:00
shsmith
df733e8e4c fix AttributeError: 'Standard_Wallet' object has no attribute 'account'
If you use wallet.change_gap_limit with a value below the current gap
limit, you get this exception:

`>> wallet.change_gap_limit(1)
Traceback (most recent call last):
File "lib\wallet.py", line 1455, in change_gap_limit
elif value >= self.min_acceptable_gap():
File "lib\wallet.py", line 1479, in min_acceptable_gap
addresses = self.account.get_receiving_addresses()
AttributeError: 'Standard_Wallet' object has no attribute 'account'
>> `
2017-02-11 12:29:28 -08:00
ThomasV
15b404b9de add CPFP (child pays for parent) dialog to the Qt GUI 2017-02-01 12:26:30 +01:00
ThomasV
aed2b04dbd return txid for unsigned segwit transactions 2017-01-31 16:32:11 +01:00
ThomasV
af54ba023b add wallet.is_segwit 2017-01-31 11:56:59 +01:00
ThomasV
6bfbc9a718 fix: replace remaining occurences of public_key_to_bc_address 2017-01-29 06:34:35 +01:00
ThomasV
f937472928 fix typos 2017-01-26 19:23:17 +01:00
ThomasV
ce11a2fac5 replace segwit wallet class with custom xpub type 2017-01-26 13:53:31 +01:00
ThomasV
3a64ec0f2e Initial segwit support (testnet only) 2017-01-25 21:42:15 +01:00