This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
hi @alandipert, I saw
inject task you created(https://github.com/tailrecursion/hoplon.io/blob/master/build.boot#L40). Maybe you can extract it into separate library? This way it can be used from perun too. I think it would be pretty useful. Just an idea
Adding the following to my boot-reloaded app causes an error:
(let [history (History.)] (events/listen history EventType.NAVIGATE (fn [e] (js/console.log "hmm"))))
Failed to execute 'write' on 'Document': It isn't possible to write into a document from an asynchronously-loaded external script unless it is explicitly opened.
@martinklepsch: thanks for the pointers - I'm a bit confused where I should put -vvv, it's the
boot repl -c then (start-repl) which is causing me that error, not the running the server repl.
@martinklepsch: ah, actually I've found it thanks to your comment - you're right,
boot show -d showed me kioo was bringing in its own piggyback - thanks so much for your help, that makes complete sense
I'm guess that running things in a pod doesn't exclude the system deps that are coming in (because that's how java classloaders work), so you have to be careful in your build.boot deps list
one remaining question I have is whether there's a boot equivalent of lein's exclusions feature
:dependencies syntax is the same as leiningens' -- you can do
[kioo "1.2.3" :exclusions [com.cemerick/piggyback]]
there is also a global
:exclusions key in the env that will apply this to all dependencies
@malcolmsparks: Pods help isolating dependencies. If you look at the sources of the cljs-repl task a new pod (=isolated clojure runtime) is created with all required dependencies. If the user however decides to pin one of these deps themselves they are used as specified by the user. (https://github.com/adzerk-oss/boot-cljs-repl/blob/master/src/adzerk/boot_cljs_repl.clj#L18)
In the case of kioo I think its cljx that brings in piggieback. I’ve previously had confusing experiences with leiningen’s scoping of development dependencies but can’t find a related ticket right now.
@malcolmsparks: would be interesting to see the output of
boot show -d for your project
@malcolmsparks: oh and re
-vvv that’s an option to boot itself so just pass it like
boot -vvv repl -c (means verbose level 3 which is maximum iirc)
I’m starting to think it would make sense to completely split the client side code from the backend and just provide an api via websockets that can be used to show warnings/errors etc