Commit Graph

461 Commits

Author SHA1 Message Date
Bastian Köcher e7bb3aef39 Check candidate signatures before including them in set_heads (#1335)
* Check candidate signatures before including them in `set_heads`

This work around the bug described in: https://github.com/paritytech/polkadot/issues/1327

We check the candidate signatures in `create_inherent` to ensure that
all are valid. If one isn't valid, we don't include any candidate for
the current inherent.

* Bump runtimes
2020-07-03 10:02:55 +02:00
Gavin Wood aeae0e1422 Revert "Companion PR for Allow specify schedule dispatch origin #6387" (#1340) 2020-07-02 15:09:03 +02:00
Gav Wood 393c4bffe4 Merge branch 'update-scheduler' of https://github.com/xlc/polkadot into xlc-update-scheduler 2020-07-02 15:06:11 +02:00
Bastian Köcher 934f27d92b Downward & Upward messages (#1266)
* Downward messages, the front-end.

* Move types around to make them accessible from Parachains

* Fix compilation

* Fix branch

* Make it compile for Cumulus

* Update the branch names

* Add default generic parameter

* Implement `Partialeq`

* Move upward messages into the `ValidationResult`

* Support disabling of the runtime api

* Update branch

* Adds support for handling downward messages

* Implement sending XCMP messages as up/downward messages

* service: update to latest ServiceBuilder changes

* Make it compile

* Initial commit

Forked at: ef2aa428d7
Parent branch: origin/master

* Update substrate branch to cecton-update-polkadot-substrate

* Update substrate & polkadot to cumulus-branch

* Reset branch

* Update primitives/src/parachain.rs

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

* Update runtime/common/src/parachains.rs

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

* Update runtime/common/src/parachains.rs

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

* Minor fixes

* Fix wasm build

Co-authored-by: Gav Wood <gavin@parity.io>
Co-authored-by: André Silva <andre.beat@gmail.com>
Co-authored-by: Cecile Tonglet <cecile.tonglet@cecton.com>
Co-authored-by: Robert Habermeier <rphmeier@gmail.com>
2020-07-01 10:20:38 -04:00
Chevdor 3b357fadd5 Add registrar proxy (#1296)
* Add registrar proxy

* Add proxy filter for registrar for polkadot and westend

* Renaming + allow batch calls for Kusama

* Add batch calls for other chains
2020-07-01 15:36:54 +02:00
Gavin Wood bba14546ab Allow voting in democracy (#1331)
* Allow voting in democracy.

* Ensire Root can begin referenda
2020-07-01 15:35:57 +02:00
Bryan Chen 9b8cba9815 Merge remote-tracking branch 'origin/master' into update-scheduler 2020-07-01 20:37:47 +12:00
Shawn Tabrizi b42d7ba4a2 Companion for #6511 (#1321)
* Add custom runtime upgrade for retract tip

* cargo update -p sp-io
2020-06-30 18:50:20 +02:00
Peter Goodspeed-Niklaus 90de55918a impl ProvideInherent for InclusionInherent (#1318)
* impl ProvideInherent for InclusionInherent

* reduce import churn; correct expect message

* move inclusion inherent identifier into primitives

It's not clear precisely why this is desired, but it's a pattern
I've seen in several places, so I'm going this to be on the
safe side. Worst case, we can revert this commit pretty easily.

* bump kusama spec_version to placate CI

* add license header

* empty commit; maybe github will notice the one with changes

* add sanity check to only include valid inherents
2020-06-30 11:07:59 -04:00
Bryan Chen a9480d9fe8 add runtime upgrade 2020-06-27 12:59:51 +12:00
Bryan Chen e426a8e070 Merge remote-tracking branch 'origin/master' into update-scheduler 2020-06-27 12:15:16 +12:00
Gavin Wood b2b0902ddd Companion for #6503 (#1315)
* Companion for #6503

* Remove old filtering

* Bump tx version

* Bump version

* Bump
2020-06-26 12:08:43 +02:00
Shawn Tabrizi 1e86cc30a5 Companion PR for #6386 (Read/Write Tracking) (#1284)
* add new apis to externalities

* Update mod.rs

* update for new host function

* Rename unused

* cargo update -p sp-io

* Add whitelists

* Apply changes to polkadot runtime as well

Co-authored-by: kianenigma <kian.peymani@gmail.com>
2020-06-25 10:04:34 +02:00
Bryan Chen 46e56f6f9c Merge remote-tracking branch 'origin/master' into update-scheduler 2020-06-25 11:19:48 +12:00
Tomasz Drwięga 3d692491a8 CheckEra -> CheckMortality (#1306)
* CheckEra -> CheckMortality

* Update substrate.
2020-06-24 17:25:02 +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
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
Bryan Chen 710b25d0eb update scheduler 2020-06-21 16:35:22 +12: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
Gavin Wood d52751d9e6 Bump Substrate (#1286) 2020-06-19 11:57:03 +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
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
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
Gavin Wood 3adb08d916 Bump (#1273) 2020-06-16 18:20:59 +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
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
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
Shawn Tabrizi 569b30e813 quick typo fix (#1225) 2020-06-10 13:27:33 +02:00
Gavin Wood 2978c1b9f4 v0.8.7 (#1222)
* Bump Substrate again.

* update kusama runtmie for ensure origin

* update polkadot runtime for ensure origin

* fix imports

* root only available for runtime benchmarks

* Fix lock file

* Bump Substrate

* Update lock

* Remove questionable feature-gating.

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-06-10 13:06:33 +02:00
Seun Lanlege 752f560a0a companion pr for #6235 (#1215)
* companion pr for paritytech/substrate#6235

* ???

* nah doesn't work for my branch

* bump Cargo.lock

* bump kusama spec versin

* bump kusama spec version

* revert to master

* bump Cargo.lock

Co-authored-by: Bastian Köcher <git@kchr.de>
2020-06-09 23:13:01 +02:00
Gavin Wood f4ead58695 Bump Substrate version (#1220) 2020-06-09 18:29:20 +02:00
Gavin Wood 425f4bb060 Bump versions. (#1219)
* Bump versions.

* Update lock
2020-06-09 12:26:50 +02:00
Gavin Wood 3e5e67855b Admin facility to move claims with council permission. (#1198) 2020-06-09 11:09:17 +02:00
Gavin Wood cd0258d224 Bump versions, tweak SudoBalances constraint to add batching. (#1216) 2020-06-08 20:11:34 +02:00
Gavin Wood c7f957ceec Companion for #6273 (Introduce stacked filtering) (#1212)
* Fix for new Substrate

* Fix

* Remove Utility constraint in NonTransfer

* Bump

* Fixes

* Allow limited utilities in proxy filters.

* Fix

* Add SudoBalances proxy restrictions
2020-06-08 17:23:56 +02:00
Marcio Diaz 780f4a564e Companion PR for #6214 (#1204)
* Rename Fixed128 to FixedI128.

* Bump cargo, merge #6236 fixes

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-06-06 23:00:32 +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
Kian Paimani 491f3bcb88 Comanion for substrate/pull/6173 (#1184)
* Make it work

* Upsub
2020-06-02 19:52:19 +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 86c66a7741 Updtae constraint (#1187) 2020-06-02 18:03:28 +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
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 d28df302b4 Update wasm builder to fix bugs in detecting changed files (#1169) 2020-05-29 15:52:34 +02:00
Kirill Pimenov b704fe8796 Bump Kusama spec version to 2000 (#1165) 2020-05-29 10:59:22 +02:00
Demi Obenour bcea20b377 Bump ‘spec_version’ in Westend (#1166)
This lets offline signers know that the transaction format has changed,
due to the addition of `transaction_version` to the signed payload.
2020-05-29 10:57:00 +02:00
Gavin Wood 7f30e2ed0f Bump (#1164)
* Bump

* Bump

* Bump
2020-05-28 16:36:52 +02:00
Bastian Köcher 94f407807e Make sure that vested claims are not transferable (#1160)
* Make sure that vested claims are not transferable

We need to deposit the claimed balance to the destination account before
setting the locks through the vesting module. Otherwise we loose the
locks and the vested claim is directly transferable.

* Add comment

* Enable missing feature for webbrowser check

* Remove unneeded error variant

* Increment `spec_version`'s

* Fix tests
2020-05-28 00:19:23 +02:00