1. 02 Sep, 2021 1 commit
  2. 30 Aug, 2021 2 commits
  3. 28 Aug, 2021 2 commits
    • Keith Yeung's avatar
      Return a Result in invert_location (#3730) · 54d1cb91
      Keith Yeung authored
      * Return a Result in invert_location
      
      * Add invertible to spellcheck dictionary
      
      * Fix Some -> Ok
      54d1cb91
    • Gavin Wood's avatar
      XCM: Allow reclaim of assets dropped from holding (#3727) · 8ea76695
      Gavin Wood authored
      * XCM: Introduce AssetTrap
      
      * Revert reversions
      
      * Remove attempts at weighing and add test
      
      * Less storage use for asset trapping
      
      * Add missing file
      
      * Fixes
      
      * Fixes
      
      * Formatting
      
      * Fixes
      
      * Docs
      
      * Filter types to allow runtimes to dictate which assets/origins should be trapped
      
      * Formatting
      
      * Tests
      
      * Formatting
      
      * Fixes
      
      * Docs
      8ea76695
  4. 26 Aug, 2021 1 commit
    • Gavin Wood's avatar
      XCM v2: Scripting, Query responses, Exception handling and Error reporting (#3629) · d8d5ce28
      Gavin Wood authored
      * Intoduce XCM v2
      
      Also some minor fix for v0/v1
      
      * Minor version cleanup
      
      * Minor version cleanup
      
      * Introduce SendError for XcmSend trait to avoid cycles with having Outcome in Xcm
      
      * comment
      
      * Corrent type
      
      * Docs
      
      * Fix build
      
      * Fixes
      
      * Introduce the basic impl
      
      * Docs
      
      * Add function
      
      * Basic implementation
      
      * Weighed responses and on_report
      
      * Make XCM more script-like
      
      * Remove BuyExecution::orders
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Formatting
      
      * Initial draft and make pallet-xcm build
      
      * fix XCM tests
      
      * Formatting
      
      * Fixes
      
      * Formatting
      
      * spelling
      
      * Fixes
      
      * Fixes
      
      * spelling
      
      * tests for translation
      
      * extra fields to XCM pallet
      
      * Formatting
      
      * Fixes
      
      * spelling
      
      * first integration test
      
      * Another integration test
      
      * Formatting
      
      * fix tests
      
      * all tests
      
      * Fixes
      
      * Fixes
      
      * Formatting
      
      * Fixes
      
      * Fixes
      
      * Formatting
      
      * Bump
      
      * Remove unneeded structuring
      
      * add instruction
      
      * Fixes
      
      * spelling
      
      * Fixes
      
      * Fixes
      
      * Formatting
      
      * Fixes
      
      * Fixes
      
      * Formatting
      
      * Introduce and use VersionedResponse
      
      * Introduce versioning to dispatchables' params
      
      * Fixes
      
      * Formatting
      
      * Rest of merge
      
      * more work
      
      * Formatting
      
      * Basic logic
      
      * Fixes
      
      * Fixes
      
      * Add test
      
      * Fixes
      
      * Formatting
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Nits
      
      * Simplify
      
      * Spelling
      
      * Formatting
      
      * Return weight of unexecuted instructions in case of error as surplus
      
      * Formatting
      
      * Fixes
      
      * Test for instruction count limiting
      
      * Formatting
      
      * Docs
      d8d5ce28
  5. 23 Aug, 2021 2 commits
  6. 19 Aug, 2021 2 commits
    • Shawn Tabrizi's avatar
      Replace `()` filter with `Nothing` (#3665) · d47406b4
      Shawn Tabrizi authored
      * replace `()` filter with `Nothing`
      
      * import nothing
      
      * add nothing
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      d47406b4
    • Keith Yeung's avatar
      Use proc macros to generate conversion functions for MultiLocation (#3635) · a2a4cba4
      Keith Yeung authored
      * Use proc macros to generate conversion functions for MultiLocation
      
      * Add compile test and missing conversion cases
      
      * Add common derives for Parent and Ancestor
      
      * Generate conversion functions for MultiLocation v0 via proc macro
      
      * Add type conversion test and fix a bug
      
      * cargo fmt
      
      * Do not hardcode 8 as the number of max parents
      
      * Use map instead of for loops when generating code fragments
      
      * Spelling
      
      * cargo fmt
      
      * More mapping, less for-looping
      a2a4cba4
  7. 18 Aug, 2021 2 commits
  8. 17 Aug, 2021 2 commits
  9. 16 Aug, 2021 1 commit
  10. 13 Aug, 2021 1 commit
  11. 11 Aug, 2021 2 commits
  12. 09 Aug, 2021 3 commits
    • Keith Yeung's avatar
      Ensure MultiLocation always has a canonical representation (#3404) · 0f5e37ce
      Keith Yeung authored
      
      
      * MultiAsset TWO
      
      * Ensure MultiLocation always has a canonical representation
      
      * Remove v1 module
      
      * Draft next MultiAsset API.
      
      * Implement custom encoding/decoding scheme for MultiLocation
      
      * Properly implement IntoIterator for Junctions
      
      * Implement TryFrom<MultiLocation> for Junctions
      
      * Fix spelling mistakes
      
      * Fix tests in xcm-executor
      
      * XCM core builds
      
      * XCM Executor builds
      
      * XCM Builder builds
      
      * Fix xcm-builder tests and compilation
      
      * Make pallet-xcm compile
      
      * Use MultiLocation::default()
      
      * Make polkadot-runtime-common compile
      
      * Make rococo-runtime compile
      
      * Change return type of parent_count to u8
      
      * Change MAX_MULTILOCATION_LENGTH to 255
      
      * Make kusama-runtime compile
      
      * Fix logic in pallet-xcm
      
      * Use MultiLocation::empty()
      
      * Fix logic in location_conversion
      
      * Fix logic in origin_conversion.rs
      
      * Make westend-runtime compile
      
      * Rename prefixes and suffixes variables
      
      * Rename non_parent to interior
      
      * Rename non_parent to interior
      
      * Add test for encode/decode roundtrip and fix decode algorithm
      
      * API changes making their way throughout
      
      * Some TODOs
      
      * Further build fixes
      
      * Rename non_parent/junctions to interior
      
      * Basic compile builds
      
      * First test fixed
      
      * All executor tests fixed
      
      * Typo
      
      * Optimize subsume_assets and add test
      
      * Optimize checked_sub
      
      * XCM Builder first test fixed
      
      * Fix builder tests
      
      * Fix doc test
      
      * Make xcm-simulator compile
      
      * Make xcm-simulator-example compile
      
      * Make spellcheck happy
      
      * cargo fmt
      
      * fix some doc tests
      
      * spelling
      
      * named fields for AllOf
      
      * Fix subtle bug where Null is treated as an identifier
      
      * Add FIXME comment awaiting for const generics eval stabilization
      
      * Update xcm/src/v0/multiasset.rs
      Co-authored-by: default avatarAlexander Popiak <alexander.popiak@parity.io>
      
      * Update xcm/src/v0/multiasset.rs
      Co-authored-by: default avatarAlexander Popiak <alexander.popiak@parity.io>
      
      * Update xcm/src/v0/multiasset.rs
      Co-authored-by: default avatarAlexander Popiak <alexander.popiak@parity.io>
      
      * Update xcm/src/v0/multiasset.rs
      Co-authored-by: default avatarAlexander Popiak <alexander.popiak@parity.io>
      
      * Reformat
      
      * Move to XCM version 1
      
      * Spelling
      
      * warnings
      
      * Replace some more v0->v1s
      
      * warnings
      
      * format
      
      * Add max_assets param
      
      * building
      
      * test fixes
      
      * tests
      
      * another test
      
      * final test
      
      * Update rustdocs and add debug_assert where sensible
      
      * Revert debug_assert in const fn len()
      
      * tests
      
      * Rename Null -> Here
      
      * Introduce
      
      * More ergonomics
      
      * More ergonomics
      
      * test fix
      
      * test fixes
      
      * docs
      
      * BuyExecution includes
      
      * Fix XCM extrinsics
      
      * fmt
      
      * Make Vec<MultiAsset>/MultiAssets conversions safe
      
      * More MultiAssets conversion safety
      
      * spelling
      
      * fix doc test
      
      * Apply suggestions from code review
      Co-authored-by: default avatarAmar Singh <asinghchrony@protonmail.com>
      
      * Apply suggestions from code review
      Co-authored-by: default avatarAmar Singh <asinghchrony@protonmail.com>
      
      * fmt
      
      * Add v0, remove VersionedMultiAsset
      
      * Remove VersionedMultiLocation
      
      * Update xcm/src/v1/order.rs
      Co-authored-by: default avatarAmar Singh <asinghchrony@protonmail.com>
      
      * Update xcm/src/v1/mod.rs
      Co-authored-by: default avatarAmar Singh <asinghchrony@protonmail.com>
      
      * XCM v0 backwards compatibility
      
      * Full compatibility
      
      * fmt
      
      * Update xcm/pallet-xcm/src/lib.rs
      
      * Update xcm/src/v0/order.rs
      Co-authored-by: Shawn Tabrizi's avatarShawn Tabrizi <shawntabrizi@gmail.com>
      
      * Tweaks to versioning system
      
      * Fixes
      
      * fmt
      
      * Fix pallet-xcm tests
      
      * fix
      
      * Substitute with_parent with with_parents_const
      
      * Rename argument name from a to m
      
      * Rename split_last to split_last_interior
      
      * Allow adding multiple parents in MultiLocation
      
      * Rename pop_parent to dec_parent
      
      * Ensure relay chain XCM sender receives a MultiLocation without any parents
      
      * Block only when MultiLocation destination length is 8
      
      * Cargo fmt
      
      * Remove reverse iterators, implement DoubleEndedIterator and add tests
      
      * Fix iter_rev lifetime requirements
      
      * Cargo fmt
      
      * Add an into() method for Junctions for conciseness in const context
      
      * Ensure parent count is 0 while executing who in RelayedFrom
      
      * Appease spellchecker
      
      * Use and_then instead of repeated map_err
      
      * Remove custom codec indices for v1 Junctions
      
      * Add convenience 'contains_parents_only' method to MultiLocation
      
      * Fix merge conflict
      
      * Use more convenience methods
      
      * Remove with_parachain_interior
      
      * Prefer matching against tuple instead of using match guards
      
      * Match against tuple instead of using more match guards
      
      * Update encode/decode test for MultiLocation
      
      * Minor tweaks
      
      * Fixes
      
      * Fixes
      
      * Fixes
      
      * Fix MultiLocation
      
      * Add deprecation note for iter_rev and into_iter_rev
      
      * Update some rustdocs
      
      * cargo fmt
      
      * Fix xcm-executor unit tests
      
      * Fix compilation and unit tests in xcm-builder
      
      * cargo fmt
      
      * Fix tests in xcm-simulator-example
      
      * Publicize MultiLocation fields
      
      * Match on the MultiLocation struct directly in xcm-builder
      
      * Do not dereference undereferenceable types
      
      * Add convenience MultiLocation conversions for tuples
      
      * Use clearer import paths
      
      * Remove unused dependency
      
      * fix junction + response
      
      * Import from latest opaque xcm module
      
      * Update xcm/src/v1/mod.rs
      
      * better comment
      
      * Fix ownership transfer
      
      * Fix merge
      
      * Fix merge
      
      * cargo fmt
      
      * Fix merge
      
      * Fix merge
      
      * Fix integration test
      
      * More readable Parent syntax
      
      * cleanup
      
      * cleanup
      
      * cleanup
      
      * cleanup
      
      * cleanup
      
      * cleanup
      
      * cleanup
      
      * cleanup
      
      * cargo fmt
      
      * Fixes
      
      * Fix doc test
      Co-authored-by: default avatarGav Wood <gavin@parity.io>
      Co-authored-by: default avatarAlexander Popiak <alexander.popiak@parity.io>
      Co-authored-by: default avatarAmar Singh <asinghchrony@protonmail.com>
      Co-authored-by: Shawn Tabrizi's avatarShawn Tabrizi <shawntabrizi@gmail.com>
      0f5e37ce
    • Gavin Wood's avatar
      Minor fix to encoding for XCM v1 (#3602) · adfc160c
      Gavin Wood authored
      adfc160c
    • Shawn Tabrizi's avatar
      Fix Backwards Compatability with v0 Response (#3597) · 739b882f
      Shawn Tabrizi authored
      * fix junction + response
      
      * Update xcm/src/v1/mod.rs
      
      * better comment
      739b882f
  13. 07 Aug, 2021 3 commits
    • Gavin Wood's avatar
      Companion to #9514 (Remove Filter and use Contains instead) (#3591) · 292ba8a7
      Gavin Wood authored
      * Remove Filter and use Contains instead
      
      * Fixes
      
      * Remove patch
      
      * Formatting
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      292ba8a7
    • Shawn Tabrizi's avatar
      Harden XCM v1 for Recursions (#3586) · 659911f6
      Shawn Tabrizi authored
      
      
      * Guard against XCM recursive bombs by setting a recursion limit
      
      * Add test and set a lower recursion limit
      
      * Use u32 instead of usize for recursion limit
      
      * Make spellcheck happy
      
      * Cargo fmt
      
      * Limit XCM decoding depth in UMP message processing
      
      * Modify test to check for recursion in BuyExecution
      
      * Update xcm/xcm-simulator/example/src/lib.rs
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      
      * Make cargo fmt happy
      
      * WIP for testing recursion limit in WASM
      
      * Revert "WIP for testing recursion limit in WASM"
      
      This reverts commit 39181b46
      
      .
      
      * Remove XCM recursion limit test
      
      * Add recursion test for XCM message execution
      
      * Set a more sensible recursion limit
      
      * Cargo fmt
      
      * Implement successful_origin for benchmarks
      
      * Set recursion limit to 8 and create integration tests directory for xcm-executor
      
      * Cargo fmt
      
      * Add runtime-benchmarks feature to test-runtime
      
      * Give up creating ConvertOriginToLocal and use EnsureXcm
      
      * Re-add ConvertOriginToLocal
      
      * Fix compilation
      
      * Update xcm/xcm-executor/src/lib.rs
      Co-authored-by: default avatarGavin Wood <gavin@parity.io>
      
      * Add decoding limit to all versioned XCM decode calls
      
      * Fix recursion limit test
      
      * Set a lower recursion count for recursion test
      
      * move integration tests to their own folder, fix recursion check in execute_effects
      
      * Remove xcm-executor integration tests directory
      
      * fix up
      
      * Update Cargo.lock
      
      * Update runtime/parachains/src/ump.rs
      
      * use proper decode limit
      
      * fix decode depth limit
      
      * here too
      
      * Update traits.rs
      
      * fix compile
      
      * fix test
      
      * Revert `decode_all_with_depth_limit` changes in parachain.rs
      
      * Remove unused imports in parachain.rs
      Co-authored-by: Keith Yeung's avatarKeith Yeung <kungfukeith11@gmail.com>
      Co-authored-by: default avatarKian Paimani <5588131+kianenigma@users.noreply.github.com>
      Co-authored-by: default avatarBastian Köcher <info@kchr.de>
      Co-authored-by: default avatarGavin Wood <gavin@parity.io>
      659911f6
    • thiolliere's avatar
      companion: for call usage https://github.com/paritytech/substrate/pull/9418 (#3522) · b17ab4f0
      thiolliere authored
      * add test for call size
      
      * fix box arg
      
      * fix xcm variant length + increase limit a bit
      
      * fix para sudo wrapper call length
      
      * reorganize
      
      * fmt
      
      * fix tests
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      b17ab4f0
  14. 06 Aug, 2021 2 commits
  15. 05 Aug, 2021 3 commits
  16. 03 Aug, 2021 1 commit
    • Amar Singh's avatar
      Add unit tests to pallet-xcm (#3539) · 1f9ab5c6
      Amar Singh authored
      * init
      
      * reserve transfer asset unit test
      
      * happy path tests for all dispatchables and can teleport assets to self surprisingly enough
      
      * better tests
      
      * minimize mock
      
      * clean
      
      * test send xcm failure when router blocks
      
      * rm numbers to prefer variables
      
      * clean
      
      * test execute with local effects
      
      * rm local env stuff
      
      * copyrights
      
      * fix merge conflict
      
      * appease spellcheck
      
      * fmt
      
      * address review comments
      
      * clean constants
      
      * fmt
      1f9ab5c6
  17. 02 Aug, 2021 1 commit
  18. 01 Aug, 2021 1 commit
    • Shaun W's avatar
      XCM simulator (#3538) · 4b2bd54a
      Shaun W authored
      * Add xcm-simulator and xcm-simulator-example.
      
      * Abstract xcmp and dmp handling.
      
      * Use mock message queue.
      
      * Xcm simulator example unit tests.
      
      * Use relay chain block number on sending msg.
      
      * Fix typo.
      
      * fmt
      
      * more fmt
      
      * Fix deps.
      4b2bd54a
  19. 26 Jul, 2021 1 commit
  20. 14 Jul, 2021 1 commit
    • Denis_P's avatar
      WIP: CI: add spellcheck (#3421) · 8a6af441
      Denis_P authored
      
      
      * CI: add spellcheck
      
      * revert me
      
      * CI: explicit command for spellchecker
      
      * spellcheck: edit misspells
      
      * CI: run spellcheck on diff
      
      * spellcheck: edits
      
      * spellcheck: edit misspells
      
      * spellcheck: add rules
      
      * spellcheck: mv configs
      
      * spellcheck: more edits
      
      * spellcheck: chore
      
      * spellcheck: one more thing
      
      * spellcheck: and another one
      
      * spellcheck: seems like it doesn't get to an end
      
      * spellcheck: new words after rebase
      
      * spellcheck: new words appearing out of nowhere
      
      * chore
      
      * review edits
      
      * more review edits
      
      * more edits
      
      * wonky behavior
      
      * wonky behavior 2
      
      * wonky behavior 3
      
      * change git behavior
      
      * spellcheck: another bunch of new edits
      
      * spellcheck: new words are koming out of nowhere
      
      * CI: finding the master
      
      * CI: fetching master implicitly
      
      * CI: undebug
      
      * new errors
      
      * a bunch of new edits
      
      * and some more
      
      * Update node/core/approval-voting/src/approval_db/v1/mod.rs
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      * Update xcm/xcm-executor/src/assets.rs
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      * Apply suggestions from code review
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      * Suggestions from the code review
      
      * CI: scan only changed files
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      8a6af441
  21. 05 Jul, 2021 2 commits
  22. 02 Jul, 2021 1 commit
  23. 01 Jul, 2021 1 commit
  24. 25 Jun, 2021 1 commit
  25. 21 Jun, 2021 1 commit