diff --git a/.editorconfig b/.editorconfig
index 0ac22f0737d..28b11218608 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -9,3 +9,8 @@ trim_trailing_whitespace=true
max_line_length=120
insert_final_newline=true
+[.travis.yml]
+indent_style=space
+indent_size=2
+tab_width=8
+end_of_line=lf
diff --git a/.travis.yml b/.travis.yml
index d051971bcec..ee8cc2677d2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -8,101 +8,67 @@ branches:
- /^stable-.*$/
- /^beta$/
- /^stable$/
+
git:
depth: 3
+
matrix:
- fast_finish: true
- allow_failures:
- - rust: nightly
include:
- rust: stable
env: FEATURES="--features travis-beta" RUN_TESTS="true"
- # - rust: beta
- # env: FEATURES="--features travis-beta" RUN_TESTS="true"
- - rust: stable
- env: FEATURES="--features travis-beta" RUN_BUILD="true"
- rust: beta
- env: FEATURES="--features travis-beta" RUN_BUILD="true"
- - rust: stable
env: FEATURES="--features travis-beta" RUN_COVERAGE="true"
- # - rust: nightly
- # env: FEATURES="--features travis-nightly" RUN_BENCHES="true"
- - rust: nightly
- env: FEATURES="--features travis-nightly" RUN_TESTS="true"
+
env:
global:
- # GH_TOKEN
- - secure: bumJASbZSU8bxJ0EyPUJmu16AiV9EXOpyOj86Jlq/Ty9CfwGqsSXt96uDyE+OUJf34RUFQMsw0nk37/zC4lcn6kqk2wpuH3N/o85Zo/cVZY/NusBWLQqtT5VbYWsV+u2Ua4Tmmsw8yVYQhYwU2ZOejNpflL+Cs9XGgORp1L+/gMRMC2y5Se6ZhwnKPQlRJ8LGsG1dzjQULxzADIt3/zuspNBS8a2urJwlHfGMkvHDoUWCviP/GXoSqw3TZR7FmKyxE19I8n9+iSvm9+oZZquvcgfUxMHn8Gq/b44UbPvjtFOg2yam4xdWXF/RyWCHdc/R9EHorSABeCbefIsm+zcUF3/YQxwpSxM4IZEeH2rTiC7dcrsKw3XsO16xFQz5YI5Bay+CT/wTdMmJd7DdYz7Dyf+pOvcM9WOf/zorxYWSBOMYy0uzbusU2iyIghQ82s7E/Ahg+WARtPgkuTLSB5aL1oCTBKHqQscMr7lo5Ti6RpWLxEdTQMBznc+bMr+6dEtkEcG9zqc6cE9XX+ox3wTU6+HVMfQ1ltCntJ4UKcw3A6INEbw9wgocQa812CIASQ2fE+SCAbz6JxBjIAlFUnD1lUB7S8PdMPwn9plfQgKQ2A5YZqg6FnBdf0rQXIJYxQWKHXj/rBHSUCT0tHACDlzTA+EwWggvkP5AGIxRxm8jhw=
- - TARGETS="-p ethkey -p ethstore -p ethash -p ethcore-util -p ethcore -p ethsync -p ethcore-rpc -p parity -p ethjson -p ethcore-dapps -p ethcore-signer -p bigint"
- - ARCHIVE_SUFFIX="-${TRAVIS_OS_NAME}-${TRAVIS_TAG}"
- - KCOV_FEATURES=""
- - KCOV_CMD="./kcov-master/tmp/usr/local/bin/kcov --exclude-pattern /usr/,/.cargo,/root/.multirust,src/tests,util/json-tests,util/src/network/tests,sync/src/tests,ethcore/src/tests,ethcore/src/evm/tests,ethstore/tests target/kcov"
+ - TRAVIS_NODE_VERSION="6"
+ - CXX="g++-4.8"
+ - CC="gcc-4.8"
+ - RUST_BACKTRACE="1"
- RUN_TESTS="false"
- RUN_COVERAGE="false"
- - RUN_BUILD="false"
- - RUN_BENCHES="false"
- - RUST_BACKTRACE="1"
+ # GH_TOKEN for documentation
+ - secure: bumJASbZSU8bxJ0EyPUJmu16AiV9EXOpyOj86Jlq/Ty9CfwGqsSXt96uDyE+OUJf34RUFQMsw0nk37/zC4lcn6kqk2wpuH3N/o85Zo/cVZY/NusBWLQqtT5VbYWsV+u2Ua4Tmmsw8yVYQhYwU2ZOejNpflL+Cs9XGgORp1L+/gMRMC2y5Se6ZhwnKPQlRJ8LGsG1dzjQULxzADIt3/zuspNBS8a2urJwlHfGMkvHDoUWCviP/GXoSqw3TZR7FmKyxE19I8n9+iSvm9+oZZquvcgfUxMHn8Gq/b44UbPvjtFOg2yam4xdWXF/RyWCHdc/R9EHorSABeCbefIsm+zcUF3/YQxwpSxM4IZEeH2rTiC7dcrsKw3XsO16xFQz5YI5Bay+CT/wTdMmJd7DdYz7Dyf+pOvcM9WOf/zorxYWSBOMYy0uzbusU2iyIghQ82s7E/Ahg+WARtPgkuTLSB5aL1oCTBKHqQscMr7lo5Ti6RpWLxEdTQMBznc+bMr+6dEtkEcG9zqc6cE9XX+ox3wTU6+HVMfQ1ltCntJ4UKcw3A6INEbw9wgocQa812CIASQ2fE+SCAbz6JxBjIAlFUnD1lUB7S8PdMPwn9plfQgKQ2A5YZqg6FnBdf0rQXIJYxQWKHXj/rBHSUCT0tHACDlzTA+EwWggvkP5AGIxRxm8jhw=
+ - KCOV_CMD="./kcov-master/tmp/usr/local/bin/kcov"
+
cache:
apt: true
directories:
- $TRAVIS_BUILD_DIR/target
+ - $TRAVIS_BUILD_DIR/kcov-master
- $HOME/.cargo
+
addons:
apt:
+ sources:
+ - ubuntu-toolchain-r-test
packages:
- libcurl4-openssl-dev
- libelf-dev
- libdw-dev
+ - gcc-4.8
+ - g++-4.8
+
+install:
+ - rm -rf ~/.nvm && git clone https://github.com/creationix/nvm.git ~/.nvm && (cd ~/.nvm && git checkout `git describe --abbrev=0 --tags`) && source ~/.nvm/nvm.sh && nvm install $TRAVIS_NODE_VERSION
+ - (true && [ "$RUN_COVERAGE" = "false" ]) ||
+ (wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz &&
+ tar xzf master.tar.gz &&
+ mkdir -p kcov-master/build &&
+ cd kcov-master/build &&
+ cmake .. &&
+ make && make install DESTDIR=../tmp &&
+ cd)
script:
- - if [ "$RUN_TESTS" = "true" ]; then cargo test --release --verbose ${FEATURES} ${TARGETS}; fi
- - if [ "$RUN_BENCHES" = "true" ]; then cargo bench --no-run ${FEATURES} ${TARGETS}; fi
- - if [ "$RUN_BUILD" = "true" ]; then cargo build --release --verbose ${FEATURES}; fi
- - if [ "$RUN_BUILD" = "true" ]; then tar cvzf parity${ARCHIVE_SUFFIX}.tar.gz -C target/release parity; fi
+ - if [ "$RUN_TESTS" = "true" ]; then ./test.sh; fi
+ - if [ "$RUN_COVERAGE" = "true" ]; then ./scripts/cov.sh "$KCOV_CMD"; fi
after_success: |
- [ "$RUN_COVERAGE" = "true" ] &&
- wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz &&
- tar xzf master.tar.gz && mkdir kcov-master/build && cd kcov-master/build && cmake .. && make && make install DESTDIR=../tmp && cd ../.. &&
- cargo test --no-run ${KCOV_FEATURES} ${TARGETS} &&
- $KCOV_CMD target/debug/deps/ethkey-* &&
- $KCOV_CMD target/debug/deps/ethstore-* &&
- $KCOV_CMD target/debug/deps/ethcore_util-* &&
- $KCOV_CMD target/debug/deps/ethash-* &&
- $KCOV_CMD target/debug/deps/ethcore-* &&
- $KCOV_CMD target/debug/deps/ethsync-* &&
- $KCOV_CMD target/debug/deps/ethcore_rpc-* &&
- $KCOV_CMD target/debug/deps/ethcore_dapps-* &&
- $KCOV_CMD target/debug/deps/ethcore_signer-* &&
- $KCOV_CMD target/debug/deps/ethjson-* &&
- $KCOV_CMD target/debug/parity-* &&
[ $TRAVIS_BRANCH = master ] &&
[ $TRAVIS_PULL_REQUEST = false ] &&
[ $TRAVIS_RUST_VERSION = stable ] &&
- cargo doc --no-deps --verbose ${KCOV_FEATURES} ${TARGETS} &&
- echo '' > target/doc/index.html &&
+ ./scripts/doc.sh &&
pip install --user ghp-import &&
/home/travis/.local/bin/ghp-import -n target/doc &&
git push -fq https://${GH_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git gh-pages
-
-deploy:
- provider: releases
- api_key:
- secure: "t+oGT/4lsy7IScw5s86Dpntl5Nyck4qG6nhHwMScc6FYzwLldgwgJaafL8Ej+HG+b7nFLriN+Snoa4YQ5o74X5ZlSWubVREOYQlL/fq7vcPB0DwAZ0Jufq1QW2R1M+3SwwF1eAwTv2W3G7A2K7dxjCVvENcy/gdxnZ36NeUPsqaCC9UcI2Yc7+4jyQwvx6ZfBvQeu+HbKENA0eUNs2ZQOID/1IPy0LJBvSyxAQYsysXdjTzGdNu4+Iba20E8uWYe4fAbgz+gwGarXg1L6D6gKyMlWkViqWjvXWBuDJJqMQZ3rw41AwZOoh3mKd2Lc0l6l4oZcEqPuob0yKTNjz1tuJy9xKTC2F2bDzsvUgk1IRfMK5ukXXXS09ZCZWuA9/GtnsqJ1xGTiwX+DhQzpVBHaBiseSNlYE1YN/3jNyGY+iSts1qut+1BwE7swmcTLsAPoAy8Ue+f7ErNoCg1lm71vq7VO2DLn7x2NqHyHUEuJ+7olDHSdE84G7d9otDRu/+TfMOw7GXwTaha6yJRInuNsnj4CFMLNVvYACzCC2idB7f7nUZoSFi9jf18S9fCMPVmazMrFj4g95HWrVHkjpV5zRTeUdTWw6DJl6pC9HFqORHdCvLv4Rc4dm5r3CmOcAQ0ZuiccV2oKzw4/Wic96daae8M5f5KSQ/WTr+h0wXZKp0="
- skip_cleanup: true
- file: parity${ARCHIVE_SUFFIX}.tar.gz
- on:
- tags: true
-
-notifications:
- webhooks:
- urls:
- - https://hooks.slack.com/services/${SLACK_WEBHOOK}
- on_success: always
- on_failure: always
- on_start: never
-
-notifications:
- slack:
- rooms:
- - ethcore:4EGxt9WP6AS7uX4JKXSfR9vi#chatops
diff --git a/Cargo.lock b/Cargo.lock
index 46d494600af..5201afad5aa 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -22,9 +22,11 @@ dependencies = [
"fdlimit 0.1.0",
"hyper 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)",
"json-ipc-server 0.2.4 (git+https://github.com/ethcore/json-ipc-server.git)",
+ "lazy_static 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"num_cpus 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
"number_prefix 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "regex 0.1.68 (registry+https://github.com/rust-lang/crates.io-index)",
"rpassword 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc_version 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -230,6 +232,7 @@ name = "ethash"
version = "1.3.0"
dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "parking_lot 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
"primal 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
"sha3 0.1.0",
]
@@ -275,10 +278,10 @@ dependencies = [
"jsonrpc-http-server 5.1.0 (git+https://github.com/ethcore/jsonrpc-http-server.git)",
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"mime_guess 1.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
- "parity-dapps 0.3.0 (git+https://github.com/ethcore/parity-dapps-rs.git)",
- "parity-dapps-builtins 0.5.2 (git+https://github.com/ethcore/parity-dapps-builtins-rs.git)",
- "parity-dapps-status 0.5.1 (git+https://github.com/ethcore/parity-dapps-status-rs.git)",
- "parity-dapps-wallet 0.6.1 (git+https://github.com/ethcore/parity-dapps-wallet-rs.git)",
+ "parity-dapps 0.3.0 (git+https://github.com/ethcore/parity-ui.git)",
+ "parity-dapps-home 0.5.2 (git+https://github.com/ethcore/parity-ui.git)",
+ "parity-dapps-status 0.5.1 (git+https://github.com/ethcore/parity-ui.git)",
+ "parity-dapps-wallet 0.6.1 (git+https://github.com/ethcore/parity-ui.git)",
"rustc-serialize 0.3.19 (registry+https://github.com/rust-lang/crates.io-index)",
"serde 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)",
"serde_codegen 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -373,7 +376,7 @@ dependencies = [
"ethcore-util 1.3.0",
"jsonrpc-core 2.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "parity-minimal-sysui 0.2.0 (git+https://github.com/ethcore/parity-dapps-minimal-sysui-rs.git)",
+ "parity-dapps-signer 0.2.0 (git+https://github.com/ethcore/parity-ui.git)",
"rand 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
"rustc_version 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
"ws 0.5.0 (git+https://github.com/ethcore/ws-rs.git?branch=stable)",
@@ -401,6 +404,7 @@ dependencies = [
"log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
"mio 0.5.1 (git+https://github.com/ethcore/mio?branch=v0.5.x)",
"nix 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "parking_lot 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
"rand 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)",
"rocksdb 0.4.5 (git+https://github.com/ethcore/rust-rocksdb)",
"rust-crypto 0.2.36 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -609,7 +613,7 @@ dependencies = [
[[package]]
name = "jsonrpc-http-server"
version = "5.1.0"
-source = "git+https://github.com/ethcore/jsonrpc-http-server.git#e59c2fbaca499620874023755cb91f05b858ffe7"
+source = "git+https://github.com/ethcore/jsonrpc-http-server.git#f16b956c61e60b3a530ad4bac82112a8974cf505"
dependencies = [
"hyper 0.9.4 (git+https://github.com/ethcore/hyper)",
"jsonrpc-core 2.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -862,7 +866,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
[[package]]
name = "parity-dapps"
version = "0.3.0"
-source = "git+https://github.com/ethcore/parity-dapps-rs.git#8ce18c014d8b69fa31fb203b68ff240091d77a23"
+source = "git+https://github.com/ethcore/parity-ui.git#f16a7e8b7f1ea4fe4da12af22f36a745a07513d6"
dependencies = [
"aster 0.17.0 (registry+https://github.com/rust-lang/crates.io-index)",
"glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -874,33 +878,47 @@ dependencies = [
]
[[package]]
-name = "parity-dapps-builtins"
+name = "parity-dapps-home"
version = "0.5.2"
-source = "git+https://github.com/ethcore/parity-dapps-builtins-rs.git#01af2091d5d70dfe0aecbfd96308f0ae79fc61e6"
+source = "git+https://github.com/ethcore/parity-ui.git#f16a7e8b7f1ea4fe4da12af22f36a745a07513d6"
dependencies = [
- "parity-dapps 0.3.0 (git+https://github.com/ethcore/parity-dapps-rs.git)",
+ "parity-dapps 0.3.0 (git+https://github.com/ethcore/parity-ui.git)",
+]
+
+[[package]]
+name = "parity-dapps-signer"
+version = "0.2.0"
+source = "git+https://github.com/ethcore/parity-ui.git#f16a7e8b7f1ea4fe4da12af22f36a745a07513d6"
+dependencies = [
+ "parity-dapps 0.3.0 (git+https://github.com/ethcore/parity-ui.git)",
]
[[package]]
name = "parity-dapps-status"
version = "0.5.1"
-source = "git+https://github.com/ethcore/parity-dapps-status-rs.git#110ef2e66142ec8dc15fc40b8ddda5ed3bcfc1fb"
+source = "git+https://github.com/ethcore/parity-ui.git#f16a7e8b7f1ea4fe4da12af22f36a745a07513d6"
dependencies = [
- "parity-dapps 0.3.0 (git+https://github.com/ethcore/parity-dapps-rs.git)",
+ "parity-dapps 0.3.0 (git+https://github.com/ethcore/parity-ui.git)",
]
[[package]]
name = "parity-dapps-wallet"
version = "0.6.1"
-source = "git+https://github.com/ethcore/parity-dapps-wallet-rs.git#867994fe25038f000f1cc09cd024a83700a03930"
+source = "git+https://github.com/ethcore/parity-ui.git#f16a7e8b7f1ea4fe4da12af22f36a745a07513d6"
dependencies = [
- "parity-dapps 0.3.0 (git+https://github.com/ethcore/parity-dapps-rs.git)",
+ "parity-dapps 0.3.0 (git+https://github.com/ethcore/parity-ui.git)",
]
[[package]]
-name = "parity-minimal-sysui"
-version = "0.2.0"
-source = "git+https://github.com/ethcore/parity-dapps-minimal-sysui-rs.git#996c9f3f0ebedc727aecb4ece191154e956ae292"
+name = "parking_lot"
+version = "0.2.6"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+dependencies = [
+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "libc 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "winapi 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+]
[[package]]
name = "phf"
@@ -1169,6 +1187,11 @@ name = "slab"
version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
+[[package]]
+name = "smallvec"
+version = "0.1.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+
[[package]]
name = "solicit"
version = "0.4.4"
diff --git a/Cargo.toml b/Cargo.toml
index fe035c3486d..77ea5e9c965 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -17,25 +17,27 @@ env_logger = "0.3"
rustc-serialize = "0.3"
docopt = "0.6"
time = "0.1"
-ctrlc = { git = "https://github.com/ethcore/rust-ctrlc.git" }
-fdlimit = { path = "util/fdlimit" }
num_cpus = "0.2"
number_prefix = "0.2"
rpassword = "0.2.1"
-clippy = { version = "0.0.79", optional = true}
+semver = "0.2"
+ansi_term = "0.7"
+lazy_static = "0.2"
+regex = "0.1"
+ctrlc = { git = "https://github.com/ethcore/rust-ctrlc.git" }
+fdlimit = { path = "util/fdlimit" }
ethcore = { path = "ethcore" }
ethcore-util = { path = "util" }
ethsync = { path = "sync" }
ethcore-devtools = { path = "devtools" }
ethcore-rpc = { path = "rpc" }
ethcore-signer = { path = "signer" }
-ethcore-dapps = { path = "dapps", optional = true }
-semver = "0.2"
ethcore-ipc-nano = { path = "ipc/nano" }
ethcore-ipc = { path = "ipc/rpc" }
ethcore-ipc-hypervisor = { path = "ipc/hypervisor" }
json-ipc-server = { git = "https://github.com/ethcore/json-ipc-server.git" }
-ansi_term = "0.7"
+ethcore-dapps = { path = "dapps", optional = true }
+clippy = { version = "0.0.79", optional = true}
[target.'cfg(windows)'.dependencies]
winapi = "0.2"
@@ -48,7 +50,7 @@ version = "0.8"
default-features = false
[features]
-default = ["dapps"]
+default = ["dapps", "ethcore-signer/ui"]
dapps = ["ethcore-dapps"]
dev = ["clippy", "ethcore/dev", "ethcore-util/dev", "ethsync/dev", "ethcore-rpc/dev",
"ethcore-dapps/dev", "ethcore-signer/dev"]
diff --git a/appveyor.yml b/appveyor.yml
index 212b26ea91e..712445ca6b5 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -17,6 +17,7 @@ branches:
install:
- git submodule update --init --recursive
+ - ps: Install-Product node 6
- ps: Start-FileDownload "https://static.rust-lang.org/dist/rust-1.9.0-x86_64-pc-windows-msvc.exe"
- ps: Start-FileDownload "https://github.com/ethcore/win-build/raw/master/SimpleFC.dll" -FileName nsis\SimpleFC.dll
- ps: Start-FileDownload "https://github.com/ethcore/win-build/raw/master/vc_redist.x64.exe" -FileName nsis\vc_redist.x64.exe
@@ -24,14 +25,16 @@ install:
- SET PATH=%PATH%;C:\Program Files (x86)\Rust\bin;C:\Program Files (x86)\NSIS;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin
- rustc -V
- cargo -V
+ - node -v
+ - npm -v
build: off
test_script:
- - cargo test --verbose --release
+ - cargo test --verbose --release --no-default-features
after_test:
- - cargo build --verbose --release
+ - cargo build --verbose --release --no-default-features
- ps: if($env:cert) { Start-FileDownload $env:cert -FileName $env:keyfile }
- ps: if($env:cert) { signtool sign /f $env:keyfile /p $env:certpass target\release\parity.exe }
- makensis.exe nsis\installer.nsi
diff --git a/cov.sh b/cov.sh
deleted file mode 100755
index 8de2264c05c..00000000000
--- a/cov.sh
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/bin/sh
-# Installing KCOV under ubuntu
-# https://users.rust-lang.org/t/tutorial-how-to-collect-test-coverages-for-rust-project/650#
-### Install deps
-# $ sudo apt-get install libcurl4-openssl-dev libelf-dev libdw-dev cmake gcc binutils-dev libiberty-dev
-#
-### Compile kcov
-# $ wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz && tar xf master.tar.gz
-# $ cd kcov-master && mkdir build && cd build
-# $ cmake .. && make && sudo make install
-
-### Running coverage
-if ! type kcov > /dev/null; then
- echo "Install kcov first (details inside this file). Aborting."
- exit 1
-fi
-
-cargo test \
- -p ethkey \
- -p ethstore \
- -p ethash \
- -p ethcore-util \
- -p ethcore \
- -p ethsync \
- -p ethcore-rpc \
- -p parity \
- -p ethcore-signer \
- -p ethcore-dapps \
- --no-run || exit $?
-rm -rf target/coverage
-mkdir -p target/coverage
-
-EXCLUDE="~/.multirust,rocksdb,secp256k1,src/tests,util/json-tests,util/src/network/tests,sync/src/tests,ethcore/src/tests,ethcore/src/evm/tests,ethstore/tests"
-kcov --exclude-pattern $EXCLUDE --include-pattern src --verify target/coverage target/debug/deps/ethkey-*
-kcov --exclude-pattern $EXCLUDE --include-pattern src --verify target/coverage target/debug/deps/ethstore-*
-kcov --exclude-pattern $EXCLUDE --include-pattern src --verify target/coverage target/debug/deps/ethcore-*
-kcov --exclude-pattern $EXCLUDE --include-pattern src --verify target/coverage target/debug/deps/ethash-*
-kcov --exclude-pattern $EXCLUDE --include-pattern src --verify target/coverage target/debug/deps/ethcore_util-*
-kcov --exclude-pattern $EXCLUDE --include-pattern src --verify target/coverage target/debug/deps/ethsync-*
-kcov --exclude-pattern $EXCLUDE --include-pattern src --verify target/coverage target/debug/deps/ethcore_rpc-*
-kcov --exclude-pattern $EXCLUDE --include-pattern src --verify target/coverage target/debug/deps/ethcore_signer-*
-kcov --exclude-pattern $EXCLUDE --include-pattern src --verify target/coverage target/debug/deps/ethcore_dapps-*
-xdg-open target/coverage/index.html
diff --git a/dapps/Cargo.toml b/dapps/Cargo.toml
index 481388ed943..e3fc61af81a 100644
--- a/dapps/Cargo.toml
+++ b/dapps/Cargo.toml
@@ -21,13 +21,11 @@ serde_json = "0.7.0"
serde_macros = { version = "0.7.0", optional = true }
ethcore-rpc = { path = "../rpc" }
ethcore-util = { path = "../util" }
-parity-dapps = { git = "https://github.com/ethcore/parity-dapps-rs.git", version = "0.3" }
+parity-dapps = { git = "https://github.com/ethcore/parity-ui.git", version = "0.3" }
# List of apps
-parity-dapps-status = { git = "https://github.com/ethcore/parity-dapps-status-rs.git", version = "0.5.1" }
-parity-dapps-builtins = { git = "https://github.com/ethcore/parity-dapps-builtins-rs.git", version = "0.5.2" }
-parity-dapps-wallet = { git = "https://github.com/ethcore/parity-dapps-wallet-rs.git", version = "0.6.0", optional = true }
-parity-dapps-dao = { git = "https://github.com/ethcore/parity-dapps-dao-rs.git", version = "0.4.0", optional = true }
-parity-dapps-makerotc = { git = "https://github.com/ethcore/parity-dapps-makerotc-rs.git", version = "0.3.0", optional = true }
+parity-dapps-status = { git = "https://github.com/ethcore/parity-ui.git", version = "0.5.1" }
+parity-dapps-home = { git = "https://github.com/ethcore/parity-ui.git", version = "0.5.2" }
+parity-dapps-wallet = { git = "https://github.com/ethcore/parity-ui.git", version = "0.6.0", optional = true }
mime_guess = { version = "1.6.1" }
clippy = { version = "0.0.79", optional = true}
diff --git a/dapps/src/apps/mod.rs b/dapps/src/apps/mod.rs
index 9f6a5c7458d..50bdd207325 100644
--- a/dapps/src/apps/mod.rs
+++ b/dapps/src/apps/mod.rs
@@ -22,7 +22,7 @@ use parity_dapps::WebApp;
mod fs;
extern crate parity_dapps_status;
-extern crate parity_dapps_builtins;
+extern crate parity_dapps_home;
pub const DAPPS_DOMAIN : &'static str = ".parity";
pub const RPC_PATH : &'static str = "rpc";
@@ -34,7 +34,7 @@ pub fn main_page() -> &'static str {
}
pub fn utils() -> Box {
- Box::new(PageEndpoint::with_prefix(parity_dapps_builtins::App::default(), UTILS_PATH.to_owned()))
+ Box::new(PageEndpoint::with_prefix(parity_dapps_home::App::default(), UTILS_PATH.to_owned()))
}
pub fn all_endpoints(dapps_path: String) -> Endpoints {
@@ -44,7 +44,7 @@ pub fn all_endpoints(dapps_path: String) -> Endpoints {
// because we use Cross-Origin LocalStorage.
// TODO [ToDr] Account naming should be moved to parity.
pages.insert("home".into(), Box::new(
- PageEndpoint::new_safe_to_embed(parity_dapps_builtins::App::default())
+ PageEndpoint::new_safe_to_embed(parity_dapps_home::App::default())
));
pages.insert("proxy".into(), ProxyPac::boxed());
insert::(&mut pages, "parity");
@@ -52,8 +52,6 @@ pub fn all_endpoints(dapps_path: String) -> Endpoints {
// Optional dapps
wallet_page(&mut pages);
- daodapp_page(&mut pages);
- makerotc_page(&mut pages);
pages
}
@@ -66,22 +64,6 @@ fn wallet_page(pages: &mut Endpoints) {
#[cfg(not(feature = "parity-dapps-wallet"))]
fn wallet_page(_pages: &mut Endpoints) {}
-#[cfg(feature = "parity-dapps-dao")]
-fn daodapp_page(pages: &mut Endpoints) {
- extern crate parity_dapps_dao;
- insert::(pages, "dao");
-}
-#[cfg(not(feature = "parity-dapps-dao"))]
-fn daodapp_page(_pages: &mut Endpoints) {}
-
-#[cfg(feature = "parity-dapps-makerotc")]
-fn makerotc_page(pages: &mut Endpoints) {
- extern crate parity_dapps_makerotc;
- insert::(pages, "makerotc");
-}
-#[cfg(not(feature = "parity-dapps-makerotc"))]
-fn makerotc_page(_pages: &mut Endpoints) {}
-
fn insert(pages: &mut Endpoints, id: &str) {
pages.insert(id.to_owned(), Box::new(PageEndpoint::new(T::default())));
}
diff --git a/dapps/src/lib.rs b/dapps/src/lib.rs
index a94cf1bde65..133b4ebaadd 100644
--- a/dapps/src/lib.rs
+++ b/dapps/src/lib.rs
@@ -70,7 +70,7 @@ mod url;
use std::sync::{Arc, Mutex};
use std::net::SocketAddr;
use std::collections::HashMap;
-use ethcore_util::misc::Lockable;
+
use jsonrpc_core::{IoHandler, IoDelegate};
use router::auth::{Authorization, NoAuth, HttpBasicAuth};
use ethcore_rpc::Extendable;
@@ -153,7 +153,7 @@ impl Server {
/// Set callback for panics.
pub fn set_panic_handler(&self, handler: F) where F : Fn() -> () + Send + 'static {
- *self.panic_handler.locked() = Some(Box::new(handler));
+ *self.panic_handler.lock().unwrap() = Some(Box::new(handler));
}
}
diff --git a/db/src/database.rs b/db/src/database.rs
index 2360e69ca91..777ec3bbc09 100644
--- a/db/src/database.rs
+++ b/db/src/database.rs
@@ -17,7 +17,6 @@
//! Ethcore rocksdb ipc service
use traits::*;
-use misc::RwLockable;
use rocksdb::{DB, Writable, WriteBatch, IteratorMode, DBIterator, IndexType, Options, DBCompactionStyle, BlockBasedOptions, Direction};
use std::sync::{RwLock, Arc};
use std::convert::From;
@@ -137,8 +136,8 @@ impl Database {
}
pub fn flush(&self) -> Result<(), Error> {
- let mut cache_lock = self.write_cache.unwrapped_write();
- let db_lock = self.db.unwrapped_read();
+ let mut cache_lock = self.write_cache.write();
+ let db_lock = self.db.read();
if db_lock.is_none() { return Ok(()); }
let db = db_lock.as_ref().unwrap();
@@ -147,8 +146,8 @@ impl Database {
}
pub fn flush_all(&self) -> Result<(), Error> {
- let mut cache_lock = self.write_cache.unwrapped_write();
- let db_lock = self.db.unwrapped_read();
+ let mut cache_lock = self.write_cache.write();
+ let db_lock = self.db.read();
if db_lock.is_none() { return Ok(()); }
let db = db_lock.as_ref().expect("we should have exited with Ok(()) on the previous step");
@@ -167,7 +166,7 @@ impl Drop for Database {
#[derive(Ipc)]
impl DatabaseService for Database {
fn open(&self, config: DatabaseConfig, path: String) -> Result<(), Error> {
- let mut db = self.db.unwrapped_write();
+ let mut db = self.db.write();
if db.is_some() { return Err(Error::AlreadyOpen); }
let mut opts = Options::new();
@@ -194,7 +193,7 @@ impl DatabaseService for Database {
fn close(&self) -> Result<(), Error> {
try!(self.flush_all());
- let mut db = self.db.unwrapped_write();
+ let mut db = self.db.write();
if db.is_none() { return Err(Error::IsClosed); }
*db = None;
@@ -202,19 +201,19 @@ impl DatabaseService for Database {
}
fn put(&self, key: &[u8], value: &[u8]) -> Result<(), Error> {
- let mut cache_lock = self.write_cache.unwrapped_write();
+ let mut cache_lock = self.write_cache.write();
cache_lock.write(key.to_vec(), value.to_vec());
Ok(())
}
fn delete(&self, key: &[u8]) -> Result<(), Error> {
- let mut cache_lock = self.write_cache.unwrapped_write();
+ let mut cache_lock = self.write_cache.write();
cache_lock.remove(key.to_vec());
Ok(())
}
fn write(&self, transaction: DBTransaction) -> Result<(), Error> {
- let mut cache_lock = self.write_cache.unwrapped_write();
+ let mut cache_lock = self.write_cache.write();
let mut writes = transaction.writes.borrow_mut();
for kv in writes.drain(..) {
@@ -231,13 +230,13 @@ impl DatabaseService for Database {
fn get(&self, key: &[u8]) -> Result