Commit graph

924 commits

Author SHA1 Message Date
Neil Booth
f710d872c7 When using labels plugin write wallet once
Poor hook coupling would cause the wallet to be written
twice unnecessarily when using the labels plugin and changing
a label
2015-09-10 22:29:25 +09:00
Neil Booth
886192aba7 Make trustedcoin.py multi-window compatible 2015-09-09 17:27:58 +09:00
Neil Booth
39615333c0 Attribute more diagnostic messages 2015-09-06 22:04:44 +09:00
Neil Booth
1171a25815 Genericize plugin handling of thread jobs
Move it to the Plugins class so all plugins get it for
free.
2015-09-05 17:21:28 +09:00
Neil Booth
89fbda30e0 Labels plugin now working for multiple windows 2015-09-04 17:38:14 +09:00
ThomasV
9d76bf6828 temporary fix wallet constructors 2015-09-02 14:37:40 +02:00
Neil Booth
7a55d02654 Fix 992c70a688
This works for ordinary wallets at least; cannot test hardware.
But after staring for ages I think it's right.
2015-09-02 21:27:12 +09:00
ThomasV
992c70a688 detect available hardware wallets before listing them in wizard 2015-09-02 13:08:06 +02:00
Neil Booth
351272f0b6 Small optimization for large wallets
Previously the verifier job would scan all transactions in
unverified_tx each time it ran.
Nothing was ever removed from this map; it would essentially
be the full set of transactions.
As the job runs about 10 times a second, for a wallet with 500 txs
this would be 5,000 useless loops a second.
This patch makes unverified_tx be simply the set of confirmed
transactions that haven't yet been verified.  txs are added once
confirmed, and removed once verified.  Hence it will almost always be
empty.
2015-08-28 12:39:19 +09:00
Neil Booth
478bde8afa Access to unverified_tx no longer needs a lock
Once the proxy thread jobs are created only they access this,
and they all run under the proxy thread, so there is no contention.
2015-08-28 11:10:50 +09:00
ThomasV
578a83fa30 show error message raised during sign_transaction. see issue #1422 2015-08-27 08:22:02 +02:00
Neil Booth
b64c42b1eb Make the verifier a thread job instead of a thread
The verifier, like the synchronizer, now runs as part of the
network proxy thread.
2015-08-26 17:07:36 +09:00
Neil Booth
01491dd1d0 Have network_proxy use ThreadJob framework
Rename WalletSynchronizer to Synchronizer so that diagnostic messages,
which are based on class name, still refer to Synchronizer.
2015-08-26 16:50:40 +09:00
ThomasV
bfae04e6f0 Improved in network callbacks:
* Pass arguments
 * Don't redraw history when a tx is verified.
 * Fix new tx notifications.
2015-08-16 11:36:23 +02:00
ThomasV
e0939348c3 minimize calls to estimated_fee 2015-08-15 12:31:57 +02:00
ThomasV
6232a0b76c speedup fee computation when collecting small inputs 2015-08-15 10:02:47 +02:00
ThomasV
d69da1ef43 add/remove transaction: remove unused tx_height parameter 2015-08-14 15:30:00 +02:00
ThomasV
6b87256795 sign tx with empty scriptSig inputs 2015-08-07 17:11:42 +02:00
ThomasV
714445aba8 fix: wallet.is_used 2015-08-06 19:19:25 +02:00
ThomasV
43880d452e dynamic fees 2015-08-05 15:45:28 +02:00
ThomasV
e9f5e6866d check www dir on daemon start 2015-07-25 12:25:47 +02:00
ThomasV
3da148f406 use local copy of javascript files 2015-07-24 12:36:08 +02:00
ThomasV
41d9c94821 don't add bip70 suffixes 2015-07-22 16:00:08 +02:00
ThomasV
8960b16e09 more sanitization 2015-07-22 15:28:43 +02:00
ThomasV
acbd434f76 cleanup request signing 2015-07-22 09:06:03 +02:00
ThomasV
a6c65b8997 change internal format of requests 2015-07-21 12:26:37 +02:00
ThomasV
380e072842 fix bug with import_key 2015-07-18 11:00:41 +02:00
ThomasV
da55d9ed6e payment requests: cmdline fixes 2015-07-11 21:09:56 +02:00
ThomasV
cb2bc54f96 store and display signatures of own requests 2015-07-09 14:15:30 +02:00
ThomasV
0368a2cd5e fix bug from #1281 2015-07-05 18:16:33 +02:00
ThomasV
b0f7411a0a check and fix history on startup 2015-07-05 17:29:41 +02:00
ThomasV
e2c19ff871 fix #1344 2015-07-05 16:19:44 +02:00
Neil Booth
930304e46b Remove apparently dead code. 2015-07-03 13:57:42 +09:00
ThomasV
65e7667eba build reverse history index, to know when a transaction can be removed 2015-07-02 16:07:04 +02:00
ThomasV
ccd07c6a80 Merge branch 'synchronizer-unthread' of https://github.com/kyuupichan/electrum into kyuupichan-synchronizer-unthread 2015-07-02 09:20:51 +02:00
ThomasV
0c37009cdb fix is_address (forgot p2sh) 2015-07-02 08:53:17 +02:00
Michael Wozniak
523aa7c380 update restore multisig to add type 2015-06-27 16:12:15 -04:00
ThomasV
765ef338ec fix multisig seed detection 2015-06-27 21:53:55 +02:00
ThomasV
56b3c98332 generic m of n multisig 2015-06-27 12:43:29 +02:00
ThomasV
74d26f5bdc better error message 2015-06-15 10:52:03 +02:00
ThomasV
00af3b394b Merge pull request #1280 from kyuupichan/BIP-LI01
Implement BIP-LI01.
2015-06-14 08:08:55 +02:00
ThomasV
d09a10e0f7 fix is_used for unmatured tx 2015-06-13 16:40:50 +02:00
ThomasV
10740470cc fix requests_dir bug 2015-06-12 20:18:06 +02:00
ThomasV
1fbbd5d65d require network to show request status 2015-06-12 09:58:29 +02:00
ThomasV
317a9de71d check amount before calling make_payment_request 2015-06-11 12:32:52 +02:00
Neil Booth
e8db8983ec Make the synchronizer not a thread.
The synchronizer's work is done from the network proxy's main loop.

A minor problem with the old synchronizer was that it considered itself
out of date if the network was out of date.  This was too generic: the
network can have pending requests unrelated to the synchronizer.  This
resulted in the synchronizer often unnecessarily flipping the wallet
between up-to-date and not-up-to-date, and causing unnecessary calls
to wallet.save_transactions().  This was observable when opening the
network dialog box: frequently just opening it would cause a wallet
status change and transaction flush, simply because the network dialog
sends a get_parameters() request.  This rework of the synchronizer does
not have that issue.
2015-06-09 08:41:31 +09:00
ThomasV
8995cdbf14 rename fields: 'time' -> 'timestamp', payment_requests 2015-06-08 13:36:35 +02:00
ThomasV
357c405ac6 fix publish_request 2015-06-08 13:21:13 +02:00
ThomasV
9bd94e5062 refactor payment requests 2015-06-08 12:51:45 +02:00
ThomasV
48e53498db improve requests 2015-06-07 18:44:33 +02:00