github paritytech/polkadot-sdk polkadot-stable2509-1
Polkadot stable2509-1

latest releases: polkadot-stable2412-11, polkadot-stable2412-11-rc1, polkadot-v1.17.11...
13 hours ago

This release contains the changes from polkadot-stable2509 to polkadot-stable2509-1.

ℹ️ Please note:

This is a patch release for the latest stable version: stable2509. If your nodes are already running on this version, you can consider upgrading to it to have the latest fixes.

The tag corresponding to the current patch release polkadot-stable2509-1 and matching the old pattern will be available under polkadot-v1.20.1.

The node version for this release is: v1.20.1

The following crates were updated to the corresponding versions:

  • sp-statement-store@23.1.0
  • polkadot-node-primitives@22.1.0
  • sc-statement-store@24.1.0
  • pallet-assets@46.1.0
  • pallet-staking-async@0.5.1
  • sc-network-statement@0.35.1
  • polkadot-approval-distribution@26.0.1
  • pallet-ranked-collective@43.0.1
  • sc-consensus-aura@0.53.1
  • cumulus-client-consensus-aura@0.26.1

Changelog

Changelog for Node Dev

ℹ️ These changes are relevant to: Those who build around the client side code. Alternative client builders, SMOLDOT, those who consume RPCs. These are people who are oblivious to the runtime changes. They only care about the meta-protocol, not the protocol itself.

[#10082]: approval-distribution: improve test coverage

Add few more test in approval-distribution to improve coverage.

[#9912]: [WIP] Fix statement-store gossiping

Fixes gossiping and scalability issues in the statement-store networking:
reduces traffic by propagating only recent statements, skips duplicate processing, and splits large batches to stay under MAX_STATEMENT_NOTIFICATION_SIZE.

Changelog for Runtime Dev

ℹ️ These changes are relevant to: All of those who rely on the runtime. A parachain team that is using a pallet. A DApp that is using a pallet. These are people who care about the protocol (WASM, not the meta-protocol (client).)

[#9731]: simulate rank_to_votes conversion in vote benchmark

Fixes benchmarking failures for the vote extrinsic in pallet-ranked-collective by properly simulating the rank_to_votes conversion process. Previously used hardcoded vote values which caused assertion failures when using custom VoteWeight converters (e.g., in
Ambassador Collective configuration). The fix calculates vote weight based on member's actual rank and minimum required rank for the class.

[#9926]: Staking-Async: Chill stakers should not have a score

Async: Chill stakers should not have a score.

While no severe consequence, this bug could cause non-validator and non-nominator stakers to retain a spot in the bags-list pallet, preventing other legit nominators/validators from taking their place.

Note that previously, this was not a possibility, because staking would always issue a T::VoterList::on_remove when someone chills, ensuring they are removed from the list. Moreover, an older version of pallet_bags_list::Pallet::rebag didn't allow new nodes to be added, only the score of existing nodes to be adjusted.

But, in recent versions of bags-list, we added a Lock ability that would block any changes to the bags list (during the election snapshot phase). This also had us update the rebag transaction to add or remove nodes from the list, which opened the door to this issue.

[#10051]: [AHM/Staking] Allow own stake to be collected in all pages

TLDR: Thanks to a number of reports from Kusama validator, we have been investigating an issue where the self stake of some validators is not present in ErasStakersPaged and ErasStakersOverview. After investigation, it was clear that the polkadot-staking-miner is doing the right thing, and the self-stake is indeed submitted to the chain as a part of the election result. The root cause in how pallet-staking-async ingests the paginated election result. This code made a (wrong) assumption that self-stake is only present in the first page of a multi-page election. This PR fixes this issue.

Changelog for Node Operator

ℹ️ These changes are relevant to: Those who don't write any code and only run code.

[#10072]: revert: aura tracker

Reverts non-public-interface changes of #9272.

[#9894]: Adjust statement store configs to hold more data

This PR adjusts the statement store configuration, hardcoded in the networking component of the store, to enable the store to hold greater amounts of data, 2GiB worth of statement data to be exact.

Moreover, the networking config is adjusted to be able to process significantly more statements, as well as preventing the store from gossiping indefinitely after the LRU cache reaches capacity.

Changelog for Runtime User

ℹ️ These changes are relevant to: Anyone using the runtime. This can be a token holder or a dev writing a front end for a chain.

[#7456]: pallet-assets: make touch other permissionless

In pallet assets, make touch_other call permissionless. Before this PR only Admin and Freezer of an asset could touch an account, now every account can.

Rust compiler versions

This release was built and tested against the following versions of rustc.
Other versions may work.

  • Rust Stable: 1.88.0

Docker images

The docker images for the polkadot node binary and the polkadot-parachain binary can be found at Docker hub (will be available a few minutes after the release has been published):

You may also pull it with:

docker pull parity/polkadot:stable2509-1

or

docker pull parity/polkadot-parachain:stable2509-1

Don't miss a new polkadot-sdk release

NewReleases is sending notifications on new releases.