Microsoft has been recommending out-of-process extensions for quite a while now; ReSharper never moved there (they did with Rider). Might be that for an extension the size of ReSharper it's not feasible (to this day Rider is missing features in the UI that ReSharper had for ages) and they decided that making their own thing is the better approach.
However, Rider is quite a bit slower than VS 2022 (w/o ReSharper – Roslynator has been a good replacement for my needs here) and there's likely no good way around this for JetBrains. Since .NET embraces Roslyn for lots of customizations (custom analyzers, source generators, etc.) Rider must keep a Roslyn workspace around, along with its own analysis, thus doing pretty much everything twice – both for loading a solution and for every keystroke.
Microsoft has been recommending out-of-process extensions for quite a while now;
In other words, Microsoft has been recommending rearcheticting your extensions from the ground up, because their own code base is too messed up to support 64-bit.
And it looks like JetBrains is doing that, but it takes years for such massive codebase.
Rearchitecting the extension out of the process makes sense. You can easily trace performance issues to an extension and they don’t have to build a bunch of extension performance tooling in the ide
It's not just 32 vs. 64 bit. There are many other reasons that require separation. Stability, performance, different dependencies from the IDE process, ...
strange, this doesn't match my experience at all. VS 2022 is way better than VS 2019 and earlier but still significantly behind Rider in terms of speed.
Comments
Microsoft has been recommending out-of-process extensions for quite a while now; ReSharper never moved there (they did with Rider). Might be that for an extension the size of ReSharper it's not feasible (to this day Rider is missing features in the UI that ReSharper had for ages) and they decided that making their own thing is the better approach.
However, Rider is quite a bit slower than VS 2022 (w/o ReSharper – Roslynator has been a good replacement for my needs here) and there's likely no good way around this for JetBrains. Since .NET embraces Roslyn for lots of customizations (custom analyzers, source generators, etc.) Rider must keep a Roslyn workspace around, along with its own analysis, thus doing pretty much everything twice – both for loading a solution and for every keystroke.
In other words, Microsoft has been recommending rearcheticting your extensions from the ground up, because their own code base is too messed up to support 64-bit.
And it looks like JetBrains is doing that, but it takes years for such massive codebase.
Visual studio is 64 bit now.
Rearchitecting the extension out of the process makes sense. You can easily trace performance issues to an extension and they don’t have to build a bunch of extension performance tooling in the ide
It's not just 32 vs. 64 bit. There are many other reasons that require separation. Stability, performance, different dependencies from the IDE process, ...
strange, this doesn't match my experience at all. VS 2022 is way better than VS 2019 and earlier but still significantly behind Rider in terms of speed.