Steps:
1) Create {{project.clj}} file:
(defproject
foo "1.0.0"
:dependencies [[org.clojure/clojurescript "1.10.439"]]
:pedantic? :abort)
2) Run {{lein deps}}.
Actual: fails because of dependency conflicts:
`
Possibly confusing dependencies found:
[org.clojure/clojurescript "1.10.439"] -> [com.google.javascript/closure-compiler-unshaded "v20180805"] -> [com.google.errorprone/error_prone_annotations "2.0.18"]
overrides
[org.clojure/clojurescript "1.10.439"] -> [com.google.javascript/closure-compiler-unshaded "v20180805"] -> [com.google.guava/guava "25.1-jre"] -> [com.google.errorprone/error_prone_annotations "2.1.3"]
Consider using these exclusions:
[org.clojure/clojurescript "1.10.439" :exclusions [com.google.errorprone/error_prone_annotations]]
[org.clojure/clojurescript "1.10.439"] -> [com.google.javascript/closure-compiler-unshaded "v20180805"] -> [com.google.code.findbugs/jsr305 "3.0.1"]
overrides
[org.clojure/clojurescript "1.10.439"] -> [com.google.javascript/closure-compiler-unshaded "v20180805"] -> [com.google.guava/guava "25.1-jre"] -> [com.google.code.findbugs/jsr305 "3.0.2"]
Consider using these exclusions:
[org.clojure/clojurescript "1.10.439" :exclusions [com.google.code.findbugs/jsr305]]
Aborting due to :pedantic? :abort
`
Expected: success.
We rutinely use {{:pendatic? abort}} setting and now have to add conflict fixes into all {{project.clj}} files after bumping CLJS version.
The root problem is in {{com.google.javascript/closure-compiler-unshaded}} artifact, so I've commented about it in https://github.com/google/closure-compiler/issues/2805. But until it's fixed it would be great to include some workaround into future ClojureScript artifacts. E.g. requiring
`
} and {{[com.google.errorprone/error_prone_annotations "2.3.2"]}} explicitly in CLJS's dependencies.