This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2015-06-11
Channels
- # admin-announcements (96)
- # beginners (102)
- # boot (51)
- # clojure (234)
- # clojure-art (1)
- # clojure-berlin (6)
- # clojure-brasil (1)
- # clojure-china (1)
- # clojure-germany (24)
- # clojure-italy (25)
- # clojure-japan (22)
- # clojure-russia (85)
- # clojure-sg (3)
- # clojure-spain (6)
- # clojure-uk (7)
- # clojure-ukraine (3)
- # clojurescript (108)
- # code-reviews (11)
- # core-typed (3)
- # datomic (6)
- # docs (13)
- # editors (121)
- # euroclojure (10)
- # events (2)
- # jobs (7)
- # ldnclj (77)
- # off-topic (27)
- # reading-clojure (8)
- # reagent (27)
- # robots (2)
- # slack-help (22)
@alandipert: good to see you.
So, a fresh checkout of https://github.com/adzerk-oss/boot-cljs-example followed by "boot dev" results in an error
Compiling cljs_test_node_runner.js...
Compiling boot-cljs-main.js...
java.io.IOException: Cannot run program "node": CreateProcess error=2, The system cannot find the file specified
java.io.IOException: CreateProcess error=2, The system cannot find the file specified
@danielsz: Right, so is there a way to define that as a dependency and have boot install it?
@danielsz: I can also "fix" things by not using the test runner. I'm really just looking at example boot files for use with my cljs/om projects.
and of a simpler one yet: https://github.com/danielsz/system/tree/master/examples/boot
@danielsz: I did look at your projects briefly. But that was yesterday. Will look again because boot is now making more sense to me.
At the same time, it isn't terribly newbie-friendly to have a boot example that fails with a not-too-terribly helpful error message, doncha think?
I keep stumbling over these little things on my way to groking boot and it's kind of frustrating and time-consuming.
there's already a lot of improvements in documentation, but then a gaping hole appears or reappears
Is there a way to define node as a dependency and have boot install it so that boot-cljs-test/node-runner doesn't fail?
In this particular case it probably makes more sense to shell out and use the node binary.
Boot ecosystem is still pretty new so you might expect such scenario. A github issue with suggestions is a nice way to move things forward.
@jeluard: I'm not really sure. I'm working on cljs and learning boot and went looking for examples. The example I found failed when run as "boot dev". I figured someone might want to know, since the failure isn't immediately obvious, comes from another project (https://github.com/boot-cljs-test/node-runner), and, ironically enough, has to do with managing a dependency. As for my personal use, I don't really need a test runner at this point so I can work around it. I was just trying to track it down further to be helpful. If node.js has to be installed independently then a better error message would help, as would mention of that fact on the readme files for the example project and the test runner.
Maybe 2 different issues then: the example should not fail in this case but just skip tests execution.
Add some extra irony for the fact that the failure is in a test runner. Does anyone but me see the extreme and absurd humor in all of this?
@jeluard: The simplest solution is to remove the use of the test runner from the pipeline in the example since it isn't even talked about on the home page and isn't necessary. Of course, that's also just sweeping the problem under the rug because having automated unit testing as part of the dev pipeline would be a good thing to have and ought to work.
(deftask dev []
(set-env! :source-paths #{"src" "test"})
(comp (serve :dir "target/")
(watch)
(speak)
(reload :on-jsload 'app.core/main)
(cljs-repl)
#_(cljs-test-node-runner :namespaces '[app.test])
(cljs :source-map true :optimizations :none)
#_(run-cljs-test)))
But as you can see, someone put those there on purpose so I would think they would want them to work. 😉
@jeluard: I haven't installed node. Do I need to install node? Is there no way for boot to manage that dependency?
Not with current implementation of node-runner. Node is a complete binary so the current approach looks good to me.
@jeluard: I see you beat me to it: https://github.com/boot-cljs-test/node-runner/issues/1