Skip to content
Merged
Show file tree
Hide file tree
Changes from 165 commits
Commits
Show all changes
169 commits
Select commit Hold shift + click to select a range
e547fc3
LSP extension prototype
0101 Feb 6, 2024
81d9c41
Clasp update
0101 Feb 6, 2024
bb760cc
Dump JsonRpc trace to console
0101 Feb 6, 2024
6105dfc
Workspace.Create method
0101 Feb 7, 2024
d056cb9
Remove reference to local roslyn project (#16664)
abonie Feb 7, 2024
0aef3f6
Merge pull request #16680 from dotnet/merges/main-to-lsp
KevinRansom Feb 9, 2024
b046376
Merge pull request #16686 from dotnet/merges/main-to-lsp
KevinRansom Feb 10, 2024
6dfca57
Overriding diagnostics for VS, dummy workspace creation
0101 Feb 12, 2024
b1c07c0
Merge pull request #16695 from dotnet/merges/main-to-lsp
KevinRansom Feb 13, 2024
42df2dd
checker
0101 Feb 13, 2024
cf13809
Merge branch 'lsp' of https://github.com/dotnet/fsharp into lsp
0101 Feb 13, 2024
9a1de41
wip
0101 Feb 13, 2024
799dc73
Merge pull request #16706 from dotnet/merges/main-to-lsp
KevinRansom Feb 14, 2024
d557b62
WIP workspace state management, diagnostics
0101 Feb 22, 2024
057d349
Merge branch 'lsp-2' into lsp
0101 Feb 22, 2024
09ca9a7
Merge pull request #16772 from dotnet/merges/main-to-lsp
vzarytovskii Feb 28, 2024
9f532bd
Merge pull request #16787 from dotnet/merges/main-to-lsp
abonie Feb 29, 2024
a59eee0
Merge pull request #16809 from dotnet/merges/main-to-lsp
abonie Mar 5, 2024
7a11d56
Merge branch 'lsp' into merges/main-to-lsp
abonie Mar 7, 2024
8932a2f
Merge pull request #16825 from dotnet/merges/main-to-lsp
abonie Mar 7, 2024
96bac02
Merge pull request #16874 from dotnet/merges/main-to-lsp
abonie Mar 14, 2024
586fff5
Add minimal solution file
abonie Mar 15, 2024
53aa113
Merge branch 'lsp' into merges/main-to-lsp
abonie Mar 21, 2024
9f8439f
Merge pull request #16884 from dotnet/merges/main-to-lsp
abonie Mar 21, 2024
671fca6
Merge pull request #16931 from dotnet/merges/main-to-lsp
KevinRansom Mar 22, 2024
524c1c2
Get compiler cmdline args via ProjectQuery
abonie Mar 26, 2024
4a2c4eb
Merge pull request #16951 from abonie/get-comp-args-lsp
abonie Apr 4, 2024
520ab0d
Merge branch 'lsp' into merges/main-to-lsp
abonie Apr 5, 2024
e49118d
Merge pull request #16990 from dotnet/merges/main-to-lsp
abonie Apr 5, 2024
0f7981a
Merge pull request #16997 from dotnet/merges/main-to-lsp
KevinRansom Apr 6, 2024
133c6ad
Merge pull request #17077 from dotnet/merges/main-to-lsp
abonie Apr 23, 2024
49ba5a0
Merge pull request #17084 from dotnet/merges/main-to-lsp
abonie Apr 24, 2024
104b13f
Merge pull request #17092 from dotnet/merges/main-to-lsp
abonie Apr 26, 2024
b3c669d
Merge pull request #17098 from dotnet/merges/main-to-lsp
abonie Apr 29, 2024
7b7c3a2
Merge pull request #17105 from dotnet/merges/main-to-lsp
abonie Apr 30, 2024
c100683
Adjust line numbers and fix a typo
abonie Apr 30, 2024
5a96786
Merge pull request #17108 from abonie/adjust-lines-fix-typo
abonie Apr 30, 2024
eede42e
Merge pull request #17109 from dotnet/merges/main-to-lsp
abonie May 3, 2024
60c1a59
Merge pull request #17119 from dotnet/merges/main-to-lsp
abonie May 7, 2024
5084081
Merge pull request #17123 from dotnet/merges/main-to-lsp
abonie May 14, 2024
b7f187b
Merge pull request #17145 from dotnet/merges/main-to-lsp
abonie May 15, 2024
78b9e91
Merge pull request #17153 from dotnet/merges/main-to-lsp
abonie May 16, 2024
f80de3b
Merge pull request #17166 from dotnet/merges/main-to-lsp
abonie May 21, 2024
237cd45
Merge pull request #17214 from dotnet/merges/main-to-lsp
abonie May 23, 2024
3d58a1f
Structure LSP for better colalboration (#17246)
vzarytovskii May 27, 2024
2d43ff4
Merge pull request #17247 from dotnet/merges/main-to-lsp
abonie May 28, 2024
c88e4c3
Merge pull request #17263 from dotnet/merges/main-to-lsp
abonie May 30, 2024
dc14f59
Merge branch 'lsp' into merges/main-to-lsp
vzarytovskii Jun 21, 2024
898c715
Merge pull request #17305 from dotnet/merges/main-to-lsp
vzarytovskii Jun 21, 2024
ea93ecc
Fix build - remove compressed solution
vzarytovskii Jun 24, 2024
f0e4826
Some prototype that almost works
abonie Jun 6, 2024
fa4f634
Use lexical classification in addition to semantic
abonie Jun 26, 2024
01d0879
Refactor
abonie Jun 27, 2024
0cdbe77
Merge pull request #17358 from abonie/semantic-tokens
abonie Jun 27, 2024
0010050
Merge pull request #17538 from dotnet/merges/main-to-lsp
abonie Aug 15, 2024
908373b
Merge pull request #17549 from dotnet/merges/main-to-lsp
abonie Aug 16, 2024
d9ccdad
Merge pull request #17554 from dotnet/merges/main-to-lsp
abonie Aug 19, 2024
77e5b33
Merge pull request #17576 from dotnet/merges/main-to-lsp
abonie Aug 22, 2024
115e5ba
Merge branch 'lsp' into merges/main-to-lsp
abonie Sep 2, 2024
32d8221
Merge pull request #17593 from dotnet/merges/main-to-lsp
abonie Sep 2, 2024
baf5c4d
Merge pull request #17655 from dotnet/merges/main-to-lsp
abonie Sep 3, 2024
0826343
Add some null checks
abonie Sep 3, 2024
7019d0d
Merge pull request #17659 from abonie/some-lsp-nullchecks
abonie Sep 3, 2024
bb9c335
Merge pull request #17661 from dotnet/merges/main-to-lsp
abonie Sep 12, 2024
812a30a
Merge pull request #17716 from dotnet/merges/main-to-lsp
abonie Sep 20, 2024
c1486be
Merge pull request #17774 from dotnet/merges/main-to-lsp
abonie Sep 23, 2024
ab9e788
Merge branch 'lsp' into merges/main-to-lsp
0101 Oct 2, 2024
25e79a5
Merge pull request #17780 from dotnet/merges/main-to-lsp
0101 Oct 2, 2024
a864537
Merge pull request #17831 from dotnet/merges/main-to-lsp
0101 Oct 3, 2024
f7d8f6c
Merge pull request #17833 from dotnet/merges/main-to-lsp
0101 Oct 24, 2024
f5acd53
Merge pull request #17924 from dotnet/merges/main-to-lsp
0101 Oct 29, 2024
a7ae4f1
Merge pull request #17940 from dotnet/merges/main-to-lsp
0101 Oct 30, 2024
3cadf95
Merge pull request #17942 from dotnet/merges/main-to-lsp
0101 Oct 31, 2024
74d0fe7
Merge pull request #17945 from dotnet/merges/main-to-lsp
0101 Nov 1, 2024
a5e5882
Merge pull request #17955 from dotnet/merges/main-to-lsp
0101 Nov 5, 2024
021fb6c
Merge pull request #17960 from dotnet/merges/main-to-lsp
0101 Nov 6, 2024
2fccf9b
FSharpWorkspace (#17920)
0101 Nov 6, 2024
b742bed
Merge pull request #17968 from dotnet/merges/main-to-lsp
0101 Nov 7, 2024
bf16b59
Merge pull request #17982 from dotnet/merges/main-to-lsp
0101 Nov 13, 2024
5493065
WIP: move workspace to FCS
0101 Nov 13, 2024
fd427b0
Merge pull request #17999 from dotnet/merges/main-to-lsp
0101 Nov 14, 2024
0ec23ff
move tests
0101 Nov 15, 2024
b18a630
Merge pull request #18010 from dotnet/merges/main-to-lsp
0101 Nov 18, 2024
4686b56
Merge branch 'lsp' of github.com:dotnet/fsharp into lsp-refactoring
0101 Nov 18, 2024
63531b9
workspace signatures
0101 Nov 19, 2024
5de0de9
Merge pull request #18026 from dotnet/merges/main-to-lsp
0101 Nov 19, 2024
080e9b5
Merge branch 'lsp' of https://github.com/dotnet/fsharp into lsp-refac…
0101 Nov 19, 2024
a40dce6
formatting
0101 Nov 19, 2024
ab8e69a
Pick out FSharpWorkspace from LSP branch
0101 Nov 19, 2024
a68d5a2
nullness fix
0101 Nov 19, 2024
0c6940b
tests
0101 Nov 19, 2024
2b04d3f
Remove unused methods
0101 Nov 19, 2024
b2ba2d2
f
0101 Nov 19, 2024
c19ff5e
Added nullness using file to fantomasignore
0101 Nov 19, 2024
9a590dc
Remove FSharpWorkspace signatures
0101 Nov 20, 2024
00d5cf2
update baselines
0101 Nov 20, 2024
c8294c2
Merge branch 'workspace' into lsp-refactoring
0101 Nov 20, 2024
aee81fa
Remove FSharpWorkspace signatures
0101 Nov 20, 2024
56fb702
merge
0101 Nov 20, 2024
9507a85
mergefix
0101 Nov 20, 2024
90b8bee
baselines
0101 Nov 20, 2024
718e366
Merge pull request #18031 from 0101/lsp-refactoring
0101 Nov 20, 2024
1dbe2c8
Merge pull request #18035 from dotnet/merges/main-to-lsp
0101 Nov 20, 2024
63c90be
Merge pull request #18044 from dotnet/merges/main-to-lsp
0101 Nov 22, 2024
fa5510f
Merge pull request #18053 from dotnet/merges/main-to-lsp
0101 Nov 27, 2024
d388be9
Merge remote-tracking branch 'upstream/main' into feature/lsp
0101 Nov 29, 2024
35cada0
Merge pull request #18091 from dotnet/merges/main-to-feature/lsp
0101 Dec 2, 2024
25e5842
Merge branch 'lsp' of https://github.com/dotnet/fsharp into feature/lsp
0101 Dec 2, 2024
fe87acb
Update fantomas ignore
0101 Dec 2, 2024
9361190
Merge branch 'feature/lsp' of https://github.com/dotnet/fsharp into f…
0101 Dec 2, 2024
8183316
[LSP] phase 1 endpoints, dependency updates (#18087)
0101 Dec 2, 2024
f86840b
Merge branch 'feature/lsp' into merges/main-to-feature/lsp
0101 Dec 4, 2024
c0c3515
Merge pull request #18100 from dotnet/merges/main-to-feature/lsp
0101 Dec 4, 2024
091a260
update ilverify baselines
0101 Dec 4, 2024
e313a87
Merge branch 'main' into feature/lsp
0101 Dec 6, 2024
e01bc94
Some LSP updates (#18141)
0101 Dec 17, 2024
d9060a2
Merge branch 'main' into merge-main-to-lsp
0101 Dec 17, 2024
bf02d89
Merge pull request #18156 from 0101/merge-main-to-lsp
0101 Dec 18, 2024
431385b
Merge branch 'feature/lsp' into merges/main-to-feature/lsp
0101 Dec 18, 2024
77d3803
Merge pull request #18158 from dotnet/merges/main-to-feature/lsp
0101 Dec 18, 2024
aa2837f
Merge pull request #18163 from dotnet/merges/main-to-feature/lsp
0101 Dec 19, 2024
5c9c204
Merge remote-tracking branch 'upstream/main' into feature/lsp
0101 Jan 8, 2025
511de90
wip
0101 Dec 18, 2024
f97ae7a
fix
0101 Dec 19, 2024
da38e3e
f
0101 Jan 8, 2025
59cfe19
localization
0101 Jan 8, 2025
065096c
Merge pull request #18220 from dotnet/merges/main-to-feature/lsp
0101 Jan 9, 2025
05f93b1
Merge branch 'feature/lsp' into extension-config
0101 Jan 9, 2025
709a002
Merge branch 'feature/lsp' into merge/main-to-feature/lsp
0101 Feb 6, 2025
25db8cf
comment out jaeger export for workspace tests
0101 Feb 6, 2025
f6477bf
Merge pull request #18273 from dotnet/merge/main-to-feature/lsp
0101 Feb 6, 2025
e3dd05f
Merge branch 'merge/main-to-feature/lsp' of https://github.com/dotnet…
abonie Feb 25, 2025
d0a1a3c
Fix merge
abonie Feb 25, 2025
f5e190c
Merge pull request #18297 from dotnet/merge/main-to-feature/lsp
abonie Feb 25, 2025
9c6e560
Merge branch 'feature/lsp' into merge/main-to-feature/lsp
abonie Mar 4, 2025
f386188
Merge pull request #18348 from dotnet/merge/main-to-feature/lsp
abonie Mar 4, 2025
117e9d0
[automated] Merge branch 'main' => 'feature/lsp' (#18359)
github-actions[bot] Mar 6, 2025
37567ae
Fix merge
abonie Mar 10, 2025
dad202b
Merge pull request #18370 from dotnet/merge/main-to-feature/lsp
abonie Mar 11, 2025
e028d20
Fix bsl tests
abonie Mar 18, 2025
6724eff
Merge pull request #18375 from dotnet/merge/main-to-feature/lsp
abonie Mar 18, 2025
6d4877c
Merge branch 'feature/lsp' into extension-config
T-Gro Mar 25, 2025
0a92313
Fix merge
abonie Apr 9, 2025
e9af46c
Run fantomas
abonie Apr 9, 2025
0030459
Revert change in AsyncMemoize
abonie Apr 10, 2025
c785f38
Adjust ilverify bsl
abonie Apr 11, 2025
1a35438
Merge pull request #18455 from dotnet/merge/main-to-feature/lsp
abonie Apr 11, 2025
965606d
Merge pull request #18476 from dotnet/merge/main-to-feature/lsp
abonie Apr 15, 2025
0fb3112
Merge branch 'feature/lsp' into merge/main-to-feature/lsp
abonie Apr 25, 2025
7ac0a54
Merge pull request #18480 from dotnet/merge/main-to-feature/lsp
abonie Apr 28, 2025
af79c3e
Merge branch 'feature/lsp' into extension-config
abonie Apr 28, 2025
79533b8
Underscore unused variable
abonie Apr 30, 2025
13b5909
Run fantomas
abonie Apr 30, 2025
8871484
Merge pull request #18219 from 0101/extension-config
abonie Apr 30, 2025
26d98a5
Add Editor project to sln
abonie May 13, 2025
8c622bb
Merge pull request #18544 from abonie/add-editorproj-to-solution
abonie May 13, 2025
7c1b962
Handle null argument in reading extension config (#18558)
abonie May 16, 2025
ec6df2a
Update baselines
abonie May 29, 2025
6191e5d
Merge pull request #18624 from dotnet/merge/main-to-feature/lsp
abonie May 29, 2025
12213b3
Fix merge from main
abonie May 29, 2025
8711bb9
Fix ilverify baseline
abonie May 29, 2025
18aa650
Update tests/FSharp.Compiler.ComponentTests/CompilerService/FSharpWor…
abonie May 30, 2025
64cc5ea
Merge pull request #18634 from abonie/fix-main-merge-fsharpworkspace
abonie Jun 2, 2025
1e3dd97
Merge branch 'main' into feature/lsp
abonie Jun 3, 2025
04de053
Update TransparentCompiler.fs
abonie Jun 5, 2025
6ac0aae
Update src/Compiler/Service/TransparentCompiler.fs
abonie Jun 5, 2025
01a3f0c
Update src/Compiler/Service/TransparentCompiler.fs
abonie Jun 5, 2025
26d876c
Merge branch 'main' into feature/lsp
abonie Jun 5, 2025
ad11507
Fix baselines
abonie Jun 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
74 changes: 74 additions & 0 deletions VSFSharpExtension.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17
VisualStudioVersion = 17.0.31903.59
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{B4A1E626-4A48-4977-B291-219882DB3413}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FSharp.VisualStudio.Extension", "src\FSharp.VisualStudio.Extension\FSharp.VisualStudio.Extension.csproj", "{14B9AB0E-2FC0-43F1-9775-20C262202D12}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.LanguageServer", "src\FSharp.Compiler.LanguageServer\FSharp.Compiler.LanguageServer.fsproj", "{7EDDFB35-2428-4433-8ABF-47233480B746}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.Service", "src\Compiler\FSharp.Compiler.Service.fsproj", "{0B24DCA6-902F-409E-A18C-7B1BFDDC8849}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Core", "src\FSharp.Core\FSharp.Core.fsproj", "{5A4B66D5-A6C3-402C-A010-7A3635098DA7}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.DependencyManager.Nuget", "src\FSharp.DependencyManager.Nuget\FSharp.DependencyManager.Nuget.fsproj", "{860808CF-D092-4511-B011-6205B654031D}"
EndProject
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FSharp.Editor", "vsintegration\src\FSharp.Editor\FSharp.Editor.fsproj", "{3D4A95CB-1563-CD9A-3949-FE01922CD5BD}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Proto|Any CPU = Proto|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{14B9AB0E-2FC0-43F1-9775-20C262202D12}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{14B9AB0E-2FC0-43F1-9775-20C262202D12}.Debug|Any CPU.Build.0 = Debug|Any CPU
{14B9AB0E-2FC0-43F1-9775-20C262202D12}.Proto|Any CPU.ActiveCfg = Release|Any CPU
{14B9AB0E-2FC0-43F1-9775-20C262202D12}.Proto|Any CPU.Build.0 = Release|Any CPU
{14B9AB0E-2FC0-43F1-9775-20C262202D12}.Proto|Any CPU.Deploy.0 = Release|Any CPU
{14B9AB0E-2FC0-43F1-9775-20C262202D12}.Release|Any CPU.ActiveCfg = Release|Any CPU
{14B9AB0E-2FC0-43F1-9775-20C262202D12}.Release|Any CPU.Build.0 = Release|Any CPU
{7EDDFB35-2428-4433-8ABF-47233480B746}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7EDDFB35-2428-4433-8ABF-47233480B746}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7EDDFB35-2428-4433-8ABF-47233480B746}.Proto|Any CPU.ActiveCfg = Release|Any CPU
{7EDDFB35-2428-4433-8ABF-47233480B746}.Proto|Any CPU.Build.0 = Release|Any CPU
{7EDDFB35-2428-4433-8ABF-47233480B746}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7EDDFB35-2428-4433-8ABF-47233480B746}.Release|Any CPU.Build.0 = Release|Any CPU
{0B24DCA6-902F-409E-A18C-7B1BFDDC8849}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0B24DCA6-902F-409E-A18C-7B1BFDDC8849}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0B24DCA6-902F-409E-A18C-7B1BFDDC8849}.Proto|Any CPU.ActiveCfg = Debug|Any CPU
{0B24DCA6-902F-409E-A18C-7B1BFDDC8849}.Proto|Any CPU.Build.0 = Debug|Any CPU
{0B24DCA6-902F-409E-A18C-7B1BFDDC8849}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0B24DCA6-902F-409E-A18C-7B1BFDDC8849}.Release|Any CPU.Build.0 = Release|Any CPU
{5A4B66D5-A6C3-402C-A010-7A3635098DA7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5A4B66D5-A6C3-402C-A010-7A3635098DA7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{5A4B66D5-A6C3-402C-A010-7A3635098DA7}.Proto|Any CPU.ActiveCfg = Proto|Any CPU
{5A4B66D5-A6C3-402C-A010-7A3635098DA7}.Proto|Any CPU.Build.0 = Proto|Any CPU
{5A4B66D5-A6C3-402C-A010-7A3635098DA7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5A4B66D5-A6C3-402C-A010-7A3635098DA7}.Release|Any CPU.Build.0 = Release|Any CPU
{860808CF-D092-4511-B011-6205B654031D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{860808CF-D092-4511-B011-6205B654031D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{860808CF-D092-4511-B011-6205B654031D}.Proto|Any CPU.ActiveCfg = Debug|Any CPU
{860808CF-D092-4511-B011-6205B654031D}.Proto|Any CPU.Build.0 = Debug|Any CPU
{860808CF-D092-4511-B011-6205B654031D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{860808CF-D092-4511-B011-6205B654031D}.Release|Any CPU.Build.0 = Release|Any CPU
{3D4A95CB-1563-CD9A-3949-FE01922CD5BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3D4A95CB-1563-CD9A-3949-FE01922CD5BD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3D4A95CB-1563-CD9A-3949-FE01922CD5BD}.Proto|Any CPU.ActiveCfg = Debug|Any CPU
{3D4A95CB-1563-CD9A-3949-FE01922CD5BD}.Proto|Any CPU.Build.0 = Debug|Any CPU
{3D4A95CB-1563-CD9A-3949-FE01922CD5BD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3D4A95CB-1563-CD9A-3949-FE01922CD5BD}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{14B9AB0E-2FC0-43F1-9775-20C262202D12} = {B4A1E626-4A48-4977-B291-219882DB3413}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {BCE01FEF-1B00-471B-81E0-A06994EC90ED}
EndGlobalSection
EndGlobal
57 changes: 57 additions & 0 deletions VisualFSharp.sln
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,14 @@ Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "MicroPerf", "tests\benchmar
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MicroPerfCSharp", "tests\benchmarks\CompiledCodeBenchmarks\MicroPerf\CS\MicroPerfCSharp.csproj", "{9F9DD315-37DA-4413-928E-1CFC6924B64F}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.LanguageServer", "src\FSharp.Compiler.LanguageServer\FSharp.Compiler.LanguageServer.fsproj", "{D72F6593-DB2D-47AC-8E15-8DCE8527972E}"
EndProject
Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "FSharp.Compiler.LanguageServer.Tests", "tests\FSharp.Compiler.LanguageServer.Tests\FSharp.Compiler.LanguageServer.Tests.fsproj", "{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FSharp.VisualStudio.Extension", "src\FSharp.VisualStudio.Extension\FSharp.VisualStudio.Extension.csproj", "{E1013576-6257-47BA-AAFB-F95B68DAB1FF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Microsoft.CommonLanguageServerProtocol.Framework.Proxy", "src\Microsoft.CommonLanguageServerProtocol.Framework.Proxy\Microsoft.CommonLanguageServerProtocol.Framework.Proxy.csproj", "{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -1019,6 +1027,54 @@ Global
{9F9DD315-37DA-4413-928E-1CFC6924B64F}.Release|Any CPU.Build.0 = Release|Any CPU
{9F9DD315-37DA-4413-928E-1CFC6924B64F}.Release|x86.ActiveCfg = Release|Any CPU
{9F9DD315-37DA-4413-928E-1CFC6924B64F}.Release|x86.Build.0 = Release|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Debug|x86.ActiveCfg = Debug|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Debug|x86.Build.0 = Debug|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Proto|Any CPU.ActiveCfg = Debug|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Proto|Any CPU.Build.0 = Debug|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Proto|x86.ActiveCfg = Debug|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Proto|x86.Build.0 = Debug|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Release|Any CPU.Build.0 = Release|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Release|x86.ActiveCfg = Release|Any CPU
{D72F6593-DB2D-47AC-8E15-8DCE8527972E}.Release|x86.Build.0 = Release|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Debug|x86.ActiveCfg = Debug|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Debug|x86.Build.0 = Debug|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Proto|Any CPU.ActiveCfg = Debug|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Proto|Any CPU.Build.0 = Debug|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Proto|x86.ActiveCfg = Debug|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Proto|x86.Build.0 = Debug|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Release|Any CPU.Build.0 = Release|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Release|x86.ActiveCfg = Release|Any CPU
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388}.Release|x86.Build.0 = Release|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Debug|x86.ActiveCfg = Debug|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Debug|x86.Build.0 = Debug|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Proto|Any CPU.ActiveCfg = Debug|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Proto|Any CPU.Build.0 = Debug|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Proto|x86.ActiveCfg = Debug|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Proto|x86.Build.0 = Debug|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Release|Any CPU.Build.0 = Release|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Release|x86.ActiveCfg = Release|Any CPU
{E1013576-6257-47BA-AAFB-F95B68DAB1FF}.Release|x86.Build.0 = Release|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Debug|Any CPU.Build.0 = Debug|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Debug|x86.ActiveCfg = Debug|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Debug|x86.Build.0 = Debug|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Proto|Any CPU.ActiveCfg = Debug|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Proto|Any CPU.Build.0 = Debug|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Proto|x86.ActiveCfg = Debug|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Proto|x86.Build.0 = Debug|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Release|Any CPU.Build.0 = Release|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Release|x86.ActiveCfg = Release|Any CPU
{FAFF15B5-F7C4-1CE5-9A18-2F6DC93E03ED}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -1099,6 +1155,7 @@ Global
{6734FC6F-B5F3-45E1-9A72-720378BB49C9} = {DFB6ADD7-3149-43D9-AFA0-FC4A818B472B}
{601CD5C1-EAFA-4AE3-8FB9-F667B5728213} = {DFB6ADD7-3149-43D9-AFA0-FC4A818B472B}
{9F9DD315-37DA-4413-928E-1CFC6924B64F} = {DFB6ADD7-3149-43D9-AFA0-FC4A818B472B}
{1E83A6C8-FA4D-42BD-B4A5-B7F9AAD1B388} = {CFE3259A-2D30-4EB0-80D5-E8B5F3D01449}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {48EDBBBE-C8EE-4E3C-8B19-97184A487B37}
Expand Down
3 changes: 2 additions & 1 deletion buildtools/AssemblyCheck/SkipVerifyEmbeddedPdb.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,8 @@ FSharp.Benchmarks.Common.dll
FSharp.Compiler.Benchmarks.dll
FSharp.Compiler.ComponentTests.dll
FSharp.Test.Utilities.dll
FSharp.Compiler.LanguageServer.Tests.dll
FSharp.Compiler.Private.Scripting.UnitTests.dll
FSharp.Compiler.Service.Tests.dll
FSharp.Core.UnitTests.dll
FSharpSuite.Tests.dll
FSharpSuite.Tests.dll
2 changes: 2 additions & 0 deletions src/Compiler/FSharp.Compiler.Service.fsproj
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,8 @@
<InternalsVisibleTo Include="HistoricalBenchmark" />
<InternalsVisibleTo Include="FSharp.Test.Utilities" />
<InternalsVisibleTo Include="FSharp.Editor" />
<InternalsVisibleTo Include="FSharp.Compiler.LanguageServer" />
<InternalsVisibleTo Include="FSharp.VisualStudio.Extension" />
</ItemGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion src/Compiler/Facilities/AsyncMemoize.fs
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ module internal Utils =

/// Return file name with one directory above it
let shortPath (path: string) =
let dirPath = !!Path.GetDirectoryName(path)
let dirPath = Path.GetDirectoryName(path) |> Option.ofObj |> Option.defaultValue ""

let dir =
dirPath.Split Path.DirectorySeparatorChar
Expand Down
6 changes: 5 additions & 1 deletion src/Compiler/Facilities/Hashing.fs
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,11 @@ module internal Md5Hasher =
let private md5 =
new ThreadLocal<_>(fun () -> System.Security.Cryptography.MD5.Create())

let computeHash (bytes: byte array) = md5.Value.ComputeHash(bytes)
let computeHash (bytes: byte array) =
// md5.Value.ComputeHash(bytes) TODO: the threadlocal is not working in new VS extension
ignore md5
let md5 = System.Security.Cryptography.MD5.Create()
md5.ComputeHash(bytes)

let empty = Array.empty

Expand Down
64 changes: 64 additions & 0 deletions src/Compiler/Service/FSharpProjectSnapshot.fs
Original file line number Diff line number Diff line change
Expand Up @@ -619,6 +619,7 @@ and [<Experimental("This FCS API is experimental and subject to change.")>] FSha
member _.OriginalLoadReferences = projectSnapshot.OriginalLoadReferences
member _.Stamp = projectSnapshot.Stamp
member _.OutputFileName = projectSnapshot.OutputFileName
member _.ProjectConfig = projectSnapshot.ProjectConfig

static member Create
(
Expand Down Expand Up @@ -745,6 +746,69 @@ and [<Experimental("This FCS API is experimental and subject to change.")>] FSha

FSharpProjectSnapshot.FromOptions(options, getFileSnapshot)

static member FromResponseFile(responseFile: FileInfo, projectFileName) =
if not responseFile.Exists then
failwith $"%s{responseFile.FullName} does not exist"

let compilerArgs = File.ReadAllLines responseFile.FullName

let directoryName: string =
match responseFile.DirectoryName with
| null -> failwith "Directory name of the response file is null"
| str -> str

FSharpProjectSnapshot.FromCommandLineArgs(compilerArgs, directoryName, projectFileName)

static member FromCommandLineArgs(compilerArgs: string array, directoryPath: string, projectFileName) =
let fsharpFileExtensions = set [| ".fs"; ".fsi"; ".fsx" |]

let isFSharpFile (file: string) =
Set.exists (fun (ext: string) -> file.EndsWith(ext, StringComparison.Ordinal)) fsharpFileExtensions

let isReference: string -> bool = _.StartsWith("-r:")

let fsharpFiles =
compilerArgs
|> Array.choose (fun (line: string) ->
if not (isFSharpFile line) then
None
else

let fullPath = Path.Combine(directoryPath, line)
if not (File.Exists fullPath) then None else Some fullPath)
|> Array.toList

let referencesOnDisk =
compilerArgs |> Seq.filter isReference |> Seq.map _.Substring(3) |> Seq.toList

let otherOptions =
compilerArgs
|> Seq.filter (not << isReference)
|> Seq.filter (not << isFSharpFile)
|> Seq.toList

FSharpProjectSnapshot.Create(
projectFileName = projectFileName,
outputFileName = None,
projectId = None,
sourceFiles = (fsharpFiles |> List.map FSharpFileSnapshot.CreateFromFileSystem),
referencesOnDisk =
(referencesOnDisk
|> List.map (fun x ->
{
Path = x
LastModified = FileSystem.GetLastWriteTimeShim(x)
})),
otherOptions = otherOptions,
referencedProjects = [],
isIncompleteTypeCheckEnvironment = false,
useScriptResolutionRules = false,
loadTime = DateTime.Now,
unresolvedReferences = None,
originalLoadReferences = [],
stamp = None
)

let internal snapshotTable =
ConditionalWeakTable<ProjectSnapshot, FSharpProjectOptions>()

Expand Down
9 changes: 1 addition & 8 deletions src/Compiler/Service/FSharpWorkspace.fs
Original file line number Diff line number Diff line change
Expand Up @@ -46,14 +46,7 @@ type FSharpWorkspace(checker: FSharpChecker) =
)
)

member internal this.Debug_DumpMermaid(path) =
let content =
depGraph.Debug_RenderMermaid (function
// Collapse all reference on disk nodes into one. Otherwise the graph is too big to render.
| WorkspaceGraphTypes.WorkspaceNodeKey.ReferenceOnDisk _ -> WorkspaceGraphTypes.WorkspaceNodeKey.ReferenceOnDisk "..."
| x -> x)

File.WriteAllText(__SOURCE_DIRECTORY__ + path, content)
member internal _.DepGraph = depGraph

/// The `FSharpChecker` instance used by this workspace.
member _.Checker = checker
Expand Down
Loading
Loading