Fork me on GitHub

Just to check my understanding of this - is it the case that alembic no longer works under nREPL, because of the dynapath change for Java 9? Sounds like nREPL used to actually modify the URLClassLoader but can no longer do so?


If so, I’ll file a ticket for that. There’s been some discussion over in #tools-deps about this WRT their new add-lib functionality.


There’s also been some discussion over in #clojure-dev about it (from @razum2um)


In Java 8 one of the base class loader is a URL, and there was a hack to get at it. It was an implementation detail that is gone in 9. @cfleming


@dominicm So the fix would be for nREPL to have a DCL which sits above the DCLs it creates for each eval?


It’s really pomegranate which doesn’t work, I guess, alembic is only broken transitively.


Exactly. I started to look at it but ran out of time.


@cfleming Yeah, that would be the fix IMO. I haven’t had any time to work on this either, unfortunately.


Most of my time went into trying to get the “new” nREPL replace the deprecated contrib one in projects like reply (done), boot (PR open) and lein (PR open).


I see nREPL is issuing some other warnings on Java 9/10, so the DCL might not be our only concern, so help would be welcome.


On the bright side - with Clojure dropping support for Java 6 and 7, at least we can focus on support Java 8+. 🙂