Commit Graph

2545 Commits

Author SHA1 Message Date
Neil Booth 3a1bb5b61a Combine keepkey and trezor wallet code
Essentially identical so silly to have two copies.
Also fix a double-dialog during sign bug that caused one to not
disappear (on MacOSX at least).
2015-12-26 16:25:10 +09:00
Neil Booth c298860e11 A fix and cleanups for hardware wallets 2015-12-26 12:02:19 +09:00
Neil Booth a58c19d7c0 Clean up and fix account adding
As per BIP44, 20 addresses are checked for transactions, not just the
first one.
Show the last account only if used or named.
If all accounts are used, prompt for password to create new one.

Fixes #1128
2015-12-25 23:34:04 +09:00
ThomasV fb8f9e55ef Cleanup main script, with semantic changes:
The --offline flag applies only to GUI.
Commands must use the daemon if a daemon is running, otherwise they are run offline.
Commands that only require the wallet do not have the require_network flag.
2015-12-23 15:59:32 +01:00
ThomasV 8bcd132423 Merge branch 'master' of git://github.com/spesmilo/electrum 2015-12-23 10:54:45 +01:00
ThomasV acbe67fd1f separation between RPC and non-RPC commands. 2015-12-23 10:54:31 +01:00
Neil Booth 9484b6371f More modality fixes and cleanups 2015-12-23 18:31:36 +09:00
Neil Booth 72fdf0cd21 Better error when opening a non-wallet file
Also window modality fixes for __init__.py
2015-12-23 13:54:43 +09:00
Neil Booth e1c0298fc2 Write the wallet less often
This should speed up synchronization / restoration of large wallets.
Wallets are written only when they switch to up_to_date state, or
when stop_threads() is called when closing the daemon, or when
a command line command finishes.
2015-12-20 15:47:46 +09:00
Neil Booth 0a3d74de8f Avoid index-out-of-range
Also add sanity assertion
2015-12-20 12:19:44 +09:00
Neil Booth 25a2ceda23 Fix copyright. 2015-12-20 12:06:23 +09:00
Neil Booth 5c3a6db445 Fix negative amounts assertion
Change amounts could be negative after deducting the cost of the extra
change output; floor them at zero.  Move the assertion to the main
code.  Simplify rounding logic.
2015-12-19 13:44:12 +09:00
ThomasV 3bed2e3106 don't wait for wallet sync in rpc commands; instead, show wallet status in status command 2015-12-17 17:54:49 +01:00
ThomasV 026f9312a7 fix more type errors caused by jsonrpc (parsing floats and transactions) 2015-12-16 20:17:20 +01:00
ThomasV b3ef2249b5 add more features to settings dialog 2015-12-16 11:53:37 +01:00
ThomasV 30ace570d3 kivy: choice_dialog and load_wallet_by_name 2015-12-16 08:57:47 +01:00
ThomasV 9d3162b1a1 simplify get_label 2015-12-15 12:52:30 +01:00
ThomasV 6ad3f47640 don't rewrite index.html everytime 2015-12-15 12:10:25 +01:00
ThomasV 679efe2a66 don't use floats because of rounding errors 2015-12-15 11:33:04 +01:00
Neil Booth cead9cd7c6 Ensure zeroes is always non-empty. 2015-12-14 07:45:01 +09:00
ThomasV f30149ad49 fix #1579 2015-12-13 06:33:06 +01:00
Kirill Fomichev d344ee0474 Small blockchain changes 2015-12-12 18:37:18 +03:00
Neil Booth 06eb3142c4 Oldest First 2015-12-12 19:01:14 +09:00
Neil Booth 52fc739052 Update default chooser name too. 2015-12-12 18:39:03 +09:00
Neil Booth 1c528af433 Description tweaks.
Mention loss of priority, and rename Classic to Oldest First.
2015-12-12 18:32:24 +09:00
Neil Booth 36aaad392d Fix docstring display. 2015-12-12 18:11:07 +09:00
Neil Booth 2763b0feea Improved change handling for Privacy chooser
Breaks up large change in such a way as to make it
unclear what the real send might be.

Fixes #1203
2015-12-12 11:53:17 +09:00
Neil Booth ea49e8dc96 Remove unneeded buckets for Privacy coin chooser
Commonize the code with the classic chooser and simplify.
2015-12-12 10:12:46 +09:00
ThomasV 0cef063ee2 add payment requests to kivy 2015-12-11 15:21:21 +01:00
ThomasV 2a1fbf01fe simplify blockchain.py 2015-12-11 12:37:40 +01:00
ThomasV 81f070c83b fix bug in get_target 2015-12-11 10:14:01 +01:00
ThomasV 4112e2c3fa Merge pull request #1558 from fanatid/spv
Improve get_target
2015-12-11 10:09:11 +01:00
ThomasV b7cef8dd58 follow up to 74a9e2296c 2015-12-10 09:52:00 +01:00
Neil Booth 75b3ecee49 Add coin chooser to try and minimize loss of privacy. 2015-12-09 22:20:23 +09:00
ThomasV de964f4033 plugins: on_close method 2015-12-09 09:41:24 +01:00
ThomasV 6770834d06 daemon: use available port 2015-12-08 10:55:34 +01:00
ThomasV becfe13df2 decrease daemon timeout 2015-12-07 18:42:12 +01:00
ThomasV 9ec4cbeed1 fix issue #1572 2015-12-06 13:32:50 +01:00
Neil Booth 50dcee69d0 Clean up imports in daemon.py 2015-12-05 21:38:20 +09:00
Neil Booth 03b4868bf8 Handle JSON RPC server timeouts differently
Prior method was causing issues on Python 2.7.10 on DragonFlyBSD at
least.
2015-12-05 21:30:37 +09:00
ThomasV 74a9e2296c separate Network and Plugins 2015-12-03 11:18:10 +01:00
ThomasV deefd74c37 labels sync for kivy 2015-12-01 17:29:24 +01:00
ThomasV afae9a097e add php example 2015-12-01 09:42:47 +01:00
ThomasV 95393656aa rename command: notify 2015-12-01 08:58:00 +01:00
Neil Booth 3eca419ef3 Fix typo.
One character makes all the difference.
2015-11-30 23:47:14 +09:00
ThomasV 9b5b9849d7 add watchaddress command 2015-11-30 10:54:15 +01:00
ThomasV 3c11c63289 fix daemon: don't oad wallet if there is a gui 2015-11-30 10:23:38 +01:00
ThomasV 4682d95a76 merge jsonrpc gui and daemon 2015-11-30 10:09:54 +01:00
Neil Booth e302dbc71c Move debug output to end of function. 2015-11-29 18:10:17 +09:00
Neil Booth 9a6dcf7b1e Use bucketing to choose coins
Bucketing is generalization of coin chooser logic that makes it easy
to implement other algorithms.

- Put core coin chooser functionality in base class.
- Specialize derived class to implement classic electrum algorithm of
  oldest coins first.  One bucket per output.

No intended change in behaviour.
Coin chooser now sorts the coins as it wants; remove redundant sorting
from get_spendable_coins().
2015-11-29 17:59:36 +09:00