diff options
author | eric thul <thul.eric@gmail.com> | 2017-02-19 11:29:57 -0500 |
---|---|---|
committer | eric thul <thul.eric@gmail.com> | 2017-02-19 12:10:43 -0500 |
commit | df8798fa0eeeb3dfcce14dc10100b03f708b57f6 (patch) | |
tree | 4357fadcb0bd9c7fe73b38c6a3adcd305834d980 /src | |
parent | 8e21ab0ab3f8ba9d129f1cf3b59f87d7a2b5bfc2 (diff) | |
download | purs-loader-df8798fa0eeeb3dfcce14dc10100b03f708b57f6.tar.gz purs-loader-df8798fa0eeeb3dfcce14dc10100b03f708b57f6.tar.zst purs-loader-df8798fa0eeeb3dfcce14dc10100b03f708b57f6.zip |
Add a watch option
Similar to the way psc-ide support works, the purs-loader now tolerates
compiler errors when the `watch` option is true. When webpack is being
run in watch mode the user can set `watch` to true in order to avoid
failing the webpack bundle creation when the PureScript compiler fails.
Resolves issue #66
Resolves issue #73
Resolves issue #74
Diffstat (limited to 'src')
-rw-r--r-- | src/Psc.js | 7 | ||||
-rw-r--r-- | src/index.js | 1 |
2 files changed, 7 insertions, 1 deletions
@@ -45,7 +45,12 @@ function compile(psModule) { | |||
45 | if (errorMessage.length) { | 45 | if (errorMessage.length) { |
46 | psModule.emitError(errorMessage); | 46 | psModule.emitError(errorMessage); |
47 | } | 47 | } |
48 | reject(new Error('compilation failed')) | 48 | if (options.watch) { |
49 | resolve(psModule); | ||
50 | } | ||
51 | else { | ||
52 | reject(new Error('compilation failed')) | ||
53 | } | ||
49 | } else { | 54 | } else { |
50 | const warningMessage = stderr.join(''); | 55 | const warningMessage = stderr.join(''); |
51 | if (options.warnings && warningMessage.length) { | 56 | if (options.warnings && warningMessage.length) { |
diff --git a/src/index.js b/src/index.js index 3f5e6a8..f4a6dff 100644 --- a/src/index.js +++ b/src/index.js | |||
@@ -46,6 +46,7 @@ module.exports = function purescriptLoader(source, map) { | |||
46 | bundleNamespace: 'PS', | 46 | bundleNamespace: 'PS', |
47 | bundle: false, | 47 | bundle: false, |
48 | warnings: true, | 48 | warnings: true, |
49 | watch: false, | ||
49 | output: 'output', | 50 | output: 'output', |
50 | src: [ | 51 | src: [ |
51 | path.join('src', '**', '*.purs'), | 52 | path.join('src', '**', '*.purs'), |