* eth/downloader: bypass peer validation if remote peer is far away
* eth/downloader: parameterise threshold, fix condition
* eth: add tests for bypassing validation
* eth/downloader: declare max validation threshold instead of using direct value
* address comments
* simplify
* eth, miner: fix enforcing the minimum miner tip
* ethclient/simulated: fix failing test due the min tip change
* accounts/abi/bind: fix simulater gas tip issue
Co-authored-by: Péter Szilágyi <peterke@gmail.com>
* chg: update deps / fix root folder for docker integration tests
* chg: bump bor version
* chg: bump deps
* chg: bump deps and adapt geth cmd verkle
* chg: update go version in GH CIs
* chg: update go version in makefile, travis and dockerfile
* chg: fix tests
* eth, core: track block announcement and import timings
* eth: track total delay
* eth: add more context and prefix in logs
* eth/fetcher: fix invalid tracking of received at time
* put logs behind log.enable-block-tracking flag
* fix lint
* improve logging
* add comments
* add comments
Currently, geth's will return `[]` for any `len(topics) > 4` log filter. The EVM only supports up to four logs, via LOG4 opcode, so larger criterias fail. This change makes the filter query exit early in those cases.
Currently, one can use the "withLogs" parameter to include logs in the
callTracer results, which allows the user to see at which trace level
was each log emitted.
This commit adds a position field to the logs which determine
the exact ordering of a call's logs and its subcalls. This would
be useful e.g. for explorers wishing to display the flow of execution.
Co-authored-by: jsvisa <delweng@gmail.com>
This change improves GenerateChain to support internal chain history access (ChainReader)
for the consensus engine and EVM.
GenerateChain takes a `parent` block and the number of blocks to create. With my changes,
the consensus engine and EVM can now access blocks from `parent` up to the block currently
being generated. This is required to make the BLOCKHASH instruction work, and also needed
to create real clique chains. Clique uses chain history to figure out if the current signer is in-turn,
for example.
I've also added some more accessors to BlockGen. These are helpful when creating transactions:
- g.Signer returns a signer instance for the current block
- g.Difficulty returns the current block difficulty
- g.Gas returns the remaining gas amount
Another fix in this commit concerns the receipts returned by GenerateChain. The receipts now
have properly derived fields (BlockHash, etc.) and should generally match what would be
returned by the RPC API.
This change enhances the stacktrie constructor by introducing an option struct. It also simplifies the `Hash` and `Commit` operations, getting rid of the special handling round root node.
This changes fixes a bug in the fetcher, where the timeout for how long to remember underpriced transaction was erroneously compared, and the timeout never hit.
---------
Co-authored-by: Martin Holst Swende <martin@swende.se>