cursive

cfleming 2025-07-29T03:07:13.143589Z

Cursive 2025.2-eap5 is out. It's a bugfix release, fixing a concurrency problem in the clj-kondo initialisation, and a problem with the exception reporting. clj-kondo now also now uses the public stable version and is fast! https://cursive-ide.com/blog/cursive-2025.2-eap5.html

🎉 3
mike_ananev 2025-08-01T17:17:09.412199Z

@cfleming Cursive 2025.2-eap4 is working on 2024.3.5, but Cursive 2025.2-eap5 doesn't work. What has changed? What should I enable to make code inspections? If I downgrade to Cursive 2025.2-eap4 then everything is working as expected without any configuration. My clj-kondo version is v2025.07.26

cfleming 2025-08-01T20:49:06.248529Z

@mike1452 Can you try the steps from https://clojurians.slack.com/archives/C0744GXCJ/p1753909766656449?thread_ts=1753758433.143589&cid=C0744GXCJ above, and see what you get in your log?

mike_ananev 2025-08-01T22:07:23.427099Z

@cfleming done! see DM for log file.

mike_ananev 2025-08-01T22:12:56.910199Z

btw, what is correct config here? I show you config which is set by default.

mike_ananev 2025-08-01T22:13:35.542229Z

Should I set severity level to error or warning here?

cfleming 2025-08-02T00:23:08.578079Z

@mike1452 That setting is fine, the settings are a little weird here because this doesn't work in the same way as IntelliJ's built in inspections.

cfleming 2025-08-02T00:24:28.025199Z

In your case, it looks like an exception:

2025-08-02 01:02:38,336 [   7216] SEVERE - #c.i.o.a.i.CoroutineExceptionHandlerImpl - Unhandled exception in [ComponentManager(ProjectImpl@816985997), com.intellij.codeWithMe.ClientIdContextElementPrecursor@49b1eb25, CoroutineName(cursive.kondo.KondoAnnotatorCoroutineScopeProvider), Dispatchers.Default]
java.lang.NoClassDefFoundError: kotlin/coroutines/jvm/internal/SpillingKt
	at cursive.kondo.KondoKt.kondoShim(kondo.kt:545)
	at cursive.kondo.KondoAnnotator$doAnnotate$runtime$1$1.invokeSuspend(annotator.kt:121)
I don't recognise that class, I guess it's something internal to the Kotlin coroutines. That's consistent with differences across versions too, since that class comes from the underlying platform. I'll see if I can reproduce this and fix it.

MJ 2025-07-30T17:47:30.651719Z

did you happen to add that logging you mentioned?

cfleming 2025-07-30T21:09:26.656449Z

@mgardner2 Yes, I did. Try this: go to Help | Diagnostic Tools | Debug Log Settings..., and add cursive.kondo.KondoAnnotator to the box there. Then reproduce the problem (e.g. go to a Clojure file, modify it and wait a couple of seconds) and then send me your log file (Help | Show log in Finder/Explorer). You can DM it here or send it to <mailto:cursive@cursive-ide.com|cursive@cursive-ide.com>.

cfleming 2025-08-04T08:41:40.373419Z

https://github.com/cursive-ide/cursive/issues/3049

cfleming 2025-08-04T08:41:49.594399Z

I'm going to fix this and get a build out shortly.

👍 1
cfleming 2025-07-31T09:05:54.608899Z

Any complaints about the kondo support in this latest version, apart from MJ? There seems to be a possibility that JetBrains will ambush us with their GA release tomorrow, so if it's all working ok I'll get a stable release out. If there are more bugs I can do a point release after that.

MJ 2025-07-31T17:13:42.574929Z

what "project file" is it looking for? deps.edn? > FINE - #cursive.kondo.KondoAnnotator - No project file found

imre 2025-07-31T17:14:52.229379Z

Thanks Colin! I'll have more comments about the monorepo experience but I'm off this week and haven't had a chance to reply in the other threads. I'll also try to create a demo IJ workspace

cfleming 2025-07-31T18:25:45.062109Z

@mgardner2 Yes, that's right, what is your project setup? One thing that occurs to me is that this won't work correctly in shadow-cljs projects set up using Maven, I'll have to fix that.

cfleming 2025-07-31T18:27:42.257379Z

@imre Ok no worries we can catch up next week, I definitely want to find a solution for that. The GA date has been moved to Monday sounds like.

MJ 2025-07-31T18:30:10.065129Z

it's a large Java project with one module that's a mix of Clojure and Java. At the root of that module there's a deps.edn. It's a "stub" file that we've only been using for clj-kondo so far, and only contains :paths

cfleming 2025-07-31T18:39:54.928399Z

Ok, but does that module have a pom.xml? I guess that's what is used to actually sync the module to IntelliJ, correct?

MJ 2025-07-31T18:40:43.408159Z

yes it does

MJ 2025-07-31T18:42:26.495059Z

I'm not sure what IntelliJ's logic is, but it does "see" the module as such

cfleming 2025-07-31T18:43:18.461999Z

Right, that's the problem. I'll fix that, thanks!

MJ 2025-07-31T18:44:42.393889Z

wait, what's the problem?

cfleming 2025-07-31T19:08:46.822739Z

The problem is that IntelliJ thinks your module is a Maven module, not a deps one, and the kondo integration doesn't handle that case correctly (yet)

MJ 2025-07-31T19:11:33.884129Z

ahh, makes sense. Thanks for digging into this