diff --git a/VisualFSharp.sln b/VisualFSharp.sln
index 408768b4ad6..bb1fe58b509 100644
--- a/VisualFSharp.sln
+++ b/VisualFSharp.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 17
-VisualStudioVersion = 17.1.32113.165
+# Visual Studio Version 18
+VisualStudioVersion = 18.3.11210.18 main
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{CFE3259A-2D30-4EB0-80D5-E8B5F3D01449}"
EndProject
@@ -9,7 +9,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "VisualFSharp.UnitTests Supp
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "VisualFSharp", "VisualFSharp", "{4C7B48D7-19AF-4AE7-9D1D-3BB289D5480D}"
ProjectSection(SolutionItems) = preProject
+ vsintegration\Directory.Build.props = vsintegration\Directory.Build.props
+ vsintegration\Directory.Build.targets = vsintegration\Directory.Build.targets
vsintegration\readme.md = vsintegration\readme.md
+ vsintegration\Templates.Directory.Build.props = vsintegration\Templates.Directory.Build.props
+ vsintegration\Templates.Directory.Build.targets = vsintegration\Templates.Directory.Build.targets
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Compiler", "Compiler", "{3881429D-A97A-49EB-B7AE-A82BA5FE9C77}"
diff --git a/eng/Version.Details.props b/eng/Version.Details.props
index 4afcc7c2efa..f331aa514c5 100644
--- a/eng/Version.Details.props
+++ b/eng/Version.Details.props
@@ -6,26 +6,19 @@ This file should be imported by eng/Versions.props
- 18.1.0-preview-25515-01
- 18.1.0-preview-25515-01
- 18.1.0-preview-25515-01
- 18.1.0-preview-25515-01
-
- 9.0.0
- 9.0.0
- 9.0.0
- 9.0.0
- 9.0.0
- 9.0.0
+ 18.6.0-preview-26152-06
+ 18.6.0-preview-26152-06
+ 18.6.0-preview-26152-06
+ 18.6.0-preview-26152-06
- 5.0.0-2.25480.7
- 5.0.0-2.25480.7
- 5.0.0-2.25480.7
- 5.0.0-2.25480.7
- 5.0.0-2.25480.7
- 5.0.0-2.25480.7
- 5.0.0-2.25480.7
- 5.0.0-2.25480.7
+ 5.6.0-2.26151.2
+ 5.6.0-2.26151.2
+ 5.6.0-2.26151.2
+ 5.6.0-2.26151.2
+ 5.6.0-2.26151.2
+ 5.6.0-2.26151.2
+ 5.6.0-2.26151.2
+ 5.6.0-2.26151.2
10.0.0-beta.26123.2
@@ -42,13 +35,6 @@ This file should be imported by eng/Versions.props
$(MicrosoftBuildFrameworkPackageVersion)
$(MicrosoftBuildTasksCorePackageVersion)
$(MicrosoftBuildUtilitiesCorePackageVersion)
-
- $(SystemCollectionsImmutablePackageVersion)
- $(SystemComponentModelCompositionPackageVersion)
- $(SystemCompositionPackageVersion)
- $(SystemDiagnosticsDiagnosticSourcePackageVersion)
- $(SystemReflectionMetadataPackageVersion)
- $(SystemThreadingTasksDataflowPackageVersion)
$(MicrosoftCodeAnalysisPackageVersion)
$(MicrosoftCodeAnalysisCompilersPackageVersion)
diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml
index 01b2aa0c9a0..cfccb743302 100644
--- a/eng/Version.Details.xml
+++ b/eng/Version.Details.xml
@@ -2,77 +2,53 @@
-
+
https://github.com/dotnet/msbuild
- 5e273ccd45ba73d9db9b34fceaf9a110412e64e8
+ 98231a0f9d8ee91c0a974d20375d17708958a598
-
+
https://github.com/dotnet/msbuild
- 5e273ccd45ba73d9db9b34fceaf9a110412e64e8
+ 98231a0f9d8ee91c0a974d20375d17708958a598
-
+
https://github.com/dotnet/msbuild
- 5e273ccd45ba73d9db9b34fceaf9a110412e64e8
+ 98231a0f9d8ee91c0a974d20375d17708958a598
-
+
https://github.com/dotnet/msbuild
- 5e273ccd45ba73d9db9b34fceaf9a110412e64e8
+ 98231a0f9d8ee91c0a974d20375d17708958a598
-
- https://github.com/dotnet/runtime
- 9d5a6a9aa463d6d10b0b0ba6d5982cc82f363dc3
-
-
- https://github.com/dotnet/runtime
- 9d5a6a9aa463d6d10b0b0ba6d5982cc82f363dc3
-
-
- https://github.com/dotnet/runtime
- 9d5a6a9aa463d6d10b0b0ba6d5982cc82f363dc3
-
-
- https://github.com/dotnet/runtime
- 9d5a6a9aa463d6d10b0b0ba6d5982cc82f363dc3
-
-
- https://github.com/dotnet/runtime
- 9d5a6a9aa463d6d10b0b0ba6d5982cc82f363dc3
-
-
- https://github.com/dotnet/runtime
- 9d5a6a9aa463d6d10b0b0ba6d5982cc82f363dc3
-
-
+
https://github.com/dotnet/roslyn
- ebf60fd9876294d15a47407b468709db1b31cc91
+ 6bdca1d6466c2f9ef46f8e5d3422fbe3568d503c
-
+
https://github.com/dotnet/roslyn
- ebf60fd9876294d15a47407b468709db1b31cc91
+ 6bdca1d6466c2f9ef46f8e5d3422fbe3568d503c
-
+
https://github.com/dotnet/roslyn
- ebf60fd9876294d15a47407b468709db1b31cc91
+ 6bdca1d6466c2f9ef46f8e5d3422fbe3568d503c
-
+
https://github.com/dotnet/roslyn
- ebf60fd9876294d15a47407b468709db1b31cc91
+ 6bdca1d6466c2f9ef46f8e5d3422fbe3568d503c
-
+
https://github.com/dotnet/roslyn
- ebf60fd9876294d15a47407b468709db1b31cc91
+ 6bdca1d6466c2f9ef46f8e5d3422fbe3568d503c
-
+
https://github.com/dotnet/roslyn
- ebf60fd9876294d15a47407b468709db1b31cc91
+ 6bdca1d6466c2f9ef46f8e5d3422fbe3568d503c
-
+
https://github.com/dotnet/roslyn
- ebf60fd9876294d15a47407b468709db1b31cc91
+ 6bdca1d6466c2f9ef46f8e5d3422fbe3568d503c
-
+
https://github.com/dotnet/roslyn
- ebf60fd9876294d15a47407b468709db1b31cc91
+ 6bdca1d6466c2f9ef46f8e5d3422fbe3568d503c
diff --git a/eng/Versions.props b/eng/Versions.props
index 65aa6ffe361..6a400b6f8c3 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -84,17 +84,17 @@
-
-
+
+
4.6.1
4.6.3
6.1.2
-
-
-
- 4.6.0
- 4.6.0
- 6.1.0
+
+ 10.0.2
+ $(SystemPackagesVersion)
+ $(SystemPackagesVersion)
+ $(SystemPackagesVersion)
+ $(SystemPackagesVersion)
@@ -104,8 +104,8 @@
4.7.0
1.6.0
- 18.0.332-preview
- 18.0.2101-preview.1
+ 18.0.404-preview
+ 18.0.2188-preview.1
18.0.1237-pre
18.0.2077-preview.1
18.0.5
@@ -160,7 +160,6 @@
0.13.10
2.16.6
- 1.0.31
4.3.0-1.22220.8
5.0.0-preview.7.20364.11
diff --git a/src/fsc/fsc.targets b/src/fsc/fsc.targets
index dc80ab5c4b5..2147cdc0adb 100644
--- a/src/fsc/fsc.targets
+++ b/src/fsc/fsc.targets
@@ -51,10 +51,8 @@
-
-
diff --git a/tests/FSharp.Test.Utilities/CompilerAssert.fs b/tests/FSharp.Test.Utilities/CompilerAssert.fs
index b01d7da1da1..760a8278d04 100644
--- a/tests/FSharp.Test.Utilities/CompilerAssert.fs
+++ b/tests/FSharp.Test.Utilities/CompilerAssert.fs
@@ -32,34 +32,49 @@ open System.Collections.Immutable
#if !NETCOREAPP
module AssemblyResolver =
+ open System.Collections.Generic
+
let probingPaths = [|
AppDomain.CurrentDomain.BaseDirectory
Path.GetDirectoryName(typeof.Assembly.Location)
|]
+ // Add a static HashSet to track currently resolving assemblies
+ let private resolvingAssemblies = HashSet()
+
let addResolver () =
AppDomain.CurrentDomain.add_AssemblyResolve(fun h args ->
- let found () =
- (probingPaths ) |> Seq.tryPick(fun p ->
- try
- let name = AssemblyName(args.Name)
- let codebase = Path.GetFullPath(Path.Combine(p, name.Name))
- if File.Exists(codebase + ".dll") then
- name.CodeBase <- codebase + ".dll"
- name.CultureInfo <- Unchecked.defaultof
- name.Version <- Unchecked.defaultof
- Some (name)
- elif File.Exists(codebase + ".exe") then
- name.CodeBase <- codebase + ".exe"
- name.CultureInfo <- Unchecked.defaultof
- name.Version <- Unchecked.defaultof
- Some (name)
- else None
- with | _ -> None
- )
- match found() with
- | None -> Unchecked.defaultof
- | Some name -> Assembly.Load(name) )
+ let assemblyName = args.Name
+ // Prevent recursion: skip if already resolving this assembly
+ if resolvingAssemblies.Contains(assemblyName) then
+ null
+ else
+ try
+ resolvingAssemblies.Add(assemblyName) |> ignore
+ let found () =
+ (probingPaths ) |> Seq.tryPick(fun p ->
+ try
+ let name = AssemblyName(args.Name)
+ let codebase = Path.GetFullPath(Path.Combine(p, name.Name))
+ if File.Exists(codebase + ".dll") then
+ name.CodeBase <- codebase + ".dll"
+ name.CultureInfo <- Unchecked.defaultof
+ name.Version <- Unchecked.defaultof
+ Some (name)
+ elif File.Exists(codebase + ".exe") then
+ name.CodeBase <- codebase + ".exe"
+ name.CultureInfo <- Unchecked.defaultof
+ name.Version <- Unchecked.defaultof
+ Some (name)
+ else None
+ with | _ -> None
+ )
+ match found() with
+ | None -> null
+ | Some name -> Assembly.Load(name)
+ finally
+ resolvingAssemblies.Remove(assemblyName) |> ignore
+ )
#endif
type ExecutionOutcome =
diff --git a/tests/FSharp.Test.Utilities/FSharp.Test.Utilities.fsproj b/tests/FSharp.Test.Utilities/FSharp.Test.Utilities.fsproj
index 5863adc77ea..14a1a63e7c8 100644
--- a/tests/FSharp.Test.Utilities/FSharp.Test.Utilities.fsproj
+++ b/tests/FSharp.Test.Utilities/FSharp.Test.Utilities.fsproj
@@ -121,8 +121,6 @@
-
- Always
-
+
diff --git a/vsintegration/Directory.Build.targets b/vsintegration/Directory.Build.targets
index d82aafceb89..6d09285feca 100644
--- a/vsintegration/Directory.Build.targets
+++ b/vsintegration/Directory.Build.targets
@@ -11,10 +11,9 @@
+
-
-
diff --git a/vsintegration/src/FSharp.Editor/FSharp.Editor.fsproj b/vsintegration/src/FSharp.Editor/FSharp.Editor.fsproj
index 62dc457c28d..56432a0819b 100644
--- a/vsintegration/src/FSharp.Editor/FSharp.Editor.fsproj
+++ b/vsintegration/src/FSharp.Editor/FSharp.Editor.fsproj
@@ -178,7 +178,6 @@
-
diff --git a/vsintegration/src/FSharp.LanguageService/FSharp.LanguageService.fsproj b/vsintegration/src/FSharp.LanguageService/FSharp.LanguageService.fsproj
index 0d948cc586b..848ba3fcf67 100644
--- a/vsintegration/src/FSharp.LanguageService/FSharp.LanguageService.fsproj
+++ b/vsintegration/src/FSharp.LanguageService/FSharp.LanguageService.fsproj
@@ -56,7 +56,6 @@
-
diff --git a/vsintegration/src/FSharp.VS.FSI/FSharp.VS.FSI.fsproj b/vsintegration/src/FSharp.VS.FSI/FSharp.VS.FSI.fsproj
index 62a4e7377c2..95878c043b9 100644
--- a/vsintegration/src/FSharp.VS.FSI/FSharp.VS.FSI.fsproj
+++ b/vsintegration/src/FSharp.VS.FSI/FSharp.VS.FSI.fsproj
@@ -57,7 +57,6 @@
-