Commit Graph

157 Commits

Author SHA1 Message Date
andri lim 9f8191d408 EVM write contract transformation 2019-03-12 13:32:41 +02:00
andri lim b1da3576ad
fix block 1149150 problem 2019-03-11 18:50:13 +07:00
andri lim de809b0060
fix block 1017395 problem 2019-03-11 12:03:57 +07:00
andri lim a15805e41a fix applyCreateMessage 2019-02-28 10:04:49 +02:00
andri lim fc613b33df computation.nim cleanup 2019-02-28 10:04:49 +02:00
andri lim 4cc318d948 fix block 668910 problem 2019-02-28 10:04:49 +02:00
andri lim 9d6fb4c82e add comment to transaction tracer 2019-02-27 13:30:18 +02:00
andri lim 2c032ad1ab refactor utils 2019-02-27 13:30:18 +02:00
andri lim 9522c1145f
fix #245 again 2019-02-25 22:59:05 +07:00
andri lim 9fcba8f90d
fix block 512335 problem 2019-02-25 21:18:13 +07:00
andri lim 0d64e0a6c3
fix #245 2019-02-25 20:02:16 +07:00
andri lim 3dd18bd8ec
fix block 299804 problem 2019-02-25 17:03:43 +07:00
andri lim 592fa5df7e fix SIGNEXTEND opcode 2019-02-23 17:57:53 +02:00
andri lim bc675b1daa fix contract creation 2019-02-23 17:57:53 +02:00
andri lim f5e54b8d4f fix self destruct problem 2019-02-23 17:57:53 +02:00
andri lim 28245e92a2 fixes #235 2019-02-22 13:10:22 +02:00
andri lim 47a8089ff8 fixes #236 2019-02-21 13:09:36 +02:00
andri lim 4dc45550dd fix block 226522 problem 2019-02-21 13:09:36 +02:00
andri lim b198ffee2d fix vm oog problem 2019-02-20 15:16:07 +02:00
andri lim dcf7699358 fix callcode regression 2019-02-20 15:16:07 +02:00
andri lim 71e7ee2dae fixes ECRecover precompiles 2019-02-20 15:16:07 +02:00
andri lim 96ae5ee05a fix CALLCODE storage address 2019-02-20 15:16:07 +02:00
andri lim 999c958641 fix opcode call OOG 2019-02-20 15:16:07 +02:00
andri lim 2e8176eb15 simplify CREATE gasCost 2019-02-20 15:16:07 +02:00
andri lim 0b9326f955 fix block 81383 problem 2019-02-20 15:16:07 +02:00
andri lim c722f34ef3 safer snapshot commit revert and dispose 2019-02-18 18:15:32 +02:00
andri lim d015fc3819 bugfix: transaction tracer more robust storage key handling 2019-02-18 13:16:04 +02:00
andri lim 8461211f9a bugfix: implement computation snapshot, revert, commit 2019-02-18 13:16:04 +02:00
andri lim 927abdc142 bugfix: multi-depth transaction tracer storage 2019-02-18 13:16:04 +02:00
andri lim a1242d2538 bugfix: block 78458 crash 2019-02-18 13:16:04 +02:00
andri lim 282824cd53 zah's request: add missing comments 2019-02-18 13:16:04 +02:00
andri lim 8f9d1ae748 fixes callcode bug 2019-02-15 17:20:51 +02:00
andri lim d7bd55bd21 fixes opcode call: simplify gas costs 2019-02-15 17:20:51 +02:00
andri lim 44d05dfdb1 fixes transaction_tracer.nim: tracing depth 2019-02-15 17:20:51 +02:00
andri lim 17188dfcb1 fixes memory write: no padding 2019-02-15 17:20:51 +02:00
andri lim e38b1bf803 fixes generateChildComputation 2019-02-15 17:20:51 +02:00
andri lim 5701c8bacb fixes precompile contract: identity gascost 2019-02-15 17:20:51 +02:00
andri lim 00087de2ce trade 7 failed GST with 107 OK GST 2019-02-07 11:01:43 +01:00
andri lim 9efef3829f fixes storage tracer 2019-02-06 18:42:03 +01:00
andri lim a28f06a825 fixes CALL opcode 2019-02-06 18:42:03 +01:00
Yuriy Glukhov 481c6cf4ed Use nim-eth (#224) 2019-02-05 20:15:50 +01: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
andri lim b93d809805 fix internal transactions account tracing 2019-01-06 13:17:25 +02:00
andri lim e78fb72ef6 fixes #188 2019-01-06 13:16:45 +02:00
andri lim 8a6d351c22 add internal transactions dump 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 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