Skip to content

Commit 5b7436b

Browse files
paritytech-release-backport-bot[bot]carlosalagithub-actions[bot]bkchr
authored
[stable2506] Backport #10592 (#10624)
Backport #10592 into `stable2506` from carlosala. See the [documentation](https://github.com/paritytech/polkadot-sdk/blob/master/docs/BACKPORT.md) on how to use this bot. <!-- # To be used by other automation, do not modify: original-pr-number: #${pull_number} --> Co-authored-by: Carlo Sala <[email protected]> Co-authored-by: cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Bastian Köcher <[email protected]>
1 parent dc937dd commit 5b7436b

File tree

4 files changed

+42
-23
lines changed

4 files changed

+42
-23
lines changed

Cargo.lock

Lines changed: 10 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -813,7 +813,7 @@ frame-benchmarking-pallet-pov = { default-features = false, path = "substrate/fr
813813
frame-election-provider-solution-type = { path = "substrate/frame/election-provider-support/solution-type", default-features = false }
814814
frame-election-provider-support = { path = "substrate/frame/election-provider-support", default-features = false }
815815
frame-executive = { path = "substrate/frame/executive", default-features = false }
816-
frame-metadata = { version = "23.0.0", default-features = false }
816+
frame-metadata = { version = "23.0.1", default-features = false }
817817
frame-metadata-hash-extension = { path = "substrate/frame/metadata-hash-extension", default-features = false }
818818
frame-storage-access-test-runtime = { path = "substrate/utils/frame/storage-access-test-runtime", default-features = false }
819819
frame-support = { path = "substrate/frame/support", default-features = false }

prdoc/pr_10592.prdoc

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
title: 'fix: ensure metadata v15 is generated by frame-metadata'
2+
doc:
3+
- audience: Runtime Dev
4+
description: |-
5+
This is a companion PR to https://github.com/paritytech/frame-metadata/pull/110.
6+
This PR ensures that `CheckMetadataHash` generated with both v15 and v16 are the same.
7+
8+
cc @bkchr
9+
crates:
10+
- name: sp-metadata-ir
11+
bump: patch
12+
validate: false
13+
- name: frame-support
14+
bump: patch
15+
validate: false
16+
- name: substrate-wasm-builder
17+
bump: patch
18+
validate: false
19+
- name: pallet-example-view-functions
20+
bump: patch
21+
validate: false
22+
- name: sc-tracing
23+
bump: patch

substrate/primitives/metadata-ir/src/v15.rs

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -27,21 +27,17 @@ use frame_metadata::v15::{
2727
RuntimeApiMethodMetadata, RuntimeApiMethodParamMetadata, RuntimeMetadataV15,
2828
SignedExtensionMetadata,
2929
};
30-
use scale_info::{IntoPortable, Registry};
3130

3231
impl From<MetadataIR> for RuntimeMetadataV15 {
3332
fn from(ir: MetadataIR) -> Self {
34-
let mut registry = Registry::new();
35-
let pallets =
36-
registry.map_into_portable(ir.pallets.into_iter().map(Into::<PalletMetadata>::into));
37-
let extrinsic = Into::<ExtrinsicMetadata>::into(ir.extrinsic).into_portable(&mut registry);
38-
let ty = registry.register_type(&ir.ty);
39-
let apis =
40-
registry.map_into_portable(ir.apis.into_iter().map(Into::<RuntimeApiMetadata>::into));
41-
let outer_enums = Into::<OuterEnums>::into(ir.outer_enums).into_portable(&mut registry);
42-
let custom = CustomMetadata { map: Default::default() };
43-
44-
Self { types: registry.into(), pallets, extrinsic, ty, apis, outer_enums, custom }
33+
RuntimeMetadataV15::new(
34+
ir.pallets.into_iter().map(Into::into).collect(),
35+
ir.extrinsic.into(),
36+
ir.ty,
37+
ir.apis.into_iter().map(Into::into).collect(),
38+
ir.outer_enums.into(),
39+
CustomMetadata { map: Default::default() },
40+
)
4541
}
4642
}
4743

0 commit comments

Comments
 (0)