cashapp / sqldelight

SQLDelight - Generates typesafe Kotlin APIs from SQL
https://cashapp.github.io/sqldelight/
Apache License 2.0
6.14k stars 515 forks source link

SQLDelight plugin fails to "start" #5050

Open jbruchanov opened 6 months ago

jbruchanov commented 6 months ago

SQLDelight Version

2.0.1

IDE Version

IntelliJ IDEA 2023.3.3 (Ultimate Edition)

Dialect

SQLite

Describe the Bug

(There is no dialect related imo, just checked that to submit the issue).

Starting jIDEA fails to "init" SQLDelight plugin fails due to some issue in Bugsnag.

IntelliJ IDEA 2023.3.3 (Ultimate Edition) Build #IU-233.14015.106, built on January 25, 2024 Runtime version: 17.0.9+7-b1087.11 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. Windows 11.0 GC: G1 Young Generation, G1 Old Generation Memory: 8192M Cores: 32 Registry: debugger.new.tool.window.layout=true ide.experimental.ui=true Non-Bundled Plugins: com.drvector (1.2.1) com.intellij.nativeDebug (233.14015.106) com.jetbrains.packagesearch.intellij-plugin (233.11799.196) com.intellij.ml.llm (233.14015.147) kvision.project.wizard (0.8.0) org.jetbrains.compose.desktop.ide (1.5.12) ru.ztrap.plugin.idea.compose-color-preview (0.0.1) org.jetbrains.android (233.14015.106) androidx.compose.plugins.idea (233.13135.106) com.squareup.sqldelight (2.0.1) com.mistamek.drawablepreview.drawable-preview (1.1.6) Pythonid (233.14015.106) izhangzhihao.rainbow.brackets (2024.2.1) Kotlin: 233.14015.106-IJ

Stacktrace

com.intellij.diagnostic.PluginException: Cannot create extension (class=app.cash.sqldelight.intellij.SqlDelightErrorHandler) [Plugin: com.squareup.sqldelight]
    at com.intellij.serviceContainer.ComponentManagerImpl.createError(ComponentManagerImpl.kt:1471)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.doCreateInstance(XmlExtensionAdapter.kt:71)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.createInstance(XmlExtensionAdapter.kt:32)
    at com.intellij.openapi.extensions.impl.ExtensionPointImpl.processAdapter(ExtensionPointImpl.java:468)
    at com.intellij.openapi.extensions.impl.ExtensionPointImpl.processAdapters(ExtensionPointImpl.java:416)
    at com.intellij.openapi.extensions.impl.ExtensionPointImpl.getExtensionList(ExtensionPointImpl.java:249)
    at com.intellij.openapi.extensions.ExtensionPointName.getExtensionList(ExtensionPointName.kt:44)
    at com.intellij.diagnostic.IdeErrorsDialog$Companion.getSubmitter(IdeErrorsDialog.kt:1004)
    at com.intellij.diagnostic.IdeErrorsDialog$Companion.getSubmitter(IdeErrorsDialog.kt:997)
