simple-interner 0.3.4

A simple append-only interner
Documentation
name: CI
on:
  push:
    branches: ["main"]
  pull_request:

env:
  RUST_BACKTRACE: short

jobs:
  tests:
    name: Run tests
    runs-on: ubuntu-latest

    steps:
      - name: Checkout repository
        uses: actions/checkout@v3

      - name: Install stable toolchain
        uses: dtolnay/rust-toolchain@stable

      - name: Setup cache
        uses: Swatinem/rust-cache@v1

      - name: Build tests
        run: cargo test --all-features --no-run

      - name: Run tests
        run: cargo test --all-features

  # semver:
  #   name: Check semver
  #   runs-on: ubuntu-latest

  #   steps:
  #     - name: Checkout repository
  #       uses: actions/checkout@v3

  #     - name: Check semver
  #       uses: obi1kenobi/cargo-semver-checks-action@v1

  features:
    name: Run feature tests
    runs-on: ubuntu-latest
    needs: tests
    env:
      CARGO_INCREMENTAL: 1

    steps:
      - name: Checkout repository
        uses: actions/checkout@v3

      - name: Install stable toolchain
        uses: dtolnay/rust-toolchain@stable

      - name: Setup cache
        uses: Swatinem/rust-cache@v1

      - name: Install cargo-hack
        uses: taiki-e/install-action@cargo-hack

      - name: Test feature powerset
        run: cargo hack test --feature-powerset --optional-deps --exclude-all-features --keep-going

  miri:
    name: Run tests (miri)
    runs-on: ubuntu-latest
    needs: tests

    steps:
      - name: Checkout repository
        uses: actions/checkout@v3

      - name: Install nightly toolchain
        uses: dtolnay/rust-toolchain@nightly
        with:
          components: miri

      - name: Setup cache
        uses: Swatinem/rust-cache@v1
      
      - name: Setup miri
        run: cargo miri setup

      - name: Run tests
        run: cargo miri test

  # msrv:
  #   name: Run tests (msrv)
  #   runs-on: ubuntu-latest
  #   needs: tests

  #   steps:
  #     - name: Checkout repository
  #       uses: actions/checkout@v3

  #     # https://github.com/foresterre/cargo-msrv/issues/594
  #     - name: Install cargo-binstall
  #       uses: taiki-e/install-action@main
  #       with:
  #         tool: cargo-msrv

  #     - name: Determine MSRV
  #       id: get-msrv
  #       shell: bash
  #       run: |
  #         cargo msrv --version
  #         cargo msrv show
  #         MSRV=$(cargo msrv show 2>&1 | tail -n1)
  #         echo "msrv=$MSRV"
  #         echo "msrv=$MSRV" >> $GITHUB_OUTPUT
      
  #     - name: Install toolchain
  #       uses: dtolnay/rust-toolchain@master
  #       with:
  #         toolchain: ${{ steps.get-msrv.outputs.msrv }}

  #     - name: Setup cache
  #       uses: Swatinem/rust-cache@v1

  #     - name: Verify MSRV
  #       run: cargo msrv verify