Commit Graph

12423 Commits

Author SHA1 Message Date
Niklas Adolfsson
1113682555 fix: export hardcoded sync format (#11416)
* fix: export hardcoded sync format

* address grumbles

* make tests compile with rustc_hex 2.0

* fix grumbles: impl LowerHex for encoded Header
2020-01-28 17:08:56 +01:00
Niklas Adolfsson
283d0773fe
update hardcoded headers: mainnet and ropsten (#11414)
mainnet: #9361409
ropsten: #7202817
2020-01-28 14:43:16 +01:00
Andreas Fackler
e69539357f AuthorityEngine: Minor cleanups. (#11408) 2020-01-27 14:30:42 +01:00
varasev
6ab7789604 Update POA bootnodes (#11411) 2020-01-27 12:50:04 +01:00
EtherCore Contributor
33bfcec4ab Add EtherCore support (#11402)
* support ethercore mainnet with basic token metrics and ProgPoW support, ecip1017, bomb defuse & istanbul
2020-01-24 23:33:42 -08:00
Niklas Adolfsson
a47a5b1992 verification: fix race same block + misc (#11400)
* ethcore: fix race in verification

* verification: fix some nits

* verification: refactor err type `Kind::create`

* fix: tests

* address grumbles

* address grumbles: don't panic
2020-01-24 16:51:11 +01:00
EtherCore Contributor
108daf1861 Update ProgPoW to 0.9.3 (#11407)
0.9.2 version is deprecated due to efficiency
2020-01-24 15:46:13 +00:00
Talha Cross
b69a33b3ab update classic testnet bootnodes (#11398)
* update classic testnet bootnodes

* Update kotti.json

* Update kotti.json

* Update kotti.json

* Update mordor.json
2020-01-24 15:03:00 +01:00
Niklas Adolfsson
a9d337f7f3 dependencies: bump derive_more v0.99 (#11405)
* engine error: remove faulty/unused `From`

* dependencies: bump `derive_more v0.99`

The primilary motivation behind this is to have hard errors on `From` conversions that are ignored by
duplicated `variants` with the same value type
2020-01-24 14:52:50 +01:00
Niklas Adolfsson
bbc6fb5db6 engine error: remove faulty/unused From (#11404) 2020-01-24 14:52:12 +01:00
Denis S. Soldatov aka General-Beck
e1d06efe60 Switching to stable-track (#11377)
* sccache "stop server" - > "show stats"

* remove testing and beta from update, cli, etc.

* Beta->Nigthly updater

* Beta->Nightly

* ->Nightly and fix

* updater ->Stable

* Testing->Nightly

* Update scripts/gitlab/test-linux.sh

Co-Authored-By: Denis Pisarev <denis.pisarev@parity.io>

* sccache "stop server" - > "show stats"

* remove testing and beta from update, cli, etc.

* Beta->Nigthly updater

* Beta->Nightly

* ->Nightly and fix

* updater ->Stable

* Testing->Nightly

* Update scripts/gitlab/test-linux.sh

Co-Authored-By: Denis Pisarev <denis.pisarev@parity.io>

* Update CHANGELOGs and version

* temporarily allow darwin and windows to be built on any branch

* fix check-benches job

* Revert "temporarily allow darwin and windows to be built on any branch"

This reverts commit 45c72f69e99cbe891f694e528a53eb3c3bd8f331.

* fix check-benches job

* Revert changing track from `nightly` to `stable`

* fix test: rpc_parity_upgrade_ready

* fix tests: rpc_parity_version_info, rpc_parity_releases_info

Co-authored-by: Denis Pisarev <denis.pisarev@parity.io>
Co-authored-by: s3krit <pugh@s3kr.it>
2020-01-22 17:34:34 +01:00
/raw PONG _GHMoaCXLT
171526c1a1 ethcore/res: fix ethereum classic chainspec blake2_f activation block num (#11391) 2020-01-20 16:20:38 +01:00
s3krit
77643c13e8
Update copyright notice 2020 (#11386)
* Update copyright noticed 2020

* Update copyright in two overlooked files
2020-01-17 14:27:28 +01:00
Akihito Nakano
d3b4898339 json-tests: Fix compile error (#11384) 2020-01-16 10:15:22 +01:00
Niklas Adolfsson
a9214081c0 miner: fix deprecation warning Error::description (#11380) 2020-01-14 13:54:43 +01:00
Wei Tang
d8a0d38229 Fix Aztlan hard fork issues (#11347)
* Fix Aztlan hard fork issues

* Fix mordor block number

* Fix classic block number

* Add missing precompiles

* Make EIP-1283's comments reflact the current spec

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2020-01-13 22:54:00 +01:00
Andreas Fackler
ea8e7fcf73 authority_round: Fix next_step_time_duration. (#11379)
It's supposed to find the first step at or after `time`.
To compute that step's timestamp, it needs to add the total length
of all steps since the previous transitions to the timestamp of the
previous transition, not to `time`.
2020-01-13 22:42:14 +01:00
Vladimir Komendantskiy
73354d8d93 Set the block gas limit to the value returned by a contract call (#10928)
* Block gas limit contract

Lower gas limit if TxPermission.limitBlockGas.

Call blockGasLimit before every block.

Make the block gas limit contract a separate config option.

Add `info` level logging of block gas limit switching

block-gas-limit subcrate and responses to review comments

simplified call_contract_before

moved block_gas_limit_contract_transitions to AuRa params

removed call_contract_before

Update and fix test_verify_block.

Remove some unused imports and functions.

* Move gas limit override check to verify_block_basic.

Co-authored-by: Andreas Fackler <afck@users.noreply.github.com>
2020-01-13 11:27:03 +01:00
Felix Leupold
87e1080581 [Trace] Distinguish between create and create2 (#11311)
* adding a CreateType to ActionParams

* rename calltype to action type

* comments & line lengths

* rebame ActionParams.call_type

* Making call/create type optional

* Moving strict create/call type into trace package instead of storing loosely typed action type

* fix build

* Deriving ActionType from address_scheme in ext.create

* trigger build

* more detailed comments

* Change actions_type to call in vmtests

* skipping serialization for Option::None and using TryFrom instead of maybe_new

* retrigger build

* trigger build
2020-01-13 11:10:24 +01:00
Andronik Ordian
e95bbe36cb fix cargo audit (#11378)
* Cargo.lock: cargo update -p http

* fetch: cargo upgrade hyper-rustls@0.18 --all
2020-01-10 17:43:49 +01:00
meowsbits
b6afc81d69 Fix esoteric test config variable (#11292)
* Fix esoteric test config variable

EIP155 canonically (on Ethereum mainnet, for which these test were developed)
happens simultaneously with EIP158/161 and other "Spurious Dragon" upgrades.

This test is intended to test the transition from the EIP158/161 era (Spurious Dragon)
to the Byzantium era, with Byzantium changes happening at 5.

* Add missing 'modexp' precompiled contract

modexp was introduced via EIP198 as a part of the Byzantium fork,
which this test should be testing against.
2020-01-10 15:12:32 +01:00
Demi Obenour
b8d9b6f826
Rip out the C and Java bindings (#11346)
* Remove the C and Java bindings

* update Cargo.lock

* [ci]: don't build removed `parity-clib`

* [ci]: fix grumbles

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2020-01-07 15:53:02 +00:00
Anton Gavrilov
424b38a8d7
Encapsulate access to the client for secret store (#11232)
* Move all client usages into trusted_client

* Move confirmed hash method to trusted client

* Tree route and logs encapsuluted

* Remove not used method for keys sharing

* NodeKeyPair renamed and moved to trusted client

* Use public key error in trusted client

* Move contract address definition into trusted client

* Block id and number types from ethcore wrapped

* Trusted client renamed to more general Blockchain

* Trusted client implementation moved to parity code

* Move node key pair under secret store feature as well

* Registar crate removed from deps

* Accounts feature removed from secret store

* Fix after merge

* Blockchain renamed to SecretStoreChain

* Module documentations added
2020-01-07 14:37:02 +01:00
David
5bd6b208af Forward-port #11356 (#11359) 2020-01-06 10:46:05 +03:00
Max Johansen
23a23e7a18 Fix error message typo (#11363) 2020-01-02 19:54:29 +01:00
Niklas Adolfsson
9d8e6ee4c9 [util/migration]: remove needless static bounds (#11348) 2019-12-30 14:43:38 -08:00
RJ
280894691e Replace stale boot nodes with latest list (#11351) 2019-12-30 08:01:00 -08:00
David
b9f9d11929
Update to latest kvdb-*: no default column, DBValue is Vec (#11312)
* Only use kvdb "column families"

This PR contains the changes necessary to use the `kvdb-*` crates from https://github.com/paritytech/parity-common/pull/278 (so a synchronized merge is required) which drops support for the old-style rocksdb "default" column to get a smaller and less complex API.

As it stands this PR is working correctly except for secret-store; we need to migrate it to use a new column family.

* Fix secretstore build

* Fix secretstore build: include ethkey when building with the "accounts" feature

* typos

* Restore state test commit

* Override all of parity-common from git

* Be precise about version requirement to migrate secretstore code

* Update ethcore/db/src/db.rs

Co-Authored-By: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Address review grumbles

* Review grumbles

* Cleanup

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2019-12-20 12:27:38 +01:00
Denis Pisarev
860ef19e95
we do not profit from incremental now (#11302) 2019-12-19 16:57:00 +01:00
joshua-mir
f8f22245ec update autoupdate fork blocks for nightly (#11308) 2019-12-19 13:05:04 +01:00
Cho
e14d68e559 Add Nat PMP method to P2P module (#11210)
* Add Nat PMP method to P2P module

* Add test fn

* Use closure

* print richer error messages.

* reformat long code line

* remove closures
2019-12-19 09:01:39 +01:00
Andreas Fackler
2b1d148ceb Add randomness contract support to AuthorityRound. (#10946)
* Add randomness contract support to Authority Round.

Changes have been cherry-picked from poanetwork's aura-pos branch.
Most of the work has been done by @mbr.

* Address review comments for randomness contract.

Co-Authored-By: David <dvdplm@gmail.com>

* Rename revealSecret to revealNumber

* Update Randomness contract bytecode

* Use H256, rename secret to random number.

* Use get_commit_and_cipher

* Clean up Miner::prepare_block.

* Remove is_reveal_phase call.

* Add more comments, require randomness contract map.

* Simplify run_randomness_phase

* Address review comments.

* Remove Client::transact_contract.
2019-12-17 11:34:14 +01:00
Talha Cross
f6909d8243 ethcore/res: activate ecip-1061 on kotti and mordor (#11338)
* ethcore/res: activate ecip-1061 on kotti and mordor

* ethcore/res: update bootnodes for mordor
2019-12-16 07:32:12 +01:00
Andronik Ordian
fd29926a21
tx-q: enable basic verification of local transactions (#11332)
* tx-q: basic verification of local transactions

* miner: basic test for local import

* miner: info log when rejecting local txn

* Hernandofmt

Co-Authored-By: Hernando Castano <HCastano@users.noreply.github.com>

* miner: assert in a test with the concrete error type

* tx-q: info! -> warn! on local tx rejection
2019-12-13 20:25:51 +01:00
Andronik Ordian
63535860bc remove null signatures (#11335)
* tx: clean up legacy eip-86 based null signature

* tx: add a test for null signature rejection

* tx: revert json txn changes

* fix evmbin bench build

* tx: put UNSIGNED_SENDER behind 'test-helpers' feature

* Revert "tx: put UNSIGNED_SENDER behind 'test-helpers' feature"

This reverts commit 1dde47831e4dc5098d064e6022ead43512c31efb.

* tx: add comment for null_sign

* even more cleanup

* Revert "even more cleanup"

This reverts commit be29f032415c53d4d40842f93f1fd1fb6f9cc6bd.
2019-12-13 18:12:22 +01:00
Talha Cross
6e76be7fad ethcore/res: activate agharta on classic 9573000 (#11331) 2019-12-13 12:07:29 +01:00
Andronik Ordian
ae74e8df78
[secretstore] migrate to version 4 (#11322)
* secret-store: migrate the db to version 4

* Fix secretstore build

* Fix secretstore build: include ethkey when building with the "accounts" feature

* fix build

* secret-store: actually use new column

* a bunch of fixes

* last nits

* Apply suggestions from code review

Co-Authored-By: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* secret-store: move db stuff to secret-store as per Anton's request
2019-12-12 13:21:51 +01:00
Wei Tang
4fa78e0537
Enable EIP-2384 for ice age hard fork (#11281)
* Enable EIP-2384 for Istanbul hard fork

* Update bomb delay block number

* Update ropsten.json
2019-12-11 22:32:20 +01:00
Boqin Qin
f1f64930cf Fix atomicity violation in network-devp2p (#11277) 2019-12-10 07:46:32 +01:00
varasev
4c6b282bee Istanbul activation on xDai (#11299) 2019-12-09 14:36:16 +01:00
varasev
07e3a7f3d4 Istanbul activation on POA Core (#11298) 2019-12-09 14:36:06 +01:00
Seun LanLege
64295fde62 Adds support for ipc socket permissions (#11273)
* adds support for ipc socket permissions

* bumped jsonrpc to 14.0.5

* change chmod default to 660, use casting

* set 660 default for --ipc-chmod

Co-Authored-By: Andronik Ordian <write@reusable.software>

* Update parity/cli/mod.rs

Co-Authored-By: David <dvdplm@gmail.com>

* represent octal value as string

* return error for invalid octal values

* fix tests

* check if supplied octal range is within 0 to 7777

* Apply suggestions from code review

Co-Authored-By: Andronik Ordian <write@reusable.software>

* temporary fix

* bump jsonrpc-ipc-server

* fix: update `Cargo.lock`
2019-12-06 16:39:56 +01:00
Lewis Belcher
a6350c65aa Add check for deserialising hex values over U256 limit (#11309)
* Add check for hex values over U256 limit

* Update test in account.rs

Update spec.json field to match test name.

* Update json/src/uint.rs

Co-Authored-By: David <dvdplm@gmail.com>

* Add test for expected deserialisation error

* Update json/src/uint.rs

Co-Authored-By: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Update json/src/uint.rs

Co-Authored-By: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Remove superfluous serialisation test

The test `uint_deserialization_error_for_hex_too_large` sufficiently
covers the need for this test.
2019-12-06 14:07:44 +01:00
Andronik Ordian
36c917eb7a
validate-chainspecs: check istanbul eips are in the foundation spec (#11305)
* validate-chainspecs: check istanbul eips are in foundation spec

* foundation: specify 1283 disable/reenable transitions
2019-12-06 13:12:08 +01:00
Niklas Adolfsson
cfe57633fa
[chainspec]: add eip1344_transition for istanbul (#11301) 2019-12-05 12:58:01 +01:00
Seun LanLege
80a83c95d3 only add transactions to signing-queue if it is enabled (#11272)
* only add transactions to signing-queue if it is enabled

* Update rpc/src/v1/helpers/errors.rs

Co-Authored-By: David <dvdplm@gmail.com>

* use errors::codes::ACCOUNT_LOCKED

* bail early if account isn't unlocked

* use errors::signing

* Update rpc/src/v1/helpers/errors.rs

* Update rpc/src/v1/helpers/errors.rs

* test

* adds cli flag to enable signing queue.

* use helper method siginig_queue_disabled instead of accounts::SignError

* fix typo, use raw i64

* fixed tests
2019-12-05 09:38:14 +01:00
David
f6c3d4c695 Use upstream rocksdb (#11248)
* Use upstream rocksdb

…by way of https://github.com/paritytech/parity-common/pull/257 by @ordian.

* Hint at how `parity db reset` works in the error message

* migration-rocksdb: fix build

* Cargo.toml: use git dependency instead of path

* update to latest kvdb-rocksdb

* fix tests

* saner default for light client

* rename open_db to open_db_light

* update to latest kvdb-rocksdb

* moar update to latest kvdb-rocksdb

* even moar update to latest kvdb-rocksdb

* use kvdb-rocksdb from crates.io

* Update parity/db/rocksdb/helpers.rs

* add docs to memory_budget division
2019-12-03 16:59:11 +01:00
Anton Gavrilov
2895e3b2ab Treat only blocks in queue as synced (#11264) 2019-12-03 15:59:15 +01:00
Sebastian Dechant
f2f4217e3c add support for evan.network chains (#11289)
* add support for evan.network chains

* fix chainspec parsing errror

* add missing core param

* missing colon
2019-12-03 15:00:29 +01:00
David
4c3be46f93 Add benchmarks and tests for RlpNodeCodec decoding (#11287) 2019-12-03 12:30:07 +01:00