Support for Visual Studio 2022

ReSharper 2021.3 release supports Visual Studio 2022 out-of-the-box.

Download ReSharper 2021.3

 

61 out of 65 found this helpful
106 comments

The new preview is great. However, when running builds through Resharper, sometimes (every 2nd or 3rd build) there is a long hang after which the memory consumed is in the 10s of gigabytes (more than `15GB` on my last run). Collecting garbage does nothing. Seems like there is a leak somewhere.


EDIT: It's worse, more than `30GB` used!

Edited by Saad Khattak
0

Hello John Phillips

We are not aware of such issues in 2021.3. Could you please describe the problem you are experiencing in detail?

Thank you.

0

Hello Saad Khattak,

Could you please provide us a memory snapshot as described in the following article - https://resharper-support.jetbrains.com/hc/en-us/articles/115000265844.

Thank you in advance.

0

Angelina Elycheva Done!

Note that I am on latest on both VS and Resharper EAP.

0

Hi There - since the latest update to preview 5 it is no longer possible to debug unit tests.

 

I'm getting this error:-

2021.10.15 16:39:32.377 INFO Starting process: C:\Users\*********\AppData\Local\JetBrains\Installations\ReSharperPlatformVs17_2f8a7ccc\TestRunner\net461\ReSharperTestRunner32.exe -f .NETFramework,Version=v4.8 --parentProcessId 26652 -p 51629 -r e9f72a2d-e1b0-4e4a-ba1f-c2d27f27f33c
2021.10.15 16:39:32.387 INFO Started process with pid 0
2021.10.15 16:39:32.388 TRACE Run: be3ab423-e4c3-4999-b16e-83c6a40987f3 >> DebugHostController.CleanupAfterRun
2021.10.15 16:39:32.388 TRACE Run: be3ab423-e4c3-4999-b16e-83c6a40987f3 << DebugHostController.CleanupAfterRun
2021.10.15 16:39:32.389 INFO Process C:\Users\*********\AppData\Local\JetBrains\Installations\ReSharperPlatformVs17_2f8a7ccc\TestRunner\net461\ReSharperTestRunner32.exe:0 has exited
2021.10.15 16:39:32.390 ERROR Access is denied

--- EXCEPTION #1/2 [Win32Exception]
Message = “Access is denied”
ExceptionPath = Root.InnerException
NativeErrorCode = 5
ClassName = System.ComponentModel.Win32Exception
HResult = E_FAIL=EFail=80004005
Source = System
StackTraceString = “
at System.Diagnostics.ProcessManager.OpenProcess(Int32 processId, Int32 access, Boolean throwIfExited)
at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)
at System.Diagnostics.Process.OpenProcessHandle(Int32 access)
at System.Diagnostics.Process.get_Handle()
at JetBrains.ReSharper.UnitTestFramework.Common.Processes.ProcessWaitHandle..ctor(IPreparedProcess process)
at JetBrains.ReSharper.UnitTestFramework.Execution.TestRunner.Activation.TemporaryTestRunnerAgentInvoker.<StartTestRunnerAgent>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at JetBrains.dotCover.Ide.Core.UnitTesting.Model.PreloadedTestRunners.PreloadedTestRunnerAgentPool.<Allocate>d__13.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at JetBrains.ReSharper.UnitTestFramework.Execution.TestRunner.TestRunnerAgentManager.<GetExecutionAgent>d__3.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at JetBrains.ReSharper.UnitTestFramework.Execution.TestRunner.TestRunnerRunStrategy.<StartTestRunner>d__19.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at JetBrains.ReSharper.UnitTestFramework.Execution.TestRunner.TestRunnerRunStrategy.<Run>d__16.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at JetBrains.ReSharper.UnitTestFramework.Execution.Launch.UnitTestRun.<StartCore>d__37.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at JetBrains.Util.Special.GeneralUtil.WithNotNull[T](T item, Action`1 F)
at JetBrains.ReSharper.UnitTestFramework.Execution.Launch.UnitTestRun.<StartCore>d__37.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at JetBrains.ReSharper.UnitTestFramework.Execution.Launch.UnitTestRun.<Start>d__36.MoveNext()

--- Outer ---

--- EXCEPTION #2/2 [LoggerException]
Message = “Access is denied”
ExceptionPath = Root
ClassName = JetBrains.Util.LoggerException
InnerException = “Exception #1 at Root.InnerException”
HResult = COR_E_APPLICATION=80131600
StackTraceString = “
at JetBrains.Util.ILoggerEx.LogException(ILogger this, LoggingLevel level, Exception exception, ExceptionOrigin exceptionOrigin, String comment)
at JetBrains.Util.ILoggerEx.Error(ILogger this, Exception exception, ExceptionOrigin origin, String comment)
at JetBrains.ReSharper.UnitTestFramework.Execution.Launch.UnitTestRun.<Start>d__36.MoveNext()
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder.Start[TStateMachine](TStateMachine& stateMachine)
at JetBrains.ReSharper.UnitTestFramework.Execution.Launch.UnitTestRun.Start(CancellationToken onCancel, CancellationToken onAbort)
at System.Threading.Tasks.Task`1.InnerInvoke()
at System.Threading.Tasks.Task.Execute()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
at System.Threading.Tasks.Task.ExecuteEntry(Boolean bPreventDoubleExecution)
at System.Threading.ThreadPoolWorkQueue.Dispatch()

2021.10.15 16:39:32.391 VERBOSE Access is denied

--- EXCEPTION #1/2 [Win32Exception]
Message = “Access is denied”
ExceptionPath = Root.InnerException
NativeErrorCode = 5
ClassName = System.ComponentModel.Win32Exception
HResult = E_FAIL=EFail=80004005
Source = System
StackTraceString = “
at System.Diagnostics.ProcessManager.OpenProcess(Int32 processId, Int32 access, Boolean throwIfExited)
at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited)
at System.Diagnostics.Process.get_HasExited()
at System.Diagnostics.Process.EnsureState(State state)
at System.Diagnostics.Process.get_ExitCode()
at JetBrains.ReSharper.UnitTestFramework.Common.Processes.PreparedProcessFromRunningProcess.WaitForExitAndSignal()