...

Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.LinkageError: loader constraint violation: when resolving method 'org.slf4j.ILoggerFactory org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()' the class loader com.intellij.ide.plugins.cl.PluginClassLoader @718825ee of the current class, org/slf4j/LoggerFactory, and the class loader com.intellij.ide.plugins.cl.PluginClassLoader @34f84a62 for the method's defining class, org/slf4j/impl/StaticLoggerBinder, have different Class objects for the type org/slf4j/ILoggerFactory used in the signature (org.slf4j.LoggerFactory is in unnamed module of loader com.intellij.ide.plugins.cl.PluginClassLoader @718825ee, parent loader 'bootstrap'; org.slf4j.impl.StaticLoggerBinder is in unnamed module of loader com.intellij.ide.plugins.cl.PluginClassLoader @34f84a62, parent loader 'bootstrap') [in thread "DefaultDispatcher-worker-28"]
    at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:423)
    at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:362)
    at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:388)
    at com.bugsnag.Bugsnag.<clinit>(Bugsnag.java:27)
    at app.cash.sqldelight.intellij.SqlDelightErrorHandler.<init>(SqlDelightErrorHandler.kt:32)
    at com.intellij.serviceContainer.ComponentManagerImpl.findConstructorAndInstantiateClass(ComponentManagerImpl.kt:1383)
    at com.intellij.serviceContainer.ComponentManagerImpl.doInstantiateClass(ComponentManagerImpl.kt:1392)
    at com.intellij.serviceContainer.ComponentManagerImpl.instantiateClass(ComponentManagerImpl.kt:1377)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.instantiateClass(XmlExtensionAdapter.kt:80)
    at com.intellij.openapi.extensions.impl.SimpleConstructorInjectionAdapter.instantiateClass(XmlExtensionAdapter.kt:100)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.doCreateInstance(XmlExtensionAdapter.kt:51)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.createInstance(XmlExtensionAdapter.kt:32)
    at com.intellij.openapi.extensions.impl.ExtensionPointImpl.processAdapter(ExtensionPointImpl.java:468)
    at com.intellij.openapi.extensions.impl.ExtensionPointImpl.processAdapters(ExtensionPointImpl.java:416)
    at com.intellij.openapi.extensions.impl.ExtensionPointImpl.getExtensionList(ExtensionPointImpl.java:249)
    at com.intellij.openapi.extensions.ExtensionPointName.getExtensionList(ExtensionPointName.kt:44)
    at com.intellij.diagnostic.IdeErrorsDialog$Companion.getSubmitter(IdeErrorsDialog.kt:1004)
    at com.intellij.diagnostic.IdeErrorsDialog$Companion.getSubmitter(IdeErrorsDialog.kt:997)
    at com.intellij.diagnostic.IdeErrorsDialog.getSubmitter(IdeErrorsDialog.kt)
    at com.intellij.diagnostic.DefaultIdeaErrorLogger.canHandle(DefaultIdeaErrorLogger.java:42)
    at com.intellij.diagnostic.DialogAppender.queueAppend(DialogAppender.java:83)
    at com.intellij.diagnostic.DialogAppender.publish(DialogAppender.java:58)
    at java.logging/java.util.logging.Logger.log(Logger.java:980)
    at java.logging/java.util.logging.Logger.doLog(Logger.java:1007)
    at java.logging/java.util.logging.Logger.log(Logger.java:1118)
    at com.intellij.idea.IdeaLogger.doLogError(IdeaLogger.java:169)
    at com.intellij.idea.IdeaLogger.error(IdeaLogger.java:145)
    at com.intellij.openapi.diagnostic.Logger.error(Logger.java:423)
    at com.intellij.openapi.application.impl.CoroutineExceptionHandlerImpl.handleException(CoroutineExceptionHandlerImpl.kt:34)
    at kotlinx.coroutines.internal.CoroutineExceptionHandlerImpl_commonKt.handleUncaughtCoroutineException(CoroutineExceptionHandlerImpl.common.kt:38)
    at kotlinx.coroutines.CoroutineExceptionHandlerKt.handleCoroutineException(CoroutineExceptionHandler.kt:32)
    at kotlinx.coroutines.StandaloneCoroutine.handleJobException(Builders.common.kt:194)
    at kotlinx.coroutines.JobSupport.finalizeFinishingState(JobSupport.kt:231)
    at kotlinx.coroutines.JobSupport.tryMakeCompletingSlowPath(JobSupport.kt:910)
    at kotlinx.coroutines.JobSupport.tryMakeCompleting(JobSupport.kt:867)
    at kotlinx.coroutines.JobSupport.makeCompletingOnce$kotlinx_coroutines_core(JobSupport.kt:832)
    at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:100)
    at kotlinx.coroutines.debug.internal.DebugProbesImpl$CoroutineOwner.resumeWith(DebugProbesImpl.kt:549)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
    at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
    at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
jbruchanov commented 6 months ago

reproducible in

Android Studio Iguana | 2023.2.1
Build #AI-232.10227.8.2321.11479570, built on February 21, 2024
Runtime version: 17.0.9+0--11185874 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Windows 11.0
GC: G1 Young Generation, G1 Old Generation
Memory: 16384M
Cores: 32
Non-Bundled Plugins:
    com.intellij.marketplace (232.10227.13)
    ru.ztrap.plugin.idea.compose-color-preview (0.0.1)
    org.jetbrains.compose.desktop.ide (1.6.0)
    izhangzhihao.rainbow.brackets (2023.3.7)
    com.mistamek.drawablepreview.drawable-preview (1.1.6)
    com.squareup.sqldelight (2.0.1)
    com.jetbrains.kmm (0.8.2(232)-20)
nicolasf commented 5 months ago

Also reproducible in:

Android Studio Iguana | 2023.2.1 Patch 1
Build #AI-232.10300.40.2321.11567975, built on March 13, 2024
Runtime version: 17.0.9+0-17.0.9b1087.7-11185874 aarch64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
macOS 14.4.1
GC: G1 Young Generation, G1 Old Generation
Memory: 4096M
Cores: 12
Metal Rendering is ON
Registry:
    ide.experimental.ui=true

Non-Bundled Plugins:
    com.github.gitofleonardo.simplesqlitebrowser (1.0.7)
    idea.plugin.protoeditor (232.9559.10)
    com.jetbrains.kmm (0.8.2(232)-20)
    com.squareup.sqldelight (2.0.1)
    org.jetbrains.compose.desktop.ide (1.6.1)
    com.suusan2go.kotlin-fill-class (1.0.23)
    ru.ztrap.plugin.idea.compose-color-preview (0.0.1)

