arachne-framework / arachne-core

The core module for the Arachne web framework
Other
165 stars 13 forks source link

Build fails: clojure.lang.ExceptionInfo: Call to clojure.core/ns did not conform to spec. #35

Closed bheesham closed 7 years ago

bheesham commented 7 years ago

I followed the instructions on the wiki and was thrown the following stack trace:

$ lein repl
Retrieving org/arachne-framework/arachne-core/0.1.0-master-0081-0ab2073/arachne-core-0.1.0-master-0081-0ab2073.pom from arachne-dev
Retrieving io/pedestal/pedestal.log/0.5.2/pedestal.log-0.5.2.pom from clojars
Retrieving org/slf4j/slf4j-api/1.7.22/slf4j-api-1.7.22.pom from central
Retrieving org/slf4j/slf4j-parent/1.7.22/slf4j-parent-1.7.22.pom from central
Retrieving aysylu/loom/0.5.4/loom-0.5.4.pom from clojars
Retrieving io/aviso/pretty/0.1.30/pretty-0.1.30.pom from clojars
Retrieving datascript/datascript/0.15.5/datascript-0.15.5.pom from clojars
Retrieving aysylu/loom/0.5.4/loom-0.5.4.jar from clojars
Retrieving io/pedestal/pedestal.log/0.5.2/pedestal.log-0.5.2.jar from clojars
Retrieving datascript/datascript/0.15.5/datascript-0.15.5.jar from clojars
Retrieving org/arachne-framework/arachne-core/0.1.0-master-0081-0ab2073/arachne-core-0.1.0-master-0081-0ab2073.jar from arachne-dev
WARNING: boolean? already refers to: #'clojure.core/boolean? in namespace: mranderson047.toolsanalyzerjvm.v0v6v9.toolsanalyzer.v0v6v7.clojure.tools.analyzer.utils, being replaced by: #'mranderson047.toolsanalyzerjvm.v0v6v9.toolsanalyzer.v0v6v7.clojure.tools.analyzer.utils/boolean?
WARNING: boolean? already refers to: #'clojure.core/boolean? in namespace: mranderson047.toolsanalyzerjvm.v0v6v9.toolsanalyzer.v0v6v7.clojure.tools.analyzer, being replaced by: #'mranderson047.toolsanalyzerjvm.v0v6v9.toolsanalyzer.v0v6v7.clojure.tools.analyzer.utils/boolean?
Exception in thread "main" clojure.lang.ExceptionInfo: Call to clojure.core/ns did not conform to spec:
In: [2] val: ((require [clojure.pprint :as pp] [clojure.string :as str] [clj-time.core :as time] [clj-time.format :as fmt])) fails at: [:args]predicate: (cat :attr-map (? map?) :clauses :clojure.core.specs/ns-clauses),  Extra input
:clojure.spec/args  (spyscope.core "This co" (require [clojure.pprint :as pp] [clojure.string :as str] [clj-time.core :as time] [clj-time.format :as fmt]))
 #:clojure.spec{:problems [{:path [:args], :reason "Extra input", :pred (cat :attr-map (? map?) :clauses :clojure.core.specs/ns-clauses), :val((require [clojure.pprint :as pp] [clojure.string :as str] [clj-time.core :as time] [clj-time.format :as fmt])), :via [], :in [2]}], :args (spyscope.core "This co" (require [clojure.pprint :as pp] [clojure.string :a
