ThomasV
b0277d5426
blockchain: size method, various fixes
2017-07-17 08:44:09 +02:00
ThomasV
43c5657cb6
blockchain: parent pointer and recursive methods
2017-07-15 17:20:06 +02:00
ThomasV
cf84068fdb
blockchain fixes
2017-07-15 13:51:40 +02:00
ThomasV
37143fd628
fix blockchain offset
2017-07-14 06:20:05 +02:00
ThomasV
ba2211f52e
network dialog: refresh display on each new header
2017-07-13 17:23:24 +02:00
ThomasV
bf7deaa1fb
remove blockchain fork detection threshold
2017-07-13 16:23:41 +02:00
ThomasV
e6116db565
network: minor fix
2017-07-13 09:31:27 +02:00
ThomasV
73b023e967
update network settings dialog of the kivy GUI
2017-07-11 18:04:33 +02:00
ThomasV
9b7102aed1
make fork_threshold configurable, fix backward mode
2017-07-08 16:45:09 +02:00
ThomasV
680e9a5552
network: go back if cannot connect during catch_up
2017-07-08 16:18:37 +02:00
ThomasV
568c14ca78
Refactor Network and Blockchain dialogs in qt and kivy
2017-07-08 11:38:32 +02:00
ThomasV
6b872b68bd
hardcode another testnet server
2017-07-04 13:03:31 +02:00
ThomasV
2055fce087
network dialog: add menu actions to blockchains list
2017-07-04 11:35:04 +02:00
ThomasV
a7679debd1
fix #2533
2017-06-30 13:00:06 +02:00
ThomasV
8285bc458f
network dialog: show servers in blockchain tab
2017-06-23 10:36:49 +02:00
ThomasV
6931ffada5
fix callbacks when switching to another server
2017-06-22 14:47:05 +02:00
ThomasV
ca220d8dbb
Detect blockchain splits and validate multiple chains
2017-06-21 09:48:31 +02:00
ThomasV
1ee70f798e
fix: reorgs
2017-05-23 14:51:44 +02:00
ThomasV
63f14f6ab2
fix: request chunk at next_height
2017-05-23 07:58:40 +02:00
ThomasV
ac77c9b9bd
catch-up block headers from a single interface at a time
2017-05-19 12:16:21 +02:00
ThomasV
6321b14f9f
Locate blockchain connection point with binary search
2017-05-13 11:19:36 +02:00
ThomasV
6afc11208d
spv: keep track of header requests made by each interface
2017-04-20 10:59:30 +02:00
ThomasV
db13cf965c
fix #2347 and return indentation
2017-04-02 04:36:05 +02:00
ThomasV
31fc9b78af
keep connection open with a manually selected server, even if they fail passing the checkpoint
2017-03-31 12:04:29 +02:00
ThomasV
d371e1c807
network: request checkpoint when opening a new connection
2017-03-29 17:21:18 +02:00
ThomasV
59b0b51f24
add proxy settings to kivy GUI
2017-03-27 18:59:48 +02:00
ThomasV
59bc220856
fix auto-connect: do not use a random interface
2017-03-26 20:22:30 +02:00
Daniel Aleksandersen
b7801d0374
Tighten directory permissions
2017-03-24 21:50:31 +01:00
ThomasV
dd0b018a35
add configurable checkpoint to blockchain verification; use genesis as default
2017-03-23 11:58:56 +01:00
Eagle[TM]
f9bb74077e
Update and add servers to default list; add schedule for phase-out of e-s
2017-03-20 00:56:27 +01:00
ThomasV
8e90d6a4e5
fix #2292
2017-03-15 12:21:26 +01:00
ThomasV
e78531d913
follow up 8babd3e986
2017-03-12 19:25:49 +01:00
Eagle[TM]
8babd3e986
Update default server list - make more use of DEFAULT_PORTS
2017-03-12 17:01:25 +01:00
shsmith
7ff5681010
fix #2204
...
avoid exception in close_interface when interface.server is not in
self.interfaces
2017-03-06 07:53:43 -08:00
ThomasV
ed2db4be80
Merge pull request #2239 from shsmith/master
...
fix #2204
2017-03-06 12:30:27 +01:00
shsmith
4109fd9eb2
request fees, peers and banner before address subscriptions
...
a wallet with many address subscriptions may time out on address
subscriptions before fees are received because fees were requested last
2017-03-04 08:42:46 -08:00
shsmith
1e25af7f0d
fix https://github.com/spesmilo/electrum/issues/2204
2017-03-04 08:38:14 -08:00
Neil Booth
8888a50549
Add support for BU's nolnet
...
Also update testnet servers
Add missing self. in print_error call
2017-03-04 11:01:32 +09:00
shsmith
849a14554b
report fee_estimates to verbose log
...
similar to how relayfee is logged
2017-03-01 15:10:03 -08:00
ThomasV
9c2d12923a
fix: interface.close
2017-02-28 11:25:05 +01:00
Johann Bauer
9318b410bd
Allow using a SOCKS5 proxy with authentication
2017-02-23 22:35:41 +01:00
Johann Bauer
2c7ab64e83
Always include default servers in the server list
2017-02-17 15:41:50 +01:00
ThomasV
3a64ec0f2e
Initial segwit support (testnet only)
2017-01-25 21:42:15 +01:00
ThomasV
29e2570d3d
prevent busy looping
2017-01-09 16:36:05 +01:00
ThomasV
a2e7fc32ef
Add fee slider class with network callback.
2017-01-09 12:36:15 +01:00
ThomasV
1358bebd37
network: do not wait for headers file on startup
2017-01-07 23:44:06 +01:00
ThomasV
d042d6e970
initial testnet support (petrkr)
2017-01-07 16:58:59 +01:00
ThomasV
9138cf3cb8
remove deprecated protocols from DEFAULT_PORTS
2017-01-07 15:59:09 +01:00
Eagle[TM]
a5dad77675
Update default servers
2016-12-26 23:07:52 +01:00
ThomasV
8249f5ab67
init_headers in daemon thread, and fix #1996
2016-10-24 14:57:02 +02:00
Eagle[TM]
7933448ec7
network: Update default server list
2016-09-04 14:36:11 +02:00
ThomasV
b6393cbdf2
display 'low fee' in tx dialog
2016-06-15 13:31:24 +02:00
ThomasV
f2d2d61894
add expected confirmation time to tx dialog
2016-06-07 17:12:31 +02:00
ThomasV
bbe7b277d2
call jnius.detach on thread stop
2016-06-04 12:59:01 +02:00
ThomasV
2cf4795250
dynamic fees: define fee levels using expected confirmation times
2016-05-31 20:26:09 +02:00
ThomasV
753a28b452
set timeout to 30s for synchronous operations
2016-03-20 13:25:24 +01:00
ThomasV
af780e7519
Default auto_connect to True. In Qt, the question is asked by the wizard
2016-03-08 10:00:47 +01:00
ThomasV
54df0b2845
follow up previous commit
2016-02-25 08:59:02 +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
bd5effb1b8
follow up 6f72fa4
2016-02-21 17:46:56 +01:00
ThomasV
6f72fa4e94
try to fix issue #1682
2016-02-21 17:42:33 +01:00
ThomasV
04c7d2b455
add 'donate to server' menu item
2016-02-15 16:17:07 +01:00
ThomasV
4dd479cf59
server_is_lagging: return True if no height
2016-02-15 15:58:08 +01:00
Neil Booth
371f8d6dc3
network: gracefully handle EINTR in select syscall
2016-01-16 21:14:14 +09:00
ThomasV
da8fce1914
if available, use relayfee from server instead of hard coded value
2016-01-14 16:06:22 +01:00
Eagle[TM]
2c797cd75b
Update default server list
2015-12-30 14:47:40 +01:00
ThomasV
9ec4cbeed1
fix issue #1572
2015-12-06 13:32:50 +01:00
ThomasV
74a9e2296c
separate Network and Plugins
2015-12-03 11:18:10 +01:00
ThomasV
90a2a049f4
network fix: callbacks were not called
2015-11-27 11:30:14 +01:00
ThomasV
042f8ef832
network: cache subscription responses
2015-11-26 11:26:01 +01:00
ThomasV
43df795b1f
network: separate callbacks from unanswered_requests
2015-11-26 10:57:43 +01:00
ThomasV
2934fd17be
fix websockets
2015-11-25 10:32:46 +01:00
Neil Booth
ae4cfc9f0b
Unregister network callbacks from QT gui
...
Rework the callback system in QT to make this easy, and avoid
leaking window references that prevent the window from being
GC-ed on close
2015-11-13 23:36:29 +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
6aefaf7b3e
populate network.connecting before the thread is started (fixes KeyError in self.connecting.pop)
2015-10-17 07:07:10 +02:00
Neil Booth
58bd655f1d
In debug mode, show every queued request
2015-09-12 12:13:42 +09:00
Neil Booth
fb5e8068ce
Simplify following on from prior dead code removal
2015-09-12 11:25:14 +09:00
Neil Booth
f9547a194e
Remove more dead code
...
As everything is in-process now, nothing sends
"network.*" messages.
2015-09-12 11:18:11 +09:00
Neil Booth
fe2e731a70
Remove dead code
2015-09-12 10:54:20 +09:00
Neil Booth
3746050fe6
Subscribed address fix
...
Add an addr to the subcribed address set on receiving a response,
not on sending a request.
2015-09-10 13:32:00 +09:00
Neil Booth
cbf9052dae
Remove address caching
2015-09-10 12:57:04 +09:00
Neil Booth
b14aae5ebc
Clear self.interface when switching
...
When switching and the interface isn't immediately available,
we should clear self.Interface as otherwise requests will
still be going to it.
2015-09-09 22:13:09 +09:00
Neil Booth
6f1367fea6
Unify message IDs between network and interfaces
...
Previously network.py had its own idea of request IDs,
and each interface had its own which was sent on the wire.
The interface would jump through hoops to translate one
to the other.
This unifies them so that a message ID is passed when
queueing a request, in addition to the method and params.
network.py is now solely responsible for message ID management.
Apart from being simpler and clearer, this also should be faster
as there is much less data structure manipulation and rebuilding
happening.
2015-09-09 21:00:25 +09:00
Neil Booth
abee263710
Remove obsolete server from DEFAULT_SERVERS
2015-09-07 10:39:55 +09:00
Neil Booth
da5c18b2f9
Be patient whilst connecting
...
On startup we make several connections simultaneously. Socket
maintenance code checks if we're not connected, and if not
switches to a connected interface if auto_connect.
Unfortunately this meant that we frequently didn't reconnect to
the prior good server on startup, because some other connection
would happen first and this code would decide to switch to it.
Instead, only switch if a connection attempt is not in progress.
If that times out at the O/S level the switch will happen.
2015-09-06 20:03:43 +09:00
Neil Booth
b5f986ee56
Torwards sane signalling for exchange_rate plugin
2015-09-05 21:47:35 +09:00
Neil Booth
6c69849be9
Fix uninitialized var from select merge
2015-09-02 13:50:25 +09:00
Neil Booth
cdcd4d7215
Fix 'tuple' object has no attribute 'copy'
...
Occurred when switching interfaces and there were unanswered
requests that need resending. This bug isn't new; it's been
there since at least 3rd June.
2015-09-02 11:56:53 +09:00
Neil Booth
119aa5bf2e
Move message so it doesn't repeat when connecting
2015-09-01 17:30:22 +09:00
Neil Booth
72f429c353
Remove unused callback
2015-09-01 14:41:06 +09:00
Neil Booth
a5e0265010
Make exchange rate plugin a network thread job
...
This fixes a lot of thread error noise when closing down electrum.
2015-08-31 20:33:39 +09:00
Neil Booth
2ee506ac03
Fix typo.
2015-08-31 14:05:38 +09:00
Neil Booth
2d05e7d891
Merge the network and network_proxy
2015-08-31 12:00:38 +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
Neil Booth
49a48d52ac
Use select.
2015-08-22 14:03:08 +02:00
ThomasV
713fa00d86
fix estimatefee for daemon
2015-08-07 10:54:32 +02:00
ThomasV
43880d452e
dynamic fees
2015-08-05 15:45:28 +02:00
Eagle[TM]
4578777c29
network: Update default servers
2015-07-10 19:35:02 +02:00