Commit Graph

5416 Commits

Author SHA1 Message Date
Andreas Doerr ccb4e6a551 Add ecdsa::Pair::verify_prehashed() (#8996)
* Add ecdsa::Pair::verify_prehashed()

* turn verify_prehashed() into an associated function

* add Signature::recover_prehashed()
2021-06-03 09:46:43 +00:00
Shaun Wang 7ec6ebb627 Migrate pallet-democracy to pallet attribute macro (#8824)
* Migrate pallet-democracy to pallet attribute macro.

* Metadata fix.

* Trigger CI.
2021-06-03 08:30:21 +00:00
Pierre Krieger 152587bcb9 Discard notifications if we have failed to parse handshake (#8806) 2021-06-02 20:41:21 +02:00
Bastian Köcher 2ab5f9aeca Transactionpool: Make ready_at return earlier (#8995)
`ready_at` returns when we have processed the requested block. However,
on startup we already have processed the best block and there
are no transactions in the pool on startup anyway. So, we can set `updated_at`
to the best block on startup.

Besides that `ready_at` now returns early when there are no ready nor
any future transactions in the pool.
2021-06-02 18:13:47 +00:00
Shawn Tabrizi 554a0cb274 also fix bounded vec (#8987) 2021-06-02 04:30:53 +00:00
MOZGIII e63730b763 Convert another instance of Into impl to From in the macros (#8986)
* Convert another instance of Into impl to From in the macros

* Convert another location
2021-06-01 20:48:31 +00:00
Boiethios 29a7559fe3 Update WeakBoundedVec's remove and swap_remove (#8985)
Co-authored-by: Boiethios <felix-dev@daudre-vignier.fr>
2021-06-01 22:27:30 +02:00
Gavin Wood e819fd03f9 Uniques: An economically-secure basic-featured NFT pallet (#8813)
* Uniques: An economically-secure basic-featured NFT pallet

* force_transfer

* freeze/thaw

* team management

* approvals

* Fixes

* force_asset_status

* class_metadata

* instance metadata

* Fixes

* use nmap

* Fixes

* class metadata has information field

* Intiial mock/tests and a fix

* Remove impl_non_fungibles

* Docs

* Update frame/uniques/src/lib.rs

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

* Update frame/uniques/src/lib.rs

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

* Update frame/uniques/src/lib.rs

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

* Update frame/uniques/src/lib.rs

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

* Reserve, don't transfer.

* Fixes

* Tests

* Tests

* refresh_deposit

* Tests and proper handling of metdata destruction

* test burn

* Tests

* Update impl_fungibles.rs

* Initial benchmarking

* benchmark

* Fixes

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

* Attributes

* Attribute metadata

* Fixes

* Update frame/uniques/README.md

* Docs

* Docs

* Docs

* Simple metadata

* Use BoundedVec

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

* Update frame/uniques/src/lib.rs

Co-authored-by: Lohann Paterno Coutinho Ferreira <developer@lohann.dev>

* Update frame/uniques/src/lib.rs

Co-authored-by: Lohann Paterno Coutinho Ferreira <developer@lohann.dev>

* Update frame/uniques/src/lib.rs

Co-authored-by: Lohann Paterno Coutinho Ferreira <developer@lohann.dev>

* Update frame/uniques/src/lib.rs

Co-authored-by: Lohann Paterno Coutinho Ferreira <developer@lohann.dev>

* Update frame/uniques/src/lib.rs

Co-authored-by: Lohann Paterno Coutinho Ferreira <developer@lohann.dev>

* Fixes

* Update frame/uniques/README.md

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

* Update frame/uniques/README.md

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

* Update frame/uniques/README.md

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

* Docs

* Bump

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Parity Bot <admin@parity.io>
Co-authored-by: Lohann Paterno Coutinho Ferreira <developer@lohann.dev>
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2021-06-01 18:03:13 +02:00
Ashley c408515501 Revert "Use SpawnTaskHandles for spawning tasks in the tx pool (#8958)" (#8983)
This reverts commit 84e402389b.
2021-06-01 15:14:33 +00:00
Sergei Shulepov bf229f0ba4 Do not spend time on verifying the signatures before calling Runtime (#8980) 2021-06-01 14:43:29 +00:00
Ashley 84e402389b Use SpawnTaskHandles for spawning tasks in the tx pool (#8958)
* Remove futures-diagnose

* Use `SpawnTaskHandle`s for spawning tasks in the tx pool

* Box the spawner

* Fix tests

* Use the testing task executor
2021-06-01 14:28:03 +00:00
Kian Paimani ac3c88fd34 Inject hashed prefix for remote-ext (#8960)
* Inject for remote-ext

* Update utils/frame/remote-externalities/src/lib.rs

Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com>

* Update utils/frame/remote-externalities/src/lib.rs

Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com>

* Apply suggestions from code review

* Apply suggestions from code review

Co-authored-by: Zeke Mostov <32168567+emostov@users.noreply.github.com>
2021-06-01 13:49:06 +01:00
Bastian Köcher ba52404a27 Dependabot use correct label (#8973) 2021-06-01 11:57:35 +00:00
Squirrel c0dfe2c382 Spellling corrections (no code changes) (#8971)
* Spelling corrections

* As this might break let's do as a separate PR
2021-06-01 12:51:38 +02:00
Sergei Shulepov 7a284fcf1d Update wasmtime to 0.27 (#8913)
* Update wasmtime to 0.27

A couple of notes:

- Now we are fair about unsafeness of runtime creation via an compiled artifact.
  This change was prompted by the change in wasmtime which made
  `deserialize` rightfully unsafe. Now `CodeSupplyMode` was hidden and
  the `create_runtime` now takes the blob again and there is now a new
  fn for creating a runtime with a compiled artifact.
- This is a big change for wasmtime. They switched to the modern backend
  for code generation. While this can bring performance improvements, it
  can also introduce some problems. In fact, 0.27 fixed a serious issue
  that could lead to sandbox escape. Hence we need a proper burn in.

This would require a change to PVF validation host as well.

* Filter regalloc logging
2021-06-01 10:02:10 +00:00
Squirrel dc88e6dd7e Reduce cargo doc warnings (#8947)
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2021-06-01 10:26:10 +01:00
Keith Yeung 3b1c2f55b2 Allow usage of path in construct_runtime! (#8801)
* Allow usage of path in construct_runtime!

* Fix whitespace

* Fix whitespace

* Make expand_runtime_metadata accept slice instead of Iterator

* Include Call and Event in construct_runtime for testing

* Migrate impl_outer_event to proc macro

* Fix integrity_test_works

* Update UI test expectations

* Factor in module path while generating enum variant or fn names

* Use ParseStream::lookahead for more helpful error messages

* Remove generating outer_event_metadata

* Ensure pallets with different paths but same last path segment can coexist

* Remove unnecessary generated function

* Migrate decl_outer_config to proc macro

* Add default_filter test for expand_outer_origin

* Allow crate, self and super keywords to appear in pallet path

* Add UI test for specifying empty pallet paths in construct_runtime
2021-06-01 09:23:41 +00:00
dependabot[bot] f85492dcbf Bump getrandom from 0.2.2 to 0.2.3 (#8952)
Bumps [getrandom](https://github.com/rust-random/getrandom) from 0.2.2 to 0.2.3.
- [Release notes](https://github.com/rust-random/getrandom/releases)
- [Changelog](https://github.com/rust-random/getrandom/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/getrandom/compare/v0.2.2...v0.2.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-31 18:40:36 +00:00
Kian Paimani 58a6f31ccf Add deserialize for TransactionValidityError in std. (#8961)
* Add deserialize for TransactionValidityError in std.

* Fix derives
2021-05-31 18:17:56 +00:00
Bastian Köcher fa22eb7361 Optimize next_storage_key (#8956)
* Optimize `next_storage_key`

- Do not rely on recursion
- Use an iterator over the overlay to not always call the same method

* Fix bug
2021-05-31 20:17:15 +02:00
Roman Proskuryakov 587ea2549b Refactor code a little bit (#8932) 2021-05-31 16:05:50 +00:00
Seun Lanlege 6d13520da4 Use correct CreateInherentDataProviders impl for manual seal (#8852)
* use correct CreateInherentDataProviders impl for manual seal

* add babe inherent provider

* move client into factory fn
2021-05-31 16:31:47 +01:00
dependabot[bot] aa76b4c355 Bump retain_mut from 0.1.2 to 0.1.3 (#8951)
Bumps [retain_mut](https://github.com/upsuper/retain_mut) from 0.1.2 to 0.1.3.
- [Release notes](https://github.com/upsuper/retain_mut/releases)
- [Commits](https://github.com/upsuper/retain_mut/compare/v0.1.2...v0.1.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-31 07:39:35 +00:00
Shaun Wang 714a0872f5 Migrate pallet-scored-pool to pallet attribute macro (#8825)
* Migrate pallet-scored-pool to pallet attribute macro.

* Remove dummy event.

* Apply review suggestions.
2021-05-31 05:57:20 +00:00
Gavin Wood 996107ee28 Session key should be settable at genesis even for non-endowed accounts (#8942)
* Session key should be settable at genesis even for non-endowed accounts

* Docs
2021-05-29 12:17:26 +02:00
Alexander Theißen 2fa35d705a Make Schedule fields public to allow for customization (#8924)
* Make `Schedule` fields public for customization

* Fix doc typo

Co-authored-by: Andrew Jones <ascjones@gmail.com>

Co-authored-by: Andrew Jones <ascjones@gmail.com>
2021-05-29 09:58:26 +00:00
Kian Paimani b3fabde4e3 make remote ext use batch ws-client (#8916)
* make remote ext use batch ws-client

* Add debug log for key length

* better assertions

* new sanity_checl

* try and make it work with batch

* update test

* remove exctra uri

* add missing at

* remove unused rpc stuff

* improve

Co-authored-by: emostov <32168567+emostov@users.noreply.github.com>
2021-05-29 04:20:25 +00:00
Sebastian Müller 1888e56abc weather -> whether (#8938) 2021-05-28 23:32:00 +02:00
joe petrowski 32b793657a remove duplicate Issued/Burned events (#8935) 2021-05-28 19:22:49 +00:00
Shawn Tabrizi 444d4e204c Simple MaxBoundedLen Implementations (#8793)
* implement max_values + storages info

* some formatting + doc

* sudo sanity check

* timestamp

* assets (not working)

* fix assets

* impl for proxy

* update balances

* rename StoragesInfo -> PalletStorageInfo

* merge both StorageInfoTrait and PalletStorageInfo

I think it is more future proof. In the future some storage could make
use of multiple prefix. Like one to store how much value has been
inserted, etc...

* Update frame/support/procedural/src/storage/parse.rs

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>

* Update frame/support/procedural/src/storage/storage_struct.rs

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>

* Fix max_size using hasher information

hasher now expose `max_len` which allows to computes their maximum len.
For hasher without concatenation, it is the size of the hash part,
for hasher with concatenation, it is the size of the hash part + max
encoded len of the key.

* fix tests

* fix ui tests

* Move `MaxBoundedLen` into its own crate (#8814)

* move MaxEncodedLen into its own crate

* remove MaxEncodedLen impl from frame-support

* add to assets and balances

* try more fixes

* fix compile

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

* nits

* fix compile

* line width

* fix max-values-macro merge

* Add some derive, needed for test and other purpose

* use weak bounded vec in some cases

* Update lib.rs

* move max-encoded-len crate

* fix

* remove app crypto for now

* width

* Revert "remove app crypto for now"

This reverts commit 73623e9933d50648e0e7fe90b6171a8e45d7f5a2.

* unused variable

* more unused variables

* more fixes

* Add #[max_encoded_len_crate(...)] helper attribute

The purpose of this attribute is to reduce the surface area of
max_encoded_len changes. Crates deriving `MaxEncodedLen` do not
need to add it to `Cargo.toml`; they can instead just do

```rust
\#[derive(Encode, MaxEncodedLen)]
\#[max_encoded_len_crate(frame_support::max_encoded_len)]
struct Example;
```

* fix a ui test

* use #[max_encoded_len_crate(...)] helper in app_crypto

* remove max_encoded_len import where not necessary

* update lockfile

* fix ui test

* ui

* newline

* fix merge

* try fix ui again

* Update max-encoded-len/derive/src/lib.rs

Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>

* extract generate_crate_access_2018

* Update lib.rs

* compiler isnt smart enough

Co-authored-by: thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
Co-authored-by: Peter Goodspeed-Niklaus <peter.r.goodspeedniklaus@gmail.com>
2021-05-28 18:35:15 +00:00
Alexander Theißen 61859bbdb1 Bump parity-wasm and pwasm-utils to the newest versions everywhere (#8928) 2021-05-28 11:06:16 +00:00
Alexander Theißen bf9837499a Fix check runtime CI (#8930)
* Fix check_runtime.sh script

* contracts: Remove confusing "Related Modules" doc
2021-05-28 09:33:22 +00:00
MOZGIII c8ea0c7abb More sc-service config reexports (#8887)
* Reexport ExecutionStrategies and ExecutionStrategy

* Reexport more of the network

* Reexport the ExecutionStrategy as it's used within ExecutionStrategies
2021-05-27 20:32:22 +00:00
Denis Pisarev 95e296dea3 CI: fix simnet trigger (#8927)
* CI: chore

* CI: pin simnet version
2021-05-27 20:31:29 +02:00
Roman Proskuryakov 8dfb8cd978 Remove: (#8748)
* `NetworkStatusSinks`
* `sc_service::SpawnTasksParams::network_status_sinks`

Also:
* `sc_service::build_network()` does not return `network_status_sinks`
2021-05-27 12:54:37 +00:00
Shawn Tabrizi fa89414bba Fix Compiler Warnings (new rustc) (#8907)
* unused mmr

* more unused

* dyn in executor

* remove `doc(inline)`

* fix dyn for sp-api-test

* update benchmarks

* Update primitives/core/benches/bench.rs

* Update primitives/core/benches/bench.rs

* update another bench

* fix benchmark?

Co-authored-by: adoerr <0xad@gmx.net>
2021-05-27 07:52:05 +02:00
Keith Yeung 053be60b82 Convert impl_key_prefix_for to proc macro (#8844)
* Convert impl_key_prefix_for to proc macro

* Reduce the number of let bindings

* Remove parsing of inputs for impl_key_prefix_for_tuples

* Replace unwrap with expect

* Remove unnecessary array of idents

* Use numeric identifiers

* Simplify ident generation

* Fix whitespacing

* Add documentation for impl_key_prefix_for_tuple proc macro

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

Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
2021-05-26 23:22:35 +00:00
Shumo Chu c110425251 Manta Network ss58 address registration (#8706)
* manta network ss58 address registration

* minor
2021-05-26 22:58:41 +02:00
Jakub Pánik 60345c9ffc Add Basilisk ss58 (#8882) 2021-05-26 20:47:56 +02:00
Jon Häggblad acef22bbd2 Migrate pallet-grandpa to attribute macros (#8724)
* frame/grandpa: migrate Config

* frame/grandpa: migrate decl_module

* frame/grandpa: migrate decl_event

* frame/grandpa: migrate decl_error

* frame/grandpa: migrate decl_storage

* frame/grandpa: make report_equivocation_unsigned pub(super)

* frame/grandpa: remove unused imports

* frame/grandpa: replace deprecated Module with Pallet

* frame/grandpa: add RawEvent for compatibility

* frame/grandpa: create migration to new storage prefix

* frame/grandpa: bump version to 4.0.0

* frame/grandpa: address review comments

* Try using version 3.1 instead

* frame/grandpa: tweak log text to say cancelled
2021-05-26 16:26:15 +00:00
Denis Pisarev 4ee5da2403 Revert "Fix stderr in new Rust nightly (#8904)" (#8910)
This reverts commit 2928e42800.
2021-05-26 13:51:28 +02:00
André Silva 61507e1ba3 grandpa: enable light clients to participate in gossip (#8796)
* network: allow gossiping to light clients

* grandpa: gossip global messages to light clients

* grandpa: don't send neighbor packets to light clients

* grandpa: fix tests

* grandpa: export run_grandpa_observer

* node: run grandpa observer on light client

* node: start network at end

* Use wasm_timer in finality-grandpa

Co-authored-by: Pierre Krieger <pierre.krieger1708@gmail.com>
2021-05-26 11:33:11 +00:00
Kian Paimani 0d13e20b35 add an absolute measure of election score on-chain as a parameter (#8903)
* add an absolute measure of election score on-chain as a parameter

* make it storage item

* line width

* some nits

* Apply suggestions from code review

Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>

* make a few more things pub

Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2021-05-26 08:49:45 +00:00
MOZGIII ee13ff2947 Convert Into to From to make clippy happy (#8900) 2021-05-26 09:16:53 +02:00
Alexander Theißen c92d4a2638 contracts: Fix some minor bugs around instantiation (#8879)
* Fix output of wrongly outputted error

The "Tombstoned a contract that is below the subsistence threshold: {:?}" was
triggered when too few balance was provided. It was a false alarm.

* Fix return of wrong code_len

* Split up `NotCallable` into more fine grained errors

* Fix typos in docs

Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>

* RentNotPayed -> RentNotPaid

* Fix typo: payed -> paid

It is OK to change the in-storage field name because:

1. The SCALE encoding is not based on names only on position.
2. The struct is not public (only to the crate).

Co-authored-by: Keith Yeung <kungfukeith11@gmail.com>
2021-05-25 22:29:55 +00:00
Denis Pisarev a28a517c53 Fix build job (#8905)
* CI: fix node-template packaging

* add explicit deps versions
2021-05-25 23:01:00 +02:00
Denis Pisarev 2928e42800 Fix stderr in new Rust nightly (#8904)
* CI: revert me

* fix stderr

* CI: revert me

* typo

* more stderr fixes

* Revert "CI: revert me"

This reverts commit 5f47effc4965fa5c0c2a6ed92e434a6adb6b1dce.

* Revert "CI: revert me"

This reverts commit 7f785660c797b703dd36272cbe313056dd7a1858.
2021-05-25 22:58:42 +02:00
Frederik Schulz ad76ac798e Removes unnecessary blank impl for Backend (#8897)
* Removes unnecessary blank impl for Backend

This commit removes a from my perspective unneccessary implementation
for &T which implement Backend.

The current implementation exists (again from my perspective) solely
to satisfy a methods &mut self parameters (i.e. allows to satisfy
this for an & reference via using &mut &Backend).

As all implementors use a RefCell with borrow_mut() where actually
calling the mentioned &mut self method and then forwad to the
{} implementation of either TrieBackend or ProvingBackend, the
current &mut self seems to be not needed.

* Fixed tests client
2021-05-25 19:50:12 +00:00
Kian Paimani ec409615a3 make remote-ext work with ws and safe RPCs (#8889)
* make remote-ext work with ws and safe RPCs

* Update docs.

* Update utils/frame/remote-externalities/Cargo.toml

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Fix test

* Update lock file

* Update utils/frame/remote-externalities/src/lib.rs

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

* Fix build again.

* revert lifetime stuff

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2021-05-25 18:00:50 +00:00
Bastian Köcher 53e28b98e9 Introduce code_substitute (#8898)
This introduces a new field `code_substitute` into the chain spec. This
can be used to substitute the on-chain wasm starting from a given block
until there is another wasm on chain (determined through the
`spec_version`). This can be used to fix broken on chain wasm runtimes.
2021-05-25 14:07:36 +00:00