cursive

Rei 2025-09-07T11:29:24.005559Z

Hello there. I'm not sure if this has been reported before, but I'm experiencing some issues with Cursive hard freezing the moment I start a REPL. I'm using Intellij 2025.1 and Cursive 2025.2-251 and Windows 11. This has happened to me a couple of times before, and it persisted even between Windows reinstallation, and seems to be affecting only Windows afaik. Are you aware of this issue, and if so, are there any ways to fix this issue?

Pedro Boschi 2025-09-09T21:00:44.424589Z

I am experiencing something similar... When I start the REPL it gets stuck in "Calculating classpath". My machine is an OpenSUSE Tumbleweed linux. In the IntelliJ log the most common exception I see when it happens is this one below:

2025-09-09 17:50:44,515 [ 470418]   INFO - STDOUT - Do not use URL connection as JarURLConnection
2025-09-09 17:50:44,515 [ 470418]   INFO - STDOUT - Do not use URL connection as JarURLConnection
2025-09-09 17:50:50,077 [ 475980]   INFO - STDERR - Downloading: org/bouncycastle/bcprov-jdk18on/maven-metadata.xml from pipo-mvn
2025-09-09 17:50:50,077 [ 475980]   INFO - STDERR - Downloading: org/bouncycastle/bcutil-jdk18on/maven-metadata.xml from pipo-mvn
2025-09-09 17:50:50,084 [ 475987]   INFO - STDERR - Exception in thread "async-dispatch-8" clojure.lang.ExceptionInfo: Cannot find resource cognitect/aws/endpoints.edn. {}
2025-09-09 17:50:50,084 [ 475987]   INFO - STDERR - 	at cognitect.aws.endpoint$read_endpoints_description.invokeStatic(endpoint.clj:18)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at cognitect.aws.endpoint$resolver.invokeStatic(endpoint.clj:21)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at cognitect.aws.endpoint$resolve_STAR_.invokeStatic(endpoint.clj:82)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at cognitect.aws.endpoint$resolve_STAR_.invoke(endpoint.clj:65)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.lang.AFn.applyToHelper(AFn.java:156)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.lang.AFn.applyTo(AFn.java:144)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.core$apply.invokeStatic(core.clj:667)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.core$memoize$fn__6971.doInvoke(core.clj:6424)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.lang.RestFn.invoke(RestFn.java:424)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at cognitect.aws.endpoint$default_endpoint_provider$reify__12021._fetch(endpoint.clj:94)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at cognitect.aws.endpoint$fetch.invokeStatic(endpoint.clj:102)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at cognitect.aws.client.impl$send_request$fn__12282$state_machine__8523__auto____12311$fn__12313.invoke(impl.clj:60)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at cognitect.aws.client.impl$send_request$fn__12282$state_machine__8523__auto____12311.invoke(impl.clj:60)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.core.async.impl.ioc_macros$run_state_machine.invokeStatic(ioc_macros.clj:58)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.core.async.impl.ioc_macros$run_state_machine_wrapped.invokeStatic(ioc_macros.clj:60)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.core.async.impl.ioc_macros$take_BANG_$fn__3500.invoke(ioc_macros.clj:69)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.core.async.impl.channels$appm$fn__3316.invoke(channels.clj:36)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.lang.AFn.run(AFn.java:22)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.core.async.impl.concurrent$counted_thread_factory$reify__3241$fn__3242.invoke(concurrent.clj:29)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at clojure.lang.AFn.run(AFn.java:22)
2025-09-09 17:50:50,085 [ 475988]   INFO - STDERR - 	at java.base/java.lang.Thread.run(Thread.java:1583)

Pedro Boschi 2025-09-09T21:03:00.877169Z

I've tried with both REPL configurations: "Run with deps" and also "Run with IntelliJ Classpath", and I see the same behavior on both (I like to always use the "run with deps" and provide an alias)

cfleming 2025-09-09T21:05:40.350769Z

When you say it gets stuck, do you mean it freezes the UI?

Pedro Boschi 2025-09-09T21:06:56.209439Z

It is like this for about 10 minutes now... and the REPL does not start....

Pedro Boschi 2025-09-09T21:07:23.950409Z

I've already tried removing the .cpcache dir, invalidating caches, etc.... but nothing changed

Pedro Boschi 2025-09-09T21:08:05.311289Z

It does not freeze the UI... I can continue editing the files. But no REPL

cfleming 2025-09-09T21:09:04.106279Z

What that looks like is that there's a problem starting the REPL (which is that exception) and for some reason Cursive doesn't catch it.

Pedro Boschi 2025-09-09T21:09:09.088729Z

If I start the REPL from the command line in a shell, using the clojure -A:my-alias it works as expected... but not in the IDE

cfleming 2025-09-09T21:09:47.801239Z

