Commit Graph

721 Commits

Author SHA1 Message Date
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
Neil Booth 98bea614d8 Implement BIP-LI01.
No more need to randomly place change.
2015-06-06 22:25:40 +09:00
ThomasV ab60da89ac Add a help group for config variables. Change name of ssl variables 2015-06-03 11:34:52 +02:00
ThomasV fb6a74e034 fix typo 2015-06-02 16:49:21 +02:00