Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

F# Shim - Round 2 #35591

Merged
merged 25 commits into from Jun 11, 2019

Conversation

Projects
None yet
4 participants
@TIHan
Copy link
Contributor

commented May 8, 2019

This will actually remove F#'s use of Roslyn IVTs, except for Microsoft.VisualStudio.LanguageServices.

I've added a new project, Microsoft.CodeAnalysis.ExternalAccess.FSharp.UnitTests, in a FSharpTest folder next to FSharp in the ExternalAccess folder. Currently, it is just testing enums that were shimmed over. I will add a test for the Glyph enum which is related to this issue: #34971

@TIHan TIHan requested review from dotnet/roslyn-ide as code owners May 8, 2019

@TIHan TIHan referenced this pull request May 8, 2019

Closed

[WIP] Roslyn Shim - Round 2 #6700

TIHan added some commits May 8, 2019

@TIHan TIHan changed the title [WIP] F# Shim - Round 2 F# Shim - Round 2 May 26, 2019

@TIHan

This comment has been minimized.

Copy link
Contributor Author

commented May 26, 2019

This is basically done until some review.

However, I'm having some trouble getting DocumentDiagnosticAnalyzers to run. None of them seem to work since I moved them over to the ExternalAccess.FSharp. But, with the services that I have tested at this point, inline rename, block structure, navigation, those seem to work.

TIHan added some commits May 28, 2019

@TIHan

This comment has been minimized.

Copy link
Contributor Author

commented May 28, 2019

This is ready. @sharwell helped me get the DocumentDiagnosticAnalyzers working again. I've tested all the services shimmed; they seem to work. Once we get this into preview we can dogfood a lot more.

@heejaechang
Copy link
Contributor

left a comment

nice!

@heejaechang

This comment has been minimized.

Copy link
Contributor

commented Jun 5, 2019

nice that those IVT are now removed except VS one for step 3.
there is no public API added in FSharp Access and no change in Roslyn side.
changes in ExternalAccess is up to you guys, so all looks good. I like that you added unit test as well.

Show resolved Hide resolved src/Tools/ExternalAccess/FSharp/ExternalAccessFSharpResources.resx
}
}

internal static FSharpGlyph GetExpectedFSharpGlyph(Microsoft.CodeAnalysis.Glyph glyph)

This comment has been minimized.

Copy link
@sharwell

sharwell Jun 6, 2019

Member

💡 Since this is a test, can you make it use reflection?

}
}

internal static Microsoft.CodeAnalysis.Glyph GetExpectedGlyph(FSharpGlyph glyph)

This comment has been minimized.

Copy link
@sharwell

sharwell Jun 6, 2019

Member

💡 Since this is test code, can you make it use reflection?

}
}

internal static FSharpSignatureHelpTriggerReason GetExpectedTriggerReason(SignatureHelpTriggerReason triggerReason)

This comment has been minimized.

Copy link
@sharwell

sharwell Jun 6, 2019

Member

💡 Since this is a test, can it use reflection on the member name?

}
}

internal static NavigateToMatchKind GetExpectedNavigateToMatchKind(FSharpNavigateToMatchKind kind)

This comment has been minimized.

Copy link
@sharwell

sharwell Jun 6, 2019

Member

💡 Since this is test code, can it use reflection on the member name?

This comment has been minimized.

Copy link
@TIHan

TIHan Jun 6, 2019

Author Contributor

We could, but I don't know if that's really what we want. What if we have a mapping between enum cases where the name doesn't match?

Show resolved Hide resolved src/Tools/ExternalAccess/FSharp/Editor/IFSharpEditorInlineRenameService.cs Outdated
Show resolved Hide resolved src/Tools/ExternalAccess/FSharp/Editor/IFSharpEditorInlineRenameService.cs Outdated
Show resolved Hide resolved src/Tools/ExternalAccess/FSharp/Editor/IFSharpEditorInlineRenameService.cs Outdated
Show resolved Hide resolved src/Tools/ExternalAccess/FSharp/Editor/IFSharpEditorInlineRenameService.cs Outdated
Show resolved Hide resolved ...ExternalAccess/FSharp/Internal/Editor/FSharpEditorInlineRenameService.cs Outdated
@heejaechang
Copy link
Contributor

left a comment

looks good!

TIHan added some commits Jun 7, 2019

@TIHan TIHan closed this Jun 10, 2019

@TIHan TIHan reopened this Jun 10, 2019

@TIHan TIHan closed this Jun 11, 2019

@TIHan TIHan reopened this Jun 11, 2019

@jinujoseph jinujoseph added this to the 16.2 milestone Jun 11, 2019

@jinujoseph

This comment has been minimized.

Copy link
Contributor

commented Jun 11, 2019

approved for 16.2.preview4

@TIHan TIHan merged commit 0d44ad1 into dotnet:master Jun 11, 2019

16 checks passed

WIP Ready for review
Details
license/cla All CLA requirements met.
Details
roslyn-CI Build #20190610.86 succeeded
Details
roslyn-CI (Linux_Test coreclr) Linux_Test coreclr succeeded
Details
roslyn-CI (Linux_Test mono) Linux_Test mono succeeded
Details
roslyn-CI (MacOs_Test) MacOs_Test succeeded
Details
roslyn-CI (Windows_CoreClr_Unit_Tests debug) Windows_CoreClr_Unit_Tests debug succeeded
Details
roslyn-CI (Windows_CoreClr_Unit_Tests release) Windows_CoreClr_Unit_Tests release succeeded
Details
roslyn-CI (Windows_Correctness_Test) Windows_Correctness_Test succeeded
Details
roslyn-CI (Windows_Desktop_Spanish_Unit_Tests) Windows_Desktop_Spanish_Unit_Tests succeeded
Details
roslyn-CI (Windows_Desktop_Unit_Tests debug_32) Windows_Desktop_Unit_Tests debug_32 succeeded
Details
roslyn-CI (Windows_Desktop_Unit_Tests debug_64) Windows_Desktop_Unit_Tests debug_64 succeeded
Details
roslyn-CI (Windows_Desktop_Unit_Tests release_32) Windows_Desktop_Unit_Tests release_32 succeeded
Details
roslyn-CI (Windows_Desktop_Unit_Tests release_64) Windows_Desktop_Unit_Tests release_64 succeeded
Details
roslyn-CI (Windows_Determinism_Test) Windows_Determinism_Test succeeded
Details
roslyn-integration-CI Build #20190610.86 succeeded
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.