I've been trying to upgrade refactor-nrepl's r-c dep for a while but fails the build (quite opaquely) for all jdks but JDK17. I consistently get that jdk-specificity. Does that ring a bell?
Hi @vemv! Nope, not at all. Want some help looking at the failures?
they really don't say anything about rewrite-clj unfortunately, these are integration tests that go through nrepl and stuff
Hmm… interesting tho. Would have expected consistent behaviour across the JDKs.
Any pattern to it? Something to do with characters sets/whitespace, etc?
> Hmm… interesting tho. Would have expected consistent behaviour across the JDKs. it could be anything, it's updating r-c that triggers this but the project is large enough for funny behavior to emerge for arbitrary reasons :)
nothing too specific that can be debugged will report any progress or insight
Do tests pass for rewrite-clj v0? (making an assumption you are currently testing with rewrite-clj v1).
v0 is xsc's?
Yeah, but v1 is at same maven coordinates, xsc kindly gave us the clojars rights.
yes, we've used v0 for a long time untouched, green build for a long while
So you are on rewrite-clj v0.6.1? Or have you upgraded to v1.0.699-alpha?
refactor-nrepl uses [rewrite-clj "0.6.1"] in master and all public releases. I'm trying out [rewrite-clj "1.0.699-alpha"] in a branch, which distinctly fails a few tests in all jdks but 17
Cool, gotcha. If you swap back in rewrite-clj v0.6.1 (if that is even possible?) in your branch are your tests all green?
I don't need to do that, the point of the branch is solely to update rewrite-clj
master -> green branch off and update -> red
Just trying to explore what variables have changed. If the only change in your branch is the rewrite-clj dep going from v0 to v1, then retesting there with v0 is, I agree, pointless. But if any other things have changed in your branch I think retesting with v0 would be worth a whirl.
In any case, I am very interested, and can lend a hand if you can figure out how I might be of help.
thanks! 🍻 will keep debugging for a while, it's still relatively early in the investigation
Cool, looking forward to learning more, please keep me posted! And once you get any suspicions, a review of the https://github.com/clj-commons/rewrite-clj/blob/main/CHANGELOG.adoc#rewrite-clj-v1 might, who knows?, give you an AHA! moment.
maybe the whole thing has less to do with the rewrite-clj bump and more with the transitive clojurescript bump that is associated to it.
for context, a few refactor-nrepl tests depend on https://github.com/nrepl/piggieback which deserves some love
tldr it's all a 🐰 🌀
Thanks for the update @vemv! Happy to learn about any new discoveries further explorations uncover.
it's fixed now and indeed it didn't have to do with rewrite-clj
or at least not directly
I was using Circle images without node in them
which was super opaque... in a few other projects I have this canary snippet
(let [{:keys [exit]
:as v} (clojure.java.shell/sh "node" "--version")]
(assert (zero? exit)
(pr-str v)))
would have saved me idk, 6h recalling all various things I've done in the last few days!
Hey, thanks for the update @vemv - and also congratulations on solving the puzzle! 🎉