The example should probably switch to psc and make psa optional, or make external dependencies more clear · Issue #5 · ethul/purescript-webpack-example (original) (raw)

Currently, if there is no purescript-psa installed, then the example fails with a very ambiguous error:

events.js:160
      throw er; // Unhandled 'error' event
      ^

Error: spawn psaa ENOENT
    at exports._errnoException (util.js:1026:11)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32)
    at onErrorNT (internal/child_process.js:359:16)
    at _combinedTickCallback (internal/process/next_tick.js:74:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)

This is going to be very discouraging for anybody who wants to quickly try purs-loader and purescript with webpack. On purs-loader page, it mentions quickly that it uses purescript-psa, but I think it's a good idea to make the example repository as fail-safe as possible and mention it loudly here as well.

My suggestion is to list every external dependency clearly upfront in the README.md. If I'm not missing anything, this consists of purescript-psa (psa) and purescript (psc), nodejs (node), webpack (webpack). I have specified their CLI names in brackets to that it's easier to verify whether each one exists by running --version on each of them. I can create a PL later.