Commit Graph

4113 Commits

Author SHA1 Message Date
Pierre Krieger e8dfb37aaf Add a sub_libp2p_notifications_queues_size Prometheus metric (#5503)
* Add a sub_libp2p_notifications_queues_size Prometheus metric

* Fix network tests

* Address review
2020-04-03 08:43:55 +02:00
Joshy Orndorff 7983a8184b Remove unused dependency on safe-mix (#5495) 2020-04-03 01:25:13 +02:00
Gavin Wood 3b43429729 More emojies and spaces (#5498)
* More emojies and spaces

* Sync emojis

* More emoji
2020-04-02 20:17:39 +02:00
André Silva 2e720f93a2 cli: fix milliseconds formatting on logs (#5507) 2020-04-02 20:16:45 +02:00
Bastian Köcher 9a14d45a13 Use saturating sub in basic authorship (#5493)
This pr ensures that we don't panic because of a deadline that is
already reached in basic authorship. This is mainly useful for debug
builds, as release builds normally don't have debug assertions enabled.
2020-04-02 12:38:02 +02:00
Denis Pisarev 8a85439427 ci: divide cache between branches (#5494) 2020-04-02 11:58:30 +02:00
cheme 58578af074 State metrics possible changes (#5168)
* Registering state from overlay.

* fix

* fix2

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-04-01 19:46:40 +02:00
Pierre Krieger a8aedfa16f Switch to new light client protocol (#5472)
* Switch to the new protocol

* Oops, forgot to remove light_dispatch.rs

* Fix tests

* Address review
2020-04-01 19:44:42 +02:00
André Silva c4aa597516 babe: restore epoch changes migration code (#5487)
This was removed in https://github.com/paritytech/substrate/pull/5291
but is still too early to do it as it requires nodes still on Polkadot
v0.7.26 to resync from scratch.
2020-04-01 19:43:34 +02:00
Gavin Wood b86c7e87a9 A few missing emojies (#5490)
* A few missing emojies

* P2p message emojis

* Add a bit of colour

* format

* Introduce a couple of spaces

* Some spaces
2020-04-01 19:41:48 +02:00
Pierre Krieger 84ff6ef157 Remove DiscoveryNetBehaviour trait (#5430) 2020-04-01 16:25:53 +01:00
Cecile Tonglet 72239adda1 check_polkadot.sh: use the branch matching substrate's branch if possible (#5468)
* check_polkadot.sh: use the branch matching substrate's branch if possible

* convert to grep

* update comment
2020-04-01 19:52:34 +05:30
Gavin Wood eac1a1964e Introduce scheduler and use it for the democracy dispatch queue (#5412)
* Initial draft of the logic

* Build and tests

* Make work with new initialize infratructure.

* Update frame/scheduler/src/lib.rs

Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>

* Update frame/scheduler/src/lib.rs

Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>

* Update frame/scheduler/src/lib.rs

Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>

* Update frame/scheduler/src/lib.rs

Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>

* Fix test

* Update frame/scheduler/src/lib.rs

Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>

* Rejig interface to make it more useful for democracy.

* Try to get democraxy module to make use of scheduler.

* Make democracy use scheduler.

* Use actual max weight for enactent

* Remove TODO

* Fix runtime build

* Minor cleanup

* Fix scheduler.

* Fix benchmarks

* Fix

* Fix

* Fix

* More bench fixes

* Fix

* Fix.

* Add more bench constants.

* Fix cancel_queued bench.

* Fix test comment.

* Update frame/scheduler/src/lib.rs

Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>

Co-authored-by: Marcio Diaz <marcio.diaz@gmail.com>
2020-04-01 15:52:39 +02:00
Arkadiy Paronyan 433824511e Reset benchmarks by removing post-genesis changes (#5435)
* Reset by removing pos-genesis changes

* CLI option for DB cache size

* Update Cargo.lock

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-04-01 14:08:23 +02:00
Nikolay Volf 159d830d62 remove ws feature from json client (#5478) 2020-04-01 01:16:24 +02:00
Shawn Tabrizi 74b008a729 Benchmark Utility Pallet (#5384)
* Move tests

* Move around feature cfgs

* Start benchmarks

* as_multi bench

* finish

* fix tests

* Update frame/utility/src/benchmarking.rs

Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>

* Update Cargo.toml

* fix test

Co-authored-by: Marcio Diaz <marcio.diaz@gmail.com>
2020-03-31 22:53:21 +02:00
Kian Paimani 63e6f81776 Fix Collective <-> Elections initialization. (#5454)
* A patch

* Fix

* Better approach.

* Fix grumbles
2020-03-31 22:40:28 +02:00
Bastian Köcher 21c92dfd29 Check that PerThing valid on decode (#5475) 2020-03-31 20:54:57 +02:00
Max Inden 091335780e client/finality-grandpa: Instrument until-imported queue (#5438)
* client/finality-grandpa: Instrument until-imported queue

The `UntilImported` queue takes as input finality grandpa messages that
depend on blocks that are not yet imported and holds them back until
those blocks are imported.

This commit adds a basic metric, the amount of messages waiting in the
queue, to the module. For now this metric is only available for the
global `UntilImported` queue awaiting blocks for commit and catch-up
messages.

* client/finality-grandpa/src/until_imported: Update metric help text

Co-Authored-By: Ashley <ashley.ruglys@gmail.com>

Co-authored-by: Ashley <ashley.ruglys@gmail.com>
2020-03-31 20:17:14 +02:00
Pierre Krieger f04486e5bc Increase limit on light client response size (#5461)
* Increase limit on light client response size

* Address review
2020-03-31 20:16:56 +02:00
Drew Stone 9789054fb8 Add deposit/withdraw events to EVM module (#5440)
* Add deposit/withdraw events

* Remove balances trait
2020-03-31 20:16:41 +02:00
gabriel klawitter 2008d3601a ci: check_polkadot_companion_status: don't verify mergeable_state (#5473) 2020-03-31 19:33:35 +02:00
thiolliere 1363675adb safe slice operation (#5471) 2020-03-31 18:41:55 +02:00
Shawn Tabrizi 2e76e2a74d Prevent events from being emitted during genesis construction (#5463)
* Don't populate runtime events in genesis

* typo

* Change to block zero

* Fix vesting tests

* Update frame/system/src/lib.rs

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

* Update frame/system/src/lib.rs

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

* Add test

* Fix test

* Fix contract tests

* Fix phragmen tests

* Fix Generic Assets Tests

* Fix offences tests

* Fix im-online

* fix recovery

* Fix utility tests

* Shorter

* Use ext

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-03-31 15:57:08 +02:00
Gavin Wood b472d60a52 Batch benchmarks together with * notation. (#5436)
* Batch benchmarks together with `*` notation.

* Fix short structopt conflict

* Return error if `batches` is empty

* Move fast benchmarks macro into `frame_benchmarking` (#5445)

* Move macro into `frame_benchmarking`

* Update docs

* Extra line

* Return error if `batches` is empty

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-03-31 15:20:09 +02:00
Bastian Köcher 954dca689d Implements mocking of runtime apis (#5448)
* Implements mocking of runtime apis

This pr adds support for easily mock runtime api implementations for
tests by using the `mock_impl_runtime_apis!` macro. The syntax is
similar to `impl_runtime_apis!`. The mocked implementation automatically
implements `ApiExt`, `ApiErrorExt` and `Core` as these are required by
the runtime api traits, but not required in tests or only a subset of them.

* Fix warnings

* Update primitives/api/proc-macro/src/utils.rs

Co-Authored-By: Nikolay Volf <nikvolf@gmail.com>

* Review feedback

Co-authored-by: Nikolay Volf <nikvolf@gmail.com>
2020-03-31 13:46:07 +02:00
Nikolay Volf b4d83a4b54 And one more fix to flaky tests (#5467)
* imporoved intervallier version

* remove extra event

* use version 0.3.1

* fix warning
2020-03-31 12:15:31 +02:00
Cecile Tonglet 439887a773 Allow changing the behavior for imported blocks (#5236)
* Added option to disable default block announce

* Added on_block_imported on NetworkService

* Revert "Added on_block_imported on NetworkService"

This reverts commit ba360cad96e0cb041d7047af30df2a35eb112449.

* Do not announce block if set to not announce block

* Revert fix

* Moving default announce block to NetworkConfig

* WIP

Forked at: ad90ab7ec9
Parent branch: origin/master

* WIP

Forked at: ad90ab7ec9
Parent branch: origin/master

* Removing boolean in favor of explicit call

* Fixing tests

* WIP

Forked at: ad90ab7ec9
Parent branch: origin/master

* WIP

Forked at: ad90ab7ec9
Parent branch: origin/master

* increase spec_version

* increase spec_version

* Fixed test

* Fixing test

* Renamed should_announce_imported_blocks to announce_imported_blocks

* Updated assert_cmd
2020-03-31 11:02:16 +02:00
gabriel klawitter b8eb094c7f Ci check companion (#5419)
* add post-build-test stage

* check status

* fix busybox shell

* renaming for consistency
2020-03-31 10:55:12 +02:00
yanganto 77b9771bfd Show network id/version in subkey (#5457)
* Show network id/version in subkey

- show network id/version when creating
- show network id/version when inspecting

* Update bin/utils/subkey/src/main.rs

use `unwrap_or_default` for more clean syntax

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

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-03-31 00:13:39 +02:00
Stanislav Tkach 0bc0d4bebb Change the difficulty parameter of PowAlgorithm::difficulty function to Hash (#5417) 2020-03-30 16:08:41 +02:00
Max Inden c3c8552aaa src/service/src/builder: Fix memory metric exposed in bytes not KiB (#5459)
The library `sysinfo` exposes process memory as kibibytes and not bytes,
thus the value needs to be multiplied by 1024 to comply with the metric
name and the Prometheus base units [1].

[1] https://prometheus.io/docs/practices/naming/#base-units
2020-03-30 15:48:59 +02:00
Nikolay Volf d82a2bf454 pub instead of remove (#5451) 2020-03-30 13:36:24 +02:00
Pierre Krieger dbba4f8929 Fix tried to send handshake twice (#5413)
* Fix tried to send handshake twice

* Fix wrong boolean

* Change to debug
2020-03-30 13:33:46 +02:00
Rakan Alhneiti e17a23e907 Introduce sign_with method in keystore (#4925)
* Add KEY_KIND_ID to the public trait

This change is being introduced for the purpose of identifying a public
key with it's identifier and algorithm "kind".

* Use `sign_with` as implemented in BareCryptoStore

* Implement `sign_with` in sc_keystore

* Fix inconsistencies, use *_KIND_ID in sp_core testing

* Rename KeyKindId to CryptoTypeId

* Remove pair-returning functions from BareCryptoStore trait

* Define CryptoTypeId in app-crypto macros

* Add functions to get keys supported by keystore

* Fix sign_with signature to include CryptoTypePublicPair

* Add `sign_with_any` and `sign_with_all`

* Use keystore.sign_with in auth_discovery

* Rename get_supported_keys -> supported_keys

* Added headers to function docstrings

* Use chain instead of extending a temp vector

* Fixed some code formatting

* Restrict size of CryptoTypeId

This is to be able to use Encode/Decode derives and the overcome having
the size being unknown at compile-time.

* Implement sign_with in the trait itself

* Remove whitespace

* Use key_type also as a CryptoTypeId in app_crypto macros

* Rename `get_keys` to `keys` in BareCryptoStore

* Remove usage of key_pair funcs in tests

* Adjust docstring for *_CYPTO_ID constants

* Fix failures

* Simplify mapping on keys

* Remove one let

* Fixed typo

* PR feedback

* remove whitespace

* Zip keys and signatures

* Use into_iter & remove cloned

* Pass index to MissingSignature

* Use typed errors instead of strings for BareCryptoStore

* Implement Debug for trait error

* Use hashsets for better performance for supported_keys

* Make sure keys are inserted into the keystore

* Make sign_with_all return type consistent with `sign_with`

* Rename Error to BareCryptoStoreError

* Rename CRYPT_TYPE_ID -> CRYPTO_ID

* Remove unnecessary CRYPTO_ID declaration in Public trait

* Convert pub key to CryptoTypePublicPair

* Fix use

* Fix code style

* Implement From on CryptoTypePublicPair in app_crypto macros

* Change CryptoTypePublicPair to a struct

* Implement Display on CryptoTypePublicPair

* Pass CryptoTypePublicPair to MissingSignature error

* Adjust docs according to function signature

* Unify keys implementation

* Fix RPC author tests

* Fix stackoverflow

* Tabify spaces

* Pass KeyTypeId to error for easier debugging

* Fix asserts

* Use ToHex to format public key

* Use constants from sp_core

* Rename testing KeyTypeId constants

* Please compiler

* Restore KeyTypeId names

apparently, they're not only used in tests

* Use BareCryptoStoreError instead of String

* Document return value

* Fix borrow check

* Convert to hashset internally

* WIP - iter_keys

* Return raw_public_keys

* Address PR feedback

* Address PR Feedback

* Fix hexdisplay import error

* Update primitives/core/src/traits.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-03-30 13:18:59 +02:00
Pierre Krieger 462eaa3f41 Make transactions and block announces use notifications substre… (#5360)
* Make transactions and block announces use notifications

* Add documentation
2020-03-30 10:00:34 +02:00
pscott 408455f8bc Build for only one target for docs.rs (#5427)
* Add docs.rs metadata to all cargo.toml files

* Remove docs.rs metada in substrate's cargo.toml
2020-03-30 09:46:30 +02:00
Bastian Köcher ab0366a076 Add method to sc-cli to reset the SIGPIPE signal handler (#5447)
The signal handler will be reset to the default system one. This means
the program will be exited instead of panicking. This is required to
support piping in the console.
2020-03-29 14:12:18 +02:00
Joseph Mark e8835d64a1 Extend PerThing + Saturating (#5281)
* Extend PerThing + Saturating

* Add saturating_pow to Saturating
* Add saturating_truncating_mul to PerThing (rounding-down mul)
* Add saturating_reciprocal_mul to PerThing (divide x by perthing)
* Provide default methods where possible

* Restore const functions

* Fix test

* Update primitives/arithmetic/src/per_things.rs

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

* Add comment and test verifying no overflow

* Formatting

* Fix possible overflow and change type constraint

* Use overflow pruning for all mul

* Formatting and comments

* Improve comments and names

* Comments in `rational_mul_correction` explain overflow aversion.

* Test rational_mul_correction

* Formatting

* Docs and formatting

* Add new trait methods to Perthing type impl

* Fix signature

* saturating_pow for Delegations

* Add missing trait method to impl

Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
2020-03-29 13:24:11 +02:00
Nikolay Volf d7ffef43ce don't use delays in tests (#5404) 2020-03-29 10:40:00 +02:00
Bastian Köcher 1242a7df3c Upgrade parity-scale-codec to 1.3.0 (#5443) 2020-03-28 22:16:05 +01:00
Spencer Judge db24a71ace Provide easy conversions from common key types to AccountId32 (#5423)
* Provide easy conversions from common key types to `AccountId32`

* Fix spaces instead of tabs
2020-03-27 21:41:29 +01:00
thiolliere 2138004fc8 Hide metadata function for in decl_event, and add doc for GenesisConfig (#5431)
* hide metadata function for non generic event

* add doc for decl_storage
2020-03-27 21:40:12 +01:00
Bastian Köcher 3ec1d1b491 Enable wasmtime only for x86_64 in substrate node (#5432)
* Enable `wasmtime` only for `x86_64` in substrate node

When using the new feature of cargo `cargo build -Z features=itarget`,
the `wasmtime` feature will not bleed into the build for other
architectures.

* Use new cargo feature in CI
2020-03-27 15:54:48 +01:00
thiolliere 7abc577017 fix tests (#5416) 2020-03-27 12:38:14 +01:00
Nikolay Volf eed0045a0c update futures dependency (#5426) 2020-03-27 12:35:48 +01:00
Bastian Köcher fb3386a5f3 Clarify when changes_root returns None (#5428) 2020-03-27 12:02:37 +01:00
Kian Paimani 49d8439f77 Update CONTRIBUTING.adoc (#5425)
* Update CONTRIBUTING.adoc

* Update docs/CONTRIBUTING.adoc

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

* Update docs/CONTRIBUTING.adoc

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

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-03-27 11:21:34 +01:00
Bastian Köcher bd5758932b Make all PerThing types implement all trait methods on the type (#5422)
This removes the requirement to import `PerThing` to use a type that
implements the trait.
2020-03-27 11:21:14 +01:00
Gavin Wood acab5f0570 Add emojis (#5420) 2020-03-27 10:41:31 +01:00