[DevExpress Support Team: CLONED FROM T699296: Visual Studio Extremely slow after DevEx install]
I downloaded and installed CodeRush 18.2.4.18346. The problem I am having is after correcting a misspelled word in a comments section. I either get a "Please wait for an editor command to finish…" message or a "Committing Line" message. Each message takes about 8 seconds to complete.
I did get a " 'SpellCheckerCodeFixProvider' encountered an error and has been disabled. " error. I copied the Stack Trace:
----------
System.AggregateException : One or more errors occurred. ---> Object reference not set to an instance of an object.
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout,CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.Editor.Implementation.Suggestions.SuggestedAction.InvokeWorker(Func`1 getFromDocument,IProgressTracker progressTracker,CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.Editor.Implementation.Suggestions.SuggestedAction.<>c__DisplayClass18_0.<InvokeCore>b__0()
at Microsoft.CodeAnalysis.Extensions.IExtensionManagerExtensions.PerformAction(IExtensionManager extensionManager,Object extension,Action action)
---> (Inner Exception #0) System.NullReferenceException : Object reference not set to an instance of an object.
at DevExpress.Internal.WeakEventHandlerBase`1.Invoke(Invoker invoker)
at DevExpress.Internal.WeakEventHandlerStrategy`2.Raise(Object sender,TArgs args)
at DevExpress.XtraSpellChecker.SpellCheckerCustomDictionary.RaiseWordAddedEvent(String word)
at DevExpress.XtraSpellChecker.SpellCheckerCustomDictionary.OnWordAdded(String word)
at DevExpress.XtraSpellChecker.SpellCheckerCustomDictionary.AddWord(String word)
at DevExpress.CodeRush.VSFeatures.SpellChecker.SpellCheckerFactory.AddToDictionary(String word)
at DevExpress.CodeRush.VSFeatures.SpellChecker.SpellItemChecker.AddToDictionary(String word)
at DevExpress.CodeAnalysis.VisualBasic.Diagnostics.SpellChecker.SpellCheckerCodeFixProvider.AddToDictionaryOperation.Apply(Workspace workspace,CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.CodeActions.CodeActionOperation.TryApply(Workspace workspace,IProgressTracker progressTracker,CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.Editor.Implementation.CodeActions.CodeActionEditHandlerService.ProcessOperations(Workspace workspace,ImmutableArray`1 operations,IProgressTracker progressTracker,CancellationToken cancellationToken)
at async Microsoft.CodeAnalysis.Editor.Implementation.CodeActions.CodeActionEditHandlerService.ApplyAsync(<Unknown Parameters>)<---
---------
Hello,
Currently, we not able to reproduce this issue locally, however, we have made several changes in the spell checker code.
Would you please try the following daily build and see if this issue is still reproducible: DevExpress.CodeRush.Roslyn-18.2.5.18354.vsix
CodeRush ver 18.2.4.18346
Only quick setting enabled:
Clipboard History
Spell checker
Templates
Sometimes spell check does not show errors until first edit is made, but could not get this to repeat every time
AboutBox.vb
Version 5
Version 5.0.2.x
Version 5.0.2.2
PrintXuc.vb
Private Function GetManager()
Dim bsvc
Add to dictionary: bsvc
'SpellCheckedCodrFixProvider' encountered an error and has been disabled.
System.AggregateException : One or more errors occurred. ---> Object reference not set to an instance of an object.
at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout,CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.Editor.Implementation.Suggestions.SuggestedAction.InvokeWorker(Func`1 getFromDocument,IProgressTracker progressTracker,CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.Editor.Implementation.Suggestions.SuggestedAction.<>c__DisplayClass18_0.<InvokeCore>b__0()
at Microsoft.CodeAnalysis.Extensions.IExtensionManagerExtensions.PerformAction(IExtensionManager extensionManager,Object extension,Action action)
---> (Inner Exception #0) System.NullReferenceException : Object reference not set to an instance of an object.
at DevExpress.Internal.WeakEventHandlerBase`1.Invoke(Invoker invoker)
at DevExpress.Internal.WeakEventHandlerStrategy`2.Raise(Object sender,TArgs args)
at DevExpress.XtraSpellChecker.SpellCheckerCustomDictionary.RaiseWordAddedEvent(String word)
at DevExpress.XtraSpellChecker.SpellCheckerCustomDictionary.OnWordAdded(String word)
at DevExpress.XtraSpellChecker.SpellCheckerCustomDictionary.AddWord(String word)
at DevExpress.CodeRush.VSFeatures.SpellChecker.SpellCheckerFactory.AddToDictionary(String word)
at DevExpress.CodeRush.VSFeatures.SpellChecker.SpellItemChecker.AddToDictionary(String word)
at DevExpress.CodeAnalysis.VisualBasic.Diagnostics.SpellChecker.SpellCheckerCodeFixProvider.AddToDictionaryOperation.Apply(Workspace workspace,CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.CodeActions.CodeActionOperation.TryApply(Workspace workspace,IProgressTracker progressTracker,CancellationToken cancellationToken)
at Microsoft.CodeAnalysis.Editor.Implementation.CodeActions.CodeActionEditHandlerService.ProcessOperations(Workspace workspace,ImmutableArray`1 operations,IProgressTracker progressTracker,CancellationToken cancellationToken)
at async Microsoft.CodeAnalysis.Editor.Implementation.CodeActions.CodeActionEditHandlerService.ApplyAsync(<Unknown Parameters>)<---
Crashed repeated multiple times.
CodeRush ver 18.2.5.18354
Only quick settings enabled:
Clipboard History
Spell checker
Templates
Sometimes spell check does not show errors until first edit is made, but could not get this to repeat every time
Added "bsvc" to dictionary without crash
Used Notepad++ to deleted "bsvc" from custom dictionary to re-test.
On second test, was able to add "bsvc" without crash, but "bsvc" was still marked a misspelled.
Moved mouse to "bsvc" in code, and got CodeRush prompt for misspelled word.
Clicked on drop down arrow to get list of correctly spelled words, and "bsvc" was at the top of the list.
"Add to dictionary" is not in the list.
Looked at the contents of Custom.dic, and "bsvc" not in list.
3rd time adding "bsvc" to dictionary everything worked.
Fourth time got a repeat of the second test.
Fourth test also had spell check not show errors until first edit is made. I don't know if the "not showing until edit is made" is related to "Add to dictionary" not working.
5th time adding "bsvc" to dictionary everything worked, and spell check showed errors BEFORE i made any edits.
I am including the AboutBox form, and my custom dictionary AFTER I deleted "bsvc"
Eric,
Thank you for additional information. I was able to reproduce this issue on my machine.
Please give us some time to research and fix this issue.