Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IDE error when creating new project #19

Closed
ellipticview opened this issue Oct 13, 2024 · 2 comments
Closed

IDE error when creating new project #19

ellipticview opened this issue Oct 13, 2024 · 2 comments
Assignees
Labels
bug Something isn't working

Comments

@ellipticview
Copy link

ellipticview commented Oct 13, 2024

What happened?

Environment: MacOS, ARM

  • Updated Pycharm to 2024.2.3
  • Installed uv
  • Installed this plugin
  • Restarted Pycharm
  • Created a new project
  • Got this error message (see 2 stack traces below)
  • When then creating the first .py file, the following error message appears: "No Python interpreter configured for the project". The interpreter in .venv/bin/python is displayed as invalid.

Steps to reproduce

The steps above produced this error. When subsequently creating a new project, the error also appears.

Relevant log output or stack trace

com.intellij.openapi.diagnostic.RuntimeExceptionWithAttachments: Access is allowed from Event Dispatch Thread (EDT) only; see https://jb.gg/ij-platform-threading for details
Current thread: Thread[#58,ApplicationImpl pooled thread 1,4,main] 1469384028 (EventQueue.isDispatchThread()=false)
SystemEventQueueThread: Thread[#49,AWT-EventQueue-0,6,main] 2061644063
	at com.intellij.util.concurrency.ThreadingAssertions.createThreadAccessException(ThreadingAssertions.java:177)
	at com.intellij.util.concurrency.ThreadingAssertions.throwThreadAccessException(ThreadingAssertions.java:172)
	at com.intellij.util.concurrency.ThreadingAssertions.assertEventDispatchThread(ThreadingAssertions.java:63)
	at com.intellij.ide.impl.DataManagerImpl.getDataContext(DataManagerImpl.java:287)
	at com.intellij.ide.impl.DataManagerImpl.getDataContext(DataManagerImpl.java:322)
	at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.<init>(DialogWrapperPeerImpl.java:96)
	at com.intellij.openapi.ui.impl.DialogWrapperPeerFactoryImpl.createPeer(DialogWrapperPeerFactoryImpl.java:21)
	at com.jetbrains.rdserver.ui.dialogs.BackendDialogWrapperPeerFactory.createPeer(BackendDialogWrapperPeerFactory.kt:39)
	at com.intellij.openapi.ui.DialogWrapper.createPeer(DialogWrapper.java:884)
	at com.intellij.openapi.ui.DialogWrapper.<init>(DialogWrapper.java:238)
	at com.intellij.ui.messages.AlertDialog.<init>(AlertMessagesManager.kt:103)
	at com.intellij.ui.messages.AlertMessagesManager.showMessageDialog(AlertMessagesManager.kt:67)
	at com.intellij.ui.messages.MessagesServiceImpl.showMessageDialog(MessagesServiceImpl.java:54)
	at com.jetbrains.rdserver.ui.BackendMessagesService.showMessageDialog(BackendMessagesService.kt:33)
	at com.intellij.openapi.ui.Messages.showDialog(Messages.java:202)
	at com.intellij.openapi.ui.Messages.showDialog(Messages.java:163)
	at com.intellij.openapi.ui.Messages.showErrorDialog(Messages.java:615)
	at insyncwithfoo.ryecharm.MessagesKt.somethingIsWrong(Messages.kt:18)
	at insyncwithfoo.ryecharm.MessagesKt.somethingIsWrong(Messages.kt:22)
	at insyncwithfoo.ryecharm.MessagesKt.somethingIsWrong$default(Messages.kt:21)
	at insyncwithfoo.ryecharm.uv.generator.VenvCreator.createVenv(VenvCreator.kt:129)
	at insyncwithfoo.ryecharm.uv.generator.VenvCreator.createVenvSynchronously$lambda$2(VenvCreator.kt:113)
	at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:328)
	at com.intellij.openapi.progress.impl.CoreProgressManager.startTask(CoreProgressManager.java:477)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.startTask(ProgressManagerImpl.java:133)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcessWithProgressSynchronously$9(CoreProgressManager.java:567)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$new$0(ProgressRunner.java:85)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:249)
	at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:98)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:221)
	at com.intellij.platform.diagnostic.telemetry.helpers.TraceKt.use(trace.kt:49)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:220)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:660)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:735)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:691)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:659)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:79)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:202)
	at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:98)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$5(ProgressRunner.java:249)
	at com.intellij.openapi.progress.impl.ProgressRunner$ProgressRunnable.run(ProgressRunner.java:501)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$launchTask$18(ProgressRunner.java:466)
	at com.intellij.util.concurrency.ChildContext$runAsCoroutine$1.invoke(propagation.kt:92)
	at com.intellij.util.concurrency.ChildContext$runAsCoroutine$1.invoke(propagation.kt:92)
	at com.intellij.util.concurrency.ChildContext.runAsCoroutine(propagation.kt:97)
	at com.intellij.util.concurrency.ChildContext.runAsCoroutine(propagation.kt:92)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$launchTask$19(ProgressRunner.java:464)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:735)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:732)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:732)
	at java.base/java.lang.Thread.run(Thread.java:1583)


