Commit Graph

2475 Commits

Author SHA1 Message Date
Svyatoslav Nikolsky
1ca1fba8cf read registry_address from given block (#7866) 2018-02-12 18:02:48 +01:00
Marek Kotewicz
c060d9584d
ethabi version 5 (#7723)
* Refactor updater to use ethabi-derive

* Grumble: do_call type alias

* Empty commit to trigger test re-run

* migration to ethabi-5.0

* migration to ethabi-5.0 in progress

* use ethabi_deriven to generate TransactAcl contract

* use ethabi_deriven to generate Registry contract

* hash-fetch uses ethabi_derive, removed retain cycle from updater, fixed #7720

* node-filter crate uses ethabi_derive to generate peer_set contract interface

* use LruCache in node-filter instead of HashMap

* validator_set engine uses ethabi_derive

* ethcore does not depend on native_contracts

* miner does no depend on native_contracts

* secret_store does not use native_contracts (in progress)

* removed native-contracts

* ethcore and updater does not depend on futures

* updated ethereum-types

* fixed all warnings caused by using new version of ethereum-types

* updated ethabi_derive && ethabi_contract to get rid of warnings

* removed another retain cycle in updater, fixed following minor version on update

* moved contracts out of native_contracts res

* updated ethabi_contract

* fixed failing test

* fixed failing test

* there is no need to create two contracts of the same kind any more

* simplify updater::ReleaseTrack conversion into u8 and add several tests for it

* applied review suggestions

* applied review suggestions
2018-02-09 09:32:06 +01:00
Tomasz Drwięga
a59f6d9bd2 Move updater metadata to Cargo.toml of parity-version. (#7832) 2018-02-08 12:38:56 +01:00
Nikolay Volf
fb4582a90e wasmi interpreter (#7796) 2018-02-05 20:59:27 +01:00
Afri Schoedon
6dec16bb41
Enable byzantium features on non-ethash chains (#7753)
* Enable byzantium on dev chain

* Enable byzantium on constractor spec

* Enable byzantium on aura specs

* Enable byzantium on tendermint chain spec

* Enable byzantium on null chain spec

* Fix tests

* Fix test
2018-02-01 13:42:56 +01:00
Marek Kotewicz
f43e355254
Replace RandomTempDir with tempdir::Tempdir (#7624)
* Remove GuardedTempResult

* Remove RandomTempPath

* ethcore does not depend on devtools
2018-01-19 17:32:53 +01:00
Marek Kotewicz
6bebb9e74a
Moved StopGaurd to it's own crate (#7635) 2018-01-19 13:46:31 +01:00
Tomasz Drwięga
ad44855a1b Fix Temporarily Invalid blocks handling (#7613)
* Handle temporarily invalid blocks in sync.

* Fix tests.
2018-01-19 10:38:59 +01:00
Tomasz Drwięga
709fbff067 Std-json format for VM traces (#7262)
* Std-json logging.

* fixed merge with master
2018-01-18 10:32:22 +01:00
Marek Kotewicz
0c01db4a49
separated ethcore_migrations from ethcore (#7586)
* separated ethcore_migrations from ethcore

* fixed authorship nitpick

* make ethcore_migrations related exports and imports more consistent
2018-01-17 22:11:13 +01:00
Marek Kotewicz
9adee532a0
bump some of our core dependencies (#7563)
* updated ethereum-types and tiny-keccak

* Updated several deps

* Updated several more dependencies

* Modify dummy file to trigger ci

* fixed update of memmap to 0.6 in ethash crate

* Fixed fetch after update to latest reqwest

* Updated jsonrpc-core with fixes for serde

* add expects in util/version/build.rs
2018-01-17 11:45:29 +01:00
Marek Kotewicz
7d49dd4727
Fixed delegatecall's from/to (#7568)
* Fixed delegatecall's from/to, closes #7166

* added tests for delegatecall traces, #7167
2018-01-17 10:44:11 +01:00
Marek Kotewicz
36ba004c29
removed redundant ethcore/basic_types.rs (#7584) 2018-01-17 10:35:43 +01:00
Marek Kotewicz
668d910c44
bloom refactor (#7475)
* ethereum-types refactor in progress

* ethereum-types refactor in progress

* ethereum-types refactor in progress

* ethereum-types refactor in progress

* ethereum-types refactor finished

* cleanup bloom mess

* simplify usage of Bloom in few places

* removed obsolete util/src/lib.rs

* removed commented out code

* ethereum-types 0.1.4

* updated ethereum-types and tiny-keccak
2018-01-14 22:43:28 +01:00
Tomasz Drwięga
f044b61f42 Extract some parts of miner from ethcore. (#7353)
* Move miner away from ethcore.

* Fix ethcore to use miner/transaction.

* Fix tests and warnings.

* fixed incorrect merge of the test in the documentation
2018-01-11 17:49:10 +01:00
Marek Kotewicz
e95b093483 dissolve util (#7460)
* ethereum-types refactor in progress

* ethereum-types refactor in progress

* ethereum-types refactor in progress

* ethereum-types refactor in progress

* ethereum-types refactor finished

* removed obsolete util/src/lib.rs

* removed commented out code
2018-01-10 15:35:18 +03:00
tzapu
df5d27d516 added a new RPC call trace_replayBlockTransactions (#7366)
* intial add trace_replayBlockTransactions

* cleanup timing calls
add execution proof

* WIP implementing changes

* fix for trace_replayBlockTransactions rpc call

* cleanup comments

* cleanup, proof,
can't workout lifetime issues yet

* Fix lifetimes issue.

* naive rpc test

* updated docs
2018-01-10 11:34:34 +01:00
Tomasz Drwięga
e4bd4ed060 Use sync wrapper instead of Mutex (#7456) 2018-01-09 16:10:39 +01:00
Tomasz Drwięga
33b8f28f62 Advance AuRa step as far as we can and prevent invalid blocks. (#7451)
* Advance AuRa step as far as we can.

* Wait for future blocks.
2018-01-08 14:46:11 +01:00
Afri Schoedon
36e230ee16
Expanse Byzantium update w/ correct metropolis difficulty increment divisor (#7463)
* Byzantium Update for Expanse

Here the changes go. Hope I didnt miss anything.

* expip2 changes - update duration limit

* Fix missing EXPIP-2 fields

* Format numbers as hex

* Fix compilation errors

* Group expanse chain spec fields together

* Set metropolisDifficultyIncrementDivisor for Expanse

* Revert #7437

* Add Expanse block 900_000 hash checkpoint
2018-01-05 13:49:07 +01:00
5chdn
27d8befbad
Remove expanse from available chains 2018-01-03 13:24:27 +01:00
André Silva
e114b0b28d Upgrade to RocksDB 5.8.8 and tune settings to reduce space amplification (#7348)
* kvdb-rocksdb: update to RocksDB 5.8.8

* kvdb-rocksdb: tune RocksDB options

* Switch to level-style compaction
* Increase default block size (16K), and use bigger blocks for HDDs (64K)
* Increase default file size base (64MB SSDs, 256MB HDDs)
* Create a single block cache shared across all column families
* Tune compaction settings using RocksDB helper functions, taking into account
  memory budget spread across all columns
* Configure backgrounds jobs based on the number of CPUs
* Set some default recommended settings

* ethcore: remove unused config blockchain.db_cache_size

* parity: increase default value for db_cache_size

* kvdb-rocksdb: enable compression on all levels

* kvdb-rocksdb: set global db_write_bufer_size

* kvdb-rocksdb: reduce db_write_bufer_size to force earlier flushing

* kvdb-rocksdb: use master branch for rust-rocksdb dependency
2018-01-03 11:00:37 +01:00
Marek Kotewicz
6a01113610
Merge pull request #7412 from paritytech/td-trace-failed-calls
Fix tracing failed calls.
2018-01-02 15:43:33 +01:00
Marek Kotewicz
f3e7d94fc4
Merge pull request #7368 from paritytech/td-future-blocks
Wait for future blocks in AuRa
2018-01-02 14:21:50 +01:00
Tomasz Drwięga
c6aea0cae6
Move StateDB to RwLock 2018-01-02 09:43:08 +01:00
Tomasz Drwięga
67a74e155d
Fix tracing failed calls. 2017-12-29 18:11:55 +01:00
Marek Kotewicz
2586eaef92
Merge pull request #7359 from VladLupashevskyi/transactions-permission-contract-fix
Added checking tx-type using transactions permission contract for miners
2017-12-29 11:46:10 +01:00
Vlad Lupashevskyi
45116099c5 Merge remote-tracking branch 'remotes/upstream/master' into transactions-permission-contract-fix 2017-12-28 12:56:21 +02:00
Tomasz Drwięga
a15f62d907
Merge branch 'master' into td-future-blocks 2017-12-27 11:01:08 +01:00
Nicolas Ochem
2e12a2db50 Fix #6209 - introduce standalone dir crate
* created the dir crate in util
* moved code from ethstore/src/dir/paths.rs to dir crate
* rename dir module in ethstore to accounts_dir to distinguish it
  from the dir crate
* changes after @tomusdrw on #6952
2017-12-26 00:54:34 -08:00
Vlad Lupashevskyi
31ffb467f5 Passing verify tx errors to the caller 2017-12-23 00:00:27 +02:00
Vlad Lupashevskyi
0d5603eece Use is_err instead of match 2017-12-22 23:14:24 +02:00
Vlad Lupashevskyi
d6ae6e315e Check tx-type before importing transactions to the queue 2017-12-22 22:50:09 +02:00
Vlad Lupashevskyi
9d35cc1881 "from" replaced with ".into()" 2017-12-22 22:48:37 +02:00
Marek Kotewicz
d80dd81d77
parity-version pr reopen (#7136)
* parity-version module split from util

removed unused util deps and features

trigger buildbot again

only kvdb links rocksdb

snappy linker issues

* rm snappy

* fixed old version imports
2017-12-22 09:37:39 -04:00
Marek Kotewicz
7c24d0665e
Merge pull request #7355 from paritytech/td-clippy
Get rid of clippy remainings.
2017-12-22 07:09:26 -04:00
Marek Kotewicz
6f516607a1
Merge pull request #7357 from paritytech/unwrap-or
Avoid using ok_or with allocated argument
2017-12-22 06:55:37 -04:00
Nicolas Gotchac
276496fb4b Enable traces for DEV chain (#6949) (#7327) 2017-12-22 06:33:17 +03:00
Vlad Lupashevskyi
24378f3c44 Added checking tx-type using transactions permission contract for miners 2017-12-21 22:42:36 +02:00
Tomasz Drwięga
d6f160e868
Don't check max. 2017-12-21 16:16:55 +01:00
Tomasz Drwięga
7d4e4c7a62
Mark future blocks as temporarily invalid. 2017-12-21 15:34:27 +01:00
Yurii Rashkovskii
d5b81ead71 Problem: AuRa's unsafeties around step duration (#7282)
Firstly, `Step.duration_remaining` casts it to u32, unnecesarily
limiting it to 2^32. While theoretically this is "good enough" (at 3
seconds steps it provides room for a little over 400 years), it is
still a lossy way to calculate the remaining time until the next step.

Secondly, step duration might be zero, triggering division by zero
in `Step.calibrate`

Solution: rework the code around the fact that duration is
typically in single digits and never grows, hence, it can be represented
by a much narrower range (u16) and this highlights the fact that
multiplying u64 by u16 will only result in an overflow in even further
future, at which point we should panic informatively (if anybody's
still around)

Similarly, panic when it is detected that incrementing the step
counter wrapped around on the overflow of usize.

As for the division by zero, prevent it by making zero an invalid
value for step duration. This will make AuRa log the constraint
mismatch and panic (after all, what purpose would zero step duration
serve? it makes no sense within the definition of the protocol,
as finality can only be achieved as per the specification
if messages are received within the step duration, which would violate
the speed of light and other physical laws in this case).
2017-12-21 14:59:09 +01:00
NikVolf
516725abe4 ok_or -> ok_or_else 2017-12-21 16:50:58 +03:00
Tomasz Drwięga
00883e477a
Get rid of clippy remainings. 2017-12-21 11:27:26 +01:00
Marek Kotewicz
53dce9ff98
Merge pull request #7222 from ellaismer/ellaism
Add Ellaism coin in chain config
2017-12-19 09:34:21 -04:00
Robert Habermeier
8f6f6a068e detect different node, same-key signing in aura (#7245)
* detect different node, same-key signing in aura

* reduce scope of warning
2017-12-15 16:29:23 +01:00
André Silva
fcddc7751a Reduce max block timestamp drift to 15 seconds (#7240)
* reduce max block timestamp drift to 15 seconds

* add test for block timestamp validation within allowed drift
2017-12-08 11:43:31 +01:00
Robert Habermeier
3cb4d81eb1 Fix aura difficulty race (#7198)
* Fix Aura difficulty race

* fix test key

* extract out score calculation

* fix build
2017-12-07 12:17:11 +01:00
Ellaismer
dcf6e1d83d Add basic Elliasm config 2017-12-06 20:46:24 +08:00
Takehiro Miyao
3284020b04 mistake comment in calc difficulty (#7154) 2017-12-05 16:06:04 +01:00
Tomasz Drwięga
7e3872fddc Maximum uncle count transition (#7196)
* Enable delayed maximum_uncle_count activation.

* Fix tests.

* Defer kovan HF.
2017-12-05 15:57:45 +01:00
Robert Habermeier
e85c98e09a
Merge pull request #7075 from miyao-gmo/feature/estimate_gas_limit
escape inifinite loop in estimte_gas
2017-12-04 15:29:23 +01:00
Takehiro Miyao
ad01f99c44 upper limit is gas limit * 10 in estimate gas 2017-12-01 11:12:11 +00:00
Marek Kotewicz
68db425fe8
Merge pull request #7067 from sorpaas/patch-1
ECIP-1039: Monetary policy rounding specification
2017-11-24 15:49:33 +01:00
Wei Tang
8e89be775c
Wrong era used in ECIP1017 test
It is era 49, and should correspond to ECIP1017/ECIP1039's era 50.
2017-11-24 20:17:26 +08:00
Wei Tang
bef85fb876
Add test for ECIP1017 at block 250000000 2017-11-24 19:31:48 +08:00
Robert Habermeier
81212c5031 Merge branch 'master' into upload-crates 2017-11-17 16:42:41 +01:00
Wei Tang
b35cc3f716
Change reward calculation to only use divide once 2017-11-16 12:34:04 +08:00
Wei Tang
2ca57d7cdb
ECIP-1039: Monetary policy rounding specification
Fix potential rounding errors between geth and parity in the long-term future.
2017-11-16 12:25:05 +08:00
Marek Kotewicz
605cd5cd9f
Merge pull request #7006 from paritytech/no-uncles
Disable uncles by default
2017-11-15 23:51:49 +01:00
Robert Habermeier
ec5519ccd1 rename hash crate to keccak-hash 2017-11-10 20:08:28 +01:00
keorn
261c0d5368 no default uncles 2017-11-09 23:56:02 +00:00
Robert Habermeier
acdec22d58 Merge branch 'master' into warn-blacklisted 2017-11-07 16:56:57 +01:00
Arkadiy Paronyan
85465fc0b1 Skip nonce check for gas estimation (#6997) 2017-11-07 09:21:30 +01:00
Tomasz Drwięga
ffee6aacff Creating pending block with all transactions from the queue (#6942)
* Allow to include all queue transactions in pending block.

* Fix tests.
2017-11-03 15:20:20 +01:00
Dmitry Kashitsyn
713bba00ac Removes FUTURE_QUEUE_LIMITS_SHIFT (#6962) 2017-11-02 15:06:17 +01:00
Nikolay Volf
f72858ee0a Add hint in ActionParams for splitting code/data (#6957)
* Action params and embedded params handling

* fix namespaces
2017-11-02 12:49:57 +01:00
Tomasz Drwięga
0a69d5ac4c Return decoded seal fields. (#6932) 2017-11-01 11:29:03 +01:00
Tomasz Drwięga
b861ad37a4 Reserve nonces for signing (#6834)
* Nonce future - reserve and dispatch

* Single thread nonce tests

* Track status of reserved nonces.

* Initialization of nonce reservations.

* Prospective Signer

* Fix cli tests.
2017-11-01 11:23:18 +01:00
Marek Kotewicz
39e27076ad
Merge pull request #6842 from paritytech/td-evm-json
Fix JSON tracing for sub-calls.
2017-10-29 21:47:14 -07:00
Tomasz Drwięga
8dfdebc2a2 Refactor static context check in CREATE. (#6886)
* Refactor static context check in CREATE.

* Fix wasm.
2017-10-25 11:27:18 +02:00
David Dorgan
bdf1e6afcc Revert "Sync parity-ewf with parity"
This reverts commit f7ba063b22.
2017-10-24 13:31:58 +01:00
David Dorgan
f7ba063b22 Sync parity-ewf with parity 2017-10-24 12:31:50 +01:00
Tomasz Drwięga
b98150526c Fix serialization of non-localized transactions (#6868)
* Fix serialization of non-localized transactions.

* Return proper SignedTransactions representation.
2017-10-24 12:13:00 +02:00
Tomasz Drwięga
1253a5c577
Merge branch 'master' into td-evm-json 2017-10-24 09:16:51 +02:00
Robert Habermeier
dd13526f6c warn when blacklisted account present in store 2017-10-24 09:04:28 +02:00
Arkadiy Paronyan
097815cb71 Ethstore optimizations (#6827) 2017-10-20 20:20:41 +02:00
Tomasz Drwięga
2d222a5920
Capture traces and write some tests. 2017-10-20 16:06:36 +02:00
Tomasz Drwięga
4ac406da6b
Merge branch 'master' into td-evm-json 2017-10-20 13:36:45 +02:00
Dmitry Kashitsyn
153b8572dd Fixes tests 2017-10-17 22:24:47 +07:00
Tomasz Drwięga
2d10cd0ecc
Fixing JSON WiP. Refactor & Write tests. 2017-10-17 14:54:56 +02:00
Dmitry Kashitsyn
c0fc83988f Refactors ethcore to use journaldb crate (#6693) 2017-10-17 11:46:07 +07:00
debris
3830f9b464 fixed failing test 2017-10-16 22:12:17 +02:00
debris
95f0384510 Merge branch 'master' into ipc_cleanup 2017-10-16 18:19:41 +02:00
Marek Kotewicz
bb1be15dc4 Merge pull request #6792 from paritytech/kvdb_error
consistent KeyValueDB errors
2017-10-16 18:19:18 +02:00
debris
16d84f8ecf finished removing ipc 2017-10-16 18:18:43 +02:00
debris
fa019bd03e remove ipc codegen from ethcore 2017-10-16 17:50:25 +02:00
Arkadiy Paronyan
5b29b6d064 Squash remaining warnings (#6789)
* Fixed comment warnings

* Fixed remaining warnings
2017-10-16 12:31:52 +02:00
debris
6dc50d01b5 KeyValueDB trait uses errors instead of strings 2017-10-16 12:11:35 +02:00
Marek Kotewicz
44db0c55c5 Merge pull request #6720 from paritytech/kvdb_split
separated kvdb into 3 crates: kvdb, kvdb-memorydb && kvdb-rocksdb
2017-10-16 10:57:27 +02:00
Afri Schoedon
774598974e Forward-port #6754 #6755 (#6785) 2017-10-16 10:56:23 +02:00
Marek Kotewicz
8365f4d80e updated ethabi to version 4.0 (#6742)
* updated ethabi to version 4.0

* ethabi 4.0.1
2017-10-16 10:21:35 +02:00
debris
2ce0eae406 Merge branch 'master' into kvdb_split 2017-10-16 10:01:12 +02:00
Dmitry Kashitsyn
4df541e47a Refactors references to MemoryLruCache in ethcore (#6693) 2017-10-15 21:47:06 +07:00
debris
db3ff67182 Merge branch 'master' into kvdb_split 2017-10-15 16:40:20 +02:00
debris
616cafb04a renamed kvdb_memorydb::in_memory -> kvdb_memorydb::create 2017-10-15 16:17:15 +02:00
debris
d88ec35a6a Merge branch 'master' into kvdb_split 2017-10-15 15:55:44 +02:00
Dmitry Kashitsyn
3df67b376b Removes redundant mut in ethcore 2017-10-15 20:10:20 +07:00
Arkadiy Paronyan
b0c15497e1 Fixed kovan chain validation (#6758)
* Fixed kovan chain validation

* Fork detection

* Fixed typo
2017-10-14 21:59:26 +02:00
debris
b277c3810f Merge branch 'master' into kvdb_split 2017-10-13 16:27:12 +02:00