This commit updates geth to 1.8.17 and adds a possibility to enable metrics during compilation time.
The cascade of issues forced us to upgrade geth to 1.8.17 in order to allow enabling metrics during compilation time. 1.8.17 introduced `NodeID` refactoring and `enode` package which affected our peers pool and integration with Discovery V5.
* add verifier and test using simulated backend
* add ContractCaller
* commit simulated backend after deploy and after smart contract writes
* use bind.NewKeyedTransactor for all transactions in tests
* rename RegistryVerifier to Verifier
* initialize contract verifier if MailServerRegistryAddress config is set
* use contractAddress.Hash()
* refactoring
* use fmt.Sprintf to format contract address in logs
* fix test and lint warnings
* update Gopkg.lock
* update Gopkg.lock once more
The goal of this PR is to add an interface to verify MailServers. In this PR, MailServers are hardcoded in status-go. The next iteration will use a smart contract.
Update vendor
Integrate rendezvous into status node
Add a test with failover using rendezvous
Use multiple servers in client
Use discovery V5 by default and test that node can be started with rendezvous discovet
Fix linter
Update rendezvous client to one with instrumented stream
Address feedback
Fix test with updated topic limits
Apply several suggestions
Change log to debug for request errors because we continue execution
Remove web3js after rebase
Update rendezvous package