Skip to content

[BUG] NPE from PyCharm #630

Description

@SebaM

Describe the bug
When I starting my PyCharm I gets notification about NPE.

My RobotCode plugin version is 2.5.1.
PyCharm 2026.1.2

Steps To Reproduce
Steps to reproduce the behavior:

  1. Just starting my IDE
  2. I gets notification about NPE, logs attached below.

If possible add some example source code like:

[tool.robocop.lint]
configure = [
    "empty-lines-between-sections.empty_lines=2",
    "empty-lines-between-keywords.empty_lines=2",
    "empty-lines-between-test-cases.empty_lines=2",

    "too-many-calls-in-keyword.max_calls=25",
    "too-many-calls-in-test-case.max_calls=25",

    "too-long-test-case.max_len=50",
    "line-too-long.line_length=220",
    "too-many-arguments.max_args=15",

    "not-capitalized-test-case-title.enabled=True",

    "bdd-without-keywords.enabled=True",

    "unused-variable.enabled=True",
    "unused-keyword.enabled=True",
    "duplicated-keyword.enabled=True",

    "trailing-whitespace.enabled=True",

    "prediction-depth=clairvoyant"  # options: "conservative", "optimistic", "clairvoyant"
]

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots/ Videos
If applicable, add screenshots or videos to help explain your problem.

Logs
Copy the messages from VSCode "Output" view for RobotCode and RobotCode Language Server for the specific folder/workspace.

