grampelberg / lein-autoreload

Keep the repl up to date with source.
36 stars 6 forks source link

Gives stack dump on Clojure 1.10.1 #9

Closed cdavidshaffer closed 4 years ago

cdavidshaffer commented 5 years ago

Great plugin but doesn't seem to work under newer Clojure (1.10.0 or 1.10.1).

Here's my project.clj:

  :description "FIXME: write description"
  :url "http://example.com/FIXME"
  :license {:name "EPL-2.0 OR GPL-2.0-or-later WITH Classpath-exception-2.0"
            :url "https://www.eclipse.org/legal/epl-2.0/"}
  :dependencies [[org.clojure/clojure "1.10.1"]]
  :main ^:skip-aot dep-demo.core
  :plugins [[lein-autoreload "0.1.1"]]
  :target-path "target/%s"
  :profiles {:uberjar {:aot :all}})

Here's the walkback:

clojure.lang.Compiler$CompilerException: Syntax error macroexpanding clojure.core/ns at (clojure/tools/namespace.clj:15:1).
#:clojure.error{:phase :macro-syntax-check, :line 15, :column 1, :source "clojure/tools/namespace.clj", :symbol clojure.core/ns}
 at clojure.lang.Compiler.checkSpecs (Compiler.java:6971)
    clojure.lang.Compiler.macroexpand1 (Compiler.java:6987)
    clojure.lang.Compiler.macroexpand (Compiler.java:7074)
    clojure.lang.Compiler.eval (Compiler.java:7160)
    clojure.lang.Compiler.load (Compiler.java:7635)
    clojure.lang.RT.loadResourceScript (RT.java:381)
    clojure.lang.RT.loadResourceScript (RT.java:372)
    clojure.lang.RT.load (RT.java:463)
    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:669)
    clojure.core$use.invokeStatic (core.clj:6093)
    clojure.core$use.doInvoke (core.clj:6093)
    clojure.lang.RestFn.invoke (RestFn.java:457)
    ns_tracker.core$eval670$loading__6706__auto____671.invoke (core.clj:1)
    ns_tracker.core$eval670.invokeStatic (core.clj:1)
    ns_tracker.core$eval670.invoke (core.clj:1)
    clojure.lang.Compiler.eval (Compiler.java:7176)
    clojure.lang.Compiler.eval (Compiler.java:7165)
    clojure.lang.Compiler.load (Compiler.java:7635)
    clojure.lang.RT.loadResourceScript (RT.java:381)
    clojure.lang.RT.loadResourceScript (RT.java:372)
    clojure.lang.RT.load (RT.java:463)
    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:457)
    lein_autoreload.plugin$eval662$loading__6706__auto____663.invoke (plugin.clj:1)
    lein_autoreload.plugin$eval662.invokeStatic (plugin.clj:1)
    lein_autoreload.plugin$eval662.invoke (plugin.clj:1)
    clojure.lang.Compiler.eval (Compiler.java:7176)
    clojure.lang.Compiler.eval (Compiler.java:7165)
    clojure.lang.Compiler.load (Compiler.java:7635)
    clojure.lang.RT.loadResourceScript (RT.java:381)
    clojure.lang.RT.loadResourceScript (RT.java:372)
    clojure.lang.RT.load (RT.java:463)
    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:408)
    leiningen.core.utils$require_resolve.invokeStatic (utils.clj:102)
    leiningen.core.utils$require_resolve.invoke (utils.clj:95)
    leiningen.core.project$apply_middleware.invokeStatic (project.clj:816)
    leiningen.core.project$apply_middleware.invoke (project.clj:810)
    clojure.lang.ArrayChunk.reduce (ArrayChunk.java:58)
    clojure.core.protocols$fn__8139.invokeStatic (protocols.clj:136)
    clojure.core.protocols/fn (protocols.clj:124)
    clojure.core.protocols$fn__8099$G__8094__8108.invoke (protocols.clj:19)
    clojure.core.protocols$seq_reduce.invokeStatic (protocols.clj:31)
    clojure.core.protocols$fn__8131.invokeStatic (protocols.clj:75)
    clojure.core.protocols/fn (protocols.clj:75)
    clojure.core.protocols$fn__8073$G__8068__8086.invoke (protocols.clj:13)
    clojure.core$reduce.invokeStatic (core.clj:6828)
    clojure.core$reduce.invoke (core.clj:6810)
    leiningen.core.project$apply_middleware.invokeStatic (project.clj:812)
    leiningen.core.project$apply_middleware.invoke (project.clj:810)
    leiningen.core.project$activate_middleware.invokeStatic (project.clj:844)
    leiningen.core.project$activate_middleware.invoke (project.clj:840)
    leiningen.core.project$init_project.invokeStatic (project.clj:986)
    leiningen.core.project$init_project.invoke (project.clj:974)
    leiningen.core.project$read.invokeStatic (project.clj:1057)
    leiningen.core.project$read.invoke (project.clj:1054)
    leiningen.core.project$read.invokeStatic (project.clj:1058)
    leiningen.core.project$read.invoke (project.clj:1054)
    leiningen.core.main$_main$fn__6681.invoke (main.clj:447)
    leiningen.core.main$_main.invokeStatic (main.clj:442)
    leiningen.core.main$_main.doInvoke (main.clj:439)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.lang.Var.applyTo (Var.java:705)
    clojure.core$apply.invokeStatic (core.clj:665)
    clojure.main$main_opt.invokeStatic (main.clj:491)
    clojure.main$main_opt.invoke (main.clj:487)
    clojure.main$main.invokeStatic (main.clj:598)
    clojure.main$main.doInvoke (main.clj:561)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.lang.Var.applyTo (Var.java:705)
    clojure.main.main (main.java:37)
