As the title says, clj -X:deps tree
ignores the -Sdeps
option:
$ clj -Sdeps '{:deps {ring/ring-core {:mvn/version "1.9.1"}}}' -X:deps tree
org.clojure/clojure 1.10.2
. org.clojure/spec.alpha 0.2.194
. org.clojure/core.specs.alpha 0.2.56
In contrast to clj -Stree
:
$ clj -Sdeps '{:deps {ring/ring-core {:mvn/version "1.9.1"}}}' -Stree
org.clojure/clojure 1.10.2
. org.clojure/spec.alpha 0.2.194
. org.clojure/core.specs.alpha 0.2.56
ring/ring-core 1.9.1
. ring/ring-codec 1.1.3
. commons-codec/commons-codec 1.15
. commons-io/commons-io 2.6
. commons-fileupload/commons-fileupload 1.4
X commons-io/commons-io 2.2 :older-version
. crypto-random/crypto-random 1.2.0
X commons-codec/commons-codec 1.6 :older-version
. crypto-equality/crypto-equality 1.0.0
Is this behavior intended? If so, why?
I believe it's intentional since I found this behavior comes from this seemingly purposeful change, but I still don’t get the reason for that.
BTW I know there is a workaround like the following if I want to use clj -X:deps tree
anyway:
$ clj -Sdeps ... -Strace
$ clj -X:deps tree :file '"trace.edn"'