Commit Graph

931 Commits

Author SHA1 Message Date
Tomasz Drwięga 3d692491a8 CheckEra -> CheckMortality (#1306)
* CheckEra -> CheckMortality

* Update substrate.
2020-06-24 17:25:02 +02:00
Sergei Shulepov e2ed86e499 Exploration of using graphwiz (#1298)
* Experiment with graphwiz

* Convert parachain overview diagrams

* add install note for mdbook-graphviz

Co-authored-by: Robert Habermeier <rphmeier@gmail.com>
2020-06-24 10:14:41 -04:00
Ashley aacc251af9 Companion PR for Fix the browser node and ensure it doesn't colour the informant output #6457 (#1307)
* Companion for Substrate #6269 (nested storage tx)

* Adjust to PR changes

* Bump to newest substrate

* Bump spec

* Switch branch

* Remove redundant informant_prefix

* Fix collator tests

* Update branch

* Revert "Switch branch"

This reverts commit bcce560c51fbc9db604cf3b0f615bfd21419f87d.

Co-authored-by: Alexander Theißen <alexander.theissen@parity.io>
2020-06-24 12:04:07 +02:00
Bastian Köcher 2dfe8ffce8 Make produce_candidate return an Option (#1309)
* Make `produce_candidate` return an `Option`

Instead of `produce_candidate` returning a `Result`, it should return an
`Option`. The only supported error was `InvalidHead` anyway and Cumulus
will take care to print appropriate information on what failed and
Polkadot can just ignore it.

* Fix warning
2020-06-24 01:04:45 +02:00
Gavin Wood 5045262fa7 Update staking reward curves (#1302)
* Update staking reward curve for pre-parachain situation.

* Bump runtime.

* Bump versions
2020-06-23 17:40:41 +02:00
Shawn Tabrizi 3f53deb10e Make Proxy NonTransfer filter explicit (#1303)
* Make kusama proxy explicit

* Make polkadot explicit

* Make westend explicit

* bump spec
2020-06-23 13:14:38 +02:00
Cecile Tonglet 26f975511f Companion PR for https://github.com/paritytech/substrate/pull/6400 (#1287)
* Initial commit

Forked at: 00ac43c26c
Parent branch: origin/master

* Substrate companion PR

impl Debug for sc_service::Configuration

Related to: https://github.com/paritytech/substrate/pull/6400

* Bump

Co-authored-by: Gav Wood <gavin@parity.io>
2020-06-23 13:12:34 +02:00
Alexander Theißen 8fb1e2547c Companion for Substrate #6269 (nested storage tx) (#1210)
* Companion for Substrate #6269 (nested storage tx)

* Adjust to PR changes

* Bump to newest substrate

* Bump spec
2020-06-23 12:50:29 +02:00
Robert Habermeier 424d61818e Expand PoV Distribution section and improve candidate types (#1294)
* rejig candidate types a bit

* adjust doc

* describe basic PoV distribution

* replace some straggling html links

* address grumbles from review and fix links
2020-06-22 15:01:38 -04:00
André Silva 6feeabbc7e node: spawn babe and grandpa as blocking tasks (#1292)
* node: spawn babe and grandpa as blocking tasks

* update to latest substrate
2020-06-22 19:27:38 +02:00
s3krit ebf7de90c2 [CI] Refactor publish_draft_release.sh (#1289)
* Refactor publish_draft_release.sh

* Switch to using arrays for storing labelled changes
* Combine changes for Polkadot and Substrate
* Change sanitised_git_logs in `lib.sh` to drop `*`s at the start
* Only look for priorities of medium or above (presence of one or more
  C1 label is enforeced by check-labels anyway, saves us some API calls)

* Ensure priorities >C1-low aren't labelled B0-silent
2020-06-22 19:24:12 +02:00
Pierre Krieger 2338b80af1 Use /dns/ rather than /dns4/ (#1275)
* Use /dns4/ rather than /dns/

* Update polkadot.json
2020-06-22 19:19:50 +02:00
Peter Goodspeed-Niklaus 14ce04c9cd signed wrapper (#1283)
* add signed wrapper, typedef SignedStatement

* typedef SignedAvailabilityBitfield

* implement Signed wrapper

This is strictly an addition as of this commit; nothing is yet
changed in existing behavior.

* inline getters, remove review comment

* move EncodeAs, Signed from node::primitives to primitives::parachain

* Refactor SignedAvailabilityBitfield to use Signed

* don't double-encode real payload

This isn't an ideal solution, because it depends on the
implementation details of how SCALE encodes tuples, but OTOH
that behavior seems unlikely to change anytime soon.

* fix build errors

* cause the runtime to build properly with the new changes

Not sure why cargo check didn't catch this earlier; oh well.

* fix runtime tests and separate SignedStatement from SignedFullStatement

* better explain why CompactStatement exists

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

Co-authored-by: Robert Habermeier <rphmeier@gmail.com>
2020-06-20 14:56:33 -04:00
Sergei Shulepov 90a1ba1e90 Fix glossary link (snowballed) (#1297)
* Add mdbook-linkcheck

* Convert todo to not a link

* Fix external glossary link

* Fix various broken links

* Mass replace: s/.html/.md/

* My sloppy attempt to add a gitlab CI check
2020-06-20 14:23:28 -04:00
s3krit d4e6013d38 [CI] Don't autolabel insubstantial PRs 'pleasereview' (#1293)
* Don't label insubstantial PRs 'pleasereview'

* Update auto-label-prs.yml

* Update auto-label-prs.yml
2020-06-20 10:40:48 +02:00
Denis Pisarev 7fd36394b6 change (ci): remove CARGO_HOME caching as it's still broken (#1291) 2020-06-19 18:51:31 +02:00
Gavin Wood d52751d9e6 Bump Substrate (#1286) 2020-06-19 11:57:03 +02:00
Toralf Wittner 00ac43c26c Update libp2p-ping. (#1285)
Bugfix release, see [CHANGELOG].

[CHANGELOG]: https://github.com/libp2p/rust-libp2p/blob/master/protocols/ping/CHANGELOG.md
2020-06-19 08:36:37 +02:00
Robert Habermeier 879892d3f9 Inclusion Module (#1242)
* add availability bitfield types to primitives

* begin inclusion module

* use GitHub issue link for limitation

* fix some compiler errors

* integrate validators into initializer

* add generic signing context

* make signing-context more generic

* fix issues with inclusion module

* add TODO

* guide: add validators and session index to inclusion

* guide: add session index to change notification

* implement session change logic

* add BackedCandidate type

* guide: refine inclusion pipeline

* guide: rename group_on to group_validators

* guide: add check about collator for parathread

* guide: add last_code_upgrade to paras and use in inclusion

* implement Paras::last_code_upgrade

* implement most checks in process_candidates

* make candidate receipt structs more generic

* make BackedCandidate struct more generic

* use hash param, not block number

* check that candidate is in context of the parent block

* include inclusion module in initializer

* implement enact-candidate

* check that only occupied cores have bits set

* finish implementing bitfield processing

* restructure consistency checks on candidates

* make some more primitives generic

* signature checking logic for backed candidates

* finish implementing process_candidates

* implement collect_pending

* add some trait implementations to primitives

* implement InclusionInherent and squash warnings

* test bitfield signing checks

* rename parachain head to para_head

* fix note_new_head bug in paras

* test bitfield enactment in inclusion

* helpers for candidate checks

* add test for most candidate checks

* add test for backing setting storage

* test session change logic

* remove extraneous type parameter

* remove some allow(unused)s

* extract threshold computation to const fn

* remove some more allow(unused)s

* improve doc

* add debug assertion

* fix primitive test compilation

* tag unanimous variant as unused
2020-06-18 19:38:07 -04:00
Fedor Sakharov 7accc6e499 Guide: router module (#1279)
* Router module initial commit

* Add the router.md itself

* Enqueue only on enact_candidate

* Initialization concerns

* Ignore the snippet

* Update roadmap/implementors-guide/src/runtime/router.md

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

* Dispatch messages on finalization

* More fixes from review

* Update roadmap/implementors-guide/src/SUMMARY.md

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

* Adds router to initializer order

* Adds messages.md

Co-authored-by: Robert Habermeier <rphmeier@gmail.com>
2020-06-18 15:13:28 -04:00
Pierre Krieger 3d7c3479b2 Revert yamux to 0.4.5 (#1281) 2020-06-18 11:43:51 +02:00
Arkadiy Paronyan ae9ebc38bb Bump trie-db (Companion for substrate#6364) (#1274)
* Bump trie-db

* Bump substrate
2020-06-18 11:13:15 +02:00
Kian Paimani 3c9d72fb57 Companion for substrate/pull/6334 (#1263)
* fix all runtimes and add test'

* Fix build

* Undo changes to lock file?

* Fix runtime test

* Remove unused imports

* cargo update -p sp-io

* Update Cargo.lock

* bump spec version

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-06-18 09:41:39 +02:00
Robert Habermeier c226c4403d Add some message types from subsystem definitions (#1265)
* introduce polkadot-node-primitives

* guide: change statement distribution message types

* guide: remove variant from `CandidateSelectionMessage`

* add a few more message types

* add TODOs

* Almost all messages

* NewBackedCandidate notification

* Formatting

* Use AttestedCandidate as BackedCandidate

* Update node/primitives/src/lib.rs

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>

* Fix the tests

* Bring in types from #1242

* Adds network bridge messages

* More message types from doc

* use fn pointer type

* Fixes from the review

* Add missing Runtime subsystem message

* rename to CandidateValidationMessage and fix tests

Co-authored-by: Fedor Sakharov <fedor.sakharov@gmail.com>
Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
2020-06-17 19:49:17 -04:00
Robert Habermeier 87ae6e42f5 Various Guide Improvements (#1270)
* types chapter & candidate types

* Factor out some message types

* backing and availability types.

* spacing

* finish thought

* info on signed payloads

* update links

* explicit wrapper types

* add remaining message types

* add runtime API subsystem

* adjust language

* tweak candidate validation message

* find homes for some misfit types

* embed abridged within full candidate receipt

* Update roadmap/implementors-guide/src/SUMMARY.md

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>

* Update roadmap/implementors-guide/src/SUMMARY.md

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>

* adjust text on candidate selection message to match

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
2020-06-17 15:09:43 -04:00
Bastian Köcher c712bbb0d9 Add some logging to the validation pipeline. (#1278) 2020-06-17 15:08:54 -04:00
Peter Goodspeed-Niklaus 04097c881d Update guide candidate validation module (#1264)
* first pass updating candidate validation module in the guide

* expand candidate validation functionality section

* add candidate fetch; validation requires PoV to be provided

* remove candidate fetch
2020-06-17 14:37:03 -04:00
s3krit c3ed40fbe6 [CI] Add criticality of release to release notes (#1259)
* Enforces presence of C-labels to designate the importance of a release
* Iterates over them on a release, takes the highest present and includes it in the release notes
* Lists the change(s) that caused the release to be that priority
2020-06-17 14:10:13 +02:00
Gav Wood 43e7a3be33 Another CI fix 2020-06-17 13:15:09 +02:00
Gav Wood e21a6bf763 Fix CI 2020-06-17 13:13:05 +02:00
Gavin Wood fdda80295f v0.8.10 (Polkadot 10) (#1277)
* Rename old labels.

* Bump runtimes

* Bump versions

* Bump lock
2020-06-17 13:03:23 +02:00
Xiliang Chen 43d99bf24b fix build (#1260) 2020-06-17 12:23:15 +02:00
Gav Wood 825b4b4b34 Bump 2020-06-16 18:52:10 +02:00
Gavin Wood 3adb08d916 Bump (#1273) 2020-06-16 18:20:59 +02:00
Peter Goodspeed-Niklaus 0dffa4e4d8 small tweaks to candidate selection (#1253)
* small tweaks to candidate selection

* clarify the nature of inputs
2020-06-16 11:52:37 -04:00
Fabio Lama 333649ae20 Change absolute links in Implementers's Guide to relative links (#1272)
* adjust to relative links

* additional adjustment to relative link

* link directly to file

* link directly to file
2020-06-16 10:04:49 -04:00
Martin Pugh b5aecb8a3d update label names for check_labels job 2020-06-16 15:38:43 +02:00
s3krit e3a258ffcb [CI] Fix autolabel (#1271)
Missed the necessary remove-labels from the Label New PRs job
2020-06-16 13:05:17 +02:00
s3krit b0b43f8eed [CI] Auto-label new PRs depending on status (#1267)
* Add auto-labelling github action

* Update auto-label-prs.yml

* Update auto-label-prs.yml

* Update auto-label-prs.yml
2020-06-16 10:32:41 +02:00
Guillaume Thiolliere 8492e622ae Companion: remove IsCallable make use of introduced in-origin filtering (#1226)
* remove IsCallable make use of in-origin filter

* update lock

* bump version for runtimes as spec as changed

* trigger CI

* Revert "trigger CI"

This reverts commit 5ac58fd42ac50dfb2fcd41ca866c7f6a605c5112.
2020-06-16 10:32:19 +02:00
Peter Goodspeed-Niklaus c1b329491f update provisioner subsystem (#1257)
* update provisioner subsystem

Closes #1143

* update with answers to the questions posed by previous todos

* add misbehavior reports, disputes to provisioner messages

* expand on the protocol

* updates per code review
2020-06-15 15:53:48 +02:00
Gav Wood ef2aa428d7 Version and lock 2020-06-12 16:10:10 +02:00
Gavin Wood 4317d1b980 Bump versions, tweak deposit costs. (#1252)
* Bump versions, tweak deposit costs.

* Version

* Lock

* Make test work ok when numbers are not round.

* Bump Substrate

* Lock
2020-06-12 16:08:31 +02:00
Fedor Sakharov d7e17fc612 New service initial commit (#1234)
* New service initial commit

* More separation of the new and old services

* Fix review comments

* Adds polkadot.json

* Fix browser build

* Remove unused import

* Update node/service/src/lib.rs

Co-authored-by: Fedor Sakharov <fedor.sakharov@gmail.com>

* Remove duplicate json files

Co-authored-by: Robert Habermeier <rphmeier@gmail.com>
2020-06-11 15:26:15 -04:00
Robert Habermeier 04c8603042 Scheduler Module (#1162)
* scheduler module skeleton

* update scheduler skeleton to match latest version of guide

* better session change notification

* add mock randomness and fix test compilation

* shuffle validators into groups

* finish implementing session change logic for scheduler

* tweak core assignment type to track retries of parathread

* reframe queued parathread core as offset

* implement initialzation and finalization routines

* implement parathread claim queuing

* implement core_para

* implement the group_validators routine and fix errors

* add a reason for freeing cores

* implement `schedule` function

* add some docs to the scheduled function

* implement `occupied` helper

* implement availability predicate

* fix some warnings

* integrate scheduler into initializer

* integrate scheduler into mock module

* avoid conflict with Substrate's scheduler storage

* add parathreads index to paras module

* implement parathreads map in paras module

* add is_parathread to paras

* test adding parathread claim

* test that you cannot add claims when no parathread cores exist

* check session change parathread queue pruning

* test validator shuffling

* add allow_unused to scheduler items

* add test for scheduling

* add some more tests for scheduling logic

* test core rotation

* check parathread claim pruning after retries

* add bound notes

* Apply suggestions from code review

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
Co-authored-by: Bernhard Schuster <bernhard@ahoi.io>

* more suggestions from review

* test availability predicate, add box to please compiler

* add changes to guide

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
Co-authored-by: Bernhard Schuster <bernhard@ahoi.io>
2020-06-11 15:15:30 -04:00
Peter Goodspeed-Niklaus 053bfc2d0c Convert guide from single markdown file to mdbook (#1247)
* move old implementers' guide, add skeleton of new

* Split the old implementers' guide into the new one's sections

This is mostly a straightforward copying operation, moving the
appropriate sections from the old guide to the new. However, there
are certain differences between the old text and the new:

- removed horizontal rules between the sections
- promoted headers appropriately within each section
- deleted certain sections which were in the old guide's ToC but
  which were not actually present in the old guide.
- added Peer Set Manager to the new ToC

* remove description headers

It is redundant and unnecessary. Descriptions fall directly under the
top-level header for any given section.

* add stub description of the backing module

* add stub description for the availability module

* add stub description for collators

* add stub description for validity

* add stub description for utility

* highlight TODO and REVIEW comments

* add guide readme describing how to use mdbook

* fix markdownlint lints

* re-title parachains overview

* internal linking for types

* module and subsystem internal links

* .gitignore should have a trailing newline

* node does not have modules, just subsystems
2020-06-11 17:04:23 +02:00
Cecile Tonglet 41ef46e60b Allow starting westend chain from start_collator (#1246)
* Initial commit

Forked at: b925981971
Parent branch: origin/master

* Allow starting westend chain from start_collator
2020-06-11 14:01:46 +02:00
André Silva 9bb2e0dadc service: update to latest ServiceBuilder changes (#1245)
* service: update to latest ServiceBuilder changes

* Update Cargo.lock

Co-authored-by: Bastian Köcher <git@kchr.de>
2020-06-11 13:43:20 +02:00
Robert Habermeier b925981971 Utility subsystem for actually connecting to network (#1205)
* define subsystems skeleton

* Create a blank section for each subsystem in the initial batch

* write out basics for most subsystems

* define network bridge subsystem

* integrate network bridge into network systems

* Apply suggestions from code review

some nits

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

* clean up wording

Co-authored-by: Max Inden <mail@max-inden.de>
2020-06-10 13:31:29 -04:00
Robert Habermeier 88161da402 Write out stubs for most backing and availability subsystems (#1199)
* define subsystems skeleton

* Create a blank section for each subsystem in the initial batch

* write out basics for most subsystems

* Update roadmap/implementors-guide/guide.md

clean up language

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>

* ToC indentation

* clean up wording

* renaming block authorship (provisioning) to Provisioner

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
2020-06-10 11:24:37 -04:00