walmartlabs / vizdeps

Visualize Leiningen dependencies using Graphviz
Apache License 2.0
131 stars 13 forks source link

Check Leiningen version 2.7.0+ #8

Closed stuartsierra closed 4 years ago

stuartsierra commented 7 years ago

vizdeps fails on Leiningen < 2.7.0 with the error "No such var: classpath/managed-dependency-hierarchy, compiling:(com/walmartlabs/vizdeps/common.clj:118:7)"

Is it enforceable for a Leiningen plugin to declare a :min-lein-version?

See also https://github.com/technomancy/leiningen/issues/2067 for the Leiningen feature.

hlship commented 4 years ago

I've been ignoring this project for a long time; do you see this as still an issue? I use vizdeps with 2.7.1 and I'm looking at compatibility with more recent Leiningen as well.

stuartsierra commented 4 years ago

I have no idea if this is still relevant. My current Leiningen version is 2.9.1, so probably not?

Just did a quick test. With plugin [walmartlabs/vizdeps "0.2.0"] everything works.

With version [walmartlabs/vizdeps "0.1.6"] (still shown in README under "Installation") I get the following error:

$ lein vizdeps
OpenJDK 64-Bit Server VM warning: Options -Xverify:none and -noverify were deprecated in JDK 13 and will likely be removed in a future release.
clojure.lang.Compiler$CompilerException: Syntax error compiling at (com/walmartlabs/vizdeps/common.clj:1:1).
#:clojure.error{:phase :compile-syntax-check, :line 1, :column 1, :source "com/walmartlabs/vizdeps/common.clj"}
 at clojure.lang.Compiler.load (Compiler.java:7647)
...
Caused by: java.io.FileNotFoundException: Could not locate clojure/tools/cli__init.class, clojure/tools/cli.clj or clojure/tools/cli.cljc on classpath.
 at clojure.lang.RT.load (RT.java:466)
    clojure.lang.RT.load (RT.java:428)
    clojure.core$load$fn__6824.invoke (core.clj:6126)
    clojure.core$load.invokeStatic (core.clj:6125)
    clojure.core$load.doInvoke (core.clj:6109)
    clojure.lang.RestFn.invoke (RestFn.java:408)
    clojure.core$load_one.invokeStatic (core.clj:5908)
    clojure.core$load_one.invoke (core.clj:5903)
    clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
    clojure.core$load_lib.invokeStatic (core.clj:5947)
    clojure.core$load_lib.doInvoke (core.clj:5928)
    clojure.lang.RestFn.applyTo (RestFn.java:142)
    clojure.core$apply.invokeStatic (core.clj:667)
    clojure.core$load_libs.invokeStatic (core.clj:5985)
    clojure.core$load_libs.doInvoke (core.clj:5969)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.core$apply.invokeStatic (core.clj:667)
    clojure.core$require.invokeStatic (core.clj:6007)
    clojure.core$require.doInvoke (core.clj:6007)
    clojure.lang.RestFn.invoke (RestFn.java:551)
    com.walmartlabs.vizdeps.common$eval670$loading__6706__auto____671.invoke (common.clj:1)
    com.walmartlabs.vizdeps.common$eval670.invokeStatic (common.clj:1)
    com.walmartlabs.vizdeps.common$eval670.invoke (common.clj:1)
hlship commented 4 years ago

Oops. I'll update the README.

hlship commented 4 years ago

Readme updated. Only took me three years to fix it as #11 :-(