* Wip
* Increase proposer timeout.
* WIP.
* Better timeout values now that we are going to be connected to all nodes. (#2778)
* Better timeout values.
* Fix typo.
* Fix validator bandwidth.
* Fix compilation.
* Better and more consistent sizes.
Most importantly code size is now 5 Meg, which is the limit we currently
want to support in statement distribution.
* Introduce statement fetching request.
* WIP
* Statement cache retrieval logic.
* Review remarks by @rphmeier
* Fixes.
* Better requester logic.
* WIP: Handle requester messages.
* Missing dep.
* Fix request launching logic.
* Finish fetching logic.
* Sending logic.
* Redo code size calculations.
Now that max code size is compressed size.
* Update Cargo.lock (new dep)
* Get request receiver to statement distribution.
* Expose new functionality for responding to requests.
* Cleanup.
* Responder logic.
* Fixes + Cleanup.
* Cargo.lock
* Whitespace.
* Add lost copyright.
* Launch responder task.
* Typo.
* info -> warn
* Typo.
* Fix.
* Fix.
* Update comment.
* Doc fix.
* Better large statement heuristics.
* Fix tests.
* Fix network bridge tests.
* Add test for size estimate.
* Very simple tests that checks we get LargeStatement.
* Basic check, that fetching of large candidates is performed.
* More tests.
* Basic metrics for responder.
* More metrics.
* Use Encode::encoded_size().
* Some useful spans.
* Get rid of redundant metrics.
* Don't add peer on duplicate.
* Properly check hash
instead of relying on signatures alone.
* Preserve ordering + better flood protection.
* Get rid of redundant clone.
* Don't shutdown responder on failed query.
And add test for this.
* Smaller fixes.
* Quotes.
* Better queue size calculation.
* A bit saner response sizes.
* Fixes.
* lock substrate version for testing
* `ModuleId` to `PalletId`
* release substrate version
* Update Cargo.lock
Co-authored-by: Xavier Lau <c.estlavie@icloud.com>
* Remove unused relaying XCM
* Aggregate HRMP (XCMP/HMP) messages. Payloads for spambot.
* Revert lock
* Fix
* Broken example
* Introduce fee payment mechanics into XCM.
* Weight limitations on XCM execution
* Mock environment for tests and the first test
* Tests for XCM and a few refactors.
* Remove code that's not ready
* Fix for an XCM and an additional test
* Query response system
* XCMP message dispatch system reimagining
- Moved most of the logic into xcm-handler pallet
- Altered the outgoing XCMP API from push to pull
- Changed underlying outgoing queue data structures to avoid multi-page read/writes
- Introduced queuing for incoming messages
- Introduced signal messages as a flow-control sub-stream
- Introduced flow-control with basic threshold back-pressure
- Introduced overall weight limitation on messages executed
- Additonal alterations to XCM APIs for the new system
* Some build fixes
* Remove the Encode bounds sprayed around
* More faff
* Fix bounds amek use latest scale codec.
* remove println
* fixes
* Fix XcmExecutor Tests
* Fix XCM bounds using derivative crate
* Refactor names of XcmGeneric &c into Xcm
* Repot the xcm-executor into xcm-builder
* Docs
* Docs
* Fixes
* Update xcm/src/lib.rs
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* Fixes
* Docs
* Update runtime/parachains/src/ump.rs
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* Docs
* Fixes
* Fixes
* Fixes
* Docs
* Fixes
* Fixes
* Introduce transfer_asset specialisation.
* Fixes
* Fixes
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* code stored in para + modify CandidateDescriptor.
* WIP: digest + some more impl
* validation_code_hash in payload + check in inclusion
* check in client + refator
* tests
* fix encoding indices
* remove old todos
* fix test
* fix test
* add test
* fetch validation code inside collation-generation from the relay-chain
* HashMismatch -> PoVHashMismatch + miscompilation
* refactor, store hash when needed
* storage rename: more specific but slightly too verbose
* do not hash on candidate validation, fetch hash instead
* better test
* fix test
* guide updates
* don't panic in runtime
Co-authored-by: Robert Habermeier <rphmeier@gmail.com>
* dispute types
* add Debug to dispute primitives in std and InherentData
* use ParachainsInherentData on node-side
* change inclusion_inherent to paras_inherent
* RuntimeDebug
* add type parameter to PersistedValidationData users
* fix test client
* spaces
* fix collation-generation test
* fix provisioner tests
* remove references to inclusion inherent
* Lease out current period and trigger onboard
* Add test for trigger_onboard
* patch and add benchmark
* finish benchmarks
* Use result instead of panic for test_registrar
* nits
* Almost make it work.
* Make the runtimes build
* Some fixes
* Make the whole thing compile
* Apply suggestions from code review
* Fix review comments
* remove unused.
* nit
* Fix
* "Update Substrate"
* bump tx-version
Co-authored-by: parity-processbot <>
* TODOs
* Add auctions.rs, comment on changes needed.
* Remove cruft from slots
* Remove more from auctions.rs
* More logic drafting in slots.
* More logic in slots.rs
* patch some errors
* more fixes
* last nit
* Cleanups in slots.rs
* Cleanups in slots.rs
* patches
* make build
* crowdloan to new api
* auction compile
* Use ParaId instead of FundIndex in Crowdloan (#2303)
* use paraid instead of fundindex
* Update crowdloan.rs
* check caller is manager
* Auction tests and fix build warnings.
* Configurable origin for initiating auctions
* Remove on_finalize
* #2303 (manual merge)
* Tests for Slots
* some registrar tests
* Apply suggestions from code review
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Update runtime/common/src/slots.rs
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* Slots uses Registrar for CurrentChains
* swap works test
* on swap impl
* traitify parachain cleanup
* explicit lifecycle tracking for paras
* initial implementation of lifecycles and upgrades
* clean up a bit
* Update runtime/common/src/slots.rs
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
* fix doc comment
* more rigid lifecycle checks
* include paras which are transitioning, and lifecycle query
* format guide
* update api
* update guide
* explicit outgoing state, fix genesis
* handle outgoing with transitioning paras
* Revert "explicit lifecycle tracking for paras"
This reverts commit 4177af7ba473bbd9c26bccd861793f25265b6657.
* remove lifecycle tracking from registrar
* do not include transitioning paras in identifier
* Update paras_registrar.rs
* final patches to registrar
* Fix test
* use noop in test
* clean up pending swap on deregistration
* finish registrar tests
* Update roadmap/implementers-guide/src/runtime/paras.md
* Update roadmap/implementers-guide/src/runtime/paras.md
* Update roadmap/implementers-guide/src/runtime/paras.md
* Apply suggestions from code review
* Use matches macro
* Correct terms
* Apply suggestions from code review
* Remove direct need for Slots and Registrar from Crowdloan
* Rejig things slightly
* actions queue
* Revert "actions queue"
This reverts commit b2e9011ec8937d6c73e99292416c9692aeb30f73.
* Traitify Auction interface.
* Mockups and initial code for Crowdloan testing
* One test...
* collapse onboarding state
* fix some crowdloan tests
* one more
* start benchmarks for auctions
* benchmark bid
* fix more crowdloan tests
* onboard and begin retirement no longer exist
* Revert "onboard and begin retirement no longer exist"
This reverts commit 2e100fd94e3540bff5f172328b5d917896f1c6fc.
* Simplify crowdloan and make it work.
* Fixes
* fix some
* finish merge fixes
* fix refund bug in auctions
* Add traits to Registrar for tests and benchmarks
* fix more auction benchmarks
* Fix TestAuctioneer
* finish crowdloan benchmarks
* start setting up full integration tests
* expand integration tests
* finish basic integration test
* add more integration tests
* begin slots benchmarks
* start paras registrar benchmarks
* fix merge
* fix tests
* clean up paras registrar
* remove println
* remove outdated cleanup config
* update benchmarks
* Add WeightInfo
* enable runtime-benchmarks feature flag
* complete swap benchmark
* add parachains and onboarding into westend
* add benchmarks and genesis
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=slots --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* fix benchmark execution
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=crowdloan --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=paras_registrar --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* Use `new_raise_len` in crowdloan on_initialize
* Update paras_registrar.rs
* fix westend merge
* impl on_swap for crowdloan
* Check fund exists before create
* update for crowdloan sig
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=crowdloan --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* slots on_initialize
* use integration tests environment for benchmarks
* fix hrmp event
* auction on_initialize
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* fix storage name in auctions
* add auction_index to winning data
* winning data takes into account current auction index
* remove println
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=slots --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* Revert "add auction_index to winning data"
* PastRandomness.
* Fixes
* Use new randomness
* fix use of randomness in auctions and runtime config
* expose consts
* fix auction test
* add deposit per byte for para registration
* basic swap integration test
* make swap test more comprehensive
* Add WinningVec for easier retrieval in the front-end.
* clean up `WinningVec` at the end
* Add event for when a new best bid comes in
* Fix propagation of winners in ending period
* fix benchmarks, refund weight in dissolve
* fix unused
* remove some TODOs
* setup opaque keys for paras in westend
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=crowdloan --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* remove unused
* cargo run --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/
* back to regular runtime config
* use saturating math where user input can be
* better first slot check
* Update runtime/common/src/claims.rs
* update westend onswap impl
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Parity Benchmarking Bot <admin@parity.io>
* runtime: use babe as randomness source
* runtime: fix randomness api
* bridges: fix random_seed
* parachains: use mock TestRandomness from frame_support_test
* parachains: use mock TestRandomness from frame_support_test
* runtime: update randomness source in test-runtime
* runtime: remove unused import
* parachains: add todo to audit usage of randomness api
* "Update Substrate"
Co-authored-by: parity-processbot <>
* Add a config field to babe epochs
* Fix test
* Add BABE_GENESIS_EPOCH_CONFIG consts
* Use PrimaryAndSecondaryVRFSlots and remove newlines
* Make epoch_configs Some
* Fix tests
* Fix test service tests
* Add a BabeEpochConfigMigrations OnRuntimeUpgrade
* Apply suggestions
* Use PrimaryAndSecondaryPlainSlots in kusama
* Remove migration from test runtime and rococo
* Add HasPalletPrefix
* Rename to BabePalletPrefix and change BabeApi -> Babe
* "Update Substrate"
* Update substrate
* Resolve parantheses errors
Co-authored-by: parity-processbot <>
* Lol
* Add the features
* Remove some more runtime logger init calls
* Make companion check work
* Revert "Make companion check work"
This reverts commit a255c798076466c0fa20a4db713fc712772c2b4d.
* Update Substrate
* add tracing to approval voting
* notify if session info is not working
* add dispute period to chain specs
* propagate genesis session to parachains runtime
* use `on_genesis_session`
* protect against zero cores in computation
* tweak voting rule to be based off of best and add logs
* genesis configuration should use VRF slots only
* swallow more keystore errors
* add some docs
* make validation-worker args non-optional and update clap
* better tracing for bitfield signing and provisioner
* pass amount of bits in bitfields to inclusion instead of recomputing
* debug -> warn for some logs
* better tracing for availability recovery
* a little av-store tracing
* bridge: forward availability recovery messages
* add missing try_from impl
* some more tracing
* improve approval distribution tracing
* guide: hold onto pending approval messages until NewBlocks
* Hold onto pending approval messages until NewBlocks
* guide: adjust comment
* process all actions for one wakeup at a time
* vec
* fix network bridge test
* replace randomness-collective-flip with Babe
* remove PairNotFound