mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-17 06:41:02 +00:00
xcm: Change TypeInfo::path to not include staging (#1948)
The `xcm` crate was renamed to `staging-xcm` to be able to publish it to crates.io as someone as squatted `xcm`. The problem with this rename is that the `TypeInfo` includes the crate name which ultimately lands in the metadata. The metadata is consumed by downstream users like `polkadot-js` or people building on top of `polkadot-js`. These people are using the entire `path` to find the type in the type registry. Thus, their code would break as the type path would now be [`staging_xcm`, `VersionedXcm`] instead of [`xcm`, `VersionedXcm`]. This pull request fixes this by renaming the path segment `staging_xcm` to `xcm`. This requires: https://github.com/paritytech/scale-info/pull/197 --------- Co-authored-by: Francisco Aguirre <franciscoaguirreperez@gmail.com>
This commit is contained in:
@@ -181,3 +181,12 @@ fn encode_decode_versioned_xcm_v3() {
|
||||
let decoded = VersionedXcm::decode(&mut &encoded[..]).unwrap();
|
||||
assert_eq!(xcm, decoded);
|
||||
}
|
||||
|
||||
// With the renaming of the crate to `staging-xcm` the naming in the metadata changed as well and
|
||||
// this broke downstream users. This test ensures that the name in the metadata isn't changed.
|
||||
#[test]
|
||||
fn ensure_type_info_is_correct() {
|
||||
let type_info = VersionedXcm::<()>::type_info();
|
||||
|
||||
assert_eq!(type_info.path.segments, vec!["xcm", "VersionedXcm"]);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user