Fork me on GitHub
#clojurescript
<
2018-03-10
>
magra10:03:23

My Lein project works with cljs 1.9.946 but 1.10.126 and 1.10.145 fail with the message: The file prod/cljs/loader.cljs does not exist. Is there a new option I have to take into account?

dnolen15:03:57

@magra if you have something minimal please report that in JIRA

dnolen15:03:08

once you do that use :aot-cache false

dnolen15:03:35

this will usually be the default in the future, but you need to set it for now

magra15:03:22

@dnolen The error does not go away with :aot-cache false. I put it into all :cljsbuild {:builds [{:compilter {:aot-cache false ... in Leiningen. I do not know how to make a minimal case out of this. Strange thing is, I am shure it worked at first. I had a running figwheel session and all and the cljs repl printed out 1.10.145 on every prompt. Then it stopped working when I build an uberjar. Since then it only works when I go back to 1.9.946. I suspect the lein clean when building the uberjar deleted something that does not get put back.

magra15:03:59

If there are instructions on how to reduce this to a minimal case I am willing to put in the time.

mfikes16:03:00

@magra This page doesn't describe how you might construct a minimal repro, but it at least defines what a minimal repro is: https://clojurescript.org/community/reporting-issues

zentrope17:03:14

@magra Hopefully it’s just your quote, there, but you have compilter rather than compiler.

zentrope17:03:12

BTW, figwheel flags :aot-cache as unrecognized.

magra18:03:38

@zentrope Thanks! Yes that is the quote. And when I go back to 1.9.946 I too get the warning that :aot-cache is not in the list of valid options.

zentrope18:03:33

1.10.145 works for me, as long as :aot-cache is false. I don’t get the can’t-find error messages.

mfikes18:03:07

@zentrope Yeah, I don't think Figwheel consults cljs.closure/known-opts and will probably need to be updated. https://github.com/clojure/clojurescript/blob/56c774be6227d51f4aa3a52571cb2640c7325db7/src/main/clojure/cljs/closure.clj#L160

mfikes18:03:02

@zentrope A minimal repro might involve deps.edn like this, but with your problematic dep added as well:

{:deps {org.clojure/clojurescript {:mvn/version "1.10.145"}}}
along with starting a Node REPL with
clj -Srepro -e "(require 'cljs.repl 'cljs.repl.node)" -e "(cljs.repl/repl (cljs.repl.node/repl-env))"
and a (require ...) on your dep to cause the error.

athomasoriginal19:03:35

I am doing a little research on CSS Modules and CSS-in-JS and their presence in the CLJS community. I have found some excellent libraries that do these things, but I am curious as to the adoption rate in Clojure land. Is anyone using these?