Skip to content

FSISession seems to load wrong SDK even with global.json set聽#15492

Description

@TheAngryByrd

Please provide a succinct description of the issue.

馃憢 When using the fsdocs tool from FSharp.Formatting, moving from SDK version 7.0.201 to 7.0.304 it seems to try loading a preview version of one of my SDKs.

Content:
  preparing C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\build\..\docsSrc\index.md --> .\index.html
  preparing C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\build\..\docsSrc\Explanations\Comparison-between-different-Async-types.md --> .\Explanations\Comparison-between-different-Async-types.html
  generating model for C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\build\..\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx --> .\How-To-Guides\Cancellable-Task-In-Falco.html
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018: The "ProcessFrameworkReferences" task failed unexpectedly. [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018: System.IO.FileLoadException: Could not load file or assembly 'NuGet.Frameworks, Version=6.6.0.57, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. Could not find or load a specific file. (0x80131621) [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018: File name: 'NuGet.Frameworks, Version=6.6.0.57, Culture=neutral, PublicKeyToken=31bf3856ad364e35' [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018:  ---> System.IO.FileLoadException: Could not load file or assembly 'NuGet.Frameworks, Version=6.6.0.66, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018:    at System.Runtime.Loader.AssemblyLoadContext.LoadFromAssemblyPath(String assemblyPath) [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018:    at System.Runtime.Loader.AssemblyLoadContext.ResolveUsingLoad(AssemblyName assemblyName) [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018:    at System.Runtime.Loader.AssemblyLoadContext.Resolve(IntPtr gchManagedAssemblyLoadContext, AssemblyName assemblyName) [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018:    at Microsoft.NET.Build.Tasks.ProcessFrameworkReferences.ExecuteCore() [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018:    at Microsoft.NET.Build.Tasks.TaskBase.Execute() [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
error from GetProjectOptionsFromScript 'C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\docsSrc\How-To-Guides\Cancellable-Task-In-Falco.fsx (23,0)-(23,17): Error FS3217: C:\Program Files\dotnet\sdk\8.0.100-preview.3.23178.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.FrameworkReferenceResolution.targets(90,5): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) [C:\Users\jimmy\.packagemanagement\nuget\Projects\30024--2497f02e-04fa-408f-b6d1-f4660f50e66e\Project.fsproj]'
exiting due to errors in script

FsDocs FsiEvaluator

Repro steps

Provide the steps required to reproduce the problem:

  • Have 3 sdks installed, 7.0.201, 7.0.304, and some 8 preview.
  • Clone IcedTasks
  • Set global.json to use 7.0.304
  • Run build.cmd BuildDocs (or build.sh)
  • See error
  • Set it to 7.0.201
  • Don't see error

If possible attach a zip file with the repro case. This often makes it easier for others to reproduce.
The zip file should ideally represent the situation just before the call/step that is problematic.

Expected behavior

It should use the Fsi from the global.json SDK version

Actual behavior

It seems to use the last sdk installed regardless of global.json

Known workarounds

Pin to an older sdk

Related information

Provide any related information (optional):

  • Operating system
  • .NET Runtime kind (.NET Core, .NET Framework, Mono)
  • Editing Tools (e.g. Visual Studio Version, Visual Studio)
 dotnet --info
.NET SDK:
 Version:   7.0.203
 Commit:    5b005c19f5

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.22621
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\7.0.203\

Host:
  Version:      8.0.0-preview.3.23174.8
  Architecture: x64
  Commit:       47bad717bd

.NET SDKs installed:
  5.0.404 [C:\Program Files\dotnet\sdk]
  6.0.101 [C:\Program Files\dotnet\sdk]
  6.0.203 [C:\Program Files\dotnet\sdk]
  6.0.411 [C:\Program Files\dotnet\sdk]
  7.0.100-rc.2.22477.23 [C:\Program Files\dotnet\sdk]
  7.0.100 [C:\Program Files\dotnet\sdk]
  7.0.202 [C:\Program Files\dotnet\sdk]
  7.0.203 [C:\Program Files\dotnet\sdk]
  7.0.304 [C:\Program Files\dotnet\sdk]
  7.0.400-preview.23226.4 [C:\Program Files\dotnet\sdk]
  8.0.100-preview.3.23178.7 [C:\Program Files\dotnet\sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 5.0.13 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 6.0.19 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.5 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 7.0.7 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 8.0.0-preview.3.23177.8 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 5.0.13 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 6.0.19 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.0-rc.2.22472.3 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 7.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 8.0.0-preview.3.23174.8 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 6.0.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.10 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 6.0.19 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.0-rc.2.22472.13 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.5 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 7.0.7 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 8.0.0-preview.3.23178.1 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

Other architectures found:
  x86   [C:\Program Files (x86)\dotnet]
    registered at [HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\x86\InstallLocation]

Environment variables:
  Not set

global.json file:
  C:\Users\jimmy\Repositories\public\TheAngryByrd\IcedTasks\global.json

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Area-FSIBugImpact-Low(Internal MS Team use only) Describes an issue with limited impact on existing code.

Type

Projects

Relationships

None yet

Development

No branches or pull requests

Issue actions