cursive

cfleming 2025-07-23T05:32:49.194979Z

Cursive 2025.2-eap3 is out, finally bringing support for clj-kondo! https://cursive-ide.com/blog/cursive-2025.2-eap3.html

5
😮 1
🎉 5
imre 2025-07-25T13:33:54.299559Z

Thanks Colin, I checked in the new EAP and it's there. Was probably an error on my end

imre 2025-07-24T10:44:25.484919Z

My reformat form action seems to have gone missing after this version bump

cfleming 2025-07-24T10:55:15.975469Z

I'll check that

❤️ 1
MJ 2025-07-24T22:05:32.770649Z

I don't seem to be getting any kondo warnings even though I've enabled it in the settings. Where can I look to debug further?

cfleming 2025-07-24T23:50:23.887239Z

Have you considered that your code might be perfect? 🙂

😆 1
cfleming 2025-07-24T23:51:06.362449Z

More seriously, I'm getting a new EAP out shortly which fixes the memory issues people have been having, it probably makes sense to wait for that one and then we can debug if it's still not working.

cfleming 2025-07-25T04:44:27.165059Z

@imre I checked the Reformat Form and I still see it. If you're not seeing it in the new EAP let me know.

danielcompton 2025-07-23T05:50:52.122439Z

Should this use “initializing” to be in American English? Or is the rest of IntelliJ localised to British English? I’ve never noticed before

danielcompton 2025-07-23T05:51:32.431479Z

Unsure if this is related but I’m getting a low memory warning after updating to the new version

danielcompton 2025-07-23T05:52:08.092779Z

cfleming 2025-07-23T06:16:49.256169Z

I mostly use British English in Cursive, just because that's what I tend to use.

cfleming 2025-07-23T06:17:06.211209Z

Could you get that memory report and send it to me?

danielcompton 2025-07-23T06:32:55.259359Z

IntelliJ is unresponsive and eventually crashes, so sorry I can’t

danielcompton 2025-07-23T06:33:24.617339Z

I think I’ll need to downgrade to stable

raspasov 2025-07-23T06:46:43.622539Z

I just installed it. The memory jumped for a few seconds, but then the cache initialization finished, and it’s back to normal now.

raspasov 2025-07-23T06:47:05.476459Z

I always keep the IntelliJ heap memory indicator active in the corner.

raspasov 2025-07-23T06:47:30.153099Z

Helps to see if something funky is going on.

raspasov 2025-07-23T06:47:47.355419Z

Perhaps try bumping the max heap?

raspasov 2025-07-23T06:48:22.739589Z

(my max heap is set to 32GB …)

cfleming 2025-07-23T06:48:24.173979Z

Right, this integration runs kondo in-process, so it might need more heap especially while updating the cache.

raspasov 2025-07-23T06:48:39.336429Z

I think it might have gone over 10GB for a few seconds.

raspasov 2025-07-23T06:48:51.948089Z

(and my open projects are not big at the moment, not sure if that’s a factor)

cfleming 2025-07-23T06:49:03.253029Z

Hmm, hopefully it doesn't require that much 😕

raspasov 2025-07-23T06:49:25.149679Z

It was at least 6-7 I think

cfleming 2025-07-23T06:49:28.800509Z

I don't have my heap set that high and I haven't seen any issues, and I tested this using metabase which is pretty big.

raspasov 2025-07-23T06:49:38.266029Z

Oh yeah that is big…

cfleming 2025-07-23T06:50:27.783359Z

Yeah my max is set to 8GB and it handled metabase ok.

raspasov 2025-07-23T06:50:36.471179Z

I happen to have it, just opened it

raspasov 2025-07-23T06:50:49.912839Z

raspasov 2025-07-23T06:50:59.339469Z

I think when you set higher heap, the JVM tends to use more

raspasov 2025-07-23T06:51:19.433249Z

still init-ing

cfleming 2025-07-23T06:51:21.100569Z

Yeah, definitely - if it gets low on space it will collect more aggressively, I think

cfleming 2025-07-23T06:51:49.958479Z

I'll delete the caches in my local copy and profile while it's initialising there.

raspasov 2025-07-23T06:52:03.886599Z

raspasov 2025-07-23T06:52:12.679169Z

I think init finished, that’s where it maxed out

danielcompton 2025-07-23T06:52:30.640679Z

how many modules does Metabase have?

raspasov 2025-07-23T06:52:41.468139Z

Now it’s at 10GB… with metabase open (and a few other tiny projects in comparison also open)

raspasov 2025-07-23T06:52:49.286039Z

I assume every projects adds something additional?

cfleming 2025-07-23T06:53:00.289989Z

If you force a GC does that go down?

raspasov 2025-07-23T06:53:06.423929Z

I click the corner

raspasov 2025-07-23T06:53:10.400509Z

