Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat: Polkadot v1.8 to v1.9 upgrade #444

Conversation

Aideepakchaudhary
Copy link
Contributor

@Aideepakchaudhary Aideepakchaudhary commented Oct 8, 2024

Description

This PR is upgrading Runtime's and Node's dependencies from Polkadot-SDK release v1.8.0 to v1.9.0

Notes

Relevant upgrade's notes and comments.

  • Migrate the usage of current_storage_version to in_code_storage_version in several files.
  • Breaking changes:
    • 3491: Remove Deprecated OldWeight
    • 3378: Remove deprecated GenesisConfig
    • 1154: Runtime Upgrade ref docs and Single Block Migration example pallet
    • 3532: Remove deprecated trait Store
    • 1781: Multi-Block-Migrations, poll hook and new System Callbacks
    • 3574: Generate test functions for each benchmark with benchmarking v2
    • 3453: [pallet-nomination-pools]: chill is permissionless if depositor's stake is less than min_nominator_bond
  • Kindly refer to the official Polkadot release report for further details: Polkadot v1.9.0

Process

  • Bump workspace dependencies
  • Fix issues
  • Bump spec_ver for both testnet and mainnet Runtime.
  • Bump node version if there were changes in the node.

Codebase Upgrade Acceptance Criteria

  • cargo check passes
  • cargo test passes
  • cargo build on -- release profile correctly builds
  • try-runtime and runtime-benchmarks features compile
  • Single node spinned up from binary works and generates blocks
  • Zombienet network with 2 peers spawned with block-production config file generates blocks.

Runtime & Node Upgrade Acceptance Criteria

  • Runtime upgrade works on Zombienet

  • Node upgrade works on Zombienet

  • Runtime upgrade works on Chopsticks

    • Testnet
    • Mainnet
  • Try-runtime passes with no pending migrations

    • Testnet
    • Mainnet

<!--- PR TEMPLATE CONTENT STARTS HERE -->

Types of Changes

Please select the branch type you are merging and fill in the relevant template.

<!--- Check the following box with an x if the following applies: -->

  • Hotfix
  • Release
  • Fix or Feature

Fix or Feature

<!--- Check the following box with an x if the following applies: -->

Types of Changes

<!--- What types of changes does your code introduce? -->

  • Tech Debt (Code improvements)
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Dependency upgrade (A change in substrate or any 3rd party crate version)

Migrations and Hooks

<!--- Check the following box with an x if the following applies: -->

  • This change requires a runtime migration.
  • Modifies on_initialize
  • Modifies on_finalize

Checklist for Fix or Feature

<!--- All boxes need to be checked. Follow this checklist before requiring PR review -->

  • Change has been tested locally.
  • Change adds / updates tests if applicable.
  • Changelog doc updated.
  • spec_version has been incremented.
  • network-relayer's events have been updated according to the blockchain events if applicable.
  • All CI checks have been passed successfully

Checklist for Hotfix

<!--- All boxes need to be checked. Follow this checklist before requiring PR review -->

  • Change has been deployed to Testnet.
  • Change has been tested in Testnet.
  • Changelog has been updated.
  • Crate version has been updated.
  • spec_version has been incremented.
  • Transaction version has been updated if required.
  • Pull Request to dev has been created.
  • Pull Request to staging has been created.
  • network-relayer's events have been updated according to the blockchain events if applicable.
  • All CI checks have been passed successfully

Checklist for Release

<!--- All boxes need to be checked. Follow this checklist before requiring PR review -->

  • Change has been deployed to Devnet.
  • Change has been tested in Devnet.
  • Change has been deployed to Qanet.
  • Change has been tested in Qanet.
  • Change has been deployed to Testnet.
  • Change has been tested in Testnet.
  • Changelog has been updated.
  • Crate version has been updated.
  • Spec version has been updated.
  • Transaction version has been updated if required.
  • All CI checks have been passed successfully

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants