bensu / doo

doo is a library and lein plugin to run cljs.test on different js environments.
Eclipse Public License 1.0
324 stars 63 forks source link

Remove exit(1) in onError for headless runner #82

Closed arichiardi closed 8 years ago

arichiardi commented 8 years ago

This removes the exit in headless.js -> onError.

I met another weird case were this warning is actually printed by Clojurescript core on the error output and the tests were failing.

Even if it is an error message, IMHO it should not probably cause the entire process to exit,that's the reason of this patch. A future option for doo could be to have a flag that specifies whether to exit on error messages...or fail on error messages.

In my case I don't need either, but just go ahead and complete the tests (I can't merge this otherwise).

I am also open to workarounds in case you don't like it or things break.

bensu commented 8 years ago

Even though I understand the problem, the fix is not desirable. That would render doo useless for CI testing. The issue is that a warning is emitted as an error, which doo has no way of identifying.

If the correct behavior of your tests is to have warnings, you should try turning off the warnings from the compiler: https://github.com/clojure/clojurescript/wiki/Compiler-Options#warnings

Try with :warnings {:undeclared-var false}

arichiardi commented 8 years ago

I understand. You are prolly right I rushed the solution :D It is a bit more complicated than that, because warnings are actually printed in the error stream and I am in bootstrapped environment. I don't think they are emitted as errors...if this is the case I need to trap them somehow.