fast-graph 0.1.9

A fast, lightweight and extensible implementation of a graph data structure.
Documentation
name: Rust CI

on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]

env:
  CARGO_TERM_COLOR: always

jobs:
  test:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest, macOS-latest]
        rust: [1.75.0, stable]
        features: ["hashbrown,categories,serde,specta"]
    steps:
      - uses: hecrj/setup-rust-action@v2
        with:
          rust-version: ${{ matrix.rust }}
      - uses: actions/checkout@master
      - name: Run tests
        run: cargo test --verbose
  build:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [ubuntu-latest, windows-latest]
        rust: [1.75.0, stable]
    steps:
      - uses: hecrj/setup-rust-action@v2
        with:
          rust-version: ${{ matrix.rust }}
      - uses: actions/checkout@master
      - name: Build
        run: |
          cargo build --verbose --no-default-features
          cargo build --verbose --features "${{ matrix.features }}"
      # - name: Build benchmarks
      #   if: ${{ matrix.bench }}
      #   run: |
      #     cargo bench --verbose --no-run --all-features
  
  rustfmt:
    runs-on: ubuntu-latest
    continue-on-error: true
    strategy:
      matrix:
        include:
          - rust: stable
            rustfmt: rustfmt
    steps:
      - uses: actions/checkout@v2
      - uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: ${{ matrix.rust }}
          components: ${{ matrix.rustfmt }}
          override: true
      - name: Rustfmt
        if: matrix.rustfmt
        run: cargo fmt -- --check