which forces the GC I think

raspasov 2025-07-23T06:53:13.692419Z

It does not go below 10

raspasov 2025-07-23T06:53:19.843709Z

I can try restarting?

raspasov 2025-07-23T06:53:25.699089Z

See how it opens on restart

raspasov 2025-07-23T06:53:38.807719Z

restarting IntelliJ

cfleming 2025-07-23T06:53:41.221159Z

Ok, I'll try it here too, but it'll have to be tomorrow at this point.

raspasov 2025-07-23T06:54:32.996909Z

Oh… it’s initializing on every restart

raspasov 2025-07-23T06:54:41.871799Z

or not…

raspasov 2025-07-23T06:54:53.303329Z

After restart is at 3GB

raspasov 2025-07-23T06:55:11.358889Z

so either something funky (memory leak?) is going on during the cache init, or that’s as designed, I am not sure

raspasov 2025-07-23T06:55:43.035449Z

But now I have the same projects open, and the mem usage is 3GB

raspasov 2025-07-23T06:57:18.643849Z

> how many modules does Metabase have? I don’t know much about their codebase but it’s all open source; it’s a big project https://github.com/metabase/metabase possibly the biggest open source Clojure project I can name on top of my head

raspasov 2025-07-23T06:58:42.139809Z

~124k lines of Clojure in src just counted 🙂

raspasov 2025-07-23T06:59:05.283569Z

I actually expected more, but it’s not tiny

cfleming 2025-07-23T06:59:06.204989Z

Yeah, that was why I tested with it. It won't re-init the caches unless something has changed, classpath/config/kondo version, so I I guess that why it's less on a restart. I'll have to profile during a cache init to see what it gets up to.

👍 1
raspasov 2025-07-23T06:59:46.348009Z

In any case, first-class clj-kondo integration is great news 🙂

raspasov 2025-07-23T07:00:25.050659Z

I’ve been using the hacky IntelliJ integrations for kondo (File Watchers plugin I believe); it worked but was not perfect

raspasov 2025-07-23T07:00:35.204179Z

(nothing to do with kondo, just the integration with the editor)

raspasov 2025-07-23T07:04:45.406789Z

Seems to work! This is a cljc file, so it correctly gives a warning that this line of code is not valid, presumably in ClojureScript.

cfleming 2025-07-23T07:05:41.750789Z

Yes, the integration is pretty nice, I'm going to add quick fixes where it makes sense so you can just alt-enter to fix the things that are easily fixable

1
raspasov 2025-07-23T07:05:59.921899Z

Once wrapped #?(:clj … it disappers

danielcompton 2025-07-23T08:01:46.412249Z

Not sure whose fault this is but I saw this warning after running the new beta and adding files to git

warning: in the working copy of 'app/.clj-kondo/instaparse/config.edn', CRLF will be replaced by LF the next time Git touches it

danielcompton 2025-07-23T08:16:12.971359Z

After giving IntelliJ 32 GB RAM, it was able to stabilise and run the clj-kondo initialisation. It seems stable now, although maybe slightly laggier, like more is running on each keystroke?

cfleming 2025-07-23T08:23:11.848319Z

How big is your project? It definitely shouldn't run on every keystroke, the external annotator debounces by a decent margin I think (it's designed to run external linter processes).

imre 2025-07-23T09:13:09.369599Z

nice one Colin, I was looking forward to this

imre 2025-07-23T09:13:20.647049Z

Seems to be working fine in my case so far

cfleming 2025-07-23T09:14:38.973609Z

Glad to hear it! This is definitely way overdue.

imre 2025-07-23T09:42:36.647009Z

Looks like I spoke a little too soon. I opened another project, which is a monorepo with some twenty-odd subprojects and initializing the cache froze the ide.

imre 2025-07-23T09:43:01.049109Z

didn't have this with clojure-extras previously

cfleming 2025-07-23T10:40:49.303799Z

Did you get any of the automatic UI freeze thread dumps? Could you send them to me if so?

imre 2025-07-23T11:48:51.212689Z

Let me check

imre 2025-07-23T11:53:08.188329Z

sent the 2 I could find in an email

👍 1
danielcompton 2025-07-23T08:12:50.461849Z

It would be good if I could resize this window. At the moment it resizes back to full size, even if I make it smaller

cfleming 2025-07-25T04:43:34.901989Z

Yes, in recent versions IntelliJ has taken to showing those previews when hovering over symbols. I'm not sure I can do much about this, except perhaps not put clojuredocs examples in those popups, if that's possible. I'll take a look.

danielcompton 2025-07-23T08:14:22.293779Z

I guess the examples are from hovering over filter , not part of clj-kondo

danielcompton 2025-07-23T08:14:50.882449Z

I’m not sure why, but I didn’t seem to get this behaviour with clojure-extras