Pārlūkot izejas kodu

updated build common to point to the lib version of tslint and tsc instead of the bin version. Hoping that this is what is causing the windows build to fail. Also updated to recurse through the AtomicEditor directory and lint each of the .ts files. Removed the linting of the atomic.d.ts files since d.ts files do not seem to be normally linted.

Shaddock Heath 10 gadi atpakaļ
vecāks
revīzija
c79f577dd4
1 mainītis faili ar 21 papildinājumiem un 10 dzēšanām
  1. 21 10
      Build/Scripts/BuildCommon.js

+ 21 - 10
Build/Scripts/BuildCommon.js

@@ -3,6 +3,7 @@ var os = require('os');
 var path = require("path");
 var host = require("./Host");
 var atomicRoot = host.atomicRoot;
+var glob = require('glob');
 
 namespace('build', function() {
 
@@ -15,6 +16,8 @@ namespace('build', function() {
         var modules = host.getScriptModules(platform);
         var bindCmd = host.atomicTool + " bind \"" + atomicRoot + "\" ";
         var node;
+        var tsc = "./Build/node_modules/typeScript/lib/tsc";
+        var tslint = "./Build/node_modules/tslint/lib/tslint-cli";
 
         switch(os.platform()) {
             case "win32":
@@ -35,21 +38,29 @@ namespace('build', function() {
 
         if (node) {
           // compile
-          cmds.push(node + " ./Build/node_modules/typeScript/bin/tsc -p ./Script");
+          cmds.push(node + " " + tsc + " -p ./Script");
+
           // lint
-          cmds.push(node + " ./Build/node_modules/tslint/bin/tslint -c ./Script/tslint.json ./Script/TypeScript/*.ts");
-          cmds.push(node + " ./Build/node_modules/tslint/bin/tslint -c ./Script/tslint.json ./Script/AtomicEditor/**/*.ts");
+          // Since TSLint does not yet support recursively searching for files, then we need to
+          // create a command per file.  The main issue with this is that it will abort on the first error instead
+          // of listing out all lint errors
+          glob("./Script/AtomicEditor/**/*.ts", (err, results) => {
+            results.forEach((file)=>{
+              cmds.push(node + " " + tslint + " -c ./Script/tslint.json " + file);
+            });
+
+            jake.exec(cmds, function() {
+
+              complete();
+
+            }, {
+              printStdout: true
+            });
+          });
         } else {
             throw new Error("Node not configured for this platform: " + os.platform());
         }
 
-         jake.exec(cmds, function() {
-
-          complete();
-
-        }, {
-          printStdout: true
-        });
 
   });