I recently decided to try out devcards. I got an error because my
ancient java version is no longer supported. I've been meaning to
upgrade that dev environment, so I went ahead and bumped it from
ubuntu 14.04 to 16.04.
Once that was finished, I went back to my experimental devcards
project to try again.
`lein check` ran fine, but `lein repl` led to a stack trace caused by
"java.lang.IllegalArgumentException: Malformed assignment, expecting
(set! target val)"
The problem happened when it tried to compile
/tmp/form-init${long-number}.clj:1:7567.
Trying to google for that error just led me to the basic compiler
code. Something is trying to call the set! special form without two
arguments.
OK, fine. I'd started from a figwheel project template and tweaked
some things like dependency versions (the biggest change was switching
clojure from 1.8.0 to 1.9.0-alpha12). So I generated a fresh
plain-jane vanilla `lein new devcards foo` project. It looks like this
was just updated today, so I may be comparing apples to oranges.
Except that had the same problem.
So I grabbed the file in /tmp/ to examine. There aren't many calls to set!.
The one it's complaining about is
`(set! *print-length* 50 do (clojure.core/require (quote
whidbey.repl)) (whidbey.repl/init! {:whidbey-options "from my
profiles.clj"}))`
In ~/.lein/profiles.clj, under user, I have a :repl-options key which
has the value {:nrepl-middleware []}. (That needs to go away,
obviously).
Then there's a :whidbey key, with the values that were injected into
that broken (set!) call.
The "problem line" is inside the project.clj that was generated by the
devcards/figwheel templates:
:profiles {:dev {:repl-options {:init (set! *print-length* 50)}}}
If I just delete that option, the REPL starts fine. I haven't done any
experimentation beyond that point.
Does this seem extremely odd to anyone else? And does anyone have any
thoughts about what the real underlying problem might be? Or even
suggestions about useful experiments I could try to narrow the problem
down?
Thanks,
James
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
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 [email protected].
For more options, visit https://groups.google.com/d/optout.