-
Notifications
You must be signed in to change notification settings - Fork 74
Open
Description
Description
We have been using FSharpLint with a .NET project targeting .NET version 8.0.401
.
After upgrading our project to .NET version 9.0.101
, FSharpLint no longer works.
Repro steps
Working correctly with .NET 8.0:
❯ movableink/scratch/fsharplint-8.0 dotnet --version
8.0.401
❯ movableink/scratch/fsharplint-8.0 dotnet new classlib -lang "F#" -o src/Library
The template "Class Library" was created successfully.
Processing post-creation actions...
Restoring /Users/bhodge/code/movableink/scratch/fsharplint-8.0/src/Library/Library.fsproj:
Determining projects to restore...
Restored /Users/bhodge/code/movableink/scratch/fsharplint-8.0/src/Library/Library.fsproj (in 361 ms).
Restore succeeded.
❯ movableink/scratch/fsharplint-8.0 dotnet fsharplint lint src/Library/Library.fsproj
========== Linting /Users/bhodge/code/movableink/scratch/fsharplint-8.0/src/Library/obj/Debug/net8.0/Library.AssemblyInfo.fs ==========
========== Finished: 0 warnings ==========
========== Linting /Users/bhodge/code/movableink/scratch/fsharplint-8.0/src/Library/obj/Debug/net8.0/.NETCoreApp,Version=v8.0.AssemblyAttributes.fs ==========
========== Finished: 0 warnings ==========
========== Linting /Users/bhodge/code/movableink/scratch/fsharplint-8.0/src/Library/Library.fs ==========
========== Finished: 0 warnings ==========
========== Summary: 0 warnings ==========
Failing for a project targeting .NET 9.0:
❯ movableink/scratch/fsharplint-9.0 dotnet --version
9.0.101
❯ movableink/scratch/fsharplint-9.0 dotnet new classlib -lang "F#" -o src/Library
The template "Class Library" was created successfully.
Processing post-creation actions...
Restoring /Users/bhodge/code/movableink/scratch/fsharplint-9.0/src/Library/Library.fsproj:
Restore succeeded.
❯ movableink/scratch/fsharplint-9.0 dotnet fsharplint lint src/Library/Library.fsproj
Lint failed while analysing src/Library/Library.fsproj.
Failed with: Could not load file or assembly 'System.Runtime, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified.
Stack trace: at Ionide.ProjInfo.ProjectLoader.loadProject(String path, BinaryLogGeneration binaryLogs, FSharpList`1 globalProperties)
at Ionide.ProjInfo.ProjectLoader.getProjectInfo(String path, FSharpList`1 globalProperties, BinaryLogGeneration binaryLogs, FSharpList`1 customProperties) in /_//src/Ionide.ProjInfo/Library.fs:line 842
at <StartupCode$Ionide-ProjInfo>.$Library.loadProject@1176(WorkspaceLoader __, FSharpList`1 customProperties, BinaryLogGeneration binaryLogs, Dictionary`2 cache, String p) in /_//src/Ionide.ProjInfo/Library.fs:line 1177
at <StartupCode$Ionide-ProjInfo>.$Library.loadProjectList@1213(WorkspaceLoader __, FSharpList`1 customProperties, BinaryLogGeneration binaryLogs, Dictionary`2 cache, FSharpList`1 projectList) in /_//src/Ionide.ProjInfo/Library.fs:line 1233
at Ionide.ProjInfo.WorkspaceLoader.Ionide.ProjInfo.IWorkspaceLoader.LoadProjects(FSharpList`1 projects, FSharpList`1 customProperties, BinaryLogGeneration binaryLogs) in /_//src/Ionide.ProjInfo/Library.fs:line 1241
at FSharpLint.Application.Lint.getProjectInfo(String projectFilePath, ToolsPath toolsPath) in /home/runner/work/FSharpLint/FSharpLint/src/FSharpLint.Core/Application/Lint.fs:line 302
at FSharpLint.Application.Lint.lintProject$cont@397(OptionalLintParameters optionalParams, String projectFilePath, ToolsPath toolsPath, Unit unitVar) in /home/runner/work/FSharpLint/FSharpLint/src/FSharpLint.Core/Application/Lint.fs:line 441
at FSharpLint.Application.Lint.lintProject(OptionalLintParameters optionalParams, String projectFilePath, ToolsPath toolsPath) in /home/runner/work/FSharpLint/FSharpLint/src/FSharpLint.Core/Application/Lint.fs:line 396
at FSharpLint.Console.Program.start(ParseResults`1 arguments, ToolsPath toolsPath) in /home/runner/work/FSharpLint/FSharpLint/src/FSharpLint.Console/Program.fs:line 133
Expected behavior
Ability to successfully lint projects targeting latest .NET version.
Actual behavior
Not able to lint projects targeting latest .NET version.
Related information
❯ ~ dotnet --info
.NET SDK:
Version: 9.0.101
Commit: eedb237549
Workload version: 9.0.100-manifests.3068a692
MSBuild version: 17.12.12+1cce77968
Runtime Environment:
OS Name: Mac OS X
OS Version: 14.6
OS Platform: Darwin
RID: osx-arm64
Base Path: /usr/local/share/dotnet/sdk/9.0.101/
.NET workloads installed:
There are no installed workloads to display.
Configured to use loose manifests when installing new manifests.
Host:
Version: 9.0.0
Architecture: arm64
Commit: 9d5a6a9aa4
.NET SDKs installed:
8.0.204 [/usr/local/share/dotnet/sdk]
8.0.401 [/usr/local/share/dotnet/sdk]
9.0.100 [/usr/local/share/dotnet/sdk]
9.0.101 [/usr/local/share/dotnet/sdk]
.NET runtimes installed:
Microsoft.AspNetCore.App 8.0.4 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.8 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 9.0.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App]
Microsoft.NETCore.App 8.0.4 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.8 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Microsoft.NETCore.App 9.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Other architectures found:
None
Environment variables:
Not set
global.json file:
Not found
Learn more:
https://aka.ms/dotnet/info
Download .NET:
https://aka.ms/dotnet/download
flasksrw
Metadata
Metadata
Assignees
Labels
No labels