wireguard-nt 0.5.0

Safe idiomatic bindings to the Wireguard NT C library
Documentation

name: CI
on: [push, pull_request]

jobs:
  test:
    name: Test
    runs-on: windows-latest
    strategy:
      matrix:
        rust: [stable, beta, nightly]
    steps:
    - uses: actions/checkout@master
    - name: Build & Test
      run: |

        rustup update ${{ matrix.rust }} && rustup default ${{ matrix.rust }}
        cargo test 

  rustfmt:
    name: Rustfmt
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@master
    - name: Rustfmt Check
      run: |

        rustup update stable && rustup default stable && rustup component add rustfmt
        cargo fmt -- --check

  clippy_check:
    name: Clippy Check
    runs-on: windows-latest
    steps:
      - uses: actions/checkout@v1
      - id: component
        uses: actions-rs/components-nightly@v1
        with:
          component: clippy
      - uses: actions-rs/toolchain@v1
        with:
            toolchain: ${{ steps.component.outputs.toolchain }}
            override: true
      - run: rustup component add clippy
      - uses: actions-rs/clippy-check@v1
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          args: --all-features

# TODO(Troy): re-enable after we bump to fix breaking change in winapi breaking our old compilation
#  semver:
#    name: Check semver
#    runs-on: windows-latest
#    steps:
#      - uses: actions/checkout@v2
#      - uses: actions-rs/toolchain@v1
#        with:
#          profile: minimal
#          toolchain: stable
#          override: true
#      - uses: obi1kenobi/cargo-semver-checks-action@v2