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 1313/week @ 2024-07-21 1574/week @ 2024-07-28 1268/week @ 2024-08-04 1859/week @ 2024-08-11 2013/week @ 2024-08-18 1664/week @ 2024-08-25 1038/week @ 2024-09-01 1564/week @ 2024-09-08 1507/week @ 2024-09-15 2198/week @ 2024-09-22 2195/week @ 2024-09-29 1797/week @ 2024-10-06 1893/week @ 2024-10-13 2510/week @ 2024-10-20 1995/week @ 2024-10-27 2157/week @ 2024-11-03

8,732 downloads per month
Used in 79 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
~526K SLoC