Gavin Wood
4ad1ad2c60
Logic for the (Core) Fellowship ( #13503 )
...
* More drafting
* Paymaster pallet
* Fix build
* More tests
* Rename
* Rename
* Renaming
* Revert old changes
* Multi-phase payouts to avoid bank-runs
* Tests
* Tests
* Allow payment to be targeted elsewhere
* Proper ssync payment failure handling
* Test for repayment
* Docs
* Impl RankedMembers for RankedCollective
* Implement Pay for Pot (i.e. basic account).
* Benchmarks
* Weights
* Introduce Salary benchmark into node
* Fix warning
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_salary
* Update primitives/arithmetic/src/traits.rs
Co-authored-by: Jegor Sidorenko <5252494+jsidorenko@users.noreply.github.com >
* Update frame/salary/src/lib.rs
Co-authored-by: Jegor Sidorenko <5252494+jsidorenko@users.noreply.github.com >
* Update lib.rs
* Update frame/salary/src/lib.rs
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
* Docs
* Update frame/salary/src/lib.rs
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
* Update frame/salary/src/lib.rs
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
* Fix
* Fixes
* Fixes
* Move some salary traits stuff to a shared location
* Initial draft
* Comment out bits
* Fix
* First couple of tests
* One more test
* Update frame/salary/src/lib.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update frame/salary/src/lib.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Mul floor
* Tests
* Mul floor
* Fix warnings
* Fix test
* Tests
* Last tests
* Docs
* Fix warnings
* Benchmarks
* Weights
* Integrate benchmark
* Fixes
* Fix
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_core_fellowship
* Better process flow
* Fix benchmarks & tests
* Docs
* Fixes
* Fixes
* docs
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_core_fellowship
* Docs and allow custom evidence size
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_core_fellowship
* Update frame/core-fellowship/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update frame/core-fellowship/src/tests.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update frame/core-fellowship/src/benchmarking.rs
* Update frame/core-fellowship/src/benchmarking.rs
* Apply suggestions from code review
* Rename
* Update primitives/arithmetic/src/traits.rs
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
* Reduce magic numbers
* Update frame/core-fellowship/src/lib.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update frame/core-fellowship/src/lib.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Benchmark result
* Remove dependency
* set_params should pay
* induct should pay
* Remove some other free calls
---------
Co-authored-by: command-bot <>
Co-authored-by: Jegor Sidorenko <5252494+jsidorenko@users.noreply.github.com >
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
2023-03-11 13:11:15 +01:00
Jegor Sidorenko
689c2f6d4e
Nfts: minor fixes ( #13576 )
...
* Rename owner_of_item to owned_item
* Move AttributeNamespace into the types file
2023-03-10 09:52:10 +00:00
Jun Jiang
03b2358dd1
Nfts: Make ItemConfig members pub ( #13575 )
2023-03-10 08:44:23 +00:00
Jun Jiang
72c7ffd01a
Add amalgamation traits for NFT CollectionId and ItemId ( #13514 )
...
* Add amalgamation traits for NFT CollectionId, ItemId, and DestroyWitness
* Apply @bkchr suggests
* ".git/.scripts/commands/fmt/fmt.sh"
---------
Co-authored-by: command-bot <>
2023-03-09 17:44:26 +00:00
Jun Jiang
96ea707603
Make pallet_nfts storages public ( #13517 )
2023-03-09 15:57:02 +00:00
Davide Galassi
9dd10d131d
Offences report system rework ( #13425 )
...
* Experiments with common equivocation trait
* Improved equivocation trait
* Fix grandpa equivocation implementation
* Remove some cruft
* Remove some more cruft
* More generic naming
* Simplification of offences manipilation
* More refactory
* Some prograss with the encapsulation of offence report system
* Finally unit type works as a universal null report system
* Align substrate node code
* Further simplification
* Fix test utils
* Remove not required associated type
* Fix benches
* Rollback to prev field name
* Box big params
* Fix typo
* Remove new tag computation
* Remove default implementations
* Better docs
* Return 'Result' instead of bool
* Change offence report system return types
* Some renaming and documentation
* Improve documentation
* More abstract offence report system
* Rename 'consume_evidence' to 'process_evidence'
* Further docs refinements
* Doc for dummy offence report
* Fix rustdoc
* Fix after master merge
* Apply code review suggestions
* Improve docs
2023-03-07 20:25:55 +00:00
Oliver Tale-Yazdi
e16f15119f
MessageQueue: unknit permanently overweight books (#13528 )
...
* Unknit permanently overweight books
A book with only permanently overweight messages should be unkit
from the ready ring. This does currently not happen since perm.
overweight messages are not counted as "processed" and therefore
not increase the "total_processed" counter.
This is only a problem when the next and only message that is
processed is overweight. Eventually this should resolve itself
when another non-overweight message is enqueued and processed.
But for correctness it should be unknitted.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* One more tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet-message-queue
---------
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: command-bot <>
2023-03-07 11:31:57 +00:00
afm
d86a32630b
Pub enum runtime to pub struct runtime ( #13250 )
...
* pub enum Runtime -> pub struct Runtime
* changing some more
* fmt
* updating *.stderr files
* re-run trybuild after rust update
* keep a test file for `pub enum Runtime`
* Delete construct_runtime_2.rs
* ".git/.scripts/commands/fmt/fmt.sh"
---------
Co-authored-by: Bastian Köcher <git@kchr.de >
Co-authored-by: parity-processbot <>
2023-03-07 12:14:12 +01:00
Koute
03158cd48f
Switch to the blake2b_simd crate in sp-core-hashing ( #13548 )
...
* Switch to the `blake2b_simd` crate in `sp-core-hashing`
* ".git/.scripts/commands/bench/bench.sh" pallet dev frame_benchmarking
---------
Co-authored-by: command-bot <>
2023-03-07 08:57:16 +00:00
yjh
9b9964394e
chore: reduce copy times for bytes in core-hashing ( #13519 )
...
* chore: reduce copy bytes for core-hashing
* improve by suggestions and remove unused `xx_into`
* chore: replace sha2 crate by `sp_core::hashing` for pallet-alliance
* fix features
* use sp-core-hashing directly
* add to dev-dep
2023-03-06 14:09:07 +00:00
Sasha Gryaznov
f85d6dc6dd
[contracts] Forbid calling back to contracts after switching to runtime ( #13443 )
...
* save: compiles and tests pass
* save: added global
* done + test
* cleanup
* changelog update
* cleanup
* address feedback, step 1
* address feedback, step 2
* address feedback, step 3
* returned updated gas_estimation_call_runtime test
* clippy fix
* address feedback, step 4
* address feedback, step 5
* move data from context to inputs
* docs fix
* Apply suggestions from code review
Co-authored-by: Alexander Theißen <alex.theissen@me.com >
* address feedback, step 6
---------
Co-authored-by: Alexander Theißen <alex.theissen@me.com >
2023-03-06 08:40:03 +00:00
abebeos
ebc5218381
FRAME: add a basic readme ( #13520 )
2023-03-04 13:01:04 +00:00
Gavin Wood
8c3df96377
Just a typo ( #13533 )
...
* Typo
* Update Salary weight
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix test
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 >
2023-03-04 11:38:22 +00:00
Sergej Sakac
1d6423b41d
Assets pallet: Don't allow set_min_balance when sufficient ( #13510 )
...
* Assets pallet: Don't allow set_min_balance when sufficient
* fix
* fix benchmark
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_assets
* Update frame/assets/src/lib.rs
* fix
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_assets
---------
Co-authored-by: command-bot <>
Co-authored-by: Bastian Köcher <git@kchr.de >
2023-03-03 21:39:45 +01:00
Gavin Wood
e4bf9f2125
Salary pallet ( #13378 )
...
* More drafting
* Paymaster pallet
* Fix build
* More tests
* Rename
* Rename
* Renaming
* Revert old changes
* Multi-phase payouts to avoid bank-runs
* Tests
* Tests
* Allow payment to be targeted elsewhere
* Proper ssync payment failure handling
* Test for repayment
* Docs
* Impl RankedMembers for RankedCollective
* Implement Pay for Pot (i.e. basic account).
* Benchmarks
* Weights
* Introduce Salary benchmark into node
* Fix warning
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_salary
* Update primitives/arithmetic/src/traits.rs
Co-authored-by: Jegor Sidorenko <5252494+jsidorenko@users.noreply.github.com >
* Update frame/salary/src/lib.rs
Co-authored-by: Jegor Sidorenko <5252494+jsidorenko@users.noreply.github.com >
* Update lib.rs
* Update frame/salary/src/lib.rs
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
* Docs
* Update frame/salary/src/lib.rs
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
* Update frame/salary/src/lib.rs
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
* Fix
* Fixes
* Fixes
* Move some salary traits stuff to a shared location
* Fix
* Update frame/salary/src/lib.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update frame/salary/src/lib.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Mul floor
* Fix warnings
* Fix test
* Docs
---------
Co-authored-by: command-bot <>
Co-authored-by: Jegor Sidorenko <5252494+jsidorenko@users.noreply.github.com >
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2023-03-03 19:05:01 +00:00
Jegor Sidorenko
889e1ceab1
[NFTs] Emit new PalletAttributeSet event ( #13525 )
...
* Emit new PalletAttributeSet event
* Chore
2023-03-03 12:17:55 +00:00
Oliver Tale-Yazdi
9e56e1acdd
Deprecate Weight::from_{ref_time, proof_size} ( #13475 )
...
* Deprecate Weight::from_{ref_time, proof_size}
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update templates
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use from_parts
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use from_parts
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Dont revert comment 🤦
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_balances
* Update weight files
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* More fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Adapt to Master changes
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: command-bot <>
2023-03-02 21:28:17 +00:00
Jegor Sidorenko
7981d4aa59
Return account's asset balances ( #13352 )
...
* Runtime method to get user's assets balances
* Fix test (typo)
* Update frame/assets/src/functions.rs
* Remove instance param
* Update frame/assets/src/functions.rs
Co-authored-by: Bastian Köcher <git@kchr.de >
* Remove instance param
* Refactor
* Chore
* Update doc
---------
Co-authored-by: Bastian Köcher <git@kchr.de >
Co-authored-by: parity-processbot <>
2023-03-02 13:58:41 +00:00
André Silva
2c37de32bf
im-online: don't disable offending validators ( #13493 )
2023-03-02 12:38:12 +00:00
Sergej Sakac
2b29966f75
Assets pallet: Giving the asset owner the ability to set minimum balance ( #13486 )
...
* set_min_balance
* allow when new_min_balance < old_min_balance
* add more specific event
* Update frame/assets/src/lib.rs
Co-authored-by: Bastian Köcher <git@kchr.de >
* Update frame/assets/src/lib.rs
Co-authored-by: Bastian Köcher <git@kchr.de >
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_assets
* use actual weight
---------
Co-authored-by: Bastian Köcher <git@kchr.de >
Co-authored-by: command-bot <>
2023-03-02 10:16:47 +00:00
Piotr Mikołajczyk
9720a8749a
Expose ChargedAmount ( #13488 )
...
* Expose `ChargedAmount`
* Fix imports
2023-03-01 14:35:32 +01:00
Koute
55263fa2a1
Speed up storage iteration from within the runtime ( #13479 )
...
* Speed up storage iteration from within the runtime
* Move the cached iterator into an `Option`
* Use `RefCell` in no_std
* Simplify the code slightly
* Use `Option::replace`
* Update doc comment for `next_storage_key_slow`
2023-03-01 08:58:18 +00:00
Davide Galassi
1ef9c473e7
Move BEEFY code to consensus ( #13484 )
...
* Move beefy primitives to consensus dir
* Move beefy gadget to client consensus folder
* Rename beefy crates
2023-02-28 15:56:22 +01:00
Oliver Tale-Yazdi
1eb0cd31b9
Fix V2 PoV benchmarking ( #13485 )
...
* Bump default 'additional_trie_layers' to two
The default here only works for extremely small runtimes, which have
no more than 16 storage prefices. This is changed to a "sane" default
of 2, which is save for runtimes with up to 4096 storage prefices (eg StorageValue).
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update tests and test weights
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix PoV weights
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_balances
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_message_queue
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_glutton
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_glutton
* Fix sanity check
>0 would also do as a check, but let's try this.
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: command-bot <>
2023-02-28 13:47:36 +00:00
Bastian Köcher
6aa4127a74
pallet-treasury: Ensure we respect max_amount for spend across batch calls (#13468 )
...
* `pallet-treasury`: Ensure we respect `max_amount` for spend across batch calls
When calling `spend` the origin defines the `max_amount` of tokens it is allowed to spend. The
problem is that someone can send a `batch(spend, spend)` to circumvent this restriction as we don't
check across different calls that the `max_amount` is respected. This pull request fixes this
behavior by introducing a so-called dispatch context. This dispatch context is created once per
outer most `dispatch` call. For more information see the docs in this pr. The treasury then uses
this dispatch context to attach information about already spent funds per `max_amount` (we assume
that each origin has a different `max_amount` configured). So, a `batch(spend, spend)` is now
checked to stay inside the allowed spending bounds.
Fixes: https://github.com/paritytech/substrate/issues/13167
* Import `Box` for wasm
* FMT
2023-02-27 17:49:16 +00:00
Muharem Ismailov
85a5a5db13
constructor for MemberRecord ( #13473 )
2023-02-27 16:41:23 +00:00
Davide Galassi
40c36c0c8a
Move grandpa crates to consensus folder ( #13458 )
...
* Move grandpa under consensus dir
* Rename grandpa folder
* Finish grandpa renaming
* Minor tweaks
* Cargo fmt
* Adjust path to chain spec
2023-02-27 17:15:08 +01:00
Oliver Tale-Yazdi
16773d3696
Yieldable queues for pallet MessageQueue ( #13424 )
...
* Add Yield message processing error
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add NoopServiceQueues
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Implement temporary error aka Yield
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Make NoopMessageProcessor generic
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Mock pausable message processor
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Test paused queues
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Integration test paused queues
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use WeightMeter instead of weight return
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fix
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Make compile
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_message_queue
* Fix test
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: command-bot <>
2023-02-25 16:13:20 +00:00
Gonçalo Pestana
c848d40775
Revert "Abstracts elections-phragmen pallet to use NposSolver ( #12588 )" ( #13451 )
...
This reverts commit b793666ca5 .
2023-02-23 12:15:08 -06:00
Daniel Shiposha
4af011f418
Nfts attribute read interface ( #13349 )
...
* feat: add custom and system attributes to Inspect
* feat: add nfts runtime api
* fix: pass std feature to runtime api
* fix: api copyright
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
---------
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
2023-02-23 15:06:12 +00:00
Gonçalo Pestana
b793666ca5
Abstracts elections-phragmen pallet to use NposSolver ( #12588 )
...
* Abstracts elections-phragmen pallet to use NposSolver
* Update frame/elections-phragmen/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update frame/elections-phragmen/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* changes the name of the pallet; adds changelog
* update changelog
* Adds weight testing
* Adds log macro_rules
* renames elections-phragment dir to elections
* weights rename
* fixes typo in cargo toml
* pre/post solve weight scafolding
* refactor do_post_election
* refactors into pre and post election solve for independent benchmarking
* deconstructs PreElectionResults struct
* updates benchmarking pre and post election solve; mock weights
* Update frame/elections/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update frame/elections/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* addresses PR comments
* adds pre_solve and post_sove weights
* Adds comments on election pallet id param name change
* ".git/.scripts/bench-bot.sh" pallet dev pallet_elections
* Finishes pre-post solve weights
* Update frame/elections/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update frame/elections/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Addresses PR comments: no panic in on_init path; nits
* Fixes node build
* Implements approval voting to use as a `NposSolver` (#13367 )
* Implements the approval voting methods in sp_npos_elections
* fmt
* remove unecessary file
* comment clarification
* re-run weights
* fix typo
* updates MaxVoters in tests for integrity_tests to pass
* Refactors election provider support benchmarks outside its own crate (#13431 )
* Refactors election provider support benchmarks outside its own crate
---------
Co-authored-by: command-bot <>
---------
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: parity-processbot <>
Co-authored-by: Ross Bulat <ross@parity.io >
2023-02-23 11:21:00 +00:00
Sam Johnson
55ff791d80
generation of real benchmark functions for benchmarking v2 ( #13224 )
...
* function generation with _name working, need to modify signature
* WIP
* support custom BenchmarkResult<T> type
* full support for BenchmarkResult<T> on benchmark function defs
* support () return type for benchmark function defs that don't use ?
* uncomment
* fix where clause handling
* fix benchmark function call bodies
* proper parsing of return type
* add UI tests for bad return type
* fix detection of missing last_stmt with defined return type
* UI tests covering missing last_stmt
* properly detect and complain about empty benchmark function defs
* fix missing Comma in Result<T, BenchmarkError> parsing + test
* add additional UI test
* allow complex path for BenchmarkResult and BenchmarkError in fn defs
* add UI tests covering complex path for BenchmarkResult, BenchmarkError
* retain doc comments and attributes
* also add attributes to struct
* add docs for benchmark function definition support
* fix imports on benchmark example
* fix issue with unused variables in extrinsic call fn def
* fix up docs
* remove support for v2::BenchmarkResult because it was confusing
* fix typo
* remove ability to use custom T for Result<T, BenchmarkError> in v2
* use missing call error instead of empty_fn()
* remove unneeded match statement
* Add a proper QED
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* fix other QED
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
* cargo fmt
* add an explicit error for non TypePath as return type
* tweak error warning and add a UI test for non TypePath return
* remove comment
* add docs about T and I generic params
* improve docs referring to section "below"
* pull out return type checking logic into its own function
* pull out params parsing into its own function
* pull out call_def parsing into its own function
* add doc comment for missing_call()
* replace spaces with tabs
* add a result-based example to the benchmarking examples
---------
Co-authored-by: Keith Yeung <kungfukeith11@gmail.com >
2023-02-22 14:09:11 +00:00
Jegor Sidorenko
af25310eb0
[NFTs] Update attributes with offchain signature ( #13390 )
...
* Allow to mint with the pre-signed signatures
* Another try
* WIP: test encoder
* Fix the deposits
* Refactoring + tests + benchmarks
* Add sp-core/runtime-benchmarks
* Remove sp-core from dev deps
* Enable full_crypto for benchmarks
* Typo
* Fix
* Update frame/nfts/src/mock.rs
Co-authored-by: Squirrel <gilescope@gmail.com >
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_nfts
* Add docs
* Add attributes into the pre-signed object & track the deposit owner for attributes
* Update docs
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_nfts
* Add the number of attributes provided to weights
* Support pre-signed attributes
* Update docs
* Fix merge artifacts
* Update docs
* Add more tests
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_nfts
* Update frame/nfts/src/types.rs
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
* Update types.rs
---------
Co-authored-by: Squirrel <gilescope@gmail.com >
Co-authored-by: command-bot <>
Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com >
2023-02-22 13:50:40 +00:00
Doordashcon
35a89957ca
permissionless bond_extra in nomination pools ( #12608 )
...
* create enum
* logic check
* add benchmarks
* -enum
* update
* bond extra other
* update
* update
* update
* cargo fmt
* Permissioned
* update
* cargo fmt
* update
* update index
* doc update
Co-authored-by: Ankan <10196091+Ank4n@users.noreply.github.com >
* doc update
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* cargo fmt
* bond_extra auto compound
* bond_extra_other
* Apply suggestions from code review
* Fixes from kian
* updates docs & test
* Update frame/nomination-pools/src/lib.rs
* Update frame/nomination-pools/src/lib.rs
* Update frame/nomination-pools/src/lib.rs
* Update frame/nomination-pools/src/lib.rs
* Update frame/nomination-pools/src/lib.rs
* Update frame/nomination-pools/src/tests.rs
* Update frame/nomination-pools/src/lib.rs
* Update frame/nomination-pools/src/tests.rs
* Update frame/nomination-pools/src/tests.rs
* Update frame/nomination-pools/src/tests.rs
* Update frame/nomination-pools/src/tests.rs
* Update frame/nomination-pools/src/tests.rs
* Update frame/nomination-pools/src/lib.rs
* Update frame/nomination-pools/src/tests.rs
* fixes + fmt
* expand ClaimPermissions + add benchmarks
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_nomination_pools
* tidy up claim payout benches
* fix
* + test: claim_payout_other_works
* comments, rename to set_claim_permission
* fix comment
* remove ClaimPermission on leave pool
* fix test
* ".git/.scripts/commands/fmt/fmt.sh"
* + test for ClaimPermissions::remove()
* impl can_bond_extra & can_claim_payout
---------
Co-authored-by: Ankan <10196091+Ank4n@users.noreply.github.com >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: kianenigma <kian@parity.io >
Co-authored-by: parity-processbot <>
Co-authored-by: Ross Bulat <ross@parity.io >
2023-02-22 12:17:11 +00:00
Daniel Shiposha
236bbbd5ef
Introduce EnsureOrigin to democracy.propose ( #13410 )
...
* feat: add submitorigin to democracy
* fix: democracy tests
* fix: SubmitOrigin doc comment
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
---------
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
2023-02-21 22:56:07 +00:00
Sergej Sakac
d5beaa5542
Glutton pallet ( #12833 )
...
* Pov-Limit pallet
* use Perbill & fixes
* fixes
* reads & writes
* update docs
* tests
* calculate weight
* fmt
* benchmark
* logic fix
* naming fix
* caclulate computation weight limit
* make the Hasher generic
* make the code compile
* generate weight
* fix on_idle
* fix
* fix
* make reading generic
* fix?
* fixes
* remove warning
* fix
* hasher fix :D
* change value
* test
* actual weight and expected weight are the same
* update
* fix
* add events
* remove useless line
* using actual hashing algorithm
* better readability
* fix nits
* Update
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* add migration
* hardcode proof_size in weights.rs
* format
* fixes
* Fix weight
* docs
* fix
* Update frame/pov-limit/src/lib.rs
Co-authored-by: Bastian Köcher <git@kchr.de >
* Update frame/pov-limit/src/lib.rs
Co-authored-by: Bastian Köcher <git@kchr.de >
* empty on_ilde & update weight.rs
* remove migration & fix benchmark
* remove migration from migrations
* initialize_pallet
* use blake2
* Update frame/pov-limit/Cargo.toml
Co-authored-by: Bastian Köcher <git@kchr.de >
* Update frame/pov-limit/src/lib.rs
Co-authored-by: Bastian Köcher <git@kchr.de >
* Update frame/pov-limit/Cargo.toml
Co-authored-by: Bastian Köcher <git@kchr.de >
* rename pallet
* make the wasters non-generic
* rename to glutton
* fix
* small fixes & run benchmark
* increase left over ref-time in tests
* Update frame/glutton/src/lib.rs
Co-authored-by: Bastian Köcher <git@kchr.de >
* or values
* fix
* generate weight
* Update frame/glutton/Cargo.toml
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fix nits
* Adjustments
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fix
* Update weights
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Tweak constants
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update weights
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* remove genesis config
* passing tests
* More precise results
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* update node-executor test
* Calculate number of iterations in advance
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* increase criteria
* Final fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update frame/glutton/src/tests.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update frame/glutton/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update frame/glutton/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* fix typos
* Update frame/glutton/src/lib.rs
Co-authored-by: Bastian Köcher <git@kchr.de >
* Update frame/glutton/src/lib.rs
Co-authored-by: Bastian Köcher <git@kchr.de >
* expand/shrink
* fmt
* Revert "Update frame/glutton/src/lib.rs"
This reverts commit 98a237afd27de3deb15ba381871e12f71a9d71b1.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use CountedStorageMap
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add benchmark
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use manual map counter
Something with the R/W count in the benchmarking result did not add
up. Need to investigate but for now just using a manual counter.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use new template
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Doc+typos
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_glutton
* Apply suggestions from code review
Co-authored-by: Koute <koute@users.noreply.github.com >
* Add minimal README
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_glutton
---------
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Bastian Köcher <git@kchr.de >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: command-bot <>
Co-authored-by: Koute <koute@users.noreply.github.com >
2023-02-21 22:39:27 +00:00
Vivek Pandya
bc53b9a03a
Remove years from copyright notes. ( #13415 )
...
* Change copyright year to 2023 from 2022
* Fix incorrect update of copyright year
* Remove years from copy right header
* Fix remaining files
* Fix typo in a header and remove update-copyright.sh
2023-02-21 18:46:41 +00:00
Oliver Tale-Yazdi
cd299d2b45
Add defensive_assert! macro ( #13423 )
...
* Add defensive_assert macro
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Apply review suggestions
Co-authored-by: Bastian Köcher <git@kchr.de >
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
---------
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2023-02-21 17:03:17 +00:00
Ross Bulat
00e159f770
Nomination Pools: Rename state-toggler to bouncer ( #13421 )
...
* rename state-toggler to bouncer
* add migration
* fmt
* bump storage version
* rm migration
* revert version
* ".git/.scripts/commands/fmt/fmt.sh"
---------
Co-authored-by: command-bot <>
2023-02-21 11:39:52 +00:00
Gonçalo Pestana
2f1ec07953
Staking and nomination pools runtime API improvements ( #13119 )
...
* Adds StakingAPI_nominations_quota and NominationPoolsApi_balanceToPoint and NominationPoolsApi_pointsToBalance runtime APIs
* Adds balance param to api_nominations_quota
* Update frame/nomination-pools/src/lib.rs
Co-authored-by: Anton <anton.kalyaev@gmail.com >
* Update frame/nomination-pools/src/lib.rs
Co-authored-by: Anton <anton.kalyaev@gmail.com >
* Addresses comments - returns zero instead of error in runtime api
* Update frame/staking/runtime-api/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update frame/staking/runtime-api/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Addresses PR comments
* Update frame/nomination-pools/runtime-api/Cargo.toml
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Fixes points_to_balance logic; adds tests
* test comment fix
* Update frame/nomination-pools/runtime-api/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update frame/nomination-pools/runtime-api/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Fix block pruning (#13323 )
* Referendum proposal's metadata (#12568 )
* referenda metadata
* todo comment
* remove TODO, update rustdocs
* referenda clear_metadata origin signed or root
* referenda metadata unit tests
* drop schema type for referenda metadata
* remove metadata type
* referenda metadata benches
* note different preimages
* metadata for democracy pallet
* metadata democracy pallet tests and benches
* fix cargo clippy
* update docs
* ".git/.scripts/bench-bot.sh" pallet dev pallet_democracy
* ".git/.scripts/bench-bot.sh" pallet dev pallet_referenda
* Update the doc frame/democracy/src/lib.rs
Co-authored-by: Roman Useinov <roman.useinov@gmail.com >
* Update the doc frame/democracy/src/lib.rs
Co-authored-by: Anthony Alaribe <anthonyalaribe@gmail.com >
* reference instead clone for take
Co-authored-by: Anthony Alaribe <anthonyalaribe@gmail.com >
* error rename BadMetadata to PreimageNotExist
* clear metadata within internal_cancel_referendum fn
* remove redundant clone
* collapse metadata api into one set_metadata method
* fmt
* review fixes
* not request preimage on set_metadata
* rename events and update docs
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_democracy
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_referenda
* rename reset_metadata to transfer_metadata
---------
Co-authored-by: command-bot <>
Co-authored-by: Roman Useinov <roman.useinov@gmail.com >
Co-authored-by: Anthony Alaribe <anthonyalaribe@gmail.com >
* Improve test coverage of the `Notifications` protocol (#13033 )
* Add handler and upgrade tests
* Add tests for `behaviour.rs`
* Apply review comments
* Update dependencies
* Apply suggestions from code review
Co-authored-by: Dmitry Markin <dmitry@markin.tech >
* Apply review comments
* Fix clippy
* Update mockall
* Apply review comment
---------
Co-authored-by: Dmitry Markin <dmitry@markin.tech >
* refactors runtime API logic to own pallet impl block
* removes unrelated changes
* Fixes cargo doc comments lint
* fixes node cargo
* fixes comment
* restart ci
* restart ci
* restart ci
---------
Co-authored-by: Anton <anton.kalyaev@gmail.com >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: parity-processbot <>
Co-authored-by: Arkadiy Paronyan <arkady.paronyan@gmail.com >
Co-authored-by: Muharem Ismailov <ismailov.m.h@gmail.com >
Co-authored-by: Roman Useinov <roman.useinov@gmail.com >
Co-authored-by: Anthony Alaribe <anthonyalaribe@gmail.com >
Co-authored-by: Aaro Altonen <48052676+altonen@users.noreply.github.com >
Co-authored-by: Dmitry Markin <dmitry@markin.tech >
2023-02-21 11:17:01 +00:00
Adrian Catangiu
67c250fecb
frame/beefy: prune entries in set id session mapping ( #13411 )
...
Add limit for the number of entries in the `SetIdSession` mapping.
For example, it can be set to the bonding duration (in sessions).
Signed-off-by: acatangiu <adrian@parity.io >
2023-02-21 10:50:41 +00:00
Michal Kucharczyk
7a10154188
BlockId removal: runtime-api refactor (#13255 )
...
* BlockId removal: refactor of runtime API
It changes the arguments of:
- `ApiExt` methods: `has_api`, `has_api_with`, `api_version`
- `CallApiAt` method: `runtime_version_at`
from: `BlockId<Block>` to: `Block::Hash`
It also changes the first argument of all generated runtime API calls from: `BlockId<Block>` to: `Block::Hash`
This PR is part of BlockId::Number refactoring analysis (paritytech/substrate#11292 )
* BlockId removal: refactor of runtime API - tests
- tests adjusted to new runtime API,
- some tests migrated from block number to block hash
* benchmarking-cli: BlockId(0) migrated to info().genesis_hash
`runtime_api.call()` now requires the block hash instead of BlockId::Number.
To access the genesis hash widely used in benchmarking engine the Client
was constrained to satisfy `sp_blockchain::HeaderBackend<Block>` trait
which provides `info().genesis_hash`.
* trivial: api.call(BlockId) -> api.call(Hash)
- Migrated all `runtime_api.calls` to use Hash
- Noteworthy (?):
-- `validate_transaction_blocking` in transaction pool,
* CallApiAtParams::at changed to Block::Hash
* missed doc updated
* Apply suggestions from code review
Co-authored-by: Bastian Köcher <git@kchr.de >
* ".git/.scripts/commands/fmt/fmt.sh"
* BlockId removal: Benchmark::consumed_weight
Little refactor around `Benchmark::consumed_weight`: `BlockId` removed.
* at_hash renamed
* wrong merge fixed
* beefy worker: merged with master
* beefy: tests: missing block problem fixed
* Apply review suggestion
* fix
---------
Co-authored-by: Bastian Köcher <git@kchr.de >
Co-authored-by: command-bot <>
2023-02-20 22:47:21 +00:00
Sasha Gryaznov
ac13aaeb2f
rename call_runtime() returned error ( #13412 )
2023-02-20 16:45:54 +01:00
André Silva
64bff4529d
babe: account for skipped epochs when handling equivocations ( #13335 )
...
* babe: account for skipped epochs when handling equivocations
* typos
* babe: enforce epoch index >= session index
2023-02-17 11:46:43 +00:00
Adrian Catangiu
c21f292a02
BEEFY: implement equivocations detection, reporting and slashing ( #13121 )
...
* client/beefy: simplify self_vote logic
* client/beefy: migrate to new state version
* client/beefy: detect equivocated votes
* fix typos
* sp-beefy: add equivocation primitives
* client/beefy: refactor vote processing
* fix version migration for new rounds struct
* client/beefy: track equivocations and create proofs
* client/beefy: adjust tests for new voting logic
* sp-beefy: fix commitment ordering and equality
* client/beefy: simplify handle_vote() a bit
* client/beefy: add simple equivocation test
* client/beefy: submit equivocation proof - WIP
* frame/beefy: add equivocation report runtime api - part 1
* frame/beefy: report equivocation logic - part 2
* frame/beefy: add pluggable Equivocation handler - part 3
* frame/beefy: impl ValidateUnsigned for equivocations reporting
* client/beefy: submit report equivocation unsigned extrinsic
* primitives/beefy: fix tests
* frame/beefy: add default weights
* frame/beefy: fix tests
* client/beefy: fix tests
* frame/beefy-mmr: fix tests
* frame/beefy: cross-check session index with equivocation report
* sp-beefy: make test Keyring useable in pallet
* frame/beefy: add basic equivocation test
* frame/beefy: test verify equivocation results in slashing
* frame/beefy: test report_equivocation_old_set
* frame/beefy: add more equivocation tests
* sp-beefy: fix docs
* beefy: simplify equivocations and fix tests
* client/beefy: address review comments
* frame/beefy: add ValidateUnsigned to test/mock runtime
* client/beefy: fixes after merge master
* fix missed merge damage
* client/beefy: add test for reporting equivocations
Also validated there's no unexpected equivocations reported in the
other tests.
Signed-off-by: acatangiu <adrian@parity.io >
* sp-beefy: move test utils to their own file
* client/beefy: add negative test for equivocation reports
* sp-beefy: move back MmrRootProvider - used in polkadot-service
* impl review suggestions
* client/beefy: add equivocation metrics
---------
Signed-off-by: acatangiu <adrian@parity.io >
Co-authored-by: parity-processbot <>
2023-02-17 09:45:00 +00:00
Alexander Theißen
330484bb19
contracts: Don't rely on reserved balances keeping an account alive ( #13369 )
...
* Move storage deposits to their own account
* Take ed for contract's account from origin
* Apply suggestions from code review
Co-authored-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
Co-authored-by: Sasha Gryaznov <hi@agryaznov.com >
* Update stale docs
* Use 16 bytes prefix for address derivation
* Update frame/contracts/src/address.rs
Co-authored-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
* Fix merge
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_contracts
* Update frame/contracts/primitives/src/lib.rs
Co-authored-by: Sasha Gryaznov <hi@agryaznov.com >
---------
Co-authored-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
Co-authored-by: Sasha Gryaznov <hi@agryaznov.com >
Co-authored-by: command-bot <>
2023-02-16 15:58:28 +00:00
Alexander Theißen
1c04ab0f6f
contracts: Use proof_size from benchmarks ( #13268 )
...
* Avoid reading contract code when it is supplied in the extrinsic
* Remove custom proof size injection from schedule
* Set benchmarks pov_mode to Measure
* Reduce overestimation of code size on re-instrument
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_contracts
* Do not override proof size from benchmark
* Do not charge proof size for basic block
* Incrase gas limit for tests
* Fix deletion queue to also use `proof_size`
* Fix tests
* Update frame/contracts/src/schedule.rs
Co-authored-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
* Fix wrong schedule macro invocations
* Remove stale docs
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_contracts
* Handle zero components
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_contracts
* Fix instruction weight
---------
Co-authored-by: command-bot <>
Co-authored-by: Cyrill Leutwiler <bigcyrill@hotmail.com >
2023-02-15 22:56:50 +01:00
Sasha Gryaznov
53b7778599
[contracts] make debug_message execution outcome invariant to node debug logging setting ( #13197 )
...
* update benchmark for seal_debug_message
* add seal_debug_message_per_kb benchmark
* un-fallable debug buffer: silently drops excessive and wrong utf-8 encoded messages
* charge debug_message per byte of the message
* improved benchmark
* cap debug_message
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_contracts
* Apply suggestions from code review
Co-authored-by: Alexander Theißen <alex.theissen@me.com >
* fix applied buggy suggestion
* make sure i*1024 < MaxDebugBufferLen
* fix schedule for our non-batched benchmark
* Switch to a `wasmtime` fork with LTO linking failure workaround
* ".git/.scripts/commands/bench/bench.sh" pallet dev pallet_contracts
---------
Co-authored-by: command-bot <>
Co-authored-by: Alexander Theißen <alex.theissen@me.com >
Co-authored-by: Jan Bujak <jan@parity.io >
2023-02-14 18:28:34 +00:00
Bastian Köcher
4af64eb071
pallet-timestamp: Remove ValidAtTimestamp error variant ( #13346 )
...
* pallet-timestamp: Remove `ValidAtTimestamp` error variant
The error variant wasn't that useful and it was also used wrongly in the code. In the code we
returned this variant when the `timestamp < minimum`. The problem of this is that we waited on the
node side some time, but then `set` function rejects the timestamp because of the same check (the
timestamp in the block stays the same). We ensure that the timestamp isn't drifting too much in the
future, but waiting for the timestamp to be "valid" would open some attack vector. The consensus
protocols also compare the slots in the blocks to ensure that there isn't a block from the future
and in the runtime we then ensure that `slot = timestamp / slot_duration`. So, we can just remove
this variant and replace it with a new variant `TimeBetweenBlocksTooShort` to not even try importing
a block which uses a too short delay since the last block.
* Update primitives/timestamp/src/lib.rs
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com >
* Rename to `TooEarly`
* FMT
---------
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com >
2023-02-14 15:17:37 +00:00
Vivek Pandya
35e8e137c5
cleanup <weight></weight> from docs comments ( #13350 )
...
* cleanup <weight></weight> from docs comments
* Changes to address review commnets
* Fix CI cargo test --docs
---------
Co-authored-by: parity-processbot <>
2023-02-14 14:09:36 +00:00