diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000..ff7e485c --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,57 @@ +on: [push] + +jobs: + build_and_test: + name: Build and test on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macOS-latest] + + steps: + - uses: actions/checkout@master + + - name: Install nightly + uses: actions-rs/toolchain@v1 + with: + toolchain: nightly + override: true + + - name: check + uses: actions-rs/cargo@v1 + with: + command: check + args: --all --benches --bins --examples --tests + + - name: check unstable + uses: actions-rs/cargo@v1 + with: + command: check + args: --features unstable --all --benches --bins --examples --tests + + - name: tests + uses: actions-rs/cargo@v1 + with: + command: test + args: --all --doc --features unstable + + check_fmt_and_docs: + name: Checking fmt and docs + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@master + + - name: setup + run: | + rustup default nightly + rustup component add rustfmt + test -x $HOME/.cargo/bin/mdbook || ./ci/install-mdbook.sh + rustc --version + - name: mdbook + run: | + mdbook build docs + - name: fmt + run: cargo fmt --all -- --check + + - name: Docs + run: cargo doc --features docs,unstable diff --git a/.github/workflows/clippy.yml b/.github/workflows/clippy.yml new file mode 100644 index 00000000..aa7b2d97 --- /dev/null +++ b/.github/workflows/clippy.yml @@ -0,0 +1,19 @@ +on: push +name: Clippy check +jobs: + clippy_check: + runs-on: ubuntu-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 }}