From 71deecf9f7aa3c6f1a968253555fcee6ba6474fc Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Thu, 13 Nov 2025 13:28:04 +0000
Subject: [PATCH 1/6] Initial plan
From 9992e0b6af519a3c755a25f176a3bb0de051f06e Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Thu, 13 Nov 2025 13:41:10 +0000
Subject: [PATCH 2/6] Add VSIX MSBuild props file to override F# compiler path
Co-authored-by: T-Gro <46543583+T-Gro@users.noreply.github.com>
---
...icrosoft.FSharp.VSIX.Debug.Overrides.props | 20 +++++++++++++++++++
.../Source.extension.vsixmanifest | 3 +++
.../VisualFSharpFull/VisualFSharpDebug.csproj | 9 +++++++++
3 files changed, 32 insertions(+)
create mode 100644 vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
diff --git a/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props b/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
new file mode 100644
index 00000000000..39871498805
--- /dev/null
+++ b/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+ <_FSharpDebugVsixPropsDir>$(MSBuildThisFileDirectory)
+ <_FSharpDebugVsixToolsPath>$(_FSharpDebugVsixPropsDir)Tools\
+
+
+ $(_FSharpDebugVsixToolsPath)
+
+
+
+
+
+
+
diff --git a/vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest b/vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest
index f805558824b..590b1ef1b57 100644
--- a/vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest
+++ b/vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest
@@ -60,6 +60,9 @@
+
diff --git a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpDebug.csproj b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpDebug.csproj
index 5a6671c4d24..1f2f53362e7 100644
--- a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpDebug.csproj
+++ b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpDebug.csproj
@@ -84,4 +84,13 @@
+
+
+
+
+ PreserveNewest
+ true
+ .
+
+
From db2fa09398c3a1a3f3a2da7a86f9180c72b4e630 Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Wed, 26 Nov 2025 12:17:16 +0000
Subject: [PATCH 3/6] Add comprehensive documentation and verification steps
for props file
Co-authored-by: T-Gro <46543583+T-Gro@users.noreply.github.com>
---
...icrosoft.FSharp.VSIX.Debug.Overrides.props | 47 +++++++++++++++++--
1 file changed, 42 insertions(+), 5 deletions(-)
diff --git a/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props b/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
index 39871498805..4031806bf3a 100644
--- a/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
+++ b/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
@@ -1,20 +1,57 @@
+
-
-
-
+
<_FSharpDebugVsixPropsDir>$(MSBuildThisFileDirectory)
<_FSharpDebugVsixToolsPath>$(_FSharpDebugVsixPropsDir)Tools\
-
+
$(_FSharpDebugVsixToolsPath)
+
-
+
From 1cda09fe609f6ac56ffe9a886f18bfbf5392153f Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Thu, 27 Nov 2025 12:21:31 +0000
Subject: [PATCH 4/6] Simplify compiler override approach with clearer
documentation
Co-authored-by: T-Gro <46543583+T-Gro@users.noreply.github.com>
---
...icrosoft.FSharp.VSIX.Debug.Overrides.props | 47 +++++--------------
1 file changed, 12 insertions(+), 35 deletions(-)
diff --git a/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props b/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
index 4031806bf3a..c2981d40897 100644
--- a/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
+++ b/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
@@ -1,55 +1,32 @@
-
<_FSharpDebugVsixPropsDir>$(MSBuildThisFileDirectory)
<_FSharpDebugVsixToolsPath>$(_FSharpDebugVsixPropsDir)Tools\
-
+
$(_FSharpDebugVsixToolsPath)
-
From 59d23ba2aff9d2d8362f2b732d108de2c08d397b Mon Sep 17 00:00:00 2001
From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com>
Date: Thu, 27 Nov 2025 14:12:10 +0000
Subject: [PATCH 5/6] Auto-set FSharpCompilerPath via launchSettings.json when
debugging VSIX
Co-authored-by: T-Gro <46543583+T-Gro@users.noreply.github.com>
---
vsintegration/Vsix/Directory.Build.props | 2 ++
...icrosoft.FSharp.VSIX.Debug.Overrides.props | 34 -------------------
.../Properties/launchSettings.json | 5 ++-
.../Source.extension.vsixmanifest | 3 --
.../VisualFSharpFull/VisualFSharpDebug.csproj | 9 -----
5 files changed, 6 insertions(+), 47 deletions(-)
delete mode 100644 vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
diff --git a/vsintegration/Vsix/Directory.Build.props b/vsintegration/Vsix/Directory.Build.props
index e286ec2d2ce..4fe1c320477 100644
--- a/vsintegration/Vsix/Directory.Build.props
+++ b/vsintegration/Vsix/Directory.Build.props
@@ -6,6 +6,8 @@
Microsoft.FSharp
RoslynDev
$(VSRootSuffix)
+
+ $(ArtifactsDir)bin/fsc/$(Configuration)/net472/
true
publish\
true
diff --git a/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props b/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
deleted file mode 100644
index c2981d40897..00000000000
--- a/vsintegration/Vsix/VisualFSharpFull/Microsoft.FSharp.VSIX.Debug.Overrides.props
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
- <_FSharpDebugVsixPropsDir>$(MSBuildThisFileDirectory)
- <_FSharpDebugVsixToolsPath>$(_FSharpDebugVsixPropsDir)Tools\
-
-
- $(_FSharpDebugVsixToolsPath)
-
-
-
-
-
-
-
diff --git a/vsintegration/Vsix/VisualFSharpFull/Properties/launchSettings.json b/vsintegration/Vsix/VisualFSharpFull/Properties/launchSettings.json
index a3e00ad6bec..e1271063ea9 100644
--- a/vsintegration/Vsix/VisualFSharpFull/Properties/launchSettings.json
+++ b/vsintegration/Vsix/VisualFSharpFull/Properties/launchSettings.json
@@ -3,7 +3,10 @@
"VisualFSharpDebug": {
"commandName": "Executable",
"executablePath": "$(DevEnvDir)devenv.exe",
- "commandLineArgs": "/rootsuffix $(VSSDKTargetPlatformRegRootSuffix) /log"
+ "commandLineArgs": "/rootsuffix $(VSSDKTargetPlatformRegRootSuffix) /log",
+ "environmentVariables": {
+ "FSharpCompilerPath": "$(FSharpCompilerPath)"
+ }
}
}
}
\ No newline at end of file
diff --git a/vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest b/vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest
index 590b1ef1b57..f805558824b 100644
--- a/vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest
+++ b/vsintegration/Vsix/VisualFSharpFull/Source.extension.vsixmanifest
@@ -60,9 +60,6 @@
-
diff --git a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpDebug.csproj b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpDebug.csproj
index 1f2f53362e7..5a6671c4d24 100644
--- a/vsintegration/Vsix/VisualFSharpFull/VisualFSharpDebug.csproj
+++ b/vsintegration/Vsix/VisualFSharpFull/VisualFSharpDebug.csproj
@@ -84,13 +84,4 @@
-
-
-
-
- PreserveNewest
- true
- .
-
-
From 9c41851394123f7e2d024ba22d690b1255b6ccb6 Mon Sep 17 00:00:00 2001
From: Tomas Grosup
Date: Fri, 28 Nov 2025 12:58:33 +0100
Subject: [PATCH 6/6] Solve debug launch via env vars
---
vsintegration/Vsix/Directory.Build.props | 2 +-
.../Vsix/VisualFSharpFull/Properties/launchSettings.json | 8 +++++++-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/vsintegration/Vsix/Directory.Build.props b/vsintegration/Vsix/Directory.Build.props
index 4fe1c320477..66b95cf6e1a 100644
--- a/vsintegration/Vsix/Directory.Build.props
+++ b/vsintegration/Vsix/Directory.Build.props
@@ -7,7 +7,7 @@
RoslynDev
$(VSRootSuffix)
- $(ArtifactsDir)bin/fsc/$(Configuration)/net472/
+ $(ArtifactsDir)bin\fscAnyCpu\$(Configuration)\net472\
true
publish\
true
diff --git a/vsintegration/Vsix/VisualFSharpFull/Properties/launchSettings.json b/vsintegration/Vsix/VisualFSharpFull/Properties/launchSettings.json
index e1271063ea9..5731d86cdd6 100644
--- a/vsintegration/Vsix/VisualFSharpFull/Properties/launchSettings.json
+++ b/vsintegration/Vsix/VisualFSharpFull/Properties/launchSettings.json
@@ -5,7 +5,13 @@
"executablePath": "$(DevEnvDir)devenv.exe",
"commandLineArgs": "/rootsuffix $(VSSDKTargetPlatformRegRootSuffix) /log",
"environmentVariables": {
- "FSharpCompilerPath": "$(FSharpCompilerPath)"
+ "FSharpCompilerPath": "$(FSharpCompilerPathForDebuggingLocally)",
+ "DisableAutoSetFscCompilerPath": "true",
+ "FSharpPreferNetFrameworkTools": "true",
+ "FSharp_Shim_Present": "true",
+ "FSharpPreferAnyCpuTools": "true",
+ "Fsc_NetFramework_ToolPath": "$(FSharpCompilerPathForDebuggingLocally)",
+ "Fsc_NetFramework_AnyCpu_ToolExe": "fscAnyCpu.exe"
}
}
}