--- Outer ---

--- EXCEPTION #2/2 [LoggerException]
Message = “Access is denied”
ExceptionPath = Root
ClassName = JetBrains.Util.LoggerException
InnerException = “Exception #1 at Root.InnerException”
HResult = COR_E_APPLICATION=80131600
StackTraceString = “
at JetBrains.Util.ILoggerEx.LogException(ILogger this, LoggingLevel level, Exception exception, ExceptionOrigin exceptionOrigin, String comment)
at JetBrains.Util.ILoggerEx.LogExceptionSilently(ILogger thіs, Exception ex)
at JetBrains.ReSharper.UnitTestFramework.Common.Processes.PreparedProcessFromRunningProcess.WaitForExitAndSignal()
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Threading.ThreadHelper.ThreadStart()

2021.10.15 16:39:32.392 INFO Run: be3ab423-e4c3-4999-b16e-83c6a40987f3 - Faulted
2021.10.15 16:39:32.392 INFO RunTestsStage completed
2021.10.15 16:39:32.392 INFO FinishLaunchStage started
2021.10.15 16:39:32.392 INFO Finishing launch

0

I'm seeing this too (unable to debug unit tests). I've submitted the exceptions. Looks like it's been triaged as critical.

https://youtrack.jetbrains.com/issue/RSRP-486395

Edited by Meric Stanley
0

Hello Andy Bevan,

There's a known problem with debugging tests in VS 2022 and we are working on it - https://youtrack.jetbrains.com/issue/RSRP-486395.
You are welcome to follow the issue to get updates on it.
Thank you.

0

I kept losing R# keyboard shortcuts. Also occasionally R# just didn't seem to be 'active' for the file I was editing until I closed/reopened the file. I also had a hard crash from vs2022 which on restart it blamed R# for. Lastly R# seems unable to run our unit tests (it through an exception that I reported via the logger).

All in all not a good experience. Tried it for an hour, had to give up and go back to vs 2019.

Edited by Aruecope
1
I have vs2022 Preview 7 installed. I have not had any R# preview for 2022 installed prior to today. I'm a corporate licensed user for R# Ultimate currently. I downloaded and installed R# 2021.3 EAP from your link above. It successfully upgraded my vs2019 installation. R# says it's installed for vs2022 but VS doesn't load it (It never shows up in the Extensions menu).
0

Hello Bakerhillpins,

Could you please contact our support via "Submit a request" form at the top of the page with the following info attached:

1. start VS with the following command:

 devenv.exe /ReSharper.LogFile C:\log\resharper_log.txt /ReSharper.LogLevel Verbose

