55 releases (35 major breaking)

37.0.0 Sep 26, 2024
36.0.1 Oct 9, 2024
36.0.0 Jul 18, 2024
35.0.0 Jul 12, 2024
2.0.0-alpha.5 Mar 24, 2020

#1 in #funds

Download history 1671/week @ 2024-08-26 1033/week @ 2024-09-02 1544/week @ 2024-09-09 1514/week @ 2024-09-16 2269/week @ 2024-09-23 2133/week @ 2024-09-30 1821/week @ 2024-10-07 1980/week @ 2024-10-14 2422/week @ 2024-10-21 2041/week @ 2024-10-28 2131/week @ 2024-11-04 21526/week @ 2024-11-11 26407/week @ 2024-11-18 29286/week @ 2024-11-25 24049/week @ 2024-12-02 29614/week @ 2024-12-09

110,665 downloads per month
Used in 80 crates (14 directly)

Apache-2.0

2.5MB
49K SLoC

Treasury Pallet

The Treasury pallet provides a "pot" of funds that can be managed by stakeholders in the system and a structure for making spending proposals from this pot.

Overview

The Treasury Pallet itself provides the pot to store funds, and a means for stakeholders to propose, approve, and deny expenditures. The chain will need to provide a method (e.g.inflation, fees) for collecting funds.

By way of example, the Council could vote to fund the Treasury with a portion of the block reward and use the funds to pay developers.

Terminology

  • Proposal: A suggestion to allocate funds from the pot to a beneficiary.
  • Beneficiary: An account who will receive the funds from a proposal if the proposal is approved.
  • Deposit: Funds that a proposer must lock when making a proposal. The deposit will be returned or slashed if the proposal is approved or rejected respectively.
  • Pot: Unspent funds accumulated by the treasury pallet.

Interface

Dispatchable Functions

General spending/proposal protocol:

  • spend_local - Propose and approve a spend of treasury funds, enables the creation of spends using the native currency of the chain, utilizing the funds stored in the pot
  • spend - Propose and approve a spend of treasury funds, allows spending any asset kind managed by the treasury
  • remove_approval - Force a previously approved proposal to be removed from the approval queue
  • payout - Claim a spend
  • check_status - Check the status of the spend and remove it from the storage if processed
  • void_spend - Void previously approved spend

Release

Polkadot SDK stable2409

Dependencies

~17–32MB
~525K SLoC