cljs-dev

ClojureScript compiler & std lib dev, https://clojurescript.org/community/dev
dnolen 2021-03-31T04:44:46.026500Z

hrm? that's possible but are you using the uberjar?

kommen 2021-03-31T08:27:14.028100Z

yes, by depending on the org.clojure/clojurescript {:mvn/version "1.10.844"} I guess we get the uberjar?

kommen 2021-03-31T08:27:38.028500Z

issue can be reproduced:

$ clj -Sdeps '{:deps {org.clojure/clojurescript {:mvn/version "1.10.773"} org.clojure/tools.reader {:mvn/version "1.3.2"}}}' -e "(require 'clojure.tools.reader.edn)"
WARNING: When invoking clojure.main, use -M

kommen 2021-03-31T08:27:59.029Z

$ clj -Sdeps '{:deps {org.clojure/clojurescript {:mvn/version "1.10.844"} org.clojure/tools.reader {:mvn/version "1.3.2"}}}' -e "(require 'clojure.tools.reader.edn)"
Downloading: org/clojure/clojurescript/1.10.844/clojurescript-1.10.844.pom from central
Downloading: org/clojure/clojurescript/1.10.844/clojurescript-1.10.844.jar from central
WARNING: When invoking clojure.main, use -M
Syntax error compiling at (clojure/tools/reader/edn.clj:75:9).
No such var: err/throw-no-dispatch

Full report at:
/var/folders/c0/hfmx64kj4dx3y8dp772l_s6w0000gn/T/clojure-12053108925244442985.edn

thheller 2021-03-31T08:31:58.029500Z

likely the AOT'd code not the uberjar. you can use org.clojure/clojurescript$slim to avoid such conflicts

kommen 2021-03-31T08:34:45.031900Z

yes sorry, my bad. the 3fdaabed we tested before already was the change with the uberjar, as @mkvlr point out to me.

thheller 2021-03-31T08:35:20.032600Z

unfortunately since that is a different artifact id you'll still very likely get an additional org.clojure/clojurescript from some dependency 😛

thheller 2021-03-31T08:37:57.033600Z

would be better IMHO to have the slim as the default org.clojure/clojurescript and a separate opt-in org.clojure/clojurescript$aot but that would have the same issues so nothing gained really

juhoteperi 2021-03-31T08:40:46.035300Z

And if you encounter libraries depending on org.clojure/clojurescript, I think it is a good idea to create issue about moving the dependency to dev profile or provided scope or such. Makes it easier for applications to select correct version.

kommen 2021-03-31T08:48:07.036400Z

@thheller thank you, I did not know how to get the slim version. @juhoteperi good point, will start with our own libs then 😅

dnolen 2021-03-31T12:13:39.036900Z

@kommen no change to AOT JAR production as far as I know, that's done w/ Maven plugin

dnolen 2021-03-31T12:14:18.037700Z

the deps.edn uberjar thing is for tests and alternate consumption

kommen 2021-03-31T12:32:34.038100Z

ok

mkvlr 2021-03-31T17:22:20.038800Z

we have 1.10.844 in production now

🎉 1