- COIN and NET strip surrounding whitespace
- new environment variable RPC_HOST, similar to HOST, but
for RPC. Permits fine-grained control of which addresses
the RPC server listens on.
- HOST and RPC_HOST strip surrounding whitespace from hostnames
and IP addresses
- tests and documentation updated to match
* Construct unpacking functions for byte format up front to save time
wasted on parsing format string every iteration.
* Store length ahead of time as the overhead adds up.
* Reduce object attribute lookups in hash functions.
* Clean up lib pkg API changes. Unit test new "public" API members.
Underscore prefix for internal hash module funcs. Make bytes.fromhex a
public function.
* Document recent performance findings.
- make a clean split between the Cash and Segwit flavours of bitcoin
by giving them their own COIN names. They can then both have a NET
of mainnet.
- The previous Bitcoin COIN names no longer exist, and the env var is
now mandatory, so everyone will need to set COIN and NET appropriately
for their flavour of bitcoin and mainnet or testnet.
It turns out clients pass 0.10 instead of 1.0 as the protocol version.
Distinguish some handlers for 1.0 and 1.1 protocols.
Log protocol version request
Add tests of new library function
Based on #215 by JustinTArthur.
- Accept EVENT_LOOP_POLICY of uvloop
- Move initilisation from electrumx_server to controller
- SocksProxy now requires a loop
- Update tests
* Fix formatting
* Refactor daemons
Replaced FujiDaemon with FakeEstimateFeeDaemon that simulates estimate
fee calls and provide the same functionality.
Removed the parameter False for LegacyRPCDaemon's getblock RPC call as
it is not needed.
* Fix Crown coin P2SH_VERBYTES and add REORG_LIMIT
Explicitely set the local IP for outgoing connections, if we're listening
on only one Hostname or IP (of a multi-IP machine). This makes sure our
peers see our outgoing connections coming from the same IP that we're
listening on when we have a specific HOST= configured.
For machines with more than one IP this avoids source-destination
mismatch errors when advertizing our peer. Resolveskyuupichan/electrumx#225
Fixes the issue whereby notifications weren't sent as long as new blocks
kept coming in. Now a new height notification, with an appropriate mempool
update, is sent after each batch of blocks is processed.