Commit Graph

2912 Commits

Author SHA1 Message Date
Kian Paimani 2d988e5f60 Proposal: Flatten AllPallets and similar types (#11813)
* flratten AllPallets types

* feature flag it

* fix

* fix

* fmt

* remove todo

* Update frame/support/src/traits/metadata.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Update frame/support/src/migrations.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* fix

* mark as deprecated

* add docs

* fix ui test?

* fmt

Co-authored-by: parity-processbot <>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2022-08-14 19:06:02 +00:00
Shawn Tabrizi 6b0203c8c4 Further Improve Gov V2 Stuff (#12028)
* refactor and improve successful origin

* use appropriate origin for creating referendum

* fmt

* add setup tally feature for benchmarks

* feedback updates

* fmt

* Update frame/referenda/src/benchmarking.rs

Co-authored-by: Gavin Wood <gavin@parity.io>

* feedback on `setup` trait

* fix

Co-authored-by: Gavin Wood <gavin@parity.io>
2022-08-14 18:36:19 +00:00
Sudip Ghimire bc6f7bdda9 make MAX_VOTERS and MAX_CANDIDATES in elections-phragmen configurable. Fix: #11092 (#11908)
* make MAX_VOTERS and MAX_CANDIDATES in elections-phragmen configurable

* Configure election-phragmen in node bin configuring max candidates & voters

* Add document comment for added Config parameter

* Incorporate suggestion

* fix benchmarks

* Update frame/elections-phragmen/src/lib.rs

* Update frame/elections-phragmen/src/lib.rs

* fix wrong values

* fix typo

* docs

* more detailed docs

* fmt

* ".git/.scripts/bench-bot.sh" pallet dev pallet_elections_phragmen

Co-authored-by: Szegoo <sakacszergej@gmail.com>
Co-authored-by: Sergej Sakac <73715684+Szegoo@users.noreply.github.com>
Co-authored-by: command-bot <>
2022-08-14 18:05:06 +00:00
Shawn Tabrizi e5ed764d39 Add Benchmarking Instance to Pallets (#12026)
* benchmark instance

* add benchmark instance to conviction voting

* instance on bags list

* fmt
2022-08-13 16:07:10 +01:00
Shawn Tabrizi 2950340edc Fix Gov V2 Benchmarks (#12022)
* better benchmark log

* Update lib.rs

* fix gov2 benchmarks

* saturating math + fmt

* add comment
2022-08-13 12:05:39 +00:00
Shawn Tabrizi 187735908f better benchmark log (#12016)
* better benchmark log

* Update lib.rs
2022-08-12 15:34:00 +00:00
Bastian Köcher a558442416 Use correct length for Pallet and Storage prefix when calculating KeyLenOf (#11994)
* Use correct length for Pallet and Storage prefix when calculating `KeyLenOf`

* Add tests

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
2022-08-11 16:53:40 +02:00
Shawn Tabrizi a6c95cbb13 add decode with depth limit to opaque types (#11947)
Co-authored-by: parity-processbot <>
2022-08-11 14:39:56 +00:00
Bastian Köcher aa5f68a827 transactional: Wrap pallet::calls directly in storage layers (#11927)
* transactional: Wrap `pallet::calls` directly in storage layers

Before this pr we only wrapped `pallet::calls` into storage layers when executing the calls with
`dispatch`. This pr is solving that by wrapping each call function inside a storage layer.

* Teach `BasicExternalities` transactions support

* Fix crates

* FMT

* Fix benchmarking tests

* Use correct span

* Support old decl macros

* Fix test

* Apply suggestions from code review

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/state-trie-migration/src/lib.rs

* Update frame/state-trie-migration/src/lib.rs

* Update frame/state-trie-migration/src/lib.rs

* Feedback

* Apply suggestions from code review

Co-authored-by: cheme <emericchevalier.pro@gmail.com>

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: cheme <emericchevalier.pro@gmail.com>
2022-08-10 22:27:01 +02:00
Shawn Tabrizi 043b1697c7 Use #[pallet::unbounded] tag in FRAME System (#11946)
* use unbounded in system

* update ui tests
2022-08-10 13:58:52 +00:00
Muharem Ismailov e41b90910e Transaction payment runtime api: query call info and fee details (#11819)
* Transaction payment RPC calls: query call info

* transaction payment pallet - runtime api - add query_call info and fee_details

* remove unused deps

* separate call runtime api

* undo fmt for unchanged code

* system config call bounded to GetDispatchInfo, drop Call generic for query call info/fee

* impl GetDispatchInfo for Extrinsics within runtime test-utils

* introduced runtime api methods accept encoded Call instead of Call type

* replace Bytes by Vec, docs for for new api, drop len argument, drop GetDispatchInfo bound from system_Config::Call

* clean up toml and extra impl for dropped bound

* panic if Call can not be decoded

* revert to d43ba2f

* fmt and docs

* rustfmt
2022-08-10 10:36:16 +00:00
Alexander Theißen d910386081 contracts: Apply depth limit when decoding (#11991) 2022-08-08 14:32:00 +00:00
yjh e945ae6365 chore: fix typos and sort trait impls (#11989) 2022-08-08 09:49:00 +00:00
Kevin Wang 266fa8516a Fix 16bit func_id (#11985) 2022-08-08 09:46:57 +00:00
Bastian Köcher 753907a184 Timestamp: set_timestamp sets DidUpdate (#11960)
* Timestamp: `set_timestamp` sets `DidUpdate`

There exists the `set_timestamp` in the Timestamp pallet for setting the current timestamp. The
problem is that it doesn't set `DidUpdate`. This results in `on_finalize` panicking. There is no
real reason why the function doesn't also set `DidUpdate`.

* Update frame/timestamp/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix Babe tests

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
2022-08-04 11:34:19 +02:00
Sacha Lansky df07421904 Fix docs urls (#11966)
* Fix docs urls

* Update bin/node-template/README.md

* Update frame/aura/src/lib.rs

* Run cargo +nightly fmt

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2022-08-03 13:34:33 +02:00
Andronik 0cda69d34a offences: make fn slash_fraction non-static (#11956)
* offences: make fn slash_fraction non-static

* Bastifmt (inline variable)
2022-08-02 18:49:03 +00:00
Alexandru Vasile 63f847c24f rpc: Update jsonrpsee v0.15.1 (#11939)
* Bump jsonrpsee to v0.15.1

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* Update cargo.lock

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc-servers: Adjust RpcMiddleware to WS and HTTP traits

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc/author: Use `SubscriptionSink`

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc/chain: Use `SubscriptionSink`

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc/state:  Use `SubscriptionSink`

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc/finality-grandpa: Use `SubscriptionSink`

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc/beefy: Use `SubscriptionSink`

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* client: Extract RPC string result from queries

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* Apply rust-fmt

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* Fix warnings

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* Fix testing

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc/tests: Remove trailing comma

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc: Use `SubscriptionResult` for implementations

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc: Remove comment

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc: Delegate middleware calls to `RpcMiddleware`

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc: Remove comment

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* Revert Cargo.lock

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* Update Cargo.lock with minimal changes

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc: Update imports for `SubscriptionResult`

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* Apply cargo fmt

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>

* rpc/tests: Submit raw json requests to validate DenyUnsafe

Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
2022-08-02 17:00:18 +00:00
Oliver Tale-Yazdi 60c2506a71 Remove remove_member_wrong_refund from phragmen WeightInfo (#11952)
* Remove 'remove_member_wrong_refund' from WeightInfo

Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* ".git/.scripts/bench-bot.sh" pallet dev pallet_elections_phragmen

Co-authored-by: command-bot <>
2022-08-01 18:56:19 +00:00
Keith Yeung d318a13b31 Add and implement MaxEncodedLen to token traits (#11945)
* Add and implement MaxEncodedLen bounds to token traits

* cargo fmt

* Update UI test expectations
2022-08-01 14:24:22 +00:00
Kian Paimani f73ce5795c remove unused staking trait bound (#11942) 2022-08-01 10:44:56 +00:00
Sergej Sakac 658b179686 Auto-incremental CollectionId (#11796)
* autoincrementing CollectionId

* fix

* benchmarking fix

* fmt

* fix

* update before checking

* fmt

* fix

* fmt

* commit

* tests & fix

* fix

* commit

* docs

* safe math

* unexpose function

* benchmark

* fmt

* better naming

* fix?

* merge fixes

* fmt

* ".git/.scripts/bench-bot.sh" pallet dev pallet_uniques

* wrong weight

* Update frame/uniques/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/uniques/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* using substrate trait instead of num-traits

* remove unnecessary trait

* emit NextCollectionIdIncremented in do_create_collection

* fix in benchmarks

* check for event & group import

* docs

Co-authored-by: Sergej Sakač <sergejsakac@Sergejs-MacBook-Air.local>
Co-authored-by: command-bot <>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
2022-07-30 14:09:25 +00:00
ZhiYong 3a4ad68d09 Add Event to Pallet Asset-Tx-Payment (#11690)
* Add Event to Pallet Asset-Tx-Payment

* add asset_id into the Event

Co-authored-by: parity-processbot <>
2022-07-29 17:59:03 +00:00
joe petrowski 3bb68baa87 Require Alliance Initialisation Before Joining (#11917)
* require alliance initialisation before joining

* use noop

* make one definition of initialization

* rename event

* add todo comment

* update doc
2022-07-29 10:56:08 +00:00
Bastian Köcher 4b3aced87e construct_runtime!: Support parsing struct Runtime (#11932)
* construct_runtime!: Support parsing `struct Runtime`

* FMT
2022-07-29 09:22:49 +00:00
Koute c4b607d4c9 Prevent double allocation of the payload when calling sp_io::storage::get (#11523)
* Expose allocation stats in `FreeingBumpHeapAllocator`

* Return allocation stats when calling into the runtime

* Bump `parity-scale-codec` to 3.1.3 (fork)

* Prevent double allocation of the payload when calling `sp_io::storage::get`

* Fix tests

* Remove unnecessary `mut`

* Enable the `bytes` feature for `parity-scale-codec` in `sp-runtime-interface`

* Update client/allocator/src/freeing_bump.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Bump `parity-scale-codec` to 3.1.3

* Fix some of the UI tests

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2022-07-29 07:46:15 +00:00
Kian Paimani dc4ca1bb33 Fix slashing migration to v10 (#11924)
* Fix slashing migration to v10

* add some logs

* Fix default version

* fmt

* Move doc to struct

Co-authored-by: Wilfried Kopp <wilfried@parity.io>
2022-07-28 10:44:02 +00:00
Shawn Tabrizi 72522429a7 Make New Storage Layer Truly Default (#11918)
* with storage layer truly default

* fmt

Co-authored-by: parity-processbot <>
2022-07-26 17:49:11 +00:00
Kian Paimani ff2c4ca02f Properly defer slashes (#11823)
* initial draft of fixing slashing

* fix test

* Update frame/staking/src/tests.rs

Co-authored-by: Piotr Mikołajczyk <piomiko41@gmail.com>

* last touches

* add more detail about unbonding

* add migration

* fmt

Co-authored-by: Piotr Mikołajczyk <piomiko41@gmail.com>
Co-authored-by: parity-processbot <>
2022-07-26 12:44:48 +00:00
Sebastian Kunert 9f409dc0b8 Prepare for rust 1.62.1 (#11903)
* Update UI test output for rust 1.62.1

* switch ci to staging image to check that everything works

* fix artifacts node-bench-regression-guard

* Imeplement `scale_info::TypeInfo` manually to silence aggressive rust warning

* Fix more clippy lints

* Make clippy happy by relying on auto-deref were possible

* Add tracking issue to the comments

* pin ci image

Co-authored-by: alvicsam <alvicsam@gmail.com>
2022-07-26 14:37:05 +02:00
Sergej Sakac cdfd2da02e Rpc for pending rewards (#11831)
* rpc pending rewards

* commit

* remove unused imports

* fix

* fix

* fmt

* fix

* fmt

* fix

* docs

* docs & formatting

* better formatting

* temporary fix

* error handling

* fix?

* fmt

* use to_string

* fmt

* fixed error handling

* fix

* rpc added to client

* Update Cargo.toml

* Update Cargo.toml

* fix wrong reward counter

* expose function

* move implementation

* docs

* docs

* docs

* Update lib.rs

* Update lib.rs

* unexpose functions

* unused dependency

* update Cargo.lock

* Update frame/nomination-pools/src/lib.rs

* Update lib.rs

* Update lib.rs

* Update frame/nomination-pools/rpc/runtime-api/src/lib.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* remove rpc

* remove rpc directory

* final fix

Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2022-07-26 11:06:48 +02:00
Sacha Lansky a37226d09e Fix typos (#11914) 2022-07-26 00:09:50 +02:00
Qinxuan Chen 16ef0cee93 Pruned duplicated dependencies (#11900)
* Update comfy-table v5.0.1 => v6.0.0

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* Update strum v0.23.0 => v0.24.1

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* Update h2 v0.3.9 => v0.3.13

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* Update file-per-thread-logger v0.1.4 => v0.1.5

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* Update mio v0.8.0 => v0.8.4

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* revert twox-hash

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* Update secp256k1 v0.21.2 => v0.24.0

Signed-off-by: koushiro <koushiro.cqx@gmail.com>
2022-07-25 16:52:11 +00:00
Alexander Theißen c470e9d11d contracts: Allow ChainExtension::call() to access &mut self (#11874)
* Give chain extensions the ability to store some temporary values

* Update frame/contracts/src/wasm/runtime.rs

Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>

* Rename func_id -> id

* Replace `id` param by two functions on `env`

Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>
2022-07-25 15:48:01 +00:00
Kian Paimani 626140454d remove FunctionOf (#11897)
* remove FunctionOf

* fix docs

Co-authored-by: parity-processbot <>
2022-07-25 15:20:19 +00:00
Falco Hirschenberger 3afa175a4c Add era to Unbonded event (#11770)
* Add era to `Unbonded` event

fixes #11749

* Fix missing tests

* Add comment for `era` field in `Unbonded` struct.

Co-authored-by: parity-processbot <>
2022-07-25 14:53:12 +00:00
Ikko Ashimine b4017a4509 Fix typo in limits.rs (#11894)
alway -> always
2022-07-24 22:42:49 +02:00
Bastian Köcher 5cbf7ab224 pallet-assets: Update docs (#11877) 2022-07-23 19:28:25 +00:00
Branislav Kontur b3bd5cee54 Fix for 'note_applied_extrinsic' - consider also 'extract_actual_pays_fee' (#11849) 2022-07-23 18:01:57 +00:00
Robert Hambrock 05c71381c0 pallet-mmr: fix batch proof failures (#11840)
* pallet-mmr: extend batch proof verification test

covers all possible 2-leaf combinations now, including current
verification failures that batch proof item count limit is too low
sometimes.

* raise upper bound on proof item number

as described in
https://github.com/paritytech/substrate/issues/11753#issuecomment-1179838174

* test for powerset of leaves

* refactor batch proof verification test

* test all batch proofs for mmr sizes up to n=13

* limit mmr size to reduce batch proof test duration

* use saturating integer addition for proof check

* extract common chain building in batch proof tests

note: right now, since not killing old chain, it keeps growing by 7
blocks for every leaf selection (added after proof generation), hence
heavier to compute.

* only add blocks after a proof generation once

* increase batch proof testing range

* register offchain extensions only once

* fmt & remove unused util
2022-07-21 18:09:21 +03:00
Torsten Stüber 4e787fbd30 Fix invalid state transitions in pallet-bounties (#11630)
* Pallet-bounty: disallow invalid state transitions

* Fix tests: funding only at even block numbers

* Fix benchmarks: bounties need to be funded

* fix on_initialize

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2022-07-18 12:56:22 +00:00
cheme 20abd5dc24 Expose and link trie migration weights (#11775)
* expose and link trie migration weights

* actually limit to one trait

* Run test on dummy weights

* fmt

Co-authored-by: Bastian Köcher <info@kchr.de>
2022-07-17 22:57:13 +00:00
lumir-mrkva 4c0b765980 assert noop notifies that storage has been mutated (#11805) 2022-07-17 19:28:32 +00:00
Alexander Theißen 8dbfcd3928 contracts: Composable ChainExtension (#11816)
* Add `RegisteredChainExtension`

* Add tests

* Update frame/contracts/src/chain_extension.rs

Co-authored-by: Michael Müller <michi@parity.io>

* Add more docs

* Remove debugging leftover

* Make ChainExtension-registry lowercase

* Apply suggestions from code review

Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>

* Improve clarity of test inputs

Co-authored-by: Michael Müller <michi@parity.io>
Co-authored-by: Hernando Castano <HCastano@users.noreply.github.com>
2022-07-14 18:14:28 +00:00
Kian Paimani a98010a889 Fix nomination pools unbonding logic (#11746)
* make pool roles optional

* undo lock file changes?

* add migration

* add the ability for pools to chill themselves

* boilerplate of tests

* somewhat stable, but I think I found another bug as well

* Fix it all

* Add more more sophisticated test + capture one more bug.

* Update frame/staking/src/lib.rs

* reduce the diff a little bit

* add some test for the slashing bug

* cleanup

* fix lock file?

* Fix

* fmt

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/mock.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix build

* fix some fishy tests..

* add one last integrity check for MinCreateBond

* remove bad assertion -- needs to be dealt with later

* nits

* fix tests and add benchmarks for chill

* remove stuff

* fix benchmarks

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark pallet --chain=dev --steps=50 --repeat=20 --pallet=pallet_nomination_pools --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/nomination-pools/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* remove defensive

* first working version

* bring back all tests

* ALL new tests work now

* cleanup

* make sure benchmarks and all work

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark pallet --chain=dev --steps=50 --repeat=20 --pallet=pallet_nomination_pools --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/nomination-pools/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* round of self-review, make arithmetic safe

* fix warn

* add migration code

* Fix doc

* add precision notes

* make arithmetic fallible

* fix node runtime

* a lot of precision tests and notes and stuff

* document MaxPOintsToBalance better

* :round of self-review

* fmt

* fix some comments

* new logic, some broken tests

* Check if after unbonding remaining balance is more or equal to MinJoinBond and is not zero

* incorporate nikos' work

* make it work again

* merge

* Fix all tests

* fix all tests

* some updates

* Add tests

* remove erroneoysly placed comment

* Try to make lint pass

* Try to make lint pass

* revamp the tests for unbond

* fix docs

* Fix proportional slashing logic

* Update frame/nomination-pools/src/tests.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/tests.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* track poinst in migration

* fix

* fmt

* fix migration

* remove event read

* Apply suggestions from code review

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>

* remove log

* Update frame/staking/src/lib.rs

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>

* update

* fmt

* fmt

* add one last test

* fmrt

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/tests.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Parity Bot <admin@parity.io>
Co-authored-by: wirednkod <wirednkod@gmail.com>
2022-07-14 09:57:59 +00:00
Emre Surmeli 4cacae72c5 Fix typo (#11832) 2022-07-14 08:21:21 +00:00
Kian Paimani f8d4b99917 Revamp nomination pool reward scheme (#11669)
* make pool roles optional

* undo lock file changes?

* add migration

* add the ability for pools to chill themselves

* boilerplate of tests

* somewhat stable, but I think I found another bug as well

* Fix it all

* Add more more sophisticated test + capture one more bug.

* Update frame/staking/src/lib.rs

* reduce the diff a little bit

* add some test for the slashing bug

* cleanup

* fix lock file?

* Fix

* fmt

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/mock.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Fix build

* fix some fishy tests..

* add one last integrity check for MinCreateBond

* remove bad assertion -- needs to be dealt with later

* nits

* fix tests and add benchmarks for chill

* remove stuff

* fix benchmarks

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark pallet --chain=dev --steps=50 --repeat=20 --pallet=pallet_nomination_pools --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/nomination-pools/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* remove defensive

* first working version

* bring back all tests

* ALL new tests work now

* cleanup

* make sure benchmarks and all work

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark pallet --chain=dev --steps=50 --repeat=20 --pallet=pallet_nomination_pools --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/nomination-pools/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* round of self-review, make arithmetic safe

* fix warn

* add migration code

* Fix doc

* add precision notes

* make arithmetic fallible

* fix node runtime

* a lot of precision tests and notes and stuff

* document MaxPOintsToBalance better

* :round of self-review

* fmt

* fix some comments

* Fix proportional slashing logic

* Update frame/nomination-pools/src/tests.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/tests.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>

* track poinst in migration

* fix

* fmt

* fix migration

* remove event read

* Apply suggestions from code review

* Update frame/staking/src/lib.rs

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>

* Update frame/nomination-pools/src/lib.rs

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>

* update

* fmt

* fmt

* add one last test

* fmt

Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Parity Bot <admin@parity.io>
2022-07-13 12:49:20 +00:00
Jegor Sidorenko 5d96c0a0ea Buy&Sell methods for Uniques (#11398)
* Allow to set item's price

* Clean the state when we transfer/burn an item or destroy a collection

* Allow to buy an item

* Remove redundant checks

* Improve events

* Cover with tests

* Add comments

* Apply suggestions

* Fmt

* Improvements for price validation

* Improve validation

* Update to use the new terminology

* Remove multi-assets support

* Chore

* Weights + benchmarking

* Shield against human error

* Test when we pass the higher item's price

* fmt fix

* Chore

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark pallet --chain=dev --steps=50 --repeat=20 --pallet=pallet_uniques --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/uniques/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* Remove is_frozen check when setting the price

* Try to fix benchmarking

* Fix benchmarking

* cargo run --quiet --profile=production  --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark pallet --chain=dev --steps=50 --repeat=20 --pallet=pallet_uniques --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/uniques/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* Add transactional

* Add 'allow deprecated' flag for transactional

* Remove #[allow(deprecated)]

* ".git/.scripts/bench-bot.sh" pallet dev pallet_uniques

Co-authored-by: Parity Bot <admin@parity.io>
Co-authored-by: command-bot <>
2022-07-13 12:41:20 +00:00
Kian Paimani 3ea6a88eba Fix off by one error in proportional slashing (#11782)
* Fix proportional slashing logic

* Update frame/nomination-pools/test-staking/src/lib.rs

Co-authored-by: David <dvdplm@gmail.com>

* Update frame/staking/src/lib.rs

Co-authored-by: David <dvdplm@gmail.com>

* Update frame/staking/src/lib.rs

Co-authored-by: David <dvdplm@gmail.com>

* Update frame/staking/src/lib.rs

Co-authored-by: David <dvdplm@gmail.com>

* fmt

* Update frame/nomination-pools/test-staking/src/lib.rs

* clean

* fix

* last fixes

* doc

Co-authored-by: David <dvdplm@gmail.com>
2022-07-13 10:09:28 +00:00
Kian Paimani 4b8d784210 prep council election pallet for being dissolved (#11790)
* prep council election pallet for being dissolved + make it temporarily bounded

* fix tests

* fix

* Update frame/elections-phragmen/src/lib.rs

* fix bench?
2022-07-12 17:08:54 +00:00