reproduce the issue and provide resharper_log.txt.

2. pack and provide all logs located in ``%localappdata%\JetBrains\Shared\vAny\Installer``

Thank you.

 

0

@Angelina Elycheva

Unfortunately, it's already uninstalled as I was having all sorts of issues with vs2019. However, I replied with log files to the response I got from the uninstall feedback page.

Edited by Bakerhillpins
0

Angelina Elycheva

I found some time to try this again and was able to get ReSharper to load.  My installation of VS2022 created a shortcut with the following Target property:

"C:\Program Files\Microsoft Visual Studio\2022\Preview\Common7\IDE\devenv.exe" /rootSuffix Exp

Note the command line option "/rootSuffix Exp". If I launch VS with that option ReSharper will not be loaded. If I remove that option and launch VS2022 it will load ReSharper.

"C:\Program Files\Microsoft Visual Studio\2022\Preview\Common7\IDE\devenv.exe"

I'm not sure what I selected during my initial VS2022 install that resulted in that option but that's what was keeping it from loading.

MS docs on that option are here: https://docs.microsoft.com/en-us/visualstudio/extensibility/the-experimental-instance?view=vs-2022

Anyway, thanks for the help!

Edited by Bakerhillpins
0

Bakerhillpins you need to install ReSharper to this experimental instance first. Run the ReSharper installer, click on the Options button, and tick the "Install into experimental instance" checkbox.

0

hey,

So now that VS2022 is released, when can we expect a full R# support?

4

EAP7 doesn't work for me with the released VS2022. I have just done a repair. Haven't tried to uninstall/reinstall...

1

Any updates for VS2022 release? VS2022 is out there already.

Edited by Arman Ghazanchyan
0

ReSharper 2021.3 EAP already provides support of VS 2022, you can find the link in the initial message of this thread. If you are aware of something not working properly please contact us.

ReSharper 2021.3 RTM version will come in a month.

Thank you.

Edited by Angelina Elycheva
1

Hello Michael Heyman

Could you please describe in detail what doesn't work for you in VS 2022?

Thank you in advance.

Edited by Angelina Elycheva
0

It works without the "Exp" option for VS 2022 version 17.0.0

0

Hello Scorpoon

Could you please specify what is "Exp" option? And what are results of enabling this option?

Thank you.

0

Hello Angelina Elycheva

see comment from Alexander Kurakin in this thread.

 

 

0

I am getting this ReSharper exception on VS2022 when I try to clear the cache:

---------------------------
ReSharper – Runtime Error – Technical Data
---------------------------
JetBrains ReSharper has encountered a runtime error.
Technical data follows.
Hint: Ctrl+C copies the text of system message boxes to Clipboard.
________________________________________________________________

DocumentToVsTextBufferMappingStorage has leftover mappings on shutdown for documents (1pc)[“VsDocumentWhidbeyEnvoy(RunningDocumentId:1: <NULL>)”].

