Commit Graph

8072 Commits

Author SHA1 Message Date
Benjamin Kampmann ab4c70b379 Update dependencies (#1527)
* update to latest env_logger

* roundabout dependency update

* Update to latest vengen

* Update rand to 0.6

* Update to latest rng shuffle API

* Roundabout update of dependencies

* Update rustc_hex

* Update wasm

* Fix logging setup in tests

* revert to fix test
2019-01-25 12:44:41 +01:00
Bastian Köcher b187695af7 Aura: Remove unused structures and adds SlotDuration::get() (#1565) 2019-01-25 10:56:46 +00:00
Bastian Köcher 27a882bfac Refactor CLI handling (#1368)
* Rework cli handling

* Update readme

* Adds support for custom subcommands and extra run parameters

* Update readme

* Fixes compilation after master merge

* Make "Run" the default subcommand

Actually its hidden to the outside that is an subcommand.

* Rewrite CLI to work without breaking old CLI behavior

* Some cleanup

* Fix incorrect config setup

* Update README

* Fixes after merge

* Fixes incorrect README
2019-01-25 10:48:46 +00:00
André Silva 375e01e6b1 core: grandpa limits votes to 3/4 of the unfinalized chain (#1554)
* core: grandpa limits votes to 3/4 of the unfinalized chain

* core: test grandpa limited votes
2019-01-25 10:37:56 +00:00
Pierre Krieger a1586df41b Report the average network bandwidth (#1551)
* Report the average network bandwidth

* Fix concerns
2019-01-25 10:34:34 +00:00
Shawn Tabrizi aeb6aa8b48 Refactor transfer() logic outside of dispatched function #1555 (#1562)
* Refactor `transfer()` logic outside of dispatched function

* Refactor `transfer()` logic outside of dispatched function

* Refactor `transfer()` logic outside of dispatched function

* Refactor `transfer()` logic outside of dispatched function
2019-01-25 10:33:39 +00:00
Bastian Köcher 6543207062 Fix inconsistency between CheckInherentsResult::new()/default() (#1561) 2019-01-25 11:22:04 +01:00
André Silva 661e91e2c7 core: fix transaction-pool tests (#1557) 2019-01-25 08:49:20 +01:00
Stanislav Tkach 82d014cf35 Remove TODO comment about unboxing state_machine error 2019-01-24 19:10:07 +02:00
Arkadiy Paronyan f38aa0d2de Test syncing to all forks (#1544) 2019-01-24 15:52:48 +00:00
Tomasz Drwięga 1b0d90cdf6 Optimize transaction pool pruning (#1524)
* Reuse tags of known transactions, avoid reimporting extrinsics from imported block.

* Fix tests for graph.

* Add more detailed docs.

* Avoid cloning and computing hashes twice.
2019-01-24 15:52:17 +00:00
Wei Tang 997c8b4020 Atomic operation and locking when importing a block (#1489)
* Add ClientImportOperation and remove an unused enum

* set_aux to insert_aux so that it can be called multiple times

* [WIP] All basic designs of lock_import_and_run

* [WIP] `apply_block` and `apply_aux` implementation

* Update client db with the new interface

* Always make sure we reset importing_block back to None

* Address grumbles

`apply_block` should be pub

* Add comments on insert_aux

* Fix compile
2019-01-24 15:51:53 +00:00
Stanislav Tkach 7f05bd959f Migrate consensus (common, aura-primitives, aura, rhd) to 2018 edition (#1548) 2019-01-24 15:51:33 +00:00
Sergei Pepyakin a5cafa68b1 Update srml-contract to Rust 2018. (#1510)
* Fix imports.

* Remove redundant binding

* Clean extern crates.

* Add comment

* Re-export macros from prelude

* Build fixes

* Update core/sr-std/src/lib.rs

Co-Authored-By: pepyakin <s.pepyakin@gmail.com>
2019-01-24 16:26:53 +01:00
Bastian Köcher 5be237030d Fix warnings in substrate (#1523)
* Fix warnings in substrate

* More warnings removed and wasm updated

* Fixes error on stable and grumbles

* Update wasm files

* Add links to the github issue for replacing `error-chain`
2019-01-24 16:10:07 +01:00
Bastian Köcher e5285e8a8d Adds some derives for the inherent data stuff (#1543)
* Adds some derives for the inherent data stuff

This makes working with them easier.

* More defaults!
2019-01-24 16:09:45 +01:00
Tomasz Drwięga 2c3c4ac0e8 Add missing docs to sr-primitives. (#1531) 2019-01-24 13:49:39 +01:00
André Silva cff0387af0 Reduce consensus gossip spam (#1538)
* core: keep known gossip messages for twice their expiration

* core: test expiration of known gossip messages

* core: only broadcast grandpa votes if authority in current set

* core: only broadcast grandpa commits if authority in current set
2019-01-23 22:12:51 +00:00
thiolliere c0568ba3c6 update primitive-types and solve break changes (#1535) 2019-01-23 18:26:44 +01:00
Robert Habermeier 7c1f92b26f log when it takes a while to import forks we need from GRANDPA (#1533) 2019-01-23 12:22:24 -03:00
Wei Tang dd88dc6cd6 Split BlockImport and JustificationImport (#1521)
* Split BlockImport and JustificationImport

* Remove unused trait impl

* Fix compile

* Fix grandpa tests

* Fix network tests
2019-01-23 12:22:08 -03:00
André Silva 14e8be794f core: fix grandpa authorities enacts_change (#1530) 2019-01-23 12:00:43 -03:00
joe petrowski fe8fab030c Split execute_and_import_block in client into two functions (#1455)
* type error

* borrow problem

* compiles but run error

* tests pass ready for review

* tests pass ready for review

* fix comments by rob

* removed clone

* style fix

* updating

* resolved conflicts

* fixed comments
2019-01-23 15:27:35 +01:00
Pierre Krieger d30a8e0bc3 Log the clogging networking messages (#1532) 2019-01-23 15:24:25 +01:00
Pierre Krieger cd86643f33 Report when peer is clogged (#1528) 2019-01-23 14:30:20 +01:00
Stanislav Tkach 28c37ef419 Migrate basic-authorship, cli and client-db crates to 2018 edition (#1529) 2019-01-23 14:27:40 +01:00
Bastian Köcher ac065a96ba Make impl_outer_inherent do not require Extrinsic to be imported (#1526) 2019-01-23 13:41:14 +01:00
Bastian Köcher 70b1af7b1e Rewrite Inherent data (#1488)
* Implement new inherent data

* Fixes compilation on wasm

* Fixes after rebase

* Switch back to generate inherent stuff by macro

* Update after rebase

* Apply suggestions from code review

Co-Authored-By: bkchr <bkchr@users.noreply.github.com>

* Fix compilation after rebase

* Address grumbles

* Remove `InherentDataProviders` from `Client`

* Update wasm files after rebase

* Address grumbles

* Fixes compilation after latest merge

* Last fix
2019-01-22 17:52:08 +01:00
thiolliere b14917e63f compact Permill (#1522) 2019-01-22 15:17:26 +01:00
thiolliere 2492931944 compact param in calls (#1499)
* impl #[codec(compact)] for param

* update modules

* test all and build runtime

* Update srml/support/src/dispatch.rs

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

* Update srml/support/src/dispatch.rs

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

* delete wip comment

* update param to use #[compact] instead of Cmpact<>

* fmt

* impl metadata

* test metadata

* add compact attr test

* script buid

* update test
2019-01-22 14:42:13 +01:00
Benjamin Kampmann 8f38593def Change trie deps from github to release (#1520) 2019-01-22 13:39:16 +01:00
Sergei Pepyakin 58cd6530be Dispatch Calls to other modules (#1473)
* WIP

* Use system::Origin::Signed as an origin

* Add a vm test for ext_dispatch_call

* Take fee for dispatching a Call

# Conflicts:
#	node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm

* Clean & Rebuild

# Conflicts:
#	node/runtime/wasm/target/wasm32-unknown-unknown/release/node_runtime.compact.wasm

* Dispatch call test.

* Rebuild the runtime.

* Fix the length of the buffer.

* Rebuild binaries.
2019-01-22 13:10:14 +01:00
kyegupov 22b65c9cb0 Documentation for the macros that define a Runtime and associated types. (#1516) 2019-01-22 11:09:25 +01:00
Michael Müller bcfb75b78e Get rid of memcpy in to_vec() (#1512) 2019-01-22 09:45:03 +01:00
Robert Habermeier 9ae1316c86 a wrapper network for rebroadcasting GRANDPA messages periodically (#1513) 2019-01-21 16:33:07 -03:00
Pierre Krieger 3c7d6c7b72 Add some networking tests (#1480) 2019-01-21 19:26:12 +01:00
Tomasz Drwięga e48291acd0 camelcase structs returned over RPC (#1507) 2019-01-21 19:25:58 +01:00
cheme 8ec759d32e Temporary fix for serde issue (#1511)
* Generate serde bound instead of relying on serde_derive.

* remove comment
2019-01-21 19:23:22 +01:00
André Silva 7ccd294de4 core: revert grandpa authorities unless imported blocked is queued (#1508)
* core: revert grandpa authorities unless imported blocked is queued

* core: fix deadlock in `GrandpaBlockImport`
2019-01-21 15:01:27 -03:00
Sergei Pepyakin 603392a9b9 Remove gas function from the public API (#1503)
* Disallow importing `gas` function

* Update srml/contract/src/wasm/prepare.rs

Co-Authored-By: pepyakin <s.pepyakin@gmail.com>
2019-01-21 16:21:32 +01:00
Michael Müller c2f7993d0f Fix wasm allocator (#1506)
* Better allocator for wasm (#1460)

* Add Arch Linux installation instructions

* Enable tracing heap size

* Extract heap

* Replace linear allocator with buddy allocator

* Fix test

The purose of this big block is for the tests
to test a failure when the block is too big
though. The improved buddy allocation strategy
results in this block fitting on the heap now.
Hence the increase.

* Get rid of memcpy in to_vec()

* fixup: Style and comments

* fixup: Split Linux instructions by distribution

To prevent misunderstandings of people executing both.

* fixup: Remove unnecessary types and code

* fixup: Make Pointers start from 1, remove some panics, code improvements

* fixup: Return 0 on errors

* fixup: Move loop to separate function

* fixup: Use FnvHashMap instead of HashMap

* fixup: Fix error handling

* fixup: Use current_size() instead of used_size()

* fixup: Fix and document allocation offset

* fixup: Remove unnecessary multiplication

* fixup: Fix comments

* fixup: Remove Arch installation instructions

* Revert "Fix test"

This reverts commit 292c177df8efaa4658293748a13b1ab1c0b76ea8.

* fixup: Remove unused code, improve import

* fixup: Proper alignment

* fixup: Do not use internal constant in public description

* fixup: Add comment regarding invariants

* fixup: Move assertion to compile-time check

* Fix bug in necessary tree level calculation

The tree levels necessary to house a number
of nodes was calculated incorrectly.

* Improve naming
2019-01-21 16:20:18 +01:00
Pierre Krieger f67c2cc181 Store identification info about the remote (#1500)
* Store identification info about the remote

* Add node name on the wire

* Fix tests
2019-01-21 14:33:25 +01:00
Bastian Köcher 010e63116f Make runtime api calls native when possible (#1302)
* Add simple benchmark for the runtime api

* Make the executor support native calls

* Some documentation

* Hide behind `feature = "std"`

* Rework the native calls

* Make all tests compile again

* Make every parameter using the Block serialized/deserialized in the native call

* Forward `UnwindSafe` requirement

* Remove debug stuff

* Add some documentation

* Fixes warnings

* Fixes errors after master rebase

* Fixes compilation after master rebase

* Fixes compilation after rebase
2019-01-21 14:32:53 +01:00
Sergei Pepyakin f0dbcf5401 Verify that contracts cannot use float operations (#1504) 2019-01-21 14:04:58 +01:00
Marcio Diaz b57486c74f Fix revert for non finalized blocks (#1479)
* fix: temporal modification to make revert works for non finalized blocks

* fix: print info when the number of blocks asked to revert is higher than the number of reversible blocks

* fix: remove function get_db_path_for_subcommand and remove it from all subcommands

* fix: revert only non finalized blocks

* fix: improve printed information for revert command

* fix: new wasm file

* chore: remove unused parameter

* fix: revert log logic

* fix: subcommands should take sub_matches instead of matches

* fix: removing confusing message
2019-01-21 13:52:33 +01:00
Bastian Köcher aad569a1e6 Revert new wasm allocator (#1502)
* Revert "Better allocator for wasm (#1460)"

This reverts commit 1ccb590d18.

* Update wasm files
2019-01-21 12:52:44 +01:00
kyegupov 3857d8aa49 Inline documentation for the decl_module macro and associated types. (#1501) 2019-01-21 12:44:39 +01:00
André Silva 399cee310a Sync block justifications (#1410)
* core: sync protocol for justifications

* core: basic test for justification sync

* core: pass block number with justification

* grandpa: request justifications when importing change blocks

* core: pass finality notifications to chain sync

* core: require justifications for pending change blocks on start

* core: avoid requesting justifications from previous failed peers

* core: timeout block justification requests

* core: add some docs

* core: fix unused variables warning

* core: tick pending justifications fetch periodically

* grandpa: add test for syncing justifications

* core: early exit dispatch of pending justifications

* core: style fix

* core: grandpa: change logging level

* core: sync: add missing docs

* core: network: report peer on bad justification

* core: replace mem::replace with Option::take

* core: revert authority set changes on failed block finalization

* core: grandpa: add docs to import_justification

* core: warn on re-finalization of last finalized block

* core: only notify sync with last finality notification

* core: style fix

* core: add docs for PendingJustifications

* core: network: use BlockRequest messages for justification requests

* core: reference issues in todo comments

* core: grandpa: revert authority set changes on db

* core: grandpa: remove inconsistent state warning
2019-01-21 07:04:01 +01:00
Robert Habermeier 3ea681998a remove unneeded iterator bound on ordered_trie_root (#1490) 2019-01-20 15:49:29 +01:00
Pierre Krieger 763d133173 Put back support for WebSockets in the transport (#1486) 2019-01-19 12:41:17 +01:00