Is this project an open one I could look at?

Pedro Boschi 2025-09-09T21:10:18.895289Z

Unfortunately it is not an open sourced project... sad

cfleming 2025-09-09T21:13:26.582279Z

Which version of Cognitect AWS are you on? Looks like this was fixed in 0.8.735: https://github.com/cognitect-labs/aws-api/issues/265. I'm not sure I'll be able to reproduce since it seems like the problem is sporadic, but upgrading might fix your problem, at least.

Pedro Boschi 2025-09-09T21:16:35.050969Z

I do not use this lib, at least not directly, and it does not seem to be a lib that is transitively resolved in my classpath as well (does not show in clojure -X:deps tree )... that' s why I thought it might have something to do with the Cursive plugin

cfleming 2025-09-09T21:23:32.695349Z

No, Cursive doesn't use AWS at all, it must be coming from the project somehow.

cfleming 2025-09-09T21:30:25.821669Z

Just checking, this also happens when using Run with IntelliJ Classpath? With the same symptoms?

Pedro Boschi 2025-09-09T23:05:46.217529Z

The UI symptoms are the same, but with Run with IntelliJ Classpath I do not see the exception in idea.log

cfleming 2025-09-09T23:10:41.402019Z

So it still hangs at "Calculating classpath"?

Pedro Boschi 2025-09-09T23:14:21.454219Z

Yes. But as you mentioned, sometimes it gets stuck, whilst others it simply works... so I keep restarting IntelliJ until it works. Could not identify a pattern.

cfleming 2025-09-10T00:29:05.475289Z

> with Run with IntelliJ Classpath I do not see the exception in idea.log Ok, I was wondering about that, because I couldn't come up with any plausible way that that exception could be produced with that configuration. So perhaps the exception is a red herring, and is not actually the problem. Do any of your co-workers use Cursive? Do they see this problem?

cfleming 2025-09-07T19:33:20.536829Z

I'm not, no. Are you seeing any auto-generated thread dumps? https://intellij-support.jetbrains.com/hc/en-us/articles/206544899-How-to-get-a-thread-dump-when-IDE-hangs-and-doesn-t-respond. If so, could you send them to me? Either here (by DM if you'd rather) or to <mailto:cursive@cursive-ide.com|cursive@cursive-ide.com>.

Pedro Boschi 2025-09-10T14:48:07.599069Z

My co-workers are still using an older version of IntelliJ and Cursive, and do not see the problem. My build:

IntelliJ IDEA 2025.2.1 (Community Edition)
Build #IC-252.25557.131, built on August 27, 2025
Source revision: ee1e6cb62e111
Runtime version: 21.0.8+9-b1038.68 amd64 (JCEF 122.1.9)
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Toolkit: sun.awt.X11.XToolkit
Linux 6.16.3-1-default
openSUSE Tumbleweed; glibc: 2.42
GC: G1 Young Generation, G1 Concurrent GC, G1 Old Generation
Memory: 6000M
Cores: 8
Registry:
  ide.experimental.ui=true
  llm.show.ai.promotion.window.on.start=false
  terminal.new.ui=true
Non-Bundled Plugins:
  org.jetbrains.completion.full.line (252.25557.131)
  com.intellij.notebooks.core (252.25557.135)
  com.github.deeepamin.gitlabciaid (1.13.1)
  dev.meanmail.plugin.nginx-intellij-plugin (2025.19)
  org.editorconfig.editorconfigjetbrains (252.25557.131)
  com.intellij.properties (252.25557.135)
  org.intellij.plugins.hcl )
  org.toml.lang (252.25557.135)
  name.kropp.intellij.makefile )
  intellij.jupyter (252.25557.135)
  Docker (252.25557.130)
  PlantUML integration (7.13.0-IJ2023.2)
  Subversion (252.25557.175)
  org.jetbrains.security.package-checker (252.25557.135)
  net.seesharpsoft.intellij.plugins.csv (4.1.0)
  net.sf.opk.avro-schema-support (243.0.0)
  org.jetbrains.idea.maven (252.25557.131)
  com.cursiveclojure.cursive (2025.2.1-eap2-252)
  com.github.copilot (1.5.56-243)
Kotlin: 252.25557.131-IJ
Current Desktop: KDE

raspasov 2025-09-07T12:32:20.218619Z

Any way to tell Cursive to start a REPL with the cljs option enabled?

raspasov 2025-09-07T12:32:52.674679Z

Or alternatively, if there's a keyboard shortcut to switch between the two, that can work as well. I couldn't find one.

raspasov 2025-09-07T12:33:57.265689Z

I think it used to be remembered once it was switched to cljs, but I'm not 100% sure.

caleb.macdonaldblack 2025-09-07T12:57:03.321699Z

It used to do this, but not anymore