mc3479 0.1.0

Driver for the MEMSIC MC3479 16-bit 3-axis accelerometer
Documentation
name: Rust

on:
  push:
    branches:
      - "main"
  pull_request:

env:
  CARGO_TERM_COLOR: always
  # Always fail CI on warnings.
  RUSTFLAGS: "-Dwarnings"

jobs:
  build:
    runs-on: ubuntu-latest

    strategy:
      matrix:
        toolchain:
          - "1.85"
          - "stable"
          - "beta"

    steps:
    - uses: actions/checkout@v5

    - name: Set Rust toolchain version
      run: rustup update ${{ matrix.toolchain }} && rustup default ${{ matrix.toolchain }}

    - name: Build
      run: cargo build --verbose
    - name: Run tests
      run: cargo test --verbose


  minimal-versions:
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v5

    - name: Set Rust toolchain version
      run: rustup update nightly && rustup default nightly

    - uses: taiki-e/install-action@cargo-hack
    - uses: taiki-e/install-action@cargo-minimal-versions

    - name: Run build
      run: cargo minimal-versions build --verbose
    - name: Run tests
      run: cargo minimal-versions test --verbose


  clippy:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v5

      - name: Set Rust toolchain version
        run: rustup update stable && rustup default stable && rustup component add clippy

      - name: Run Clippy
        run: cargo clippy --all-targets --all-features