kotlin.UninitializedPropertyAccessException: lateinit property venvDirectoryName has not been initialized
	at insyncwithfoo.ryecharm.uv.generator.VenvCreator.getVenvRoot(VenvCreator.kt:50)
	at insyncwithfoo.ryecharm.uv.generator.VenvCreator.findNewlyCreatedInterpreter(VenvCreator.kt:93)
	at insyncwithfoo.ryecharm.uv.generator.VenvCreator.createAndSetUpSdk(VenvCreator.kt:81)
	at insyncwithfoo.ryecharm.uv.generator.VenvCreator.createSdk(VenvCreator.kt:56)
	at insyncwithfoo.ryecharm.uv.generator.UVProjectSettingsStep.getSdk$lambda$3(UVProjectSettingsStep.kt:51)
	at com.jetbrains.python.sdk.PyLazySdk.create(PyLazySdk.kt:23)
	at com.jetbrains.python.newProject.PythonProjectGenerator.generateProject(PythonProjectGenerator.java:188)
	at com.jetbrains.python.newProject.PythonProjectGenerator.generateProject(PythonProjectGenerator.java:83)
	at com.intellij.ide.util.projectWizard.AbstractNewProjectStep.doGenerateProject(AbstractNewProjectStep.java:258)
	at com.intellij.ide.util.projectWizard.AbstractNewProjectStep.doGenerateProject(AbstractNewProjectStep.java:193)
	at insyncwithfoo.ryecharm.uv.generator.GenerateProjectCallbackKt.generateProject(GenerateProjectCallback.kt:38)
	at insyncwithfoo.ryecharm.uv.generator.GenerateProjectCallbackKt.access$generateProject(GenerateProjectCallback.kt:1)
	at insyncwithfoo.ryecharm.uv.generator.GenerateProjectCallback.consume(GenerateProjectCallback.kt:96)
	at com.intellij.ide.util.projectWizard.ProjectSettingsStepBase$1.actionPerformed(ProjectSettingsStepBase.java:151)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972)
	at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2314)
	at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:407)
	at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
	at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6665)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3394)
	at java.desktop/java.awt.Component.processEvent(Component.java:6430)
	at java.desktop/java.awt.Container.processEvent(Container.java:2266)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5035)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4860)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4963)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4577)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4518)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2810)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4860)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:783)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:728)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:98)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:755)
	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:753)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:752)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.kt:696)
	at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.kt:635)
	at com.intellij.ide.IdeEventQueue._dispatchEvent$lambda$14(IdeEventQueue.kt:581)
	at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:84)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.kt:581)
	at com.intellij.ide.IdeEventQueue.access$_dispatchEvent(IdeEventQueue.kt:73)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1$1.compute(IdeEventQueue.kt:357)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1$1.compute(IdeEventQueue.kt:356)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:843)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.invoke(IdeEventQueue.kt:356)
	at com.intellij.ide.IdeEventQueue$dispatchEvent$processEventRunnable$1$1$1.invoke(IdeEventQueue.kt:351)
	at com.intellij.ide.IdeEventQueueKt$performActivity$runnableWithWIL$1.invoke$lambda$0(IdeEventQueue.kt:1035)
	at com.intellij.openapi.application.WriteIntentReadAction.lambda$run$0(WriteIntentReadAction.java:24)
	at com.intellij.openapi.application.impl.AnyThreadWriteThreadingSupport.runWriteIntentReadAction(AnyThreadWriteThreadingSupport.kt:84)
	at com.intellij.openapi.application.impl.ApplicationImpl.runWriteIntentReadAction(ApplicationImpl.java:910)
	at com.intellij.openapi.application.WriteIntentReadAction.compute(WriteIntentReadAction.java:55)
	at com.intellij.openapi.application.WriteIntentReadAction.run(WriteIntentReadAction.java:23)
	at com.intellij.ide.IdeEventQueueKt$performActivity$runnableWithWIL$1.invoke(IdeEventQueue.kt:1035)
	at com.intellij.ide.IdeEventQueueKt$performActivity$runnableWithWIL$1.invoke(IdeEventQueue.kt:1035)
	at com.intellij.ide.IdeEventQueueKt.performActivity$lambda$1(IdeEventQueue.kt:1036)
	at com.intellij.openapi.application.TransactionGuardImpl.performActivity(TransactionGuardImpl.java:114)
	at com.intellij.ide.IdeEventQueueKt.performActivity(IdeEventQueue.kt:1036)
	at com.intellij.ide.IdeEventQueue.dispatchEvent$lambda$10(IdeEventQueue.kt:351)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.kt:397)
	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)

Operating system

macOS

@InSyncWithFoo
Copy link
Owner

InSyncWithFoo commented Oct 13, 2024

The stacktraces suggest that this call resulted in newVenvName being null:

when (val newVenvName = extractNewVenvName(output)) {
//                      ^^^^^^^^^^^^^^^^^^^^^^^^^^
    null -> somethingIsWrong(message("messages.uvReportedError.body"))
    else -> venvDirectoryName = newVenvName
}

The culprit is probably this change, which first appeared in uv v0.4.13. This is admittedly a bug in RyeCharm, since v0.1.0-alpha-3 is supposed to support uv 0.4.14.

A fix is trivial, but it won't be released any time soon due to some upstream problems, so you will have to install the build manually (see this section).

Also note that the project generator is no longer recommended as of PyCharm 2024.3 and will soon be removed. See #12 for more information.

@ellipticview
Copy link
Author

Thanks for the rapid response!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants