Files
pezkuwi-subxt/substrate/frame/child-bounties
PG Herveou d38f6e6728 Update benchmarking macros (#3934)
Current benchmarking macro returns a closure with the captured
benchmarked code.
This can cause issues when the benchmarked code has complex lifetime
requirements.

This PR updates the existing macro by injecting the recording parameter
and invoking the start / stop method around the benchmarked block
instead of returning a closure

One other added benefit is that you can write this kind of code now as
well:

```rust
let v;
#[block]
{ v = func.call(); }
dbg!(v); // or assert something on v
```


[Weights compare
link](https://weights.tasty.limo/compare?unit=weight&ignore_errors=true&threshold=10&method=asymptotic&repo=polkadot-sdk&old=pg/fix-weights&new=pg/bench_update&path_pattern=substrate/frame/**/src/weights.rs,polkadot/runtime/*/src/weights/**/*.rs,polkadot/bridges/modules/*/src/weights.rs,cumulus/**/weights/*.rs,cumulus/**/weights/xcm/*.rs,cumulus/**/src/weights.rs)

---------

Co-authored-by: command-bot <>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Alexander Theißen <alex.theissen@me.com>
2024-04-10 06:44:46 +00:00
..
2024-04-10 06:44:46 +00:00
2023-09-04 12:02:32 +03:00

Child Bounties Pallet ( pallet-child-bounties )

Child Bounty

NOTE: This pallet is tightly coupled with pallet-treasury and pallet-bounties.

With child bounties, a large bounty proposal can be divided into smaller chunks, for parallel execution, and for efficient governance and tracking of spent funds. A child bounty is a smaller piece of work, extracted from a parent bounty. A curator is assigned after the child bounty is created by the parent bounty curator, to be delegated with the responsibility of assigning a payout address once the specified set of tasks is completed.

Interface

Dispatchable Functions

Child Bounty protocol:

  • add_child_bounty - Add a child bounty for a parent bounty to for dividing the work in smaller tasks.
  • propose_curator - Assign an account to a child bounty as candidate curator.
  • accept_curator - Accept a child bounty assignment from the parent bounty curator, setting a curator deposit.
  • award_child_bounty - Close and pay out the specified amount for the completed work.
  • claim_child_bounty - Claim a specific child bounty amount from the payout address.
  • unassign_curator - Unassign an accepted curator from a specific child bounty.
  • close_child_bounty - Cancel the child bounty for a specific treasury amount and close the bounty.