Skip to content
  1. Oct 15, 2021
  2. Oct 14, 2021
  3. Oct 13, 2021
  4. Oct 12, 2021
  5. Oct 06, 2021
    • dependabot[bot]'s avatar
      Bump syn from 1.0.78 to 1.0.80 (#4025) · 57125623
      dependabot[bot] authored
      
      
      Bumps [syn](https://github.com/dtolnay/syn) from 1.0.78 to 1.0.80.
      - [Release notes](https://github.com/dtolnay/syn/releases)
      - [Commits](https://github.com/dtolnay/syn/compare/1.0.78...1.0.80)
      
      ---
      updated-dependencies:
      - dependency-name: syn
        dependency-type: direct:production
        update-type: version-update:semver-patch
      ...
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      57125623
    • Zeke Mostov's avatar
      Add benchmarking to rococo; Remove weights from runtime_parachains (#3914) · dc38cf89
      Zeke Mostov authored
      
      
      * Add benchmarking to rococo; Remove weights from runtime_parachains
      
      * 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 --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs --header=./file_header.txt
      
      * Impl TestWeightInfo for Paras and Configuration
      
      * fmt
      
      * cargo run --quiet --release --features runtime-benchmarks -- benchmark --chain=rococo-dev --steps=50 --repeat=20 --pallet=runtime_parachains::configuration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./runtime/rococo/src/weights/runtime_parachains_configuration.rs --header=./file_header.txt
      
      * Fix CI complaint: error: unused variable: `c`
      
      * polkadot-runtime-common & polkadot-test-runtime compile
      
      * xcm-simulator compile
      
      * change TestWeightInfo to max_block
      
      * 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 --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs --header=./file_header.txt
      
      * ordering
      
      * 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 --output=./runtime/rococo/src/weights/runtime_parachains_paras.rs --header=./file_header.txt
      
      * Replace max_block with Weight::MAX
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      dc38cf89
  6. Oct 05, 2021
  7. Oct 04, 2021
  8. Oct 01, 2021
  9. Sep 30, 2021
  10. Sep 29, 2021
    • Keith Yeung's avatar
      Make most XCM APIs accept an Into<MultiLocation> where MultiLocation is accepted (#3627) · 819849f0
      Keith Yeung authored
      * Change send_xcm MultiLocation argument to be generic
      
      * Change pallet_xcm::send_xcm MultiLocation and Junctions argument to be generic
      
      * Change convert_origin MultiLocation argument to be generic
      
      * Change OnResponse MultiLocation arguments to be generic
      
      * Change UniversalWeigher MultiLocation argumente to be generic
      
      * Change ExecuteXcm MultiLocation argument to be generic
      
      * Remove usages of into for the MultiLocation argument in execute_xcm
      
      * Make use of generic MultiLocation arguments in rustdocs
      
      * Cargo fmt
      
      * Remove unused import in tests
      
      * Resolve conflicts
      
      * cargo fmt
      
      * Appease spellcheck
      
      * impl Into<MultiLocation> in more places
      819849f0
    • Bernhard Schuster's avatar
      remove `AllSubsystems` and `AllSubsystemsGen` types (#3874) · c57a1e79
      Bernhard Schuster authored
      
      
      * introduce the OverseerConnector, use it
      
      * introduce is_relay_chain to RelayChainSelection
      
      * Update node/service/src/lib.rs
      
      Co-authored-by: default avatarAndronik Ordian <[email protected]>
      
      * avoid the deferred setting of `is_relay_chain` in `RelayChainSelection`
      
      * positive assertion is not mandated, only the negative one, to avoid a stall
      
      * cleanup: overseer residue
      
      * spellcheck
      
      * fixin
      
      * groundwork to obsolete Overseer::new and AllSubsystemsGen proc-macro
      
      * Now all malus & tests can be ported to the builder pattern.
      
      Obsoletes `Overseer::new`, `AllSubsystemsGen` derive macro, `AllSubsystems`.
      
      * spellcheck
      
      * adjust tests, minor fixes
      
      * remove derive macro AllSubsystemsGen
      
      * add forgotten file dummy.rs
      
      * remove residue
      
      * good news everyone!
      
      * spellcheck
      
      * address review comments
      
      * fixup imports
      
      * make it conditional
      
      * fixup docs
      
      * reduce import
      
      * chore: fmt
      
      * chore: fmt
      
      * chore: spellcheck / nlprules
      
      * fixup malus variant-a
      
      * fmt
      
      * fix
      
      * fixins
      
      * pfmt
      
      * fixins
      
      * chore: fmt
      
      * remove expanded overseer generation
      
      * tracing version
      
      * Update node/network/statement-distribution/src/lib.rs
      
      Co-authored-by: default avatarRobert Habermeier <[email protected]>
      
      * use future::ready instead
      
      * silence warning
      
      * chore: fmt
      
      Co-authored-by: default avatarAndronik Ordian <[email protected]>
      Co-authored-by: default avatarRobert Habermeier <[email protected]>
      c57a1e79
    • dependabot[bot]'s avatar
      Bump parity-scale-codec from 2.3.0 to 2.3.1 (#3959) · c0719034
      dependabot[bot] authored
      
      
      Bumps [parity-scale-codec](https://github.com/paritytech/parity-scale-codec) from 2.3.0 to 2.3.1.
      - [Release notes](https://github.com/paritytech/parity-scale-codec/releases)
      - [Changelog](https://github.com/paritytech/parity-scale-codec/blob/master/CHANGELOG.md)
      - [Commits](https://github.com/paritytech/parity-scale-codec/compare/parity-scale-codec-v2.3.0...parity-scale-codec-v2.3.1)
      
      ---
      updated-dependencies:
      - dependency-name: parity-scale-codec
        dependency-type: direct:production
        update-type: version-update:semver-patch
      ...
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      c0719034
  11. Sep 27, 2021
    • Shawn Tabrizi's avatar
      XCM Benchmarks for Asset Transactor w/ Fungible Asset (#3818) · 7c8804c0
      Shawn Tabrizi authored
      
      
      * benchmarks for fungibles
      
      * add benchmark to westend
      
      * fix hex
      
      * clean up a bit
      
      * update code doc
      
      * fix warnings
      
      * cargo run --quiet --release --features runtime-benchmarks -- benchmark --chain=westend-dev --pallet=pallet_xcm_benchmarks::fungible --extrinsic=* --steps=10 --repeat=10 --template=./xcm/pallet-xcm-benchmarks/template.hbs --output=./ --execution=wasm --wasm-execution=compiled
      
      * use skip
      
      * fix spelling
      
      * Update Cargo.lock
      
      * add scale-info
      
      * Update Cargo.lock
      
      * update bench
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=pallet_xcm_benchmarks::fungible --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_fungible.rs
      
      * weights compile
      
      * update westend to use weights
      
      * fmt
      
      * spelling fixes
      
      * Delete pallet_xcm_benchmarks::fungible.rs
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * fix code review
      
      * update weight
      
      * fix report_error
      
      * fix spell check
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      7c8804c0
  12. Sep 25, 2021
  13. Sep 23, 2021
  14. Sep 18, 2021
    • Keith Yeung's avatar
      Add benchmarking for parachain runtime configuration pallet (#3862) · 706f1425
      Keith Yeung authored
      
      
      * Add benchmarking for parachain runtime configuration pallet
      
      * cargo fmt
      
      * Add WeightInfo trait
      
      * Specify missing WeightInfo associated type in mocks
      
      * Fix typo
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::configuration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_configuration.rs
      
      * Fix compilation errors
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::configuration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_configuration.rs
      
      * Condense the number of WeightInfo methods
      
      * Fixes
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::configuration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_configuration.rs
      
      * Make use of weights generated from kusama benchmarking
      
      * Use a better dispatch function for weighing set_config_with_block_number
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=kusama-dev --steps=50 --repeat=20 --pallet=runtime_parachains::configuration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/kusama/src/weights/runtime_parachains_configuration.rs
      
      * cargo run --quiet --release --features=runtime-benchmarks -- benchmark --chain=westend-dev --steps=50 --repeat=20 --pallet=runtime_parachains::configuration --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --header=./file_header.txt --output=./runtime/westend/src/weights/runtime_parachains_configuration.rs
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      706f1425
  15. Sep 15, 2021
    • Shawn Tabrizi's avatar
      add type info derive to senderror (#3860) · 6fa18a23
      Shawn Tabrizi authored
      6fa18a23
    • Andrew Jones's avatar
      Companion for #8615: enrich metadata with type information (#3336) · 4c7539ca
      Andrew Jones authored
      
      
      * Use beefy branch with scale-info
      
      * Add patches
      
      * Sprinkle some TypeInfo derives
      
      * Add some TypeInfo deriv
      
      * Cargo.lock
      
      * Derive TypeInfo and skip type params for Xcm types
      
      * Cargo.lock
      
      * Fix up scale_info bounds attributes
      
      * Fix up dependencies
      
      * Use my own beefy-primitives branch
      
      * Bump BEEFY
      
      * Update patches
      
      * Add some scale-info dependencies and TypeInfo derives
      
      * More TypeInfo decoration
      
      * Update scale-info
      
      * Some TypeInfos and remove more Event pallet::metadata
      
      * Moar TypeInfos
      
      * TypeInfos galore, fix up metadata runtime API
      
      * TypeInfo
      
      * TypeInfos, update other runtime metadata APIs
      
      * Fix up Kusama, comment out some `usize` QueueSize parameter types
      
      * Remove local diener patches
      
      * Cargo.lock
      
      * Cargo.lock
      
      * Update to scale-info crates.io release
      
      * Update primitive-types branch
      
      * Update pallet-beefy to use custom branch
      
      * Update other parity-common deps
      
      * Update parity-common patches
      
      * bump a bunch of deps in parity-common
      
      * Remove parity-common patches
      
      * Bump finality-grandpa version
      
      * Cargo.lock
      
      * Update scale-info to 0.9.1
      
      * Add recursion_limit for runtime-parachains
      
      * Add some scale_info attributes
      
      * Cargo.lock
      
      * Revert finality-grandpa bump
      
      * Cargo.lock, scale-info update
      
      * cargo update
      
      * Make sure using patched version of finality-grandpa
      
      * Use patched scale-info
      
      * Update to scale-info 0.10.0
      
      * Update finality-grandpa
      
      * Cargo.lock
      
      * Update beefy deps
      
      * Update beefy deps again
      
      * Add scale-info dependency
      
      * Remove deprecated pallet::metadata attributes.
      
      * Add some missing scale-info deps and derives
      
      * Use some variant struct call syntax
      
      * Add missing TypeInfo impl
      
      * Add some more TypeInfo impls
      
      * Convert some call enum struct variant constructors
      
      * More scale-info deps and derives
      
      * Call enum struct variants
      
      * TypeInfo derives
      
      * Call enum variant structs
      
      * scale-info deps and derives
      
      * Call enum variant struct constructors
      
      * Use beefy-primitives scale-info feature
      
      * Use grandpa-bridge-gadget master branch
      
      * Remove finality-grandpa patch
      
      * Add missing scale_info dependency and derive
      
      * Fix up some call variant constructors
      
      * Add missing scale_info dependency
      
      * Fix some test errors
      
      * More TypeInfo derives
      
      * More call variant structs
      
      * Call variant structs in tests
      
      * Cargo.lock
      
      * Fmt
      
      * Fix more call struct variants
      
      * Another call struct variant
      
      * add scale-info/std features explicitly
      
      * More call struct variants
      
      * Add missing scale-info dependency
      
      * Fmt
      
      * review: activate scale-info/std where missing
      
      * Remove some duplicate std feature activation
      
      * review: add scale_info bounds() attr
      
      * More call variant structs
      
      * Remove recursion limit
      
      * Update beefy-primitives
      
      * Update beefy-primitives
      
      * Fix simnet call variant struct errors
      
      * Fmt
      
      * cargo update -p beefy-primitives
      
      * Add some missing TypeInfo derives
      
      * Fix some call variants
      
      * Fix some call variant underscores
      
      * Cargo.lock
      
      * Cargo.lock
      
      * Add missing TypeInfo derive
      
      * Add some more missing TypeInfo derives
      
      * Even more missing TypeInfo derives
      
      * Add TypeInfo derives to new xcm types
      
      * Fmt
      
      * Cargo.lock
      
      * Add missing TypeInfo impls
      
      * Cargo.lock
      
      * More missing TypeInfos
      
      * Fixes
      
      * Cargo.lock
      
      * Cargo.lock
      
      * Add TypeInfo impls to xcm v2
      
      * Update to scale-info 1.0
      
      * Update finality-grandpa 0.14.4, patch for now
      
      * Update beefy
      
      * Remove patched finality-grandpa
      
      * Add TypeInfo impl to Outcome
      
      * Fixes
      
      * Call variant struct
      
      * Call variant struct
      
      * Fix test
      
      * Add TypeInfo impl
      
      * Cargo.lock
      
      * Cargo.lock
      
      * Cargo.lock
      
      * git checkout master Cargo.lock
      
      * update Substrate
      
      * Add missing scale-info features for beefy-primitives
      
      * Fmt
      
      * Remove check for now
      
      * Update beefy-primitives, removes scale-info feature
      
      * Update beefy-primitives again
      
      Co-authored-by: default avataradoerr <[email protected]>
      Co-authored-by: default avatarAndronik Ordian <[email protected]>
      Co-authored-by: default avatarthiolliere <[email protected]>
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      4c7539ca
    • Sergey Pepyakin's avatar
      UMP: Support Overweight messages (#3575) · 13906d62
      Sergey Pepyakin authored
      
      
      * Introduce new config: ump_max_individual_weight
      
      * Implement overweight msg stashing
      
      * Test
      
      * Add migration module.
      
      Also introduces a test for migration
      
      * Integrate ExecuteOverweightOrigin to runtimes
      
      * Fix more stuff
      
      * Add `yeet` into dictionary
      
      * Use suggested `Error` variant names
      
      * typo
      
      * Use 20ms as the maximum individual message weight
      
      * Update the test value
      
      * rustfmt
      
      * Clean up
      
      * Remove deprecated field from host config
      
      * Remove missed _hrmp_open_request_ttl
      
      * Apply typo fix suggestion
      
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      
      * Rename `migration::migrate_to_latest`
      
      * Restore `_hrmp_open_request_ttl` in `v0::HostConfiguration`
      
      * Apply suggestion for a rustdoc
      
      * Apply the suggestion
      
      * Test v0 config with the raw production data fetched from Kusama
      
      * Update runtime/parachains/src/ump.rs
      
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      
      * Expose migration functions
      
      * Fix spellcheck
      
      Co-authored-by: default avatarAlexander Popiak <[email protected]>
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      13906d62
  16. Sep 07, 2021
  17. Sep 06, 2021
  18. Sep 04, 2021
  19. Sep 02, 2021
    • Gavin Wood's avatar
      XCM: Automatic Version Negotiation (#3736) · 82ffe7dd
      Gavin Wood authored
      
      
      * XCM: Automatic Version Negotiation
      
      * Introduce the version instructions and subscription trait
      
      * Notification and subscription data migration
      
      * Version change subscriptions
      
      * Fixes
      
      * Formatting
      
      * Spelling
      
      * Fixes
      
      * Fixes
      
      * Automatic unsubscription
      
      * Formatting
      
      * Expose remote origin in VM and ensure it is unchanged from actual origin in subscription instructions.
      
      * Barrier
      
      * Unsubscription extrinsic
      
      * Remove top_level param
      
      * Formatting
      
      * Fixes
      
      * Automatic subscription
      
      * Formatting
      
      * Spelling
      
      * Unit tests for XCM executor
      
      * Formatting
      
      * Spellin
      
      * Unit test for XCM pallet subscriber side
      
      * Formatting
      
      * More tests
      
      * Formatting
      
      * Fixes
      
      * Subscription-side tests
      
      * Formatting
      
      * Unit tests for XCM pallet
      
      * Formatting
      
      * Update roadmap/implementers-guide/src/types/overseer-protocol.md
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      
      * Remove commented code
      
      * Grumbles
      
      * Multi-stage XCM version migration
      
      * Formatting
      
      * v1 subscriptions backport
      
      * Warning
      
      * Spelling
      
      * Fix grumbles
      
      * Formatting
      
      * Avoid running through old notifications
      
      * Formatting
      
      Co-authored-by: default avatarShawn Tabrizi <[email protected]>
      82ffe7dd
    • dependabot[bot]'s avatar
      Bump syn from 1.0.74 to 1.0.75 (#3710) · 1274b3df
      dependabot[bot] authored
      
      
      Bumps [syn](https://github.com/dtolnay/syn) from 1.0.74 to 1.0.75.
      - [Release notes](https://github.com/dtolnay/syn/releases)
      - [Commits](https://github.com/dtolnay/syn/compare/1.0.74...1.0.75)
      
      ---
      updated-dependencies:
      - dependency-name: syn
        dependency-type: direct:production
        update-type: version-update:semver-patch
      ...
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      1274b3df
  20. Aug 30, 2021
  21. Aug 28, 2021
    • Keith Yeung's avatar
      Return a Result in invert_location (#3730) · 64cbeab3
      Keith Yeung authored
      * Return a Result in invert_location
      
      * Add invertible to spellcheck dictionary
      
      * Fix Some -> Ok
      64cbeab3
    • Gavin Wood's avatar
      XCM: Allow reclaim of assets dropped from holding (#3727) · 636d0b03
      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
      636d0b03
  22. Aug 26, 2021
    • Gavin Wood's avatar
      XCM v2: Scripting, Query responses, Exception handling and Error reporting (#3629) · 8b80b283
      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
      8b80b283
  23. Aug 23, 2021
  24. Aug 19, 2021
    • Shawn Tabrizi's avatar
      Replace `()` filter with `Nothing` (#3665) · 4d4562f5
      Shawn Tabrizi authored
      * replace `()` filter with `Nothing`
      
      * import nothing
      
      * add nothing
      
      * update Substrate
      
      Co-authored-by: parity-processbot <>
      4d4562f5
    • Keith Yeung's avatar
      Use proc macros to generate conversion functions for MultiLocation (#3635) · 8feed6ae
      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
      8feed6ae