paritytech / substrate

Substrate: The platform for blockchain innovators
Apache License 2.0
8.39k stars 2.65k forks source link

`GenesisBuild` split #14330

Closed michalkucharczyk closed 1 year ago

michalkucharczyk commented 1 year ago

This PR removes the storage building part from the GenesisBuild trait.

assimilate_storage and build_storage methods were moved to new GenesisBuildStorage trait which is implemented only for pallets GenesisConfig (and not RuntimeGenesisConfig). PalletGenesisConfig marker trait was added to facilitate this.

The rationale behind this is as follows: since paritytech/substrate#14306 GenesisBuild is implemented for RuntimeGenesisConfig. As the BuildStorage is also implemented for RuntimeGenesisConfig there was is duality now - RuntiemGenesisConfig had two bulid_storage implementations.

Trait split is implemented in 13d66fd5d0, renaming in ad3b7df4ba.

Step towards: https://github.com/paritytech/polkadot-sdk/issues/25

cumulus companion: paritytech/cumulus#2720

paritytech-cicd-pr commented 1 year ago

The CI pipeline was cancelled due to failure one of the required jobs. Job name: test-linux-stable Logs: https://gitlab.parity.io/parity/mirrors/substrate/-/jobs/2961605