Fork me on GitHub
#boot
<
2016-02-15
>
samedhi01:02:35

I am getting

ERROR: Unhandled REPL handler exception processing message {:op init-debugger, :print-level 10, :print-length 10, :session f10681b1-e8f4-48c6-bbc9-869f5ec1d54a, :id 7}
java.lang.IllegalStateException: Can't set!: *data-readers* from non-binding thread
whenever I cider-connect from emacs?

samedhi01:02:49

I am not using Datomic, but it seems to be the same error.

laforge4903:02:19

Your can't Set! error looks like a thread binding issue. I assume you are using .clj? The problem is that data-readers was not bound on the thread you were trying to Set! on. To make a wild guess, you may be trying to use thread-local variables in a situation where the binding can not be thread-specific?

laforge4903:02:43

@samedhi Because of the h* * notation, I assume you have a dynamic variable. See http://clojure.org/reference/vars

mobileink03:02:37

Hi folks. Since it is by no means obvious (at least to me) how to (effectively) use the built-in tasks I started adding some simple examples at https://github.com/boot-clj/boot/wiki/Built-in-Tasks. I think it would be very helpful to newcomers to have a bunch of such examples.

jannis13:02:59

Hi. I'm getting funny new errors running boot 2.5.5: Assert failed: The :source-paths, :resource-paths, and :asset-paths must not overlap.. This is as soon as I try to define :source-paths. If I define none of them it's ok (well, except the paths aren't defined) but as soon as I add :source-paths #{"src/main"} it fails.

martinklepsch13:02:15

@jannis: bootlaces sets resource-paths to src so that could cause this kind of thing

jannis13:02:01

Ah! Indeed, I'm using bootlaces.

martinklepsch13:02:50

you can pass a :dont-modify-paths? thing if you want to keep bootlaces around

jannis13:02:32

@martinklepsch: Yep, already found out about that. Cool simple_smile

jannis13:02:42

All good now

amonks20:02:02

I know I can send forms from an editor to a repl, but what about the reverse? If I repl up a function I really like, can I say “ok now drop this function into the source code for this namespace”?

amonks20:02:12

would that even be useful?

akiva20:02:23

Copy-and-paste is the way to go. If you’re using Smartparens in Emacs/Spacemacs, you can just hit CTRL-OPTION-w and it’ll copy an entire form

amonks20:02:50

fair enough

richiardiandrea20:02:08

but @amonks it is a useful idea for cider's guys!

akiva20:02:58

@richiardiandrea, I suppose but Emacs doesn’t show cursors in non-active windows so you’d never be quite certain where’d it pop over to.

akiva20:02:22

Wait, no I’m totally wrong.

akiva20:02:38

It shows hollow cursors.

richiardiandrea20:02:22

you could send symbol from the repl, meaning, given a symbol, fetch the source and materialize a function in my code buffer simple_smile

akiva20:02:14

What I do is craft functions, et. al, and send-and-eval-to-repl repeatedly rather than write then in the REPL and then insert into code.

amonks20:02:47

I usually do the reverse, but I feel like your approach makes more sense

richiardiandrea20:02:06

but everybody is different 😄

meow20:02:25

And perfectly okay.

amonks20:02:18

convention around development practices can be good! especially for tooling!

amonks20:02:31

there are many ways to send code to a repl from an editor, few ways to do the reverse

amonks20:02:42

adopting the approach that other ppl use will make my life better

akiva20:02:59

As long as that approach works for you.

richiardiandrea20:02:37

for example I don't evaluate inline, I prefer to see the thing I am evaluating in the repl

akiva20:02:31

Yeah. that’s been my style, too, but I’m trying to get into CIDER’s debugging. It’s kind of flaky currently in Spacemacs though.

richiardiandrea20:02:09

cider has added a new more for debugging that it's awesome!

richiardiandrea20:02:52

cider-enlighten-mode or something

akiva20:02:22

Yeah. I just need to do the extra tooling to get away from losing all local variables when reloading namespaces.

richiardiandrea20:02:05

yeah, that bugs me as well, i put all the things I need in a comment and just re-eval one by one

akiva20:02:39

Yeah. But system, I think takes are of that.

akiva20:02:43

I just need to go yak shaving.

richiardiandrea21:02:53

yes true that, but I was more thinking of things you need for a smaller part, not system related, maybe some test data for a function

akiva21:02:24

Yeah. I just know that the namespace reloading is smarter. Sometimes cider-refresh blows away local defs and requires; sometimes it doesn’t.

jannis22:02:16

Is anyone else having issues with boot test requiring 4GB+ of memory?