Bump the eslint group with 4 updates #343
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' | |
- 'ci' | |
pull_request: | |
merge_group: | |
types: [checks_requested] | |
permissions: | |
contents: read | |
jobs: | |
clippy: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: wasm | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Use rust-toolchain.toml | |
run: mv rust-toolchain.toml .. | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
cache: false | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
workspaces: wasm | |
- run: cargo install --locked cargo-cranky | |
- run: cargo cranky | |
- run: cargo cranky --target wasm32-unknown-unknown | |
rustfmt: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: wasm | |
steps: | |
- uses: actions/checkout@v4 | |
- run: rm rust-toolchain.toml | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
toolchain: nightly | |
components: rustfmt | |
cache: false | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
workspaces: wasm | |
- run: cargo fmt --check | |
miri: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: wasm | |
steps: | |
- uses: actions/checkout@v4 | |
- run: rm rust-toolchain.toml | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
toolchain: nightly | |
target: wasm32-unknown-unknown | |
components: miri,rust-src | |
cache: false | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
workspaces: wasm | |
- run: cargo miri test --target wasm32-unknown-unknown | |
build-wasm: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: wasm | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Use rust-toolchain.toml | |
run: mv rust-toolchain.toml .. | |
- uses: actions-rust-lang/setup-rust-toolchain@v1 | |
with: | |
cache: false | |
- uses: Swatinem/rust-cache@v2 | |
with: | |
workspaces: wasm | |
- name: Install Just | |
uses: taiki-e/install-action@just | |
- name: Install wasm-opt | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
run: | | |
version=$(gh api -H Accept:application/vnd.github+json /repos/WebAssembly/binaryen/releases/latest | jq -r .tag_name) | |
echo "Downloading release '$version'" | |
curl -LO "https://github.com/WebAssembly/binaryen/releases/download/$version/binaryen-$version-x86_64-linux.tar.gz" | |
curl -Lo sha256 "https://github.com/WebAssembly/binaryen/releases/download/$version/binaryen-$version-x86_64-linux.tar.gz.sha256" | |
ls -A | |
sha256sum --check sha256 | |
tar -xzf binaryen-$version-x86_64-linux.tar.gz | |
echo "$(pwd)/binaryen-$version/bin" >> $GITHUB_PATH | |
- name: Install multi-value-reverse-polyfill | |
run: cargo install --locked --git https://github.com/wetheredge/wasm-postprocess wasm-multi-value-reverse-polyfill | |
- name: Install wasm-set-start | |
run: cargo install --locked --git https://github.com/wetheredge/wasm-postprocess wasm-set-start | |
- run: just wasm | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: wasm | |
path: src/blackbox-log.wasm | |
if-no-files-found: error | |
prettier: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: pnpm/action-setup@v2 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
cache: pnpm | |
cache-dependency-path: pnpm-lock.yaml | |
- run: pnpm install --dev --frozen-lockfile | |
- name: Check prettier | |
run: pnpm prettier --check . | |
eslint: | |
runs-on: ubuntu-latest | |
needs: build-wasm | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: pnpm/action-setup@v2 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
cache: pnpm | |
cache-dependency-path: pnpm-lock.yaml | |
- uses: actions/download-artifact@v3 | |
with: | |
name: wasm | |
path: src/ | |
- run: pnpm install --frozen-lockfile | |
- run: pnpm eslint src --max-warnings 0 | |
build: | |
runs-on: ubuntu-latest | |
needs: build-wasm | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: pnpm/action-setup@v2 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
cache: pnpm | |
cache-dependency-path: pnpm-lock.yaml | |
- uses: actions/download-artifact@v3 | |
with: | |
name: wasm | |
path: src/ | |
- run: pnpm install --frozen-lockfile | |
- name: Install Just | |
uses: taiki-e/install-action@just | |
- run: just build | |
typos: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: crate-ci/typos@master |