]> git.immae.eu Git - github/fretlink/purs-loader.git/commitdiff
PscIde full recompile on unknown module imports
authoreric thul <thul.eric@gmail.com>
Sat, 19 Nov 2016 18:12:54 +0000 (13:12 -0500)
committereric thul <thul.eric@gmail.com>
Sat, 19 Nov 2016 18:12:54 +0000 (13:12 -0500)
Instead of forcing a recompile on an unknown value and on unknown module
imports, opt to only recompile for unknown module imports. An unknown
value may be a typo. Having a faster feedback loop in these cases seems
ideal.

src/PscIde.js

index b0b56a83887385a2382c0cdffda17b5a045d33f0..2e105be4f3a2684594891218cea52a793e63a5ec 100644 (file)
@@ -139,7 +139,13 @@ function rebuild(psModule) {
       })
       .then(compileMessages => {
         if (res.resultType === 'error') {
-          if (res.result.some(item => item.errorCode === 'UnknownModule' || item.errorCode === 'UnknownName')) {
+          if (res.result.some(item => {
+            const isUnknownModule = item.errorCode === 'UnknownModule';
+
+            const isUnknownModuleImport = item.errorCode === 'UnknownName' && /Unknown module/.test(item.message);
+
+            return isUnknownModule || isUnknownModuleImport;
+          })) {
             debug('unknown module, attempting full recompile')
             return Psc.compile(psModule)
               .then(() => PsModuleMap.makeMap(options.src).then(map => {