Skip to content
  • Bastian Köcher's avatar
    Move runtime upgrade to `frame-executive` (#5197) · 26fa6e3c
    Bastian Köcher authored
    * Move runtime upgrade to `frame-executive`
    
    Instead of storing the runtime upgraded in the space of `frame-system`,
    this moves it to `frame-executive`. We also start storing the
    `spec_version` and `impl_version` the last runtime upgrade was applied.
    
    This scheme has multiple advantages:
    - We don't need to make sure that runtime upgrade was set.
    - This will work in the future when we want to test a runtime upgrade,
    because the `on_runtime_upgrade` will be executed automatically when the
    runtime changes.
    
    * Move `LAST_RUNTIME_UPGRADE` key to `frame-executive`
    
    * Add some more documentation
    
    * Make sure `spec_version` always increases between runtime upgrades
    
    * Fix test
    
    * Upgrade `parity-multiaddr` to fix compilation
    
    * Also check if the `spec_name` changed
    
    * Remove `RuntimeUpgraded` storage entry
    
    * Don't run on genesis
    26fa6e3c