Commit Graph

11347 Commits

Author SHA1 Message Date
Felix Lange
b01dccba05 whisper/whisperv6: fix staticcheck warnings (#20328) 2019-12-30 16:11:00 -05:00
Guillaume Ballet
2153dbe8b0 .github: remove 'nonsense' from CODEOWNERS (#20329) 2019-12-30 16:11:00 -05:00
Felix Lange
88e51543e0 event: remove unused field 'closed' (#20324) 2019-12-30 16:11:00 -05:00
Felix Lange
b1e2868e36 cmd/wnode: remove uses of common.ToHex (#20327) 2019-12-30 16:11:00 -05:00
Felix Lange
736422999f ethclient: remove use of common.ToHex (#20326) 2019-12-30 16:11:00 -05:00
Guillaume Ballet
c0428c4e1f travis: deactivate arm build during push (#20321) 2019-12-30 16:11:00 -05:00
gary rong
a2ea532f68 core/rawdb: check hash before return data from ancient db (#20195)
* core/rawdb: check hash before return data from ancient db

* core/rawdb: fix lint

* core/rawdb: calculate the hash in the fly
2019-12-30 16:11:00 -05:00
Felix Lange
756ed51875 p2p/netutil: fix staticcheck warning (#20315) 2019-12-30 16:11:00 -05:00
Felix Lange
db93da53e1 cmd/ethkey: fix file permissions in changepassword command (#20313)
Found by staticcheck.
2019-12-30 16:11:00 -05:00
Felix Lange
5fd94614a4 consensus/clique: fix struct tags for status API (#20316)
Also unexport the status struct.
2019-12-30 16:11:00 -05:00
Martin Holst Swende
40a8484292 consensus/clique: add clique_status API method (#20103)
This PR introduces clique_status which gives info about the health of
the clique network.

It's currently a bit PITA to find out how a clique network is
performing, and it can easily happen that sealers drop off -- and
everything is 'fine' until one more signer drops off, and the network
suddenly halts.

The new method provides the following stats:

- Which signers are currently active, and have signed blocks in the last
  N (set to 64) blocks?
- How many blocks has each signer signed?
- What is the difficulty in the last N blocks, compared to the
  theoretical maximum?
2019-12-30 16:11:00 -05:00
Felix Lange
38888acb5f cmd/clef: fix staticcheck warnings (#20314) 2019-12-30 16:11:00 -05:00
meowsbits
efc8f80260 build: add test cmd flag -v for verbose logs (#20298)
Adds flags akin to -coverage flag enabling the test runner
to use go test's -v flag, signaling verbose test log output.
2019-12-30 16:11:00 -05:00
Guillaume Ballet
0f3164d1a6 travis: use travis_wait for both install and build (#20309) 2019-12-30 16:11:00 -05:00
Felföldi Zsolt
4f9d21d5d9 les: rename UpdateBalance to AddBalance and simplify return format (#20304) 2019-12-30 16:11:00 -05:00
meowsbits
3e06a5559b core: s/isEIP155/isHomestead/g (fix IntrinsicGas signature var name) (#20300)
* core: s/isEIP155/isEIP2/ (fix)

This signature variable name reflects a spec'd change
in gas cost for creating contracts as documented in EIP2 (Homestead HF).

https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2.md#specification

* core: s/isEIP2/sIsHomestead/g

Use isHomestead since Homestead is what the caller
and rest of the code uses.
2019-12-30 16:11:00 -05:00
Guillaume Ballet
ef276069a8 travis: remove traces and use travis_wait in ARM build (#20296)
* travis: remove debug traces

* travis: Add travis_wait to the test run

* travis: increase travis_wait time
2019-12-30 16:11:00 -05:00
Felix Lange
cb1ba11d9f build: use golangci-lint (#20295)
* build: use golangci-lint

This changes build/ci.go to download and run golangci-lint instead
of gometalinter.

* core/state: fix unnecessary conversion

* p2p/simulations: fix lock copying (found by go vet)

* signer/core: fix unnecessary conversions

* crypto/ecies: remove unused function cmpPublic

* core/rawdb: remove unused function print

* core/state: remove unused function xTestFuzzCutter

* core/vm: disable TestWriteExpectedValues in a different way

* core/forkid: remove unused function checksum

* les: remove unused type proofsData

* cmd/utils: remove unused functions prefixedNames, prefixFor

* crypto/bn256: run goimports

* p2p/nat: fix goimports lint issue

* cmd/clef: avoid using unkeyed struct fields

* les: cancel context in testRequest

* rlp: delete unreachable code

* core: gofmt

* internal/build: simplify DownloadFile for Go 1.11 compatibility

* build: remove go test --short flag

* .travis.yml: disable build cache

* whisper/whisperv6: fix ineffectual assignment in TestWhisperIdentityManagement

* .golangci.yml: enable goconst and ineffassign linters

* build: print message when there are no lint issues

* internal/build: refactor download a bit
2019-12-30 16:11:00 -05:00
Felix Lange
f3fa942f9f rpc, p2p/simulations: use github.com/gorilla/websocket (#20289)
* rpc: improve codec abstraction

rpc.ServerCodec is an opaque interface. There was only one way to get a
codec using existing APIs: rpc.NewJSONCodec. This change exports
newCodec (as NewFuncCodec) and NewJSONCodec (as NewCodec). It also makes
all codec methods non-public to avoid showing internals in godoc.

While here, remove codec options in tests because they are not
supported anymore.

* p2p/simulations: use github.com/gorilla/websocket

This package was the last remaining user of golang.org/x/net/websocket.
Migrating to the new library wasn't straightforward because it is no
longer possible to treat WebSocket connections as a net.Conn.

* vendor: delete golang.org/x/net/websocket

* rpc: fix godoc comments and run gofmt
2019-12-30 16:11:00 -05:00
Michael Forney
3c1fbf998a cmd/evm: Allow loading input from file (#20273)
Make it possible to load input from a file. Simlar to `--code` / `--codefile`, have `--input`/`--inputfile`.
2019-12-30 16:11:00 -05:00
Martin Holst Swende
cc8661707a internal/ethapi: don't query wallets at every execution of gas estimation 2019-12-30 16:11:00 -05:00
nebojsa94
d946ff04ac core/vm: fix tracer interface parameter name (#20294) 2019-12-30 16:11:00 -05:00
meowsbits
3c889e71e0 params: finish sentence in comment (#20291) 2019-12-30 16:11:00 -05:00
Guillaume Ballet
0e3e9676cb build: gather info to investigate why builds fail on ARM (#20281) 2019-12-30 16:11:00 -05:00
Guillaume Ballet
a74795357f whisper/whisperv6: fix staticcheck issues (#20288) 2019-12-30 16:11:00 -05:00
Felix Lange
6329ba896a dashboard: remove the dashboard (#20279)
This removes the dashboard project. The dashboard was an experimental
browser UI for geth which displayed metrics and chain information in
real time. We are removing it because it has marginal utility and nobody
on the team can maintain it.

Removing the dashboard removes a lot of dependency code and shaves
6 MB off the geth binary size.
2019-12-30 16:11:00 -05:00
Felix Lange
e2198a1bb6 cmd/faucet: use github.com/gorilla/websocket (#20283)
golang.org/x/net/websocket is unmaintained, and we have already
switched to using github.com/gorilla/websocket for package rpc.
2019-12-30 16:11:00 -05:00
Jorropo
a672c10630 rpc: fix typo example code (#20284) 2019-12-30 16:11:00 -05:00
gary rong
e2482ae2e3 accounts/abi/bind, cmd/abigen: implement alias for abigen (#20244)
* accounts/abi/bind, cmd/abigen: implement alias for abigen

* accounts/abi/bind: minor fixes

* accounts/abi/bind: address comments

* cmd/abigen: address comments

* accounts/abi/bind: print error log when identifier collision

* accounts/abi/bind: address comments

* accounts/abi/bind: address comment
2019-12-30 16:11:00 -05:00
Felföldi Zsolt
c255367058 les: implement server priority API (#20070)
This PR implements the LES server RPC API. Methods for server
capacity, client balance and client priority management are provided.
2019-12-30 16:11:00 -05:00
Guillaume Ballet
ff0b463113 miner: increase worker test timeout (#20268)
TestEmptyWork* occasionally fails due to timeout. Increase the timeout.
2019-12-30 16:11:00 -05:00
Kurkó Mihály
539ca8c791 dashboard: send current block to the dashboard client (#19762)
This adds all dashboard changes from the last couple months.
We're about to remove the dashboard, but decided that we should
get all the recent work in first in case anyone wants to pick up this
project later on.

* cmd, dashboard, eth, p2p: send peer info to the dashboard
* dashboard: update npm packages, improve UI, rebase
* dashboard, p2p: remove println, change doc
* cmd, dashboard, eth, p2p: cleanup after review
* dashboard: send current block to the dashboard client
2019-12-30 16:11:00 -05:00
Rick
8489a29645 p2p: fix bug in TestPeerDisconnect (#20277) 2019-12-30 16:10:58 -05:00
Guillaume Ballet
8a6bd87d40 travis: enable test suite on ARM64 (#20219)
* travis: Enable ARM support

* Include fixes from 20039

* Add a trace to debug the invalid lookup issue

* Try increasing the timeout to see if the arm test passes

* Investigate the resolver issue

* Increase arm64 timeout for clique test

* increase timeout in tests for arm64

* Only test the failing tests

* Review feedback: don't export epsilon

* Remove investigation tricks+include fjl's feeback

* Revert the retry ahead of using the mock resolver

* Fix rebase errors
2019-12-30 16:10:58 -05:00
Felix Lange
03a3783b2b p2p/enode: mock DNS resolver in URL parsing test (#20252) 2019-12-30 16:10:58 -05:00
Péter Szilágyi
92e94dc002 params: begin v1.9.8 release cycle 2019-12-30 16:10:58 -05:00
Péter Szilágyi
e00e187403 params: release Geth v1.9.7 2019-12-30 16:10:58 -05:00
Martin Holst Swende
8c2f200743 core: add blockchain test too for revert cornercase 2019-12-30 16:10:58 -05:00
Ian Norden
a87a06f445 relay receipts with the rest of the data + review fixes/changes 2019-12-30 16:10:58 -05:00
Ian Norden
7096c9c0c5 adjust buffering to improve stability; doc.go; fix notifier
err handling
2019-12-30 16:10:58 -05:00
Ian Norden
f682030eb0 review fixes; proper method signature for api; adjust service so that statediff processing is halted/paused until there is at least one subscriber listening for the results 2019-12-30 16:10:58 -05:00
Ian Norden
bed68d4c0e review fixes and fixes for issues ran into in integration 2019-12-30 16:10:58 -05:00
Ian Norden
ea34704a2c cli parameter to limit statediffing to select account addresses + test 2019-12-30 16:10:58 -05:00
Ian Norden
2cf3403b2c make state diff rlp serializable 2019-12-30 16:10:58 -05:00
Ian Norden
adf43ecd9a option to process intermediate nodes 2019-12-30 16:10:58 -05:00
Ian Norden
4e8d8129c2 make proofs and paths optional + compress service loop into single for loop (may be missing something here) 2019-12-30 16:10:58 -05:00
Ian Norden
e69ab97782 refactoring state diff service and adding api which allows for streaming state diff payloads over an rpc websocket subscription 2019-12-30 16:10:58 -05:00
Ian Norden
df1bfbae8c refactoring statediff builder and types and adjusted to relay proofs and paths (still need to make this optional) 2019-12-30 16:10:58 -05:00
Ian Norden
e18f462667 refactoring/reorganizing packages 2019-12-30 16:10:58 -05:00
Elizabeth
2b684301cf Statediff for full node (#6)
* Open a trie from the in-memory database

* Use a node's LeafKey as an identifier instead of the address

It was proving difficult to find look the address up from a given path
with a full node (sometimes the value wouldn't exist in the disk db).
So, instead, for now we are using the node's LeafKey with is a Keccak256
hash of the address, so if we know the address we can figure out which
LeafKey it matches up to.

* Make sure that statediff has been processed before pruning

* Use blockchain stateCache.OpenTrie for storage diffs

* Clean up log lines and remove unnecessary fields from builder

* Apply go fmt changes

* Add a sleep to the blockchain test

* Address PR comments

* Address PR comments
2019-12-30 16:10:58 -05:00