Stack:

com.intellij.diagnostic.PluginException: Cannot create extension (class=app.cash.sqldelight.intellij.SqlDelightErrorHandler) [Plugin: com.squareup.sqldelight]
    at com.intellij.serviceContainer.ComponentManagerImpl.createError(ComponentManagerImpl.kt:1067)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.doCreateInstance(XmlExtensionAdapter.kt:69)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.createInstance(XmlExtensionAdapter.kt:30)
    at com.intellij.openapi.extensions.impl.ExtensionPointImpl.processAdapter(ExtensionPointImpl.java:474)
    at com.intellij.openapi.extensions.impl.ExtensionPointImpl.processAdapters(ExtensionPointImpl.java:422)
    at com.intellij.openapi.extensions.impl.ExtensionPointImpl.getExtensionList(ExtensionPointImpl.java:248)
    at com.intellij.openapi.extensions.ExtensionPointName.getExtensionList(ExtensionPointName.kt:43)
    at com.intellij.diagnostic.IdeErrorsDialog$Companion.getSubmitter(IdeErrorsDialog.kt:1005)
    at com.intellij.diagnostic.IdeErrorsDialog$Companion.getSubmitter(IdeErrorsDialog.kt:997)
    at com.intellij.diagnostic.IdeErrorsDialog.getSubmitter(IdeErrorsDialog.kt)
    at com.intellij.diagnostic.DefaultIdeaErrorLogger.canHandle(DefaultIdeaErrorLogger.java:46)
    at com.intellij.diagnostic.DialogAppender.appendToLoggers(DialogAppender.java:92)
    at com.intellij.diagnostic.DialogAppender.lambda$queueAppend$0(DialogAppender.java:76)
    at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
    at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    at java.desktop/java.awt.EventQueue$3.run(Unknown Source)
    at java.desktop/java.awt.EventQueue$3.run(Unknown Source)
    at java.base/java.security.AccessController.doPrivileged(Unknown Source)
    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
    at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
    at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:690)
    at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$10(IdeEventQueue.kt:593)
    at com.intellij.openapi.application.impl.ApplicationImpl.runWithoutImplicitRead(ApplicationImpl.java:1485)
    at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:593)
    at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:67)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:369)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.compute(IdeEventQueue.kt:368)
    at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:787)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:368)
    at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1.invoke(IdeEventQueue.kt:363)
    at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:997)
    at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:105)
    at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:997)
    at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$7(IdeEventQueue.kt:363)
    at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:861)
    at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:405)
    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Caused by: com.intellij.diagnostic.PluginException: Cannot create class app.cash.sqldelight.intellij.SqlDelightErrorHandler (classloader=PluginClassLoader(plugin=PluginDescriptor(name=SQLDelight, id=com.squareup.sqldelight, descriptorPath=plugin.xml, path=~/Library/Application Support/Google/AndroidStudio2023.2/plugins/SQLDelight, version=2.0.1, package=null, isBundled=false), packagePrefix=null, state=active))
    at com.intellij.serviceContainer.ComponentManagerImpl.doInstantiateClass(ComponentManagerImpl.kt:1003)
    at com.intellij.serviceContainer.ComponentManagerImpl.instantiateClass(ComponentManagerImpl.kt:954)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.instantiateClass(XmlExtensionAdapter.kt:78)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter$SimpleConstructorInjectionAdapter.instantiateClass(XmlExtensionAdapter.kt:89)
    at com.intellij.openapi.extensions.impl.XmlExtensionAdapter.doCreateInstance(XmlExtensionAdapter.kt:49)
    ... 40 more
Caused by: java.lang.LinkageError: loader constraint violation: when resolving method 'org.slf4j.ILoggerFactory org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()' the class loader com.intellij.ide.plugins.cl.PluginClassLoader @6c2cfb10 of the current class, org/slf4j/LoggerFactory, and the class loader com.intellij.util.lang.PathClassLoader @7a92922 for the method's defining class, org/slf4j/impl/StaticLoggerBinder, have different Class objects for the type org/slf4j/ILoggerFactory used in the signature (org.slf4j.LoggerFactory is in unnamed module of loader com.intellij.ide.plugins.cl.PluginClassLoader @6c2cfb10, parent loader 'bootstrap'; org.slf4j.impl.StaticLoggerBinder is in unnamed module of loader com.intellij.util.lang.PathClassLoader @7a92922)
    at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:423)
    at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:362)
    at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:388)
    at com.bugsnag.Bugsnag.<clinit>(Bugsnag.java:27)
    at app.cash.sqldelight.intellij.SqlDelightErrorHandler.<init>(SqlDelightErrorHandler.kt:32)
    at com.intellij.serviceContainer.ComponentManagerImpl.doInstantiateClass(ComponentManagerImpl.kt:962)
    ... 44 more