rsor 0.1.5

Reusable slice of references
Documentation
name: Run tests, check code
on: [push, pull_request]
env:
  CARGO_TERM_COLOR: always
  RUST_BACKTRACE: 1
  RUST_LOG: info
jobs:
  tests:
    runs-on: ubuntu-latest
    steps:
      - name: Clone Git repository
        uses: actions/checkout@v4
        with:
          submodules: true
      - name: Install Rust
        uses: dtolnay/rust-toolchain@master
        with:
          toolchain: stable
      - name: Run tests
        run: |
          cargo test --workspace --all-features

  check-code:
    runs-on: ubuntu-latest
    steps:
      - name: Clone Git repository
        uses: actions/checkout@v4
        with:
          submodules: true
      - name: Install Rust
        uses: dtolnay/rust-toolchain@master
        with:
          toolchain: stable
          components: rustfmt, clippy
      - name: rustfmt
        run: |
          cargo fmt --all --check
      - name: clippy
        run: |
          cargo clippy --all-targets --all-features -- -D warnings
      - name: Build docs
        run: |
          cargo rustdoc --all-features -- -D warnings
      - name: Upload docs
        uses: actions/upload-artifact@v4
        with:
          name: docs
          path: target/doc/*
      - name: packaging
        run: |
          cargo package --verbose

  msrv:
    strategy:
      matrix:
        rust-version: ["1.31.0"]
    runs-on: ubuntu-latest
    steps:
      - name: Clone Git repository
        uses: actions/checkout@v4
        with:
          submodules: true
      - name: Install Rust version ${{ matrix.rust-version }}
        uses: dtolnay/rust-toolchain@master
        with:
          toolchain: ${{ matrix.rust-version }}
      - name: Check whether it compiles
        run: |
          cargo check --all-features --verbose

  miri:
    runs-on: ubuntu-latest
    steps:
      - name: Clone Git repository
        uses: actions/checkout@v4
        with:
          submodules: true
      - name: Install Rust
        uses: dtolnay/rust-toolchain@master
        with:
          toolchain: nightly
          components: miri
      - name: Run Miri
        run: |
          cargo miri test