Serge Victor
55d392c274
Spread payment requests to subdirs
...
Currently Electrum stores all payment requests in main requests
directory. It's not going to be efficient when we have thousands of
thousands of payment requests. This patch spreads that files across
two level of subdirectories.
2016-10-01 05:40:40 +00:00
ThomasV
0fd813f229
fix #1938
2016-09-29 11:50:32 +02:00
ThomasV
fa487ae0ca
fix: get_public_keys method of p2pk wallets
2016-09-29 09:47:45 +02:00
ThomasV
68ed60ca87
fix: check_password method of Multisig wallets
2016-09-28 17:54:35 +02:00
Serge Victor
07280730d4
Intoducing websocket_announce configuration
...
Currently electrum daemon runs websocket server on a configured host and
port and sends the same information to merchant payments. There is
likely that those two may be different, when websocket traffic is being
reverse proxied and sent over via different hosts.
This patch introduces two fully optional parameters,
websocket_server_announce and websocket_port_announce, which when
set, are sent to the merchant payments instead of websocket_server and
websocket_port values.
2016-09-22 18:57:23 +00:00
ThomasV
7982cadd22
follow-up pevious commit
2016-09-22 13:38:59 +02:00
ThomasV
0d671e67c5
sign_transaction: do not stop if a keystore raises an exception
2016-09-22 10:57:28 +02:00
ThomasV
08543584c5
fix cold storage signing for imported wallets
2016-09-21 16:23:24 +02:00
Serge Victor
f2820944f1
Adding possibility of websockets configuration
...
Up to now, websockets configuration was possible for the daemon only,
this patch passes that information to the client via json file
produced with the payment request.
2016-09-21 10:54:09 +00:00
ThomasV
7a47d2341e
fix bug in trustedcoin constructor
2016-09-02 10:28:52 +02:00
ThomasV
b1b15f510c
Fix can_sign and cold storage
2016-09-01 19:45:01 +02:00
ThomasV
abeb781879
fix #1916
2016-09-01 09:23:05 +02:00
ThomasV
e38abb95d7
minor fix tx status
2016-08-31 18:45:58 +02:00
ThomasV
16ed48d52d
Format upgrade: increment seed_version to make sure that old versions of Electrum refuse to open new wallet files.
2016-08-31 15:04:57 +02:00
ThomasV
ab53ee27f1
fix bug with change addresses
2016-08-27 22:24:41 +02:00
ThomasV
86e23d9989
save wallet label in keystore, to facilitate pairing
2016-08-26 11:45:12 +02:00
ThomasV
80675121ce
allow several hardware cosigners in the same wallet
2016-08-22 12:50:24 +02:00
ThomasV
afe39330dc
update wallet format again, for keystore
2016-08-21 11:58:15 +02:00
ThomasV
8423f8394f
dynfees: set default
2016-08-20 09:16:03 +02:00
ThomasV
24a9ff3fef
simplify wallet types
2016-08-19 17:35:58 +02:00
ThomasV
f6e393d7b6
fix: import addresses and private keys
2016-08-17 10:39:30 +02:00
ThomasV
a088940496
add Wallet.can_import
2016-08-16 12:11:39 +02:00
ThomasV
b87c5d12fa
- fix sign/verify messages
...
- fix hardware wallet tx_outputs
2016-08-14 13:03:52 +02:00
ThomasV
b0afdf4614
fix command line: create, restore, importprivkey
2016-08-12 11:56:27 +02:00
ThomasV
1159f85e05
Major refactoring
...
- separation between Wallet and key management (Keystore)
- simplification of wallet classes
- remove support for multiple accounts in the same wallet
- add support for OP_RETURN to Trezor plugin
- split multi-accounts wallets for backward compatibility
2016-08-12 11:02:28 +02:00
ThomasV
f061fe047d
add lock to storage.write
2016-07-07 06:54:57 +02:00
ThomasV
824f86475e
add get_master_public_key to all wallets
2016-07-01 17:46:11 +02:00
ThomasV
59825c913c
follow up c6a46df158
2016-07-01 17:32:13 +02:00
ThomasV
c6a46df158
fix issue #1853
2016-07-01 16:19:26 +02:00
ThomasV
342d6633a6
wizard: add capability to restore multisig
2016-07-01 11:44:26 +02:00
ThomasV
9182392b55
kivy: separate base wizard class from gui
2016-06-18 16:32:20 +02:00
ThomasV
9896718f09
get_tx_info: fix types
2016-06-09 18:10:13 +02:00
ThomasV
8886e5098a
fix get_tx_info
2016-06-08 14:15:17 +02:00
ThomasV
5af7139598
kivy: handle 'verified' event
2016-06-08 12:55:42 +02:00
ThomasV
7f7aa97e2e
tx dialog: fix confirmation time estimate
2016-06-08 11:22:58 +02:00
ThomasV
b94a7920af
factorize code used for tx dialogs
2016-06-08 11:06:51 +02:00
ThomasV
a07a3f748e
Qt GUI: let users type tx output in script language
2016-06-07 09:57:24 +02:00
ThomasV
9da2076328
fix: relayfee is per kb
2016-06-04 09:33:26 +02:00
ThomasV
0843aaafb5
gat_wallet_delta: reverse sign of returned fee
2016-06-02 11:30:39 +02:00
ThomasV
79fbb5edce
get_tx_delta: do not return fee if tx is not mine
2016-06-02 11:15:43 +02:00
ThomasV
403fbdd39e
rename is_send -> is_mine
2016-06-02 10:40:16 +02:00
ThomasV
016d733c0f
low_fee threshold
2016-06-01 05:41:08 +02:00
ThomasV
8e0d1f1e44
fix low_fee value
2016-06-01 05:39:29 +02:00
ThomasV
2cf4795250
dynamic fees: define fee levels using expected confirmation times
2016-05-31 20:26:09 +02:00
ThomasV
599906eef6
show warning icon if unconfirmed tx has low fee. fixes 1798
2016-05-30 18:26:58 +02:00
ThomasV
076ecb2680
move get_status to synchronizer
2016-05-30 16:11:49 +02:00
ThomasV
59d3910882
fix utxo_can_sign
2016-05-29 20:36:52 +02:00
ThomasV
1a46a795a5
detect non-final transactions, and transactions with unconfirmed inputs
2016-05-29 19:53:04 +02:00
ThomasV
f01f931e83
add extra checkbox for RBF
2016-05-23 17:34:33 +02:00
ThomasV
18a2498b76
show UTXOs in address tab
2016-05-23 11:52:38 +02:00
ThomasV
3314b3acc7
Use dynamic fees by default, show fee slider in send tab, and discretize fee levels.
2016-05-20 15:30:39 +02:00
ThomasV
d83058e2e8
raise the maximum imposed on dynamic fees
2016-05-20 12:25:36 +02:00
ThomasV
bc1bef60a0
support Replace-By-Fee in GUI
2016-05-20 10:38:48 +02:00
ThomasV
bca0f31fca
coinchooser methods should not belong in wallet class
2016-03-10 16:37:45 +01:00
ThomasV
a57274930b
kivy's python-for-android can import stat
2016-03-10 10:39:47 +01:00
ThomasV
f60c949911
storage: do not raise error if file is empty
2016-03-10 10:17:03 +01:00
ThomasV
94664566e7
kivy: fix watching-only issue
2016-03-05 04:34:13 +01:00
ThomasV
d58ec9a570
kivy: support old-type seed phrases in wizard
2016-03-01 20:23:30 +01:00
ThomasV
96f144eb03
make sure the broadcast tx thread always times out
2016-02-25 08:55:06 +01:00
ThomasV
305843999e
Relicensing
2016-02-24 10:20:30 +01:00
ThomasV
f97fdf3ba8
labels plugin: use get_fingerprint
2016-02-22 15:44:31 +01:00
ThomasV
a7d3175799
replace semantically relevant instances of 'assert' with exceptions
2016-02-15 09:33:38 +01:00
ThomasV
a1ef7c4bb6
get_sorted_request: sort by address index, not by timestamp
2016-02-15 08:23:34 +01:00
ThomasV
b7c4492d3b
get_request_status: return PR_UNKNOWN if request is unknown
2016-02-15 04:59:20 +01:00
Neil Booth
b54ba556bc
Wallet: encapsulate wallet_types
...
Previously plugins would append lines to it and wizard.py would
hack into it too.
2016-02-08 22:32:49 +09:00
Neil Booth
317e6cea32
Multisig: revert part of "reformatting"
...
Broken by fe9ec6de06
2016-02-06 18:02:21 +09:00
ThomasV
fab001833f
rm print debug statement
2016-02-03 11:02:17 +01:00
ThomasV
8b68a742d1
follow up to 2a507b91c1
2016-02-03 11:01:36 +01:00
ThomasV
2a507b91c1
fix #1666
2016-02-03 10:29:31 +01:00
ThomasV
3ee61c4c6e
define wallet.dummy_address method
2016-02-02 19:56:34 +01:00
ThomasV
eb36884c66
move estimate_fee back to wallet
2016-02-02 12:26:28 +01:00
ThomasV
fe9ec6de06
reformatting
2016-01-26 13:51:47 +01:00
ThomasV
9b09c55356
dynamic fees: use hardcoded value as upper bound
2016-01-25 16:46:50 +01:00
Neil Booth
a0ef42d572
Fix typo causing change address reuse
2016-01-24 11:16:05 +09:00
Neil Booth
efa1efedca
Hardware wallets: limit change outputs to 1
2016-01-23 22:05:08 +09:00
Neil Booth
9729f5b6d3
get_account_addresses: None->all user-visible a/cs
...
Otherwise we can end up sweeping to a non-visible address.
2016-01-23 18:07:02 +09:00
Neil Booth
83a531b3e4
Revert "Sweep keys: don't default to hidden address"
...
This reverts commit 605cc47a3d
.
2016-01-23 17:32:43 +09:00
Neil Booth
605cc47a3d
Sweep keys: don't default to hidden address
...
The issue is electrum uses None as the current account
to mean the default account. This just gave rise to
all addresses being listed including in hidden accounts.
Really "None" as used in main_window.py and history_widget.py
means "a single unspecified account" not "all accounts".
So implement the idea of a default account, and don't let
a hidden account be the default one.
2016-01-23 17:17:10 +09:00
ThomasV
d200b236ae
replace tx.input, tx.output by methods, so that deserialize calls are encapsulated
2016-01-17 15:04:11 +01:00
ThomasV
4f0631d78d
don't use assert is is_xprv (weird kivy bug)
2016-01-16 15:05:29 +01:00
Neil Booth
15707b5590
Coin chooser: use deterministic randomness
2016-01-16 18:55:50 +09:00
ThomasV
3b10bd8307
follow up eb085c2e23
2016-01-15 09:10:04 +01:00
Neil Booth
641f23229d
Add multiple change output preference
...
Limit to 3 if enabled.
2016-01-15 14:54:26 +09:00
ThomasV
0d52911561
define constants for tx output types
2016-01-14 17:15:50 +01:00
ThomasV
da8fce1914
if available, use relayfee from server instead of hard coded value
2016-01-14 16:06:22 +01:00
ThomasV
58fe42cea2
revert commit 4ba4611599
for relicencing
2016-01-12 09:35:45 +01:00
Neil Booth
b120dd8849
Fix root derivation changes for BIP44_Wallets
...
Wallet keys use root_name
Also typo xub -> xpub
2016-01-11 11:39:56 +09:00
ThomasV
c47e3499ce
rename wallet methods
2016-01-10 12:56:15 +01:00
Neil Booth
cda92cd12c
Move cosigner methods to BIP32_RD_Wallet
2016-01-10 20:37:22 +09:00
Neil Booth
637164d335
Introduce BIP32_RD_Wallet
...
Represents a BIP_32 wallet with a root derivation.
This permits us to see address derivation for NewWallet types
in the QT Gui.
2016-01-10 20:20:04 +09:00
Neil Booth
3d781a2d1b
BIP32_HD_Wallet: Fix address derivation
...
Unfortunately there was root_name and root_derivation confusion
in the past for classes derived from BIP_32_HD_Wallet.
Address derivation used root_name and so would begin with 'x/'
whereas it should have begun with root_derivation, and so started
with 'm/'.
This fixes that old wart and removes some fudges from the trezor
code that used to work around it.
2016-01-10 20:06:13 +09:00
Neil Booth
4743f033b4
Fix the backwards-compat 'next_account2' code
2016-01-10 19:26:17 +09:00
Neil Booth
5baa5feb11
Put restore_wallet_class back in the derived classes
2016-01-10 18:41:20 +09:00
Neil Booth
9946feb352
Have BTChipWallet derive from BIP44_Wallet
...
Narrowing the gap with the Trezor code a bit
2016-01-10 17:38:39 +09:00
Neil Booth
81d641a13f
Show BIP32 path for BIP32_HD_Wallet classes
...
from right-click Show Public Keys menu.
Fixes #1598
2016-01-10 14:53:00 +09:00
ThomasV
5915b9b7e1
restore action-driven wizard logic
2016-01-07 00:55:23 +01:00
ThomasV
90a2fc1379
Revert "Fix MultiSig wallet creation."
...
This reverts commit 21038843ea
.
2016-01-07 00:46:34 +01:00
ThomasV
bdb4782b36
Revert "Install wizard multisig improvement"
...
This reverts commit 4e7c6e5d16
.
That commit breaks the separation between make_seed and add_cosigners
2016-01-06 12:01:25 +01:00
Neil Booth
4e7c6e5d16
Install wizard multisig improvement
...
Preserves independence of wizard.py from wallet type;
the dependence is expressed entirely through actions
Fixes #1611
2016-01-06 19:31:12 +09:00
Neil Booth
21038843ea
Fix MultiSig wallet creation.
...
Fixes #1603
2016-01-05 21:22:43 +09:00