noir 1.2.1 working with lein-swank 1.3.3, not with 1.3.4
Closed this issue · 5 comments
denlab commented
Hi,
Not sure if I should open this issue in swank-clojure or noir, anyway:
- noir 1.2.1 + swank 1.3.3 OK:
$ cat project.clj
(defproject my-noir-lab "0.1.0-SNAPSHOT"
:description "A web site written with noir"
:dependencies [[org.clojure/clojure "1.3.0"]
[noir "1.2.1"]]
:main my-noir-lab.server)
$ ls ~/.lein/plugins/
lein-foo-0.1.0-SNAPSHOT.jar lein-midje-1.0.7.jar lein-newnew-0.1.2.jar lein-noir-1.2.1.jar swank-clojure-1.3.3.jar
$ rm -rf lib && lein deps && lein swank
Copying 31 files to /home/denis/Dropbox/project/my-noir-lab/lib
Connection opened on localhost port 4005.
- But noir 1.2.1 with swank 1.3.4 KO:
$ lein plugin install swank-clojure 1.3.4
[INFO] Unable to find resource 'swank-clojure:swank-clojure:jar:1.3.4' in repository central (http://repo1.maven.org/maven2)
Installing shell wrapper to /home/denis/.lein/bin/swank-clojure
Copying 2 files to /tmp/lein-4306a37c-5de2-4922-8f42-2ba47cb551a6/lib
Including swank-clojure-1.3.4.jar
Including clojure-1.2.1.jar
Including clj-stacktrace-0.2.4.jar
Created swank-clojure-1.3.4.jar
$ rm -rf lib && lein deps && lein swank
Copying 31 files to /home/denis/Dropbox/project/my-noir-lab/lib
Exception in thread "main" java.lang.RuntimeException: Unable to resolve symbol: pst-elem-str in this context, compiling:(swank/core.clj:128)
at clojure.lang.Compiler.analyze(Compiler.java:6235)
at clojure.lang.Compiler.analyze(Compiler.java:6177)
at clojure.lang.Compiler$InvokeExpr.parse(Compiler.java:3452)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6411)
at clojure.lang.Compiler.analyze(Compiler.java:6216)
at clojure.lang.Compiler.analyze(Compiler.java:6177)
at clojure.lang.Compiler$BodyExpr$Parser.parse(Compiler.java:5572)
at clojure.lang.Compiler$FnMethod.parse(Compiler.java:5008)
at clojure.lang.Compiler$FnExpr.parse(Compiler.java:3629)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6407)
at clojure.lang.Compiler.analyze(Compiler.java:6216)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6397)
at clojure.lang.Compiler.analyze(Compiler.java:6216)
at clojure.lang.Compiler.access$100(Compiler.java:37)
at clojure.lang.Compiler$DefExpr$Parser.parse(Compiler.java:492)
at clojure.lang.Compiler.analyzeSeq(Compiler.java:6409)
at clojure.lang.Compiler.analyze(Compiler.java:6216)
at clojure.lang.Compiler.analyze(Compiler.java:6177)
at clojure.lang.Compiler.eval(Compiler.java:6469)
at clojure.lang.Compiler.load(Compiler.java:6902)
at clojure.lang.RT.loadResourceScript(RT.java:357)
at clojure.lang.RT.loadResourceScript(RT.java:348)
at clojure.lang.RT.load(RT.java:427)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5271)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:604)
at clojure.core$use.doInvoke(core.clj:5363)
at clojure.lang.RestFn.invoke(RestFn.java:512)
at swank.swank$eval40$loading__4505__auto____41.invoke(swank.clj:1)
at swank.swank$eval40.invoke(swank.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:6465)
at clojure.lang.Compiler.eval(Compiler.java:6455)
at clojure.lang.Compiler.load(Compiler.java:6902)
at clojure.lang.RT.loadResourceScript(RT.java:357)
at clojure.lang.RT.loadResourceScript(RT.java:348)
at clojure.lang.RT.load(RT.java:427)
at clojure.lang.RT.load(RT.java:398)
at clojure.core$load$fn__4610.invoke(core.clj:5386)
at clojure.core$load.doInvoke(core.clj:5385)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.core$load_one.invoke(core.clj:5200)
at clojure.core$load_lib.doInvoke(core.clj:5237)
at clojure.lang.RestFn.applyTo(RestFn.java:142)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$load_libs.doInvoke(core.clj:5271)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invoke(core.clj:602)
at clojure.core$require.doInvoke(core.clj:5352)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at user$eval27.invoke(NO_SOURCE_FILE:1)
at clojure.lang.Compiler.eval(Compiler.java:6465)
at clojure.lang.Compiler.eval(Compiler.java:6455)
at clojure.lang.Compiler.eval(Compiler.java:6431)
at clojure.core$eval.invoke(core.clj:2795)
at clojure.main$eval_opt.invoke(main.clj:296)
at clojure.main$initialize.invoke(main.clj:315)
at clojure.main$null_opt.invoke(main.clj:348)
at clojure.main$main.doInvoke(main.clj:426)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:405)
at clojure.lang.AFn.applyToHelper(AFn.java:163)
at clojure.lang.Var.applyTo(Var.java:518)
at clojure.main.main(main.java:37)
Caused by: java.lang.RuntimeException: Unable to resolve symbol: pst-elem-str in this context
at clojure.lang.Util.runtimeException(Util.java:156)
at clojure.lang.Compiler.resolveIn(Compiler.java:6720)
at clojure.lang.Compiler.resolve(Compiler.java:6664)
at clojure.lang.Compiler.analyzeSymbol(Compiler.java:6625)
at clojure.lang.Compiler.analyze(Compiler.java:6198)
... 70 more
Regards,
Denis
ibdknox commented
This is a result of a version mismatch for clj-stacktrace with swank. Noir 1.3.0-alpha4 fixes it.
technomancy commented
You should be able to declare an explicit dependency upon the latest clj-stacktrace as a workaround in the mean time.
denlab commented
swank-clojure-1.3.4.jar + noir-1.2.1 are working fine together with this workaround:
$ ls ~/.lein/plugins/
lein-midje-1.0.7.jar swank-clojure-1.3.4.jar
(defproject my-noir-lab "0.1.0-SNAPSHOT"
:description "A web site written with noir"
:dependencies [[org.clojure/clojure "1.3.0"]
[noir "1.2.1"]
;; workaround for https://github.com/ibdknox/noir/issues/76
[clj-stacktrace "0.2.4"]]
:main my-noir-lab.server)
ibdknox commented
unrelatedly, you should definitely upgrade to 1.2.2 :)
denlab commented
I'll sure do that