383 Commits

Author SHA1 Message Date
andri lim
729686ff57 add debug tool 2019-01-15 15:30:25 +02:00
andri lim
9f590a22e8 fix persist tool 2019-01-15 15:30:25 +02:00
andri lim
0c887b3711 move initializeEmptyDb to genesis.nim 2019-01-15 15:30:25 +02:00
Yuriy Glukhov
58ad0e472c Moved db backends to eth_trie 2019-01-13 15:31:59 +02:00
Ștefan Talpalaru
bd9d15d947 new build system
- isolate dependencies (both Git repos and ".nimble" dir) in "vendor"
- ensure that everything is compiled using our version of Nim with
  something as simple as "make"
- pull the latest changes with "make update"
- re-create Nimble's package dir and re-build the Nim compiler automatically when needed
- "env.sh" script that can be used to prefix any command that needs to use
  "nim" or "nimble" from our Nim repo
- move the top level nim.cfg to nimbus/nim.cfg so it doesn't apply to
  deps
- "fetch-dlls" `make` target for Windows to get precompiled Snappy, RocksDB and SQLite DLLs
2019-01-09 14:25:00 +02:00
Ștefan Talpalaru
00afb0889c
ForLoopMacros cleanup 2019-01-07 18:13:08 +01:00
Ștefan Talpalaru
89044b84e7 update Nimbus header and refine db backend picking
- dynamically generated copyright year interval
- added the db backend to the header
- documented the db-backend-changing define, made it case insensitive
  and ensured wrong values would trigger compilation errors
2019-01-07 01:21:29 +02:00
Ștefan Talpalaru
7c7260552d
rebase and various fixes
- port to new APIs
- added copyright headers
- bumped the copyright interval in modified files
- fixed tests
- reorganised imports
- normalised function names
- deleted some trailing space
- added test_rpc to all_tests
- assert() -> doAssert()
- moved the RPC port in a constant for the test suite
2019-01-06 20:19:48 +01:00
coffeepots
20933f494b
Moved and unstubbed intrinsicGas from vm_state_transactions 2019-01-06 19:03:35 +01:00
coffeepots
ab0f8f6748
Update eth_estimateGas to use optional types 2019-01-06 19:03:34 +01:00
coffeepots
3f1122702e
Initial commit for eth_estimateGas 2019-01-06 19:03:34 +01:00
coffeepots
ac9fb37465
Initial commit for eth_estimateGas 2019-01-06 19:03:20 +01:00
andri lim
b93d809805 fix internal transactions account tracing 2019-01-06 13:17:25 +02:00
andri lim
281b7dffac implement debug_setHead 2019-01-06 13:17:08 +02:00
andri lim
e78fb72ef6 fixes #188 2019-01-06 13:16:45 +02:00
andri lim
041ed689aa fix silly typo mistake 2019-01-06 11:43:38 +02:00
andri lim
96b18cfce3 add select_backend module 2019-01-06 11:43:38 +02:00
andri lim
0487720769 fix capturedb bug 2019-01-06 11:43:38 +02:00
andri lim
7683f68c15 fix statediff bug 2019-01-06 11:43:38 +02:00
andri lim
ab0fb7fdf0 fix getScore 32bit bug 2019-01-06 11:43:38 +02:00
andri lim
3a10f99694 add persistblock test 2019-01-06 11:43:38 +02:00
andri lim
5cf43c2909 implement dumpDebuggingMetaData 2019-01-06 11:43:38 +02:00
andri lim
8a6d351c22 add internal transactions dump 2019-01-06 11:43:38 +02:00
andri lim
5fc134ac2a add lmdb backend 2019-01-06 11:43:38 +02:00
andri lim
3b5562d85b rebase 2019-01-06 11:43:38 +02:00
andri lim
a6bf970b1b some cleanup 2019-01-06 11:43:38 +02:00
andri lim
9db4e9296a add tracer test 2019-01-06 11:43:38 +02:00
andri lim
e3fee70f0a fixes tracer 2019-01-06 11:43:38 +02:00
andri lim
890e8e11a4 dumpDebuggingMetaData stub 2019-01-06 11:43:38 +02:00
andri lim
3a355e0569 implement debug_traceBlock 2019-01-06 11:43:38 +02:00
andri lim
6dc4b0be9a implement dumpBlockState 2019-01-06 11:43:38 +02:00
andri lim
35c1c7e075 move block processing to executor 2019-01-06 11:43:38 +02:00
andri lim
f613f8b3c6 add dumpBlockState stub 2019-01-06 11:43:38 +02:00
andri lim
403e12b91f add statediff to traceTransaction 2019-01-06 11:43:38 +02:00
andri lim
9d6dbceefc add enable/disableTracing to vm_state 2019-01-06 11:43:38 +02:00
andri lim
b159b5c945 remove lastOpCodeHasRetVal, make it simpler 2019-01-06 11:43:38 +02:00
Ștefan Talpalaru
26ee2fce26 fix breakage with Nim HEAD 2019-01-04 15:39:16 +02:00
andri lim
40f094f6d5 fix datadir typo 2018-12-28 15:24:57 +07:00
Ștefan Talpalaru
048a43b2f1
better error handling
- added some useful `chronicles` defines in the top-level nim.cfg
- converted some assert() calls to error codes to avoid a reported
  segfault with -d:release
