@@ -15,6 +15,7 @@ var servicesDirectory = "src/services/";
1515var serverDirectory = "src/server/" ;
1616var typingsInstallerDirectory = "src/server/typingsInstaller" ;
1717var cancellationTokenDirectory = "src/server/cancellationToken" ;
18+ var watchGuardDirectory = "src/server/watchGuard" ;
1819var harnessDirectory = "src/harness/" ;
1920var libraryDirectory = "src/lib/" ;
2021var scriptsDirectory = "scripts/" ;
@@ -80,6 +81,7 @@ var compilerSources = filesFromConfig("./src/compiler/tsconfig.json");
8081var servicesSources = filesFromConfig ( "./src/services/tsconfig.json" ) ;
8182var cancellationTokenSources = filesFromConfig ( path . join ( serverDirectory , "cancellationToken/tsconfig.json" ) ) ;
8283var typingsInstallerSources = filesFromConfig ( path . join ( serverDirectory , "typingsInstaller/tsconfig.json" ) ) ;
84+ var watchGuardSources = filesFromConfig ( path . join ( serverDirectory , "watchGuard/tsconfig.json" ) ) ;
8385var serverSources = filesFromConfig ( path . join ( serverDirectory , "tsconfig.json" ) )
8486var languageServiceLibrarySources = filesFromConfig ( path . join ( serverDirectory , "tsconfig.library.json" ) ) ;
8587
@@ -129,6 +131,8 @@ var harnessSources = harnessCoreSources.concat([
129131 "matchFiles.ts" ,
130132 "initializeTSConfig.ts" ,
131133 "printer.ts" ,
134+ "transform.ts" ,
135+ "customTransforms.ts" ,
132136] . map ( function ( f ) {
133137 return path . join ( unittestsDirectory , f ) ;
134138} ) ) . concat ( [
@@ -170,13 +174,21 @@ var es2016LibrarySourceMap = es2016LibrarySource.map(function (source) {
170174var es2017LibrarySource = [
171175 "es2017.object.d.ts" ,
172176 "es2017.sharedmemory.d.ts" ,
173- "es2017.string.d.ts" ,
177+ "es2017.string.d.ts"
174178] ;
175179
176180var es2017LibrarySourceMap = es2017LibrarySource . map ( function ( source ) {
177181 return { target : "lib." + source , sources : [ "header.d.ts" , source ] } ;
178182} ) ;
179183
184+ var esnextLibrarySource = [
185+ "esnext.asynciterable.d.ts"
186+ ] ;
187+
188+ var esnextLibrarySourceMap = esnextLibrarySource . map ( function ( source ) {
189+ return { target : "lib." + source , sources : [ "header.d.ts" , source ] } ;
190+ } ) ;
191+
180192var hostsLibrarySources = [ "dom.generated.d.ts" , "webworker.importscripts.d.ts" , "scripthost.d.ts" ] ;
181193
182194var librarySourceMap = [
@@ -191,11 +203,12 @@ var librarySourceMap = [
191203 { target : "lib.es2015.d.ts" , sources : [ "header.d.ts" , "es2015.d.ts" ] } ,
192204 { target : "lib.es2016.d.ts" , sources : [ "header.d.ts" , "es2016.d.ts" ] } ,
193205 { target : "lib.es2017.d.ts" , sources : [ "header.d.ts" , "es2017.d.ts" ] } ,
206+ { target : "lib.esnext.d.ts" , sources : [ "header.d.ts" , "esnext.d.ts" ] } ,
194207
195208 // JavaScript + all host library
196209 { target : "lib.d.ts" , sources : [ "header.d.ts" , "es5.d.ts" ] . concat ( hostsLibrarySources ) } ,
197210 { target : "lib.es6.d.ts" , sources : [ "header.d.ts" , "es5.d.ts" ] . concat ( es2015LibrarySources , hostsLibrarySources , "dom.iterable.d.ts" ) }
198- ] . concat ( es2015LibrarySourceMap , es2016LibrarySourceMap , es2017LibrarySourceMap ) ;
211+ ] . concat ( es2015LibrarySourceMap , es2016LibrarySourceMap , es2017LibrarySourceMap , esnextLibrarySourceMap ) ;
199212
200213var libraryTargets = librarySourceMap . map ( function ( f ) {
201214 return path . join ( builtLocalDirectory , f . target ) ;
@@ -570,8 +583,11 @@ compileFile(cancellationTokenFile, cancellationTokenSources, [builtLocalDirector
570583var typingsInstallerFile = path . join ( builtLocalDirectory , "typingsInstaller.js" ) ;
571584compileFile ( typingsInstallerFile , typingsInstallerSources , [ builtLocalDirectory ] . concat ( typingsInstallerSources ) , /*prefixes*/ [ copyright ] , /*useBuiltCompiler*/ true , { outDir : builtLocalDirectory , noOutFile : false } ) ;
572585
586+ var watchGuardFile = path . join ( builtLocalDirectory , "watchGuard.js" ) ;
587+ compileFile ( watchGuardFile , watchGuardSources , [ builtLocalDirectory ] . concat ( watchGuardSources ) , /*prefixes*/ [ copyright ] , /*useBuiltCompiler*/ true , { outDir : builtLocalDirectory , noOutFile : false } ) ;
588+
573589var serverFile = path . join ( builtLocalDirectory , "tsserver.js" ) ;
574- compileFile ( serverFile , serverSources , [ builtLocalDirectory , copyright , cancellationTokenFile , typingsInstallerFile ] . concat ( serverSources ) , /*prefixes*/ [ copyright ] , /*useBuiltCompiler*/ true , { types : [ "node" ] } ) ;
590+ compileFile ( serverFile , serverSources , [ builtLocalDirectory , copyright , cancellationTokenFile , typingsInstallerFile , watchGuardFile ] . concat ( serverSources ) . concat ( servicesSources ) , /*prefixes*/ [ copyright ] , /*useBuiltCompiler*/ true , { types : [ "node" ] , preserveConstEnums : true } ) ;
575591var tsserverLibraryFile = path . join ( builtLocalDirectory , "tsserverlibrary.js" ) ;
576592var tsserverLibraryDefinitionFile = path . join ( builtLocalDirectory , "tsserverlibrary.d.ts" ) ;
577593compileFile (
@@ -580,7 +596,7 @@ compileFile(
580596 [ builtLocalDirectory , copyright , builtLocalCompiler ] . concat ( languageServiceLibrarySources ) . concat ( libraryTargets ) ,
581597 /*prefixes*/ [ copyright ] ,
582598 /*useBuiltCompiler*/ true ,
583- { noOutFile : false , generateDeclarations : true , stripInternal : true } ,
599+ { noOutFile : false , generateDeclarations : true , stripInternal : true , preserveConstEnums : true } ,
584600 /*callback*/ function ( ) {
585601 prependFile ( copyright , tsserverLibraryDefinitionFile ) ;
586602
@@ -665,7 +681,7 @@ task("generate-spec", [specMd]);
665681// Makes a new LKG. This target does not build anything, but errors if not all the outputs are present in the built/local directory
666682desc ( "Makes a new LKG out of the built js files" ) ;
667683task ( "LKG" , [ "clean" , "release" , "local" ] . concat ( libraryTargets ) , function ( ) {
668- var expectedFiles = [ tscFile , servicesFile , serverFile , nodePackageFile , nodeDefinitionsFile , standaloneDefinitionsFile , tsserverLibraryFile , tsserverLibraryDefinitionFile , cancellationTokenFile , typingsInstallerFile , buildProtocolDts ] . concat ( libraryTargets ) ;
684+ var expectedFiles = [ tscFile , servicesFile , serverFile , nodePackageFile , nodeDefinitionsFile , standaloneDefinitionsFile , tsserverLibraryFile , tsserverLibraryDefinitionFile , cancellationTokenFile , typingsInstallerFile , buildProtocolDts , watchGuardFile ] . concat ( libraryTargets ) ;
669685 var missingFiles = expectedFiles . filter ( function ( f ) {
670686 return ! fs . existsSync ( f ) ;
671687 } ) ;
@@ -778,6 +794,7 @@ function runConsoleTests(defaultReporter, runInParallel) {
778794 }
779795
780796 var debug = process . env . debug || process . env . d ;
797+ var inspect = process . env . inspect ;
781798 tests = process . env . test || process . env . tests || process . env . t ;
782799 var light = process . env . light || false ;
783800 var stackTraceLimit = process . env . stackTraceLimit ;
@@ -807,18 +824,39 @@ function runConsoleTests(defaultReporter, runInParallel) {
807824 testTimeout = 800000 ;
808825 }
809826
810- colors = process . env . colors || process . env . color ;
811- colors = colors ? ' --no-colors ' : ' --colors ' ;
812- reporter = process . env . reporter || process . env . r || defaultReporter ;
813- var bail = ( process . env . bail || process . env . b ) ? "--bail" : "" ;
827+ var colors = process . env . colors || process . env . color || true ;
828+ var reporter = process . env . reporter || process . env . r || defaultReporter ;
829+ var bail = process . env . bail || process . env . b ;
814830 var lintFlag = process . env . lint !== 'false' ;
815831
816832 // timeout normally isn't necessary but Travis-CI has been timing out on compiler baselines occasionally
817833 // default timeout is 2sec which really should be enough, but maybe we just need a small amount longer
818834 if ( ! runInParallel ) {
819835 var startTime = mark ( ) ;
820- tests = tests ? ' -g "' + tests + '"' : '' ;
821- var cmd = "mocha" + ( debug ? " --debug-brk" : "" ) + " -R " + reporter + tests + colors + bail + ' -t ' + testTimeout + ' ' + run ;
836+ var args = [ ] ;
837+ if ( inspect ) {
838+ args . push ( "--inspect" ) ;
839+ }
840+ if ( inspect || debug ) {
841+ args . push ( "--debug-brk" ) ;
842+ }
843+ args . push ( "-R" , reporter ) ;
844+ if ( tests ) {
845+ args . push ( "-g" , `"${ tests } "` ) ;
846+ }
847+ if ( colors ) {
848+ args . push ( "--colors" ) ;
849+ }
850+ else {
851+ args . push ( "--no-colors" ) ;
852+ }
853+ if ( bail ) {
854+ args . push ( "--bail" ) ;
855+ }
856+ args . push ( "-t" , testTimeout ) ;
857+ args . push ( run ) ;
858+
859+ var cmd = "mocha " + args . join ( " " ) ;
822860 console . log ( cmd ) ;
823861
824862 var savedNodeEnv = process . env . NODE_ENV ;
@@ -839,7 +877,7 @@ function runConsoleTests(defaultReporter, runInParallel) {
839877 var savedNodeEnv = process . env . NODE_ENV ;
840878 process . env . NODE_ENV = "development" ;
841879 var startTime = mark ( ) ;
842- runTestsInParallel ( taskConfigsFolder , run , { testTimeout : testTimeout , noColors : colors === " --no-colors " } , function ( err ) {
880+ runTestsInParallel ( taskConfigsFolder , run , { testTimeout : testTimeout , noColors : ! colors } , function ( err ) {
843881 process . env . NODE_ENV = savedNodeEnv ;
844882 measure ( startTime ) ;
845883 // last worker clean everything and runs linter in case if there were no errors
0 commit comments