Commit Graph

104 Commits

Author SHA1 Message Date
Gav Wood
129ce97ad5 Constants for SF# and update. 2016-06-23 11:30:48 +02:00
Gav Wood
2582253f95 Install trigger for DAO-rescue soft-fork.
Soft-fork should only be primed to trigger if the gas-limit of
block #1760000 is at most 4,000,000.

To accomplish this we pass in the gas limit of that block to
EnvInfo so it can inform Schedule. This gets marshalled through
`OpenBlock`/`ClosedBlock` and the `enact` functions much like
`last_hashes`. `block.rs`'s `env_info()` takes care to ensure
that if the current block happens to be #1760000, then we
populate with the current `gas_limit`.
2016-06-18 20:26:44 +02:00
Gav Wood
293d9f15d5 Tests for JSON serialisation of statediff/vmtrace (#1241)
* Splitting RPC Apis into more fine-grained sets

* Remove old code/comment.

* Add test for VMTrace ser.

* Add StateDiff ser test.
2016-06-08 12:40:55 -07:00
Robert Habermeier
13968aaa38 Refactor triedb constructors to error on invalid state root (#1230)
* add TrieError, refactor Trie DB creation

* remove Result type alias due to glob import conflicts

* fix fallout in state.rs

* add debug, display impl for TrieError

* fix fallout in account.rs

* ethcore::Error::TrieError variant

* fix remaining fallout in ethcore crate

* added From<TrieError> impl for Error, removed map_err calls

* fix test breakages

* fix doc tests

* update docs

[ci skip]
2016-06-07 11:44:09 -07:00
Robert Habermeier
ff7c755930 mostly purge x! from ethcore 2016-05-31 16:59:01 +02:00
Marek Kotewicz
6cff58055d CLI option for using JITEVM (#1103)
* easily configurable vm (in progress)

* completely removed vm_factory from engine

* --jitvm command line flag
2016-05-19 00:44:49 +02:00
Gav Wood
ac73b2628a Basic Authority (#991)
* Firt commit.

* First non-functional but correct implementation of BasicAuthority.

Still needs:
- Sealing infrastructure.

* Punch a hole to give miner access to key store.

* Fix test built.

* Basic version of synchronous mining.

This will seal a block whenever a new transaction comes through.
To be made better we need a timer which will wait for one second after the
last block before sealing a new one - better still would be to cooperatively
interleave blocks with other sealing nodes.

* Add tests.

* Fix minor issues from repotting.

* Address grumbles.
2016-05-03 17:23:53 +02:00
Marek Kotewicz
66477a9476 Core tracedb functionality. (#996)
* fixed encoding 0u8

* simplified if else stmt

* tracedb core

* more comprehensive tracedb tests

* fixed minor review issues

* addresses filter

* fixed typos

* replace malformed with corrupted

* trace switch

* db key is generic and can be made smaller

* smaller tracedb keys

* tracedb version

* fixed ignored tests

* rename Tracedb -> TraceDB

* fixed typos

* proves

* trace only top level calls to builtins to avoid DDoS attacks

* fixed tracedb config switches

* fix comments fat replaced with trace

* vector-addressing scheme for localized traces

* removed comments

* removed first, redundant 0 from trace address

* updated db.trace method

* additional tests for tracedb.trace()
2016-04-30 16:41:24 +01:00
Marek Kotewicz
373284ca0a spec loading cleanup (#858)
* spec loading cleanup in progress

* changed engine field in json spec

* refactored engine params

* polishing spec loading refactor

* fixed compiling json tests

* fixed compiling parity

* removed warnings

* removed commented out code

* fixed failing test

* bringing back removed TODO in spec.
2016-04-09 10:20:35 -07:00
Tomasz Drwięga
85da55a537 Fixing warnings 2016-04-06 10:55:40 +02:00
Gav Wood
d7c377dea6 Fix build. 2016-03-28 10:12:15 +02:00
Gav Wood
7c5b171e3f Differentiate between ClosedBlock (can be reopened) and LockedBlock (cannot).
`ClosedBlock`s still keep the pre-finalised state (i.e. state after the last transaction).
`LockedBlock`s do not. New mining algo needs to reopen these `ClosedBlock`s, however enactment
system does not (and `ClosedBlock`s are slower & more hungry), hence the distinction.
2016-03-27 20:33:23 +02:00
Gav Wood
830ef7ddfc New mining framework.
Fixes #756.
2016-03-24 23:03:22 +01:00
Gav Wood
4e013ba2fc Refactor pending_block to always return invalid txs and sometimes a block.
Docuemnt SealingWork properly.
2016-03-23 16:28:02 +00:00
Gav Wood
a134f939e9 Non-functioning draft of code. 2016-03-22 13:05:18 +01:00
Gav Wood
0cef2cfc46 Merge pull request #778 from ethcore/json_tests_refactor
use ethjson module to load chain json tests
2016-03-20 09:51:36 +01:00
debris
2face3f938 use ethjson module to load chain json tests 2016-03-19 18:13:14 +01:00
Gav Wood
66837452c2 Expose tracing all the way to BlockChain; now it's up to blockchain to integrate. 2016-03-19 13:37:47 +01:00
Gav Wood
1bfcbca8af Add doumentation, make tracing optional and expose at OpenBlock level. 2016-03-19 12:54:34 +01:00
arkpar
9dea31031c Enact block with uncles test 2016-03-15 14:35:45 +01:00
Gav Wood
97051cb949 Add RLP, not a data item. 2016-03-14 18:20:24 +01:00
Gav Wood
f6b7884a1d Allow configuration of target gas limit. 2016-03-14 02:00:22 +01:00
Nikolay Volf
03a4f9e268 Merge pull request #673 from ethcore/boxjdb
JournalDB -> Box<JournalDB>, and it's a trait.
2016-03-11 20:03:39 +03:00
Gav Wood
5499f4530c Fix tests. 2016-03-11 15:01:15 +01:00
Gav Wood
2a856a13f0 Obvious typo fix. 2016-03-11 13:21:53 +01:00
Gav Wood
d71c5d4c17 Place Sync/Send in trait. 2016-03-11 13:19:10 +01:00
Gav Wood
756f964130 JournalDB -> Box<JournalDB>, and it's a trait. 2016-03-11 12:54:48 +01:00
Tomasz Drwięga
d84e008e00 Removing superflous check for nightly 2016-03-11 11:16:49 +01:00
Tomasz Drwięga
cbc2c0cf0c Fixing clippy warnings. When building on nightly it is required to enable clippy 2016-03-07 14:34:17 +01:00
Gav Wood
86c34c7d10 Remove "fix". 2016-03-04 23:29:56 +01:00
Gav Wood
3daa4c6497 Fix max uncles. 2016-03-03 11:39:00 +01:00
Gav Wood
30c6820437 Refactor and cleanup. 2016-03-02 00:52:18 +01:00
Gav Wood
628a53ccec Update tests. Fix our tests. 2016-03-01 20:02:59 +01:00
Gav Wood
140711dd8a Fixups from review.
Reduce size of default extra-data.
Introduce find_uncle_headers.
2016-03-01 19:59:12 +01:00
Gav Wood
afc0605080 Refactor engine to make it clear that we're actually checking the seal. 2016-03-01 17:23:44 +01:00
Gav Wood
48df869202 --author and --extra-data options. Fixed null parent-hash. 2016-03-01 16:58:14 +01:00
Gav Wood
394e9c679b Reorganised ImportError to be a type of Errpr (rather than vice-versa).
Added support for eth_submitWork.
2016-03-01 00:02:48 +01:00
Gav Wood
83b8e7df5a Initial refactor and block closing. 2016-02-29 14:57:41 +01:00
Gav Wood
fd63fa6836 Update block.rs 2016-02-26 17:27:56 +01:00
Tomasz Drwięga
d914a27bdf Removing lifetimes from Blocks 2016-02-24 11:17:25 +01:00
Tomusdrw
07e704c968 Fixing clippy warnings. Implementing PartialEq for Uints 2016-02-23 11:40:23 +01:00
debris
b5d6359030 fixed allow warnings in ethcore 2016-02-19 12:40:23 +01:00
arkpar
8fa62130e3 Added TODOs 2016-02-19 00:23:05 +01:00
debris
df3d17789a compiling ethcore on beta 2016-02-19 00:06:06 +01:00
Marek Kotewicz
720c280fde Merge pull request #350 from ethcore/signed_transaction
SignedTransaction structure
2016-02-05 14:11:12 +01:00
Gav Wood
105f4262dd Merge pull request #354 from ethcore/license
License
2016-02-05 14:06:10 +01:00
debris
c90d64662a added license in every *.rs file 2016-02-05 13:40:41 +01:00
arkpar
75ebac36a3 Cleanup 2016-02-05 01:49:06 +01:00
debris
e92c6ee719 Signed transaciton split in progress 2016-02-04 17:23:53 +01:00
arkpar
b9af3f9260 State copy optimization 2016-02-03 19:34:51 +01:00
debris
a1cedaa994 ethcore block and blockchain module fixes 2016-02-02 16:24:37 +01:00
debris
30dc9d857d cleanup ethcore public interfaces 2016-02-02 15:29:53 +01:00
Nikolay Volf
5837b6e131 Merge branch 'master' into coverage-effort
Conflicts:
	ethcore/res/ethereum/tests
2016-01-31 18:40:59 +04:00
debris
8fe0d74b64 moved src to ethcore 2016-01-31 10:36:48 +01:00