dev-tooling

bozhidar 2024-06-10T08:21:07.129829Z

FYI - I've created #cider-development for discussions specific to CIDER's development, so we won't spam you here with topics that are not of general interested to everyone. (e.g. CIDER's release planning, etc)

pez 2024-06-10T08:24:53.210389Z

I added a bookmark to cider-nrepl docs to this channel. (Since they are very hard to find using Google or similar means 😃 )

👍 1
bozhidar 2024-06-10T08:25:19.365739Z

I've love Slack bookmarks and I use them a lot on the job.

bozhidar 2024-06-10T08:24:54.902559Z

In other news - we didn't get any issue reports for nREPL 1.2-beta2 so far, so I'll likely cut a new release later this week. As a reminder - it brings back the ability to interrupt code evaluation on Java 20+ and improves a lot the bencode performance.

pez 2024-06-10T08:26:21.243729Z

I haven’t gotten around to implement this in Calva. But it all looks great to me and I don’t see any particular troubles with implementing support.

bozhidar 2024-06-10T08:27:32.209349Z

Yeah, it's really just a matter of loading the JVMTI agent, so it should be fairly simple for jack-in, and for the other use-cases it's basically an entry in the docs that users need to load it themselves.

bozhidar 2024-06-10T08:28:09.239899Z

E.g. something like https://docs.cider.mx/cider/basics/up_and_running.html#enabling-nrepl-jvmti-agent

borkdude 2024-06-10T18:29:49.493819Z

> it brings back the ability to interrupt code evaluation on Java 20+ How did you implement this without Thread/stop being available?

borkdude 2024-06-10T18:33:38.385219Z

Ah JVMTI I see

bozhidar 2024-06-10T18:51:45.311259Z

We considered another option as well (see https://github.com/nrepl/nrepl/issues/296#issuecomment-2098870752), but the JVMTI option seemed better overall.

bozhidar 2024-06-10T08:26:06.484309Z

Btw, @cfleming what is the Clojure version that Cursive targets these days?

cfleming 2024-06-10T08:36:19.816989Z

I try to support pretty much anything gracefully. In practice things that most people are using (e.g. nREPL) have some minimum value, but I try to make sure that Cursive handles it all.

bozhidar 2024-06-10T10:06:43.260989Z

Interesting. nREPL targets Clojure 1.7, but if we get to a point where no tool supports it we might switch to targeting some newer Clojure. That's why I asked.

cfleming 2024-06-10T20:18:50.837559Z

Sure, again it’s easier due to my policy of mostly doing things by static analysis and minimal eval-only use of the REPL. So it’s easier to maintain support for older versions. I actually don’t test older versions so it’s possible some 1.7 stuff might have crept in, but no-one has complained about it either.

👍 1