background-shape

Duniter Substrate Upgrade

Blockchain based on the Substrate framework must keep up with the past-pacing development of Substrate.

Client

AxiomTeam

Service

Blockchain

Date

June 1, 2023

Challenge

The Duniter project was based on the Substrate version polkadot-v0.9.32. The current, up-to-date version is 0.9.42 and includes various breaking changes like a complete refactoring of the Balances pallet; a mandatory implementation of the RPC extension for the Babe pallet; a type incompatibility between the DustRemoval of the Balances pallet and the Treasury pallet. The Duniter project also uses tests based on the Subxt crate that was, in part, largely refactored.

Solution

We upgraded the entire project (code, test, and build scripts) to the new version. In addition, we implemented the missing RPC extension for the Babe pallet and a new type, "DustHandler", that can take the Dust from the Balances pallet and put it in the Treasury account. By the way, we sorted out several bugs that went unnoticed with the previous version. See all the changes at https://git.duniter.org/nodes/rust/duniter-v2s/-/merge_requests/172.

case-details