diff --git a/Gulpfile.ts b/Gulpfile.ts index 295a7ce03d9d7..28a465c47d45c 100644 --- a/Gulpfile.ts +++ b/Gulpfile.ts @@ -416,9 +416,35 @@ gulp.task(servicesFile, false, ["lib", "generate-diagnostics"], () => { ]).pipe(gulp.dest(builtLocalDirectory)); }); +// cancellationToken.js +const cancellationTokenJs = path.join(builtLocalDirectory, "cancellationToken.js"); +gulp.task(cancellationTokenJs, false, [servicesFile], () => { + const cancellationTokenProject = tsc.createProject("src/server/cancellationToken/tsconfig.json", getCompilerSettings({}, /*useBuiltCompiler*/true)); + return cancellationTokenProject.src() + .pipe(newer(cancellationTokenJs)) + .pipe(sourcemaps.init()) + .pipe(tsc(cancellationTokenProject)) + .pipe(prependCopyright()) + .pipe(sourcemaps.write(".")) + .pipe(gulp.dest(builtLocalDirectory)); +}); + +// typingsInstallerFile.js +const typingsInstallerJs = path.join(builtLocalDirectory, "typingsInstaller.js"); +gulp.task(typingsInstallerJs, false, [servicesFile], () => { + const cancellationTokenProject = tsc.createProject("src/server/typingsInstaller/tsconfig.json", getCompilerSettings({}, /*useBuiltCompiler*/true)); + return cancellationTokenProject.src() + .pipe(newer(typingsInstallerJs)) + .pipe(sourcemaps.init()) + .pipe(tsc(cancellationTokenProject)) + .pipe(prependCopyright()) + .pipe(sourcemaps.write(".")) + .pipe(gulp.dest(builtLocalDirectory)); +}); + const serverFile = path.join(builtLocalDirectory, "tsserver.js"); -gulp.task(serverFile, false, [servicesFile], () => { +gulp.task(serverFile, false, [servicesFile, typingsInstallerJs, cancellationTokenJs], () => { const serverProject = tsc.createProject("src/server/tsconfig.json", getCompilerSettings({}, /*useBuiltCompiler*/true)); return serverProject.src() .pipe(newer(serverFile)) @@ -452,7 +478,6 @@ gulp.task("lssl", "Builds language service server library", [tsserverLibraryFile gulp.task("local", "Builds the full compiler and services", [builtLocalCompiler, servicesFile, serverFile, builtGeneratedDiagnosticMessagesJSON, tsserverLibraryFile]); gulp.task("tsc", "Builds only the compiler", [builtLocalCompiler]); - // Generate Markdown spec const word2mdJs = path.join(scriptsDirectory, "word2md.js"); const word2mdTs = path.join(scriptsDirectory, "word2md.ts"); @@ -491,7 +516,7 @@ gulp.task("useDebugMode", false, [], (done) => { useDebugMode = true; done(); }) gulp.task("dontUseDebugMode", false, [], (done) => { useDebugMode = false; done(); }); gulp.task("VerifyLKG", false, [], () => { - const expectedFiles = [builtLocalCompiler, servicesFile, serverFile, nodePackageFile, nodeDefinitionsFile, standaloneDefinitionsFile, tsserverLibraryFile, tsserverLibraryDefinitionFile].concat(libraryTargets); + const expectedFiles = [builtLocalCompiler, servicesFile, serverFile, nodePackageFile, nodeDefinitionsFile, standaloneDefinitionsFile, tsserverLibraryFile, tsserverLibraryDefinitionFile, typingsInstallerJs, cancellationTokenJs].concat(libraryTargets); const missingFiles = expectedFiles.filter(function(f) { return !fs.existsSync(f); }); diff --git a/Jakefile.js b/Jakefile.js index 09958c48cde1c..94358ab5429b2 100644 --- a/Jakefile.js +++ b/Jakefile.js @@ -12,6 +12,7 @@ var compilerDirectory = "src/compiler/"; var servicesDirectory = "src/services/"; var serverDirectory = "src/server/"; var typingsInstallerDirectory = "src/server/typingsInstaller"; +var cancellationTokenDirectory = "src/server/cancellationToken"; var harnessDirectory = "src/harness/"; var libraryDirectory = "src/lib/"; var scriptsDirectory = "scripts/"; @@ -143,7 +144,7 @@ var serverCoreSources = [ var cancellationTokenSources = [ "cancellationToken.ts" ].map(function (f) { - return path.join(serverDirectory, f); + return path.join(cancellationTokenDirectory, f); }); var typingsInstallerSources = [ diff --git a/src/server/cancellationToken.ts b/src/server/cancellationToken/cancellationToken.ts similarity index 100% rename from src/server/cancellationToken.ts rename to src/server/cancellationToken/cancellationToken.ts diff --git a/src/server/cancellationToken/tsconfig.json b/src/server/cancellationToken/tsconfig.json new file mode 100644 index 0000000000000..94c81aa644f08 --- /dev/null +++ b/src/server/cancellationToken/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "noImplicitAny": true, + "noImplicitThis": true, + "removeComments": true, + "preserveConstEnums": true, + "pretty": true, + "outDir": "../../../built/local", + "module": "commonjs", + "sourceMap": true, + "stripInternal": true, + "types": [ + "node" + ] + }, + "files": [ + "cancellationToken.ts" + ] +} diff --git a/src/server/typingsInstaller/tsconfig.json b/src/server/typingsInstaller/tsconfig.json index 16ef1912ea011..20b3f5e266c58 100644 --- a/src/server/typingsInstaller/tsconfig.json +++ b/src/server/typingsInstaller/tsconfig.json @@ -5,7 +5,7 @@ "removeComments": true, "preserveConstEnums": true, "pretty": true, - "out": "../../../built/local/typingsInstaller.js", + "out": "../../built/local/typingsInstaller.js", "sourceMap": true, "stripInternal": true, "types": [ @@ -13,7 +13,6 @@ ] }, "files": [ - "../../services/services.ts", "../types.d.ts", "typingsInstaller.ts", "nodeTypingsInstaller.ts"