From 6214562d182b54cd98315a9c1dbcb815bf1e1f02 Mon Sep 17 00:00:00 2001 From: Robert Habermeier Date: Wed, 15 Aug 2018 13:40:49 +0200 Subject: [PATCH] copy scripts --- .travis.yml | 33 +++++ ci/publish-wasm.sh | 64 +++++++++ ci/script.sh | 29 ++++ runtime/wasm/Cargo.lock | 298 +++++++++++++++++++++++----------------- scripts/build-demos.sh | 28 ++++ scripts/build.sh | 28 ++++ scripts/common.sh | 22 +++ scripts/init.sh | 13 ++ 8 files changed, 389 insertions(+), 126 deletions(-) create mode 100644 .travis.yml create mode 100755 ci/publish-wasm.sh create mode 100755 ci/script.sh create mode 100755 scripts/build-demos.sh create mode 100755 scripts/build.sh create mode 100644 scripts/common.sh create mode 100755 scripts/init.sh diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 000000000000..040523096e32 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,33 @@ +# Request an environment that provides sudo (that goes with larger containers) +# and a minimal language environment. +sudo: true +language: minimal + +cache: cargo + +branches: + only: + - master + +env: + global: + - RUST_BACKTRACE=1 + matrix: + - RUST_TOOLCHAIN=nightly TARGET=wasm + - RUST_TOOLCHAIN=stable TARGET=native + +before_install: + # Check how much space we've got on this machine. + - df -h + +script: + - ./ci/script.sh + +after_success: + - if [ "$TARGET" == "wasm" ] && [ "$TRAVIS_PULL_REQUEST" != "true" ] && [ "$TRAVIS_BRANCH" == "master" ]; then + ./ci/publish-wasm.sh; + fi + +after_script: + # Check how much free disk space left after the build + - df -h diff --git a/ci/publish-wasm.sh b/ci/publish-wasm.sh new file mode 100755 index 000000000000..ee1db2942f72 --- /dev/null +++ b/ci/publish-wasm.sh @@ -0,0 +1,64 @@ +#!/usr/bin/env bash + +# Publish wasm binaries into the special repository. +# This script assumes that wasm binaries have already been built. +# Requires GH_TOKEN environment variable to be defined. + +set -e + +source ./common.sh + +if [ -z ${GH_TOKEN+x} ]; then + echo "GH_TOKEN environment variable is not set" + exit 1 +fi + +REPO="github.com/paritytech/polkadot-wasm-bin.git" +REPO_AUTH="${GH_TOKEN}:@${REPO}" +DST=".wasm-binaries" +TARGET="wasm32-unknown-unknown" +UTCDATE=`date -u "+%Y%m%d.%H%M%S.0"` + +pushd . + +echo "*** Cloning repo" +rm -rf $DST +git clone https://$REPO $DST +cd $DST +rm -rf $TARGET +mkdir -p $TARGET + +echo "*** Setting up GH config" +git config push.default simple +git config merge.ours.driver true +git config user.email "admin@parity.io" +git config user.name "CI Build" +git remote set-url origin https://$REPO_AUTH > /dev/null 2>&1 + +for SRC in "${SRCS[@]}" +do + echo "*** Copying wasm binaries from $SRC" + cp ../$SRC/target/$TARGET/release/*.wasm $TARGET +done + +if [ -f "package.json" ]; then + echo "*** Updating package.json" + sed -i -e "s/\"version\": \"[0-9.]*\"/\"version\": \"$UTCDATE\"/g" package.json + rm -rf package.json.bak +fi + +echo "*** Adding to git" +echo "$UTCDATE" > README.md +git add --all . +git commit -m "$UTCDATE" + +echo "*** Pushing upstream" +git push --quiet origin HEAD:refs/heads/master > /dev/null 2>&1 + +echo "*** Cleanup" +cd .. +rm -rf $DST +popd + +echo "*** Completed" +exit 0 diff --git a/ci/script.sh b/ci/script.sh new file mode 100755 index 000000000000..812da2d81680 --- /dev/null +++ b/ci/script.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash + +set -eux + +# Install rustup and the specified rust toolchain. +curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain=$RUST_TOOLCHAIN -y + +# Load cargo environment. Specifically, put cargo into PATH. +source ~/.cargo/env + +rustc --version +rustup --version +cargo --version + +case $TARGET in + "native") + sudo apt-get -y update + sudo apt-get install -y cmake pkg-config libssl-dev + + cargo test --all --locked + ;; + + "wasm") + # Install prerequisites and build all wasm projects + ./scripts/init.sh + ./scripts/build.sh + ./scripts/build-demos.sh + ;; +esac diff --git a/runtime/wasm/Cargo.lock b/runtime/wasm/Cargo.lock index b452d6cfaddc..c309ebb41c68 100644 --- a/runtime/wasm/Cargo.lock +++ b/runtime/wasm/Cargo.lock @@ -84,12 +84,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "ed25519" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "base58 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "ring 0.12.1 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-primitives 0.1.0", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "untrusted 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -104,6 +105,7 @@ dependencies = [ [[package]] name = "environmental" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" [[package]] name = "ethbloom" @@ -371,11 +373,11 @@ version = "0.1.0" dependencies = [ "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-codec-derive 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-std 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-codec-derive 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] @@ -385,21 +387,21 @@ dependencies = [ "integer-sqrt 0.1.0 (git+https://github.com/paritytech/integer-sqrt-rs.git)", "polkadot-primitives 0.1.0", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-consensus 0.1.0", - "substrate-runtime-council 0.1.0", - "substrate-runtime-democracy 0.1.0", - "substrate-runtime-executive 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-session 0.1.0", - "substrate-runtime-staking 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", - "substrate-runtime-system 0.1.0", - "substrate-runtime-timestamp 0.1.0", - "substrate-runtime-version 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-consensus 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-council 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-democracy 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-executive 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-session 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-staking 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-system 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-timestamp 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-version 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] @@ -426,14 +428,16 @@ dependencies = [ [[package]] name = "pwasm-alloc" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ - "pwasm-libc 0.1.0", + "pwasm-libc 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "rustc_version 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "pwasm-libc" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" [[package]] name = "quote" @@ -592,6 +596,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" [[package]] name = "substrate-codec" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -599,6 +604,7 @@ dependencies = [ [[package]] name = "substrate-codec-derive" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "proc-macro2 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", "quote 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -608,8 +614,9 @@ dependencies = [ [[package]] name = "substrate-keyring" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ - "ed25519 0.1.0", + "ed25519 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", ] @@ -617,6 +624,7 @@ dependencies = [ [[package]] name = "substrate-primitives" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", @@ -630,9 +638,9 @@ dependencies = [ "rustc-hex 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-codec-derive 0.1.0", - "substrate-runtime-std 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-codec-derive 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)", "twox-hash 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", "uint 0.2.2 (git+https://github.com/paritytech/parity-common)", @@ -642,234 +650,249 @@ dependencies = [ [[package]] name = "substrate-runtime-consensus" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", - "substrate-runtime-system 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-system 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-council" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "integer-sqrt 0.1.0 (git+https://github.com/paritytech/integer-sqrt-rs.git)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-keyring 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-consensus 0.1.0", - "substrate-runtime-democracy 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-session 0.1.0", - "substrate-runtime-staking 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", - "substrate-runtime-system 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-keyring 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-consensus 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-democracy 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-session 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-staking 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-system 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-democracy" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-codec-derive 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-consensus 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-session 0.1.0", - "substrate-runtime-staking 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", - "substrate-runtime-system 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-codec-derive 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-consensus 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-session 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-staking 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-system 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-executive" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", - "substrate-runtime-system 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-system 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-io" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ - "ed25519 0.1.0", - "environmental 0.1.0", + "ed25519 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "environmental 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "rustc_version 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-state-machine 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-state-machine 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "triehash 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "substrate-runtime-primitives" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "integer-sqrt 0.1.0 (git+https://github.com/paritytech/integer-sqrt-rs.git)", "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", "num-traits 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-codec-derive 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-codec-derive 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-sandbox" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "rustc_version 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-std 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "wasmi 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "substrate-runtime-session" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-keyring 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-consensus 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", - "substrate-runtime-system 0.1.0", - "substrate-runtime-timestamp 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-keyring 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-consensus 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-system 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-timestamp 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-staking" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-keyring 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-consensus 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-sandbox 0.1.0", - "substrate-runtime-session 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", - "substrate-runtime-system 0.1.0", - "substrate-runtime-timestamp 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-keyring 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-consensus 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-sandbox 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-session 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-system 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-timestamp 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-std" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ - "pwasm-alloc 0.1.0", - "pwasm-libc 0.1.0", + "pwasm-alloc 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "pwasm-libc 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "rustc_version 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", ] [[package]] name = "substrate-runtime-support" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ - "ed25519 0.1.0", + "ed25519 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-std 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-system" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "safe-mix 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-timestamp" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "hex-literal 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-primitives 0.1.0", - "substrate-runtime-consensus 0.1.0", - "substrate-runtime-io 0.1.0", - "substrate-runtime-primitives 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", - "substrate-runtime-system 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-consensus 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-system 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-runtime-version" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "serde 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", "serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)", - "substrate-codec 0.1.0", - "substrate-codec-derive 0.1.0", - "substrate-runtime-std 0.1.0", - "substrate-runtime-support 0.1.0", + "substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-codec-derive 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", + "substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", ] [[package]] name = "substrate-state-machine" version = "0.1.0" +source = "git+https://github.com/paritytech/polkadot?branch=split-substrate#e3f6cd86348c34f50e9c19b00022836b196cbd29" dependencies = [ "byteorder 1.2.3 (registry+https://github.com/rust-lang/crates.io-index)", "hashdb 0.2.1 (git+https://github.com/paritytech/parity-common)", @@ -880,7 +903,7 @@ dependencies = [ "parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", "patricia-trie 0.2.1 (git+https://github.com/paritytech/parity-common)", "rlp 0.2.1 (git+https://github.com/paritytech/parity-common)", - "substrate-primitives 0.1.0", + "substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)", "triehash 0.2.0 (git+https://github.com/paritytech/parity-common)", ] @@ -1018,7 +1041,9 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum crossbeam-epoch 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "927121f5407de9956180ff5e936fe3cf4324279280001cd56b669d28ee7e9150" "checksum crossbeam-utils 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2760899e32a1d58d5abb31129f8fae5de75220bc2176e77ff7c627ae45c918d9" "checksum crunchy 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "a2f4a431c5c9f662e1200b7c7f02c34e91361150e382089a8f2dec3ba680cbda" +"checksum ed25519 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" "checksum elastic-array 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "88d4851b005ef16de812ea9acdb7bece2f0a40dd86c07b85631d7dafa54537bb" +"checksum environmental 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" "checksum ethbloom 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1a93a43ce2e9f09071449da36bfa7a1b20b950ee344b6904ff23de493b03b386" "checksum ethereum-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9c48729b8aea8aedb12cf4cb2e5cef439fdfe2dda4a89e47eeebd15778ef53b6" "checksum ethereum-types-serialize 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4ac59a21a9ce98e188f3dace9eb67a6c4a3c67ec7fbc7218cb827852679dc002" @@ -1055,6 +1080,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum proc-macro-hack 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ba8d4f9257b85eb6cdf13f055cea3190520aab1409ca2ab43493ea4820c25f0" "checksum proc-macro-hack-impl 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d5cb6f960ad471404618e9817c0e5d10b1ae74cfdf01fab89ea0641fe7fb2892" "checksum proc-macro2 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1fa93823f53cfd0f5ac117b189aed6cfdfb2cfc0a9d82e956dd7927595ed7d46" +"checksum pwasm-alloc 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum pwasm-libc 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" "checksum quote 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e44651a0dc4cdd99f71c83b561e221f714912d11af1a4dff0631f923d53af035" "checksum rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)" = "15a732abf9d20f0ad8eeb6f909bf6868722d9a06e1e50802b6a70351f40b4eb1" "checksum rand 0.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "eba5f8cb59cc50ed56be8880a5c7b496bfd9bd26394e176bc67884094145c2c5" @@ -1074,6 +1101,25 @@ source = "registry+https://github.com/rust-lang/crates.io-index" "checksum serde_derive 1.0.64 (registry+https://github.com/rust-lang/crates.io-index)" = "79e4620ba6fbe051fc7506fab6f84205823564d55da18d55b695160fb3479cd8" "checksum smallvec 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "211a489e65e94b103926d2054ae515a1cdb5d515ea0ef414fee23b7e043ce748" "checksum stable_deref_trait 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "15132e0e364248108c5e2c02e3ab539be8d6f5d52a01ca9bbf27ed657316f02b" +"checksum substrate-codec 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-codec-derive 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-keyring 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-consensus 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-council 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-democracy 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-executive 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-io 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-primitives 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-sandbox 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-session 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-staking 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-std 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-support 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-system 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-timestamp 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-runtime-version 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" +"checksum substrate-state-machine 0.1.0 (git+https://github.com/paritytech/polkadot?branch=split-substrate)" = "" "checksum syn 0.14.1 (registry+https://github.com/rust-lang/crates.io-index)" = "6dfd71b2be5a58ee30a6f8ea355ba8290d397131c00dfa55c3d34e6e13db5101" "checksum tiny-keccak 1.4.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e9175261fbdb60781fcd388a4d6cc7e14764a2b629a7ad94abb439aed223a44f" "checksum triehash 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "2033893a813c70e7d8a739ca6c36dc0a7a2c913ec718d7cbf84a3837bbe3c7ce" diff --git a/scripts/build-demos.sh b/scripts/build-demos.sh new file mode 100755 index 000000000000..285da143c17d --- /dev/null +++ b/scripts/build-demos.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash + +# This script assumes that all pre-requisites are installed. + +set -e + +PROJECT_ROOT=`git rev-parse --show-toplevel` +source `dirname "$0"`/common.sh + +export CARGO_INCREMENTAL=0 + +# Save current directory. +pushd . + +cd $ROOT + +for DEMO in "${DEMOS[@]}" +do + echo "*** Building wasm binaries in $DEMO" + cd "$PROJECT_ROOT/$DEMO" + + ./build.sh + + cd - >> /dev/null +done + +# Restore initial directory. +popd diff --git a/scripts/build.sh b/scripts/build.sh new file mode 100755 index 000000000000..9cacf74dbb07 --- /dev/null +++ b/scripts/build.sh @@ -0,0 +1,28 @@ +#!/usr/bin/env bash + +# This script assumes that all pre-requisites are installed. + +set -e + +PROJECT_ROOT=`git rev-parse --show-toplevel` +source `dirname "$0"`/common.sh + +export CARGO_INCREMENTAL=0 + +# Save current directory. +pushd . + +cd $ROOT + +for SRC in "${SRCS[@]}" +do + echo "*** Building wasm binaries in $SRC" + cd "$PROJECT_ROOT/$SRC" + + ./build.sh + + cd - >> /dev/null +done + +# Restore initial directory. +popd diff --git a/scripts/common.sh b/scripts/common.sh new file mode 100644 index 000000000000..56e16bd48121 --- /dev/null +++ b/scripts/common.sh @@ -0,0 +1,22 @@ +#!/usr/bin/env bash + +ROOT=`dirname "$0"` + +# A list of directories which contain wasm projects. +SRCS=( + "runtime/wasm" +) + +DEMOS=( + "test-parachains/" +) + +# Make pushd/popd silent. + +pushd () { + command pushd "$@" > /dev/null +} + +popd () { + command popd "$@" > /dev/null +} diff --git a/scripts/init.sh b/scripts/init.sh new file mode 100755 index 000000000000..e3618783c14a --- /dev/null +++ b/scripts/init.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash + +set -e + +echo "*** Initialising WASM build environment" + +rustup update nightly +rustup target add wasm32-unknown-unknown --toolchain nightly +rustup update stable + +# Install wasm-gc. It's useful for stripping slimming down wasm binaries. +command -v wasm-gc || \ + cargo +nightly install --git https://github.com/alexcrichton/wasm-gc