fogus/marginalia — Issue #74: Runtime exception but where to start debugging?
Author: claj
Created: 2011-12-13 23:02:48+00:00
State: open

Two projects have "rot" for me in the sense I cannot run "lein marg" any longer, and it does not give a very clever error message either.

The error I get is the following:

$ lein marg
Generating uberdoc for the following source files:
/Users/linus/Documents/code/dspanel/rulator/./src/clojure/contrib/zip_filter/xml.clj
/Users/linus/Documents/code/dspanel/rulator/./src/clojure/contrib/zip_filter.clj
/Users/linus/Documents/code/dspanel/rulator/./src/rulator/email.clj
/Users/linus/Documents/code/dspanel/rulator/./src/rulator/models/rules.clj
/Users/linus/Documents/code/dspanel/rulator/./src/rulator/models/user.clj
/Users/linus/Documents/code/dspanel/rulator/./src/rulator/server.clj
/Users/linus/Documents/code/dspanel/rulator/./src/rulator/views/common.clj
/Users/linus/Documents/code/dspanel/rulator/./src/rulator/views/editor.clj

Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.ClassCastException: clojure.lang.PersistentList cannot be cast to clojure.lang.Named (NO_SOURCE_FILE:0)
at clojure.lang.Compiler.eval(Compiler.java:5440)
at clojure.lang.Compiler.eval(Compiler.java:5391)
at clojure.core$eval.invoke(core.clj:2382)
at clojure.main$eval_opt.invoke(main.clj:235)
at clojure.main$initialize.invoke(main.clj:254)
at clojure.main$script_opt.invoke(main.clj:270)
at clojure.main$main.doInvoke(main.clj:354)
at clojure.lang.RestFn.invoke(RestFn.java:457)
at clojure.lang.Var.invoke(Var.java:377)
at clojure.lang.AFn.applyToHelper(AFn.java:172)
at clojure.lang.Var.applyTo(Var.java:482)
at clojure.main.main(main.java:37)
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.ClassCastException: clojure.lang.PersistentList cannot be cast to clojure.lang.Named
at clojure.lang.LazySeq.sval(LazySeq.java:47)
at clojure.lang.LazySeq.seq(LazySeq.java:56)
at clojure.lang.RT.seq(RT.java:450)
at clojure.core$seq.invoke(core.clj:122)
at clojure.core$apply.invoke(core.clj:540)
at hiccup.core$render_html.invoke(core.clj:107)
at clojure.lang.Var.invoke(Var.java:365)
at marginalia.html$toc_html.invoke(html.clj:178)
at marginalia.html$uberdoc_html.invoke(html.clj:390)
at marginalia.core$uberdoc_BANG_.invoke(core.clj:183)
at marginalia.core$run_marginalia.invoke(core.clj:235)
at leiningen.marg$marg.doInvoke(marg.clj:8)
at clojure.lang.RestFn.invoke(RestFn.java:410)
at clojure.lang.Var.invoke(Var.java:365)
at clojure.lang.AFn.applyToHelper(AFn.java:161)
at clojure.lang.Var.applyTo(Var.java:482)
at clojure.core$apply.invoke(core.clj:542)
at leiningen.core$apply_task.invoke(core.clj:228)
at leiningen.core$_main.doInvoke(core.clj:294)
at clojure.lang.RestFn.invoke(RestFn.java:410)
at clojure.lang.AFn.applyToHelper(AFn.java:161)
at clojure.lang.RestFn.applyTo(RestFn.java:132)
at clojure.core$apply.invoke(core.clj:542)
at leiningen.core$_main.invoke(core.clj:297)
at user$eval42.invoke(NO_SOURCE_FILE:1)
at clojure.lang.Compiler.eval(Compiler.java:5424)
... 11 more
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: java.lang.ClassCastException: clojure.lang.PersistentList cannot be cast to clojure.lang.Named
at clojure.lang.LazySeq.sval(LazySeq.java:47)
at clojure.lang.LazySeq.seq(LazySeq.java:56)
at clojure.lang.RT.seq(RT.java:450)
at clojure.core$seq.invoke(core.clj:122)
at clojure.core$map$fn__3699.invoke(core.clj:2088)
at clojure.lang.LazySeq.sval(LazySeq.java:42)
... 36 more
Caused by: java.lang.RuntimeException: java.lang.ClassCastException: clojure.lang.PersistentList cannot be cast to clojure.lang.Named
at clojure.lang.LazySeq.sval(LazySeq.java:47)
at clojure.lang.LazySeq.seq(LazySeq.java:56)
at clojure.lang.RT.seq(RT.java:450)
at clojure.core$seq.invoke(core.clj:122)
at clojure.core$map$fn__3699.invoke(core.clj:2088)
at clojure.lang.LazySeq.sval(LazySeq.java:42)
... 41 more
Caused by: java.lang.ClassCastException: clojure.lang.PersistentList cannot be cast to clojure.lang.Named
at clojure.core$name.invoke(core.clj:1245)
at marginalia.parser$fn__83.invoke(parser.clj:183)
at clojure.lang.MultiFn.invoke(MultiFn.java:172)
at marginalia.parser$dispatch_inner_form$fn__77.invoke(parser.clj:164)
at clojure.core$r.invoke(core.clj:799)
at marginalia.parser$dispatch_inner_form.invoke(parser.clj:162)
at marginalia.parser$fn__83.invoke(parser.clj:185)
at clojure.lang.MultiFn.invoke(MultiFn.java:172)
at marginalia.parser$dispatch_inner_form$fn__77.invoke(parser.clj:164)
at clojure.core$r.invoke(core.clj:799)
at marginalia.parser$dispatch_inner_form.invoke(parser.clj:162)
at marginalia.parser$fn__83.invoke(parser.clj:185)
at clojure.lang.MultiFn.invoke(MultiFn.java:172)
at marginalia.parser$dispatch_inner_form$fn__77.invoke(parser.clj:164)
at clojure.core$r.invoke(core.clj:799)
at marginalia.parser$dispatch_inner_form.invoke(parser.clj:162)
at marginalia.parser$fn__83.invoke(parser.clj:185)
at clojure.lang.MultiFn.invoke(MultiFn.java:172)
at marginalia.parser$dispatch_inner_form$fn__77.invoke(parser.clj:164)
at clojure.core$r.invoke(core.clj:799)
at marginalia.parser$dispatch_inner_form.invoke(parser.clj:162)
at marginalia.parser$fn__83.invoke(parser.clj:185)
at clojure.lang.MultiFn.invoke(MultiFn.java:172)
at marginalia.parser$dispatch_inner_form$fn__77.invoke(parser.clj:164)
at clojure.core$r.invoke(core.clj:799)
at marginalia.parser$dispatch_inner_form.invoke(parser.clj:162)
at marginalia.parser$fn__83.invoke(parser.clj:185)
at clojure.lang.MultiFn.invoke(MultiFn.java:172)
at marginalia.parser$extract_docstring.invoke(parser.clj:190)
at marginalia.parser$arrange_in_sections.invoke(parser.clj:251)
at marginalia.parser$parse.invoke(parser.clj:270)
at marginalia.parser$parse_file.invoke(parser.clj:276)
at marginalia.core$path_to_doc.invoke(core.clj:164)
at clojure.core$map$fn__3699.invoke(core.clj:2096)
at clojure.lang.LazySeq.sval(LazySeq.java:42)
... 46 more

Where do I start debugging that? Or rather, would it be possible for marginalia to print in which file it got into problems?