Skip to content

Conversation

@dastansam
Copy link
Contributor

@dastansam dastansam commented Feb 5, 2025

What?

Work in progress upgrade to new stable version.

closes #446

Tasks

  • Review release notes for stable2412 for breaking changes. Also check the release notes of the versions before (with a focus on stable2409 and 1.14.0).
  • Update Polkadot SDK dependencies to stable2412.
  • Update ORML dependencies to the according version.
  • Test node and runtime compatibility (e.g., compile-time errors, runtime APIs, storage migrations).
  • Audit custom pallets for deprecated or changed SDK interfaces.
  • Update benchmarks (if applicable) for weight calculations.

Additional Context

  • The Treasury::propose_spend(...) integrations tests needs a rework, since that extrinsic is now deprecated, and it should be replaced by Treasury::sped_local(...). We can ignore these tests for now and re-add them in a later PR.

Why?

Release analysis posts here.

Some notable PRs:

How?

Testing?

  • Pallet Unit Testing (e.g. cargo t -p pallet-funding)
  • Integration Tests (e.g. cargo t -p integration-tests)
  • Try Runtime CLI, to test if we have to run any migration in this upgrade.

Screenshots (optional)

Syncing with mainnet `polimec` Screenshot 2025-02-06 at 1 16 29
`try-runtime` fails for `pallet-identity`

Screenshot 2025-02-06 at 3 51 46

Anything Else?

  • Due to the blockers listed in the issue above, currently orml crates are pointing to a fork
  • Fixed some crates that are still not using workspace dependencies

Follow ups

  • Fix integration tests errors
  • Remove SignedExtension deprecation warnings, by replacing it with TxExtension
  • Depend on crates.io versions for orml crates once new release is pushed
  • Introduce pallet-migrations for multi block migrations support. pallet_identity::V1ToV2 migrations is a lazy migration which needs pallet-migrations (see 2 in screenshots)

@dastansam dastansam marked this pull request as ready for review February 5, 2025 21:55
@graphite-app
Copy link

graphite-app bot commented Feb 5, 2025

Graphite Automations

"Auto-assign PRs to author" took an action on this PR • (02/05/25)

1 assignee was added to this PR based on Juan Ignacio Rios's automation.

@lrazovic lrazovic self-requested a review February 6, 2025 07:50
impl pallet_collective::Config<CouncilCollective> for Runtime {
type Consideration = ();
type DefaultVote = pallet_collective::MoreThanMajorityThenPrimeDefaultVote;
type DisapproveOrigin = EitherOfDiverse<
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

copied from ApproveOrigin above

apis: RUNTIME_API_VERSIONS,
transaction_version: 1,
state_version: 1,
system_version: 1,
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should probably be bumped to system_version: 2 (?)

pub const BasicDeposit: Balance = 20 * PLMC;
/// Deposit for each additional field.
pub const ByteDeposit: Balance = deposit(0, 1);
/// Username deposit for identity
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should be reviewed as well

@dastansam
Copy link
Contributor Author

dastansam commented Feb 8, 2025

tried adding pallet-migrations and identity migration there, but try-runtime is failing:

[2025-02-07T16:48:05Z ERROR pallet_migrations] Ongoing migrations interrupted - chain stuck
[2025-02-07T16:48:05Z ERROR runtime] panicked at .cargo/registry/src/index.crates.io-6f17d22bba15001f/pallet-migrations-9.0.0/src/lib.rs:813:13:
    Migration with index Some(0) failed.
[2025-02-07T16:48:05Z ERROR try_runtime_core::commands::on_runtime_upgrade] ❌ Migrations are not idempotent, they failed during the second execution.

will need to investigate whether this is from migration or sth wrong with the pallet

@lrazovic
Copy link
Member

lrazovic commented Feb 11, 2025

ORML 1.3.0 is out and should work now without problem with stable2412-1! https://github.com/open-web3-stack/open-runtime-module-library/releases/tag/v1.3.0

I'll investigate further the migrations problem.

@dastansam
Copy link
Contributor Author

dastansam commented Feb 25, 2025

working on an upgrade to stable2412-2 instead

ORML 1.3.0 is out and should work now without problem with stable2412-1! https://github.com/open-web3-stack/open-runtime-module-library/releases/tag/v1.3.0

I'll investigate further the migrations problem.

@dastansam dastansam changed the base branch from main to 02-20-replace_weth_with_eth February 25, 2025 13:06
@JuaniRios JuaniRios force-pushed the 02-20-replace_weth_with_eth branch from cb3703e to a9d222b Compare February 26, 2025 14:15
@dastansam
Copy link
Contributor Author

closed in favour of #462

@dastansam dastansam closed this Feb 26, 2025
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.

Upgrade Polkadot SDK from 1.13.0 to stable2412

2 participants