Add the code for compiling node-cli for WASM-browser (#3974)

* Extract CLI to separate module in node/cli

* Make node/cli compile for WASM

* More work on node/cli browser

* More work on browser node

* More work

* More work

* Purge a bit the CI script

* More clean up

* Remove substrate-finality-grandpa from the CI

Its tests use tokio, which fails to compile.

* Address review

* Add rocksdb feature to the service

* Fix substrate-service WASM CI

* Apply suggestions from code review

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

* Don't WASM-compile substrate-service altogether
This commit is contained in:
Pierre Krieger
2019-10-31 16:34:12 +01:00
committed by Gavin Wood
parent c0a1926704
commit 4264613a96
18 changed files with 687 additions and 224 deletions
+3 -3
View File
@@ -18,15 +18,15 @@
#![warn(missing_docs)]
use cli::VersionInfo;
use futures::sync::oneshot;
use futures::{future, Future};
use substrate_cli::VersionInfo;
use std::cell::RefCell;
// handles ctrl-c
struct Exit;
impl cli::IntoExit for Exit {
impl substrate_cli::IntoExit for Exit {
type Exit = future::MapErr<oneshot::Receiver<()>, fn(oneshot::Canceled) -> ()>;
fn into_exit(self) -> Self::Exit {
// can't use signal directly here because CtrlC takes only `Fn`.
@@ -43,7 +43,7 @@ impl cli::IntoExit for Exit {
}
}
fn main() -> Result<(), cli::error::Error> {
fn main() -> Result<(), substrate_cli::error::Error> {
let version = VersionInfo {
name: "Substrate Node",
commit: env!("VERGEN_SHA_SHORT"),