Commit Graph

74 Commits

Author SHA1 Message Date
Sheetal Nandi
2d712e3886 Use oldProgram to create the new Program.
This helps in storing the semantic diagnostics
2019-01-17 13:52:39 -08:00
Sheetal Nandi
b6e6b99c83 Add method to release held Program in BuilderProgram 2019-01-17 13:51:48 -08:00
Sheetal Nandi
900dc8c6ac Revert BuilderProgram to be redirected object to Program in preparation to set Program in state to undefined for storing. 2019-01-17 13:48:24 -08:00
Sheetal Nandi
9fcfa28c40 Make BuilderProgram as Program 2019-01-17 13:47:40 -08:00
Wesley Wigham
fadd95f72b Fix unneeded cast lints (#29383) 2019-01-11 14:24:49 -08:00
Sheetal Nandi
a633f95da7 Do not cache semantic diagnostics with --isolated modules
Fixes #28332
2019-01-03 14:07:25 -08:00
Sheetal Nandi
7c92d09e23 When removing the errors for the exports from the file, apart from removing transitive exports, remove the diagnostics of file that import these exports
Fixes #28983
2018-12-12 15:23:51 -08:00
Sheetal Nandi
b0d85c0270 Merge pull request #28450 from Microsoft/libErrors
Remove lib file errors from builder cache when global files are to be emitted
2018-11-09 17:42:08 -08:00
Sheetal Nandi
43c447867b PR feedback 2018-11-09 16:24:19 -08:00
Sheetal Nandi
a27b29f025 Remove lib file errors when all files are to be emitted.
Fixes #26389
2018-11-09 14:43:01 -08:00
Ron Buckton
151dc074a8 Merge branch 'master' into sourceMapGenerator 2018-11-09 11:50:51 -08:00
Sheetal Nandi
9dbe037e84 Use seen map to avoid circular transitive exports to cause stack over flow
Fixes #28433
2018-11-09 09:22:39 -08:00
Sheetal Nandi
23e7330ddb When removing old diagnostics for files referencing modules that export affected file with signature change, delete the diagnostics of the module as well as anything that exports that module
Fixes #28328
2018-11-05 12:17:41 -08:00
Ron Buckton
4982803a38 Merge branch 'master' into sourceMapGenerator 2018-10-08 18:01:37 -07:00
Sheetal Nandi
ea67e3ac56 Fix watch of project with project references 2018-09-13 15:41:07 -07:00
Ron Buckton
b006287cb1 Refactor and clean up sourcemap decoder 2018-09-04 17:50:06 -07:00
Sheetal Nandi
d419968c0d Refresh semantic diagnostics when compiler options affecting semantic diagnostics generation changes
Fixes #26195
2018-08-03 16:27:25 -07:00
Sheetal Nandi
8ea95023f1 Make a map for semantic diagnostics from old state 2018-08-01 13:00:26 -07:00
Sheetal Nandi
50b75e7585 Optimize the deletion and calculation of bigger set of semantic diagnostics to be calculated 2018-07-12 13:44:56 -07:00
Sheetal Nandi
585acb1990 Use exported modules through declaration emit to invalidate the semantic diagnostics
Fixes #24986
2018-07-11 16:43:02 -07:00
Sheetal Nandi
e88305173d Fix the issue with createSemanticDiagnosticsBuilderProgram, createEmitAndSemanticDiagnosticsBuilderProgram and createAbstractBuilder not assignable to CreateProgram<T>
Fixes #24625
2018-06-04 13:03:57 -07:00
Andy
e53e56cf82 Enable '--strictNullChecks' (#22088)
* Enable '--strictNullChecks'

* Fix API baselines

* Make sys.getEnvironmentVariable non-nullable

* make properties optional instead of using `| undefined` in thier type

* reportDiagnostics should be required

* Declare firstAccessor as non-nullable

* Make `some` a type guard

* Fix `getEnvironmentVariable` definition in tests

* Pretend transformFlags are always defined

* Fix one more use of sys.getEnvironmentVariable

* `requiredResponse` accepts undefined, remove assertions

* Mark optional properties as optional instead of using `| undefined`

* Mark optional properties as optional instead of using ` | undefined`

* Remove unnecessary null assertions

* Put the bang on the declaration instead of every use

* Make `createMapFromTemplate` require a parameter

* Mark `EmitResult.emittedFiles` and `EmitResult.sourceMaps` as optional

* Plumb through undefined in emitLsit and EmitExpressionList

* `ElementAccessExpression.argumentExpression` can not be `undefined`

* Add overloads for `writeTokenText`

* Make `shouldWriteSeparatingLineTerminator` argument non-nullable

* Make `synthesizedNodeStartsOnNewLine` argument required

* `PropertyAssignment.initializer` cannot be undefined

* Use one `!` at declaration site instead of on every use site

* Capture host in a constant and avoid null assertions

* Remove few more unused assertions

* Update baselines

* Use parameter defaults

* Update baselines

* Fix lint

* Make Symbol#valueDeclaration and Symbol#declarations non-optional to reduce assertions

* Make Node#symbol and Type#symbol non-optional to reduce assertions

* Make `flags` non-nullable to reduce assertions

* Convert some asserts to type guards

* Make `isNonLocalAlias` a type guard

* Add overload for `getSymbolOfNode` for `Declaration`

* Some more `getSymbolOfNode` changes

* Push undefined suppression into `typeToTypeNodeHelper`

* `NodeBuilderContext.tracker` is never `undefined`

* use `Debug.assertDefined`

* Remove unnecessary tag

* Mark `LiteralType.freshType` and `LiteralTupe.regularType` as required
2018-05-22 14:46:57 -07:00
Sheetal Nandi
44066d6c7a Handle the test case when tsconfig file changes without needing to update the program
Fixes #23687
2018-04-27 16:59:50 -07:00
Ryan Cavanaugh
8294259ec2 Remove all reference comments from compiler/ 2018-04-11 15:38:26 -07:00
Sheetal Nandi
7329eb1ab1 Make sure config file parsing errors are available through program
Fixes #22570, #21940
2018-03-15 14:58:50 -07:00
Andy
b3edc8f9f4 Apply 'no-unnecessary-type-assertion' lint rule (#22005)
* Apply 'no-unnecessary-type-assertion' lint rule

* Fix type error

* Fix tsconfig.json

* Add --format back
2018-02-16 18:38:00 -08:00
Andy
28c4871c99 hasSameKeys: Simplify and optimize for identical maps (#21763) 2018-02-08 09:45:43 -08:00
Sheetal Nandi
2be231d339 Add createProgram on WatchCompilerHost 2018-01-19 15:52:21 -08:00
Sheetal Nandi
bd43e45075 Move getCurrentDirectory to builder program 2018-01-18 09:19:57 -08:00
Sheetal Nandi
a75badfd11 Rename on WatchBuilderProgram 2017-12-07 19:59:00 -08:00
Sheetal Nandi
8ad9a6254c Api to get underlying program from builder 2017-12-07 19:45:28 -08:00
Sheetal Nandi
9b54d2e458 Create api to create Watch<BuilderProgram> 2017-12-07 19:22:17 -08:00
Sheetal Nandi
dc62bb9abc Change builder to BuilderProgram so it is similar to operating on program 2017-12-07 18:58:15 -08:00
Sheetal Nandi
965f40f213 Use builder state in the semantic/emit builder as well 2017-12-07 17:11:36 -08:00
Sheetal Nandi
bb0fc0d2bc Convert builder state to mutable data, so that later we can create builder Program out of this 2017-12-07 14:15:59 -08:00
Sheetal Nandi
2586bb303c From builder use the builderState containing references and file infos 2017-12-07 12:39:26 -08:00
Sheetal Nandi
39bf33d841 Few renames 2017-12-07 10:02:02 -08:00
Sheetal Nandi
a21b074055 Update the builder to take options aligning with the WatchCompilerHost 2017-12-06 13:59:53 -08:00
Sheetal Nandi
012f12bcbd To handle cancellation token, remove changed/affected files from the changeset only after getting the result 2017-11-22 18:24:53 -08:00
Sheetal Nandi
ffa64e8c4f Set program as affected if emitting/diagnostics for whole program 2017-11-22 11:49:08 -08:00
Sheetal Nandi
e102fee363 Use the results from affected file enumerator apis as Affected File result 2017-11-22 11:49:08 -08:00
Sheetal Nandi
85ce1d0398 Make the builder state as internal and expose builder instead of builder state 2017-11-22 11:49:08 -08:00
Sheetal Nandi
c9a17f325b Add api to get the dependencies of the file 2017-11-22 11:48:51 -08:00
Sheetal Nandi
7ebf9d9f9d Lint errors fix 2017-11-22 11:48:50 -08:00
Sheetal Nandi
a06f0c3d9f Use builder state to emit instead 2017-11-22 11:48:50 -08:00
Andy
592ee00906 Have CompletionEntryDetails source use a relative path (#19917)
* Have CompletionEntryDetails source use a relative path

* Use getCanonicalFileName from services Instead of creating a new one
2017-11-14 14:26:49 -08:00
Sheetal Nandi
9bea0dbdc2 Actually use cached semantic diagnostics 2017-10-18 15:28:20 -07:00
Sheetal Nandi
7e780c0a1a Do not cache the semantic diagnostics when compiler options has --out since we would anyways get all fresh diagnostics 2017-10-18 13:49:54 -07:00
Sheetal Nandi
835d7cb910 Simplify emit changed files further
Also use source file version as the signature of declaration file instead of computing it from text
2017-10-18 13:34:13 -07:00
Sheetal Nandi
8fbfb5ffc0 Modify api to emit affected files using callback instead of generating in memory output
Also marking few apis introduced during watch improvements changes that are suppose to be internal for now
2017-10-18 13:34:13 -07:00