There are several issues so they will be listed below:
Breakpoints in generic classes are not hit
Static variables in generic classes are not evaluated
Attempting to hover over instance variables in a generic object results in this IDE Fatal Error:
Exception have null message
mono.debugger.InvalidFieldIdException
at consulo.dotnet.mono//mono.debugger.JDWPException.asUncheckedException(JDWPException.java:60)
at consulo.dotnet.mono//mono.debugger.FieldMirror.value(FieldMirror.java:53)
at consulo.dotnet.mono//consulo.dotnet.mono.debugger.proxy.MonoFieldProxy.getValue(MonoFieldProxy.java:60)
at consulo.csharp//consulo.csharp.ide.debugger.expressionEvaluator.FieldEvaluator.invoke(FieldEvaluator.java:48)
at consulo.csharp//consulo.csharp.ide.debugger.expressionEvaluator.FieldEvaluator.invoke(FieldEvaluator.java:32)
at consulo.csharp//consulo.csharp.ide.debugger.expressionEvaluator.FieldOrPropertyEvaluator.invokeFieldOrProperty(FieldOrPropertyEvaluator.java:160)
at consulo.csharp//consulo.csharp.ide.debugger.expressionEvaluator.FieldOrPropertyEvaluator.evaluate(FieldOrPropertyEvaluator.java:126)
at consulo.csharp//consulo.csharp.ide.debugger.CSharpEvaluateContext.evaluate(CSharpEvaluateContext.java:93)
at consulo.csharp//consulo.csharp.ide.debugger.CSharpDebuggerProvider.evaluate(CSharpDebuggerProvider.java:146)
at consulo.dotnet//consulo.dotnet.debugger.DotNetDebuggerEvaluator.evaluate(DotNetDebuggerEvaluator.java:101)
at com.intellij//com.intellij.xdebugger.impl.evaluate.quick.XValueHint.evaluateAndShowHint(XValueHint.java:165)
at com.intellij//com.intellij.xdebugger.impl.evaluate.quick.common.AbstractValueHint.invokeHint(AbstractValueHint.java:178)
at com.intellij//com.intellij.xdebugger.impl.evaluate.quick.common.ValueLookupManager.showHint(ValueLookupManager.java:170)
at com.intellij//com.intellij.xdebugger.impl.evaluate.quick.common.ValueLookupManager.lambda$requestHint$0(ValueLookupManager.java:123)
at com.intellij//com.intellij.util.concurrency.QueueProcessor.runSafely(QueueProcessor.java:238)
at com.intellij//com.intellij.util.Alarm$Request.runSafely(Alarm.java:351)
at com.intellij//com.intellij.util.Alarm$Request.run(Alarm.java:338)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at com.intellij//com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:229)
at consulo.platform.desktop//com.intellij.openapi.application.DesktopTransactionGuardImpl$2.run(DesktopTransactionGuardImpl.java:321)
at com.intellij//com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.doRun(LaterInvocator.java:455)
at com.intellij//com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:438)
at com.intellij//com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:422)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
at com.intellij//com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:793)
at com.intellij//com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:704)
at com.intellij//com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:394)
at com.intellij//com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:703)
at com.intellij//com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:393)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
However, evaluating the entire generic variable does work:
The example repo demonstrating the issue can be found here: https://github.com/TCROC/ConsuloBug-UnityDebuggerMissAndNull
There are several issues so they will be listed below:
However, evaluating the entire generic variable does work:
OS: Ubuntu 18.04 consulo.log Unity Version: 2019.4.14f1 Unity Consulo UPM Version: 2.4.0
About Info