Set up a demo #3
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
# Copied from https://github.com/rerun-io/rerun_template | |
on: [push, pull_request] | |
name: Rust | |
env: | |
RUSTFLAGS: -D warnings | |
RUSTDOCFLAGS: -D warnings | |
jobs: | |
rust-check: | |
name: Rust | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: default | |
toolchain: 1.76.0 | |
override: true | |
- name: Install packages (Linux) | |
if: runner.os == 'Linux' | |
uses: awalsh128/cache-apt-pkgs-action@v1.3.0 | |
with: | |
# some deps used by eframe, if that is part of the project | |
packages: libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev libxkbcommon-dev libssl-dev # libgtk-3-dev is used by rfd | |
version: 1.0 | |
execute_install_scripts: true | |
- name: Set up cargo cache | |
uses: Swatinem/rust-cache@v2 | |
- name: Rustfmt | |
uses: actions-rs/cargo@v1 | |
with: | |
command: fmt | |
args: --all -- --check | |
- name: check --all-features | |
uses: actions-rs/cargo@v1 | |
with: | |
command: check | |
args: --all-features --all-targets | |
- name: check default features | |
uses: actions-rs/cargo@v1 | |
with: | |
command: check | |
args: --all-targets | |
- name: check --no-default-features | |
uses: actions-rs/cargo@v1 | |
with: | |
command: check | |
args: --no-default-features --lib --all-targets | |
- name: Test doc-tests | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --doc --all-features | |
- name: cargo doc --lib | |
uses: actions-rs/cargo@v1 | |
with: | |
command: doc | |
args: --lib --no-deps --all-features | |
- name: cargo doc --document-private-items | |
uses: actions-rs/cargo@v1 | |
with: | |
command: doc | |
args: --document-private-items --no-deps --all-features | |
- name: Build tests | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --all-features --no-run | |
- name: Run test | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --all-features | |
- name: Clippy | |
uses: actions-rs/cargo@v1 | |
with: | |
command: clippy | |
args: --all-targets --all-features -- -D warnings | |
# --------------------------------------------------------------------------- | |
check_wasm: | |
name: Check wasm32 | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: 1.76.0 | |
target: wasm32-unknown-unknown | |
override: true | |
components: clippy | |
- name: Set up cargo cache | |
uses: Swatinem/rust-cache@v2 | |
- name: Check wasm32 | |
uses: actions-rs/cargo@v1 | |
with: | |
command: check | |
args: --target wasm32-unknown-unknown --lib | |
- name: Clippy wasm32 | |
env: | |
CLIPPY_CONF_DIR: "scripts/clippy_wasm" # Use scripts/clippy_wasm/clippy.toml | |
run: cargo clippy --target wasm32-unknown-unknown --lib -- -D warnings | |
# --------------------------------------------------------------------------- | |
cargo-deny: | |
name: Check Rust dependencies (cargo-deny) | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: EmbarkStudios/cargo-deny-action@v1 | |
with: | |
rust-version: "1.76.0" | |
log-level: warn | |
command: check |