241 Commits

Author SHA1 Message Date
coffeepots
63f9acd8ce Add create and apply message procs 2018-09-14 18:03:26 +01:00
coffeepots
c7a014bb10 Add gas cost for create 2018-09-14 17:59:21 +01:00
coffeepots
af76d209a6 Add opcode executor proc to computation 2018-09-14 16:47:40 +01:00
coffeepots
7cd7a73a1f Add opCodeExec to allow computation to execute code 2018-09-14 16:42:15 +01:00
coffeepots
213aebde7d Update some comments, adding TODO item for getStateDb 2018-09-14 16:16:55 +01:00
coffeepots
6183761251 Refactor for generateChildComputation 2018-09-14 16:16:55 +01:00
coffeepots
2b6342764c Add fork to string proc 2018-09-14 16:16:55 +01:00
coffeepots
d465fcd038 Appy child computation in call op code 2018-09-14 16:16:55 +01:00
coffeepots
2a38c0194d Expose isCreate for export 2018-09-14 16:16:55 +01:00
coffeepots
69f07c587a Add generateChildComputation, addChildComputation and applyChildComputation 2018-09-14 16:16:55 +01:00
coffeepots
d24108a79b Convert code from byte range to seq 2018-09-14 16:16:55 +01:00
coffeepots
b4fd38e062 Call now gets and checks balance against funds, also now fetches code 2018-09-14 16:16:55 +01:00
Dustin Brody
7ba90fda54
48 new working GeneralStateTests, via fixing some overflows/underflows, creating a rudimentary balance commit/revert scheme, and implementing account deletion for the selfdestruct instruction (#146) 2018-09-14 13:43:40 +00:00
Yuriy Glukhov
62260c786d Caching DB backend 2018-09-12 17:53:15 +03:00
Dustin Brody
fd07d6fed1 A simple/basic GeneralStateTest runner which gets 400+ of them correct 2018-09-10 19:42:45 +03:00
Yuriy Glukhov
3a1ec035b3 Various fixes towards state reconstruction 2018-09-07 14:00:37 +03:00
coffeepots
09d35d4bfd Fix merge conflict 2018-09-06 13:59:22 +01:00
coffeepots
7e02eedea0 Use toOpenArray in generateAddress 2018-09-06 13:57:42 +01:00
coffeepots
085880758b Always update account nonce even if there's an contract address collision 2018-09-06 13:57:42 +01:00
coffeepots
ca6eb0cb38 Don't touch nonce until after address in-use check 2018-09-06 13:57:42 +01:00
coffeepots
555687ba97 Comment reference to issue regarding address collisions 2018-09-06 13:57:42 +01:00
coffeepots
9f1027102c Make generateAddress a func 2018-09-06 13:57:42 +01:00
coffeepots
7a5a43f50f Add generateAddress utility 2018-09-06 13:57:42 +01:00
coffeepots
0e2068c99e Create Op now generates contract addresses & checks for collisions 2018-09-06 13:57:42 +01:00
coffeepots
350bf7e672 Add hasCodeOrNonce 2018-09-06 13:57:42 +01:00
coffeepots
69befaf4fd Use toOpenArray in generateAddress 2018-09-06 13:48:55 +01:00
Yuriy Glukhov
0a247a58f3 New nim compat 2018-09-06 13:16:13 +03:00
coffeepots
485781e6ad Always update account nonce even if there's an contract address collision 2018-09-06 10:58:35 +01:00
Dustin Brody
9e1be6438e Extract transaction senders from GeneralStateTest fixtures 2018-09-06 11:20:43 +03:00
coffeepots
2b87d2b7f5 Merge branch 'createOpContractAddr' of https://github.com/status-im/nimbus into createOpContractAddr 2018-09-04 17:15:58 +01:00
coffeepots
bd9f732b4e Don't touch nonce until after address in-use check 2018-09-04 17:15:46 +01:00
coffeepots
12834fba12
Merge branch 'master' into createOpContractAddr 2018-09-04 16:37:43 +01:00
coffeepots
f3fb306a33 Comment reference to issue regarding address collisions 2018-09-04 16:35:20 +01:00
Dustin Brody
4262ea8670 fix (1) overflow/signed confusion when reading large-valued storage entries; (2) adjust test fixture validity for GeneralStateTests; (3) remove incorrect usage of state trie for code (not codehash) storage; add ability to display state; (4) avoid double-hashing keys for already-hashed SecureHexaryTrie for storage; (5) add intentionally local workaround for empty code in GeneralStateTest fixtures lacking 0x prefix; (6) fix nonce parsing, which is always hex string in test fixtures 2018-09-04 17:55:30 +03:00
coffeepots
c3c84782a5 Make generateAddress a func 2018-09-04 12:27:07 +01:00
coffeepots
a28ef962b3 Add generateAddress utility 2018-09-04 12:23:47 +01:00
coffeepots
a7c1168b3a Create Op now generates contract addresses & checks for collisions 2018-09-03 19:30:27 +01:00
coffeepots
7ed2403c5c Add hasCodeOrNonce 2018-09-03 19:24:55 +01:00
Yuriy Glukhov
b055504f8e Added --experimental:forLoopMacros to nims 2018-09-03 15:20:40 +03:00
coffeepots
bda219f8fe Make tests green (AccountNonce) 2018-09-02 03:26:22 +01:00
coffeepots
4d0adfd514 Update RPC types to use AccountNonce 2018-09-01 16:03:06 +03:00
coffeepots
e10df33864 Update return value to use AccountNonce 2018-09-01 16:03:06 +03:00
coffeepots
1427d59f27 Change setNonce, getNonce to use AccountNonce, which is uint64 from UInt256 2018-09-01 16:03:06 +03:00
coffeepots
0229d16fed Change hashing function to use AccountNonce 2018-09-01 16:03:06 +03:00
coffeepots
dbc35fb198 Account.nonce is now AccountNonce which is uint64 from UInt256 2018-09-01 16:03:06 +03:00
Jacek Sieka
1d49b65d55
Merge pull request #117 from status-im/logging-to-chronicles
replace logging module with nim-chronicles (fixes #38)
2018-08-31 13:15:08 -06:00
coffeepots
77df371cd1 Update toSignature to use range instead of UInt256 2018-08-31 17:18:19 +03:00
Jacek Sieka
db202dc35f
replace logging module with nim-chronicles (fixes #38)
This blindly changes logging to nim-chronicles - issues that ensue:

* keeps gas cost computation logs hidden behind flag
* unclear if logScope is practical - for example, since vm is split over
many files, topics get lost when using simple top-level per-module
topics
* when passing named object around, scope should incliude the name of
the object but this is caught neither by logScope nor by dynamicLogScope
2018-08-29 16:13:03 -06:00
coffeepots
055b169e86 Merge branch 'master' of https://github.com/status-im/nimbus 2018-08-29 18:13:10 +01:00
coffeepots
2f6f9b765c Use getSender from transactions, Re-add getAccountDb, fix accountDbFromTag 2018-08-29 18:12:39 +01:00