toolbox-rs 0.6.0

A toolbox of basic data structures and algorithms
Documentation
name: windows
on:
  push:
    branches:
      - main
  pull_request:

jobs:
  test:
    runs-on: windows-latest
    name: (${{ matrix.target }}, ${{ matrix.cfg_release_channel }})
    env:
      CFG_RELEASE_CHANNEL: ${{ matrix.cfg_release_channel }}
    strategy:
      max-parallel: 2
      fail-fast: false
      matrix:
        target: [
          x86_64-pc-windows-gnu,
          x86_64-pc-windows-msvc,
        ]
        cfg_release_channel: [nightly, stable]

    steps:
    # The Windows runners have autocrlf enabled by default
    # which causes failures for some of rustfmt's line-ending sensitive tests
    - name: disable git eol translation
      run: git config --global core.autocrlf false
    - name: checkout
      uses: actions/checkout@v4

      # Run build
    - name: Install Rustup using win.rustup.rs
      run: |
        # Disable the download progress bar which can cause perf issues
        $ProgressPreference = "SilentlyContinue"
        Invoke-WebRequest https://win.rustup.rs/ -OutFile rustup-init.exe
        .\rustup-init.exe -y --default-host=x86_64-pc-windows-msvc --default-toolchain=none
        del rustup-init.exe
        rustup target add ${{ matrix.target }}
      shell: powershell

    - name: Build and Test
      shell: cmd
      run: cargo test