marginalia
marginalia copied to clipboard
Every 3rd time I run, I get an exception
Every 3rd time or so I run Marginalia on my code, I get the error below. Rerun again, without any changes, and it will work. So it is most likely timing related. What kind of parallel execution is done?
Exception in thread "main" java.lang.IndexOutOfBoundsException, compiling:(C:\Users\mattiasw\AppData\Local\Temp\form-init4034657064461124427.clj:1:111)
at clojure.lang.Compiler.load(Compiler.java:7391)
at clojure.lang.Compiler.loadFile(Compiler.java:7317)
at clojure.main$load_script.invokeStatic(main.clj:275)
at clojure.main$init_opt.invokeStatic(main.clj:277)
at clojure.main$init_opt.invoke(main.clj:277)
at clojure.main$initialize.invokeStatic(main.clj:308)
at clojure.main$null_opt.invokeStatic(main.clj:342)
at clojure.main$null_opt.invoke(main.clj:339)
at clojure.main$main.invokeStatic(main.clj:421)
at clojure.main$main.doInvoke(main.clj:384)
at clojure.lang.RestFn.invoke(RestFn.java:421)
at clojure.lang.Var.invoke(Var.java:383)
at clojure.lang.AFn.applyToHelper(AFn.java:156)
at clojure.lang.Var.applyTo(Var.java:700)
at clojure.main.main(main.java:37)
Caused by: java.lang.IndexOutOfBoundsException
at clojure.lang.RT.subvec(RT.java:1573)
at clojure.core$subvec.invokeStatic(core.clj:3701)
at clojure.core$subvec.invoke(core.clj:3690)
at marginalia.parser$extract_docstring.invokeStatic(parser.clj:306)
at marginalia.parser$extract_docstring.invoke(parser.clj:305)
at marginalia.parser$arrange_in_sections.invokeStatic(parser.clj:371)
at marginalia.parser$arrange_in_sections.invoke(parser.clj:330)
at marginalia.parser$parse.invokeStatic(parser.clj:392)
at marginalia.parser$parse.invoke(parser.clj:380)
at marginalia.parser$parse_file.invokeStatic(parser.clj:418)
at marginalia.parser$parse_file.invoke(parser.clj:415)
at marginalia.core$path_to_doc.invokeStatic(core.clj:177)
at marginalia.core$path_to_doc.invoke(core.clj:175)
at clojure.core$map$fn__4785.invoke(core.clj:2644)
at clojure.lang.LazySeq.sval(LazySeq.java:40)
at clojure.lang.LazySeq.seq(LazySeq.java:49)
at clojure.lang.RT.seq(RT.java:521)
at clojure.core$seq__4357.invokeStatic(core.clj:137)
at clojure.core$map$fn__4785.invoke(core.clj:2637)
at clojure.lang.LazySeq.sval(LazySeq.java:40)
at clojure.lang.LazySeq.seq(LazySeq.java:49)
at clojure.lang.RT.seq(RT.java:521)
at clojure.core$seq__4357.invokeStatic(core.clj:137)
at clojure.core$map$fn__4785.invoke(core.clj:2637)
at clojure.lang.LazySeq.sval(LazySeq.java:40)
at clojure.lang.LazySeq.seq(LazySeq.java:49)
at clojure.lang.RT.seq(RT.java:521)
at clojure.core$seq__4357.invokeStatic(core.clj:137)
at clojure.core$apply.invokeStatic(core.clj:641)
at clojure.core$apply.invoke(core.clj:641)
at marginalia.hiccup$eval54638$fn__54639.invoke(hiccup.clj:99)
at clojure.lang.MultiFn.invoke(MultiFn.java:229)
at clojure.lang.Var.invoke(Var.java:379)
at marginalia.html$toc_html.invokeStatic(html.clj:198)
at marginalia.html$toc_html.invoke(html.clj:197)
at marginalia.html$index_html.invokeStatic(html.clj:419)
at marginalia.html$index_html.invoke(html.clj:413)
at marginalia.core$multidoc_BANG_.invokeStatic(core.clj:190)
at marginalia.core$multidoc_BANG_.invoke(core.clj:187)
at marginalia.core$run_marginalia.invokeStatic(core.clj:310)
at marginalia.core$run_marginalia.doInvoke(core.clj:248)
at clojure.lang.RestFn.invoke(RestFn.java:410)
at user$eval55317.invokeStatic(form-init4034657064461124427.clj:1)
at user$eval55317.invoke(form-init4034657064461124427.clj:1)
at clojure.lang.Compiler.eval(Compiler.java:6927)
at clojure.lang.Compiler.eval(Compiler.java:6917)
at clojure.lang.Compiler.load(Compiler.java:7379)
... 14 more
Subprocess failed
Found the problem and fixed it in my fork:
https://github.com/mattiasw2/marginalia/commit/08bdfed33c0298a4e0e49ecd6c12368d938fe17f
I have not made a pull request yet, do you want my -root extension too?
Please submit a pull request. Thanks @mattiasw2