vmap 0.6.3

Cross-platform library for fast and safe memory-mapped IO and boundary-free ring buffer.
Documentation
on:
  pull_request:
  push:
    branches: [main]
    tags:
      - "v*.*.*"

name: Verify

jobs:
  test_linux:
    name: Test Linux
    runs-on: ubuntu-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install stable toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Run cargo test
        uses: actions-rs/cargo@v1
        with:
          command: test

  test_windows:
    name: Test Windows
    runs-on: windows-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install stable toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Run cargo test
        uses: actions-rs/cargo@v1
        with:
          command: test

  test_macos:
    name: Test MacOS
    runs-on: macos-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install stable toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Run cargo test
        uses: actions-rs/cargo@v1
        with:
          command: test

  # For test vs build https://github.com/cross-rs/cross?tab=readme-ov-file#supported-targets

  test_cross:
    name: Test Android and Musl
    strategy:
      matrix:
        target:
          - aarch64-linux-android
          - x86_64-unknown-linux-musl
    runs-on: ubuntu-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install stable toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Install Cross
        run: cargo install cross --git https://github.com/cross-rs/cross --rev 085092c
      - name: Cross Test
        run: cross test --target ${{ matrix.target }}

  build_cross:
    name: Build BSDs
    strategy:
      matrix:
        target:
          - x86_64-unknown-freebsd
          - x86_64-unknown-netbsd
    runs-on: ubuntu-latest
    steps:
      - name: Checkout sources
        uses: actions/checkout@v2
      - name: Install stable toolchain
        uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: stable
          override: true
      - name: Install Cross
        run: cargo install cross --git https://github.com/cross-rs/cross --rev 085092c
      - name: Cross Test
        run: cross build --target ${{ matrix.target }}