java.lang.NullPointerException
	at dev.robotcode.robotcode4ij.lsp.RobotCodeLanguageServer.stop(RobotCodeLanguageServer.kt:55)
	at com.redhat.devtools.lsp4ij.LanguageServerWrapper.shutdownAll(LanguageServerWrapper.java:1704)
	at com.redhat.devtools.lsp4ij.LanguageServerWrapper.stop(LanguageServerWrapper.java:1641)
	at com.redhat.devtools.lsp4ij.LanguageServerWrapper.stop(LanguageServerWrapper.java:1611)
	at com.redhat.devtools.lsp4ij.LanguageServerWrapper.stop(LanguageServerWrapper.java:1604)
	at com.redhat.devtools.lsp4ij.LanguageServerWrapper.stopAndRefreshEditorFeature(LanguageServerWrapper.java:272)
	at com.redhat.devtools.lsp4ij.LanguageServerWrapper.dispose(LanguageServerWrapper.java:1748)
	at com.redhat.devtools.lsp4ij.LanguageServerWrapper.dispose(LanguageServerWrapper.java:1740)
	at com.redhat.devtools.lsp4ij.LanguageServiceAccessor.lambda$disposeAllServers$19(LanguageServiceAccessor.java:626)
	at java.base/java.lang.Iterable.forEach(Iterable.java:75)
	at com.redhat.devtools.lsp4ij.LanguageServiceAccessor.disposeAllServers(LanguageServiceAccessor.java:624)
	at com.redhat.devtools.lsp4ij.LanguageServiceAccessor.projectClosing(LanguageServiceAccessor.java:439)
	at com.redhat.devtools.lsp4ij.ConnectDocumentToLanguageServerSetupParticipant.projectClosing(ConnectDocumentToLanguageServerSetupParticipant.java:53)
	at com.intellij.util.messages.impl.MessageBusImplKt.invokeMethod(MessageBusImpl.kt:831)
	at com.intellij.util.messages.impl.MessageBusImplKt.invokeListener(MessageBusImpl.kt:771)
	at com.intellij.util.messages.impl.MessageBusImplKt.executeOrAddToQueue(MessageBusImpl.kt:596)
	at com.intellij.util.messages.impl.ToDirectChildrenMessagePublisher.publish$intellij_platform_core(CompositeMessageBus.kt:156)
	at com.intellij.util.messages.impl.MessagePublisher.invoke(MessageBusImpl.kt:544)
	at jdk.proxy2/jdk.proxy2.$Proxy84.projectClosing(Unknown Source)
	at com.intellij.openapi.project.impl.ProjectManagerImplKt.fireProjectClosing(ProjectManagerImpl.kt:1281)
	at com.intellij.openapi.project.impl.ProjectManagerImplKt.access$fireProjectClosing(ProjectManagerImpl.kt:1)
	at com.intellij.openapi.project.impl.ProjectManagerImpl.closeProject(ProjectManagerImpl.kt:452)
	at com.intellij.openapi.project.impl.ProjectManagerImpl.closeProject$default(ProjectManagerImpl.kt:386)
	at com.intellij.openapi.project.impl.ProjectManagerImpl$closeAndDisposeKeepingFrame$2.invokeSuspend$lambda$0(ProjectManagerImpl.kt:1197)
	at com.intellij.openapi.application.CoroutinesKt.writeIntentReadAction$lambda$0(coroutines.kt:332)
	at com.intellij.openapi.application.impl.AppImplKt$rethrowCheckedExceptions$2.invoke(appImpl.kt:126)
	at com.intellij.platform.locking.impl.NestedLocksThreadingSupport.runWriteIntentReadAction(NestedLocksThreadingSupport.kt:705)
	at com.intellij.openapi.application.impl.ApplicationImpl.runWriteIntentReadAction(ApplicationImpl.java:1214)
	at com.intellij.openapi.application.CoroutinesKt.writeIntentReadAction(coroutines.kt:332)
	at com.intellij.openapi.project.impl.ProjectManagerImpl$closeAndDisposeKeepingFrame$2.invokeSuspend(ProjectManagerImpl.kt:1195)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:34)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
	at com.intellij.openapi.application.impl.DispatchedRunnable.run(DispatchedRunnable.kt:42)
	at com.intellij.openapi.application.TransactionGuardImpl.runWithWritingAllowed(TransactionGuardImpl.java:236)
	at com.intellij.openapi.application.TransactionGuardImpl.access$100(TransactionGuardImpl.java:22)
	at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:218)
	at com.intellij.openapi.application.impl.NonBlockingFlushQueue.runNextEvent$lambda$1$1$0(NonBlockingFlushQueue.kt:334)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:928)
	at com.intellij.openapi.application.impl.NonBlockingFlushQueue.runNextEvent$lambda$1$1(NonBlockingFlushQueue.kt:333)
	at com.intellij.concurrency.ThreadContext.resetThreadContext(threadContext.kt:294)
	at com.intellij.openapi.application.impl.NonBlockingFlushQueue.runNextEvent$lambda$1(NonBlockingFlushQueue.kt:330)
	at com.intellij.platform.locking.impl.NestedLocksThreadingSupport.tryRunWriteIntentReadAction(NestedLocksThreadingSupport.kt:747)
	at com.intellij.openapi.application.impl.NonBlockingFlushQueue.runNextEvent(NonBlockingFlushQueue.kt:326)
	at com.intellij.openapi.application.impl.NonBlockingFlushQueue.flushNow(NonBlockingFlushQueue.kt:305)
	at com.intellij.openapi.application.impl.NonBlockingFlushQueue.FLUSH_NOW$lambda$0(NonBlockingFlushQueue.kt:167)
	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:323)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:732)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:711)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:721)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:574)
	at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$0$0$0(IdeEventQueue.kt:378)
	at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$0(IdeEventQueue.kt:1111)
	at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:106)
	at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1111)
	at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$0(IdeEventQueue.kt:376)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:416)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:207)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:92)

Additional context
Add any other context about the problem here.

AI / tooling disclosure
If this report was drafted with help from AI tools or automated agents, please mention which tool(s) you used and confirm you reviewed the content. Trivial grammar/autocomplete help does not need to be disclosed. See AI_POLICY.md.

Desktop (please complete the following information):

  • PyCharm 2026.1.2
  • RobotCode Version 2.5.1.
  • OS: MacOS
  • Python Version 3.13
  • RobotFramework Version 7.4.2
  • Additional tools like robocop, robocop has been removed from IDE

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions