Skip to content
This repository was archived by the owner on Apr 9, 2026. It is now read-only.

chore: Updated SDK to polkadot-stable2603#25

Open
Klapeyron wants to merge 1 commit intomainfrom
stable2603
Open

chore: Updated SDK to polkadot-stable2603#25
Klapeyron wants to merge 1 commit intomainfrom
stable2603

Conversation

@Klapeyron
Copy link
Copy Markdown
Contributor

@Klapeyron Klapeyron commented Mar 31, 2026

Bump all Polkadot SDK dependencies from polkadot-stable2512-3 to polkadot-stable2603.

Release notes: polkadot-stable2603 (2512 → 2603)

Key upstream breaking changes addressed

  • Proposer trait refactor (paritytech/polkadot-sdk#9947): Proposer::propose() now takes a single ProposeArgs<B> struct instead of individual parameters. The proof recorder is no longer initialised internally by BlockBuilder — it is passed in by the caller, moving responsibility for extracting the final storage proof outward. The ProofRecording and Proof associated types are removed from the Proposer trait.
  • GrandpaPruningFilter (paritytech/polkadot-sdk#10893): new_full_parts now requires a block_pruning_filters parameter. Solochain nodes using GRANDPA must pass vec![Arc::new(GrandpaPruningFilter)] to preserve blocks with GRANDPA justifications needed for warp sync proofs. Without this, pruned nodes cannot serve warp sync proofs.
  • Session key ownership proof (paritytech/polkadot-sdk#1739): generate_session_keys now takes an owner parameter and returns OpaqueGeneratedSessionKeys. This supports verifiable proof-of-ownership when registering session keys on chain, preventing key impersonation.
  • RuntimeDebug deprecated (paritytech/polkadot-sdk#10582): sp_runtime::RuntimeDebug is deprecated in favour of plain Debug. Benchmarks showed the WASM size difference is negligible (~0.3% compressed), so the separate no-op-in-wasm derive is no longer justified.
  • spawn_essential_handle: build_network params now requires a spawn_essential_handle field.

Changes in this PR

  • Cargo.toml / Cargo.lock: Update all ~65 polkadot-sdk workspace dependency tags stable2512-3stable2603
  • demo/node/src/service.rs:
    • Pass vec![Arc::new(GrandpaPruningFilter)] to both new_full_parts call sites
    • Add spawn_essential_handle to build_network params
  • demo/runtime/src/lib.rs: Update generate_session_keys signature for ownership proof support
  • substrate-extensions/aura/consensus/src/lib.rs: Adapt DummyProposer and test code to new ProposeArgs / Proposal types (remove ProofRecording, Proof, proof field)
  • substrate-extensions/aura/primitives/src/block_proposal.rs: Adapt PartnerChainsProposer to destructure and forward ProposeArgs (including new storage_proof_recorder and extra_extensions fields)
  • toolkit/block-participation/primitives/src/lib.rs: Replace sp_runtime::RuntimeDebug with Debug
  • toolkit/block-production-log/primitives/src/lib.rs: Replace sp_runtime::RuntimeDebug with Debug
  • toolkit/committee-selection/primitives/src/lib.rs: Replace sp_runtime::RuntimeDebug with Debug
  • toolkit/sidechain/domain/src/mainchain_epoch.rs: Replace sp_core::RuntimeDebug with Debug
  • README.md: Update SDK badge to stable2603
  • changelog.md: Note the dependency bump

Checklist

  • Commit sequence broadly makes sense and commits have useful messages.
  • The size limit of 400 LOC isn't needlessly exceeded
  • The PR refers to a JIRA ticket (if one exists)
  • New tests are added if needed and existing tests are updated.
  • New code is documented and existing documentation is updated.
  • Relevant logging and metrics added
  • Any changes are noted in the changelog.md for affected crate
  • Self-reviewed the diff

@Klapeyron Klapeyron marked this pull request as ready for review March 31, 2026 09:49
@gilescope
Copy link
Copy Markdown
Contributor

Can you use the https://github.com/paritytech/psvm tool to update it - that should be able to point us at the crate versions - these fetch faster than git references.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants