Skip to content

Commit

Permalink
Merge ethereum-1.9.1 (autonity#234)
Browse files Browse the repository at this point in the history
* p2p/protocols, swarm/network: fix resource leak with p2p teardown

* cmd/swarm-smoke: check if chunks are at most prox host

swarm/network: measure how many chunks a node delivers (#1358)

* swarm/chunk: add tags data type

* swarm/chunk: add tags backend to chunk package

* swarm/network: update syncing

* swarm: push tags integration - request flow

swarm/api: integrate tags to count chunks being split and stored
swarm/api/http: integrate tags in middleware for HTTP `POST` calls and assert chunks being calculated and counted correctly
swarm: remove deprecated and unused code, add swarm hash to DoneSplit signature, remove calls to the api client from the http package

* swarm-smoke: add syncDelay flag

swarm/network: add want delay timer to syncing (#1367)

swarm/network: synchronise peer.close() (#1369)

* swarm/pss: disable failing handshake test

* swarm/storage: improve instrumentation

swarm/storage/localstore: fix broken metric (#1373)

p2p/protocols: count different messages (#1374)

cmd/swarm: disable snapshot create test due to constant flakes (#1376)

swarm/network: remove redundant goroutine (#1377)

* swarm: instrument setNextBatch

swarm/storage/localstore: add gc metrics, disable flaky test

* swarm/network: measure addPeer and deletePeer to know if Kad rearranged

swarm/storage: remove traces for put/get/set (#1389)

* swarm/storage: remove traces for put/get/set

* swarm/storage: remove Has traces

* swarm/network: update syncer metrics

* core: fix import errors on clique crashes + empty blocks (#19544)

* core: fix import errors on clique crashes + empty blocks

* cosensus/clique, core: add test for the mirrored state issue

* core: address todo question wrt log count

* core: raise a louder warning for non-clique known blocks

* swarm/network/stream: add pure retrieval test (#19552)

* swarm/metrics: track runtime metrics (#19557)

* cmd/swarm: skip export test on windows builds (#19555)

* p2p/discover: fix a race where table loop would self-lookup before returning from constructor

* core: move error variable to error.go (#19560)

* move error variable to error.go

* Update error.go

Edit "Genesis" to "genesis"

* core: fix formatting error (trailing whitepace)

* les: fixed cost table update (#19546)

* les, light: implement ODR transaction lookup by hash (#19069)

* les, light: implement ODR transaction lookup by hash

* les: delete useless file

* internal/ethapi: always use backend to find transaction

* les, eth, internal/ethapi: renamed GetCanonicalTransaction to GetTransaction

* light: add canonical header verification to GetTransaction

* cmd/faucet: remove Google+ mention from web assets too

* core, eth, trie: bloom filter for trie node dedup during fast sync (#19489)

* core, eth, trie: bloom filter for trie node dedup during fast sync

* eth/downloader, trie: address review comments

* core, ethdb, trie: restart fast-sync bloom construction now and again

* eth/downloader: initialize fast sync bloom on startup

* eth: reenable eth/62 until we properly remove it

* accounts/abi: fix documentation (#19568)

* rlp: fixes for two corner cases and documentation (#19527)

These changes fix two corner cases related to internal handling of types
in package rlp: The "tail" struct tag can only be applied to the last field.
The check for this was wrong and didn't allow for private fields after the
field with the tag. Unsupported types (e.g. structs containing int) which
implement either the Encoder or Decoder interface but not both 
couldn't be encoded/decoded.

Also fixes #19367

*  p2p/discover: add support for EIP-868 (v4 ENR extension) (#19540)

This change implements EIP-868. The UDPv4 transport announces support
for the extension in ping/pong and handles enrRequest messages.

There are two uses of the extension: If a remote node announces support
for EIP-868 in their pong, node revalidation pulls the node's record.
The Resolve method requests the record unconditionally.

* swarm/metrics: collect metrics on datadir disk usage (#19576)

* swarm/storage: disable open tracing on indices (#19578)

* p2p/discover: fix crash in Resolve (#19579)

* accounts,signer: better support for EIP-191 intended validator (#19523)

* cmd, core, eth, les, node: chain freezer on top of db rework

* freezer: implement split files for data

* freezer: implement split files for data

* freezer: add tests

* freezer: close old head-file when opening next

* freezer: fix truncation

* freezer: more testing around close/open

* rawdb/freezer: address review concerns

* freezer: fix minor review concerns

* freezer: fix remaining concerns + testcases around truncation

* freezer: docs

* freezer: implement multithreading

* core/rawdb: fix freezer nitpicks + change offsets to uint32

* freezer: preopen files, simplify lock constructs

* freezer: delete files during truncation

* core/rawdb: add file lock for freezer

* all: integrate the freezer with fast sync

* all: freezer style syncing

core, eth, les, light: clean up freezer relative APIs

core, eth, les, trie, ethdb, light: clean a bit

core, eth, les, light: add unit tests

core, light: rewrite setHead function

core, eth: fix downloader unit tests

core: add receipt chain insertion test

core: use constant instead of hardcoding table name

core: fix rollback

core: fix setHead

core/rawdb: remove canonical block first and then iterate side chain

core/rawdb, ethdb: add hasAncient interface

eth/downloader: calculate ancient limit via cht first

core, eth, ethdb: lots of fixes

* eth/downloader: print ancient disable log only for fast sync

* core/rawdb: support starting offset for future deletion

* freezer: disable compression on hashes and difficulties (#14)

* freezer: disable compression on hashes and difficulties

* core/rawdb: address review concerns

* core/rawdb: address review concerns

* core, cmd, vendor: fixes and database inspection tool (#15)

* core, eth: some fixes for freezer

* vendor, core/rawdb, cmd/geth: add db inspector

* core, cmd/utils: check ancient store path forceily

* cmd/geth, common, core/rawdb: a few fixes

* cmd/geth: support windows file rename and fix rename error

* core: support ancient plugin

* core, cmd: streaming file copy

* cmd, consensus, core, tests: keep genesis in leveldb

* core: write txlookup during ancient init

* core: bump database version

* cosensus, core, eth, params, trie: fixes + clique history cap

* swarm/feeds: Parallel feed lookups (#19414)

* cmd/geth, core/rawdb: seamless freezer consistency, friendly removedb

* swarm/network: bump network id for 0.4 release (#19580)

* swarm/network: bump network id for 0.4 release

* swarm/network: bump bzz protocol version

* swarm/docs: migration document v0.3 to v0.4

* swarm/storage/feed: gofmt lookup_test.go

* core/rawdb, eth/downloader: align 64bit atomic fields

* build: disable swarm packages (#19585)

* build: disable swarm packages

* build: remove allCrossCompiledArchiveFiles; inline allToolsArchiveFiles

* build: get rid of some superfluous comments

* swarm/version: v0.4.0 stable (#19586)

* swarm/version: v0.4.1 unstable (#19587)

* accounts/abi: fix TestUnpackMethodIntoMap (#19484)

* les: avoid fetcher deadlock on requestChn (#19571)

* les: avoid fetcher deadlock on requestChn

* build: fix Launchpad typo (#19597)

* log: do not pad values longer than 40 characters (#19592)

* log: Do not pad too long values

* log: gofmt

* tests: make transaction tests run again, fix #19033 (#19529)

* tests: make transaction tests run again, fix #19033

* tests: refactor transaction tests

* core/state: unified function receiver names (#19615)

* crypto/bn256/cloudflare: checks for nil pointers in Marshal functions (#19609)

* Added checks for nil pointers in Marshal functions

* Set nil pointer to identity in GT before marshaling

* accounts, p2p, rpc: make CGO_ENABLED=0 build again (#19593)

* p2p: remove direct import of cgo-library

* accounts, rpc: more nocgo alternatives

* rpc: move unix path constant into separate file

* accounts/scwallet: address review concerns, remove copy-pasta

* accounts/usbwallet: enable the Nano X and upcoming Ledger IDs (#19623)

* eth, les: reject light client connection is server is not synced (#19616)

* eth, les: reject light client connection is server is not synced

* eth, les: rename function and variables

* les: format

* core: never delete genesis block (#19617)

* core/rawdb: keep genesis in key-value store for full sync too

* accounts/keystore: enable fallback for darwin,!cgo (#19614)

Without this, accounts/keystore fails to build for Darwin with
CGO_ENABLED=0.

* core: concurrent database reinit from freezer dump

* core: reinit chain from freezer in batches

* core/rawdb: concurrent database reinit from freezer dump

* core/rawdb: reinit from freezer in sequential order

* vendor: update go-duktape to v2.3.0

* accounts/scwallet: display PUK retry count, validate PIN/PUK length

* accounts/scwallet: fix public key confirmation regression

* internal/build: fix Travis and AppVeyor commit string injection

* cmd/abigen: allow using `abigen --pkg` flag with standard input (#19207)

* crypto/bn256/cloudflare: fix comments to describe the updated curve parameters (#19577)

* Removed comment section referring to Cloudflare's bn curve parameters

* Added comment to clarify the nature of the parameters

* Changed value of xi to i+9

* accounts/scwallet: change sc url scheme to keycard (#19632)

* swarm/api: update mission statement (#19612)

* swarm/api/http: fix bzz-hash to return ens resolved hash directly (#19594)

* github: update code owners (#19638)

* Update codeowners

* Add karalabe to clique

* remove codeowner for consensus/clique

* les, les/flowcontrol: implement LES/3 (#19329)

les, les/flowcontrol: implement LES/3

* les: short circuit in the unregister if peer is not registered (#19644)

* swarm/storage: set false, only when we get a chunk back (#19599)

* accounts/scwallet: flag to specify path to smartcard daemon (#19439)

* accounts/scwallet: Add a switch to enable smartcard support

* accounts: change the meaning of the switch

* disable card support in windows until tested
* only activate account if pcscd socket file is present
* the switch is now the path to the socket file

* accounts/scwallet: holiman's review feedback

* accounts/scwallet: send the path to go-pcsclite

* accounts/scwallet: add default, per platform path

* accounts/scwallet: fix error log warning

* accounts/scwallet: update pcsc lib to latest

* accounts/scwallet: use default path from pcsclite

* scwallet: forgot to change switch name

* cmd: minor style cleanups (error handling first, then happy path)

* accounts/usbwallet: support webusb for Trezor wallets

* accounts/usbwallet: recreate Trezor protocol, support old and new

* core/signer, clef: improve ui-test flow, fix errors in uint handling (#19584)

* core/signer, clef: improve ui-test flow, fix errors in uint handling for eip-712

* core/signer: add fuzzer testcases + crashfixes

* signer: address review concerns, check sign in integer parsing

* ethclient: ensure tx json is not nil before accessing it (#19653)

TransactionInBlock crashed if json was nil and there was an error
because it tried to access fields `From` and `BlockHash` of the nil object.

* swarm: code cleanup, move to ethersphere/swarm (#19661)

* accounts/usbwallet, vendor: switch from HID to generic USB lib

* accounts/scwallet: don't error when pcsc socket is missing (#19662)

* scwallet: don't error when pcsc socket is missing

* review feedback

* more review feedback

* cmd/utils: close quote (#19665)

* eth/downloader: make syncing error more obvious (#19413)

* cmd: Add retesteth command (to support execution and generation of tests via retesteth) (#19631)

* Add retesteth command

* Remove label and insert full version

* mineBlock - break the inner loop when the block is full

* Fixes for touched non-reward accounts, gas limit issues

* Not fail when SendTx has transaction with incorrect RLP

* Fix linter (unnecessary conversion)

* retesteth: add usage string to flag

* cmd/clef: enable smartcard hub (#19649)

* cmd/clef: Enable smartcard hub

* clef: don't error is pcsc is not installed

* account/usbwallet: abort usb enumeration after failures

* eth: check for DefaultConfig.NetworkId in test (#17599)

This makes the test work if NetworkId is changed in forks of go-ethereum.

* vendor: pull fixed usb library for nocgo builds

* SECURITY.md: create security policy (#19666)

Github has started supporting SECURITY.md to contain a project's security policy. Adding this information to the repository makes it easier to determine how to disclosure a vulnerability as SECURITY.md becomes a standard.

The pgp fingerprint and key is taken from bounty.ethereum.org.

* params: add new bootnodes

* vendor: pull in USB fix for docker (alpine/musl)

* accounts/scwallet: Disable macos support (#19679)

* cmd/devp2p: add devp2p debug tool  (#19657)

* p2p/discover: export Ping and RequestENR

These two are useful for checking the status of a node.

* cmd/devp2p: add devp2p debug tool

This is a new tool for debugging p2p issues. It supports a few
basic tasks for now, but many more things can and will be added
in the near future.

   devp2p enrdump            -- prints ENRs readably
   devp2p discv4 ping        -- checks if a node is up
   devp2p discv4 requestenr  -- gets a node's record
   devp2p discv4 resolve     -- finds a node through the DHT

* p2p/enode: improve IPv6 support, add ENR text representation (#19663)

* p2p/enr: add entries for for IPv4/IPv6 separation

This adds entry types for "ip6", "udp6", "tcp6" keys. The IP type stays
around because removing it would break a lot of code and force everyone
to care about the distinction.

* p2p/enode: track IPv4 and IPv6 address separately

LocalNode predicts the local node's UDP endpoint and updates the record.
This change makes it predict IPv4 and IPv6 endpoints separately since
they can now be in the record at the same time.

* p2p/enode: implement base64 text format
* all: switch to enode.Parse(...)

This allows passing base64-encoded node records to all the places that
previously accepted enode:// URLs. The URL format is still supported.

* cmd/bootnode, p2p: log node URL instead of ENR

...and return the base64 record in NodeInfo.

* vendor: remove unused dependencies  (#19683)

* vendor: remove unused dependencies

These were used by swarm code, which has now migrated to its own repository.

* travis.yml: remove sudo requirement for test builders

These needed sudo to run FUSE tests for swarm.

* accounts: added transactorFromKeyStore (#19685)

* core/rawdb: avoid O_APPEND (#19676)

* Fix file system access for Windows

* Encapsulate file accesses

* Style fixes

* core, ethdb, metrics, p2p: expose various counter metrics for grafana

* eth, les: reject stale request (#19689)

* eth, les: reject stale request

* les: reuse local head number

* p2p: enforce connection retry limit on server side (#19684)

The dialer limits itself to one attempt every 30s. Apply the same limit
in Server and reject peers which try to connect too eagerly. The check
against the limit happens right after accepting the connection.

Further changes in this commit ensure we pass the Server logger
down to Peer instances, discovery and dialState. Unit test logging now
works in all Server tests.

* ethclient, internal/ethapi: add support for EIP-695 (eth_chainId) (#19694)

EIP-695 was written in 2017. Parity and Infura have support for this
method and we should, too.

* dashboard: update yarn.lock (#19697)

* core/types: document RawSignatureValues (#19695)

* les/handler: avoid lookup missing state

* eth: enforce stricter known limits on idle peers

* accounts/abi/bind: rename NewKeystoreTransactor (#19703)

renamed NewKeyStoreFromTransactor to NewKeystoreTransactor
fixed godoc

*  les: reject client if it makes too many invalid requests (#19691)

* les: reject client connection if it makes too much invalid req

* les: address comments

* les: use uint32

* les: fix variable name

* les: add invalid counter for duplicate invalid req

* p2p: add more info to peer addition and removal logs (#19712)

* README.md: update formatting (#19532)

* appveyor: bump to Go 1.12.6 (#19709)

* appveyor: bump to Go 1.12.6

* vendor/vendor.json: govendor fetch github.com/karalabe/usb/^

* metrics: gather and export threads and goroutines

* accounts/keystore: fix #19707, avoid keyword as variable name

* accounts/abi/bind/backends: use EIP155 on the simulated chain

* clef: fix stutter in warning message (#19736)

* miner: don't update pending state when no transactions are added (#19734)

* miner: don't update pending state when no transactions are added

* miner: avoid transaction processing when pending block is already full

* rpc: fix rare deadlock when canceling HTTP call context (#19715)

When cancelling the context for a call on a HTTP-based client while the
call is running, the select in requestOp.wait may hit the <-context.Done()
case instead of the <-op.resp case. This doesn't happen often -- our
cancel test hasn't caught this even though it ran thousands of times
on CI since the RPC client was added.

Fixes #19714

* cmd, graphql, node: graphql flag polishes, les integration

* mobile: fix comment typos (#19741)

* core: move TxPool reorg and events to background goroutine (#19705)

* core: move TxPool reorg and events to background goroutine

This change moves internal queue re-shuffling work in TxPool to a
background goroutine, TxPool.runReorg. Requests to execute runReorg are
accumulated by the new scheduleReorgLoop. The new loop also accumulates
transaction events.

The motivation for this change is making sends to txFeed synchronous
instead of sending them in one-off goroutines launched by 'add' and
'promoteExecutables'. If a downstream consumer of txFeed is blocked for
a while, reorg requests and events will queue up.

* core: remove homestead check in TxPool

This change removes tracking of the homestead block number from TxPool.
The homestead field was used to enforce minimum gas of 53000 for
contract creations after the homestead fork, but not before it. Since
nobody would want configure a non-homestead chain nowadays and contract
creations usually take more than 53000 gas, the extra correctness is
redundant and can be removed.

* core: fixes for review comments

* core: remove BenchmarkPoolInsert

This is useless now because there is no separate code path for
individual transactions anymore.

* core: fix pending counter metric

* core: fix pool tests

* core: dedup txpool announced events, discard stales

* core: reorg tx promotion/demotion to avoid weird pending gaps

* p2p/simulations: Enable access to MsgEvents with execadapter (#19749)

* core/vm, internal/ethapi: fail on eth_call when it times out, fixes #19186 (#19737)

* graphql: check the integrity of the CDN files (#19742)

* graphql: check the integrity of the cdn files

* graphql: omit go-bindata

* rpc: fix subscription buffer documentation and test (#19747)

This PR updates a comment about the maximum client subscription buffer
to reflect changes made previously, and fixes a test that wouldn't fail
when wantError == true but execution did not return an error.

* abi: adding the method EventByID and its test (#19359)

This function searches for an event+parameters in the ABI and returns it if found.

Co-authored-by: Victor Tran <[email protected]>
Co-authored-by: Guillaume Ballet <[email protected]>

* core/state, cmd/geth: streaming json output for dump command (#15475)

* core/state, cmd/geth: streaming json output dump cmd + optional code+storage

* dump: add option to continue even if preimages are missing

* core, evm: lint nits

* cmd: use local flags for dump, omit empty code/storage

* core/state: fix state dump test

* cmd/evm: evm input minor fixes (#19740)

* cmd/evm: evm input minor fixes, handle prefix, validate length, fixes #18041

* cmd/evm: remove whitespace

* whisper: PoW calculations as specified in EIP-627 (#19753)

* whisper: PoW calculations as specified in EIP-627

* Fix unit tests

* eth: fix sync bloom panic (#19757)

* eth: fix sync bloom panic

* eth: delete useless test cases

* mobile: fix mobile interface (#19180)

* mobile: fix mobile interface

* mobile, accounts: generate correct java binding

* accounts: fix java type binding

* mobile: support integer slice

* accounts/abi/bind, cmd/abigen: implement java binding tests

* les: prefer nil slices over zero-length slices (#19081)

* all: on-chain oracle checkpoint syncing (#19543)

* all: implement simple checkpoint syncing

cmd, les, node: remove callback mechanism

cmd, node: remove callback definition

les: simplify the registrar

les: expose checkpoint rpc services in the light client

les, light: don't store untrusted receipt

cmd, contracts, les: discard stale checkpoint

cmd, contracts/registrar: loose restriction of registeration

cmd, contracts: add replay-protection

all: off-chain multi-signature contract

params: deploy checkpoint contract for rinkeby

cmd/registrar: add raw signing mode for registrar

cmd/registrar, contracts/registrar, les: fixed messages

* cmd/registrar, contracts/registrar: fix lints

* accounts/abi/bind, les: address comments

* cmd, contracts, les, light, params: minor checkpoint sync cleanups

* cmd, eth, les, light: move checkpoint config to config file

* cmd, eth, les, params: address comments

* eth, les, params: address comments

* cmd: polish up the checkpoint admin CLI

* cmd, contracts, params: deploy new version contract

* cmd/checkpoint-admin: add another flag for clef mode signing

* cmd, contracts, les: rename and regen checkpoint oracle with abigen

* accounts/abi: Fix method overwritten by same name methods. (#17099)

* accounts/abi: Fix method overwritten by same name methods.

* accounts/abi: Fix method overwritten by same name methods.

* accounts/abi: avoid possible name conflict

Co-authored-by: Guillaume Ballet <[email protected]>

* accounts/abi/bind: Accept function ptr parameter (#19755)

* accounts/abi/bind: Accept function ptr parameter

They are translated as [24]byte

* Add Java template version

* accounts/abi/bind: fix merge issue

* Fix CI

* cmd/clef, signer: refresh tutorial, fix noticed issues (#19774)

* cmd/clef, signer: refresh tutorial, fix noticed issues

* cmd/clef, signer: support removing stored keys (delpw + rules)

* cmd/clef: polishes + Geth integration in the tutorial

* cmd, eth, les, param: drop --override.constantinople

* core: fix chain indexer reorg bug (#19748)

* core: fix chain indexer reorg bug

* core: prevent reverting valid section when reorg happens

* core: fix chain indexer (#19786)

This PR fixes an issue in chain indexer. Currently chain indexer will
validate whether the stored data is canonical by comparing section head
and canonical hash. But the header of the checkpoint may not exist in
the database. We should skip validation for sections below the
checkpoint.

* core: fix receipt insertion (#19764)

* accounts/abi: enable struct golang binding generation (#18491)

* accounts/abi, cmd/abigen: support tuple

accounts/abi/bind, cmd/abigen: add objc back

accounts/abi/bind: use byte[24] as function indicator

accounts/abi/bind: resolve struct slice or array

accounts/abi/bind: remove sort logic

accounts: fix issues in abi

* accounts/abi: address comment

* vendor: update karalabe/usb to fix CGO=0 builds (#19790)

* les: remove half-finished priority pool APIs (#19780)

* les: remove half-finish APIs

* les: remove half-finish APIs

* accounts, cmd, contracts, les: integrate clef for transaction signing (#19783)

* accounts, cmd, contracts, les: integrate clef for transaction signing

* accounts, cmd/checkpoint-admin, signer/core: minor fixups

* accounts/abi/bind: fix typo in comments (#19791)

* cmd/geth: wrong memory size sanitizing on OpenBSD (#19793)

* p2p: add address info to peer event reporting (#19716)

* core: lessen mem-spike during 1.8->1.9 conversion (#19610)

* core/blockchain: lessen mem-spike during 1.8->1.9 conversion

* core/blockchain.go: make levedb->freezer conversion gradually

* core/blockchain: write the batch

* accounts/abi/bind: link dependent libs in deploy (#19718)

* accounts, abigen: link dependent libs in deploy

* abigen: add java generation

* bind: Fix unit tests

* abigen: add unit test

* Fix CI

* Post-rebase fixes

* Fix rebase issue

* accounts/abi: Gary's review feedback

* accounts/abi: More Gary feedback

* accounts/abi: minor fixes

* eth, les: add sanity checks for unbounded block fields (#19573)

This PR adds some hardening in the lower levels of the protocol stack, to bail early on invalid data. Primarily, attacks that this PR protects against are on the "annoyance"-level, which would otherwise write a couple of megabytes of data into the log output, which is a bit resource intensive.

* cmd/abigen: refactor command line interface (#19797)

* cmd, common: refactor abigen command line interface

* cmd/abigen: address comment

* p2p: remove "cap" enr entry (#19800)

This entry was an experiment, but we're moving on to the
entry-per-protocol instead.

* core/forkid: implement the forkid EIP, announce via ENR (#19738)

* eth: chain config (genesis + fork) ENR entry

* core/forkid, eth: protocol independent fork ID, update to CRC32 spec

* core/forkid, eth: make forkid a struct, next uint64, enr struct, RLP

* core/forkid: change forkhash rlp encoding from int to [4]byte

* eth: fixup eth entry a bit and update it every block

* eth: fix lint

* eth: fix crash in ethclient tests

* p2p/discover: improve randomness of ReadRandomNodes (#19799)

Make it select from all live nodes instead of selecting the heads of
random buckets.

* cmd/puppeth: integrate blockscout (#18261)

* cmd/puppeth: integrate blockscout

* cmd/puppeth: expose debug namespace for blockscout

* cmd/puppeth: fix dbdir

* cmd/puppeth: run explorer in archive mode

* cmd/puppeth: ensure node is synced

* cmd/puppeth: fix explorer docker alignment + drop unneeded exec

* cmd/puppeth: polish up config saving and reloading

* cmd/puppeth: check both web and p2p port for explorer service

* params: bump all CHTs, deploy all checkpoint oracles

* core: kill off managed state, use own tiny noncer for txpool

* core/state: fix random test args (#19255)

* cmd, eth, les: fix up ultra light config integration

* appveyor: bump builder to Go 1.12.7

* cmd: encapsulate les relative cli options

* cmd, eth, les: make les flags conform to dotted style

* params: release Geth v1.9.0

* params: begin Geth v1.9.1 release cycle

* cmd, eth: fix dump config issue (#19825)

* eth: fix error when dump config with nil checkpoint

* cmd/utils: ignore default datadir if it's already set.

* eth: fix storageRangeAt for empty blocks (#18076)

* eth: add debug_accountRange (#17438)

This adds the debug_accountRange method which returns all accounts in
the state for a given block and transaction index.

* common/bitutil: use result of TestBytes to prevent dead code elimination (#19846)

Gollvm has very aggressive dead code elimination that completely
removes one of these two benchmarks.  To prevent this, use the
result of the benchmark (a boolean), and to be "fair", make the
transformation to both benchmarks.

To be reliably assured of not removing the code, "use" means
assigning to an exported global.  Non-exported globals and
//go:noinline functions are possibly subject to this optimization.

* core: fix write concurrency in txpool (#19835)

* core: fix write coucurrency in txpool

* core: add rlock for pendingState read access

* core: address comments

* all: replace fmt.Print* calls with t.Log* in tests (#19670)

* signer/core: fix reference issue in key derivation (#19827)

* signer/core: fix reference issue in key derivation

* Review feedback

* all: replace t.Log(); t.FailNow() with t.Fatal() (#19849)

* core: check error before accessing potentially nil block

* internal/ethapi: fix debug.chaindbProperty

* p2p: add ENR to PeerInfo (#19816)

* core/state, p2p/discover, trie, whisper: avoid unnecessary conversions (#19870)

No need to convert these types.

* cmd, crypto, eth, internals: fix Typos (#19868)

* cmd/geth, core/rawdb: add missing error checks (#19871)

* Added missing error checks

Add error handling where we assign err a value, but don't check for it being nil.

* core/rawdb: tiny style nit

* params: bump hard-coded CHTs to 22nd July values

* build: update license exclusions, case insensitive author list

* all: update author list and licenses

* build: deduplicate same authors with different casing

* rpc: implement websockets with github.com/gorilla/websocket  (#19866)

* rpc: implement websockets with github.com/gorilla/websocket

This change makes package rpc use the github.com/gorilla/websocket
package for WebSockets instead of golang.org/x/net/websocket. The new
library is more robust and supports all WebSocket features including
continuation frames.

There are new tests for two issues with the previously-used library:

  - TestWebsocketClientPing checks handling of Ping frames.
  - TestWebsocketLargeCall checks whether the request size limit is
    applied correctly.

* rpc: raise HTTP/WebSocket request size limit to 5MB

* rpc: remove default origin for client connections

The client used to put the local hostname into the Origin header because
the server wanted an origin to accept the connection, but that's silly:
Origin is for browsers/websites. The nobody would whitelist a particular
hostname.

Now that the server doesn't need Origin anymore, don't bother setting
one for clients. Users who need an origin can use DialWebsocket to
create a client with arbitrary origin if needed.

* vendor: put golang.org/x/net/websocket back

* rpc: don't set Origin header for empty (default) origin

* rpc: add HTTP status code to handshake error

This makes it easier to debug failing connections.

* ethstats: use github.com/gorilla/websocket

* rpc: fix lint

* cmd, contracts, eth, p2p, signer, whisper: fixed ineffectual assignments (#19869)

Fixed assigning values to variables we don't end up using.

* core, les: fix les unit tests (#19823)

* cmd/geth: skip 4GB memory bump for devnet

* cmd/faucet: add grace period to faucet timeout (#18105)

* Add 5 minute grace period to faucet timeout

* cmd/faucet: make grace period dynamic based on original wait time

* les: get rid of testing tx journal (#19876)

* signer/fourbytes: fix up error messages (#19877)

* vendor, internal/build: fix OpenBSD by bumping Azure libs (#17966)

* bump azure-storage-blob-go dependency to 0.3.0 release

* update azure-storage-blob-go module import path

* fix multiple return values on azblob.NewSharedKeyCredential

* vendor: bump Azure libs to latest from upstream

* eth, internal, les: add getHeaderBy* APIs (#19669)

* eth, interal, les: add getHeaderBy* APIs

* internal: address the comment

* eth, internal, les: getHeader nits, missing TD, console callable

* params: release Geth v1.9.1

* After merge conflicts resolved

* fix mobile

* use default clique chain config

* fix engine test

* TestParseNodeWithDomainResolution test fixed

* get linters from tendermint branch

* Fix mining

* Fix tests

* Fix errcheck linter messages

* Fix goconst linter messages

* Fix golint linter messages

* Fix govet linter messages

* Fix unused linter messages

* Fix staticcheck linter messages

* Fix scopelint linter messages

* Fix unparam linter messages

* Fix prealloc linter messages
  • Loading branch information
screwyprof authored Sep 4, 2019
1 parent 66a9d6f commit 8b2b72c
Show file tree
Hide file tree
Showing 1,762 changed files with 246,877 additions and 122,277 deletions.
4 changes: 0 additions & 4 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
**/.git
.git
!.git/HEAD
!.git/refs/heads
**/*_test.go

build/_workspace
Expand Down
44 changes: 16 additions & 28 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -2,34 +2,22 @@
# Each line is a file pattern followed by one or more owners.

accounts/usbwallet @karalabe
accounts/scwallet @gballet
accounts/abi @gballet
cmd/clef @holiman
cmd/puppeth @karalabe
consensus @karalabe
core/ @karalabe @holiman
eth/ @karalabe
les/ @zsfelfoldi
light/ @zsfelfoldi
mobile/ @karalabe
core/ @karalabe @holiman @rjl493456442
dashboard/ @kurkomisi
eth/ @karalabe @holiman @rjl493456442
graphql/ @gballet
les/ @zsfelfoldi @rjl493456442
light/ @zsfelfoldi @rjl493456442
mobile/ @karalabe @ligi
p2p/ @fjl @zsfelfoldi
p2p/simulations @lmars
p2p/protocols @zelig
swarm/api/http @justelad
swarm/bmt @zelig
swarm/dev @lmars
swarm/fuse @jmozah @holisticode
swarm/grafana_dashboards @nonsense
swarm/metrics @nonsense @holisticode
swarm/multihash @nolash
swarm/network/bitvector @zelig @janos
swarm/network/priorityqueue @zelig @janos
swarm/network/simulations @zelig @janos
swarm/network/stream @janos @zelig @holisticode @justelad
swarm/network/stream/intervals @janos
swarm/network/stream/testing @zelig
swarm/pot @zelig
swarm/pss @nolash @zelig @nonsense
swarm/services @zelig
swarm/state @justelad
swarm/storage/encryption @zelig @nagydani
swarm/storage/mock @janos
swarm/storage/feed @nolash @jpeletier
swarm/testutil @lmars
rpc/ @fjl @holiman
p2p/simulations @zelig @nonsense @janos @justelad
p2p/protocols @zelig @nonsense @janos @justelad
p2p/testing @zelig @nonsense @janos @justelad
signer/ @holiman
whisper/ @gballet @gluk256
2 changes: 1 addition & 1 deletion .github/no-response.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Number of days of inactivity before an Issue is closed for lack of response
daysUntilClose: 30
# Label requiring a response
responseRequiredLabel: more-information-needed
responseRequiredLabel: "need:more-information"
# Comment to post when closing an Issue for lack of response. Set to `false` to disable
closeComment: >
This issue has been automatically closed because there has been no response
Expand Down
2 changes: 1 addition & 1 deletion .github/stale.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ exemptLabels:
- pinned
- security
# Label to use when marking an issue as stale
staleLabel: stale
staleLabel: "status:inactive"
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ profile.cov
/dashboard/assets/node_modules
/dashboard/assets/stats.json
/dashboard/assets/bundle.js
/dashboard/assets/bundle.js.map
/dashboard/assets/package-lock.json

**/yarn-error.log
1 change: 1 addition & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
[submodule "tests"]
path = tests/testdata
url = https://github.com/ethereum/tests
branch = constfix
1 change: 0 additions & 1 deletion .golangci/step1.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ run:
linters:
enable:
- errcheck
- gochecknoinits
- goconst
- gofmt
- golint
Expand Down
Loading

0 comments on commit 8b2b72c

Please sign in to comment.