- Sep 13, 2019
-
-
Felix Lange authored
* rlp: improve nil pointer handling In both encoder and decoder, the rules for encoding nil pointers were a bit hard to understand, and didn't leave much choice. Since RLP allows two empty values (empty list, empty string), any protocol built on RLP must choose either of these values to represent the null value in a certain context. This change adds choice in the form of two new struct tags, "nilString" and "nilList". These can be used to specify how a nil pointer value is encoded. The "nil" tag still exists, but its implementation is now explicit and defines exactly how nil pointers are handled in a single place. Another important change in this commit is how nil pointers and the Encoder interface interact. The EncodeRLP method was previously called even on nil values, which was supposed to give users a choice of how their value would be handled when nil. It turns out this is a stupid idea. If you create a network protocol containing an object defined in another package, it's better to be able to say that the object should be a list or string when nil in the definition of the protocol message rather than defining the encoding of nil on the object itself. As of this commit, the encoding rules for pointers now take precedence over the Encoder interface rule. I think the "nil" tag will work fine for most cases. For special kinds of objects which are a struct in Go but strings in RLP, code using the object can specify the desired encoding of nil using the "nilString" and "nilList" tags. * rlp: propagate struct field type errors If a struct contained fields of undecodable type, the encoder and decoder would panic instead of returning an error. Fix this by propagating type errors in makeStruct{Writer,Decoder} and add a test.
-
- Sep 12, 2019
-
-
Rob Mulholand authored
-
Péter Szilágyi authored
-
Péter Szilágyi authored
build: switch PPA from Gophers dep to manual download
-
Péter Szilágyi authored
-
Péter Szilágyi authored
travis, Dockerfile, appveyor: bump to Go 1.13
-
Péter Szilágyi authored
-
- Sep 11, 2019
-
-
Felix Lange authored
Most of these changes are related to the Go 1.13 changes to test binary flag handling. * cmd/geth: make attach tests more reliable This makes the test wait for the endpoint to come up by polling it instead of waiting for two seconds. * tests: fix test binary flags for Go 1.13 Calling flag.Parse during package initialization is prohibited as of Go 1.13 and causes test failures. Call it in TestMain instead. * crypto/ecies: remove useless -dump flag in tests * p2p/simulations: fix test binary flags for Go 1.13 Calling flag.Parse during package initialization is prohibited as of Go 1.13 and causes test failures. Call it in TestMain instead. * build: remove workaround for ./... vendor matching This workaround was necessary for Go 1.8. The Go 1.9 release changed the expansion rules to exclude vendored packages. * Makefile: use relative path for GOBIN This makes the "Run ./build/bin/..." line look nicer. * les: fix test binary flags for Go 1.13 Calling flag.Parse during package initialization is prohibited as of Go 1.13 and causes test failures. Call it in TestMain instead.
-
Martin Holst Swende authored
-
- Sep 10, 2019
-
-
Nguyen Kien Trung authored
-
Péter Szilágyi authored
core/state: optimize some internals during encoding
-
Martin Holst Swende authored
-
Péter Szilágyi authored
core, metrics, p2p: switch some invalid counters to gauges
-
Péter Szilágyi authored
-
Péter Szilágyi authored
common, graphql: fix hash/address decoding + UI content type
-
Péter Szilágyi authored
-
Flash Sheridan authored
* Accounts in alloc field must already exist Note that accounts in alloc field must already exist, as pointed out by Simeon Vanov in https://gettoshare.com/2017/10/30/how-to-use-genesis-json-alloc-property/ * Change wording per PR review comment * README: minor fixups
-
- Sep 04, 2019
-
-
Péter Szilágyi authored
Dockerfile: expose GraphQL ports
-
Péter Szilágyi authored
-
- Sep 03, 2019
-
-
Péter Szilágyi authored
-
Péter Szilágyi authored
-
SjonHortensius authored
Currently light.maxpeers is 100 - after this change it's 10 for non-servers. Fixes #19820
-
Péter Szilágyi authored
internal/ethapi: implement fillTransaction
-
- Sep 02, 2019
-
-
Felix Lange authored
-
Dimitry Khokhlov authored
-
- Aug 30, 2019
-
-
Péter Szilágyi authored
eth: disallow overwrite files via admin.exportChain
-
Martin Holst Swende authored
-
- Aug 27, 2019
- Aug 26, 2019
-
-
Flash Sheridan authored
* Change chainId in genesis block to 8888 from 0 Change chainId in genesis block to 8888 from 0 per Moriteru in https://ethereum.stackexchange.com/a/28082/40230. * Replace 8888 with “<arbitrary positive integer>” Per PR review, replace Moriteru’s arbitrary positive integer 8888 with “<arbitrary positive integer>” in chainId field.
-
- Aug 23, 2019
-
-
Péter Szilágyi authored
cmd, core, eth, les: support --override.istanbul
-
Péter Szilágyi authored
-
Péter Szilágyi authored
core/vm: enable istanbul EIPs in the jump table
-
Martin Holst Swende authored
-
Martin Holst Swende authored
-
- Aug 22, 2019
-
-
SjonHortensius authored
This change adds support for gzip encoding on HTTP responses. Gzip encoding is used when the client sets the 'accept-encoding: gzip' header. Original change by @brianosaurus, with fixes from @SjonHortensius.
-
Felix Lange authored
Original change by @jpeletier
-
alexwang authored
-
SjonHortensius authored
This copies cli.printHelp but changes minwidth to 38. Custom flag code is improved to print the default value using cli.FlagStringer like all built-in flags do.
-
Péter Szilágyi authored
build: gomobile automaticall adds the ios tag, don't duplicate
-