Pretty Printer and Binding evaluation #85
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI Build | |
on: [push, pull_request] | |
jobs: | |
build: | |
name: Build and Test | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, windows-latest, macos-latest] | |
steps: | |
- name: Remove MSys64 MingW64 Binaries | |
if: runner.os == 'Windows' | |
# remove this because there is a bad libclang.dll that confuses bindgen | |
run: Remove-Item -LiteralPath "C:\msys64\mingw64\bin" -Force -Recurse | |
- name: Install Dependencies | |
if: runner.os == 'Windows' | |
run: choco install llvm -y | |
- name: Git Checkout | |
uses: actions/checkout@v2 | |
with: | |
submodules: recursive | |
- name: Rust Toolchain | |
uses: dtolnay/rust-toolchain@master | |
with: | |
toolchain: stable | |
components: clippy, rustfmt | |
- name: Cargo Build | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --verbose --workspace | |
- name: Cargo Test | |
run: cargo test --verbose --workspace | |
# `clippy-check` will run `cargo clippy` on new pull requests. Due to a limitation in GitHub | |
# permissions, the behavior of the Action is different depending on the source of the PR. If the | |
# PR comes from the partiql-lang-rust project itself, any suggestions will be added to the PR as comments. | |
# If the PR comes from a fork, any suggestions will be added to the Action's STDOUT for review. | |
# For details, see: https://github.com/actions-rs/clippy-check/issues/2 | |
- name: Install Clippy | |
# The clippy check depends on setup steps defined above, but we don't want it to run | |
# for every OS because it posts its comments to the PR. These `if` checks limit clippy to | |
# only running on the Linux test. (The choice of OS was arbitrary.) | |
if: matrix.os == 'ubuntu-latest' | |
run: rustup component add clippy | |
- name: Run Clippy | |
if: matrix.os == 'ubuntu-latest' | |
uses: actions-rs/clippy-check@v1 | |
with: | |
# Adding comments to the PR requires the GITHUB_TOKEN secret. | |
token: ${{ secrets.GITHUB_TOKEN }} | |
args: --all-features | |
# Cache the `cargo build` so future jobs can reuse build | |
- name: Cache cargo build | |
if: matrix.os == 'ubuntu-latest' | |
uses: actions/cache@v2 | |
id: restore-build | |
with: | |
path: ./* | |
key: ${{ github.sha }} |