Caused by: clojure.lang.ExceptionInfo: Call to clojure.core/ns did not conform to spec.
#:clojure.spec.alpha{:problems ({:path [:ns-clauses :refer-clojure :clause], :pred #{:refer-clojure}, :val import, :via [:clojure.core.specs.alpha/ns-form :clojure.core.specs.alpha/ns-refer-clojure :clojure.core.specs.alpha/ns-refer-clojure], :in [2 0]} {:path [:ns-clauses :require :clause], :pred #{:require}, :val import, :via [:clojure.core.specs.alpha/ns-form :clojure.core.specs.alpha/ns-require :clojure.core.specs.alpha/ns-require], :in [2 0]} {:path [:ns-clauses :import :clause], :pred #{:import}, :val import, :via [:clojure.core.specs.alpha/ns-form :clojure.core.specs.alpha/ns-import :clojure.core.specs.alpha/ns-import], :in [2 0]} {:path [:ns-clauses :use :clause], :pred #{:use}, :val import, :via [:clojure.core.specs.alpha/ns-form :clojure.core.specs.alpha/ns-use :clojure.core.specs.alpha/ns-use], :in [2 0]} {:path [:ns-clauses :refer :clause], :pred #{:refer}, :val import, :via [:clojure.core.specs.alpha/ns-form :clojure.core.specs.alpha/ns-refer :clojure.core.specs.alpha/ns-refer], :in [2 0]} {:path [:ns-clauses :load :clause], :pred #{:load}, :val import, :via [:clojure.core.specs.alpha/ns-form :clojure.core.specs.alpha/ns-load :clojure.core.specs.alpha/ns-load], :in [2 0]} {:path [:ns-clauses :gen-class :clause], :pred #{:gen-class}, :val import, :via [:clojure.core.specs.alpha/ns-form :clojure.core.specs.alpha/ns-gen-class :clojure.core.specs.alpha/ns-gen-class], :in [2 0]}), :spec #object[clojure.spec.alpha$regex_spec_impl$reify__2509 0x56da52a7 "clojure.spec.alpha$regex_spec_impl$reify__2509@56da52a7"], :value (clojure.tools.namespace (:require [clojure.java.classpath :as classpath]) (import (java.io File FileReader BufferedReader PushbackReader InputStreamReader) (java.util.jar JarFile))), :args (clojure.tools.namespace (:require [clojure.java.classpath :as classpath]) (import (java.io File FileReader BufferedReader PushbackReader InputStreamReader) (java.util.jar JarFile)))}
 at clojure.spec.alpha$macroexpand_check.invokeStatic (alpha.clj:705)
    clojure.spec.alpha$macroexpand_check.invoke (alpha.clj:697)
    clojure.lang.AFn.applyToHelper (AFn.java:156)
    clojure.lang.AFn.applyTo (AFn.java:144)
    clojure.lang.Var.applyTo (Var.java:705)
    clojure.lang.Compiler.checkSpecs (Compiler.java:6969)
    clojure.lang.Compiler.macroexpand1 (Compiler.java:6987)
    clojure.lang.Compiler.macroexpand (Compiler.java:7074)
    clojure.lang.Compiler.eval (Compiler.java:7160)
    clojure.lang.Compiler.load (Compiler.java:7635)
    clojure.lang.RT.loadResourceScript (RT.java:381)
    clojure.lang.RT.loadResourceScript (RT.java:372)
    clojure.lang.RT.load (RT.java:463)
    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:669)
    clojure.core$use.invokeStatic (core.clj:6093)
    clojure.core$use.doInvoke (core.clj:6093)
    clojure.lang.RestFn.invoke (RestFn.java:457)
    ns_tracker.core$eval670$loading__6706__auto____671.invoke (core.clj:1)
    ns_tracker.core$eval670.invokeStatic (core.clj:1)
    ns_tracker.core$eval670.invoke (core.clj:1)
    clojure.lang.Compiler.eval (Compiler.java:7176)
    clojure.lang.Compiler.eval (Compiler.java:7165)
    clojure.lang.Compiler.load (Compiler.java:7635)
    clojure.lang.RT.loadResourceScript (RT.java:381)
    clojure.lang.RT.loadResourceScript (RT.java:372)
    clojure.lang.RT.load (RT.java:463)
    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:457)
    lein_autoreload.plugin$eval662$loading__6706__auto____663.invoke (plugin.clj:1)
    lein_autoreload.plugin$eval662.invokeStatic (plugin.clj:1)
    lein_autoreload.plugin$eval662.invoke (plugin.clj:1)
    clojure.lang.Compiler.eval (Compiler.java:7176)
    clojure.lang.Compiler.eval (Compiler.java:7165)
    clojure.lang.Compiler.load (Compiler.java:7635)
    clojure.lang.RT.loadResourceScript (RT.java:381)
    clojure.lang.RT.loadResourceScript (RT.java:372)
    clojure.lang.RT.load (RT.java:463)
    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:408)
    leiningen.core.utils$require_resolve.invokeStatic (utils.clj:102)
    leiningen.core.utils$require_resolve.invoke (utils.clj:95)
    leiningen.core.project$apply_middleware.invokeStatic (project.clj:816)
    leiningen.core.project$apply_middleware.invoke (project.clj:810)
    clojure.lang.ArrayChunk.reduce (ArrayChunk.java:58)
    clojure.core.protocols$fn__8139.invokeStatic (protocols.clj:136)
    clojure.core.protocols/fn (protocols.clj:124)
    clojure.core.protocols$fn__8099$G__8094__8108.invoke (protocols.clj:19)
    clojure.core.protocols$seq_reduce.invokeStatic (protocols.clj:31)
    clojure.core.protocols$fn__8131.invokeStatic (protocols.clj:75)
    clojure.core.protocols/fn (protocols.clj:75)
    clojure.core.protocols$fn__8073$G__8068__8086.invoke (protocols.clj:13)
    clojure.core$reduce.invokeStatic (core.clj:6828)
    clojure.core$reduce.invoke (core.clj:6810)
    leiningen.core.project$apply_middleware.invokeStatic (project.clj:812)
    leiningen.core.project$apply_middleware.invoke (project.clj:810)
    leiningen.core.project$activate_middleware.invokeStatic (project.clj:844)
    leiningen.core.project$activate_middleware.invoke (project.clj:840)
    leiningen.core.project$init_project.invokeStatic (project.clj:986)
    leiningen.core.project$init_project.invoke (project.clj:974)
    leiningen.core.project$read.invokeStatic (project.clj:1057)
    leiningen.core.project$read.invoke (project.clj:1054)
    leiningen.core.project$read.invokeStatic (project.clj:1058)
    leiningen.core.project$read.invoke (project.clj:1054)
    leiningen.core.main$_main$fn__6681.invoke (main.clj:447)
    leiningen.core.main$_main.invokeStatic (main.clj:442)
    leiningen.core.main$_main.doInvoke (main.clj:439)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.lang.Var.applyTo (Var.java:705)
    clojure.core$apply.invokeStatic (core.clj:665)
    clojure.main$main_opt.invokeStatic (main.clj:491)
    clojure.main$main_opt.invoke (main.clj:487)
    clojure.main$main.invokeStatic (main.clj:598)
    clojure.main$main.doInvoke (main.clj:561)
    clojure.lang.RestFn.applyTo (RestFn.java:137)
    clojure.lang.Var.applyTo (Var.java:705)
    clojure.main.main (main.java:37)
