Neil Booth
063f1b2eff
Move block_get_header and estimate_fee to session
2018-07-17 14:45:55 +08:00
Neil Booth
ca777ed427
Move three more methods from the controller to session
2018-07-17 11:56:26 +08:00
Neil Booth
3dbc10bca0
Move address handlers from controller to session
2018-07-17 11:44:15 +08:00
Neil Booth
4f99f254ea
Move scripthash handlers from controller to session
2018-07-17 11:32:42 +08:00
Neil Booth
739bb687fc
Convert PROTOCOL_MIN, PROTOCOL_MAX to tuples
2018-07-17 10:59:41 +08:00
Neil Booth
c790fd567c
Move things from Controller to session class
...
which better belong there:
- PROTOCOL_MIN, PROTOCOL_MAX
- server_features()
- server_version_args()
- inline protocol_tuple()
2018-07-17 09:33:33 +08:00
Neil Booth
fdb34e7d25
Store session's protocol version as a tuple, not string
2018-07-17 09:16:57 +08:00
Neil Booth
5ba5d05add
Protocol 1.4: only accept a single server.version message
...
- remove unused self.client_version
- coerce client_name to a str
2018-07-17 09:16:26 +08:00
Neil Booth
382fc5ed44
Improve logging of client version requests
2018-07-16 21:25:50 +08:00
Neil Booth
8630c9136c
Have the header merkle cache handle reorgs
...
Cleanest to move the mc_cache to the block processor
2018-07-16 20:54:55 +08:00
Neil Booth
e5ea1c10e2
Update docs for raw headers.
2018-07-16 19:29:04 +08:00
Neil Booth
362499778a
Prepare 1.6pre1
2018-07-16 19:18:36 +08:00
Neil Booth
061cac51a8
Implement merkle proof for blockchain.block.headers
2018-07-16 17:32:49 +08:00
Neil Booth
46d8e0c608
Implement merkle proofs for blockchain.block.header
2018-07-16 16:02:55 +08:00
Neil Booth
20884170e6
Remove raw argument to blockchain.headers.subscribe
2018-07-16 15:00:52 +08:00
Neil Booth
0ee27970af
Update documentation for protocol 1.4
2018-07-16 14:49:14 +08:00
Neil Booth
d390b38acf
Add cache truncation and tests
2018-07-16 12:42:53 +08:00
Neil Booth
26d8026938
Increase merkle cache test coverage to 100%
2018-07-16 09:53:43 +08:00
Neil Booth
4168341857
Implement a markle cache with tests
2018-07-16 09:36:32 +08:00
Neil Booth
997a1be377
Prepare 1.5.2
2018-07-15 08:05:09 +08:00
Neil Booth
73a46df17f
Remove hash_to_str
2018-07-14 21:48:58 +08:00
Neil Booth
3c3a1b7017
Fix thinko in prior
...
Rename function to prevent similar mistakes in future
Also hash_to_str -> hash_to_hex_str
2018-07-14 21:29:11 +08:00
Neil Booth
c22b7d455c
Have server code use merkle library
2018-07-14 20:11:34 +08:00
Neil Booth
af45363eeb
Add merkle library with tests
2018-07-14 19:44:10 +08:00
Neil Booth
70f8d7c4b9
Partial reversion of 2cb89814b6
...
Fixes #523
BU, XT and other coins based on older Core code require integers
not booleans
2018-07-14 14:24:52 +08:00
Neil Booth
e1e4129e17
Prepare 1.5.1
2018-07-13 18:13:09 +08:00
Neil Booth
27f1c2480d
Update BCH peers
2018-07-13 18:06:15 +08:00
Neil Booth
d2e8fe7fa1
Update peer discovery code for protocol 1.3
2018-07-13 17:57:00 +08:00
Neil Booth
9d02b03ab1
Log Python interpreter version on startup
2018-07-13 16:41:01 +08:00
Neil Booth
cd85a49a47
Use our own logging, not aiorpcX's
2018-07-13 09:26:37 +08:00
Neil Booth
02fb534176
Don't import version in setup.py
...
Fixes #520
2018-07-13 08:52:10 +08:00
Neil Booth
9f43fb8eb8
Tweak setup.py
2018-07-12 19:39:13 +08:00
Neil Booth
2cfcbc0b7e
Remove some old history from the changelog
2018-07-12 16:41:38 +08:00
Neil Booth
70c81abc40
Add a note to 1.5 release notes
2018-07-12 16:39:04 +08:00
Neil Booth
40db8836ce
Minor doc tweaks
2018-07-12 16:33:32 +08:00
Neil Booth
8a4f9e20ac
Prepare 1.5
2018-07-12 16:03:07 +08:00
Neil Booth
d51f98e739
Create and use class_logger() utility function
2018-07-12 15:51:42 +08:00
Neil Booth
9534a83257
Log class name only from server script
...
Based on #518 by eukreign
2018-07-12 15:32:45 +08:00
Neil Booth
30680bfb37
More doc updates
2018-07-12 11:49:49 +08:00
Neil Booth
3063dec4cc
Document removed metohds in new file
2018-07-12 11:30:42 +08:00
Neil Booth
7c82d1fe5f
blockchain.headers.subscribe: raw defaults to True in 1.3
...
Update docs for this and other omissions.
2018-07-12 11:23:18 +08:00
Neil Booth
029d94388f
Update .gitignore
2018-07-12 11:03:42 +08:00
Neil Booth
7911f0d525
Remove blockchain.address.* methods from protocol 1.3+
2018-07-12 11:00:57 +08:00
Neil Booth
26206fd3e4
Drop the .py suffix from electrumx_server & electrumx_rpc
2018-07-12 01:22:54 +08:00
Neil Booth
4171e58f8a
Use version directly
...
readthedocs is lame and uses python3.5 which cannot parse the
files
2018-07-12 00:53:59 +08:00
Neil Booth
c35ac6d9bb
Deprecate blockchain.block.get_header as of protocol 1.3
...
Use new blockchain.block.header instead.
2018-07-12 00:31:49 +08:00
Lex Berezhny
71b3d30842
Server listening ( #516 )
...
* + server_listening Event in Controller (to know when server has fully started)
2018-07-11 08:50:10 +08:00
Lex Berezhny
f8ebcf35b4
Env accepts custom Coin class ( #517 )
...
* + support for passing an actual coin class to Env()
* unit test for Env() accept coin class
* doc string explaining optional Coin argument to Env and assert to make sure a coin is a Coin
2018-07-11 08:48:57 +08:00
Neil
c28b5af309
Export Controller and Env from the package ( #515 )
2018-07-10 14:17:49 +08:00
Lex Berezhny
45111898b3
make it easier to configure logging for electrumx ( #514 )
...
* make it easier to configure logging for electrumx
2018-07-10 11:17:42 +08:00