Commit Graph

53 Commits

Author SHA1 Message Date
Jeffrey Wilcke
445feaeef5 core, core/state, trie: EIP158, reprice & skip empty account write
This commit implements EIP158 part 1, 2, 3 & 4

1. If an account is empty it's no longer written to the trie. An empty
  account is defined as (balance=0, nonce=0, storage=0, code=0).
2. Delete an empty account if it's touched
3. An empty account is redefined as either non-existent or empty.
4. Zero value calls and zero value suicides no longer consume the 25k
  reation costs.

params: moved core/config to params

Signed-off-by: Jeffrey Wilcke <jeffrey@ethereum.org>
2016-11-13 10:44:04 +01:00
Felix Lange
87670a7ac1 all: remove weird files 2016-10-30 11:02:34 +01:00
Jeffrey Wilcke
64af2aafda core, core/vm: added gas price variance table
This implements 1b & 1c of EIP150 by adding a new GasTable which must be
returned from the RuleSet config method. This table is used to determine
the gas prices for the current epoch.

Please note that when the CreateBySuicide gas price is set it is assumed
that we're in the new epoch phase.

In addition this PR will serve as temporary basis while refactorisation
in being done in the EVM64 PR, which will substentially overhaul the gas
price code.
2016-10-14 18:09:17 +02:00
Péter Szilágyi
461cdb593b core, params, tests: add DAO hard-fork balance moves 2016-07-15 16:52:55 +03:00
Péter Szilágyi
90e07b19ab cmd: fix CLI package deprecation warnings 2016-06-10 11:23:00 +03:00
Bas van Kervel
861add3d72 cmd/geth: codegansta/cli package renamed to urfave/cli 2016-06-09 15:37:13 +02:00
Felix Lange
6fdd0893c3 all: fix go vet warnings 2016-04-15 11:17:27 +02:00
Jeffrey Wilcke
f0cbebb19f core: added basic chain configuration
Added chain configuration options and write out during genesis database
insertion. If no "config" was found, nothing is written to the database.

Configurations are written on a per genesis base. This means
that any chain (which is identified by it's genesis hash) can have their
own chain settings.
2016-04-01 01:01:10 +02:00
Jeffrey Wilcke
14013372ae core: Added EVM configuration options
The EVM is now initialised with an additional configured object that
allows you to turn on debugging options.
2016-03-23 23:02:42 +01:00
Jeffrey Wilcke
67c8ccc309 cmd/ethtest: added trace flag for debugging 2015-08-11 11:46:52 +02:00
Jeffrey Wilcke
97cdf84899 Merge pull request #1479 from tgerring/ethtest
Update ethtest default path for BlockTests
2015-08-03 07:18:48 -07:00
Felix Lange
3f047be5aa all: update license headers to distiguish GPL/LGPL
All code outside of cmd/ is licensed as LGPL. The headers
now reflect this by calling the whole work "the go-ethereum library".
2015-07-22 18:51:45 +02:00
Taylor Gerring
d103af5dd4 Disassociate test directory from test name 2015-07-22 11:39:36 +01:00
Felix Lange
5da82077d1 cmd/ethtest, tests: add support for RLP JSON tests 2015-07-17 15:13:24 +02:00
Felix Lange
bdae4fd573 all: add some godoc synopsis comments 2015-07-07 14:12:45 +02:00
Felix Lange
e813626ee1 all: remove @author comments 2015-07-07 14:12:44 +02:00
Felix Lange
ea54283b30 all: update license information 2015-07-07 14:12:44 +02:00
Taylor Gerring
d1e589289c Expand --test switch 2015-06-19 15:08:53 +02:00
Taylor Gerring
0743243dce Add --skip option to CLI
Disassociates hardcoded tests to skip when running via CLI. Tests still
skipped when running `go test`
2015-06-19 11:38:23 +02:00
Taylor Gerring
01ec4dbb12 Add stdin option 2015-06-18 22:24:07 +02:00
Taylor Gerring
a86452d22c Minor cleanup 2015-06-18 22:20:45 +02:00
Taylor Gerring
49336675f3 Expand CLI options to allow running all tests 2015-06-18 22:20:45 +02:00
Taylor Gerring
516362bcad Allow specifying single depth directory 2015-06-18 22:20:45 +02:00
Taylor Gerring
c941a39b75 Cleanup logging 2015-06-18 22:20:45 +02:00
Taylor Gerring
6931267324 Wire ethtest to new tests structure 2015-06-18 22:20:45 +02:00
Taylor Gerring
6415ed0730 Require a first argument of test type 2015-06-18 22:13:41 +02:00
obscuren
f047699afb Updated glog 2015-04-10 19:59:07 +02:00
obscuren
a7750c929b Fixed tests to reflect log changes 2015-04-08 20:45:39 +02:00
zelig
a983a215dc fix ethtest logging 2015-03-23 17:08:49 +00:00
obscuren
0330077d76 moved state and vm to core 2015-03-23 16:59:09 +01:00
Gustav Simonsson
5d31a475e9 Fix new types for blocktests and comment out non-working log level setter 2015-03-23 16:32:20 +01:00
obscuren
df5901fdc5 Removed more casts 2015-03-19 22:45:03 +01:00
obscuren
ad7e491214 improved test output 2015-03-19 15:04:29 +01:00
obscuren
d7ab716eea Fixed mkdnode & added some tests 2015-03-19 10:57:02 +01:00
obscuren
b523441361 Moved ethutil => common 2015-03-16 11:27:38 +01:00
obscuren
80592f244d more obvious failure for ethtest 2015-03-12 23:26:58 +01:00
obscuren
347cb272be fixed ethtest 2015-03-12 19:41:56 +01:00
obscuren
fb71c9f6ee Return 1 on fail 2015-03-12 18:22:56 +01:00
obscuren
31a95151c9 updated rnd vm test => state test 2015-03-12 01:12:28 +01:00
obscuren
ea9a549bbd Removed exported fields from state object and added proper set/getters 2015-02-20 14:19:34 +01:00
obscuren
d5d9746ca3 updated tests 2015-01-15 10:46:42 +01:00
obscuren
585f259b63 Support input from args 2015-01-09 12:04:54 +01:00
obscuren
982c812e81 Read directly from stdin 2015-01-07 13:38:28 +01:00
obscuren
fed3e6a808 Refactored ethutil.Config.Db out 2015-01-07 13:17:48 +01:00
obscuren
117f66e823 Added license headers 2015-01-06 12:13:57 +01:00
obscuren
09841b1c9b Cleaned up some of that util 2015-01-04 14:20:16 +01:00
obscuren
a9068aa8ff Merge branch 'develop' into poc8 2014-12-30 17:10:02 +01:00
obscuren
89244981a8 Additional checking on gas 2014-12-30 17:09:54 +01:00
obscuren
e42517754a updated ethereum.js 2014-12-22 11:57:13 +01:00
obscuren
3664cd58e3 Updated testing tools 2014-12-04 11:30:41 +01:00