When can CodeLens be out of experimentation? #14031
Replies: 15 comments
|
I think @realvictorprm is going to try getting the caching issue solved by bringing master into his prs so that they're in a position to merge. |
|
I am looking into doing the following:
I've been playing with them and there are two quirks that I noticed:
I think more will be noticed if I just turn it on by default in the 16.9 previews and await feedback to indicate it's ready/not ready |
|
Okay, additional quirk related to renaming. Various edits that move lots of code around will keep old adornments that screw up the editor. The service needs to invalidate more frequently. |
|
Another quirk I noticed in a new .NET 5 web app is that the lenses will sometimes stagger on when they come in, even though the document is typechecked and a lens is already available elsewhere in the document. Not fundamentally broken but clearly needs some tweaking |
|
Another quirk, definitely broken behavior: Create an ASP.NET Core app, modify the following method: [<HttpGet>]
member _.Get() =
let rng = System.Random()
let x = 12
let y = 13
[|
for index in 0..4 ->
{ Date = DateTime.Now.AddDays(float index)
TemperatureC = rng.Next(-20,55)
Summary = summaries.[rng.Next(summaries.Length)] }
|]Very, very slowly type out a new value binding Another quirk that would need to get addressed: #11257 |
|
@vzarytovskii if you're interested in figuring out the rendering quirk, my branch is here: main...cartermp:codelens-bringup It has diverged a bit mostly in resource files and a few API calls that had to get updated to account for FCS changes. But this is the state that isolates the rendering problem. |
Yep, thanks, gonna look at it later in the month. |
|
So where are we with this? But in general this seems to be quite a useful thing and definitely worth having in on by default, do we have any blockers for doing that? @KathleenDollard |
Well, the only blocker would be that the rendering is broken. Which needs fixing. I don't know what is used for rendering - is it built-in mechanism (the same C# use)? If not, we should probably make it use built-in mechanism, and do not reinvent our own. |
|
Rendering is some custom WPF code. It's the most complicated part of it. My branch I have linked resolves all the other quirks with it. |
I see, got it. I thought Roslyn/VS did something which can be used out of the box already. |
|
@cartermp so there were more quirks, right? If you think the branch is still worth reactivating, I will take it from there. |
|
Aaaanyway I'll try to bring back to life the aforementioned branch and fix the aforementioned issue then. Wish me luck |
|
Related: #6066, some more repro screenshots there. |

Uh oh!
There was an error while loading. Please reload this page.
Is your feature request related to a problem? Please describe.
It's been a year. Is CodeLens going the path of Gmail which stayed in beta for years?
Describe the solution you'd like
Merge #5145, fix #4551, and ship CodeLens, then finally be on par with Ionide.
Describe alternatives you've considered
Keeping the status quo. Turn productivity features off by default. Make Ionide better at first glance.
Additional context
Please do #4087 asap as well.
All reactions