hwi 0.2.0

Rust wrapper for the Bitcoin Core Hardware Wallet Interface.
Documentation

name: CI

on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

env:
  CARGO_TERM_COLOR: always

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - run: cargo fmt --all -- --config format_code_in_doc_comments=true --check
    - run: cargo build
    - uses: actions-rs/clippy-check@v1
      with:
        token: ${{ secrets.GITHUB_TOKEN }}
        args: --all-features -- -D warnings
  test_emulators:
    runs-on: ubuntu-latest
    strategy:
      matrix:
          rust:
            - version: 1.61.0 # STABLE
            - version: 1.41.1 # MSRV
          emulator:
            - name: trezor
            - name: ledger
    steps:
    - name: Checkout
      uses: actions/checkout@v3
    - name: Build simulator image
      run: docker build -t hwi/${{ matrix.emulator.name }}_emulator ./ci -f ci/Dockerfile.${{ matrix.emulator.name }}
    - name: Run simulator image
      run: docker run --name simulator --network=host hwi/${{ matrix.emulator.name }}_emulator &
    - name: Install Python
      uses: actions/setup-python@v4
      with:
        python-version: '3.9'
        cache: 'pip'
    - name: Install python dependencies
      run: pip install -r requirements.txt
    - name: Set default toolchain
      run: rustup default ${{ matrix.rust.version }}
    - name: Set profile
      run: rustup set profile minimal
    - name: Update toolchain
      run: rustup update
    - name: Test
      run: cargo test