* fix clippy replace clone with copy
* fix clippy warning pattern
* fix clippy warning replace into_iter with iter
* replace match with if let
* replace =0 with is_empty
* replace or with or_else
* replace vec! with Vec::new
* add concat Vec<u8> function and use it for better error logging in add_benchmark! macro
* refactor benchmark error reporting to use format! and RuntimeString
* tests: fix UI test so we can update CI image
* CI: remove diener installation from the script as it's installed in CI image
* tests: another fix
* tests: fix another fix
* tests: NLoEOF
* tests: another broken stderr
* Add rent_payed field to the contract info
* Don't pay out more as reward as was spent in rent
* Make successful evictions free
* Add tests to check that surcharge reward is capped by rent payed
* review: Fixed docs
* split authorities discovery keys for the current and next session
* Revert "split authorities discovery keys for the current and next session"
This reverts commit 0a40b8b4c14e85d95357a27f6db30199cbe0aa4d.
* pallet_authority_discovery: introduce a next_authorities method
* address feedback
* amend the doccomments
* Add `len` function that can return the length of a storage item efficiently
* Make use of the new len function in contracts
* Fix benchmarks
* cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* Remove unused imports
Co-authored-by: Parity Benchmarking Bot <admin@parity.io>
* Don't mutate storage when account is dead and should stay dead
* cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_balances --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/balances/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* more concrete storage noop
Co-authored-by: Parity Benchmarking Bot <admin@parity.io>
* Fix incorrect use of syn::exports
Instead of using `syn::exports` we should import the trait from the
quote crate directly.
* Use own macro for test cases to fix compilation with latest syn
* Fix test
* upgrade a few dependencies
* make it compile at the expense of duplicate deps
* fix web-wasm and a warning
* introduce activate-wasm-bindgen-features crate
* Revert "introduce activate-wasm-bindgen-features crate"
This reverts commit 5a6e41e683f8a4844c0a735dcd08caabb2313f11.
* add getrandom feature to sc-consensus-aura
* babe: expose next epoch data
* babe: add runtime api for next_epoch
* babe: avoid reading next authorities from storage unnecessarily
* babe: add notes about epoch duration constraints
* babe: guard against overflow
* babe: add test for fetching current and next epoch data
* commented use of common
* hack to pass tests
* another hack
* remove all commented code
* fix the easy tests
* temp hack
* follow through comma hack until better solution
* patch macro
* missed one
* update benchmarks
* update docs
* fix docs
* removed too much
* fix changes
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* improve error message on where clause on pallet error
* Revert "improve error message on where clause on pallet error"
This reverts commit 5a3cc38976813fccef3357833553ce30f5b988ea.
* Revert "Revert "improve error message on where clause on pallet error""
This reverts commit e3b3fca6bc4fa89816f80dbcb82dc4536a9b2549.
* Do not evict a contract from within a call stack
We don't want to trigger contract eviction automatically when
a contract is called. This is because those changes can be
reverted due to how storage transactions are used at the moment.
More Information:
https://github.com/paritytech/substrate/issues/6439#issuecomment-648754324
It can be re-introduced once the linked issue is resolved. In the meantime
`claim_surcharge` must be called to evict a contract.
* Lazily delete storage in on_initialize instead of when removing the contract
* Add missing documentation of new error
* Make Module::claim_surcharge public
It being the only dispatchable that is private is an oversight.
* review: Add final newline
* review: Simplify assert statement
* Add test that checks that partial remove of a contract works
* Premote warning to error
* Added missing docs for seal_terminate
* Lazy deletion should only take AVERAGE_ON_INITIALIZE_RATIO of the block
* Added informational about the lazy deletion throughput
* Avoid lazy deletion in case the block is already full
* Prevent queue decoding in case of an already full block
* Add test that checks that on_initialize honors block limits
* Make host functions return TrapReason
This avoids the need to manually store any trap reasons
to the `Runtime` from the host function. This adds the following
benefits:
* It properly composes with the upcoming chain extensions
* Missing to set a trap value is now a compile error
* Add chain extension
The chain extension is a way for the contract author to add new
host functions for contracts to call.
* Add tests for chain extensions
* Fix regression in set_rent.wat fixture
Not all offsets where properly updated when changing the fixtures
for the new salt on instantiate.
* Pre-charge a weight amount based off the specified length
* Improve fn write docs
* Renamed state to phantom
* Fix typo
* Make host functions return TrapReason
This avoids the need to manually store any trap reasons
to the `Runtime` from the host function. This adds the following
benefits:
* It properly composes with the upcoming chain extensions
* Missing to set a trap value is now a compile error
* review: Remove superflous .into()
* rename system Config to system Trait.
command used:
```
find frame/ bin/ test-utils/ utils/ -name *.rs -exec sed -i 's/system::Trait>::/system::Config>::/g' {} \;
find frame/ bin/ test-utils/ utils/ -name *.rs -exec sed -i 's/impl frame_system::Trait for /impl frame_system::Config for /g' {} \;
find frame/ bin/ test-utils/ utils/ -name *.rs -exec sed -i 's/impl system::Trait for /impl system::Config for /g' {} \;
```
plus some manual ones especially for frame-support tests and frame-system
* make construct_runtime handle Pallet and Module
pallets can now be implemented on struct named Pallet or Module, both
definition are valid.
This is because next macro will generate only Pallet placeholder.
* introduce pallet attribute macro
currently just with tests, frame_system and other example hasn't been
upgraded
* allow to print some upgrade helper from decl_storage
* Improved error msg, typo.
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* Improved error msg, typo.
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* Improved error message on unexpected attributes + ui test
* add test for transactional
* various typo
* some tips when spans are lost
* allow pallet to depend on other pallet instances
* make event type metadata consistent with call and constant
* error messages
* ignore doc example
* fix pallet upgrade template
* fixup
* fix doc
* fix indentation
* Apply suggestions code formatting
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
* some renames + fix compilation
* remove unsupported genesis config type alias
* merge fixup
* fix ui tests
* additional doc
* implement StorageInstance with new syntax
* fix line width
* fix doc: because pallet doc goes below reexport doc
* Update frame/support/procedural/src/pallet/parse/event.rs
Co-authored-by: Andrew Jones <ascjones@gmail.com>
* Update frame/system/src/lib.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
* Update frame/support/test/tests/pallet_ui.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
* improve doc as suggested
* revert construct_runtime Pallet part.
This revert the changes on construct_runtime. Now construct_runtime is
unchanged and instead pallet macro create a type alias
`type Module<..> = Pallet<..>` to be used by construct_runtime
* refactor with less intricated code
* fix ui test with new image
* fix ui tests
* add minor tests
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
Co-authored-by: Andrew Jones <ascjones@gmail.com>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>