Robert Habermeier
8125b5690c
Port try
macro to new ?
operator. ( #3962 )
...
* initial untry sweep
* restore try in ipc codegen, fix inference
* change a few missed try instances
2016-12-27 12:53:56 +01:00
keorn
afc4cd2785
Allow contract constructors in chain spec ( #3932 )
...
* constructor spec
* execute under wrong address
* create under correct address
* revert
* move genesis block lookup
* remove env_logger
2016-12-23 18:44:39 +01:00
Igor Artamonov
be75cbfaaa
set CHAIN_ID for Classic ( #3934 )
...
* configurable CHAIN_ID
* set CHAIN_ID for Ethereum Classic
2016-12-22 13:10:58 +01:00
Gav Wood
023d413610
Fix difficulty adjustment.
...
Closes #3861
2016-12-17 15:53:06 +01:00
Gav Wood
988ac8a22d
Add forks supported.
2016-12-12 16:47:57 +01:00
Gav Wood
10b0898bdf
Crate tidyups.
...
- Move Updater into its own crate.
- Change ethcore -> parity in authors, homepages and licenses.
2016-12-11 19:14:42 +01:00
Gav Wood
ad36743122
Merge pull request #3719 from ethcore/engine-block-ordering
...
Engine block ordering
2016-12-05 10:37:36 -08:00
keorn
94302f3f61
throw out difficulty checks
2016-12-05 15:27:44 +00:00
keorn
c61a0e97b3
make engine determine block order
2016-12-05 15:20:32 +00:00
Gav Wood
2911c549e3
Encode networkid as a u64.
2016-12-04 10:48:26 -08:00
arkpar
d0c80a6903
Updated tests
2016-11-28 01:37:25 +01:00
Arkadiy Paronyan
efd1d9bd0e
Ropsten network ( #3539 )
...
* Ropsten network
* Sorted premine
* Comas
* Removed trailing coma
2016-11-20 16:38:45 +01:00
Gav Wood
528bf17af5
Restrict max code size to 23999 bytes for EIP-150 and after.
2016-11-15 17:58:28 +01:00
Robert Habermeier
56fd88d1e8
ethash unsafety cleanup ( #3210 )
2016-11-05 10:39:15 +01:00
Igor Artamonov
2a19c33b8d
delay bomb for Classic (ECIP-1010) ( #3179 )
...
* delay bomb for classic (ECIP-1010)
* formatting fix after core review, rel [e6b5093]
2016-11-04 23:09:23 +01:00
Tomasz Drwięga
f31d42d0c5
Exposing engine extra info in block RPC ( #3169 )
...
* Exposing extra info in RPC
* Proper serialization and client trait API
2016-11-04 17:35:02 +01:00
Gav Wood
d3de475205
EIPs 155, 160, 161 ( #2976 )
...
* The front-end for each hard-fork, also EIP-160.
* Address EIP161 a/c
* Include EIP-161b
* EIP-161 part d.
* Fix test build.
* Fix one test, add another.
* Fix use of bloom & renaming.
* Initial groundwork for EIP-155
* Fix minor bug.
* Fix all tests finally.
* Rest of EIP-155.
* Add tests for EIP-155 algorithm.
Update transaction tests validation.
* Minor reformat.
* Address grumbles.
* Remove unused code.
* Fix SUICIDE gas mechanism and add consensus tests.
* Remove commented code.
* Set Frontier hardfork block number
* Fix warning.
* Transaction tests,
2016-11-03 22:22:25 +01:00
Robert Habermeier
0fedc27332
Remove ethcore::common re-export module ( #2792 )
...
* no longer export action_params
* remove transaction, header, receipt re-rexports from common
* remove env_info and builtins re-exports from common
* remove everything but util export from common
* replace common usages with util, remove module
* add a prelude module for ethcore-bigint
2016-10-24 18:35:25 +02:00
Gav Wood
85eeb3ea6e
EIP150.1c ( #2591 )
...
* EIP150.1b first part.
* Add documentation.
[ci:skip]
* Tweak comment
* Fix some tests.
* Fix create
* Add the new EIP150 test. (#2563 )
* Fix create some more.
* Another fix for create.
* Final fixes.
* Enable EIP150 test.
* Revert the costly suicides to respect EIP150.1b.
* Fixups for EIP150.1c
* Update tests.
* Updating tests
* Adding state tests
* Updating tests
* Updating HF block
* Removing flushln [ci:skip]
* Commenting out suicide test
* New tests.
* Switch to EIP tests.
* Rename some stuff, combine transition tests.
* Fix U256 overflows.
* Name cleanups and an effort to fix tests.
* Rename back for clarity.
* Fix non-EIP-150 OOG CALLs
* New transition block number & additional EIP150 tests
* Morden transition block set; Tests updated
* Added missing test
2016-10-15 14:39:15 +02:00
Gav Wood
bb96849620
Revert #2172 , pretty much. ( #2387 )
...
* Revert #2172 , pretty much.
* Tidy up whitespace.
[ci:skip]
* Force CI.
2016-09-28 23:31:59 +02:00
Gav Wood
15a14a5f49
Expanse compatibility ( #2369 )
...
* Add support for Expanse.
* Fix build.
* Refactor to be able to alter the eth subprotocol name
* Fix JSON.
* Support exp hardfork.
* Fix exp json again.
* Fixed test
* Fix tests.
2016-09-28 14:21:59 +02:00
Arkadiy Paronyan
ad63780b4d
Canonical state cache (master) ( #2311 )
...
* State cache
* Reduced copying data between caches
Whitespace and optional symbols
* Reduced copying data between caches
Whitespace and optional symbols
* Set a limit on storage cache
* Style and docs
2016-09-27 18:02:11 +02:00
Tomasz Drwięga
2e6684dae8
Various state copy optimizations ( #2172 )
...
* Avoid cloning clean stuff
* Don't clone state when closing/locking blocks
* handle errors in commit
* revert `close_and_lock` changes
* defer state root update until post state commit
2016-09-21 11:49:11 +01:00
Tomasz Drwięga
7f7e74869c
Bump clippy & Fix warnings ( #2109 )
...
* Bump clippy
* Fixing warnings
2016-09-16 23:03:26 +02:00
debris
aa8b871e49
handling invalid spec jsons properly, additional tests, closes #1840
2016-09-05 17:41:34 +02:00
Robert Habermeier
5dd56aa070
port ethcore
2016-09-01 14:29:59 +02:00
Nipunn Koorapati
4389742ca3
Make the block header struct's internals private ( #2000 )
...
* Make the block header struct's internals private
Currently, this involves a lot of explicit cloning, but we
could migrate the return types of the get_* functions to
be copies rather than references since they are mostly copy
types anyway.
I opted to eliminate the constructor in favor of using
Default::default() plus calling a bunch of setters. This
is similar to the model that a Google Protobuf client uses
and I think it looks fine.
* Drop some unnecessary cloning by comparing references
* Fix compiler errors from callsites in tests.
2016-08-29 11:35:23 +02:00
Robert Habermeier
190e4db266
Trie query recording and AccountDB factory for no mangling ( #1944 )
...
* optionally use no mangling for accountdb
* add the recorder module
* get_recorded for tries, no virtual dispatch on readonly tries
* add recording test
2016-08-24 16:53:36 +02:00
Gav Wood
ccdf80f4dc
Fix several RPCs ( #1926 )
...
* Fix up pending receipts details.
* Add support for additional params and registry over RPC.
* Fix tests.
* Add test, additional fix.
Fixes #1932 .
* Fix up tests.
* Fix test.
* Fix test.
2016-08-17 19:25:02 +02:00
Tomasz Drwięga
a427208f79
Purging .derefs, fixing clippy warnings. ( #1890 )
...
* Fixing clippy warnings
* Purging derefs
* Simplifying engine derefs
* Simplifying more engine derefs
2016-08-10 16:29:40 +02:00
debris
8269887949
parse().unwrap() -> into()
2016-08-08 11:18:48 +02:00
debris
03c3d16744
Merge branch 'master' of github.com:ethcore/parity into move_hash
2016-08-04 08:41:30 +02:00
Arkadiy Paronyan
7093651d70
More performance optimizations ( #1814 )
...
* Buffered DB
* Use identity hash for MemoryDB
* Various tweaks
* Delayed DB compression
* Reduce last_hashes cloning
* Keep state cache
* Updating tests
* Optimized to_big_int
* Fixing build with stable
* Safer code
2016-08-03 22:03:40 +02:00
Robert Habermeier
11b65ce53d
Remove (almost all) panickers from trie module ( #1776 )
...
* memorydb ub patch and other cleanup
* fix denote invocations
* move trie traits into trie module
* replace "denote" with shim
* triedb returns results and no longer panics
* fix warnings
* get ethcore compiling
* warn on trie errors in ethcore
* remove unsafety from node decoder
* restore broken denote behavior for this branch
* fix overlayrecent fallout
* fix triedb tests
* remove unwrap in state
* alter Trie::get to return Result<Option<_>>
* fix refcell error in require
* fix test warnings
* fix json tests
* whitespace
[ci:skip]
* Avoid unneeded match/indentation
* whitespace
* prettify map_or_else
* remove test warning
2016-08-03 18:35:48 +02:00
debris
e8c451ac82
cleaning up hash reexports
2016-08-03 18:05:17 +02:00
keorn
11cb544c24
Collect consensus/null engines into a single module ( #1754 )
...
* collect consesnsus engine code into module
* move Engine to mod
* fix json test
2016-07-28 20:32:20 +02:00
Gav Wood
e734810293
Ethereum classic ( #1706 )
...
* Add Ethereum Classic support
(Rename homestead-dogmatic -> classic)
* Additional change needed.
* More needed changes.
* Separate database path for known forks.
* Address minor grumble.
2016-07-25 10:20:22 +02:00
Tomasz Drwięga
038862fa9d
Fixing clippy warnings ( #1660 )
2016-07-19 09:25:51 +02:00
Gav Wood
799c69c8d5
DAO hard-fork ( #1483 )
...
* Minor additions to allow resetting of code.
* Add test.
* Provisional DAO hard-fork proposal.
* Change to reflect latest HF spec.
* Include extradata restrictions and overrides.
* Introduce new tests.
* Update tests to new spec format.
* Allow JSON chain spec fields to be optional.
* Remove superfluous definitions. Fix overflow risk.
* Fix build.
* Add missing file.
* Remove old flag.
* Update to latest address set.
* Update tests and test spec to latest.
Change the mining default to release only on own transactions.
2016-07-16 13:02:56 +02:00
Gav Wood
a084969d55
Fix tests.
2016-07-06 10:40:45 +02:00
Gav Wood
488ff88562
Remove soft-fork stuff.
2016-07-05 18:18:35 +02:00
Marek Kotewicz
d8a4cca817
Fatdb integration with CLI ( #1464 )
...
* fatdb integration
* --fat-db
* rerun with --pruning=archive comment
2016-07-01 19:29:56 +01:00
arkpar
5958c87e56
HTTP work notifier
2016-06-29 20:04:52 +02:00
Gav Wood
84ce5af2b0
max/min incorrect
2016-06-24 11:40:25 +02:00
Gav Wood
bca9e1f31a
Merge branch 'master' into sfedgecase
2016-06-23 14:43:42 +02:00
Gav Wood
41e0769e63
Fix tests,
2016-06-23 14:43:20 +02:00
Gav Wood
8fcec20398
Gas limit ceiling option.
2016-06-23 14:29:16 +02:00
Tomasz Drwięga
5bf906625b
Fixing warnings
2016-06-23 12:19:38 +02:00
Gav Wood
2245baaaab
Provide CLI options to disable aspects of soft-fork.
...
Soft-fork will remain default behaviour, but you can now disable
either the whole mechanism (you'll lose money if you mine with this
when the majority network doesn't) or just vote against it but
otherwise go with the flow.
2016-06-19 13:20:14 +02:00
debris
026bfd6741
fixed incomplete merge
2016-06-19 02:09:17 +02:00
Gav Wood
bff1c5bdcb
Merge branch 'master' into softforktrigger
2016-06-18 20:55:50 +02:00
Gav Wood
d915eae7f7
Remove comment.
2016-06-18 20:54:44 +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
22e390f922
Rename block_dao -> reject_dao.
2016-06-18 15:00:12 +02:00
Gav Wood
42478add64
DAO Rescue soft fork ( #1309 )
...
* DAO Rescue soft fork
* Address minor issues.
* Fix tests.
2016-06-18 10:54:15 +02:00
Gav Wood
16412eb0c9
DAO Rescue soft fork ( #1309 )
...
* DAO Rescue soft fork
* Address minor issues.
* Fix tests.
2016-06-17 22:15:18 +02:00
Marek Kotewicz
549647b6f2
fixed #1261 , overflow when calculating work ( #1283 )
...
* fixed #1261 , overflow when calculating work
* tests for difficulty_to_boundary
* return !U256::zer() for boundary <= 1
2016-06-15 16:33:38 +02: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
46f3b5f913
Fix up the seal fields in RPC output. ( #1096 )
...
Make Ethash::extra_info() work.
Seal fields now decode the RLP.
2016-05-19 00:41:41 +02:00
Tomasz Drwięga
a950b81ee8
Fixing clippy warnings
2016-05-17 10:32:05 +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
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
Gav Wood
75b23aac02
Merge remote-tracking branch 'origin/master' into bettermining
2016-03-28 09:44:34 +02:00
Peter
9655ce8dbf
Caching for computing seed hashes ( #541 )
...
Code review changes
2016-03-27 20:42:24 +01:00
Gav Wood
830ef7ddfc
New mining framework.
...
Fixes #756 .
2016-03-24 23:03:22 +01:00
Gav Wood
72b604b8e8
Avoid tracing DELEGATECALL and CALLCODE. Plus tests for it.
2016-03-20 19:20:37 +01:00
Gav Wood
1bfcbca8af
Add doumentation, make tracing optional and expose at OpenBlock level.
2016-03-19 12:54:34 +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
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
30c6820437
Refactor and cleanup.
2016-03-02 00:52:18 +01:00
Gav Wood
929f44fe4f
Tests for Client sealing.
2016-03-02 00:34:38 +01:00
Gav Wood
2266d74c2a
Fix JSONRPC I/O.
2016-03-01 01:15:00 +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
ffc5c2ea7b
eth_getwork implemented.
2016-02-29 19:30:13 +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
debris
f1b39ee1e5
nightly fixes
2016-02-14 12:54:27 +01:00
debris
3a09b2f226
fixed build
2016-02-13 13:15:46 +01:00
Nikolay Volf
095c60d440
possible panic resolution, block family tests
2016-02-09 04:20:18 -08:00
Nikolay Volf
9358e9444c
unordered h256-pass fix
2016-02-09 03:58:32 -08:00
Nikolay Volf
55a29bfa86
unordered verification
2016-02-09 03:23:35 -08:00
Nikolay Volf
fc0153a5a4
returning client to the place it should be, cleanup
2016-02-09 00:54:33 +03:00
Nikolay Volf
22dd075692
proper fail conditions
2016-02-08 23:43:53 +03:00
Nikolay Volf
1ae7db2e03
coverage & panics avoidance
2016-02-08 23:07:14 +03: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
debris
eab8410402
finishe signed transactions
2016-02-04 23:48:29 +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
arkpar
3bc3d24945
Missing inline
2016-02-03 16:55:23 +01:00
arkpar
42d5c09131
Final docs
2016-02-03 16:43:48 +01:00
Gav Wood
c531150f44
More documentation.
2016-02-03 13:20:32 +01:00
Gav Wood
61f95e0415
Additional documentation.
2016-02-03 12:18:12 +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