Skip to content
  1. Jan 28, 2021
    • Bastian Köcher's avatar
      Introduce a `Slot` type (#7997) · b6294418
      Bastian Köcher authored
      
      
      * Introduce a `Slot` type
      
      Instead of having some type definition that only was used in half of the
      code or directly using `u64`, this adds a new unit type wrapper `Slot`.
      This makes it especially easy for the outside api to know what type is
      expected/returned.
      
      * Change epoch duratioC
      
      * rename all instances of slot number to slot
      
      * Make the constructor private
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      b6294418
    • Tomasz Drwięga's avatar
      Merkle Mountain Range pallet improvements (#7891) · 6c2dd28d
      Tomasz Drwięga authored
      
      
      * Add stateless verification helper function.
      
      * Split MMR primitives.
      
      * Add RuntimeAPI
      
      * RuntimeAPI with OpaqueLeaves
      
      * Bump spec_version,.
      
      * Move primitives back to frame.
      
      * Fix OpaqueLeaf encoding.
      
      * Add block number to frame_system implementation of LeafDataProvider.
      
      * Relax leaf codec requirements and fix OpaqueLeaf
      
      * Add root to debug line.
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      
      * Typo.
      
      Co-authored-by: default avatarHernando Castano <[email protected]>
      6c2dd28d
  2. Jan 27, 2021
  3. Jan 26, 2021
  4. Jan 25, 2021
  5. Jan 24, 2021
  6. Jan 22, 2021
    • cheme's avatar
      Allow transaction for offchain indexing (#7290) · 878f7ccf
      cheme authored
      
      
      * Moving offchain change set to state machine overlay change set,
      preparing use of change set internally.
      
      * Make change set generic over key and value, and use it for offchain
      indexing.
      
      * test ui change
      
      * remaining delta
      
      * generating with standard method
      
      * Remove 'drain_committed' function, and documentation.
      
      * Default constructor for enabling offchain indexing.
      
      * Remove offchain change specific iterators.
      
      * remove pub accessor
      
      * keep previous hierarchy, just expose iterator instead.
      
      * Update primitives/state-machine/src/overlayed_changes/mod.rs
      
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      
      * fix line break
      
      * missing renamings
      
      * fix import
      
      * fix new state-machine tests.
      
      * Don't expose InnerValue type.
      
      * Add test similar to set_storage.
      
      * Remove conditional offchain storage (hard to instantiate correctly).
      
      * fix
      
      * offchain as children cannot fail if top doesn't
      
      Co-authored-by: default avatarAddie Wagenknecht <[email protected]>
      Co-authored-by: default avatarTomasz Drwięga <[email protected]>
      878f7ccf
  7. Jan 21, 2021
    • Jon Häggblad's avatar
      Cleaner GRANDPA RPC API for proving finality (#7339) · 20f40fbd
      Jon Häggblad authored
      
      
      * grandpa: persist block number for last block of authority set
      
      * grandpa: fix authority_set_changes field in tests
      
      * grandpa: fix date on copyright notice
      
      * grandpa-rpc: implement cleaner api for prove finality rpc
      
      * grandpa-rpc: replace the old prove_finality with the new one
      
      * grandpa: undo accidental whitespace change
      
      * grandpa-rpc: start work on redo of the finality_proof RPC API
      
      * grandpa: manual impl of Decode for AuthoritySet
      
      * grandpa: add comment about appending changes for forced changes
      
      * grandpa: flip order in set changes, tidy up some comments
      
      * grandpa: update some of the doc comments
      
      * grandpa: store authority set changes when applying forced changes
      
      * grandpa: simplify finality_proof.rs
      
      * grandpa: move checks and extend tests in finality_proof
      
      * grandpa: address first set of review comments
      
      * grandpa: check that set changes have well-defined start
      
      * grandpa: rework prove_finality and assocated tests
      
      * grandpa: make AuthoritySetChanges tuple struct
      
      * grandpa: add assertions for tracking auth set changes
      
      * grandpa: remove StorageAndProofProvider trait
      
      * grandpa: return more informative results for unexpected input to RPC
      
      * grandpa: tiny tweak to error msg
      
      * grandpa: fix tests
      
      * grandpa: add error specific to finality_proof
      
      * grandpa: fix review comments
      
      * grandpa: proper migration to new AuthoritySet
      
      * grandpa: fix long lines
      
      * grandpa: fix unused warning after merge
      
      Co-authored-by: default avatarAndré Silva <[email protected]>
      20f40fbd
    • Ashley's avatar
      Grandpa warp sync request-response protocol (#7711) · 87cc2167
      Ashley authored
      
      
      * Made a start
      
      * So the proof between authority set is phragmen one, this is crazy big,
      or is there some signing of the result : that is the storage key, damn?
      
      * ok getting from header digest seems doable.
      
      * for testing
      
      * get set id from storage directly (should use runtime to handler change).
      
      * move test to init
      
      * correct auth key
      
      * fix iteration
      
      * Correct proof content
      
      * actually update block number.
      
      * actually check last justif against its header
      
      * justification relation to new authorities through header hash check is
      needed here. This assumes the hash from header is calculated.
      
      * Few changes
      
      * Connected up cheme's branch
      
      * Clean up
      
      * Move things around a bit so that adding the grandpa warp sync request response protocol happens in the node code
      
      * Nits
      
      * Changes to comments
      
      * Cheme changes
      
      * Remove todos and test compile.
      
      * Rename _authority_ related proof function to _warp_sync_ .
      
      * Update client/grandpa-warp-sync/src/lib.rs
      
      quick fix
      
      * Put the warp sync request response protocol behind a feature flag because we dont' need it on a light client.
      
      * Update client/grandpa-warp-sync/src/lib.rs
      
      Quick fix
      
      * Update Cargo.lock
      
      * Adding test, comment on limitation related to 'delay', this could
      be implemented but with a cost.
      
      * Set between a delay override last fragment.
      
      * Check for pending authority set change at start.
      
      * adjust index
      
      * custom cache is not a good idea.
      
      * Use a simple cache instead.
      
      * restore broken indentation
      
      * Address crate rename
      
      * Merge conflict badly resolved, sorry
      
      Co-authored-by: default avatarcheme <[email protected]>
      Co-authored-by: default avatarPierre Krieger <[email protected]>
      87cc2167
    • Bastian Köcher's avatar
      Make offchain indexing work (#7940) · cd0ad480
      Bastian Köcher authored
      
      
      * Make offchain indexing work
      
      This fixes some bugs with offchain indexing to make it actually working ;)
      
      * Fix tests
      
      * Fix browser build
      
      * Update client/db/src/offchain.rs
      
      Co-authored-by: default avatarcheme <[email protected]>
      
      * Remove seperation between prefix and key
      
      Co-authored-by: default avatarcheme <[email protected]>
      cd0ad480
    • Benjamin Kampmann's avatar
      Minor contributor docs update (#7948) · a3a9e766
      Benjamin Kampmann authored
      - Fixing Link
      - Clarify that no-force-push applies to Pull Requests, too.
      a3a9e766
    • Kian Paimani's avatar
      Attempt to remove the `where` bounds in arithmetic. (#7933) · 0dd8cd62
      Kian Paimani authored
      * Attempt to remove the where bounds.
      
      * Fix further and further.
      
      * Format better.
      
      * Update primitives/npos-elections/src/lib.rs
      
      * fix build
      
      * remove unused
      0dd8cd62
    • Max Inden's avatar
      .maintain: Replace sentry-node with local-docker-test-network (#7943) · 9031c351
      Max Inden authored
      Sentry nodes are deprecated. Thus there is no need for
      `.maintain/sentry-node` to spin up a sentry node test environment.
      Instead this commit rewrites the setup to contain two full-connected
      validators and one light client.
      
      With the steps below one can now spin up a local test network with
      two validators, one light-client, Prometheus and Grafana.
      
      - cargo build --release
      - sudo docker-compose -f .maintain/local-docker-test-network/docker-compose.yml up
      9031c351
  8. Jan 20, 2021
    • Kian Paimani's avatar
      Fix elections-phragmen and proxy issue (#7040) · e8307b7b
      Kian Paimani authored
      * Fix elections-phragmen and proxy issue
      
      * remove TODO
      
      * Update bond to be per-vote
      
      * Update frame/elections-phragmen/src/lib.rs
      
      * Fix benchmakrs
      
      * Fix weight as well.
      
      * Add license
      
      * Make weight interpreted wasm! 🤦🏻
      
      ‍♂️
      
      * Remove a bunch of TODOs
      
      * Add migration
      
      * Better storage version.
      
      * Functionify.
      
      * Fix deposit scheme.
      
      * remove legacy bond.
      
      * Master.into()
      
      * better logging.
      
      * Fix benchmarking test
      
      * Fix confused deposit collection.
      
      * Add fine
      
      * Better name for storage item
      
      * Fix name again.
      
      * remove unused
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_elections_phragmen
      
      * new weight fns
      
      * Fix build
      
      * Fix line width
      
      * fix benchmakrs
      
      * fix warning
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_elections_phragmen
      
      * Tune the stake again
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_elections_phragmen
      
      * All tests work again.
      
      * A large number of fixes.
      
      * more fixes.
      
      * Fix node build
      
      * Some fixes to benchmarks
      
      * Fix some warnings.
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_elections_phragmen --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/elections-phragmen/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_elections_phragmen --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/elections-phragmen/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * a batch of review comments.
      
      * Fix a test.
      
      * Fix some more tests.
      
      * do migration with pallet version???
      
      * Final touches.
      
      * Remove unused storage.
      
      * another rounds of changes and fixes.
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Update frame/elections-phragmen/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Review grumbles.
      
      * Fix a bit more.
      
      * Fix build
      
      * Experimental: independent migration.
      
      * WIP: isolated migration logics
      
      * clean up.
      
      * make migration struct private and move migration to own file
      
      * add doc
      
      * fix StorageInstance new syntax
      
      * Update frame/elections-phragmen/src/migrations_3_0_0.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * another round of self-review.
      
      * bit better formatting
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_elections_phragmen --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/elections-phragmen/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Fix tests.
      
      * Round of self-review
      
      * Clean migrations
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_elections_phragmen --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/elections-phragmen/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Revert unwanted change to construct-runtime
      
      Co-authored-by: default avatarGavin Wood <[email protected]>
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      e8307b7b
    • Gavin Wood's avatar
      Allow validators to block and kick their nominator set. (#7930) · fb5f945a
      Gavin Wood authored
      
      
      * Allow validators to block and kick their nominator set.
      
      * migration
      
      * Test
      
      * Better migration
      
      * Fixes
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Update frame/staking/src/lib.rs
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      fb5f945a
    • Cecile Tonglet's avatar
      Telemetry per node (#7463) · 970cc25c
      Cecile Tonglet authored
      970cc25c
    • Andrew Jones's avatar
      Migrate frame-system to pallet attribute macro (#7898) · 71ef82af
      Andrew Jones authored
      
      
      * PRINT_PALLET_UPGRADE=1 cargo check -p frame-system
      
      * Copy attributes, imports, mods and type defs
      
      * Copy Config trait
      
      * Annotate constants
      
      * Tabify
      
      * Migrate hooks
      
      * Upgrade template rename interface to hooks
      
      * Migrate pallet call
      
      * Migrate Event
      
      * Migrate Error
      
      * Migrate Origin
      
      * Remove optional validate_unsigned
      
      * Remove remaining TODO_MAYBE_WHERE_CLAUSE
      
      * Overwrite original lib.rs with migrated lib2.rs.
      
      * Add required Event IsType constraint
      
      * Add disable supertrait check
      
      * Fix leftover Trait trait
      
      * Add missing pallet prefix for weight attributes
      
      * Add missing Error type parameter
      
      * Add missing Hooks type parameter
      
      * Private call visibility, restore original helper types and helpers etc
      
      * Fix hooks type parameter
      
      * Rename RawEvent to Event
      
      * Add missing storage type annotations
      
      * Remove unused imports
      
      * Add GenesisConfig helpers for compat
      
      * Fix unused import warnings
      
      * Update frame/support/procedural/src/storage/print_pallet_upgrade.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Fix test errors and warnings
      
      * Fix remaining errors and warnings
      
      * Apply review suggestion: fix formatting
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Apply review suggestion: annotate BlockLength as constant
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Apply review suggestion: add triling comma
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Apply review suggestion: add triling comma
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Apply review suggestion: add trailing comma
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Apply review suggestion: fix storage type indentation
      
      * Apply review suggestion: remove redundant Origin type alias
      
      * Add missing codec derives for BlockLength
      
      * Restore module docs
      
      * Module -> Pallet renamel
      
      * Revert "Update frame/support/procedural/src/storage/print_pallet_upgrade.rs"
      
      This reverts commit d2a2d5b6
      
      * Apply review suggestion: merge crate imports
      
      Co-authored-by: default avatarAlexander Theißen <[email protected]>
      
      * Revert "Upgrade template rename interface to hooks"
      
      This reverts commit 306f0239
      
      * Single line import
      
      * Refactor generated genesis build
      
      * Import sp_io::storage
      
      * Revert previous, fully qualify sp_io::storage
      
      * Fix ui tests
      
      * Fix errors after merge, missing changes
      
      * Set UpgradedToDualRefCount to true in genesis build
      
      * Annotated Runtime version with constant, exposing it via metadata
      
      * Add metadata attribute
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarAlexander Theißen <[email protected]>
      71ef82af
    • Pierre Krieger's avatar
      Disable Nagle algorithm (#7932) · 9d6b9684
      Pierre Krieger authored
      * Disable Nagle algorithm
      
      * Oops, didn't compile
      9d6b9684
  9. Jan 19, 2021
    • Bastian Köcher's avatar
      Sync: Propagate block announcement data (#7903) · 450b96c5
      Bastian Köcher authored
      * Sync: Propagate block announcement data
      
      This pr adds a feature to the sync protocol to propagate the data that
      we received alongside a block announcement. This is done by adding a
      cache that caches the last X block announcement data where X is set to
      the number of `in_peers` (giving every peer the chance to send us a
      different block). This will be required by parachains to ensure that
      even peers who are not connected to a collator receive the data
      alongside the block announcement to properly validate it and request the
      block.
      
      * Review comment
      
      * Bring back the code and add new variant to ensure we don't insert block
      announce data when something wasn't checked
      
      * Also use out_peers
      450b96c5
    • Pierre Krieger's avatar
    • Shawn Tabrizi's avatar
      Freeze Assets and Asset Metadata (#7346) · 748bdf65
      Shawn Tabrizi authored
      
      
      * Features needed for reserve-backed stablecoins
      
      * Builds & tests.
      
      * Double map for an efficient destroy.
      
      * Update frame/assets/src/lib.rs
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      
      * ED/zombie-count/refs
      
      Feature: ED/minimum balance enforcement
      Feature: enforce zombie count
      Feature: allow system-alive accounts to exist, but add reference
      
      * Update frame/assets/src/lib.rs
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      
      * Update frame/assets/Cargo.toml
      
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      
      * Docs
      
      * Some tests
      
      * More tests
      
      * Allow for max_zombies to be adjusted
      
      * Test for set_max_zombies
      
      * Tests and a couple of fixes
      
      * First few benchmarks
      
      * Benchmarks.
      
      * Fix error message in test
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_assets
      
      * Update frame/assets/src/lib.rs
      
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_assets
      
      * Fixes
      
      * Update default weight
      
      * Add proper verification to benchmarks
      
      * minor improvements to tests
      
      * Add `freeze_asset` and `thaw_asset`
      
      * Add metadata
      
      * fix build
      
      * Update benchmarks
      
      * fix line width
      
      * cargo run --release --features runtime-benchmarks --manifest-path bin/node/cli/Cargo.toml -- benchmark --chain dev --steps 50 --repeat 20 --extrinsic * --execution=wasm --wasm-execution=compiled --output ./bin/node/runtime/src/weights --header ./HEADER --pallet pallet_assets
      
      * update default weights
      
      * destroy cleans up metadata
      
      * more comprehensive lifecycle test
      
      * update docs
      
      * Update frame/assets/src/benchmarking.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Fix
      
      * New weights system
      
      * fix compile
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * fix compile
      
      * fix up
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * fixes to pallet compile
      
      * fix node build
      
      * remote diff artifacts
      
      * less diff
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      * Update frame/assets/src/lib.rs
      
      * Update frame/assets/src/lib.rs
      
      * usize to u32
      
      * missed some usize
      
      * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_assets --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/assets/src/weights.rs --template=./.maintain/frame-weight-template.hbs
      
      Co-authored-by: default avatarGav Wood <[email protected]>
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      Co-authored-by: default avatarNiklas Adolfsson <[email protected]>
      Co-authored-by: default avatarParity Benchmarking Bot <[email protected]>
      Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      748bdf65
    • Pierre Krieger's avatar
      Add explicit limits to notifications sizes and adjust yamux buffer size (#7925) · 8e045159
      Pierre Krieger authored
      * Add explicit limits to notifications sizes and adjust yamux buffer size
      
      * Docfix
      
      * Tests
      
      * Document these 10 bytes
      8e045159
  10. Jan 18, 2021