Commit Graph

15907 Commits

Author SHA1 Message Date
Kian Paimani 8a8b4f99c3 Rename all the election operations (#6245)
* Rename and move sp-phragmen

* More renames for equalise

* Update main module doc

* Fix line width

* Line width
2020-06-05 17:33:13 +02:00
Bastian Köcher 0326d049c5 Update to latest Substrate & Polkadot (#107)
* Update to latest Substrate & Polkadot

* Replace --unsafe-rpc-export with --unsafe-rpc-external

* Add --rpc-methods=Unsafe

Documented in substrate 24486f52929e9e518eeccbc6ad6da70e9e5bdf8a

* typos

* more typo

* fixed rpc expose

* Disable the integration test

Co-authored-by: Cecile Tonglet <cecile.tonglet@cecton.com>
2020-06-05 16:57:02 +02:00
Robert Habermeier 9d5eae6ea3 establish new node folder for overseer, messages, and subsystems (#1200)
* establish new `node` folder for overseer, messages, and subsystems

* extract message types from overseer crate

* remove doc links
2020-06-05 10:48:35 -04:00
Kian Paimani d63b8e0da0 Remove pre-simple-payout code from staking (#6253)
* Remove some dead code

* fix

* Kill warnings
2020-06-05 11:09:00 +00:00
Pierre Krieger ecb6a10751 Update to Substrate master (#1196)
* Update to Substrate master

* Re-do upgrade
2020-06-05 11:45:33 +02:00
Pierre Krieger 34b7cc8a7a Sentry nodes and validator nodes also imply reserved (#6251) 2020-06-04 23:57:02 +02:00
Arkadiy Paronyan 31921c4eb9 Use number of downloaded blocks for test (#6234) 2020-06-04 23:41:48 +02:00
Gavin Wood f2c6eee7f1 Generalised proxies in Polkadot (#1190)
* Introduce generalised proxies to polkadot

* Introduce proxy to westend

* Add proxy to Kusama.

* Fix
2020-06-04 20:30:38 +02:00
Demi Obenour 7f1f811cf9 impl_opaque_keys should allow doc comments (#6255) 2020-06-04 18:38:02 +02:00
Peter Goodspeed-Niklaus 3d0bda8a42 Add an overview of Validity subsystems (#1161)
* migrate subsystem expansion PR from w3f/research

As the file at this new location included changes not present in
https://github.com/w3f/research/pull/87, this is effectively a
rebase, applied manually. I believe that I have successfully retained
all of, and only, the intended changes.

* add section on collators

* note why the overseer is the terminal message point for the validation subsystem

* add detail about how the validitiy system gets PoV blocks

* rename to Validity Subsystems Overview

* get rid of changes to the implementor's guide

I think it makes most sense to track and review the subsystems
overview in a different PR than the one which adds content to
the implementor's guide.

* punt misbehavior arbitration details to the future

* empty commit to rerun CI
2020-06-04 12:35:37 -04:00
André Silva 8f5a52fe1a Revert "Use Subscription Manager from jsonrpc-pubsub (#6208)" (#6252)
This reverts commit ea1eb4e57f.
2020-06-04 15:39:57 +01:00
Pierre Krieger 3fef099893 Fix service tests not calling update_chain (#6232) 2020-06-04 12:06:44 +00:00
Pierre Krieger 25fe9af5a8 Fix peerset not filtering incoming connections in reserved-only (#6249) 2020-06-04 11:48:15 +00:00
Hernando Castano ea1eb4e57f Use Subscription Manager from jsonrpc-pubsub (#6208)
* Bump jsonrpc pubsub, core, http, and ws

Right now these are the packages which _need_ to be updated
so I can just the latest `jsonrpc-pubsub` code. Once a release
it cut upstream the rest of the dependencies should be updated
as well.

* Use jsonrpc-pubsub's SubscriptionManager

This places sc-rpc-api::Subscriptions

* Bump jsonrpc-core outside of sc-rpc-*

* Update client/rpc tests

Right now one of the `author` tests is failing, I
need to think a bit about how best to fix it.

* Remove Subscriptions manager

There's no need for this implementation since we're
using the one from `jsonrpc-pubsub` now

* Fix author RPC test

This test used to check for a numerial subscription ID,
whereas now it uses a string based ID which is the default
provided by `jsonrpc-pubsub`'s subscription manager.

* Remove unused NumericIdProvider

* Add missing bracket

Removed one too many with that last one, lol

* Bump `jsonrpc` to v14.2

There's an exception though. `jsonrpc-derive` cannot be bumped
past v14.0.5 just yet since it has a dependency on `quote` pinned
to v1.0.1. This means that at the moment it won't build on Substrate
since it's using v1.0.3.

* Track `jsonrpc-derive` master branch

* Bump `quote` version to v1.0.6

* Bump `jsonrpc-derive` to v14.2.1

This includes support for `quote` v1.0.6
2020-06-04 09:50:22 +01:00
zx9w e3795af0e3 The link to getting-started was obsolete. (#6238)
* The link to getting-started was obsolete.

* link to installation and tutorials

Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
2020-06-04 10:40:20 +02:00
Fedor Sakharov f25fd672af Add block event forwarding into the Overseer (#1192)
* Add block event forwarding into the Overseer

* Add a doc comment

* Fix a doc comment
2020-06-03 12:49:04 -04:00
Cecile Tonglet 58a41cd205 Enable mdns polkadot (#106)
Fixes #57
2020-06-03 17:51:49 +02:00
Cecile Tonglet 60337aa765 Add run_full_node, run_light_node and print_node_infos to the API (#6233)
* Initial commit

Forked at: e77490714d
Parent branch: origin/master

* Add run_full_node, run_light_node and print_node_infos to the API

* Update runner.rs
2020-06-03 17:50:29 +02:00
Bastian Köcher f90f4854cd Split tx pool and offchain notification handling (#6231)
Instead of having the tx pool and offchain worker being feed from the
same import notification stream, this pr splits them to use two
different streams. The first advantage of this split is that the tx pool
will not be spawned anymore in another task and instead will directly
process the notification in the same task. This has the advantage of
being faster when the system is being under load, as the tx pool will
not be waiting for being scheduled to handle the notification.
2020-06-03 17:48:09 +02:00
Pierre Krieger e77490714d Fix libp2p features (#6229)
* Fix libp2p features

* Remove the opt-level of some now-unused crates
2020-06-03 13:24:44 +00:00
Cecile Tonglet ccf05e5022 Reject blocks without justification which don't have the best number (#105)
* Initial commit

Forked at: 6c74beab7b
Parent branch: origin/master

* Reject blocks without justification

* Revert "Reject blocks without justification"

This reverts commit ee60e12097939d4ccfe987a71db9a876319ae5ba.

* WIP

Forked at: 6c74beab7b
Parent branch: origin/master

* WIP

Forked at: 6c74beab7b
Parent branch: origin/master

* WIP

Forked at: 6c74beab7b
Parent branch: origin/master

* CLEANUP

Forked at: 6c74beab7b
Parent branch: origin/master

* WIP

Forked at: 6c74beab7b
Parent branch: origin/master

* WIP

Forked at: 6c74beab7b
Parent branch: origin/master

* CLEANUP

Forked at: 6c74beab7b
Parent branch: origin/master

* WIP

Forked at: 6c74beab7b
Parent branch: origin/master

* WIP

Forked at: 6c74beab7b
Parent branch: origin/master

* Move HeadData to primitives

* Update network/src/lib.rs

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

* Update network/src/lib.rs

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

* CLEANUP

Forked at: 6c74beab7b
Parent branch: origin/master

* fix

* CLEANUP

Forked at: 6c74beab7b
Parent branch: origin/master

* messages

* for the greater good

* Update primitives/src/lib.rs

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

* Update network/src/lib.rs

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

* Update network/src/lib.rs

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

* Update network/src/lib.rs

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

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-06-03 14:15:52 +02:00
Pierre Krieger 0c6ae6f3d4 Make dev profile faster by compiling deps with opt-level=3 (#6228)
* Make dev profile faster by compiling deps with opt-level=3

* More comment

* More comment refinment

* Remove soketto as it doesn't fit criterias

* Fix style
2020-06-03 12:45:57 +02:00
Nikolay Volf 28ccad4118 fix millis display (#6227) 2020-06-03 11:18:10 +02:00
Fedor Sakharov fc45a8e673 Adds start and stop work heartbeats. (#1188)
* Adds start and stop work heartbeats.

* Apply suggestions from code review

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

* Fix code after suggested changes

* Finalizing stops work on earlier lower blocks.

* Fix func parameter and flaky test

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-06-03 09:30:21 +03:00
Robert Habermeier 593fa2b0c1 note pruning of orphan blocks in the overseer description (#1189)
* note pruning of orphan blocks in the overseer description

* remove note about finalization events being maybe not needed
2020-06-02 16:19:53 -04:00
Kian Paimani 491f3bcb88 Comanion for substrate/pull/6173 (#1184)
* Make it work

* Upsub
2020-06-02 19:52:19 +02:00
Svyatoslav Nikolsky b800909dae block.tx[0] is not invalid if on_initialize is too heavy (#6217) 2020-06-02 19:07:10 +02:00
Robert Habermeier bd2304ec98 New parachain runtime skeleton (#1158)
* file structure and initializer skeleton

* ensure session changes happen before initialization

* add a couple tests for initializer flow

* integrate with session handling

* configuration update logic

* configuration methods

* move test mock to its own module

* integrate configuration into initializer

* add note about initialization order

* integrate configuration module into mock

* add some tests for config module

* paras module storage

* implement paras session change operation

* amend past code pruning to fully cover acceptance period

* update guide again

* do pruning of historical validation code

* add weight to initialization

* integrate into mock & leave notes for next session

* clean up un-ended sentence

* alter test to account for double index in past code meta

* port over code-at logic test

* clarify checking for conflicting code upgrades

* add genesis for paras, include in mock, ensure incoming paras are processed

* note on return value of `validation_code_at`

* implement paras routines from implementor's guide

* bring over some existing tests and begin porting

* port over code upgrade tests

* test parachain registration

* test code_at with intermediate block

* fix warnings

* clean up docs and extract to separate struct

* adjust implementor's guide to include replacementtimes

* kill stray println

* rename expected_at to applied_after

* rewrite ParaPastCodeMeta to avoid reversal

* clarify and test interface of validation_code_at

* make FutureCode optional

* rename do_old_code_pruning

* add comment on Option<()> to answer FAQ

* address some more grumbles
2020-06-02 12:34:07 -04:00
Gavin Wood 4adac40c07 Generalised proxies (#6156)
* Initial work

* It should work

* Fix node

* Fix tests

* Initial test

* Tests

* Expunge proxy functionality from democracy and elections

* Allow different proxy types

* Repotted

* Build

* Build

* Making a start on weights

* Undo breaking change

* Line widths.

* Fix

* fix tests

* finish benchmarks?

* Storage name!

* Utility -> Proxy

* proxy weight

* add proxy weight

* remove weights

* Update transfer constraint

* Again, fix constraints

* Fix negation

* Update frame/proxy/Cargo.toml

Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>

* Remove unneeded event.

* Grumbles

* Apply suggestions from code review

Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
2020-06-02 18:15:15 +02:00
Gavin Wood 86c66a7741 Updtae constraint (#1187) 2020-06-02 18:03:28 +02:00
Denis Pisarev ffea161765 refactor CI (#6176)
* fix (ci): hotfix Docker release

* test (ci): run full ci  [skip ci]

* change (ci): check stage; add default variables because they were overriden; test-dep-rules goes k8s

* change (ci): move companion job to another stage

* change (ci): no good way to avoid artifacts downloads without dependencies

* fix (ci): typo

* change (ci): all CI images were moved to paritytech registry

* fix (ci): return to the prev image, new needs more testing
2020-06-02 17:23:13 +02:00
Kian Paimani 0eec4bb795 Accept new Phragmén solutions if they are epsilon better + Better pre-inclusion checks. (#6173)
* part1: Accept inly epsilon better solutions

* Fix pre-dispatch check

* Fix build

* review grumbles

* Epsilon -> Threshold
2020-06-02 17:22:56 +02:00
Xiliang Chen 6547d7a09a Allow ExistentialDeposit = 0 (#6185)
* Allow ExistentialDeposit = 0

* there are better ways to check is an account exists

* fix StorageMapShim

* test account events and fix some bugs
2020-06-02 17:22:21 +02:00
tgmichel 7b9add7a71 pallet-evm ensure gas_price + Storage getter (#6191)
* evm: move gas price check to top-level dispatchable

* Add AccountCodes get fn and account_exists helper

* Remove account_exists, evm handles non-existing accounts

* Runtime bump impl_version 251/2

* Fix Runtime impl_version and spec_version

Co-authored-by: Wei Tang <hi@that.world>
2020-06-02 17:18:45 +02:00
Pierre Krieger 7a969aa401 Remove ReportHandle (#6213) 2020-06-02 17:16:53 +02:00
Joshy Orndorff 518348b88d impl FindAuthor<T::AuthorityId> for Aura (#6205)
* Something compiles

* compiles _and_ maintains old version

* Comments

* try to pass CI

* Update frame/aura/src/lib.rs

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

* Update frame/aura/src/lib.rs

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

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-06-02 15:21:12 +02:00
Fedor Sakharov fa46a92353 Overseer (#1152)
* Initial commit

* Licenses, spaces, docs

* Add a spawner

* Watch spawned subsystems with a FuturesUnordered

* Move the types around a bit

* Suggested fixes by Max

* Add a handler to talk to the Overseer

* FromOverseer and ToOverseer msgs and stopping

* Docs and return errors

* Dont broadcast, have add a from field to messages

* Allow communication between subsystems and outside world

* A message with a oneshot to send result example

* Remove leftover can_recv_msg

* Remove from field from messages

* Dont be generic over stuff

* Gather messages with StreamUnordered

* Fix comments and formatting

* More docs fixes and an example

* Apply suggestions from code review

Co-authored-by: Robert Habermeier <rphmeier@gmail.com>

* Fixes from review

Move function from impl block.
Do not panic but resolve with errors if spawner fails or subsystem
resolves.

* Dropping a handler results in a flaky test

Co-authored-by: Robert Habermeier <rphmeier@gmail.com>
2020-06-02 15:36:20 +03:00
Robert Habermeier 03576b3707 Remove old runtime requirements section, reorganize, and improve ToC (#1180)
* remove old runtime requirements section

* reorganize guide and improve ToC
2020-06-01 17:52:42 -04:00
Dan Forbes 4b6537fbba Fix Rustdoc Build (#6207) 2020-06-01 22:54:13 +02:00
Pierre Krieger 433c09833c Depend on async-std 1.5.0 only (#1179) 2020-06-01 20:03:50 +02:00
Gavin Wood 3c98185e1c Identity pallet (#1178)
* Identity

* Bump spec

* Update runtime/polkadot/src/lib.rs

Co-authored-by: kaichao <kaichaosuna@gmail.com>

* Fix runtime

* Bump runtimes

Co-authored-by: kaichao <kaichaosuna@gmail.com>
2020-06-01 20:03:28 +02:00
Bastian Köcher c04c88d71e Keep the table router for the lifetime of the validation instance alive (#1175)
This pr ensures that the table router stays alive for the lifetime of
the validation instance. This is required to ensure that the node
responds onto gossip messages for the particular relay chain round.
Before, the table router was only kept alive for relay chain nodes that
were assigned to a Parachain, however the lifetime was also relative
short. This lead to bugs where a relay chain node did not include
PoVBlock's, because it did not receive them (rejected them on receive,
because it was not listening on the particular round).
2020-06-01 09:07:29 -04:00
Nikolay Volf 6f677cdb23 report only on successfull block (#6187) 2020-06-01 11:09:20 +02:00
Nikolay Volf 5759cee2e9 Update import metrics and add verification time (#6170)
* refactor import reporting and add time

* Update primitives/consensus/common/src/metrics.rs

Co-authored-by: Max Inden <mail@max-inden.de>

* remove (crate)

* fix longer lines

* swap names to avoid api breaking

Co-authored-by: Max Inden <mail@max-inden.de>
2020-06-01 11:08:59 +02:00
Pierre Krieger 9cac359f44 Add a Substrate networking Grafana dashboard template (#6171)
* Add a substrate-networking grafana dashboard

* Capitalize data source

* Do changes
2020-06-01 10:46:34 +02:00
Pierre Krieger a80e801e93 Pin async-std to <1.6 (#6193) 2020-05-30 15:19:08 +02:00
Pierre Krieger 329e177a5a Fix the Prometheus endpoint not working (#1172)
* Revert async-std to 1.5.0

* Funny, some part of the Cargo.lock didn't get commited
2020-05-30 11:31:48 +02:00
Tomasz Drwięga 44c0ec5cf8 Use Substrate Block Proposer (#1156)
* Use Substrate block builder.

* Clean up metrics.

* Lock.

* Lock.

* Switch to newest basic authorship interface

* Update Substrate reference and polkadot spec_version

* Let's improve

Co-authored-by: Bastian Köcher <git@kchr.de>
2020-05-30 11:06:08 +02:00
Bastian Köcher 841aab512f Make Proposer consume its reference on propose (#6190)
* Make `Proposer` consume its reference on `propose`

A proposer must be created per new round, so it makes sense to have the
proposer consume its own reference.

* Remove `ProposerInner`
2020-05-29 18:50:56 +02:00
Robert Habermeier a3e4893a7c Improve the implementor's guide section on the Scheduler module (#1168)
* remove redundant resize instruction from guide

* amend past code pruning to fully cover acceptance period

* update guide again

* note on return value of `validation_code_at`

* rename execution cores to availability cores

* clarify terminology

* add ReplacementTimes to the guide

* fully decouple inclusion and scheduler

* clarify parathread scheduling substantially

* clarify validator group selection
2020-05-29 15:52:59 +02:00