name: CI on: push: pull_request: env: CARGO_TERM_COLOR: always jobs: test: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Install Linux system dependencies run: | sudo apt-get update sudo apt-get install -y libudev-dev libxkbcommon-dev libxcb1-dev libxcb-icccm4-dev libxcb-shape0-dev libxcb-xfixes0-dev libgl1-mesa-dev libgtk-3-dev - uses: dtolnay/rust-toolchain@stable with: components: rustfmt, clippy - uses: Swatinem/rust-cache@v2 - name: Check formatting run: cargo fmt --check - name: Clippy run: cargo clippy --workspace --all-targets -- -D warnings - name: Smoke-check Python tools run: | python3 -m py_compile tools/*.py for f in tools/test_plot.py tools/test_drone.py tools/test_ansi.py tools/stress_test.py; do python3 "$f" --help >/dev/null done - name: Run tests run: cargo test --workspace