[Repo Assist] perf: use while! in iter/fold/reduce/mapFold/tryLast/Drop/Truncate #835
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ci-test | |
| on: [pull_request] | |
| jobs: | |
| test-release: | |
| name: Test Release Build | |
| runs-on: windows-latest | |
| steps: | |
| # checkout the code | |
| - name: checkout-code | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| # setup dotnet based on global.json | |
| - name: setup-dotnet | |
| uses: actions/setup-dotnet@v4 | |
| # cache NuGet packages to avoid re-downloading on every run | |
| - name: Cache NuGet packages | |
| uses: actions/cache@v5 | |
| with: | |
| path: ~/.nuget/packages | |
| key: nuget-${{ runner.os }}-${{ hashFiles('**/*.fsproj', '**/*.csproj', 'global.json') }} | |
| restore-keys: nuget-${{ runner.os }}- | |
| # build it, test it | |
| - name: Run dotnet test - release | |
| # see issue #105 | |
| # very important, since we use cmd scripts, the default is psh, and a bug prevents errorlevel to bubble | |
| shell: cmd | |
| run: ./build.cmd ci -release | |
| # upload test results | |
| - uses: actions/upload-artifact@v4 | |
| if: success() || failure() | |
| with: | |
| name: test-results-release | |
| # this path glob pattern requires forward slashes! | |
| path: ./src/FSharp.Control.TaskSeq.Test/TestResults/test-results-release.trx | |
| test-debug: | |
| name: Test Debug Build | |
| runs-on: windows-latest | |
| steps: | |
| # checkout the code | |
| - name: checkout-code | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| # setup dotnet based on global.json | |
| - name: setup-dotnet | |
| uses: actions/setup-dotnet@v4 | |
| # cache NuGet packages to avoid re-downloading on every run | |
| - name: Cache NuGet packages | |
| uses: actions/cache@v5 | |
| with: | |
| path: ~/.nuget/packages | |
| key: nuget-${{ runner.os }}-${{ hashFiles('**/*.fsproj', '**/*.csproj', 'global.json') }} | |
| restore-keys: nuget-${{ runner.os }}- | |
| # build it, test it | |
| - name: Run dotnet test - debug | |
| # see issue #105 | |
| # very important, since we use cmd scripts, the default is psh, and a bug prevents errorlevel to bubble | |
| shell: cmd | |
| run: ./build.cmd ci -debug | |
| # upload test results | |
| - uses: actions/upload-artifact@v4 | |
| if: success() || failure() | |
| with: | |
| name: test-results-debug | |
| # this path glob pattern requires forward slashes! | |
| path: ./src/FSharp.Control.TaskSeq.Test/TestResults/test-results-debug.trx | |
| test-release-linux: | |
| name: Test Release Build (Linux) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: checkout-code | |
| uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: setup-dotnet | |
| uses: actions/setup-dotnet@v4 | |
| - name: Cache NuGet packages | |
| uses: actions/cache@v5 | |
| with: | |
| path: ~/.nuget/packages | |
| key: nuget-${{ runner.os }}-${{ hashFiles('**/*.fsproj', '**/*.csproj', 'global.json') }} | |
| restore-keys: nuget-${{ runner.os }}- | |
| # run tests directly (build.cmd is Windows-only) | |
| - name: Run dotnet test - release (Linux) | |
| run: dotnet test src/FSharp.Control.TaskSeq.Test/FSharp.Control.TaskSeq.Test.fsproj -c Release --blame-hang-timeout 60000ms --logger "console;verbosity=detailed" --logger "trx;LogFileName=test-results-release-linux.trx" | |
| - uses: actions/upload-artifact@v4 | |
| if: success() || failure() | |
| with: | |
| name: test-results-release-linux | |
| # this path glob pattern requires forward slashes! | |
| path: ./src/FSharp.Control.TaskSeq.Test/TestResults/test-results-release-linux.trx |