tskit 0.15.0

rust interface to tskit
Documentation
on:
  push:
    branches: [main, dev]
  pull_request:

name: 32 bit CI

jobs:
  test-32bit:
    name: Run tests (32 bit)
    runs-on: ${{ matrix.os }}
    #container:
    #  image: ubuntu:20.10
    strategy:
      matrix:
        os: [ubuntu-24.04]
        rust:
          - stable
    steps:
      - name: Cancel Previous Runs
        uses: styfle/cancel-workflow-action@0.12.1
        with:
          access_token: ${{ secrets.GITHUB_TOKEN }}
      - uses: actions/checkout@v6.0.0
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          submodules: recursive
      - uses: dtolnay/rust-toolchain@v1
        with:
          toolchain: ${{ matrix.rust }}
          override: true
      - uses: Swatinem/rust-cache@v2.8.2
      - uses: taiki-e/install-action@cargo-hack
      - name: Install Linux tooling for 32 bit builds
        run: |
          sudo apt-get update -y
          sudo apt-get -f install gcc-multilib
      - name: Install rust tooling for 32 bit builds
        run: |
          rustup target install i686-unknown-linux-gnu
      - name: Install rust toolchain
        run: |
          rustup toolchain install
      - name: cargo check
        run: |
            cargo hack check --all-targets --target=i686-unknown-linux-gnu --feature-powerset
      - name: cargo tests
        run: |
            cargo hack test --target=i686-unknown-linux-gnu --feature-powerset
      - name: cargo doc tests
        run: |
            cargo hack test --doc --target=i686-unknown-linux-gnu --feature-powerset