crystal-engine 0.2.1

A simple 3D engine
Documentation
name: Rust

on: [push, pull_request]

env:
  CARGO_TERM_COLOR: always

jobs:
  build:
    runs-on: ${{ matrix.os }}
    
    strategy:
      matrix:
        features: ['dummy', 'format-fbx', 'format-obj', 'format-obj format-fbx']
        os: [ubuntu-latest, windows-latest, macOS-latest]
   
    steps:
    - uses: actions/checkout@v2

    - name: Install stable toolchain
      uses: actions-rs/toolchain@v1
      with:
        profile: minimal
        toolchain: stable
        override: true
    - name: Install ninja-build tool
      uses: seanmiddleditch/gha-setup-ninja@v1
      
    - name: Build
      uses: actions-rs/cargo@v1
      with:
        command: build
        args: --verbose --no-default-features --features "${{ matrix.features }}"
    - name: Run tests
      uses: actions-rs/cargo@v1
      with:
        command: test
        args: --verbose --no-default-features --features "${{ matrix.features }}"

  clippy_check_ng:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: actions-rs/toolchain@v1
      with:
        toolchain: nightly
        components: clippy
        override: true
    - uses: actions-rs/clippy@master


  rustfmt:
    name: Format
    runs-on: ubuntu-latest
    steps:
    - name: Checkout sources
      uses: actions/checkout@v2

    - name: Install nightly toolchain with rustfmt available
      uses: actions-rs/toolchain@v1
      with:
        profile: minimal
        toolchain: nightly
        override: true
        components: rustfmt

    - name: Run cargo fmt
      uses: actions-rs/cargo@v1
      with:
        command: fmt
        args: --all -- --check