emezeske / lein-cljsbuild

Leiningen plugin to make ClojureScript development easy.
Other
1.1k stars 152 forks source link

Fails with ClojureScript newer than 1.10.764 #502

Open Macroz opened 2 years ago

Macroz commented 2 years ago

Hello, I tried upgrading project dependencies (in an old project) and looks like the changes in Google Closure used in ClojureScript break lein-cljsbuild version 1.1.8. The last working ClojureScript version seems to be 1.10.764.

Here's one of the traces (latest ClojureScript 1.11.4). I think the in-between versions got some other errors.

$lein cljsbuild once
Compiling ClojureScript...
Execution error (NoSuchMethodError) at com.google.javascript.jscomp.deps.ModuleLoader/createRootPaths (ModuleLoader.java:257).
'java.util.stream.Collector com.google.common.collect.ImmutableSortedSet.toImmutableSortedSet(java.util.Comparator)'

What do you advice? Would this be difficult to fix? If I were to dig around, where should I look? Is it worthwhile? Or perhaps transition to Shadow-CLJS?

mneise commented 2 years ago

@Macroz Thanks for reporting this! I currently don't have any capacity to work on this, but feel free to dive into this yourself if you are curious. Otherwise, transitioning to shadow-cljs is probably the most sensible choice here, since Thomas Heller is actively maintaining it and done great things with it.

Macroz commented 2 years ago

As we are looking into migrating to Shadow-CLJS for convenient npm dependencies, I'll try that option first.

Macroz commented 2 years ago

Shadow-CLJS is working for us. I can leave this issue open as it can help someone else.