--- EXCEPTION #1/1 [LoggerException]
Message = “DocumentToVsTextBufferMappingStorage has leftover mappings on shutdown for documents (1pc)[“VsDocumentWhidbeyEnvoy(RunningDocumentId:1: <NULL>)”].”
ExceptionPath = Root
ClassName = JetBrains.Util.LoggerException
Data.ManagedThreadName = <NULL>
HResult = COR_E_APPLICATION=80131600
StackTraceString = “
at JetBrains.Util.ILoggerEx.LogMessage(ILogger this, LoggingLevel level, String message)
at JetBrains.VsIntegration.DocumentModel.DocumentToVsTextBufferMappingStorage.<>c__DisplayClass5_0.<.ctor>b__0()
at JetBrains.Lifetimes.LifetimeDefinition.Destruct()
at JetBrains.Lifetimes.LifetimeDefinition.Terminate()
at JetBrains.Application.Components.SingletonDescriptorBindings`1.Dispose()
at JetBrains.Application.Components.SingletonDescriptor`1.DisposeInternalResources()
at JetBrains.Application.Components.AsyncDescriptorBase.DoDisposeSafe(Object instance)
at JetBrains.Application.Components.AsyncDescriptorBase.Dispose()
at JetBrains.Application.Components.ComponentStorage.DisposeDescriptor(IComponentDescriptor descriptor)
at JetBrains.Application.Components.ComponentStorage.Terminate()
at JetBrains.Lifetimes.LifetimeDefinition.Destruct()
at JetBrains.Lifetimes.LifetimeDefinition.Terminate()
at JetBrains.Lifetimes.SequentialLifetimes.TrySetNewAndTerminateOld(LifetimeDefinition newLifetimeDefinition, Action`1 actionWithNewLifetime)
at JetBrains.DataFlow.IPropertyEx.<>c__DisplayClass36_0.<WhenTrue>b__0(PropertyChangedEventArgs`1 args)
at JetBrains.DataFlow.Signal`1.NotifySinks(TValue payload)
at JetBrains.DataFlow.Signal`1.Fire(TValue value, Object cookie)
at JetBrains.DataFlow.Property`1.FireChange(TValue old, TValue new, Object cookie)
at JetBrains.DataFlow.Property`1.SetValue(TValue value, Object cookie)
at JetBrains.DataFlow.IPropertySignalEx.<>c__DisplayClass1_0`1.<Advise_FallingFront>b__0(PropertyChangedEventArgs`1 args)
at JetBrains.DataFlow.Signal`1.NotifySinks(TValue payload)
at JetBrains.DataFlow.Signal`1.Fire(TValue value, Object cookie)
at JetBrains.DataFlow.Property`1.FireChange(TValue old, TValue new, Object cookie)
at JetBrains.DataFlow.Property`1.SetValue(TValue value, Object cookie)
at JetBrains.DataFlow.IPropertyEx.<>c__DisplayClass9_0`2.<FlowInto>b__0(PropertyChangedEventArgs`1 args)
at JetBrains.DataFlow.Signal`1.NotifySinks(TValue payload)
at JetBrains.DataFlow.Signal`1.Fire(TValue value, Object cookie)
at JetBrains.DataFlow.Property`1.FireChange(TValue old, TValue new, Object cookie)
at JetBrains.DataFlow.Property`1.SetValue(TValue value, Object cookie)
at JetBrains.Application.ComposeVerdictWithPriority.UpdateActiveTellers[TVerdict](Lifetime lifetimeComponent, List`1 tellers, IProperty`1 propComposite)
at JetBrains.DataFlow.IPropertySignalEx.<>c__DisplayClass10_0`1.<Advise_NoAcknowledgement>b__0(PropertyChangedEventArgs`1 args)
at JetBrains.DataFlow.Signal`1.NotifySinks(TValue payload)
at JetBrains.DataFlow.Signal`1.Fire(TValue value, Object cookie)
at JetBrains.DataFlow.Property`1.FireChange(TValue old, TValue new, Object cookie)
at JetBrains.DataFlow.Property`1.SetValue(TValue value, Object cookie)
at JetBrains.DataFlow.IPropertyEx.<>c__DisplayClass9_0`2.<FlowInto>b__0(PropertyChangedEventArgs`1 args)
at JetBrains.DataFlow.Signal`1.NotifySinks(TValue payload)
at JetBrains.DataFlow.Signal`1.Fire(TValue value, Object cookie)
at JetBrains.DataFlow.Property`1.FireChange(TValue old, TValue new, Object cookie)
at JetBrains.DataFlow.Property`1.SetValue(TValue value, Object cookie)
at JetBrains.Threading.ReentrancyGuard.Execute(String name, Action action)
at JetBrains.Threading.ReentrancyGuard.TryExecute(String name, Action action)
at JetBrains.Threading.ReentrancyGuardEx.ExecuteOrQueue(ReentrancyGuard thіs, Lifetime lifetime, String name, Action F, TaskPriority priority)
at JetBrains.Threading.ReentrancyGuardEx.<>c__DisplayClass4_0.<ExecuteOrQueueOrRunSync>b__0(LifetimeDefinition asyncLifetimeDefinition)
at JetBrains.Threading.JetDispatcherEx.<>c__DisplayClass1_0.<DefineAsyncActionLifetimeOrRunSync>b__0(LifetimeDefinition definition, Lifetime lifetime)
at JetBrains.Lifetimes.OuterLifetime.Define(OuterLifetime lifetime, String id, Action`2 atomicAction)
at JetBrains.Threading.JetDispatcherEx.DefineAsyncActionLifetimeOrRunSync(JetDispatcher dispatcher, OuterLifetime outerLifetime, Action`1 asyncAction, Action syncAction)
at JetBrains.Threading.ReentrancyGuardEx.ExecuteOrQueueOrRunSync(ReentrancyGuard thіs, Lifetime lifetime, String name, Action F, TaskPriority priority)
at JetBrains.Application.Extensions.DataFlowEx.<>c__DisplayClass14_0`1.<FlowIntoGuarded_NoReplay>b__0()
at JetBrains.DataFlow.Signal`1.NotifySinks(TValue payload)
at JetBrains.DataFlow.Signal`1.Fire(TValue value, Object cookie)
at JetBrains.DataFlow.Property`1.FireChange(TValue old, TValue new, Object cookie)
at JetBrains.DataFlow.Property`1.SetValue(TValue value, Object cookie)
at JetBrains.VsIntegration.Shell.VsNonZombiedProductCanBeStarted.<>c__DisplayClass3_0.<.ctor>b__2(VSSPROPID vsspropid, Object o)
at JetBrains.VsIntegration.Interop.Shim.VsShell.Shell.IVsShell.ShellPropertyChangesSink.Microsoft.VisualStudio.Shell.Interop.IVsShellPropertyEvents.OnShellPropertyChange(Int32 propid, Object var)

---------------------------
OK
---------------------------

 

0

Hello Angelina Elycheva,

Note: things appear to work fine in C++ - my issues are with C#

The symptoms for "not working" include (there are probably more):

  • the extension was there
  • the gutter was there
  • none of the static analysis and hints showed up in C#
  • Alt-PgDn doesn't do anything but I suspect it might if there were any analysis results to go to
  • manually running code inspection on the solution seems to only provide results in .json files.
  • ^r^r does the VisualStudio rename instead of the ReSharper one (The ReSharper keyboard scheme is set to Visual Studio and that scheme has been applied).
  • "Find Usages" does work
  • Alt-R does open the ReSharper menu.
  • Ctrl-Ctrl-Ctrl does bring up the ReSharper shortcut browser (when I don't run PowerToys "find my mouse")
  • Go to definition does not decompile methods in "Navigation to Sources"
  • xUnit tests are not discovered.

I tried uninstalling "ReSharper...in Visual Studio..." (there were 6 of them on my system even though I currently only have VS2022 installed - the others were for various ReSharper versions and for VS2019 and various VS2022 preview and RC).

I am also running StyleCop.Analyzers and that seems to work fine.

Extensions installed:

  • JavaScript project system
  • ReSharper 2021.3 EAP 7 (of course <grin/>
  • Live Share 2022
  • Markdown Editor
  • Microsoft Library Manger
  • ML.NET Model Builder
  • NuGetRecommender
  • Python - Profiling
  • SQL SErver Data Tools - Sql Editor
  • Test Adapter for Boost.Test
  • Test Adapter for Google Test
  • Visual Studio Intellicode
  • Visual Studio Rich Navigation
  • Web Live Preview
Edited by Michael Heyman
0

Hello Scorpoon,

Sorry missed that message. Thank you for clarification.

0

Hello Arman Ghazanchyan

This happens to be a known issue - https://youtrack.jetbrains.com/issue/RSRP-486348. We are working on the fix. The error indicates that some of ReSharper resources were not cleaned up normally and we had to clean them up on going to a suspended state. You may ignore this message box.

Thank you.

1

Hello @...

Could you please create a new support request so we can investigate the problem? Please start VS with the following command: ``devenv.exe /ReSharper.LogFile C:\log\resharper_log.txt /ReSharper.LogLevel Verbose``, reproduce the issue and attach resharper_log.txt to the support request.

Thank you in advance.

0

I uninstalled the VS 2022 Preview and installed the official VS 2022, then I installed ReSharper 2021.3.EAP7 for VS 2022, but it is not displayed under Extensions menu, do I need to do something in order to enable ReSharper in VS 2022?

0

Hello neualex

Please contact our support using "Submit a request" button and provide the following info:

  • all logs located in  %localappdata%\JetBrains\Shared\vAny\Installer;
  • start VS with the following command: devenv.exe /ReSharper.LogFile C:\log\resharper_log.txt /ReSharper.LogLevel Verbose, open any solution and send us resharper_log.txt.

Thank you.

0

I just got the ReSharper 2021.3 EAP8 to use with the release version of 2022 and it is not present in 2022. What can I do to fix this or send you to see what went wrong?

0

Please sign in to leave a comment.

Have more questions?

Submit a request