finality-grandpa 0.10.3

PBFT-based finality gadget for blockchains
Documentation
language: rust

rust:
- stable
- beta
- nightly

matrix:
  allow_failures:
  - rust: nightly

cache: cargo

jobs:
  include:
  - stage: "Test (no std)"
    rust: nightly
    os: linux
    script:
    - cargo test --no-default-features
  - stage: "Code coverage"
    rust: nightly
    os: linux
    addons:
      apt:
        packages:
        - libcurl4-openssl-dev
        - libelf-dev
        - libdw-dev
        - cmake
        - gcc
        - binutils-dev
        - zlib1g-dev
        - libiberty-dev
    env:
    - RUSTFLAGS='-C link-dead-code'
    script:
    - cargo test --verbose
    - |
      set -e
      wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz
      tar xzf master.tar.gz
      cd kcov-master
      mkdir build
      cd build
      cmake ..
      make
      sudo make install
      cd ../..
      rm -rf kcov-master
      crate="finality_grandpa"
      for file in target/debug/$crate-*[^\.d]; do
        mkdir -p "target/cov/$(basename $file)"
        kcov --exclude-pattern=/.cargo,/usr/lib --verify "target/cov/$(basename $file)" "$file"
      done
      bash <(curl -s https://codecov.io/bash)