Bastian Köcher
91989cab46
Adds with_pair! macro to application-crypto ( #4885 )
...
* Adds `with_pair!` macro to application-crypto
This macro will "generate" the given code only when the crypto pair is
available. So, when either the `std` or the `full_crypto` feature is
enabled.
* Fix example
2020-02-14 15:46:41 +01:00
Alexander Theißen
b999911bcf
Allow to distinguish out of gas from other traps ( #4883 )
...
* contracts: Allow to distinguish out of gas from other traps
When a contract encounters a runtime error a wasm trap is
triggered and the execution is halted. Currently, no matter
what was the cause for the trap it is always reported as:
DispatchError::Other("contract trapped during execution").
However, the trap that is triggered if a contract exhausts
its gas budget is particulary interesting. Therefore we add
a seperate error message for this cause:
DispatchError::Other("ran out of gas during contract execution").
A test is added hat executes a contract that never terminates.
Therefore it always exhausts is gas budget.
* fixup! contracts: Allow to distinguish out of gas from other traps
Remove overlong lines.
* fixup! contracts: Allow to distinguish out of gas from other traps
Rename Contract to Contracts
2020-02-14 11:46:45 +01:00
Gavin Wood
5b7512e2e4
Composite accounts ( #4820 )
...
* Basic account composition.
* Add try_mutate_exists
* De-duplicate
* Refactor away the UpdateBalanceOutcome
* Expunge final UpdateBalanceOutcome refs
* Refactor transfer
* Refactor reservable currency stuff.
* Test with the alternative setup.
* Fixes
* Test with both setups.
* Fixes
* Fix
* Fix macros
* Make indices opt-in
* Remove CreationFee, and make indices opt-in.
* Fix construct_runtime
* Fix last few bits
* Fix tests
* Update trait impls
* Don't hardcode the system event
* Make tests build and fix some stuff.
* Pointlessly bump runtime version
* Fix benchmark
* Another fix
* Whitespace
* Make indices module economically safe
* Migrations for indices.
* Fix
* Whilespace
* Trim defunct migrations
* Remove unused storage item
* More contains_key fixes
* Docs.
* Bump runtime
* Remove unneeded code
* Fix test
* Fix test
* Update frame/balances/src/lib.rs
Co-Authored-By: Shawn Tabrizi <shawntabrizi@gmail.com >
* Fix ED logic
* Repatriate reserved logic
* Typo
* Fix typo
* Update frame/system/src/lib.rs
Co-Authored-By: Shawn Tabrizi <shawntabrizi@gmail.com >
* Update frame/system/src/lib.rs
Co-Authored-By: Shawn Tabrizi <shawntabrizi@gmail.com >
* Last few fixes
* Another fix
* Build fix
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Jaco Greeff <jacogr@gmail.com >
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
2020-02-14 00:47:51 +00:00
Wei Tang
78b5a06200
pallet-evm: refactor duplicate code in call/create/create2 ( #4922 )
...
* pallet-evm: refactor duplicate code in call/create/create2
* Bump runtime version
2020-02-13 21:21:19 +01:00
Wei Tang
0f122445f6
pallet-evm: add support for transaction-level create2 ( #4907 )
...
* pallet-evm: add support for transaction-level create2
* Bump runtime version
* Switch to FunctionOf for weights
2020-02-13 19:12:26 +01:00
Kian Paimani
c871eaacbc
Per-things trait. ( #4904 )
...
* Give perthigns the trait it always deserved.
* Make staking and phragmen work with the new generic per_thing
* Make everything work together 🔨
* a bit of cleanup
* Clean usage
* Bump.
* Fix name
* fix grumbles
* hopefully fix the ui test
* Some grumbles
* revamp traits again
* Better naming again.
2020-02-13 13:09:33 +01:00
Xiliang Chen
35b5cdd29b
serialize partial_fee into string ( #4898 )
...
* serialize partial_fee into string
* implement deserialize
* bump version
2020-02-12 13:16:00 +01:00
Shawn Tabrizi
13971fe2a7
Benchmark the Balances Pallet ( #4879 )
...
* Initial transfer bench
* Add best case
* Transfer keep alive
* Set balance benchmarks
* Bump impl
* Fix text
Co-authored-by: Gavin Wood <github@gavwood.com >
2020-02-12 12:11:20 +01:00
Shawn Tabrizi
173644c8b9
Do not allow zero Existential Deposit when using Balances ( #4894 )
...
* Add non-zero ed check on Balances genesis
* Update ED from 0 to 1
* bump impl
* bump spec
* Found remove more ed = 0
* Fix some contract tests
* Use ctx.overlay.set_balance for contracts
* Fix staking test
* Remove obsolete logic
* Allow death of payout account in society
* Update frame/balances/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Dont create genesis balances if balance is zero in transaction payment pallet
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Gavin Wood <github@gavwood.com >
2020-02-12 11:29:30 +01:00
Marcio Diaz
ae70b10326
Benchmark Timestamp Pallet ( #4891 )
...
* Add selected_benchmark! macro.
* Use selected_benchmark! in Identity pallet.
* Implement timestamp pallet benchmark.
* Fix some nits.
* Bump impl_version.
2020-02-12 11:00:08 +01:00
Wei Tang
b7582a4645
pallet-evm: optional nonce parameter ( #4893 )
...
* pallet-evm: optional nonce parameter
* Consume all gases when nonce mismatches
* Bump node runtime version
2020-02-11 18:52:59 +01:00
Robert Habermeier
ea69238d03
impl Randomness trait for Babe and remove unused RandomBeacon trait ( #4886 )
...
* impl Randomness trait for Babe and remove unused RandomBeacon trait
* bump runtime version
2020-02-11 11:07:14 +01:00
Nikolay Volf
ef7d19ed93
update primitive types to 0.6.2 ( #4866 )
2020-02-10 22:21:38 +03:00
Marcio Diaz
fa27c8145d
Add trait to get module and call names. ( #4854 )
...
* Add trait to get module and call names.
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-02-10 14:27:40 +01:00
Gavin Wood
aff0445b24
Avoid challenging those that can't be suspended anyway ( #4804 )
...
* Merge branch 'gav-split-balanecs-vesting' into gav-upsub
# Conflicts:
# Cargo.lock
# cli/Cargo.toml
# collator/Cargo.toml
# primitives/Cargo.toml
# runtime/common/Cargo.toml
# runtime/common/src/claims.rs
# runtime/kusama/Cargo.toml
# runtime/polkadot/Cargo.toml
# service/Cargo.toml
* Fix tests
2020-02-10 14:04:50 +01:00
Gavin Wood
78a8d9f3b6
Fix vesting logic ( #4864 )
...
* Fix vesting logic
* Bump runtime version
* Docs.
2020-02-10 10:30:42 +01:00
Shawn Tabrizi
e5a7fcc8ea
Create Benchmarking Setup for Identity Pallet #4695 ( #4818 )
...
* Starting
* closer
* Compiles!
* comments
* Create seperate mock
* Remove changes to test env
* Fix step calculation
* Add host function
* Add runtime api
* compiles
* Update to use offchain timestamp
* Gives a result
* added some CLI wip
* make generic
* Update instance
* Remove CLI stuff
* Remove last cli stuff
* undo more changes
* Update benchmarks
* Update Cargo.lock
* remove test
* Move loop out of runtime
* Benchmarking externalities
* Benchmarking state
* Implemented commit
* Make CLI work, move loop back into runtime
* Wipe resets to genesis
* Speedup benchmarks
* Use enum to select extrinsic within pallet
* CLI controls which module and extrinsic to call
* Select a pallet with cli
* Add steps and repeats to cli
* Output as CSV format
* Introduce benchmark pallet
* Append bench
* Use Results
* fix merge
* Clear Identity benchmark
* Bench request judgment and cancel request
* Add final benchmarks
* Fix CSV output
* Start cleaning up for PR
* Bump numbers in `wasmtime` integration tests.
* More docs
* Add rockdb feature to bench
* Fix formatting issues
* Add test feature to bench
* Add test feature to bench
* Add rocksdb feature flag
* Update bench.rs
Co-authored-by: Arkadiy Paronyan <arkady.paronyan@gmail.com >
Co-authored-by: Gavin Wood <github@gavwood.com >
2020-02-10 10:23:08 +01:00
h4x3rotab
62b60c32de
Wrap runtime_print! macro in its own scope ( #4867 )
...
* Wrap runtime_print! macro in its own scope
Before this fix runtime_print! can be used only once in a scope
because of the name pollution.
* Bump runtime impl versioin (no logic change)
2020-02-09 20:11:53 +01:00
Alexander Popiak
cb567d6b8b
Rename StorageMap::exists to ::contains_key ( Resolves #4839 ) ( #4847 )
...
* rename StorageMap::exists(key) to ::contains_key(key)
* bump impl_version
2020-02-08 20:31:35 +01:00
Nikolay Volf
41967186e4
Subsystems memory tracking: 1. Transaction pool ( #4822 )
...
* update sp-runtime
* total update
* usage informant
* update to crates.io version
* update Cargo.lock
* update dummy update
* fix todo
* cleanup
* avoid custom impl
* Update client/transaction-pool/graph/src/future.rs
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* remove another custom impl
* remove another custom impl
* add kb in report
* update Cargo.lock
* review suggestions
* --amend
* --amend
* bump parity-util-mem to 0.5.0
* bumps
* update macro and versions
* add to grafana
* naming
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2020-02-07 11:53:11 +01:00
Wei Tang
4df27e760e
Refactor epoch changes to a separate crate ( #4785 )
...
* Init epoch changes module
* Initial integration of new epoch changes module for BABE
* Fix all initial compile errors
* rename: digest -> digests
* Fix babe tests
* Bump impl_version
* Fix more test issues
* Remove test flag for tree
It unfortunately won't work for multiple crates.
* Update cargo lock
* Fix duplicate parking_lot version
* Add missing license header
2020-02-06 16:48:38 +01:00
Arkadiy Paronyan
3c79e6d03c
Fixed a few warnings ( #4841 )
2020-02-06 14:06:53 +01:00
Wei Tang
710ffebcca
pallet-evm: log created address ( #4821 )
...
* pallet-evm: log created address
* Bump spec_version
* Only emit Created event when ExitReason is Succeed
2020-02-04 16:58:23 +01:00
Demi Obenour
0ab013bddb
Bump parking_lot ( #4817 )
...
Hopefully this can be merged if the tests pass.
2020-02-04 16:56:50 +01:00
Gautam Dhameja
78006d0523
Added GetCallMetadata for extrinsic calls. ( #4791 )
...
* Added GetCallMetadata for extrinsic calls.
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Improved test for outer call metadata.
* fixed review comments
* removed dead code
* fixed review suggestions
* Update frame/support/src/dispatch.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-02-04 11:25:04 +01:00
Gavin Wood
1c9418d748
Don't attempt to upgrade balances module on chain start ( #4802 )
...
* Introduce vesting to node, debug message for upgrades and fix them
* Bump spec version
2020-02-01 18:08:39 +00:00
Gav Wood
2b41fe2856
Urgent patch
2020-02-01 13:28:37 +00:00
Gavin Wood
d52d8692f9
Refactor the balances module ( #4649 )
...
* Initially scoping out of the problem
* Remove need for exiry in balance locks.
* Remove expiry from locks.
* Remove supefluous balance test
* Amalgamate pieces of balance module
* Split out vesting
* Fix tests
* Fixes for vesting.
* Docs.
* Weight docs.
* Refactor things in terms of set_balances.
* Switch out ED to be free + reserved.
* Remove on_free_balance_zero and some docs.
* Build fixes
* Update frame/vesting/src/lib.rs
Co-Authored-By: Xiliang Chen <xlchen1291@gmail.com >
* Update frame/vesting/src/lib.rs
Co-Authored-By: Xiliang Chen <xlchen1291@gmail.com >
* Migration
* Remove superfluous code.
* Test fixes
* Fix some tests
* Fix repatriate reserve
* Fixes
* Add test for migration
* Final cleanups
* Fix
* Indentation.
* Undo unneeded referencing
* Bump runtime version
* Fixes
Co-authored-by: Xiliang Chen <xlchen1291@gmail.com >
2020-02-01 13:20:16 +00:00
Tomasz Drwięga
2f9315cc02
Refactor im-online and print more debug info. ( #4771 )
...
* Initial version.
* Fix tests.
* Refactor using StorageValueRef.
* Add tests and apply review suggestions.
* Bump runtime.
Co-authored-by: Gavin Wood <github@gavwood.com >
2020-01-31 18:59:49 +00:00
thiolliere
a36a170c15
remove ambiguous into_iter ( #4794 )
2020-01-31 18:49:02 +01:00
Sergei Pepyakin
4cbd03f62b
Small follow-up docs improvements in rent module ( #4790 )
...
* Small follow-up docs improvements in rent module
* Update frame/contracts/src/rent.rs
Co-Authored-By: thiolliere <gui.thiolliere@gmail.com >
* Use a shorter version of the sentence
Co-authored-by: thiolliere <gui.thiolliere@gmail.com >
2020-01-31 17:27:10 +01:00
Sergei Pepyakin
df6ef1780f
pallet-contracts: Rent projection RPC ( #4754 )
...
* Initial approach
* Introduce the pallet-contracts-common crate
* Add rent::compute_rent_projection
* Wire everything together
* Fix build error.
* Rename EvictionDate → EvictionAt.
* Clean.
* Renaming and cleaning.
* Add documentation for rent_projection RPC.
* Add documentation for rent_projection runtime API.
* Refactor rent_budget.
Merge it with subsistence_treshold.
* Bump impl_version
* Constrain RPC impl with Block::Header::Number.
* Rename pallet-contracts-common into -primitives
* Add a comment for `compute_rent_projection` on the usage
* Small tidying
2020-01-31 15:22:25 +01:00
Bastian Köcher
45938d8033
Expose information about the extrinsic in the metadata ( #4774 )
...
* Expose information about the extrinsic in the metadata
This pr exposes some information about the extrinsic used in the runtime
via metadata. The following information are exposed:
- Version of the extrinsic
- List of all signed extensions used by the extrinsic.
* Increment `spec_version`
2020-01-30 16:41:03 +01:00
Gavin Wood
907fd8c2fa
Identity should bound additional fields ( #4770 )
...
* Identity should bound additional fields
* ump rutnime
2020-01-29 18:41:51 +01:00
Bastian Köcher
4c36143375
Add get_global for Sandbox ( #4756 )
...
* Add `get_global` for `Sandbox`
This pr adds `get_global` to retrieve a `global` variable from an
instantiated sandbox wasm blob.
* Bump `spec_version`
* Update primitives/wasm-interface/src/lib.rs
Co-Authored-By: Sergei Pepyakin <sergei@parity.io >
* `get_global` -> `get_global_val`
Co-authored-by: Sergei Pepyakin <s.pepyakin@gmail.com >
Co-authored-by: Gavin Wood <github@gavwood.com >
2020-01-29 16:24:40 +01:00
Gavin Wood
5c1c31ccd4
Revamp some of the weights ( #4759 )
...
* Remove free transaction dos vectors.
* Bump spec version
* Indentation.
* Update frame/support/src/weights.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-01-29 13:38:46 +01:00
thiolliere
556c80e792
LinkedMap doesn't implement StoragePrefixedMap ( #4760 )
...
* LinkedMap doesn't implement StoragePrefixedMap
* fix test
2020-01-29 13:36:52 +01:00
Sergei Pepyakin
2c90562818
Clean up indentation problems ( #4762 )
2020-01-29 13:27:23 +01:00
thiolliere
f4fa59470a
doc ( #4761 )
2020-01-29 13:26:09 +01:00
Benjamin Kampmann
3f9a05a0d3
clarify licensing ( #4755 )
...
* adding license fields to all crates
* Apply suggestions from code review
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-01-29 11:57:13 +01:00
Hoani Bryson
d38e96f2e1
Remove unnecessary duplication in generic asset create ( #4744 )
...
* Remove unneccessary duplication in generic asset create
* Increment impl_version due to refactoring generic_asset
2020-01-28 23:30:25 +01:00
Bastian Köcher
c37e9817ef
Print extrinsic failed error always, not just on import ( #4747 )
...
* Print extrinsic failed error always, not just on import
Before we printed the error of a transaction only when importing a
block, this pr changes it to print the error also at building the block.
* Increment `impl_version`
2020-01-28 19:33:23 +01:00
thiolliere
76acc96f3a
Remove default hasher ( #4739 )
...
* remove default hasher from decl_storage!
* fix decl_storage declarations
2020-01-27 18:23:10 +01:00
Sergei Pepyakin
f39335d638
pallet-contracts: Refactor and comment rent module. ( #4733 )
...
* Refactor and comment `rent` module.
* impl_version bump
* Add doc for Exempt
* Simplify code.
* Update bin/node/runtime/src/lib.rs
Co-Authored-By: thiolliere <gui.thiolliere@gmail.com >
* Update frame/contracts/src/exec.rs
Co-Authored-By: Hero Bird <robin.freyler@gmail.com >
Co-authored-by: thiolliere <gui.thiolliere@gmail.com >
Co-authored-by: Hero Bird <robbepop@web.de >
2020-01-27 17:40:57 +01:00
Joshy Orndorff
957ea8ba46
Remove references to frame_consensus from docs ( #4582 )
...
* Simply remove references to frame_consensus
* More thorough re-write
* Update frame/session/src/lib.rs
Co-Authored-By: thiolliere <gui.thiolliere@gmail.com >
* on_initialize is not dispatchable
* Attempt to fix test.
* Actually fix test.
* Actually ran passing test.
* Update frame/session/src/lib.rs
Co-Authored-By: thiolliere <gui.thiolliere@gmail.com >
Co-authored-by: thiolliere <gui.thiolliere@gmail.com >
2020-01-27 17:14:10 +01:00
thiolliere
e4f3e85585
Improve decl storage parsing ( #4731 )
...
* improve decl storage parsing
* remove hidding detail macro
* Apply suggestions from code review
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-01-24 20:04:11 +01:00
Bastian Köcher
b7887df104
Deposit event on frame-system::set_code ( #4726 )
...
* Deposit event on `frame-system::set_code`
* Update frame/system/src/lib.rs
Co-authored-by: thiolliere <gui.thiolliere@gmail.com >
2020-01-24 13:38:45 +01:00
Jaco Greeff
b89ac5d2ef
Expose recovery module errors in metadata ( #4727 )
2020-01-24 10:02:55 +01:00
Hero Bird
389b8f1698
[contracts] Add ext_tombstone_deposit ( #4722 )
...
* [contracts] add ext_tombstone_deposit
* [contracts] update tombstone_deposit docs
2020-01-23 15:13:49 +01:00
Bastian Köcher
8370b99709
Expose Error in metadata for pallet-utility ( #4721 )
2020-01-23 14:35:04 +01:00