ClojureScript is not a provided dep
metametadata opened this issue · 4 comments
Even though deps.edn
seems to specify clojurescript
as provided:
{:deps {org.clojure/clojurescript {:mvn/version "1.10.520" :scope "provided"}
in practice it's not, see final pom.xml
:
<dependency>
<groupId>org.clojure</groupId>
<artifactId>clojurescript</artifactId>
<version>1.10.520</version>
</dependency>
My Clojure project uses buddy-auth
whch depends on cuerdas
and excluding clojurescript
dep explicitly reduces the uberjar size by ~15 MB. Dependency tree snippet:
[buddy/buddy-auth "2.2.0"]
[buddy/buddy-sign "3.1.0"]
[buddy/buddy-core "1.6.0"]
[net.i2p.crypto/eddsa "0.3.0"]
[org.bouncycastle/bcpkix-jdk15on "1.62"]
[org.bouncycastle/bcprov-jdk15on "1.62"]
[funcool/cuerdas "2.2.0"]
[org.clojure/clojurescript "1.10.520"] <----------------------
IMHO clojurescript should be under the :dev
alias not in main :deps
because every project that uses buddy-auth ends up bundling all of clojurescript (goog closure compiler) in the uberjar.
already fixed
Thank you! Could you also deploy buddy-auth
with the new cuerdas
version? This will allow me to remove :exclusions
from my code:
[buddy/buddy-auth "2.2.0"
; HACK: https://github.com/funcool/cuerdas/issues/74
:exclusions [org.clojure/clojurescript]]
Could you also deploy buddy-auth with the new cuerdas version?
Merging funcool/buddy-auth#85 into buddy-auth
and deploying the new version would also be good.