caumond commented 4 years ago

+1, exact same configuration

grampelberg commented 4 years ago

Well that's a bummer. I've not been writing much clojure lately but would love a PR if you can get it to work!

caumond commented 4 years ago

I'm not sure to have the knowledge, but I'll have a look as soon as I would have finished the small project I'm late on, (;p Anthony

Le lun. 13 avr. 2020 à 17:18, Thomas Rampelberg notifications@github.com a écrit :

Well that's a bummer. I've not been writing much clojure lately but would love a PR if you can get it to work!

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/grampelberg/lein-autoreload/issues/9#issuecomment-612943850, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACXVSZUJFBU7E5CZBR2IYM3RMMUNLANCNFSM4H3VD5LA .

--

J'ai toujours rêvé d'un ordinateur qui soit aussi facile à utiliser qu'un téléphone. Mon rêve s'est réalisé : je ne sais plus comment utiliser mon téléphone Bjarne Stroustrup - Créateur du langage C++

caumond commented 4 years ago

I spend time on the issue yesterday. That bug disappeared but I changed many things in my configuration. I suspect the issue was caused by bad dependances of toolnamespace, as told in these clojurian-logs discussion. I use lein deps :plugin-tree and lein deps :tree with lein collisions to massively check dependencies now. Since I do that the message disappeared.

Suggest to close the issue.