Commit Graph

14935 Commits

Author SHA1 Message Date
Denis Pisarev 06525e2b47 add cargo-deny job (#5347)
* add cargo-deny job

* feat(ci): add cargo-deny CI job, checks registries, licenses, dependencies dupes and advisories
2020-03-24 18:07:28 +01:00
Marcio Diaz 22e23b0103 Benchmark Collective Pallet (#5343)
* Init

* Fix execute.

* Duplicate macro for instances temporarilly

* Add propose.

* Add vote, close.

* Propose from own module

* Add old members to set_members.

* Add previous proposals to propose.

* Compress a bit the macro.

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-03-24 18:06:29 +01:00
Nikolay Volf 27fe4206ed Update schnorrkel with versioning (#5358)
* use versioning for deprecated api, remove deprecated api from regular verification

* Update primitives/core/src/sr25519.rs

* add test to transaction pool

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-03-24 18:05:57 +01:00
Bastian Köcher 6beb6acbd5 Print an error when a bootnode is on a different chain (#5377)
* Print an error when a bootnode is on a different chain

* Fix tests
2020-03-24 14:24:09 +00:00
Benjamin Kampmann ba06d5ef64 Releasing 2.0.0-alpha.5 (#5340)
* bump pre-version

* Changelog alpha.4->alpha.5

* repo + homepage to sp-consensus-vrf

* Add default rocksdb feature to `frame-benchmarking-cli` (#5367)

* Add default rocksdb feature

* Update Cargo.toml

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-03-24 15:08:02 +01:00
gabriel klawitter 75123f051e check polkadot for companion pull requests (#5262)
* check_polkadot: move to external script

* check_polkadot: check for companion pr

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Bastian Köcher <git@kchr.de>
2020-03-24 18:29:11 +05:30
Kian Paimani 92191ae91a Remove files (#932) 2020-03-24 12:37:52 +01:00
Stanislav Tkach 4414d00082 Get rid of rustc_hex in favor of hex (#5370)
* Get rid of rustc_hex in favor of hex

* Use HexDisplay
2020-03-24 11:48:23 +01:00
Alexander Theißen 5345407783 Update COMPLEXITY.md for ext_terminate (#5275) 2020-03-24 11:40:58 +01:00
Shawn Tabrizi 9fbbdfdfd4 Add runtime-benchmarks compile/test in CI pipeline (#5371)
* Add `runtime-benchmarks` compile

* Use cargo check and no wasm build
2020-03-23 21:57:36 +01:00
Shawn Tabrizi 9283855dba Fix runtime benchmarks build (#929) 2020-03-23 20:09:37 +01:00
Bastian Köcher fde05dd236 Show an error when we connect to a bootnode with a different peer id (#5365)
Currently when we connect to a bootnode and it returns a different peer
id, than the one we provided, we disconnect silently. This pr changes
the behavior to printing an error when a bootnode returns a different
peer id than the provided one.
2020-03-23 18:49:49 +01:00
Gav Wood 6ac200252e Bump runtime version 2020-03-23 17:20:25 +01:00
Gav Wood 5f04e1aa52 Version bump 2020-03-23 16:29:10 +01:00
Nikolay Volf 4d3557d5a1 Versioning for #[runtime-interface] (#5328)
* versionned runtime-interface

* use only one additional wasm blob

* alter docs

* formatting, naming and docs

* add comment for test

* version duplicate err

* RuntimeInterfaceItem -> RuntimeInterfaceFunction<

* test naming

* version checking

* remove spaces

* Update primitives/runtime-interface/proc-macro/src/runtime_interface/bare_function_interface.rs

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

* remove sanity checks and reduce coverage

* add doc comment

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-03-23 15:09:05 +01:00
Toralf Wittner fe972155c8 Update yamux to version 0.4.5 (#927) 2020-03-23 14:32:31 +01:00
Toralf Wittner fe68d6fd8c Update yamux to version 0.4.5 (#5354) 2020-03-23 14:11:46 +01:00
Marcio Diaz 0c10687022 Regression algorithm for runtime benchmarks (#5288)
* Add linregress

* Regression, initial stuff.

* More analytics

* whitespace

* Fix

* Median slopes regression algo

* Warnings

* Update to lastest benchmark changes.

* Use both algorithms temp.

* Move analysis to frame.

* Fix tests.

* Only build analysis in std

Co-authored-by: Gav Wood <gavin@parity.io>
2020-03-23 14:07:25 +01:00
Wei Tang 14249913a6 pallet-evm: configurable gasometer config (#5320)
* pallet-evm: configurable gasometer config

* Bump runtime impl_version

* Update evm to 0.16.1

Documentation updates

Co-authored-by: Gavin Wood <gavin@parity.io>
2020-03-23 13:30:40 +01:00
Shawn Tabrizi ad1876bf94 Switch Treasury to on_initialize, Tips KeepAlive (#5352)
* Switch Treasury to `on_initialize`

* Fix bench compile
2020-03-23 13:19:15 +01:00
Wei Tang 9c7261fab3 Simplify BABE pre-digest definitions (#5289)
* Init vrf crate without type alias

* Generic PreDigest definition for BABE

* Fix BABE vrf interface change

* Missing default-features def in sp-consensus-babe

* Fix sp-consensus-babe compile

* frame-babe: fix type inference

* Unify type definitions of vrf output/proof and randomness

* frame-babe: fix tests

* Bump node impl version

* Update cargo lock

* Derive Copy for RawVRFOutput and RawVRFProof

* Fix duplicated derive

Co-authored-by: Gavin Wood <gavin@parity.io>
2020-03-23 11:53:41 +01:00
Gavin Wood 95d1d668c3 Sensible way of selecting Prime member (#5346)
* Calculate prime votes only during the election

* Migration

* Fix build, enable migration

* Fix tests

* Bump runtime version

* Update frame/elections-phragmen/src/lib.rs

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

Co-authored-by: Marcio Diaz <marcio.diaz@gmail.com>
2020-03-23 11:52:44 +01:00
Pierre Krieger 1da48b3b3f Rewrite reconnect_after_disconnect test (#5351) 2020-03-23 11:50:11 +01:00
Max Inden 26a204da21 client/network-gossip/state_machine: Fix log message (#5350)
A gossip validator returns `ValidationResult::Discard` for messages that
should not be processed nor kept due to not being useful for the node.
Examples are out-of-scope messages or messages with bad signatures. The
corresponding log message did not reflect this, thus the update through
this patch.

One caveat is a finality grandpa neighbor packet. Given that the concept
of neighbor packets is handled in the finality grandpa gossip validator
only, valid neighbor packets are always discarded on the
`client/network-gossip` layer.
2020-03-23 11:04:48 +01:00
Andronik Ordian d348fed02e deduplicate parity-util-mem (#926) 2020-03-23 08:57:15 +01:00
Andronik Ordian 28ae4042fd deduplicate parity-util-mem (#5348) 2020-03-22 20:37:40 +01:00
Fedor Sakharov 88ba024489 Parachains double vote handler initial implementation. (#840)
* Parachains double vote handler initial implementation.

* Make tests test the actual slashing.

* Implement SignedExtension validation of double vote reports.

* Fixes build after merge

* Review fixes

* Adds historical session proofs

* Review fixes.

* Bump runtime spec_version

* Get the session number from the proof

* Check that proof matches session

* Change signature type on DoubleVoteReport

* Adds docs and removes blank lines

* Removes leftover code

* Fix build

* Fix build after a merge

* Apply suggestions from code review

Co-Authored-By: Robert Habermeier <rphmeier@gmail.com>

* Prune ParentToSessionIndex

* Remove a clone and a warning

Co-authored-by: Robert Habermeier <rphmeier@gmail.com>
Co-authored-by: Gavin Wood <gavin@parity.io>
2020-03-22 09:48:35 +03:00
Fedor Sakharov 3293186b90 Bump parity-util-mem (#921)
* Bump parity-util-mem

* Change util mem version to wildcard
2020-03-22 02:18:10 -04:00
Stanislav Tkach 41a8d43161 Rename ExecutionContext::parent to caller (#5285) 2020-03-21 22:17:06 +01:00
ddorgan 56264ad1fc Make pushing consensus message loglevel trace (#5342) 2020-03-21 15:49:51 +00:00
Gav Wood 0c435448f9 Bump version 2020-03-21 16:48:06 +01:00
Gavin Wood 95d732beca Introduce progressive democracy (#920)
* Updates for the new democracy

* Introduce progressive democracy

Also move to "master" branch of Substrate ready for continuous
sync with Substrate master.
2020-03-21 16:46:09 +01:00
Ashley fb442c9112 Update and fix wasm code again, add cli check to .gitlab-ci.yml (#917)
* Add cli to wasm tests, update and bring closer to the substrate browser code

* Remove ws.js

* Update cli/src/browser.rs

Co-Authored-By: Pierre Krieger <pierre.krieger1708@gmail.com>

* Update browser.rs

Co-authored-by: Gavin Wood <gavin@parity.io>
Co-authored-by: Pierre Krieger <pierre.krieger1708@gmail.com>
2020-03-21 16:13:59 +01:00
Gavin Wood 22f88bf9d1 Redesign Democracy pallet (#5294)
* Repot a bit of democracy code

* Basic logic is drafted

* Lazy democracy builds.

* Add non-locked split-voting and instant-scheduling.

* Introduce delegation that works.

* Builds again.

* Indentation

* Building.

* Docs and migration

* Fix half of the tests

* Fix up & repot tests

* Fix runtime build

* Update docs

* Docs

* Nits.

* Turnout counts full capital

* Delegations could towards capital

* proxy delegation & proxy unvoting

* Fix

* Tests for split-voting

* Add missing file

* Persistent locking.
2020-03-21 16:08:48 +01:00
Bastian Köcher 1f7df4528f Make sure that the start_collator future implements Send (#915)
Co-authored-by: Gav Wood <gavin@parity.io>
2020-03-21 15:48:46 +01:00
s3krit 965b74beb3 CI: Don't announce releases on updated (#912)
we were getting double-posts for newly-published releases - we don't need to post to the channel when releases are updated.
2020-03-21 13:40:16 +01:00
s3krit 73ab649437 CI: Move publish_draft_release job to test stage, and substrate changelog subsections (#908)
* Move publish_draft_release to test stage

Also remove the alert_pending_release job since it's no longer needed

* delete alert_pending_release.sh

* Add splitting substrate changes into subsections
2020-03-21 13:39:52 +01:00
Gavin Wood 6a7374aca3 Remove migration code. (#910)
* Remove migration code.

* Bump Substrate

* Bump runtime
2020-03-21 13:37:55 +01:00
joe petrowski 40f57f8ffa Minor fixes to CLI arg docs (#5339)
* minor fixes to CLI arg docs

* Update client/cli/src/params/shared_params.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-03-21 08:52:57 +01:00
Benjamin Kampmann 71aef91099 latest unleash and on all ci-release-prefixed tags (#5334) 2020-03-20 20:03:19 +01:00
Bastian Köcher 7693bd5ee5 Adds new event phase Initialization (#5302)
* Adds new event phase `Initialization`

Every event that was deposited inside of `on_initialize` was assigned to
the `ApplyExtrinsic(0)` phase which wasn't correct. This pr introduces a
new phase `Initialization`. This is the new phase while initializing
a block. After initialization we switch to `ApplyExtrinsic(N)` and at
the end to `Finalization` as before.

* Set `ExecutionPhase` in `initialize`

* Increment `spec_version`
2020-03-20 19:34:51 +01:00
André Silva 459557aadc grandpa: allow noting same set in gossip with different authorities (#5323)
* grandpa: allow noting same set in gossip with different authorities

* grandpa: add test for note_set behavior
2020-03-20 19:07:10 +01:00
Bastian Köcher 5688f0b293 Update sysinfo to fix compilation on Windows (#5338) 2020-03-20 19:00:39 +01:00
Hero Bird 017f218926 Implement ext_ hashes for contracts (issue #5258) (#5326)
* Implement ext_ hashes for contracts (issue #5258)

* load cryto hash .wat from raw string literal instead of file

* update .wat contents for testing crypto hashes

* remove unnecessary 'static

* fix bug in input (call_indirect required 1+ at least it seems)

* no longer use scratch buffer for crypto hash functions

* improve doc comments of ext_ hash functions

* remove unnecessary comment in .wat test file

* add return value (const 0) to contract test to hopefully enable result buffer

* fix bug in contract assertion

* implement proper output_len in contract

* implement proper test for crypto hashes

* bump spec_version 238 -> 239

* fix COMPLEXITY description

* remove final invalid instances of scratch buffer from docs
2020-03-20 18:46:51 +01:00
Bastian Köcher 46458f4082 Make sure frame examples compile for wasm (#5332)
* Make sure frame examples compile for wasm

This makes sure that `frame-example` and `frame-example-offchain-worker`
compile for wasm.

This also fixes compilation for these crates. The offchain worker
example doesn't use serde-json anymore as that is too heavy and breaks
`no_std` compilation.

* Apply suggestions from code review

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

Co-authored-by: Nikolay Volf <nikvolf@gmail.com>
2020-03-20 16:57:39 +01:00
Pierre Krieger 57af4facbd Remove the #[doc(hidden)] reexports of sc_network (#5264)
* Remove the #[doc(hidden)] reexports of sc_network

* Fix tests not building
2020-03-20 16:42:00 +01:00
Benjamin Kampmann 62b3e57470 Ensure schnorrkel is always _at least_ 0.9.1 (#5333) 2020-03-20 16:41:35 +01:00
Chevdor 17f6b4b8fb WIP: Upgrade kvdb_rocksdb dependency (#914)
* Add clang

* Upgrade kvdb-rocksdb version
2020-03-20 11:26:52 -04:00
Shawn Tabrizi ca3cbbfc14 Benchmark Treasury Pallet (#5287)
* Start benchmarks

* try_origin or root

* More benches

* stuck

* Custom trait functions for benchmarks

* finish benchmarks

* Bump impl

* More comments

* Bump spec

* Remove import

* Update frame/elections-phragmen/src/lib.rs

Co-Authored-By: thiolliere <gui.thiolliere@gmail.com>

* Update frame/support/src/traits.rs

Co-Authored-By: thiolliere <gui.thiolliere@gmail.com>

* Fix merge

Co-authored-by: thiolliere <gui.thiolliere@gmail.com>
2020-03-20 15:08:16 +01:00
Peter Goodspeed-Niklaus a9b9ca5fa8 Factor out can_set_code (#5317)
* Factor out can_set_code

The motivation for this feature is parachain runtime upgrades, which
happen in two different moments: the initial call, when the checks
should be performed, and at the actual upgrade block. It's much
better and more maintainable to just call `can_set_code` in the
function than to manually copy those checks.

I'm not entirely thrilled with the interface, which requires
cloning the entire code vector in `set_code`. However, it looks
like something in `decl_module!` does not play nicely with
references in its function arguments. If `code` has a lifetime,
it _must_ be named, which gives us this signature.

```rust
pub fn can_set_code<'a>(origin, code: &'a [u8]) {
```

Unfortunately, attempting to compile with that signature generates
a very large and baffling collection of build errors, so I decided
to abandon that path for now.

* make can_set_code non-dispatchable per PR revew

Not only can we now borrow the `code` slice, but we also no longer
need to worry about people sending a `can_set_code` transaction because
of some misunderstanding.

* move into existing impl block
2020-03-20 15:00:01 +01:00