Commit graph

30 commits

Author SHA1 Message Date
ThomasV
305843999e Relicensing 2016-02-24 10:20:30 +01: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
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
206e38fb7c Make use of trigger_callback easier to understand 2015-11-12 16:08:37 +09:00
Neil Booth
8cc3b58364 Allow syncronizer to be GC-ed
Proper fix for #1525.
Using python's GC module, I've verified that the daemon, when running,
now releases all verifiers, synchronizers and wallets - all the resources
we care about releasing.
2015-11-12 08:40:58 +09:00
ThomasV
d82896dadf fix #1525 (part 2) 2015-11-06 18:00:19 +01:00
ThomasV
b3529147d5 fix #1525 2015-11-06 17:32:54 +01:00
Neil Booth
f5a43b8738 Warn if server is serving bad address histories 2015-09-06 19:49:35 +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
Neil Booth
a056f9804b Notify when a chunk of headers is validated
And a couple of cosmetic changes.
This should fix #1379.
2015-08-25 14:27:53 +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
fa2de58c90 redo fixes for 1324 2015-07-02 09:22:59 +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
a99c2bc9fa less verbose debug message 2015-05-05 21:00:35 +02:00
ThomasV
e3de121be9 store deserialized tx in/out in wallet file for fast computation 2015-03-30 14:10:46 +02:00
ThomasV
4ebefc6e4c standardize error messages in synchronizer 2015-03-14 09:29:44 +01:00
ThomasV
8e7ce452f6 move misplaced debug message 2015-03-14 09:27:18 +01:00
ThomasV
a4cb70649d fix synchronizer hanging when not connected. 2015-03-14 08:43:43 +01:00
ThomasV
72688a5cfa clean implementation of daemon threads 2015-03-13 23:04:29 +01:00
Tafelpoot
d9c5250a6f removed trailing whitespace and fixed indentation in history widget 2014-10-21 19:05:51 +02:00
ThomasV
71d97eeecc shorter timeouts in synchronizer, so that it terminates properly 2014-07-29 12:23:42 +02:00
ThomasV
fb0574c5a0 fix callbacks 2014-07-28 07:53:02 +02:00
ThomasV
28df27fba2 update interface.py 2014-07-28 00:13:40 +02:00
ThomasV
035ecbc7cd redo inter-thread communication using pipes 2014-07-27 17:13:46 +02:00
ThomasV
8196bc5779 adapt network dialog to daemon 2014-07-25 09:11:56 +02:00
ThomasV
09e4efc439 daemon notifications (network.status) 2014-07-24 23:17:06 +02:00
ThomasV
9ee0614edb make daemon usable with the GUI 2014-07-24 16:12:18 +02:00
ThomasV
a89abee969 Rewrite accounts and transactions: store pubkeys instead of addresses in order to avoid unnecessary derivations. 2014-07-06 21:10:41 +02:00
ThomasV
38f5deee86 use an input queue in synchronizer, so that new addresses can be created from other threads 2014-06-26 17:41:09 +02:00
ThomasV
7e0711f6ec move synchronizer class in its own file. abstract wallet class. 2014-04-30 10:32:40 +02:00