Commit Graph

2383 Commits

Author SHA1 Message Date
Kian Paimani ecccf46987 Fix Election when ForceNone V1 (#6166)
* Clean

* Better doc

* Better better doc

* Again better doc

* Fix indemt

* Update frame/staking/src/lib.rs

* Update frame/staking/src/lib.rs

* Better test

Co-authored-by: Gavin Wood <gavin@parity.io>
2020-05-28 11:41:51 +02:00
Shawn Tabrizi 7522a7a257 Add test for Transaction Payment on zero balance account (#6161)
* Test zero balance account with pays::no

* Update frame/transaction-payment/src/lib.rs

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

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-05-27 19:54:56 +02:00
Kian Paimani 8279ba96df Make Get<T> const friendly + Clean the runtime files a bit. (#6132)
* Make Get const friendly

* Better doc

* Grumble

* Better doc

* Clean runtime files more
2020-05-27 14:40:07 +02:00
Benjamin Kampmann b64f55089d Releasing rc2 (#6136) 2020-05-26 14:32:23 +02:00
Gavin Wood 42ad0d138f Filter calls in utility (#6131)
* Filter calls.

* Remove old proxy code

* Docs and repot

* Update frame/utility/src/tests.rs

Co-authored-by: Marcio Diaz <marcio.diaz@gmail.com>

* fix test

* Grumble

* Bump runtime version

* fix

* Attempt general fix

Co-authored-by: Marcio Diaz <marcio.diaz@gmail.com>
Co-authored-by: NikVolf <nikvolf@gmail.com>
2020-05-26 06:34:25 +02:00
Benjamin Kampmann fb32ac8c51 Tagging as rc1 2020-05-25 18:30:48 +02:00
Sergei Pepyakin b9f7b8baaa Tidy tests a bit. (#6122) 2020-05-25 17:25:57 +02:00
Kian Paimani 609f7daa12 Events and better log for staking. (#6118)
* Events and better log for staking.

* Fix build

* Update frame/staking/src/lib.rs

Co-authored-by: Marcio Diaz <marcio.diaz@gmail.com>

Co-authored-by: Marcio Diaz <marcio.diaz@gmail.com>
2020-05-25 17:11:47 +02:00
Kian Paimani 0133185c81 First draft of offchain phragmen weights (#6032)
* Fist draft of offchain weights

* Round of review feedback

* Update frame/staking/src/lib.rs

* Fix fuzzer

* Remove some redundant comment

* Weight refund for submit solution -- potentially revert.

* First version with custom trimming of the result.

* Update frame/staking/src/benchmarking.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Update frame/staking/src/benchmarking.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Apply suggestions from code review

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
Co-authored-by: thiolliere <gui.thiolliere@gmail.com>

* Update frame/staking/src/benchmarking.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Update frame/staking/src/benchmarking.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Some improvements

* Benchmark submit solution without phragmen (PR for First draft of offchain phragmen weights) (#6073)

* implementation of new benchmark

* address comments

* replace test

* Update frame/staking/src/lib.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* update weight

* Fix refund

* Clean and rady for final bench

* Fix line-wdith

* Fix gitlab build

* Fix line-wdith

* Fix test macro

* Update frame/staking/src/lib.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Update frame/staking/src/benchmarking.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Better length check

* Update frame/staking/src/lib.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Update final weight coefficients

* Update frame/staking/src/lib.rs

* Apply suggestions from code review

* Update frame/staking/src/testing_utils.rs

* Try and fix the line-width

* Revert "Try and fix the line-width"

This reverts commit b4e284727220085b9b3daf7682c4bbf29621da09.

* Try and fix the line-width the correct way

* Revert "Try and fix the line-width the correct way"

This reverts commit 04fce128e851c9584f9f0d708a5a73cae799d8c8.

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
Co-authored-by: thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Gavin Wood <gavin@parity.io>
2020-05-23 20:08:42 +02:00
thiolliere 40f3c7348e put max votes into metadata (#6114) 2020-05-22 15:08:51 +02:00
Xiliang Chen efae379676 make calls public (#6109) 2020-05-22 09:04:20 +02:00
Marcio Diaz 72386f609a Implement FixedPoint trait. (#5877)
* Implement Fixed trait.

* Fix tests

* Fix tests

* Fix tests 2

* Address review comment regarding from_i129.

* Remove precision by using log10() as suggested in review.

* Add small comments.

* Use checked versions + panic for ops::*.

* Remove repeated test.

* Uncomment test.

* Remove casts.

* Add more comments.

* Add tests.

* Panic on saturating_div_int

* More tests.

* More docs.

* Saturating renames.

* Fix to_bound doc.

* Move some impl to trait.

* Add range

* Add macro pre.

* More round() tests.

* Delete confusion.

* More impl to trait

* Add doc for fixedpoint op.

* Remove trailing spaces.

* Suggested docs changes.

* More tests and comments for roundings.

* Some quickcheck tests.

* Add missing panic, more test/comments.

* Nits.

* Rename.

* Remove primitives-types import.

* Apply review suggestions

* Fix long lines and add some fuzz.

* fix long line

* Update fuzzer

* Bump impl

* fix warnings

Co-authored-by: Gavin Wood <gavin@parity.io>
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-05-21 19:32:44 +02:00
joe petrowski dd7216af4c clarify docs on query_info and partial_fee (#6090) 2020-05-21 16:23:51 +02:00
Shawn Tabrizi 6ae0de5700 Keep BlockWeight in Storage (#6046)
* keep block weight in storage

* Update lib.rs

* rename to `BlockWeight`, update tests

* remove println

* make test better

* keep extrinsics length clean
2020-05-21 16:13:13 +02:00
Shawn Tabrizi ac049a97be Offences Weight for OnInitialize (#5961)
* Weight accounting for on_offence.

* Try to compute weight.

* Guesstimate upper bounds on db read/writes for slashing

* greater than or equal to

* add new trait

* Update mock.rs

* Add basic weight test

* one more test

* Update frame/staking/src/lib.rs

Co-authored-by: thiolliere <gui.thiolliere@gmail.com>

* Update frame/staking/src/lib.rs

Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>

* Add test for offences queue

Co-authored-by: Tomasz Drwięga <tomasz@parity.io>
Co-authored-by: thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
2020-05-21 14:00:24 +02:00
Demi Obenour ee6633e038 Add notes about safe uses of twox (#6082)
* Add notes about safe uses of twox

* Update frame/grandpa/src/lib.rs

Co-authored-by: Nikolay Volf <nikvolf@gmail.com>

* Update frame/elections/src/lib.rs

* Apply suggestions from code review

Co-authored-by: Gavin Wood <gavin@parity.io>
Co-authored-by: Nikolay Volf <nikvolf@gmail.com>
2020-05-21 13:57:29 +02:00
thiolliere b50c3338d6 Allow operational recovery path if on_initialize use fullblock. (#6089)
* note_preimage using operational

* Update frame/democracy/src/lib.rs

Co-authored-by: Gavin Wood <gavin@parity.io>
2020-05-21 13:51:47 +02:00
Alexander Theißen 9dd21b1eed Allow fee calculation to happen off-chain (#6076)
* Emit a PaymentParameters event once per block

This contains per-block paramaters need to calculate
fees off-chain.

* Add WeightToFee trait

* Add documentation to polynomial types

* Ignore pseudo code snippet for doc tests

* Use `Mul` implementation of Perbill

* Add tests for WeightToFeePolynomial

* Revert "Emit a PaymentParameters event once per block"

This reverts commit 6c4763baff3d8179676a3c1660fe7063fd56a8ca.

Co-authored-by: Gavin Wood <gavin@parity.io>
2020-05-21 12:16:04 +02:00
Wei Tang e04f237152 Make planning epoch config change in BABE easier (#5776)
* Make planning epoch config change in BABE easier

* Bump node runtime version

* Update frame/babe/src/lib.rs

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>

* BabeEpochConfiguration -> NextConfigDescriptor

* Add tests for babe config changes

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
Co-authored-by: André Silva <andre.beat@gmail.com>
2020-05-20 21:08:20 +01:00
Wei Tang 3f3753b8e4 evm: allow setting pre-defined accounts in genesis (#6086)
* evm: allow setting pre-defined accounts in genesis

* Only build GenesisAccount in std
2020-05-20 19:33:16 +00:00
Tomasz Drwięga f74a7171be Maximum extrinsic weight limit (#6067)
* Only check single extrinsics weight limit in validate_transaction.

* Add missing parameter to all pallets.

* Add tests, fix default configuration.

* Bump spec version.

* Use AvailableBlockRation to calculate MaxExtrinsicWeight
2020-05-20 15:05:16 +02:00
Kian Paimani 3acb19f54f Clean a number of sp_io imports (#6072) 2020-05-19 11:36:59 +02:00
Alexander Theißen 80accdbf7c Include post dispatch corrected weight in extrinsic events (#6024)
* Include post dispatch corrected weight in extrinsic events

* Drop the 'Post' from ApplyExtrinsicResultWithPostInfo to make it less verbose

* Apply suggestions from code review

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

* Use proper Event type in pallet_system tests

* Add test that the actual weight is returned by events

* Make fn extract_actual_weight cap at pre dispatch weight

* Bump spec version

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Gavin Wood <gavin@parity.io>
2020-05-18 18:44:29 +02:00
thiolliere 4644be3c90 Make decl_storage generated code respect clippy (#6065)
* fix clippy for code generated by decl_storage

* use as_ref
2020-05-18 18:43:18 +02:00
Wei Tang cd0ffec1fe Refactor EVM operations to module functions (#6056)
* Refactor EVM operations to module functions

* Bump impl version
2020-05-18 18:42:56 +02:00
Wei Tang 3048edd6ef Remove file accounts.scale (#6053) 2020-05-16 21:59:11 +02:00
Benjamin Kampmann 7c565085e9 resetting to -dev (#6050) 2020-05-16 19:03:04 +02:00
Benjamin Kampmann d7463d348f Releasing Alpha.8 (#6048) 2020-05-15 21:56:56 +02:00
Kian Paimani 7a8d59199e Benchmarks for elections-phragmen pallet (#5845)
* Fist benchmark barely working

* Debug checkpoint

* add rest of benchmarks

* Add to runtime

* Fix build

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

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

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

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

* major imp

* Make them run on release

* Help finish phragmen benchmarks (#5886)

* update caller, account, and member/runner-up creation

* remove stuff

* ocd

* make it work with real run

* relax the numbers a bit

* New and improved version

* Make elections-phragmen weighable and secure. (#5949)

* Make elections-phragmen weighable.

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

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

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

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Fix all tests

* Fix everything

* Add note

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Doc update

* Fix some complexity params

* Once more ready to benchmark

* ready for bench

* final tunes

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

* Fix fix

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

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

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

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

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Update to latest weights

* Some fixes

* Fix dual voter read from @thiolliere

* Remove todos

* review from @shawntabrizi

* Fix bench tests.

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2020-05-15 14:07:12 +02:00
thiolliere 1dbd761192 Democracy weight (#5828) 2020-05-15 13:25:43 +02:00
Benjamin Kampmann be8c96adec Relax substrate licensing scheme (#5947) 2020-05-15 13:21:56 +02:00
Shawn Tabrizi 71d3abe7d4 Update Staking Weights (#5964) 2020-05-15 11:07:19 +02:00
Demi Obenour ddea306044 Add ‘transaction_version’ to the signed transaction (#5979)
* Add ‘transaction_version’ to the signed transaction

This allows hardware wallets to know which transactions they can safely
sign.  To reduce transaction size, I reduced it to a ‘u8’ from a ‘u32’.

Fixes #5951.

* Restore transaction_version to a u32

* Fix comments

`transaction_version` is not part of a tx, but is still signed.

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

* Fix the test suite

I had forgotten to change the production of transactions in the test
code.

* Fix benchmarks

* Improve docs for `CheckTxVersion` in `frame_system`

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>

* Remove spurious cast

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
2020-05-15 00:01:56 +02:00
Alexander Popiak 9057d713d9 Collective weights (#5802) 2020-05-14 17:20:03 +02:00
emostov 71da6e96e6 Add tests to Sudo Pallet (#5963)
* transition treasury to configurable moduleids

* make election module id configurable

* convert runtime and pallet to accept module id config elections-phragmen

* add ModuleId to evm pallet

* change society pallet to configurable module id

* delete commented out module_id

* fix merge residual compile errors

* setup initial mock structure

* establish privelleged function test

* save progress

* first pass new_test_ext

* test sudo to make sure it error when non-root

* add set keys tests

* fix unused result from set_key call

* remove unused imports warnings

* pre master merge

* Expose BlockHashCount on system metadata constants (#5960)

* squash

* fix whitespace

* spelling and whitespace

* a single pesky space

* add logger module to mock

* add logger dispatch to privlleged function

* sub logger in for dummy functions

* create first of several event tests

* first pass at test coverage for events

* comment house keeping

* spell check

* Expose BlockHashCount on system metadata constants (#5960)

* establish privelleged function test

* save progress

* first pass new_test_ext

* test sudo to make sure it error when non-root

* add set keys tests

* fix unused result from set_key call

* remove unused imports warnings

* pre master merge

* squash

* fix whitespace

* spelling and whitespace

* a single pesky space

* add logger module to mock

* add logger dispatch to privlleged function

* sub logger in for dummy functions

* create first of several event tests

* first pass at test coverage for events

* comment house keeping

* implement last_seen_account storage item, event, and, logger function

* create vec account log and use in tests

* allow weight to be passed into account log

* refactor all log dispatchables

* save progress

* complete initial transition to refactored logger

* cleaning

* fix merge residual compile errors

setup initial mock structure

establish privelleged function test

save progress

first pass new_test_ext

test sudo to make sure it error when non-root

add set keys tests

fix unused result from set_key call

parent 5151bd784545ededa6153052a93fcc309f7b3885
author zeke <emostov@middlebury.edu> 1589076740 -0700
committer zeke <emostov@middlebury.edu> 1589350443 -0700

parent 5151bd784545ededa6153052a93fcc309f7b3885
author zeke <emostov@middlebury.edu> 1589076740 -0700
committer zeke <emostov@middlebury.edu> 1589350442 -0700

remove unused imports warnings

fix unused result from set_key call

remove unused imports warnings

pre master merge

Expose BlockHashCount on system metadata constants (#5960)

squash

fix whitespace

spelling and whitespace

a single pesky space

add logger module to mock

add logger dispatch to privlleged function

sub logger in for dummy functions

create first of several event tests

first pass at test coverage for events

comment house keeping

pre master merge

Expose BlockHashCount on system metadata constants (#5960)

Expose BlockHashCount on system metadata constants (#5960)

fix whitespace

spell check

implement last_seen_account storage item, event, and, logger function

create vec account log and use in tests

allow weight to be passed into account log

refactor all log dispatchables

save progress

complete initial transition to refactored logger

cleaning

* clean up

* cleaning

* condense non_privileged logs into 1 fn

* Apply suggestions from code review

Co-authored-by: Jaco Greeff <jacogr@gmail.com>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-05-13 22:48:49 +02:00
Paweł Nguyen 9a163aae52 Fix minor typos in im-online documentation (#5997)
* Fix minor typos on im-online documentation

* Update frame/im-online/src/lib.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-05-12 21:58:27 +02:00
André Silva ab208837fa grandpa: missing equivocation reporting nits (#5953)
* primitives: move reporting key type to common key types

* session: remove useless methods on MembershipProof

* grandpa: remove std special-casing when checking signatures

* grandpa: add some more docs

* grandpa: use proper error types rather than strings
2020-05-12 12:17:33 +01:00
André Silva 871761694e grandpa: update to finality-grandpa v0.12.3 (#5972) 2020-05-12 12:16:46 +01:00
Shawn Tabrizi 6013522ab0 Split Operational and Normal weight (#5954)
* Split operational and normal weight

* Update other parts of the code

* relatively minor changes to add/fix behavior

* Limit reported block weight for fee adjustment

* fix test

* explicit match

* Move common logic out

* Update frame/system/src/lib.rs

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

* API improvement @bkchr

Co-authored-by: Gavin Wood <gavin@parity.io>
2020-05-12 12:18:32 +02:00
Bastian Köcher 22db788c08 Optimize decode_len (#5975)
* Optimize `decode_len`

Instead of reading the full storage value into the runtime, we only read
at maximum `5bytes` from the storage into the runtime. Furthermore this
drops any handling with regards to set default values in
`decl_storage!`. If the value does not exists or the decoding of the
length fails, it will return `None`. To prevent people from messing
stuff up, this feature relies on the `StorageDecodeLength` trait that is
sealed by `frame-support` (aka only implementable inside this crate).

* Some clean ups

* Update frame/support/src/storage/mod.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2020-05-12 12:13:28 +02:00
Bastian Köcher 70923cdf7c Update initialize tests for latest rust stable (#5971)
* Update initialize tests for latest rust stable

* Update more tests

* AHHH

* Fix `runtime-interface` test

* ------------------------______________----------------------

* ...
2020-05-11 23:33:32 +02:00
Jimmy Chu 97259789dd Minor update on example-offchain-worker code and comment (#5970)
* Minor update on example-offchain-worker code and comment

Signed-off-by: Jimmy Chu <jimmychu0807@gmail.com>

* Update frame/system/src/offchain.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-05-11 17:44:20 +02:00
Kian Paimani b21b70f830 Fix very wrong staking test (#5952)
* fix this damn wrong staking test.

* Update frame/staking/src/tests.rs

* assert on balnce as well

* Make it a bit better.
2020-05-11 10:41:33 +02:00
Alexander Popiak f028c84a5b weight adjustments for identity and timestamp pallets (#5946) 2020-05-11 10:20:46 +02:00
Jaco Greeff c298b61375 Expose BlockHashCount on system metadata constants (#5960) 2020-05-09 13:44:40 +02:00
Wei Tang 9ecc1180fc Remove "simple declaration of the Module type" comments (#5944)
* Remove "simple declaration of the `Module` type" comments

* Bump runtime impl version

* Update bin/node/runtime/src/lib.rs

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

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-05-07 22:10:57 +02:00
thiolliere 0360080126 Fix and add benchs for democracy pallet (#5897)
* fix and add benchs

* Update frame/democracy/src/benchmarking.rs

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* bump spec version

* Revert "bump spec version"

This reverts commit 01233117dee575490bc71a4730cdc4351a4013ad.

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2020-05-07 14:52:56 +02:00
Shawn Tabrizi b0d17b02ea Update System Weights (#5888)
* Update system weights

* Use maximum block weight for scheduler

* Update offences to use full block

* Move weight inside if statement

* Add one read to offences `on_initialize`

* Delete factory test

* Revert "Delete factory test"

This reverts commit 8f95aacd63a028ef1b415185b45367b4140d86fd.

* Revert "Add one read to offences `on_initialize`"

This reverts commit 7df7ebc73625ed79b14086f13c247d4058ee87d6.

* Revert "Move weight inside if statement"

This reverts commit 87277d07913a7d1868eeee85ef4673f51ee4013b.

* Revert "Update offences to use full block"

This reverts commit 0bbe0ce18e9419b032157f7d37dea6481078cdc0.

* Use scheduler in Sudo

* Apply suggestions from code review

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* Revert "Use scheduler in Sudo"

This reverts commit 95bd2768dfea100bdf682cf4fe6c0f46e8e1f66e.

* remove max extrinsic weight (it does nothing useful)

* fix tests

* introduce `sudo_unchecked_weight`

* bump spec version

* scheduler 80 percent of maximum

* Update `set_changes_trie_config` weight

* Update bin/node/runtime/src/lib.rs

* Update frame/democracy/src/tests.rs

* Update tests.rs

* update based on feedback

Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2020-05-07 14:33:33 +02:00
Shawn Tabrizi d8b7520a90 Extend Schedule Pallet for Root Scheduling/Canceling (#5907)
* Add root dispatch to scheduler

* Move encode operation upwards

* fix benchmark

* extend extrinsics

* add some clarifying comments

* start to add benchmarking

* finish weights

* remove double encode

* bump spec

* Update weights

* more accurate weights

* bump base weight
2020-05-07 11:47:23 +02:00
Dan Forbes 848803aba2 Fix docs (#5928)
* Fix docs

* Update frame/support/src/dispatch.rs

Prettier link

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

* Update primitives/runtime/src/traits.rs

Prettier link

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

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-05-06 23:22:35 +02:00