Commit Graph

77 Commits

Author SHA1 Message Date
Arkadiy Paronyan 504e2f8bd5 Check block CLI command (#4240)
* Check block operation

* Update client/cli/src/lib.rs

* Update client/cli/src/params.rs
2019-11-28 11:24:28 +00:00
Tomasz Drwięga f78b83e363 Handle Grafana server bind errors gracefuly. (#4241)
* Fix error handling for grafana sever start.

* Update client/grafana-data-source/src/server.rs

Co-Authored-By: Pierre Krieger <pierre.krieger1708@gmail.com>
2019-11-28 11:16:54 +00:00
Qinxuan Chen 4a21f9bbfd Prune some duplicate dependencies (#4219)
* Prune some duplicate dependencies

* Remove ed25519-dalek 0.9.1
* Remove hex 0.3.2
* Remove parity-wasm 0.40.3
* Remove pwasm-utils 0.11.0
* Remove wasmi-validation 0.2.0
* Remove quickcheck 0.8.5
* Remove tempdir (Replace tempdir with tempfile)

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* Remove useless tempdir_with_prefix

Signed-off-by: koushiro <koushiro.cqx@gmail.com>

* Remove derive_more 0.15

Signed-off-by: koushiro <koushiro.cqx@gmail.com>
2019-11-28 09:55:30 +01:00
Svyatoslav Nikolsky a782021ee8 Recover transaction pool on light client (#3833)
* recover tx pool on light client

* revert local tests fix

* removed import renamings

* futures03::Future -> std::future::Future

* Update core/transaction-pool/graph/src/error.rs

Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com>

* replace remove_from_ready with remove_invalid

* avoid excess hashing

* debug -> warn

* TransactionPool + BasicTransactionPool

* pause future tx reject when resubmitting

* bump impl_version to make CI happy

* and revert back local test fixes

* alter doc to restart CI

* Transaction::clone() -> Transaction::duplicate()

* transactions -> updated_tranasctions

* remove explicit consensus-common ref

* ::std:: -> std::

* manual set/unset flag -> calling clusore with given flag value

* removed comments

* removed force argument

* BestIterator -> Box<Iterator>

* separate crate for TxPool + Maintainer trait

* long line fix

* pos-merge fix

* fix benches compilation

* Rename txpoolapi to txpool_api

* Clean up.

* Finalize merge.

* post-merge fix

* Move transaction pool api to primitives directly.

* Consistent naming for txpool-runtime-api

* Warn about missing docs.

* Move  abstraction for offchain calls to tx-pool-api.

* Merge RPC instantiation.

* Update cargo.lock

* Post merge fixes.

* Avoid depending on client.

* Fix build
2019-11-28 00:00:54 +00:00
Bastian Köcher 3e26fceda4 The storage runtime interface should not enforce a hash type (#4231)
* The storage runtime interface should not enforce a hash type

Currently the runtime interface enforces `H256` as hash type, but in the
future people could use whatever they want as hash type. The hash type
always needs to match between the runtime and the node, but that is
already required.

* Update primitives/externalities/src/lib.rs

Co-Authored-By: thiolliere <gui.thiolliere@gmail.com>
2019-11-28 00:00:28 +00:00
Robert Habermeier 9973432342 back-off block proposal (#4235) 2019-11-27 21:53:34 +00:00
Weiliang Li dcaabbaacf Add sha2-256 hash function (#4218)
* Add sha2-256 hash function

Widely used hash function, supported by bitcoin and ethereum

* Add runtime io support

* add test

* add test

* Update hashing.rs

* Update hashing.rs
2019-11-27 17:32:35 +00:00
Wei Tang f8bf17dc49 Make block proposing remaining duration configurable (#4215)
* Make proposing remaining duration configurable

* Pass chain_head to proposing_remaining_duration and change default
2019-11-27 17:44:34 +01:00
Benjamin Kampmann bd652793db Remove all (non-dev) client references from frame, activate dependency enforcer (#4184)
* Move transaction pool to primitives

* move backend, errors into primitives

* remove unused client depencies

* Move rpc-api into primitives

* Move peerset back to client

* Move rpc/api back to client, move palette/support/rpc into utils

* move support-rpc into subfolder

* move system-rpc into utils

* move transaction-pool  and -graph back into client

* fix broken imports

* Clean up test primitives

* Make support test utils independent of frame

* remove unnecessary node dependencies from service

* Reactivate dependency script:
 - only enforce the now achieved status quo will remain
 - allow for primitives to depend on /client for now without failing
 - more discriptive error message so people understand, what it wants
 - minor fix to differentiative between ../client and /client (which may be a subfolder)
 - don't allow this to fail anylonger.

* fix doc comment

* 'Should not' rather than 'must not'.

* Revert unwanted dependency changes

* fix faulty import

* fixup derive_more version

* fix wrong import path
2019-11-26 21:38:28 +01:00
Marcio Diaz b2aab98e69 Add graphs for each function name (#4214) 2019-11-26 20:06:32 +01:00
Wei Tang b362be3ff3 Move block proposing execution to dedicated blocking threadpool (#4202)
* Move block proposing execution to dedicated blocking threadpool

* typo: move comments around

* Fix tests
2019-11-26 20:00:00 +01:00
Qinxuan Chen c7d9c58ce8 Update some dependencies: (#4207)
- derive_more 0.15 -> 0.99
- strum 0.15 -> 0.16
- slog_derive 0.1 -> 0.2

Signed-off-by: koushiro <koushiro.cqx@gmail.com>
2019-11-26 18:39:58 +01:00
Gav Wood a758d54f6e Remove tab (#4212) 2019-11-26 18:39:08 +01:00
Robert Habermeier 52b5dee4f9 skip passed slots and wake up service correctly (#4212) 2019-11-26 18:38:03 +01:00
Robert Habermeier 5010faa9bd update finality-grandpa to v0.10.1 (#4213) 2019-11-26 17:25:07 +00:00
Marcio Diaz e1a911cac4 Add receiver for Grafana (#4211) 2019-11-26 18:17:34 +01:00
Arkadiy Paronyan 53a482146b Time-based gradual gossip (#4176) 2019-11-26 18:17:14 +01:00
Tomasz Drwięga cfb590ac4b Allow batch query for block hash. (#4210) 2019-11-26 18:07:31 +01:00
Bastian Köcher 9ead395bff Give state_col 90% of memory budget and fix other col calculation (#4208)
* Give `state_col` 90% of memory budget and fix other col calculation

* Set default db cache size to 1024
2019-11-26 13:25:43 +01:00
Tomasz Drwięga 309c6c70d8 Remove keystore when doing calls and producing a proof (#4196)
* Remove keystore parameter.

* Fix tests.
2019-11-25 19:55:21 +01:00
Pierre Krieger d8ca2f37df Make spawn_essential_task more strict (#4198) 2019-11-25 17:48:25 +01:00
Arkadiy Paronyan d56d6163ef Fixed shared cache race on import (#4194)
* Fixed is_best race on import

* Take import lock outside of backend

* Actually take the lock
2019-11-25 13:38:37 +01:00
Bastian Köcher f0fc2d89d2 Switch to new kvdb-rocksdb (#4186)
* Switch to new rocksdb with some hacks to resolve linking errors

Rocksdb and `wasmtime-environ` both link `zstd`. In the final link step,
this leads to linking errors because of duplicate symbols. The linked
Rocksdb fixes this by using `zstd-sys` as well. However, this currently
also requires modifications in `zstd-sys`. Someone will need to come up
with a better implementation.

* Switch to new version of kvdb-rocksdb

* Update client/db/src/utils.rs

Co-Authored-By: Shawn Tabrizi <shawntabrizi@gmail.com>
2019-11-23 23:28:42 +01:00
Sergei Pepyakin 68351da29b Renaming and documentation for ApplyResult, ApplyOutcome and et al (#4134)
* Remove superflous errors from the system module

* Rename and document InclusionOutcome

* Rename InclusionError

* Remove unused inclusion errors.

I left the enumeration though since other elements might be used some day.

* Rename and document DispatchOutcome

* Apply suggestions from code review

Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com>

* TransactionValidityError instead of InclusionError

* Rename InclusionOutcome to ApplyExtrinsicResult

* Update docs.

* Update lib.rs

should be → is

* Bump the block builder API version.

* Fix the should_return_runtime_version test

* Clean the evidence
2019-11-22 17:15:58 +01:00
Tomasz Drwięga 86b6ac5571 Offchain execution extensions (#4145)
* Pass Extensions instead of individual objects.

* Move TransactionPool to a separate ExternalitiesExtension.

* Fix compilation.?

* Clean up.

* Refactor testing utilities.

* Add docs, fix tests.

* Fix doctest.

* Fix formatting and add some logs.

* Add some docs.

* Remove unused files.
2019-11-22 17:10:23 +01:00
Ashley 145efab68f Grafana integration (#3913)
* Very WIP

* record_metrics macro works

* Integrate into service

* Licenses and documentation

* Remove unused Debugs, make respond function clearer

* Conform to line widths, fix service test

* Switch to storing the timestamps as millis instead

* Update core/grafana-data-source/src/lib.rs

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

* Transform timestamps to i64 in serialization

* Fix license date

* Binary sort to find selection range for metrics

* Obey maxDataPoints

* Run a cleaning future

* Newlines at EOF

* Update core/service/Cargo.toml

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

* Update core/grafana-data-source/src/lib.rs

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

* Fix indentation

* Improve select_points

* Made test more accurate

* Inprogress

* Use the same futures version as hyper for now

* Error handling

* Remove dependence on hyper's tokio feature

* Added target_os flag

* Update Cargo.toml

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

* Simplify example

* Remove compat wildcard

* Updated lock file

* Fix indentation 😉
2019-11-22 15:49:49 +01:00
Pierre Krieger 458dba5ce5 Improve logging for reserved peers (#4183) 2019-11-22 15:24:27 +01:00
mattrutherford 9cc16e539e Add instrumentation, with performance profiling capability (#4132)
* Implement instrumentation for performance profiling

* Add profiling to runtime functions declared in `decl_module` inc.
`on_initialize` and `on_finalize`

* Remove changes

* add docs, tidy up

* fix versions

* fix copyright date

* switch to hashmap and instant

* update example

* update example

* implement receiver for logger and make default

* fix comment

* use `if_std!` macro

* remove whitespace

* fix whitespace

* fix nits
2019-11-22 15:21:36 +01:00
Seun LanLege 04bd926923 Better docs for TxPool::import_notification_stream (#4157)
* better docs for import_notification_stream

* Apply suggestions from code review

Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
2019-11-22 13:45:05 +01:00
Robert Habermeier 5a8146d64e Updating GRANDPA to v0.10.0 (#4174)
* update finality-grandpa to v0.10.0 rev

* add concluded implementation to environment

* also update state when concluding

* switch to the cargo version

* address comment grumbles
2019-11-22 13:18:31 +01:00
Ashley 1735683cc9 Upgrade from futures-preview to futures 0.3.1, and remove futures 0.1 where currently possible (#4083)
* Migrate node and node-template

* Migrate srml

* Simple changes

* Add async-std for interval

* Fix test-runtime warning

* Small changes

* move futures01 in core/rpc to dev-deps

* Change wasm CI builds

* Switch to async-std 1.0.1

* Remove async-std dep of network

* Add modified lockfile

* Fix node cli browser build

* Remove authority-discovery async-std dep

* Add Send + Sync to interval dyn stream
2019-11-22 13:06:23 +01:00
Gavin Wood 795701608c grandpa: voting rules shouldn't restrict past round base (#4155)
* grandpa: voting rules shouldn't restrict past round base

* grandpa: fix lower bound on vote restriction. add test
2019-11-22 13:05:52 +01:00
Tomasz Drwięga 872c04b304 Revert "Fix serialization of transaction_paymentInfo" (#4166)
* Revert "Fix serialization of `transaction_paymentInfo` (#4146)"

This reverts commit 613b5e7e2d.

* Revert chain-spec too.

* Bring back camelCase and test.
2019-11-21 16:08:54 +01:00
Bastian Köcher b1625f1a44 Fix node-rpc-client compilation (#4159)
* Fix `node-rpc-client` compilation

* Enable `alloc` feature of `zeroize` on `std`
2019-11-20 21:33:20 +01:00
Sergei Pepyakin df7d3982d7 Use crates.io version of wasmtime (#4135)
* Use crates.io version of wasmtime

* Update cranelift-* to 0.50

* Update trampoline generation code.

* Update wasmtime to 0.8

* pretty print trampoline compilation errors
2019-11-20 20:03:54 +01:00
Bastian Köcher 75b6b51782 Support custom runtime interfaces in native executor (#4129)
This makes it possible to use custom runtime interfaces within your
runtime by registering them at the native executor.
2019-11-20 19:06:52 +01:00
André Silva 16ad04e847 grandpa: increase timeout for catch up requests (#4149) 2019-11-20 11:01:53 -05:00
Benjamin Kampmann 303843f483 Move inherents to primitives (#4126)
* Split Aura and Timestamp inherents out of paint

* fixup node depedencies

* move babe inherents to primitives

* move authorship inherents into primitives

* Move finalty tracker inherents into primitives

* fix aura primitives import
2019-11-20 12:18:36 +01:00
Gavin Wood 5979a8c3e5 Revert "grandpa: voting rules shouldn't restrict past round base (#4150)" (#4154)
This reverts commit 364df30970.
2019-11-20 10:48:55 +01:00
Pierre Krieger f9a4cff50a Remove the exit parameter from importing and exporting blocks (#3954)
* export_blocks now generates a Future

* Handle the export blocks exit in substrate-cli instead

* Turn import_blocks entirely into a Future

* Move the exit parameter to substrate-cli for imports
2019-11-20 10:03:43 +01:00
Bastian Köcher 75a0a3f6fd Fix forks_should_work_correctly test (#4152)
When we enabled arbitary precision for `serde_json`, the feature leaked
through the whole workspace. The given test fails because of some bug in
serde json when the feature is enabled.
2019-11-20 09:51:09 +01:00
André Silva 364df30970 grandpa: voting rules shouldn't restrict past round base (#4150) 2019-11-20 09:50:36 +01:00
Pierre Krieger 4e8b68dd14 Fix the status-sinks tests, hopefully (#4140) 2019-11-19 18:59:53 +01:00
Tomasz Drwięga 613b5e7e2d Fix serialization of transaction_paymentInfo (#4146)
* Add serialization test for u128

* Fix crash on serde of u128
2019-11-19 18:42:35 +01:00
Svyatoslav Nikolsky b5f8eb5ac3 Finality proof: fetch new authorities set instead of previous one (#4112)
* fetch new authorities set instead of previous one

* fixed leftovers + updated test properly

* read initial authorities once

* updated comment

* fix grumbles
2019-11-19 17:37:36 +03:00
André Silva 9194b2a3c0 gossip: replace LRU cache (#4137)
* peerset: remove unused dependencies

* gossip: replace lru cache

* header-metadata: replace lru cache
2019-11-19 10:58:06 +01:00
Benjamin Kampmann 60e5011c72 Reorganising the repository - external renames and moves (#4074)
* Adding first rough ouline of the repository structure

* Remove old CI stuff

* add title

* formatting fixes

* move node-exits job's script to scripts dir

* Move docs into subdir

* move to bin

* move maintainence scripts, configs and helpers into its own dir

* add .local to ignore

* move core->client

* start up 'test' area

* move test client

* move test runtime

* make test move compile

* Add dependencies rule enforcement.

* Fix indexing.

* Update docs to reflect latest changes

* Moving /srml->/paint

* update docs

* move client/sr-* -> primitives/

* clean old readme

* remove old broken code in rhd

* update lock

* Step 1.

* starting to untangle client

* Fix after merge.

* start splitting out client interfaces

* move children and blockchain interfaces

* Move trie and state-machine to primitives.

* Fix WASM builds.

* fixing broken imports

* more interface moves

* move backend and light to interfaces

* move CallExecutor

* move cli off client

* moving around more interfaces

* re-add consensus crates into the mix

* fix subkey path

* relieve client from executor

* starting to pull out client from grandpa

* move is_decendent_of out of client

* grandpa still depends on client directly

* lemme tests pass

* rename srml->paint

* Make it compile.

* rename interfaces->client-api

* Move keyring to primitives.

* fixup libp2p dep

* fix broken use

* allow dependency enforcement to fail

* move fork-tree

* Moving wasm-builder

* make env

* move build-script-utils

* fixup broken crate depdencies and names

* fix imports for authority discovery

* fix typo

* update cargo.lock

* fixing imports

* Fix paths and add missing crates

* re-add missing crates
2019-11-14 21:51:17 +01:00
Gav 4582038b3d Fix warning and directory restructure. 2018-02-08 14:29:30 +01:00
Gav fde80b7b27 Fix more nits. 2018-02-08 08:51:57 +01:00
Gav 5c842f77bc Many renames.
- Everything polkadot becomes polkadot-.
- Wasm (substrate) executor tests split from Wasm (Polkadot) runtime and
built independently.
2018-02-07 23:36:34 +01:00