Commit Graph

67 Commits

Author SHA1 Message Date
Alex Sharov
38f63f9af2
make lmdb default db (#675)
* make lmdb default db

* switch nodes db to lmdb

* log errors in nodedb

* fix miss typing

* fix default test target in makefile

* report error of .Get method

* add debug info

* run tests with debug

* run tests with debug

* remove default db from TEST_DB env

* cleanup

* wait for goroutines finish

* wait for goroutines finish before close db

* wait for goroutines finish before close db

* wait for goroutines finish before close db

* wait for goroutines finish before close db
2020-06-18 19:13:58 +01:00
Igor Mandrigin
c94d2baa2b use bolt for tests 2020-06-15 19:39:34 +03:00
Alex Sharov
57358730a4
Minor lmdb related improvements (#667)
* don't call initCursor on happy path

* don't call initCursor on happy path

* don't run stale reads goroutine for inMem mode

* don't call initCursor on happy path

* remove buffers from cursor object - they are useful only in Badger implementation

* commit kv benchmark

* remove buffers from cursor object - they are useful only in Badger implementation

* remove buffers from cursor object - they are useful only in Badger implementation

* cancel server before return pipe to pool

* try  to fix test

* set field db in managed tx
2020-06-15 13:30:54 +01:00
Alex Sharov
15096f273d
Remove ctx from Open. Stop goroutines on Close. (#650)
* remove ctx from MustOpen

* remove ctx from Open. Stop goroutines on Close.

* remove ctx from Open. Stop goroutines on Close.

* remove ctx from remote open (we have DialTimeout field to manage connection timeouts)

* enable RawReads and add native implementation of Get/Has methods
2020-06-12 10:31:21 +01:00
Evgeny Danilenko
199ede36a2
Prevent slice make and copy in Pushes (#625)
* prevent slice make and copy in Pushes

* do not pad if the same length

* after CR

* linters

* linters

* linters
2020-06-05 19:46:34 +03:00
Alex Sharov
f0bc2b2146
Run tests on lmdb and badger (#624)
* lmdb tests

* trigger ci

* fix tests

* disable parallelism

* disable parallelism

* cleanup resources

* cleanup resources

* reduce concurency

* try run tests on bolt

* try run tests on bolt

* fix downloader test

* run bolt tests

* rely on interface instead of exact instance

* Rename AbstractKV to KV

* don't use separator for badger

* don't initialize badger cursor - because it not used here

* fix linter

* try reduce badger compactors

* compat with master

* try lmdb

* try lmdb

* try lmdb

* reduce badger's MaxTableSize, reduce badger's minGoMaxProc for inMem option

* allow to close closed db

* release

* release

* ideal batch size for badger

* ideal batch size for badger
2020-06-05 10:25:33 +01:00
Alex Sharov
717b096afc
[wip] Cache z3 build on CI, up golangci-lint to v1.27.0 (#615)
* z3 build cache

* z3 build cache

* circle 2.1 version

* golangci-lint up to v1.27.0

* separate z3 cache, add architecture to the key

* separate z3 cache, add architecture to the key

* rerun ci

* rerun ci

* rerun ci

* fix z3 cache

* fix z3 cache

* fix z3 cache

* try shorter

* trigger ci
2020-06-04 09:54:17 +01:00
Alex Sharov
8ae055d04c
up syntax of solidity pragma (#498) 2020-04-29 11:51:07 +01:00
Igor Mandrigin
64a335bb32
Code eviction with code nodes support (#416) 2020-04-08 08:00:31 +03:00
Alex Sharov
508d497644
commit simulator_genesis.json file generated by go run ./cmd/tester genesis > simulator_genesis.json (#419) 2020-03-31 07:52:13 +01:00
ledgerwatch
f210116e65
Semantics: Integrate Z3 into the build (#370)
* Just files

* Fix lint

* First attempt at linking

* More semantics

* Add more arguments

* Added z3 dependency

* Added integration with z3

* Try to fix build

* Add m library

* Try to fix ints

* Separate init/destroy, create sorts
2020-03-06 08:54:21 +00:00
Igor Mandrigin
aafacd04d7
Debug Web UI prototype (#362) 2020-02-09 13:31:52 +03:00
Felix Lange
bacc87593a build: remove env.sh (#20541)
* build: remove env.sh

This removes the dirty symlink-to-self hack we've had for years. The
script was added to enable building without GOPATH and did that job
reliably for all this time. We can remove the workaround because modern
Go supports building without GOPATH natively.

* Makefile: add GO111MODULE=on to environment
2020-01-30 13:36:30 +02:00
Giulio rebuffo
bcf04bbbcf Change "for storage" encoding of Account from RLP to bitmask + fields encoding (#287)
* migration tool + CBOR encoding for storage of account bucket

* documentation updated

* fixed

* removed noncontract in EncodeForStorage

* code adjustments

* updated tests

* switched to custom encoding

* documentation updated
2020-01-07 09:02:44 +00:00
Péter Szilágyi
d0ea0833f3 build: skip go clean on PPA, messes with the module trick 2019-12-03 13:51:28 +01:00
ledgerwatch
8cb96471a3
Skeleton of RPC daemon, for 1 operation eth_blockNumber (#209)
* Finish CmdSeek and add CmdNext

* Add remoteDb listener and RPC daemon CLI

* Fix test

* Fix CLI

* Fix lint

* Fix unreachable code

* Fix lint

* First working RPC command eth_blockNumber

* Fix lint

* Fix lint

* Fix memprofile/cpuprofile confusion

* Add comment
2019-12-02 13:47:00 +00:00
Evgeny Danienko
112bc52b2c linters 2019-11-15 15:18:45 +03:00
Evgeny Danilenko
c9e1cb8b77 update (#150) 2019-11-06 15:34:35 +03:00
Igor Mandrigin
c271939b0b restore linting disabled in geth 1.9.6 rebase. 2019-11-05 11:15:53 +01:00
Igor Mandrigin
801e8078f9 Disable linter on CI for this branch 2019-11-04 15:22:11 +01:00
Alexey Akhunov
fe01bccbb8 Apply Turbo-Geth modifications to go-ethereum codebase 2019-11-01 21:52:03 +01:00
Felix Lange
39b0b1a1a6
all: make unit tests work with Go 1.13 (#20053)
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.
2019-09-11 14:41:22 +02:00
Rafael Matias
42b81f94ad swarm: code cleanup, move to ethersphere/swarm (#19661) 2019-06-04 16:35:36 +03:00
Alexey Sharov
dc5d643bb5 cmd/swarm, swarm: cross-platform Content-Type detection (#17782)
- Mime types generator (Standard "mime" package rely on system-settings, see mime.osInitMime)
- Changed swarm/api.Upload:
    - simplify I/O throttling by semaphore primitive and use file name where possible
    - f.Close() must be called in Defer - otherwise panic or future added early return will cause leak of file descriptors
    - one error was suppressed
2018-10-01 13:39:39 +02:00
Hyung-Kyu Hqueue Choi
ae674a3660 Makefile: clean go build cache (#17079) 2018-07-24 02:11:51 +02:00
thomasmodeneis
ba1030b6b8 build: enable goimports and varcheck linters (#16446) 2018-04-18 00:53:50 +02:00
Felix Lange
5c2f1e0014 all: update generated code (#15808)
* core/types, core/vm, eth, tests: regenerate gencodec files

* Makefile: update devtools target

Install protoc-gen-go and print reminders about npm, solc and protoc.
Also switch to github.com/kevinburke/go-bindata because it's more
maintained.

* contracts/ens: update contracts and regenerate with solidity v0.4.19

The newer upstream version of the FIFSRegistrar contract doesn't set the
resolver anymore. The resolver is now deployed separately.

* contracts/release: regenerate with solidity v0.4.19

* contracts/chequebook: fix fallback and regenerate with solidity v0.4.19

The contract didn't have a fallback function, payments would be rejected
when compiled with newer solidity. References to 'mortal' and 'owned'
use the local file system so we can compile without network access.

* p2p/discv5: regenerate with recent stringer

* cmd/faucet: regenerate

* dashboard: regenerate

* eth/tracers: regenerate

* internal/jsre/deps: regenerate

* dashboard: avoid sed -i because it's not portable

* accounts/usbwallet/internal/trezor: fix go generate warnings
2018-01-08 14:15:57 +02:00
detailyang
5e805aa865 Makefile: call shell function to get pwd 2017-08-04 23:54:30 +08:00
akiva
4371367cd1 Makefile, README: remove evm target, add puppeth to table (#14886) 2017-08-03 13:58:35 +02:00
Lee Hyeon
13cda8d9b6 Makefile: fixed GOBIN absolute path issue (#14854) 2017-07-31 12:00:17 +02:00
Aron
3c7338d6c8 Makefile: add make swarm command (#14698)
* Makefile: add make swarm command

* Makefile: minor code formatting polishes
2017-06-26 12:19:53 +03:00
Felix Lange
3d8de95f99 core, core/types: regenerate JSON marshaling, add "hash" to headers (#13868)
* Makefile: fix devtools target

* core: regenerate genesis marshaling with fjl/gencodec@cbfa5be5a8

* core/types: regenerate marshaling methods with fjl/gencodec@cbfa5be5a8

* core/types: add "hash" to JSON headers
2017-04-06 11:38:21 +03:00
Felix Lange
9c4fd4e9c9 Makefile: add devtools target 2017-03-07 01:33:05 +01:00
Péter Szilágyi
f972691eea
travis: support building mips32 and mips64 too 2017-03-02 11:43:06 +02:00
Péter Szilágyi
0f1cbfd3da
Makefile, build: do proper mobile builds, not cross builds 2016-11-25 12:51:10 +02:00
Felix Lange
ed2bc7fbe9 build, internal/build: misc improvements (#3229)
* travis.yml: don't create darwin/386 builds

* build: remove godep remains

* internal/build: improve archives

- enable compression for zip files
- don't write half-complete archives

* build: add -unstable to archive names
2016-11-03 14:44:16 +02:00
Felix Lange
4f7627972e build: improve debian packaging
This commit tweaks the debian packaging tool:

* All build environment metadata can now be overriden on the command
  line. This allows testing the CI build behaviour locally.
* -unstable packages now actually contain the binaries (oops)
* packages use Go 1.7 to build
* archiving is skipped for PR builds
2016-10-02 13:08:56 +02:00
Péter Szilágyi
4c2cc32f2e Makefile: support building for the MIPS64 platforms (#2682) 2016-08-16 09:52:24 +02:00
Péter Szilágyi
8c23f20c68 Makefile, build: move cross compilation into ci.go 2016-08-08 13:45:44 +03:00
Felix Lange
6c33ba14a4 build: add ci.go, use it everywhere
The new build script, ci.go, replaces some of the older shell scripts.
ci.go can compile go-ethereum, run the tests, create release archives
and debian source packages.
2016-06-22 13:42:39 +02:00
Péter Szilágyi
6a00a3ade1 Makefile: go build instead of install (solves cross compile issues) 2016-05-06 16:56:22 +03:00
Felix Lange
bf5ae502ef Makefile: enable go vet on Travis CI 2016-04-15 11:17:27 +02:00
Péter Szilágyi
03f090b30b Makefile, cmd/geth: support building Android archives 2015-12-14 14:28:14 +02:00
Péter Szilágyi
0e4deeb6e7 Makefile, cmd/geth: assemble ios xcode frameworks 2015-12-08 18:05:43 +02:00
Felix Lange
02356b36d6 crypto/secp256k1: remove dependency on libgmp
Turns out we actually don't need it, USE_NUM_NONE works
because we also set USE_FIELD_INV_BUILTIN.
2015-12-03 21:12:13 +01:00
Péter Szilágyi
9acec62cf8 Makefile: support 64bit ARM iOS cross builds 2015-12-03 20:33:24 +02:00
Péter Szilágyi
98d68cfa91 Makefile: enable 64-bit ARM builds on Linux 2015-12-02 16:57:15 +02:00
Péter Szilágyi
391ca61678 Makefile: build ARM v5/v6/v7, drop high API mobile clients 2015-12-01 12:40:55 +02:00
Péter Szilágyi
9af4065243 Makefile: enable iOS experimental builds (fix prev omission) 2015-11-29 17:52:52 +02:00
Péter Szilágyi
83a22b457c Makefile: support library build modes 2015-11-24 19:49:08 +02:00