Hi Baishampayan, I got such errors when I first started working on the patch; they were caused by the compiler using print-dup'd strings to create namespaces instead of emitting bytecode (which the patched build includes). Is it possible that you have both an org.clojure/clojure jar and the patched com.cemerick/clojure jar on your classpath?
FWIW, such metadata happens to exist in some nREPL namespaces, and some of my projects as well, so I presume that that's not the actual problem. Just out of curiosity, do things work well if you use e.g. inferior-lisp or ritz? Thanks for testing! - Chas On Feb 1, 2013, at 11:10 PM, Baishampayan Ghose wrote: > Just did some testing with our code-base and Clojure 1.5.0-RC4 (with > and without Chas' read-eval patch). > > There is definitely something strange going on. Things worked just > fine with 1.5.0-RC4 but with the read-eval patch `lein swank` is > completely broken but more than that, our code is failing to compile > with this weird error - > > eval-reader: (clojure.lang.PersistentArrayMap/create {:author "Joe Dev > <j...@helpshift.com>", :doc "Some doc here."}) > RuntimeException EvalReader not allowed when *read-eval* is false. > clojure.lang.Util.runtimeException (Util.java:219) > > Almost all our namespaces have documentation attached via metadata like this - > > (ns ^{:doc "Some doc here." > :author "Joe Dev <j...@helpshift.com>"} > com.helpshift.some.ns > (:require [com.helpshift.other.ns :as chon]) > (:use clojure.test > midje.sweet)) > > FWIW, the file that will fail to compile is random and I couldn't > reproduce this error on a fresh project with just a couple of files. > > It's quite clear that the eval-reader is getting used from inside > Clojure and we need to test out the edge cases a bit more. > > This is clearly not a low-impact fix, but IMHO we should take the time > and get it right before 1.5.0 > > Regards, > BG > > > On Sat, Feb 2, 2013 at 4:01 AM, Chas Emerick <c...@cemerick.com> wrote: >> I have added a patch to CLJ-1153 that appears to address the *read-eval* >> problem: >> >> http://dev.clojure.org/jira/browse/CLJ-1153?focusedCommentId=30523#comment-30523 >> >> code on github: >> https://github.com/cemerick/clojure/commit/1f5c19c07443d2535ede4ff71d23b40c195d617f >> >> artifact on Clojars: [com.cemerick/clojure "1.5.0-SNAPSHOT"] >> >> The Leiningen dependency above is 1.5.0-RC4 + the patch on the ticket. Note >> that you'll need to set your project's global :exclusions to >> [org.clojure/clojure] in order for the com.cemerick/clojure artifact to >> supersede it. >> >> It tests well for me, but needs to be exercised as much as possible. Some >> have already done so (there's an ongoing discussion on the clojure-dev ML >> with some initial test experiences: >> http://groups.google.com/group/clojure-dev/browse_frm/thread/cc6f747919db6c94), >> but I'm hoping that we can get as many eyes as possible on this — doing >> both testing as well as code/patch examination — so as to ensure correctness >> and maximize the chances of 1.5.0 final going out with this vulnerability >> buttoned up. >> >> Thanks, >> >> - Chas >> >> -- >> -- >> You received this message because you are subscribed to the Google >> Groups "Clojure" group. >> To post to this group, send email to clojure@googlegroups.com >> Note that posts from new members are moderated - please be patient with your >> first post. >> To unsubscribe from this group, send email to >> clojure+unsubscr...@googlegroups.com >> For more options, visit this group at >> http://groups.google.com/group/clojure?hl=en >> --- >> You received this message because you are subscribed to the Google Groups >> "Clojure" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to clojure+unsubscr...@googlegroups.com. >> For more options, visit https://groups.google.com/groups/opt_out. >> >> > > > > -- > Baishampayan Ghose > b.ghose at gmail.com > > -- > -- > You received this message because you are subscribed to the Google > Groups "Clojure" group. > To post to this group, send email to clojure@googlegroups.com > Note that posts from new members are moderated - please be patient with your > first post. > To unsubscribe from this group, send email to > clojure+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/clojure?hl=en > --- > You received this message because you are subscribed to the Google Groups > "Clojure" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojure+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. > > -- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.