Commit Graph

100 Commits

Author SHA1 Message Date
Niklas Adolfsson b9bc61fc93 Update Cargo.toml 2022-02-03 15:56:28 +01:00
Niklas b53ae9f433 remove embedded client 2022-02-03 15:28:52 +01:00
Niklas fa3b9057ae fixes 2022-02-03 00:37:43 +01:00
Niklas 8dc7dda99c Merge remote-tracking branch 'origin/master' into na-jsonrpsee-core-client 2022-02-02 19:16:59 +01:00
James Wilson 55f04c20a7 Move Subxt crate into a subfolder (#424)
* move into subfolder step 1

* Make folders a workspace again

* Move examples into their own workspace crate to make them more visible and easier to run

* clippy fix

* newline

* tweak releasing steps for folder move

* reference exampels more clearly in top level readme
2022-02-02 12:15:44 +00:00
David 667dfa291c Release prep for v0.16.0 (#417)
* Draft changelog

* Bump (and normalize version): v0.16.0

* Update changelog

* Update Cargo.toml

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Add not about 0.16 being disruptive

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2022-02-01 10:48:41 +00:00
Andrew Jones cc0f980d95 Use released substrate dependencies (#375)
* WIP update dependencies to crates versions

* Use released versions of sp-version and sp-arithmetic

* Attempt to align version of sp-keyring used to correspond to 4.0.0 releases. No luck but closer

* sp-keyring 4.0.0

* also sp-keyring 4.0.0 for macro crate

* simplify cargo.tomls

Co-authored-by: James Wilson <james@jsdw.me>
2022-01-17 14:25:15 +00:00
James Wilson 96fe1d61a9 Remove bounds on Config trait that aren't strictly necessary (#389)
* Use Derivative to skip bounds on T when they aren't necessary, and remove unnecessary bounds on Config

* loosen a couple more derive bounds

* Use PhantomDataSendSync to avoid accidentally removing Send+Sync bounds
2022-01-13 16:07:27 +00:00
Paulo Martins 30665bf1c2 fix remote node (#386) 2022-01-06 10:08:14 +01:00
James Wilson 26258c84cc Update to jsonrpsee 0.7 and impl Stream on TransactionProgress (#380)
* Update to jsonrpsee 0.7 and impl Stream on TransactionProgress

* Fix doc links after rename to next_item

* Add another doc comment
2022-01-04 15:05:53 +00:00
Niklas e2a93e3abb use jsonrpsee crates.io release 2021-12-22 16:22:40 +01:00
Niklas bca14735ab hacky update jsonrpsee 2021-12-22 13:19:54 +01:00
Niklas 2bfc3898b7 hacky 2021-12-21 16:39:02 +01:00
Niklas 752c19e2f4 update jsonrpsee 2021-12-21 11:06:59 +01:00
David 55aafa25d8 Simpler dependencies (#353)
* Don't re-export sp-arithmetic
Add sp-arithmetic to dev-dependencies
Don't use any default features

* Update Cargo.toml

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Update Cargo.toml

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Update Cargo.toml

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2021-12-06 10:17:39 +00:00
Niklas Adolfsson a45bf143bb add client example should be removed from this repo 2021-11-30 19:35:42 +01:00
Niklas Adolfsson c8b090751b PoC async rpc client 2021-11-30 17:04:29 +01:00
James Wilson 4b9ee133ac Ensure metadata is in sync with running node during tests (#333)
* add test-runtime crate to dynamically obtain metadata/node_runtime for tests

* cargo fmt

* Download substrate prior to cargo calls (hopefully)

* add README explaining test-runtime

* Fix CI, fmt and clippy

* more clippy

* tweak test-node readme

* fmt the clippied

* A little tidy up in build.rs

* use ureq and raw string

* Don't export unnecessary metadata

* async_std/RpcClient/bytes instead of ureq/Value/hex

* newline

* document try_from_url error unwrap
2021-11-29 09:39:40 +00:00
Andrew Jones 7e26f9559c Update to jsonrpsee 0.5.1 (#332)
* Update to jsonrpsee 0.5.1

* Use jsonrpsee wrapper crate
2021-11-26 10:36:33 +00:00
Andrew Jones a170a57641 Update jsonrpsee (#317) 2021-11-11 15:43:04 +00:00
Andrew Jones 793c945fbd Generate runtime API from metadata (#294)
* Remove test macro

* Remove client crate

* Create tests crate and move pallet specific tests there

* Extract client, remove metadata and extra, more demolition

* Update substrate dependencies to git dependencies

* Remove Store stuff for now

* Comment out some Call usages

* Add back Runtime trait coped from original System trait

* Make subxt lib compile

* Delete old proc macros and copy over type generation from chameleon

* WIP make transfer balance test pass

* Change to subxt attribute macro

* WIP provide user defined type substitutes

* User defined type substitutes compile

* WIP submitting transactions

* WIP transfer balance test

* Fix macro

* Cargo fmt

* WIP generating storage hashers

* WIP add AccountData trait for fetching the nonce

* Support single type storage map keys

* WIP impl AccountInfo retrieval

* Fix up storage struct generation

* Implement AccountData triait directly on storage entry

* Borrow storage map key and convert account id

* Implement storage fetch client methods

* Remove legacy metadata storage key construction

* Rename CheckEra to CheckMortality

* Substitute perthings types for compact impls

* Fmt

* Downgrade dyn-clone for cargo-contract compat

* Scale-fo 1.0

* scale-info 1.0

* Remove special range handling

* Restore wildcard type params

* Frame metadata 14.0

* WIP decoding events

* WIP more dynamically decoding events

* Fmt

* Decode events, handle errors

* Uncomment some tests

* Remove unused get_mod function

* Fix some warnings

* Fix some more warnings

* Fix some more warnings

* Add tests mod

* Rename node-runtime tests mod to frame

* Fix some warnings

* Fmt

* WIP generate storage client with getters

* Storage client compiling

* Generate storage client api

* Fix up system account query account ids

* WIP generating tx api fns

* Only generate tx api fields when calls available

* Fix tx api call fns

* Fmt

* WIP generate event structs

* call functions not async

* Derive Eq for comparison on generated types

* Generate event structs

* Fix call name

* Fmt

* Update node runtime metadata to substrate c000780db

* Download latest substrate release for integration testing

* Fix event decoding

* Remove unused imports

* Fix plain storage access, total_issuance pass

* Fmt

* Restore contracts tests

* Backoff connecting to substrate node

* Add required TypeInfo impls for local SignedExtension impls

* Remove unnecessary assert formatting

* Fix handling of DispatchError

* Refactor contracts tests

* Troubleshooting contract not found

* Remove more client feature stuff

* Fix dynamic event variant decoding, write consumed index to output

* Fmt

* Use substrate branch with heavy dependency removed

* Remove sp-rcp dependency, define types locally

* Ignore cargo timeing files

* Use my branch for substrate test deps

* Fix storage key type gen

* Comment out fetching contract info

* Add key iteration, extract storage client from main client

* Debugging key generation

* Use substrate master branch

* Fix call test

* Remove TypeSegmenter and dynclone dependency

* Publicly expose Rpc mod

* Unused import warnings

* Add getter for runtime metadata

* Add pallet and event indices for raw events

* Add is_call and is_event convenience trait functions

* Add missing docs

* Refactor tests crate

* Restore remaining client tests

* Fmt

* Fix warnings

* Restore get_mod as test helper and fmt

* Use client references for api calls

* Fix api usages with methods

* Use Bytes for RawEvent debug

* Update metadata

* Restoring some Balances tests

* Populate runtime storage metadata

* Restore balances lock test

* Restore Balances error test

* Fmt

* Restore transfer subscription API

* Staking test

* Restore another staking test

* Restore another staking test

* Restore another staking test

* Partially restore chill_works_for_controller_only staking test

* Fix fetching Optional storage entries

* Restore staking bond test

* Restore remaining staking tests

* Fmt

* Restore sudo tests

* Add some system tests

* Fmt

* Resolve some todos

* Remove pass through rpc methods on Client, expose via rpc() getter

* Remove more rpc pass through methods

* Remove submit tx pass through rpc methods

* Add some comments to SubmittableExtrinsic methods

* Construct the runtime api from the client

* Fmt

* Use From trait instead of new for AccountData query

* Rename subxt_proc_macro crate to subxt_macro

* Fix AccountData From impl

* Extract codegen crate from macro crate

* Fmt

* Replace chameleon hidden field name

* Extract StructDef for generating structs

* More refactoring of StructDef, moving towards sharing with typegen

* Replace explicit tests crate with single implicit integration tests crate

* Rename from substrate-subxt to subxt

* Fix runtime path relative to root Cargo.toml

* Move RpcClient creation to RpcClient

* WIP get examples to compile

* Rename Runtime to Config trait

* WIP implementing default Config

* WIP implementing default extrinsic extras

* fix metadata constants (#299)

* Move DefaultConfig definition and impl to macro

* Extract type substitute parsing to ir mod

* Extract calls, events and storage from api generation

* Add some hardcoded type substitute defaults

* Fmt

* Add utility pallet tests (#300)

* add batch call test example

* add pallet utility tests

* add utility module

* fix warnings

* Add polkadot runtime metadata for example

* Fix system errors and fmt

* Add subxt-cli crate

* Add metadata and codegen subcommands

* Make subxt-cli codegen command work

* Fmt

* Add polkadot codegen test

* Comment about how to run codegen

* Derive AsCompact for structs with single concrete unsigned int field

* Fix bitvec codegen, adds as non optional dependency

* Regenerate polkadot api with bitvec fix

* Edition 2021

* Fix polkadot codegen with bitvec

* Polkadot balance transfer is working

* Fix fetch remote

* Fix transfer_subscribe example

* Fix submit_and_watch example

* Fmt

* Generate storage iter method for iterating over keys

* Fmt

* Fix existential deposit test

* Fix staking tests

* Add option for custom generated type derives

* Add generated type derives for test runtime api

* Fmt

* Copy WrapperTypeOpaque from substrate, add Encode/Decode

* Fmt

* Extract type generator to module, separate & fix tests

* Fully qualified primitive and prelude types

* Fix up remaining type gen tests

* Skip formatting of generated polkadot example code

* Remove empty utility test file.

* Newline

* Update cli/src/main.rs

Co-authored-by: David <dvdplm@gmail.com>

* Rename subxt-cli executable to subxt

* Update src/client.rs

Co-authored-by: David <dvdplm@gmail.com>

* Add some code docs to TypeGenerator.

* Extract TypePath to own file

* Extract type def generation to separate file

* Renamed ModuleType to TypeDefGen

* Fmt

* Factor out type parameter from final_key

* Fix some type paths

* Resolve some todos

* Resolve some panic todos in events

* Add EventsDecodingError

* Decode compact composite types with a single primitive field

* Decode compact composite types with a single primitive field

* Update src/metadata.rs

Co-authored-by: Andrew Plaza <aplaza@liquidthink.net>

* Remove Perbill compact substitute types

* Remove todos regarding maintaining Rust code items, promoted to follow up issue.

* Remove todo regarding overridding default config impl

* Remove todo regarding overridding default Extra

* Remove todo regarding AccountData storage type defintion

* Remove todo regarding borrowing storage key arguments

* Remove type substitution tests todo

* Remove `Box` field name type hack todo

* Remove Compact todo

* Remove sudo todos

* Remove BitVec implementation todo

* Fmt

* Add health warning to README

* Fix up health warning

Co-authored-by: Paulo Martins <paulormart@users.noreply.github.com>
Co-authored-by: David <dvdplm@gmail.com>
Co-authored-by: Andrew Plaza <aplaza@liquidthink.net>
2021-11-03 11:28:59 +00:00
Squirrel d582479367 Updated to later version of substrate so that it compiles. (#295)
* Updated to later version of substrate so that it compiles.

(Referencing substrate this way you only have to search and replace one string to upgrade)

* cargo fmt
2021-09-20 09:33:33 +01:00
Greg Hill 2749bd300b deps: update jsonrpsee 0.3.0 (#289)
Signed-off-by: Gregory Hill <gregorydhill@outlook.com>
2021-08-03 10:26:29 +01:00
Niklas Adolfsson 08a3e6574d deps: update jsonrpsee 0.2.0 (#285)
* deps: update jsonrpsee 0.2.0

The motivation is to avoid pinning certain alpha versions and to avoid
breaking users builds without having to some `Cargo.lock` updating.

* cargo fmt

* fix tests

* fix a few clippy lints

* cargo fmt
2021-06-08 19:15:12 +02:00
Liu-Cheng Xu 490836fa2d Reorg the order of deps (#284)
* Reorg the order of deps

This patch is simply for easier editor operation when replacing the
substrate deps.

* .
2021-06-06 17:10:34 +01:00
Niklas Adolfsson 94db874942 update jsonrpsee to 0.2.0-alpha.6 (#266)
* update jsonrpsee to 0.2.0-alpha.5

* downgrade subxt client

* cleanup

* make subxt-client compile again

* update jsonrpsee v0.2.0-alpha.6

* fix build again

* remove needless type hints

* cargo fmt

* address grumbles

* remove remaining type hints

* cargo fmt
2021-05-20 21:48:56 +02:00
Andrew Jones 8bff0bebd4 Remove funty pin, upgrade codec (#265) 2021-04-19 13:03:53 +01:00
Liu-Cheng Xu 0415b5d1f4 Use async-trait (#264)
* Use async-trait

* Use async-trait for store trait too
2021-04-14 16:20:24 +01:00
Niklas Adolfsson 02960a3b0e [jsonrpsee http client]: support tokio1 & tokio02. (#263)
* [jsonrpsee http client]: support tokio1 & tokio02.

* review grumbles: http client make non-optional
2021-04-13 08:28:26 +02:00
Andrew Jones 1a8e0bc63b Release v0.15 (#248)
* Add 0.15.0 changelog section

* Update CHANGELOG.md format

* Bump versions

* Update CHANGELOG.md

* Specify explicit version for client

* Remove unused subxt dev dependency

* Upgrade deps
2021-03-22 17:37:15 +00:00
Andrew Jones 9742c09b27 Remove test-node crate (#254) 2021-03-19 12:42:11 +00:00
Andrew Jones bd885129f3 Spawn test node process for integration tests (#252)
* Move tests to module in own file

* Add test-node-proc crate

* Move test node to main lib, fix compilation errors

* Fmt

* Attempted port scanning

* Use global static port to allocate open ports

* Register missing type sizes

* Fix port scanning and balances test

* Don't wait for blocks on insert_jey test

* Fmt

* Remove unused dependencies

* Download v3.0.0 rust binary

* Move substrate bin to home dir

* Add test instructions to README

* Figure out the $PATH

* Remove path echo

* Add check for missing substrate binary on the PATH

* @niklasad1 review: don't include client feature for tests
2021-03-19 11:28:35 +00:00
Niklas Adolfsson 3b362fb072 update jsonrpsee (#251) 2021-03-16 16:00:32 +00:00
Greg Hill c1d4804ccd implement session handling for unsubscribe in subxt-client (#242)
* implement session handling for unsubscribe in subxt-client

Signed-off-by: Gregory Hill <gregorydhill@outlook.com>

* update jsonrpsee to `v0.2.0-alpha.2`

Closes #241

* use new jsonrpsee request message types in subxt client

Signed-off-by: Gregory Hill <gregorydhill@outlook.com>

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2021-03-09 22:29:21 +01:00
Niklas Adolfsson a920e34c20 integration with jsonrpsee v2 (#214)
* hacky integration with jsonrpsee v2

* stray todos

* fmt

* add http support

* make test build compile

* Update src/rpc.rs

* bring back set_client

* use crates.io version jsonrpsee

* WIP: workaround for embedded subxt client (#236)

* workaround for embedded subxt client

Signed-off-by: Gregory Hill <gregorydhill@outlook.com>

* increase default channel size on subxt client

Signed-off-by: Gregory Hill <gregorydhill@outlook.com>

* remove client tests due to inference problem on From

Signed-off-by: Gregory Hill <gregorydhill@outlook.com>

* add comments for missing impls

* more verbose errors

* make subscription notifs buffer bigger

* fmt

Co-authored-by: Greg Hill <gregorydhill@outlook.com>
2021-03-08 10:52:23 +00:00
Andrew Jones de859e7396 Add hooks to register event types for decoding (#227)
* Global registration of type segmenters for event decoding

* Perform type sizes check when building client

* Introduce EventTypeRegistry for global runtime type sizes

* Fmt

* Register runtime type sizes on creation of EventTypeRegistry

* Register more default dispatch types

* Add missing type sizes

* fmt

* Fix up register_type_size builder method

* Update doc comments

* Make register_default_type_sizes public

* Don't allow duplicate registered types

* Remove call to supertraits type registration, done manually in Runtime

* Fix tests and warnings

* Fix duplicate type registration

* Fmt

* review: use is_empty()

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>

* Add panic docs

Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
2021-02-18 10:28:40 +00:00
Andrew Jones 2c8e5211aa Substrate 3.0 (#232)
* Update substrate deps to 3.0.0 and 0.9.0

* Update substrate wasm tools

* Fixing errors for 3.0.0 compat

* Fixing more errors for 3.0.0 compat

* Use MultiAddress for test runtime

* Fmt

* Fix node test

* Pin Funty

* Update AccountInfo struct

* Add comment about funty pin
2021-02-17 16:45:05 +00:00
Andrew Jones 032ba029af Release v0.14.0 (#226)
* Update CHANGELOG

* Bump versions

* Update client dep versions
2021-02-08 10:51:52 +00:00
Andrew Jones 6175cb70b9 Upgrade dependencies, bumps substrate to 2.0.1 (#219)
* Upgrade dependencies, bumps substrate to 2.0.1

* Upgrade test-node dependencies

* Upgrade client dependencies

* Upgrade proc-macro dependencies

* Revert futures01 dependency

* Upgrade futures

* Remove redundant package specifiers
2021-01-14 16:47:01 +00:00
Andrew Jones 0b3c8d4523 Remove some substrate dependencies to improve compile time (#194)
* Copy ReadProof and TransactionStatus types

* Define local app crypto types

* Fmt

* Restore logging and add comments
2020-12-03 13:20:50 +00:00
David fc2da6b9c7 Release v0.13 (#175)
* Upgrade to substrate 2.0.0

* WIP implement Subcommand manually (see https://github.com/paritytech/substrate/pull/6894#issuecomment-676060197)

* Add pallet-staking/std to the std feature

* Sort out the subcommand impl

* Sort out the module index (ty @ascjones)
Sort out the RefCount type (ty @dvc94ch)
Random tweaks to make test-node more similar to the vanilla node-template

* obey the fmt

* Add changelog and bump versions

* Merge #165 and update CHANGELOG

* Update test-node/runtime/src/lib.rs

Co-authored-by: Demi Marie Obenour <demiobenour@gmail.com>

* Update CHANGELOG.md

Co-authored-by: Demi Marie Obenour <demiobenour@gmail.com>

Co-authored-by: Demi Marie Obenour <demiobenour@gmail.com>
2020-10-05 10:56:27 +02:00
David 8e2a4f06ee Upgrade to substrate 2.0.0 (#173)
* Upgrade to substrate 2.0.0

* WIP implement Subcommand manually (see https://github.com/paritytech/substrate/pull/6894#issuecomment-676060197)

* Add pallet-staking/std to the std feature

* Sort out the subcommand impl

* Sort out the module index (ty @ascjones)
Sort out the RefCount type (ty @dvc94ch)
Random tweaks to make test-node more similar to the vanilla node-template

* obey the fmt

* cleanup

* more cleanup
2020-09-24 12:57:35 +01:00
David 56bd633706 Address review grumbles from #99 (#171)
* Address review grumbles from #99

* obey the fmt
2020-09-22 16:29:29 +01:00
Demi Obenour f9f69b8c3b Staking support (#99)
* Initial Staking API

* Add more staking types

* Reformat

* Remove dead code

* Fix missing documentation

* Reformat

* Staking: use proc macros

* Add partial session support

* Reformat

* Try to implement nomination

This currently fails with compilation errors I do not understand.

* Use the #[module] macro

This fixes a compile error

* Explain undefined method diagnostics

* Use ‘#[module]’ and implement session for Kusama

* Don’t impl ‘Staking’ for all ‘T: System’

* Add staking payout support

* Fix compilation errors and remove useless lifetimes

* Respond to code review

This fixes most of the issues found during review, with the exception of
tests.

* Make signing fallable and asynchronous

This is needed for hardware wallets, which require human confirmation to
sign transactions.  Blocking on a human to sign transactions is not a
good idea, and the signing might fail for many reasons (device
unplugged, authorization not granted, etc).

* Reformat

* Refactor as suggested by Andrew Jones (@ascjones).

* Reformat

* Refactor as suggested by Andrew Jones (@ascjones).

* Trait cleanups

* Make the `Signer` impl require Send + Sync

This is what Ledgeracio needs.

* Use the correct key for staking maps

They use the key type, not ‘PhantomData’.

* Implement set_payee call

* Switch to associated types for Staking

* Implement `set_keys`

This is needed for Ledgeracio.

* Remove impl of Signer for Box<dyn Signer + Send + Sync>

It isn’t needed, since Box implements Deref.

* Fix Polkadot and Kusama ‘SessionKey’ structs

I had failed to include the ‘Parachains’ component, which the default
Substrate runtime doesn’t have.

* Include a copy of `ValidatorId`

This avoids needing to depend on Polkadot.

* Fix syntax error in Cargo.toml

* Fix compile errors

* Add Debug impls

* Fix return type of `BondedStore`

* Use some upstream type definitions

Also add `Default` impls.

* Bump deps and fix build

* Remove last reference to Kusama feature

* Fix compilation errors

* Implement the `concat` in `twox_64_concat`

* Expose properties and per-era preferences

* Era rewards point support

I also did some refactoring.

* Expose clipped exposure

* Era reward points support

* Make `PayoutStakersCall` public

* Add in all default features for debugging

* Chill support and update to latest Substrate

* If property fetch fails, use dummy values

* Fix tests

* Fix header

* Remove some code Ledgeracio does not need

* More deletions

* Remove more code not needed for Ledgeracio

* Remove a pointless change in Cargo.toml

w.r.t. upstream.

* Remove more junk

* Revert contracts put_code test to pure code (not using the macro)

* Test contract instantiate

* Fmt

* WIP

* Add some more submission tests

* Reformat

* More tests

* Cleanup

* Hopefully fix CI

* Remove dead code

* Test chill

* Add missing docs

* Remove unnecessary use

* Revert "Remove unnecessary use"

This reverts commit bc8bc36bde581f1892ea88a778dfe0fe5bff24d7.

* Retry on temporary failures

* Ignore the staking tests on CI

* Obey the fmt

* Run CI with at most one test thread

* Implement tests for staking

* More tests

* Remove unhelpful println!

* Revert changes in contract tests

* Reformat

* Remove spurious diff

* More tests

Co-authored-by: Demi M. Obenour <demiobenour@gmail.com>
Co-authored-by: David Palm <dvdplm@gmail.com>
Co-authored-by: Andrew Jones <ascjones@gmail.com>
2020-09-21 13:15:46 -04:00
Andrew Jones 4ed8e37ffe Fix up contracts pallet tests (#163)
* Revert contracts put_code test to pure code (not using the macro)

* Test contract instantiate

* Fmt
2020-09-15 08:32:33 +01:00
Andrew Jones af45c39fb1 Release v0.12.0 (#157)
* Bump version, update changelog

* Bump proc-macro crate

* Bump client crate
2020-09-01 15:54:01 +01:00
David Craven 3ea9d3b8bb Update to rc6. (#155)
* Update to rc6.

* Fix clippy warnings.
2020-08-25 09:50:14 +01:00
Andrew Jones d3e7bd2282 Release v0.11.0 (#145)
* Bump versions

* Update changelog

* Update PR links

* Fix changelog linebreak

* Remove explicit wabt-sys dependency

* Update changelog

* Update parity-scale-codec version
2020-07-31 11:02:21 +01:00
hewigovens cb23cb24e0 Fix build error, wabt 0.9.2 is yanked (#146) 2020-07-31 08:29:48 +01:00
David Craven e6f3a82f99 Rc5 (#143)
* Update to rc6.

* Update runtime.

* Update node to rc6.

* Update client.

* Fix node.

* Add option to enable telemetry.
2020-07-27 08:53:02 +01:00