• Bastian Köcher's avatar
    Move `PalletVersion` away from the crate version (#9165) · 4fe55f0b
    Bastian Köcher authored
    
    
    * Move `PalletVersion` away from the crate version
    
    Before this pr, `PalletVersion` was referring to the crate version that
    hosted the pallet. This pr introduces a custom `package.metadata.frame`
    section in the `Cargo.toml` that can contain a `pallet-version` key
    value pair. While the value is expected to be a valid u16. If this
    key/value pair isn't given, the version is set to 1.
    
    It also changes the `PalletVersion` declaration. We now only have one
    `u16` that represents the version. Not a major/minor/patch version. As
    the old `PalletVersion` was starting with the `u16` major, decoding the
    old values will work.
    
    * Overhaul the entire implementation
    
    - Drop PalletVersion
    - Introduce StorageVersion
    - StorageVersion needs to be set in the crate and set for the macros
    - Added migration
    
    * Fix migrations
    
    * Review feedback
    
    * Remove unneeded dep
    
    * remove pub consts
    
    * Brings back logging and implements `GetStorageVersion`
    
    * Return weight from migration
    
    * Fmt and remove unused import
    
    * Update frame/support/src/dispatch.rs
    
    Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
    
    * Update frame/support/src/traits/metadata.rs
    
    Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
    
    Co-authored-by: default avatarGuillaume Thiolliere <[email protected]>
    4fe55f0b