s str] [clj-time.core :as time] [clj-time.format :as fmt]))}, compiling:(spyscope/core.clj:1:1)
        at clojure.lang.Compiler.load(Compiler.java:7442)
        at clojure.lang.RT.loadResourceScript(RT.java:374)
        at clojure.lang.RT.loadResourceScript(RT.java:365)
        at clojure.lang.RT.load(RT.java:455)
        at clojure.lang.RT.load(RT.java:421)
        at clojure.core$load$fn__7846.invoke(core.clj:6008)
        at clojure.core$load.invokeStatic(core.clj:6007)
        at clojure.core$load.doInvoke(core.clj:5991)
        at clojure.lang.RestFn.invoke(RestFn.java:408)
        at clojure.core$load_one.invokeStatic(core.clj:5812)
        at clojure.core$load_one.invoke(core.clj:5807)
        at clojure.core$load_lib$fn__7791.invoke(core.clj:5852)
        at clojure.core$load_lib.invokeStatic(core.clj:5851)
        at clojure.core$load_lib.doInvoke(core.clj:5832)
        at clojure.lang.RestFn.applyTo(RestFn.java:142)
        at clojure.core$apply.invokeStatic(core.clj:659)
        at clojure.core$load_libs.invokeStatic(core.clj:5889)
        at clojure.core$load_libs.doInvoke(core.clj:5873)
        at clojure.lang.RestFn.applyTo(RestFn.java:137)
        at clojure.core$apply.invokeStatic(core.clj:659)
        at clojure.core$require.invokeStatic(core.clj:5911)
        at clojure.core$require.doInvoke(core.clj:5911)
        at clojure.lang.RestFn.invoke(RestFn.java:408)
        at user$eval21173.invokeStatic(form-init7375455347351400917.clj:1)
        at user$eval21173.invoke(form-init7375455347351400917.clj:1)
        at clojure.lang.Compiler.eval(Compiler.java:6978)
        at clojure.lang.Compiler.eval(Compiler.java:6967)
        at clojure.lang.Compiler.load(Compiler.java:7430)
        at clojure.lang.Compiler.loadFile(Compiler.java:7368)
        at clojure.main$load_script.invokeStatic(main.clj:277)
        at clojure.main$init_opt.invokeStatic(main.clj:279)
        at clojure.main$init_opt.invoke(main.clj:279)
        at clojure.main$initialize.invokeStatic(main.clj:310)
        at clojure.main$null_opt.invokeStatic(main.clj:344)
        at clojure.main$null_opt.invoke(main.clj:341)
        at clojure.main$main.invokeStatic(main.clj:423)
        at clojure.main$main.doInvoke(main.clj:386)
        at clojure.lang.RestFn.applyTo(RestFn.java:137)
        at clojure.lang.Var.applyTo(Var.java:700)
        at clojure.main.main(main.java:37)
Caused by: clojure.lang.ExceptionInfo: Call to clojure.core/ns did not conform to spec:
In: [2] val: ((require [clojure.pprint :as pp] [clojure.string :as str] [clj-time.core :as time] [clj-time.format :as fmt])) fails at: [:args]predicate: (cat :attr-map (? map?) :clauses :clojure.core.specs/ns-clauses),  Extra input
:clojure.spec/args  (spyscope.core "This co" (require [clojure.pprint :as pp] [clojure.string :as str] [clj-time.core :as time] [clj-time.format :as fmt]))
 {:clojure.spec/problems [{:path [:args], :reason "Extra input", :pred (cat :attr-map (? map?) :clauses :clojure.core.specs/ns-clauses), :val ((require [clojure.pprint :as pp] [clojure.string :as str] [clj-time.core :as time] [clj-time.format :as fmt])), :via [], :in [2]}], :clojure.spec/args (spyscope.core "This co" (require [clojure.pprint :as pp] [cloj
ure.string :as str] [clj-time.core :as time] [clj-time.format :as fmt]))}
        at clojure.core$ex_info.invokeStatic(core.clj:4725)
        at clojure.spec$macroexpand_check.invokeStatic(spec.clj:681)
        at clojure.spec$macroexpand_check.invoke(spec.clj:670)
        at clojure.lang.AFn.applyToHelper(AFn.java:156)
        at clojure.lang.AFn.applyTo(AFn.java:144)
        at clojure.lang.Var.applyTo(Var.java:700)
        at clojure.lang.Compiler.macroexpand1(Compiler.java:6816)
        at clojure.lang.Compiler.macroexpand(Compiler.java:6888)
        at clojure.lang.Compiler.eval(Compiler.java:6962)
        at clojure.lang.Compiler.load(Compiler.java:7430)
        ... 39 more

This may be a bug in the documentation?

Lein version: Leiningen 2.5.2 on Java 1.8.0_102 Java HotSpot(TM) 64-Bit Server VM Clojure: 1.9.0-alpha14 Arachne Core: 0.1.0-master-0081-0ab2073 Project files: https://github.com/bheesham/ui

madstap commented 7 years ago

Seems to be some dependency that has a malformed ns form. When I clone you project I can run it just fine. Probably something in your ~/.lein/profiles.clj . Try to make an empty project using clojure 1.9.0-alpha12 or higher and see if it compiles.

levand commented 7 years ago

Yes, this type of error always indicates that somehow, something got required which hasn't been updated to be compatible with Clojure 1.9. It looks like something called spyscope, given that stack trace.

Since the project itself has no such dependencies, ~/.lein/profiles.clj is your likely culprit as @madstap says.

bheesham commented 7 years ago

Embarrassing.

Anyways, thanks for the help!