Skip to content
  1. May 12, 2022
  2. May 04, 2022
  3. Apr 27, 2022
  4. Apr 26, 2022
  5. Apr 13, 2022
  6. Apr 12, 2022
    • Tsvetomir Dimitrov's avatar
      Add staging runtime api (#5048) · fd020c07
      Tsvetomir Dimitrov authored
      * Move `trait ParachainHost` to a separate version independent module
      
      `trait ParachainHost` is no longer part of a specific primitives
      version. Instead there is a single trait for stable and staging api
      versions. The trait contains stable AND staging methods. The latter are
      explicitly marked as unstable.
      
      * Fix `use` primitives
      
      `polkadot_primitives::v2` becomes `polkadot_primitives::runtime_api`
      
      * Staging API declaration and stubs
      
      Introduces the concept for 'staging functions' in runtime API. These
      functions are still in testing and they are meant to be used only
      within test networks (Westend).
      They coexist with the stable calls for technical reasons - maintaining
      different runtime APIs for different networks is hard to implement.
      
      Check the doc comments in source files for more details how the staging
      API should be used.
      
      * Add new staging method - get_session_disputes()
      
      Add `staging_get_session_disputes` to `ParachainHost` as the first
      method of the staging API.
      
      * Hide vstaging runtime api implementations  behind feature flag
      
      * Fix test runtime
      
      * fn staging_get_session_disputes() is renamed to fn staging_get_disputes()
      fd020c07
  7. Apr 08, 2022
  8. Apr 07, 2022
  9. Apr 01, 2022
  10. Mar 22, 2022
    • Bruno Galvao's avatar
      add weights that need to be generated for rococo (#5052) · f8b979b7
      Bruno Galvao authored
      
      
      * add weights that need to be generated for rococo
      
      * remove frame_system
      
      * touch balances weight file
      
      * add empty im-online weight file
      
      * add empty pallet indices weight file
      
      * add empty pallet multisig weight file
      
      * add empty pallet proxy weight file
      
      * add empty pallet session weight file
      
      * add empty pallet timestamp weight file
      
      * add empty pallet utility weight file
      
      * add empty para pallets weight files
      
      * remove utility for now
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-balances --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-im-online --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-multisig --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-proxy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-timestamp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_common::auctions --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_common_auctions.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-indices --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_common::paras_registrar --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_common_paras_registrar.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_common::slots --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_common_slots.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::configuration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_configuration.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_hrmp.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::initializer --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_initializer.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * update ump for weights sink_process_upward_message -> process_upward_message (#5103)
      
      * update ump for weights sink_process_upward_message -> process_upward_message
      
      * update autogen files
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::disputes --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_disputes.rs
      
      * add frame_system weights for Rococo
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=frame_system --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * add pallet-utility runtime benchmarks
      
      * add utility benchmark
      
      * add utility pallet
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=pallet-utility --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/
      
      * fix cargo format issues
      
      * add pallet_session weights
      
      - since pallet session benchmarking is coupled with pallet staking, for the time being we will use the weights from westend
      
      https://github.com/paritytech/polkadot/pull/5052#issuecomment-1072903719
      
      * remove newline
      
      * use some of the new weights
      
      * add pallet-utility/std
      
      * add collective and membership benchmarks
      
      * add WeightInfo
      
      * copy weights from Polkadot for now, needs to be updated with relevant weights
      
      * add weights
      
      * copy weights from Polkadot pallet session
      
      * remove newline
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarDan Shields <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      f8b979b7
  11. Mar 21, 2022
    • Svyatoslav Nikolsky's avatar
      Update bridges subtree (#5165) · 8e01ba9c
      Svyatoslav Nikolsky authored
      * Squashed 'bridges/' changes from 1602249f0a..f220d2fcca
      
      f220d2fcca Polkadot staging update (#1356)
      02fd3d497c fix parse_transaction on Rialto+Millau (#1360)
      bc191fd9a2 update parity-scale-codec to 3.1.2 (#1359)
      a37226e79c update chain versions (#1358)
      ff5d539fcb Update Substrate/Polkadot/Cumulus references (#1353)
      1581f60cd5 Support dedicated lanes for pallets (#962)
      0a7ccf5c57 ignore more "increase" alerts that are sometimes signalling NoData at startup (#1351)
      31165127cc added no_stack_overflow_when_decoding_nested_call_during_dispatch test (#1349)
      7000619eb8 replace From<>InboundLaneApi with direct storage reads (#1348)
      515df10ccc added alerts for relay balances (#1347)
      b56f6a87de Mortal conversion rate updater transactions (#1257)
      20f2f331ec edition = "2021" (#1346)
      99147d4f75 update regex to 1.5.5 (#1345)
      686191f379 use DecodeLimit when decoding incoming calls (#1344)
      a70c276006 get rid of '[No Data] Messages from Millau to Rialto are not being delivered' warnings (#1342)
      01f29b8ac1 fix conversion rate metric in dashboards (#1341)
      51c3bf351f Increase rate from metric when estimating fee (#1340)
      3bb9c4f68f fix generator scripts to be consistent with updatedrelay output (#1339)
      0475a1667b fixed mess with conversion rates (#1338)
      d8fdd7d716 synchronize relay cli changes and token swap generator script (#1337)
      6e928137a5 fix conversion rate override in token swap (#1336)
      62d4a4811d override conversion rate in tokens swap generator (#1335)
      ed9e1c839c fi typo in generator script (#1334)
      3254b5af7a Override conversion rate when computing message fee (#1261)
      66df68b5b8 Revert "Revert "override conversion rate in estimate-message-fee RPC (#1189)" (#1275)" (#1333)
      0ca6fc6ef8 fix clippy issues (#1332)
      5414b2fffb Reinitialize bridge relay subcommand (#1331)
      a63d95ba7d removed extra *_RUNTIME_VERSION consts from relay code (#1330)
      59fb18a310 fix typo in alert expression (#1329)
      a6267a47ee Using-same-fork metric for finality and complex relay (#1327)
      88d684d37e use mortal transactions in transaction resubmitter (#1326)
      8ff88b6844 impl Decode for SignedExtensions (otherwise transaction resubmitter panicks) (#1325)
      1ed09854f0 Encode and estimate Rococo/Wococo/Kusama/Polkadot messages (#1322)
      ddb4517e13 Add some tests to check integrity of chain constants + bridge configuration (#1316)
      bdeedb7ab9 Fix issues from cargo deny (#1311)
      d3d79d01e0 expose fee multiplier metrics in messages relay (#1312)
      c8b3f0ea16 Endow relayer account at target chain in message benchmarks (#1310)
      f51ecd92b6 fix benchmarks before using it in Polkadot/Kusama/Rococo runtimes (#1309)
      6935c619ad increase relay balance guard limits for Polkadot<>Kusama bridge (#1308)
      7e31834c66 Fix mandatory headers scanning in on-demand relay (#1306)
      92ddc3ea7a Polkadot-staging update (#1305)
      3787193a31 fix session length of Rococo and Wococo (#1304)
      eb468d29c0 Revert nightly docker pin (#1301)
      e2d4c073e1 Use raw balance value if tokenDecimals property is missing (#1299)
      108f4b29d1 Fix ss58 prefixes of Polkadot, Kusama and Westend used by relay (#1298)
      64fbd2705e bump chain spec versions (#1297)
      5707777b86 Bump Substrate/Polkadot/Cumulus refs (#1295)
      29eecdf1fa Merge pull request #1294 from paritytech/polkadot-staging-update
      1f0c05368e Relay balance metrics (#1291)
      6356bb90b3 when messages pallet is halted, relay shall not submit messages delivery/confirmation transactions (#1289)
      800dc2df8d when GRANDPA pallet is halted, relay shall not submit finality transactions (#1288)
      3dd8e4f936 disable BEEFY allerts for Rialto (#1285)
      f58fed7380 support version mode cli options in send-message subcommand (#1284)
      3aac448da3 reuse polkadot-service code (#1273)
      2bdbb651e1 replace latest_confirmed_nonce runtime APIs with direct storage reads (#1282)
      5f9c6d241f move "common" code of messages pallet benchmarks helpers to the common library (#1281)
      173d2d8229 Merge pull request #1280 from paritytech/polkadot-staging-update
      8b9c4ec16d do not start spec_version guard when version mode is set to auto (#1278)
      e98d682de2 removed extra messages benchmarks (#1279)
      c730e25b61 Move benchmarks from Rialto to Millau (#1277)
      54146416e7 Merge pull request #1276 from paritytech/polkadot-staging-update
      df70118174 Merge branch 'master' into polkadot-staging-update
      ed7def64c4 Revert "override conversion rate in estimate-message-fee RPC (#1189)" (#1275)
      38c6c3a49f Use "production" floating tag when uilding docker image from version git tags (#1272)
      ded9ff6dbb Replace InboundLaneApi::latest_received_nonce with direct storage read (#1269)
      f704a741ee Polkadot staging update (#1270)
      8c65f0d7ab verify that GRANDPA pallet is not initialized before submitting initialization transaction (#1267)
      e7e83d8944 remove OutboundLaneApi::latest_received_nonce (#1262)
      9f4b34acf1 bump rococo version (#1263)
      82c08c5a87 read latest_generated_nonce directly from storage (#1260)
      50ffb5dd08 override conversion rate in estimate-message-fee RPC (#1189)
      467ca5ef59 move storage keys computation to primitivs (#1254)
      4f9884066b remporary use pinned bridges-ci image in Dockerfile (#1258)
      edfcb74e00 Change submit transaction spec_version and transaction_version query from chain (#1248)
      4009d970d0 pin bridges-ci image (#1256)
      65e51b5e1c decrease startup sleep to 5s for relays and to 120s for generators + remove curl (#1251)
      3bc74355d9 Add missing RPC APIs to rialto parachain node (#1250)
      80c9429284 Bump relay version to 1.0.0 (#1249)
      9ead06af2a runtimes: fix call_size() test (#1245)
      4fc8a29357 Use same endowed accounts set on dev/local chains (#1244)
      fed54371c2 Refactor message relay helpers (#1234)
      a15b4faae7 post-merge build fix (#1243)
      52232d8d54 Fix transactions mortality (#1196)
      c07bba931f Expose prometheus BEEFY metrics and add them to grafana dashboard (#1242)
      f927775bd5 Refactor finality relay helpers (#1220)
      7bf76f14a8 Update Rococo/Wococo version + prepare relay for Rococo<>Wococo bridge (#1241)
      e860fecd04 Enable offchain indexing for Rialto/Millau nodes (#1239)
      04d4d1c6b4 Enable Beefy debug logs in test deployment (#1237)
      cd771f1089 Fix storage parameter name computation (#1238)
      816ddd2dd2 Integrate BEEFY with Rialto & Millau runtimes (#1227)
      d94b62b1ac update dependencies (#1229)
      98eb9ee13d Add mut support (#1232)
      ffef6f89f9 fixed set_operational in GRANDPA pallet (#1226)
      bd2f8bfbd7 Add CODEOWNERS file (#1219)
      6b5cf2b591 Unify metric names (#1209)
      d1541e797e remove abandoned exchange relay (#1217)
      39140d0b34 Remove unused `relays/headers` (#1216)
      9bc071d42b Remove unused PoA<>Substrate bridge (#1210)
      877e8d01e3 Fix UI deployment. (#1211)
      6cd5775ebe Add `AtLeast32BitUnsigned` for MessageLance::SourceChainBalance (#1207)
      
      git-subtree-dir: bridges
      git-subtree-split: f220d2fccabbf141101d19456ecb4e3576a1d797
      
      * fix compilation warnings
      8e01ba9c
  12. Mar 15, 2022
  13. Mar 12, 2022
  14. Mar 11, 2022
  15. Mar 09, 2022
    • asynchronous rob's avatar
      Finish migration to v2 primitives (#5037) · 49f7e5cc
      asynchronous rob authored
      * remove v0 primitives from polkadot-primitives
      
      * first pass: remove v0
      
      * fix fallout in erasure-coding
      
      * remove v1 primitives, consolidate to v2
      
      * the great import update
      
      * update runtime_api_impl_v1 to v2 as well
      
      * guide: add `Version` request for runtime API
      
      * add version query to runtime API
      
      * reintroduce OldV1SessionInfo in a limited way
      49f7e5cc
  16. Mar 02, 2022
  17. Feb 26, 2022
    • Falco Hirschenberger's avatar
      Add benchmarking for parachain runtime `ump` pallet (#3889) · fc919376
      Falco Hirschenberger authored
      
      
      * Claim grounds, not working yet.
      
      * still wip, nothing to see
      
      * Module visibility problem
      
      * Add benchmarks for all parachain-enabled chains
      
      * Add missing mock weights
      
      * Fix mock weight info
      
      * Add max-weight to extrinsic weight
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * sorting declarations
      
      * Use a maximum size message to benchmark worst-case
      
      * remove warning
      
      * Fix msg size overflow in tests
      
      * Use benchmarked weight in PostInfo
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      
      * Delete obsolete file
      
      * Compile fix
      
      * Fix spelling
      
      * Add benchmark for `UmpSink::process_upward_message`
      
      It benchmarks the time to process a message, mainly the size-dependent
      decoding time. This is used interally for refunding weight from
      `service_overweight`
      
      * Fix warning
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_ump.rs
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Give mock weights for tests a name instead of ()
      
      * Add benchmark for `initializer_on_new_session` aka.
      `perform_outgoing_para_cleanup`
      
      * Remove unnescessary pub specifier and change folding to a for loop
      
      suggestions by @pepyakin
      
      
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Add comment on weight calculation and expected slight overestimation
      
      * Introduce a size bound constant for upward messages
      
      * Use KiB not kB for message size bound
      
      * Enforce max-message size bound
      
      * Use a const for upward message size bound.
      
      * Decrease max_upward_message_sizes to 50KiB as suggested by @pepyakin
      
      * Fix creating overweight messages
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * Remove unused variable
      
      * Rename benchmark function to the function actually benchmarked and some
      code cleanup
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_ump.rs
      
      * cargo run --quiet --profile=production  --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::ump --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_ump.rs
      
      * Better variable naming
      
      * Fix build
      
      * Fix build
      
      * Fix some remarks from @pepyakin
      
      
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avataremostov <[email protected]>
      fc919376
  18. Feb 12, 2022
    • Shawn Tabrizi's avatar
      Allow two Parachains to swap (#4772) · d5f51273
      Shawn Tabrizi authored
      
      
      * add support for parachain to parachain swap
      
      * enable swaps on kusama
      
      * sanity test in paras_registrar
      
      * express more errors
      
      * finish up tests
      
      * fmt
      
      * make fields pub
      
      * refactor integration tests to use real accounts
      
      * Update Crowdloan Account to FundIndex (#4824)
      
      * update fund account to use index
      
      * fix integration tests
      
      * Update runtime/common/src/crowdloan.rs
      
      * finish parachain swap test
      
      * format
      
      * fix warning
      
      * fix spacing
      
      * fix formatting
      
      * write migrations
      
      * add migration
      
      * fixes
      
      * more fixes to migration
      
      * Update runtime/common/src/crowdloan/mod.rs
      
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      
      * Update runtime/common/src/paras_registrar.rs
      
      * Update migration.rs
      
      * extract swap function
      
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      d5f51273
  19. Jan 21, 2022
    • Oliver Tale-Yazdi's avatar
      Use `define_benchmarks!` (#4760) · cc1201ef
      Oliver Tale-Yazdi authored
      
      
      Signed-off-by: default avatarOliver Tale-Yazdi <[email protected]>
      cc1201ef
    • Kian Paimani's avatar
      HRMP benchmarks (#3876) · 3cb2d626
      Kian Paimani authored
      
      
      * wip template for hrmp benchmarks
      
      * add all of the benchmarks, first draft
      
      * File was not saved :/
      
      * cargo +nightly fmt
      
      * Use configs
      
      * add configs
      
      * Fix rococo
      
      * Final touches
      
      * revert fmt changes, one last time
      
      * Fix wrappings
      
      * Fix a bunch of tests
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_hrmp.rs
      
      * add to westend
      
      * actually use everything
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_hrmp.rs
      
      * Update runtime/parachains/src/hrmp.rs
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * use real weight in wnd
      
      * reorg
      
      * minor cleanup
      
      * weigh some of the internal stuff as well
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_hrmp.rs
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::hrmp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_hrmp.rs
      
      * add files
      
      * Master.into()
      
      * add validation
      
      * fmt
      
      * fmt
      
      * final fixes
      
      * all runtimes build
      
      * undo formatting
      
      * Update runtime/parachains/src/hrmp.rs
      
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      
      * non-controversial changes
      
      * do it the parachain-way: use const instead of type configs for simplicity.
      
      * borrow assert_storage_consistency_exhaustive
      
      * move assert_storage_consistency_exhaustive to Pallet, so it can be reused for benchmarks as well.
      
      * fix typo
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      Co-authored-by: default avatarSergey Shulepov <[email protected]>
      Co-authored-by: default avatarZeke Mostov <[email protected]>
      3cb2d626
  20. Jan 17, 2022
  21. Jan 11, 2022
  22. Dec 28, 2021
  23. Dec 27, 2021
    • ordian's avatar
      session-info: add new fields + migration (#4545) · b342ae11
      ordian authored
      
      
      * session_info: v2 + migration
      
      * use primitives::v2
      
      * use polkadot_primitives::v2
      
      * impl primitives::v2
      
      * fix approval-voting tests
      
      * fix other tests
      
      * hook storage migration up
      
      * backwards compat (1)
      
      * backwards compat (2)
      
      * fmt
      
      * fix tests
      
      * FMT
      
      * do not reexport v1 in v2
      
      * fmt
      
      * set storage version to 1
      
      Co-authored-by: default avatarJavier Viola <[email protected]>
      b342ae11
  24. Dec 25, 2021
  25. Dec 24, 2021
    • cheme's avatar
      Companion for substrate#9732 (#4104) · 48dc6750
      cheme authored
      * merge master (do not compile)
      
      * fix
      
      * lock
      
      * update lock
      
      * Update to refactoring.
      
      * runtime version
      
      * fmt
      
      * remove trie patch
      
      * remove patch
      
      * No layout alias for bridge proof.
      
      * update depupdate depss
      
      * No switch until migration.
      
      * master lock
      
      * test
      
      * test
      
      * Revert "test"
      
      This reverts commit 57325ef73332bf4b054aa4a667bb716fcf8a0d89.
      
      * Revert "test"
      
      This reverts commit ce74d0e2062806f72c0e9e9ca07b14165f43521e.
      
      * rename feature
      
      * state version as parameter, use the feature only on runtimes.
      
      * update
      
      * update to state version in runtime
      
      * state version from storage
      
      * update lockfile for substrate
      
      Co-authored-by: parity-processbot <>
      48dc6750
  26. Dec 21, 2021
  27. Dec 16, 2021
    • Sergey Pepyakin's avatar
      pvf-precheck: Integrate PVF pre-checking into paras module (#4457) · 47810dca
      Sergey Pepyakin authored
      
      
      * pvf-precheck: Integrate PVF pre-checking into paras module
      
      Closes #4009
      
      This is the most of the runtime-side change needed for #3211.
      
      Here is how it works.
      
      The PVF pre-checking can be triggered either by an upgrade or by
      onboarding (i.e. calling `schedule_para_initialize`). The PVF
      pre-checking process is identified by the PVF code hash that is being
      voted on. If there is already PVF pre-checking process running, then no
      new PVF pre-checking process will be started. Instead, we just subscribe
      to the existing one.
      
      If there is no PVF pre-checking process running but the PVF code hash
      was already saved in the storage, that necessarily means (I invite the
      reviewers to double-check this invariant) that the PVF already passed
      pre-checking. This is equivalent to instant approving of the PVF.
      
      The pre-checking process can be concluded either by obtaining a
      supermajority or if it expires.
      
      Each validator checks the list of PVFs available for voting. The vote is
      binary, i.e. accept or reject a given PVF. As soon as the supermajority
      of votes are collected for one of the sides of the vote, the voting is
      concluded in that direction and the effects of the voting are enacted.
      
      Only validators from the active set can participate in the vote. The set
      of active validators can change each session. That's why we reset the
      votes each session. A voting that observed a certain number of sessions
      will be rejected.
      
      The effects of the PVF accepting depend on the operations requested it:
      
      1. All onboardings subscribed to the approved PVF pre-checking process will
      get scheduled and after passing 2 session boundaries they will be onboarded.
      2. All upgrades subscribed to the approved PVF pre-checking process will
      get scheduled very similarly to the existing process. Upgrades with
      pre-checking are really the same process that is just delayed by the
      time required for pre-checking voting. In case of instant approval the
      mechanism is exactly the same. This is important from parachains
      compatibility standpoint since following the delayed upgrade requires
      the parachain to implement
      https://github.com/paritytech/cumulus/pull/517.
      
      In case, PVF pre-checking process was concluded with rejection, then all
      the requesting operations get cancelled. For onboarding it means it gets
      without movement: the lifecycle of such parachain is terminated on the
      `Onboarding` state and after rejection the lifecycle is none. That in
      turn means that the caller can attempt registering the parachain once
      more. For upgrading it means that the upgrade process is aborted: that
      flashes go-ahead signal with `Abort` flag.
      
      Rejection leads to removing the allegedly bad validation code from the
      chain storage. Among other things, this implies that the operation can
      be re-requested. That allows for retrying an operation in case there was
      some bug. At the same time it does not look as a DoS vector due to the
      caching performed by the nodes.
      
      PVF pre-checking can be enabled and disabled. Initially, according to
      the changes in #4420, this mechanism is disabled. Triggering the PVF
      pre-checking when it is disabled just means that we insta approve the
      requesting operation. This should lead to the behavior being unchanged.
      
      Follow-ups:
      
      - expose runtime APIs
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=polkadot-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/polkadot/src/weights/runtime_parachains_paras.rs
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_paras.rs
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_paras.rs
      
      * cargo run --quiet --release --features runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::paras --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs
      
      * Review fixes
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      47810dca
  28. Dec 15, 2021
  29. Dec 12, 2021
  30. Dec 11, 2021
  31. Dec 09, 2021
  32. Dec 07, 2021
  33. Dec 03, 2021
  34. Dec 02, 2021
    • Steve Degosserie's avatar
      Rococo: ability to programatically assign slots to teams (#3943) · b3d08c0a
      Steve Degosserie authored
      
      
      * Permanent & Temp parachain slots on Rococo - WIP
      
      * Revert test change
      
      * Revert test change
      
      * Fix formatting
      
      * Extract logic to separate assigned_slots pallet
      
      * Formatting
      
      * Parachain downgrade logic
      
      * Pallet doc comment
      
      * Revert unnecessary changes
      
      * Fix few issues, tweak temp slots allocation logic; add a bunch of tests
      
      * Address review comments; track active temp slots
      
      * Update runtime/common/src/assigned_slots.rs
      
      * Update runtime/common/src/assigned_slots.rs
      
      * Remove assigned_slots calls from paras_sudo_wrapper
      
      * Unassign is a perfectly valid verb
      
      * Remove unneeded collect
      
      * Update code following #3980
      
      * Cleanup
      
      * Generate storage info for pallet
      
      * Address review comments
      
      * Add ForceOrigin to slots pallet
      
      * Track permanent slot duration in storage
      
      * Fix tests build
      
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      b3d08c0a
  35. Dec 01, 2021
    • Shawn Tabrizi's avatar
      XCM Benchmarks for Generic Instructions (#3940) · bf5808eb
      Shawn Tabrizi authored
      
      
      * initial stuff
      
      * quick fixes
      
      * move to individual tests
      
      * dont need these
      
      * Update benchmarking.rs
      
      * add to westend
      
      * make benchmarks execute
      
      * fix compile
      
      * add post_execute
      
      * ClaimAsset benchmark working
      
      * subscribe and unsubscribe benchmarks
      
      * benchmark for initiate reserve withdraw
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
      
      * fix spell check
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
      
      * update worst case for query_holding
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
      
      * move verification logic below
      
      * introduce worst case holding to initiate reserve withdraw
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
      
      * feedback
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
      
      * Revert "cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs"
      
      This reverts commit 277903944be620dc57d83b9bcf3b462d2fb73ab5.
      
      * fix benchmark template
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
      
      * use response::version
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
      
      * refactor worst case holding
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::generic --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./runtime/westend/src/weights/xcm/pallet_xcm_benchmarks_generic.rs
      
      * fmt
      
      * one more todo needs to be labeled
      
      * change option to result with benchmark error
      
      * fmt and fix import
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      bf5808eb