Skip to content
  • Liam Aharon's avatar
    Runtime Upgrade ref docs and Single Block Migration example pallet (#1554) · 12ce4f7d
    Liam Aharon authored
    Closes https://github.com/paritytech/polkadot-sdk-docs/issues/55
    
    - Changes 'current storage version' terminology to less ambiguous
    'in-code storage version' (suggestion by @ggwpez
    
    )
    - Adds a new example pallet `pallet-example-single-block-migrations`
    - Adds a new reference doc to replace
    https://docs.substrate.io/maintain/runtime-upgrades/ (temporarily living
    in the pallet while we wait for developer hub PR to merge)
    - Adds documentation for the `storage_alias` macro
    - Improves `trait Hooks` docs 
    - Improves `trait GetStorageVersion` docs
    - Update the suggested patterns for using `VersionedMigration`, so that
    version unchecked migrations are never exported
    - Prevents accidental usage of version unchecked migrations in runtimes
    
    https://github.com/paritytech/substrate/pull/14421#discussion_r1255467895
    - Unversioned migration code is kept inside `mod version_unchecked`,
    versioned code is kept in `pub mod versioned`
    - It is necessary to use modules to limit visibility because the inner
    migration must be `pub`. See
    https://github.com/rust-lang/rust/issues/30905 and
    
    https://internals.rust-lang.org/t/lang-team-minutes-private-in-public-rules/4504/40
    for more.
    
    ### todo
    
    - [x] move to reference docs to proper place within sdk-docs (now that
    https://github.com/paritytech/polkadot-sdk/pull/2102 is merged)
    - [x] prdoc
    
    ---------
    
    Co-authored-by: default avatarKian Paimani <[email protected]>
    Co-authored-by: default avatarJuan <[email protected]>
    Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
    Co-authored-by: command-bot <>
    Co-authored-by: default avatargupnik <[email protected]>
    12ce4f7d