Commit Graph

203 Commits

Author SHA1 Message Date
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
coffeepots 372ea24c41
Merge pull request #125 from status-im/getSenderReturn
Alternative form of getSender that raises and returns address
2018-08-29 18:07:04 +01:00
coffeepots e59d019a03
Merge branch 'master' into chain-db-interface 2018-08-29 17:23:25 +01:00
coffeepots bdb1904fd5 Alternative form of getSender that raises and returns address 2018-08-29 16:52:12 +01:00
coffeepots ffa5aafab4 Get block RPCs now return Option[BlockObject] 2018-08-29 16:01:43 +03:00
coffeepots 396f31f643 Updated to use option types 2018-08-29 16:01:43 +03:00
coffeepots f3df5156d9 Update to option types instead of refs 2018-08-29 16:01:43 +03:00
coffeepots 18d62d8c79 toSignature is now a proc 2018-08-29 16:01:43 +03:00
coffeepots 74a4ab6efc Update len to template 2018-08-29 16:01:43 +03:00
coffeepots ae03675b07 Use toCanonicalAddress in getSender 2018-08-29 16:01:43 +03:00
coffeepots 4e007e7d6c Update transaction hash to not include tx signature 2018-08-29 16:01:43 +03:00
coffeepots 6a55c59cc5 Simplify populating transaction object by moving fetching inside proc 2018-08-29 16:01:43 +03:00
coffeepots bdb48b9438 Update account gas in transaction blocks 2018-08-29 16:01:43 +03:00
coffeepots f8a3581af5 Add sender address derivation for several RPCs 2018-08-29 16:01:43 +03:00
coffeepots 55fee296d8 Update estimateGas return type, copy header logs bloom for block header 2018-08-29 16:01:43 +03:00
coffeepots 53bd7774db Add sender to getReceipt, calculate transaction hash once 2018-08-29 16:01:43 +03:00
coffeepots d901c20bb2 Add toSignature(Transaction) and getSender(Transaction) local procs 2018-08-29 16:01:43 +03:00
coffeepots 3f1e140d59 Add hex data string checking to web3_sha3 2018-08-29 16:01:43 +03:00
coffeepots 6223a9a638 Add eth_newFilter stub now types are fixed 2018-08-29 16:01:43 +03:00
coffeepots dedb63a7f7 eth_sign (sans retrieval of account private key) 2018-08-29 16:01:43 +03:00
coffeepots f51fca2cae Add cumulativeGas to receipts, update FilterLog type, getWork type 2018-08-29 16:01:43 +03:00
coffeepots f151911ddf Updates to use GasInt and Filter Logs 2018-08-29 16:01:43 +03:00
coffeepots 33b7dd931b Add Whisper RPC prototypes 2018-08-29 16:01:43 +03:00
coffeepots 3f3c4249ba Add Whisper types 2018-08-29 16:01:43 +03:00
coffeepots 3f2f8f83b4 Add WhisperIdentityStr 2018-08-29 16:01:43 +03:00
coffeepots fec18e4ec2 Add WhisperIdentity string, clean up len func 2018-08-29 16:01:43 +03:00
Yuriy Glukhov e3be8ca30a Separate Chain from ChainDB 2018-08-29 11:49:01 +03:00
coffeepots 6b68d6ddb2 Fixed wrong equality 2018-08-24 18:34:54 +01:00
coffeepots 3b82c9bd44 Remove and 0xff 2018-08-24 17:03:44 +01:00
coffeepots c3f73860a4 Remove defunct comment 2018-08-24 16:52:48 +01:00
coffeepots 7542b42d32 Remove BaseTransaction object, add transaction.getSender() 2018-08-24 16:46:48 +01:00
coffeepots 47f81df3d4 Comment on hex string conversion from array types. 2018-08-21 14:31:45 +01:00
coffeepots 9d506993a1 Add some error checking for missing body hash 2018-08-21 13:33:38 +01:00
coffeepots 6ac68b1c12 eth_getUncleByBlockNumberAndIndex 2018-08-21 13:33:37 +01:00
coffeepots cd85ed2281 eth_getUncleByBlockHashAndIndex, populate uncle hashes, not full uncles 2018-08-21 13:33:37 +01:00
coffeepots 5516a0dcfa Update block object to include hashes in uncles, not full block header 2018-08-21 13:33:37 +01:00
coffeepots 09861bf2e2 eth_getTransactionReceipt 2018-08-21 13:33:37 +01:00
coffeepots d56cf9d2e4 Update receipt types 2018-08-21 13:33:37 +01:00
coffeepots b516acfef0 Add receipt object 2018-08-21 13:33:37 +01:00
coffeepots 79b0032583 eth_getTransactionByBlockNumberAndIndex 2018-08-21 13:33:37 +01:00
coffeepots 3b53f18b84 eth_getTransactionByBlockHashAndIndex 2018-08-21 13:33:37 +01:00
coffeepots 19c68422bc eth_getTransactionByHash 2018-08-21 13:33:37 +01:00
coffeepots f84a4bd9d9 Updates to TransactionObject in line with internal types 2018-08-21 13:33:37 +01:00
coffeepots 67e9f47ac5 Add getTransactionKey 2018-08-21 13:33:37 +01:00
coffeepots b30b253653 Update TransactionObject to use Blob 2018-08-21 13:33:37 +01:00
coffeepots a5ea8c67bd Update nonce type 2018-08-21 13:33:37 +01:00
coffeepots 8524c0b060 Fixes (eg eth_getTransactionCount) and helper funcs 2018-08-21 13:33:37 +01:00
coffeepots 3f2311be23 Add ref EthAddress 2018-08-21 13:33:37 +01:00
coffeepots c9de0fbd29 Reduce range of cleanMemRef 2018-08-17 17:16:40 +03:00
coffeepots fd7062fecb Fix VMTest message creation in 32 bits, also duplicated word in comment 2018-08-17 17:16:40 +03:00
coffeepots ff52d75fc0 Fix overflowing int in 32 bit 2018-08-17 17:16:40 +03:00
coffeepots 66adba9037 Fix for gas costs in 32 bit 2018-08-17 17:16:40 +03:00
coffeepots 0db650199b
Merge pull request #108 from status-im/moreRpcs1
More rpcs
2018-08-16 15:46:43 +01:00
coffeepots 22590dea32 eth_getBlockByNumber, using actual BlockHeader hash now 2018-08-15 14:12:49 +01:00
coffeepots 845866fc97 eth_getBlockByHash, changes to support returning marshalled Nim types 2018-08-15 14:08:40 +01:00
coffeepots 1826c0ce92 Add JSON transform for bloom filter 2018-08-15 14:07:06 +01:00
coffeepots b6a73327c3 Converted rpc types to Nimbus types in line with changes to hexstrings 2018-08-15 13:14:32 +01:00
coffeepots 4b03f6d4db Updated hexstrings to translate common Nimbus types to hex strings 2018-08-15 13:13:30 +01:00
coffeepots 88ab097a61 Add json converters for byte array and UInt256 types to hex string 2018-08-14 20:22:04 +01:00
coffeepots ee15f4a995 eth_getCode and helper func strToAddress 2018-08-14 18:22:31 +01:00
coffeepots 25f8123c6f eth_getUncleCountByBlockNumber 2018-08-14 16:55:57 +01:00
coffeepots 0e9edf8032 eth_getUncleCountByBlockHash 2018-08-14 16:55:28 +01:00
coffeepots b9906fb263 eth_getBlockTransactionCountByNumber 2018-08-14 16:54:59 +01:00
coffeepots 1871a7b090 eth_getBlockTransactionCountByHash 2018-08-14 16:53:45 +01:00
coffeepots 404d4d883d eth_getTransactionCount 2018-08-14 16:52:30 +01:00
Yuriy Glukhov 55b5dbd719 Raise KeyError when key not found 2018-08-14 18:40:59 +03:00
Dustin Brody f91bb16bdd Initial EVMC message type API matching: reorder overlapping fields to match EMVC; rename to to destination; replace isStatic with more general flags (with only one non-zero value); remove superfluous-seeming shouldTransferValue; keep internalFoo fields, which aren't in PyEVM either, so weren't per se part of PyEVM matching 2018-08-14 15:03:18 +03:00
coffeepots c3fbb0a098 Add eth_syncing, eth_getStorageAt, eth_blockNumber, eth_coinbase and some stubs 2018-08-13 19:29:38 +01:00
coffeepots 370da80478 Add types to support RPC data transfer 2018-08-13 19:25:21 +01:00
coffeepots 4c38ede9c9 Add EthHashStr validation 2018-08-13 18:39:17 +01:00
coffeepots e4d1c6817a Added EthAddressStr to validation 2018-08-13 17:33:57 +01:00
coffeepots 581b4a98ef Fixed allowing "0x" for data but not quantity, less exports 2018-08-09 13:50:49 +03:00
coffeepots 07e28ac01e proc to func and update names 2018-08-09 13:50:49 +03:00
coffeepots b37bdecc02 Convert some procs to funcs and a bit of renaming, use unlikely 2018-08-09 13:50:49 +03:00
coffeepots 64b96cd8f5 Remove redundant conversion 2018-08-09 13:50:49 +03:00
coffeepots a027ca2b25 eth_getBalance in p2p 2018-08-09 13:50:49 +03:00
coffeepots da8849a5a0 Removed eth_getBalance from common 2018-08-09 13:50:49 +03:00
coffeepots 4773559739 Fixes for short strings, added raise-on-failed-validation procs 2018-08-09 13:50:49 +03:00
coffeepots 723ef3cf70 Fix for json conversion of hexstrings 2018-08-09 13:50:49 +03:00
coffeepots d4571c01dd Add JSON RPC hex strings support 2018-08-09 13:50:49 +03:00
coffeepots 79abeafa41 Setup test rpc server, initial call to eth_getBalance 2018-08-09 13:50:49 +03:00
Zahary Karadjov 350188bd29 address review comments 2018-08-09 12:25:37 +03:00
Zahary Karadjov d902be66ee Fix the genesis state hash computation
The account database needed to use the secure flavour of the Hexary
Trie. This means all keys are SHA3 hashed before being inserted.
2018-08-08 15:48:34 +03:00
Dustin Brody ea2f3b71bf
Complete VM Test sync, with EXP(0, 0) defined as 1 now (#98) 2018-08-07 18:41:01 +00:00
Dustin Brody 2136bc74fd
Sanitize memory addresses and lengths (#97)
* add a helper function to ensure for memory addressing and length purposes, especially as applied to array indexing and bounds-checking, that non-negative UInt256 numbers remain non-negative when lossily converted to int's
2018-08-06 16:33:20 +00:00
Yuriy Glukhov 467a9c3d7a
Merge pull request #93 from status-im/genesis
Added genesis initialization
2018-08-06 18:02:39 +03:00
Yuriy Glukhov e4929d4f60 Slightly reworked ChainDB interface to more consistent 2018-08-03 14:56:49 +03:00
Yuriy Glukhov db62ef132e More comments addressed 2018-08-03 14:10:07 +03:00
Dustin Brody 71679d6d95 fix assorted test fixtures which have been un-skipped 2018-08-02 15:57:28 -07:00