grafo 0.15.0

A GPU-accelerated rendering library for Rust
Documentation
name: Publish

on:
  push:
    tags:
      - v*

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Setup Rust toolchain
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          profile: minimal
          override: true
      - name: Run tests
        run: cargo test
  lint:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Setup Rust toolchain
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          profile: minimal
          override: true
      - name: Install Clippy
        run: rustup component add clippy
      - name: Run linter
        run: cargo clippy --locked -- -D warnings
  format:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Setup Rust toolchain
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          profile: minimal
          override: true
      - name: Install rustfmt
        run: rustup component add rustfmt
      - name: Check format
        run: cargo fmt --all -- --check
  publish:
    needs: [test, lint, format]
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Setup Rust toolchain
        uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          profile: minimal
          override: true
      - shell: bash
        env:
          CARGO_TOKEN: ${{ secrets.CARGO_TOKEN }}
        run: cargo login "$CARGO_TOKEN" && cargo publish --locked