- the recoverable errors are being recovered from, in persistWorkItem()
- the only case that's a show stopper raises an exception
2018-12-17 23:36:38 +01:00
andri lim
ff08a6ad95 fix some typo 2018-12-16 15:38:51 +02:00
andri lim
d3380f6cf0 fix test 2018-12-16 15:38:51 +02:00
andri lim
8c6cec4999 fix getTransactionReceipt 2018-12-16 15:38:51 +02:00
andri lim
9c0bb70ba7 working makeReceipt 2018-12-16 15:38:51 +02:00
andri lim
ad1202f98a initial make_receipt 2018-12-16 15:38:51 +02:00
Ștefan Talpalaru
f91e69f7c7
more VM tracing
The existing vmState tracing is plugged into chronicles, at the TRACE
level, to facilitate state test debugging.

Some useful chronicles defines are added to "tests/nim.cfg" to simplify
the compile-and-run command for individual tests.
2018-12-12 11:47:10 +01:00
Ștefan Talpalaru
115843487c
general-state testsuite changes and better fork selection
- skipped the tests in allowedFailInCurrentBuild()
- replaced doAssert() with check() in testFixtureIndexes() so we can see
  both hash values on failure
- checking filename extension for JSON tests to avoid editor swap files
- replaced the duplicated block values in the main net's ChainConfig
  with values from forkBlocks
- allowed overriding the current fork in computations, because the old
  strategy of only looking at the block number doesn't work with JSON tests
  where the block number is usually 1
- explicitly pass the fork to gasCosts() and use it for conditional cost
  calculation
- fixed a logic error in the CREATE opcode
- fixed VM selection based on current fork in updateOpcodeExec()
- single point of control for supported forks in tests (just one fork, at the
  moment)
- 44 new test failures (that were probably passing for the wrong reasons)
2018-12-07 18:18:29 +01:00
Ștefan Talpalaru
03ec65487d
logging changes
- port some "echo" logging to "chronicles"
- change the logging level of messages that should not appear by default
  to TRACE instead of DEBUG
- remove the "nimbusTrace" define
- suppress logging for messages below the ERROR level in "nimble test"
2018-12-07 00:45:52 +01:00
coffeepots
86853ea97c
Merge pull request #187 from status-im/modexp-fixes
Modexp fixes
2018-12-06 10:10:59 +00:00
coffeepots
51df75a296 Add WhisperFilterOptions 2018-12-05 19:11:17 +02:00
coffeepots
ef172a857a Update new filter signature 2018-12-05 19:11:17 +02:00