Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* 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