Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Commit

Permalink
Manadatory Weight (#931)
Browse files Browse the repository at this point in the history
* upsub

* Revert branch change

* Fix some

* Fix build
  • Loading branch information
kianenigma authored Mar 26, 2020
1 parent 035d1a5 commit 970e22b
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 0 deletions.
1 change: 1 addition & 0 deletions runtime/common/src/attestations.rs
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,7 @@ decl_module! {
type Error = Error<T>;

/// Provide candidate receipts for parachains, in ascending order by id.
#[weight = frame_support::weights::SimpleDispatchInfo::default()]
fn more_attestations(origin, _more: MoreAttestations) -> DispatchResult {
ensure_none(origin)?;
ensure!(!DidUpdate::exists(), Error::<T>::TooManyAttestations);
Expand Down
6 changes: 6 additions & 0 deletions runtime/common/src/crowdfund.rs
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,7 @@ decl_module! {
/// Contribute to a crowd sale. This will transfer some balance over to fund a parachain
/// slot. It will be withdrawable in two instances: the parachain becomes retired; or the
/// slot is unable to be purchased and the timeout expires.
#[weight = SimpleDispatchInfo::default()]
fn contribute(origin, #[compact] index: FundIndex, #[compact] value: BalanceOf<T>) {
let who = ensure_signed(origin)?;

Expand Down Expand Up @@ -352,6 +353,7 @@ decl_module! {
/// - `index` is the fund index that `origin` owns and whose deploy data will be set.
/// - `code_hash` is the hash of the parachain's Wasm validation function.
/// - `initial_head_data` is the parachain's initial head data.
#[weight = SimpleDispatchInfo::default()]
fn fix_deploy_data(origin,
#[compact] index: FundIndex,
code_hash: T::Hash,
Expand All @@ -377,6 +379,7 @@ decl_module! {
///
/// - `index` is the fund index that `origin` owns and whose deploy data will be set.
/// - `para_id` is the parachain index that this fund won.
#[weight = SimpleDispatchInfo::default()]
fn onboard(origin,
#[compact] index: FundIndex,
#[compact] para_id: ParaId
Expand Down Expand Up @@ -405,6 +408,7 @@ decl_module! {
}

/// Note that a successful fund has lost its parachain slot, and place it into retirement.
#[weight = SimpleDispatchInfo::default()]
fn begin_retirement(origin, #[compact] index: FundIndex) {
let _ = ensure_signed(origin)?;

Expand All @@ -426,6 +430,7 @@ decl_module! {
}

/// Withdraw full balance of a contributor to an unsuccessful or off-boarded fund.
#[weight = SimpleDispatchInfo::default()]
fn withdraw(origin, #[compact] index: FundIndex) {
let who = ensure_signed(origin)?;

Expand Down Expand Up @@ -456,6 +461,7 @@ decl_module! {
/// Remove a fund after either: it was unsuccessful and it timed out; or it was successful
/// but it has been retired from its parachain slot. This places any deposits that were not
/// withdrawn into the treasury.
#[weight = SimpleDispatchInfo::default()]
fn dissolve(origin, #[compact] index: FundIndex) {
let _ = ensure_signed(origin)?;

Expand Down
5 changes: 5 additions & 0 deletions runtime/common/src/registrar.rs
Original file line number Diff line number Diff line change
Expand Up @@ -293,6 +293,7 @@ decl_module! {
/// - `count`: The number of parathreads.
///
/// Must be called from Root origin.
#[weight = SimpleDispatchInfo::default()]
fn set_thread_count(origin, count: u32) {
ensure_root(origin)?;
ThreadCount::put(count);
Expand All @@ -306,6 +307,7 @@ decl_module! {
/// Unlike `register_para`, this function does check that the maximum code size
/// and head data size are respected, as parathread registration is an atomic
/// action.
#[weight = SimpleDispatchInfo::default()]
fn register_parathread(origin,
code: Vec<u8>,
initial_head_data: Vec<u8>,
Expand Down Expand Up @@ -345,6 +347,7 @@ decl_module! {
/// This is a kind of special transaction that should be heavily prioritized in the
/// transaction pool according to the `value`; only `ThreadCount` of them may be presented
/// in any single block.
#[weight = SimpleDispatchInfo::default()]
fn select_parathread(origin,
#[compact] _id: ParaId,
_collator: CollatorId,
Expand All @@ -361,6 +364,7 @@ decl_module! {
/// Ensure that before calling this that any funds you want emptied from the parathread's
/// account is moved out; after this it will be impossible to retrieve them (without
/// governance intervention).
#[weight = SimpleDispatchInfo::default()]
fn deregister_parathread(origin) {
let id = parachains::ensure_parachain(<T as Trait>::Origin::from(origin))?;

Expand All @@ -384,6 +388,7 @@ decl_module! {
/// `ParaId` to be a long-term identifier of a notional "parachain". However, their
/// scheduling info (i.e. whether they're a parathread or parachain), auction information
/// and the auction deposit are switched.
#[weight = SimpleDispatchInfo::default()]
fn swap(origin, #[compact] other: ParaId) {
let id = parachains::ensure_parachain(<T as Trait>::Origin::from(origin))?;

Expand Down

0 comments on commit 970e22b

Please sign in to comment.