dotnet / fsharp

The F# compiler, F# core library, F# language service, and F# tooling integration for Visual Studio
https://dotnet.microsoft.com/languages/fsharp
MIT License
3.86k stars 779 forks source link

`Tracking`: Code Refactorings #15561

Open psfinaki opened 1 year ago

psfinaki commented 1 year ago

Note This is a "meta" issue for tracking purposes since GitHub does not support special types of issues.

Code refactorings are code actions that are available but not necessary to be used. In VS, they are represented by screwdrivers.

We should make them easy to create, test, and extend.

Improvements for existing ones:

Ideas for the ones:

Done:

kerams commented 1 year ago

I have a tip for one: having written a new function/type, use the screwdriver to pull it into an existing signature file.

Or what about extracting a bool function parameter into a Yes | No RQA union type.

psfinaki commented 1 year ago

@kerams absolutely - great ideas both, I created tickets for them.

We'll see when we get to this, and this will also require some new testing machinery. OTOH, we only have 3 code refactorings right now so I don't see major code overhaul happening there as it is happening now in code fixes :)