From 030e9248ef8776edb551734ebc99a3c21c370c8e Mon Sep 17 00:00:00 2001 From: webwarrior-ws Date: Mon, 17 Nov 2025 11:29:00 +0100 Subject: [PATCH 1/2] GitHubCI: add regression test for fsprojects#687 Added a job that tests built binaries with .NET 10 SDK installed, like it is already done for .NET 8, which demonstrates the issue raised in fsprojects#687. --- .github/workflows/build+test+deploy.yml | 35 ++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build+test+deploy.yml b/.github/workflows/build+test+deploy.yml index 10798ee27..677ccbce6 100644 --- a/.github/workflows/build+test+deploy.yml +++ b/.github/workflows/build+test+deploy.yml @@ -143,4 +143,37 @@ jobs: - name: Add .NET tools to PATH run: echo "$HOME/.dotnet/tools" >> $GITHUB_PATH - name: Lint FSharpLint.Console project (net8.0 only) - run: dotnet fsharplint lint ./src/FSharpLint.Console/FSharpLint.Console.fsproj --framework net8.0 \ No newline at end of file + run: dotnet fsharplint lint ./src/FSharpLint.Console/FSharpLint.Console.fsproj --framework net8.0 + + testReleaseBinariesWithDotNet10: + needs: deployReleaseBinaries + runs-on: ubuntu-latest + steps: + - run: dotnet --list-sdks + - uses: actions/checkout@v4 + - name: Download artifact + uses: actions/download-artifact@v4 + with: + name: binaries + path: ./artifacts + - name: Remove global.json to allow .NET 10 SDK + run: rm -f global.json + - name: Create local NuGet.config + run: | + cat > NuGet.config < + + + + + + + + + EOF + - name: Install FSharpLint from downloaded binaries + run: dotnet tool install --global dotnet-fsharplint --prerelease + - name: Add .NET tools to PATH + run: echo "$HOME/.dotnet/tools" >> $GITHUB_PATH + - name: Lint FSharpLint.Console project + run: dotnet fsharplint lint ./src/FSharpLint.Console/FSharpLint.Console.fsproj From b3d9a196e8a05325eec59fdecfa65752bbe499ce Mon Sep 17 00:00:00 2001 From: Richard Webb Date: Tue, 12 Mar 2024 00:00:08 +0000 Subject: [PATCH 2/2] FsLint.Console: change RollForward to LatestMajor It looks like the current roll foward behaviour was added for fsprojects#519 to fix issues where only a newer version than the tool was built with, is available. Changing this to LatestMajor, however, would make it just use the latest all the time (so for example, if you have both .NET6 and .NET8 installed, then it will use .NET8 all the time). Fixes fsprojects#687 --- src/FSharpLint.Console/FSharpLint.Console.fsproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/FSharpLint.Console/FSharpLint.Console.fsproj b/src/FSharpLint.Console/FSharpLint.Console.fsproj index a614e3105..03c445115 100644 --- a/src/FSharpLint.Console/FSharpLint.Console.fsproj +++ b/src/FSharpLint.Console/FSharpLint.Console.fsproj @@ -12,7 +12,7 @@ dotnet-fsharplint FSharpLint.Console true - Major + LatestMajor