Commit Graph

2421 Commits

Author SHA1 Message Date
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
Gav 3d0a44c8a9 Moving rpc to substrate in name. 2018-02-07 22:59:35 +01:00
Gav b1537185fa Unknit rpc from polkadot. 2018-02-07 22:31:22 +01:00
Gav 692770e03f Split up substrate-executor into polkadot-executor. 2018-02-07 18:44:00 +01:00
Gav ef059b81f1 All tests compile. Most tests work. 2018-02-07 16:34:18 +01:00
Gav dcff8f1a2f Full native build with new structure.
No tests yet.
Wasm build still pulls in std.
2018-02-07 15:54:18 +01:00
Gav 26b4b56402 Remove CallData/OutData. 2018-02-07 13:02:57 +01:00