build: update rust + rust deps #612
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 | |
"on": | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
build: | |
name: Build | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
env: | |
RUSTFLAGS: -D warnings | |
RUST_BACKTRACE: 1 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install Protoc | |
uses: arduino/setup-protoc@v1 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Install Rust toolchain | |
run: rustup show | |
- name: Compile | |
run: cargo build --workspace --verbose | |
- name: Compile tests | |
run: cargo test --workspace --no-run | |
- name: Test | |
run: cargo test --workspace | |
rust: | |
name: Lint and format Rust | |
runs-on: ubuntu-latest | |
env: | |
RUSTFLAGS: -D warnings | |
RUST_BACKTRACE: 1 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install Protoc | |
uses: arduino/setup-protoc@v1 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Install Rust toolchain | |
run: rustup show | |
- name: Check formatting | |
run: cargo fmt -- --check --color=auto | |
- name: Lint with Clippy | |
uses: actions-rs/clippy-check@v1 | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
args: --workspace | |
- name: Run cargo-deny | |
uses: EmbarkStudios/cargo-deny-action@v1 | |
coverage: | |
name: Code Coverage | |
runs-on: ubuntu-latest | |
env: | |
RUSTFLAGS: -D warnings | |
RUST_BACKTRACE: 1 | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install Protoc | |
uses: arduino/setup-protoc@v1 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Run cargo-tarpaulin | |
uses: actions-rs/[email protected] | |
- name: Upload Coverage | |
uses: codecov/codecov-action@v1 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
frontend: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Install Protoc | |
uses: arduino/setup-protoc@v1 | |
with: | |
repo-token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Install node | |
uses: actions/setup-node@v2 | |
with: | |
node-version: '16' | |
- name: Install Python | |
uses: actions/setup-python@v2 | |
with: | |
python-version: '3.9' | |
architecture: 'x64' | |
- name: Install cargo | |
uses: actions-rs/toolchain@v1 | |
with: | |
toolchain: stable | |
- run: cargo install wasm-bindgen-cli | |
- name: Install dependencies | |
run: python -m pip install jupyterlab | |
- name: Build the Typescript project | |
run: | | |
rustup target add wasm32-unknown-unknown | |
yarn install | |
patch -p1 <decoder.patch | |
DISABLE_WASM_OPT=1 yarn build |