Commit Graph

974 Commits

Author SHA1 Message Date
Xiliang Chen 0f0df9850a add post_dispatch (#3229)
* add post_dispatch

* Update traits.rs

* Update checked_extrinsic.rs

* Update traits.rs

* Update traits.rs

* fix build issue

* update runtime version

* fix test build issue
2019-08-08 09:56:04 +02:00
Pierre Krieger 3d65753d48 Switch offchain workers to new futures (#3285)
* Switch offchain workers to new futures

* Fix tests
2019-08-08 09:35:12 +02:00
Arkadiy Paronyan b29277239a Improve console output (#3326)
* Cache idle state

* Display import error by default
2019-08-08 09:34:09 +02:00
Bastian Köcher 60269d65c6 Clean up CLI interface (#3334)
* Clean up CLI interface

- Removes `--validator` and `--grandpa-voter`
- Make `--alice` etc work without `--dev`

* Style fixes
2019-08-08 09:33:45 +02:00
Pierre Krieger 6396901481 Reintroduce mplex (reverts #3312) (#3328)
This reverts commit f11291cd9a.
2019-08-08 09:32:07 +02:00
Arkadiy Paronyan c0fd256c01 Fixed test block conditions (#3332) 2019-08-08 01:01:16 +02:00
Arkadiy Paronyan 58bd0d4c05 Set uncles inherent (#3317)
* Include uncles

* Filter missing uncles

* Moved inherent registration to a new crate

* Ignore invalid inherent encoding
2019-08-08 00:56:29 +02:00
Bastian Köcher 46709e8381 More tests and some cleanup (#3331) 2019-08-08 00:05:15 +02:00
Andrew Jones 65a7629361 Derive CompactAs for Perbill/mill/U128 (#3327)
* Derive CompactAs for Perbill/mill/U128

* Increment impl_version
2019-08-07 21:48:30 +02:00
Pierre Krieger c32d9a17e0 Rename CustomProto to LegacyProto (#3313) 2019-08-07 21:22:27 +02:00
Pierre Krieger 97febf4c30 Make Verifier::verify mutable (#3165)
* Make Verifier::verify mutable

* Fix GrandPa tests

* Fix doctest

* Fix more doctests
2019-08-07 21:21:44 +02:00
Pierre Krieger f11291cd9a Remove support for mplex (#3312) 2019-08-07 21:08:21 +02:00
Arkadiy Paronyan b5cd36289e Handle telemetry socket errors (#3321)
* Handle telemetry socket errors

* Line width
2019-08-07 20:49:21 +02:00
Svyatoslav Nikolsky 3cb557700e remove leaves tracking from lignt backend (#3311) 2019-08-07 20:48:39 +02:00
Gavin Wood 1a524b8207 Refactor key management (#3296)
* Add Call type to extensible transactions.

Cleanup some naming

* Merge Resource and BlockExhausted into just Exhausted

* Fix

* Another fix

* Call

* Some fixes

* Fix srml tests.

* Fix all tests.

* Refactor crypto so each application of it has its own type.

* Introduce new AuthorityProvider API into Aura

This will eventually allow for dynamic determination of authority
keys and avoid having to set them directly on CLI.

* Introduce authority determinator for Babe.

Experiment with modular consensus API.

* Work in progress to introduce KeyTypeId and avoid polluting API
with validator IDs

* Finish up drafting imonline

* Rework offchain workers API.

* Rework API implementation.

* Make it compile for wasm, simplify app_crypto.

* Fix compilation of im-online.

* Fix compilation of im-online.

* Fix more compilation errors.

* Make it compile.

* Fixing tests.

* Rewrite `keystore`

* Fix session tests

* Bring back `TryFrom`'s'

* Fix `srml-grandpa`

* Fix `srml-aura`

* Fix consensus babe

* More fixes

* Make service generate keys from dev_seed

* Build fixes

* Remove offchain tests

* More fixes and cleanups

* Fixes finality grandpa

* Fix `consensus-aura`

* Fix cli

* Fix `node-cli`

* Fix chain_spec builder

* Fix doc tests

* Add authority getter for grandpa.

* Test fix

* Fixes

* Make keystore accessible from the runtime

* Move app crypto to its own crate

* Update `Cargo.lock`

* Make the crypto stuff usable from the runtime

* Adds some runtime crypto tests

* Use last finalized block for grandpa authority

* Fix warning

* Adds `SessionKeys` runtime api

* Remove `FinalityPair` and `ConsensusPair`

* Minor governance tweaks to get it inline with docs.

* Make the governance be up to date with the docs.

* Build fixes.

* Generate the inital session keys

* Failing keystore is a hard error

* Make babe work again

* Fix grandpa

* Fix tests

* Disable `keystore` in consensus critical stuff

* Build fix.

* ImOnline supports multiple authorities at once.

* Update core/application-crypto/src/ed25519.rs

* Merge branch 'master' into gav-in-progress

* Remove unneeded code for now.

* Some `session` testing

* Support querying the public keys

* Cleanup offchain

* Remove warnings

* More cleanup

* Apply suggestions from code review

Co-Authored-By: Benjamin Kampmann <ben.kampmann@googlemail.com>

* More cleanups

* JSONRPC API for setting keys.

Also, rename traits::KeyStore* -> traits::BareCryptoStore*

* Bad merge

* Fix integration tests

* Fix test build

* Test fix

* Fixes

* Warnings

* Another warning

* Bump version.
2019-08-07 20:47:48 +02:00
Arkadiy Paronyan 4242a4e54a Propagate cache when calling into runtime (#3319) 2019-08-07 13:18:03 +02:00
Bastian Köcher 394eff6c2f Update to schnorrkel 0.8.0 (#3267)
* Update to schnorrkel `0.8.0`

* Increase `spec_version`

* Bump schnorrkel to 0.8.3 (#3283)

* Schnorrkel 0.8.1 (builds on bkchr upgrade branch)

* Add tests for known hard/soft derivation values

* Bump all schnorrkel versions

* Flatten for easier inspection

* 0.8.2

* 0.8.3

* Update subkey/Cargo.toml

Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>

* Update `Cargo.lock`

* 0.8.4

* Fix cargo lock file.

* Adding an error message for `NotMarkedSchnorrkel` as that was missing.
Also fixing a typo, strage -> stage.
2019-08-07 12:59:54 +02:00
Pierre Krieger b5b1c2a4d8 Rename on_demand to light_dispatch and various minor changes (#3315)
* Rename on_demand to light_server

* Small docs improvement

* Rename on_block_announce to update_best_number

* More minor documentation

* Light server -> light dispatch

* is_light_rq_response -> is_light_response
2019-08-07 12:40:49 +02:00
thiolliere 4ed67e03a4 Update to parity-scale-codec (#3232)
* WIP: update codec

* WIP

* compiling

* WIP

* rename parity-scale-codec to codec

* WIP

* fix

* remove old comments

* use published crates

* fix expected error msg

* bump version

* fmt and fix

* remove old comment

* fix wrong decoding impl

* implement encode like for structures

* undo removal of old pending changes

* trailingzeroinput

* Apply suggestions from code review

Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
Co-Authored-By: DemiMarie-parity <48690212+DemiMarie-parity@users.noreply.github.com>

* update codec

* fmt

* version is 1.0.0

* show more error

* fmt
2019-08-06 19:36:23 +02:00
Pierre Krieger 83b148f514 Mention that in_mem::Backend doesn't work (#3250)
* Mention that in_mem::Backend doesn't work

* Bigger warning
2019-08-03 10:33:53 +02:00
Pierre Krieger c792dd358d Switch RPCs to stable futures (#3287) 2019-08-02 19:52:55 +02:00
André Silva aa86185648 node: use BABE predigest data to find authorship (#3293)
* node: use BABE predigest data to find authorship

* node: bump spec_version

* babe: use u32 for authority index
2019-08-02 19:52:36 +02:00
cheme da8b91ae7b Trie simplification. (#2815)
* switch to simple codec, trie broken for now

* Actualy use trie_root_noext

* align some hash, failing test on EMCH comment

* Fix trie code over layout instead of hash, revert legacy code for legacy
mainnet ??

* stub behind LayOut

* fix no_std

* temp solution for legacy trie behind feature legacy-key in various crate

* use remote project

* rc client db need prefix

* update trie deps

* bum spec runtime version

* Removing legacy as default.

* Switch mode to non legacy.

* bump runtime version

* Remove legacy trie compatibility features.

* fix warning

* bump version

* change hash on new test.

* Move dependency (#11 trie PR) patched to a parity repo.
Bench reverted to correct hasher.
Some renaming and doc improvments.

* ChildBitmap renaming to BitMap.

* Renaming of LayOut to Layout.

* formatting.

* Removing abreviation such as _ix nb_ or bm.

* Update deps and apply renaming 'Buff' -> 'Buffer'.

* Align to latest trie crates naming changes.

* Update trie dependency.

* Update trie dependency.

* change block_import test hash

* update trie deps (trie use new scale codec but it does not seems to be
an issue).

* update to use latest trie version (no mgmt of multiple radix).

* tabify

* Restoring test to 10 000.

* Use published crate, trie bench is currently down until publishing
(require another pr to update version).

* Update trie-bench.
2019-08-02 19:51:59 +02:00
Gavin Wood 7927e80bc6 Check the genesis hash in transactions regardless of era. (#3286)
* Check the genesis hash in transactions regardless of era.

* Fix check-fees, too.

* Undo.

* Subkey supports new signing.

* Remove unneeded type param.

* Bump tx version

* Build.

* Another build fix

* Build again

* Cleanup

* Another fix.

* Fix

* Fixes

* 6 second blocks.

* Fixes

* Build fix

* Fix

* Fix.
2019-08-02 18:30:20 +02:00
Fedor Sakharov 17b9ef19c1 Slots should not try to catch panics. (#3281) 2019-08-01 14:37:02 +02:00
Pierre Krieger cb7383b6b6 Documentation and small cleanup in panic-handler (#3249)
* Documentation and small cleanup in panic-handler

* Apply suggestions from code review

Co-Authored-By: Sergei Pepyakin <s.pepyakin@gmail.com>
2019-08-01 09:53:53 +02:00
Pierre Krieger 780942192e Fix telemetry not responding to pings (#3272) 2019-08-01 09:45:29 +02:00
Pierre Krieger 5b1b4b92b1 Telemetry connectivity issues are not WARN (#3274) 2019-08-01 09:45:08 +02:00
Pierre Krieger f8db199b97 Replace the telemetry Mutex with a channel (#3266)
* Replace the telemetry Mutex with a channel

* Don't return Err() if channel is full

* Change polling pattern

* Add more issue numbers
2019-08-01 09:43:37 +02:00
Pierre Krieger 083b14dadf Fix infinite loop in telemetry (#3275) 2019-07-31 18:35:03 +01:00
Bastian Köcher 31da4d249d Don't set HEAP_PAGES in BasicExternalities (#3244)
* Don't set `HEAP_PAGES` in `BasicExternalities`

* Fix test
2019-07-31 09:58:06 +02:00
Tomasz Drwięga 04c115a6e9 Revert "Update schnorrkel to 0.7.0 (#3261)" (#3264)
This reverts commit a5fa1ddd99.
2019-07-31 00:19:32 +02:00
Bastian Köcher a5fa1ddd99 Update schnorrkel to 0.7.0 (#3261)
* Update schnorrkel to `0.7.0`

* Apply suggestions from code review

Co-Authored-By: DemiMarie-parity <48690212+DemiMarie-parity@users.noreply.github.com>

* Increase `spec_version`
2019-07-30 17:46:05 -04:00
André Silva bd052d8da4 babe: Disable unused median calculation (#3251)
* babe: don't execute median algorithm

* babe: checked sub in median calculation

* node: bump impl_version to make ci happy

* babe: remove forbid dead_code
2019-07-30 22:08:20 +01:00
Arkadiy Paronyan 1d5cd20c44 Synchronize state cache on finalization (#3246)
* Reorg test

* Fixed informant misreporting reorgs

* Update cache when reorg is caused by applying finality

* Test for finality reorg

* Simplified test

* Typo

Co-Authored-By: André Silva <andre.beat@gmail.com>
2019-07-30 22:07:57 +01:00
Pierre Krieger d0eb909b30 Properly stop block import on error (#3240)
* Stop block import after error

* Better diagnostic on error
2019-07-30 12:04:28 +01:00
André Silva 483ad60379 srml: babe: add expected block time and epoch duration constants (#3241)
* srml: babe: add expected block time constant

* srml: babe: expose epoch duration constant

* node: bump spec_version

* core: don't use moment type in test-runtime

* babe: add docs regarding c parameter
2019-07-30 13:39:33 +08:00
Pierre Krieger 20eb52d6bb Allow creating a ChainSpec from a Vec<u8> (#3233)
* Allow creating a ChainSpec from a Vec<u8>

* Line widths

* Embedded -> Binary

* Remove from_embedded
2019-07-29 20:50:50 +02:00
Pierre Krieger 7658eb6b88 Fix master (#3242) 2019-07-29 19:43:03 +01:00
Pierre Krieger 0af5aadc5a Add documentation for the client (#3221) 2019-07-29 17:21:28 +01:00
Jim Posen 8aa367c27a Fix substrate factory CLI command (#3239)
* CLI execution flag for import-blocks and factory.

* Fix minimum_balance bug with CLI factory.
2019-07-29 17:06:13 +02:00
Max Inden c9c0ad4756 core/network: Fix bad import %s/runtime_primitives/sr_primitives/ (#3236)
* core/network: Fix bad import %s/runtime_primitives/sr_primitives/

* Cargo.lock: Update consensus-common-primitives parity-codec version

* core/consensus/common: Remove obsolete package path
2019-07-29 15:55:57 +02:00
Kian Paimani 79feb23a22 Refactor sr_primitives. (#3214)
* refactor sr_primitives.

* Fix try build error.

* Line-width

* Ui test.

* Final fixes.

* Fix build again.

* bring back ui test.

* Fix unsigned import.

* Another ui fix.

* Also refactor substrate-primitives

* Fix benchmarks.

* Fix doc test.

* fix doc tests
2019-07-29 14:43:53 +02:00
Max Inden cf80af9255 core/consensus,node/runtime: Declare and implement authorities endpoint (#3207)
The goal of the commit is to be able to retrieve the current set of
authorities without needing to know the concrete consensus mechanism in
place.

In order to achieve the above this commit introduces the
`core/consensus/common/primitives` crate, declaring the `ConsensusApi`
runtime API. In addition it implements the above mentioned trait
definition in `node/runtime` by returning the current authorities of the
BABE consensus mechanism.
2019-07-29 08:39:47 -04:00
Bastian Köcher 9303b9b7df Remove IncrementalInput and fix wasm storage_into* (#3224) 2019-07-29 10:44:40 +02:00
Pierre Krieger 8c919e031b Stop being generic over the message (#3186) 2019-07-29 09:29:06 +02:00
Pierre Krieger 9370a4a6b6 Clean up the basic-authorship crate (#3206)
* Switch consensus-common to new futures

* Fix tests

* More tests fixing

* Make Proposer, OnSlot and SyncOracle mut

* Make the Environment mut as well

* Fix test

* Fix Babe tests

* Babe fixes

* Fix CLI service tests

* Fix Babe tests

* Remove unnecessary trait bound

* Inline the code of BlockBuilder and AuthoringApi

* Remove warning lint

* Bounds simplification

* Imports simplification

* Don't panic on bad generated block

* Code style

* Add doc example

* Remove dependency on aura

* Order dependencies alphabetically

* Minor style
2019-07-27 20:24:51 -04:00
Pierre Krieger ba55d31d44 Minor cleanup in native_executor.rs (#3218)
* Minor cleanup in native_executor.rs

* Fix tests
2019-07-27 15:41:22 +02:00
Pierre Krieger 5220ccbf20 Import queue steps (#3159)
* Switch consensus-common to new futures

* Fix tests

* More tests fixing

* Pass the block_import by value when importing

* Rewrite the multi-blocks import as a future

* Add some comments

* Add a delay between each block

* Fix Babe tests

* Reverse white space change
2019-07-26 08:42:03 +08:00
André Silva a5efdd05d7 Use milliseconds for timestamp resolution (#3210)
* node: tabify constants file

* node: define minimum period and slot duration in milliseconds

* core: srml: use milliseconds for timestamp resolution

* core: update slot_duration to millis in tests

* node: bump spec_version

* node: fix integration test

* node: fix executor test

* Update node/runtime/src/lib.rs

Co-Authored-By: Kian Peymani <Kianenigma@users.noreply.github.com>

* node: fix docs on timestamp resolution

* node: add docs on u64 for millis
2019-07-26 08:40:15 +08:00