Commit graph

24318 commits

Author SHA1 Message Date
Ron Buckton 6a9e077110
Merge pull request #25203 from Microsoft/gulpUpToDate
Ensure upToDate also handles referenced project outputs
2018-06-25 14:27:37 -07:00
Ron Buckton a9b4763249 Ensure upToDate also handles referenced project outputs 2018-06-25 14:14:19 -07:00
Ryan Cavanaugh fa9f071c14 Don't try to write --pretty results to unsupported consoles in --build 2018-06-25 14:10:27 -07:00
Ryan Cavanaugh d474603844 Pipe through Chakra APIs for tsc.exe --build 2018-06-25 14:10:07 -07:00
Anders Hejlsberg 5ef7e9ff34 Accept new baselines 2018-06-25 10:45:48 -10:00
Anders Hejlsberg d869e56d33 Add tests 2018-06-25 10:45:38 -10:00
Anders Hejlsberg d7443f04fd Contextual typing by tuple rest elements 2018-06-25 10:45:02 -10:00
Andy 0b5b7ef547
Fix removal of default import (#25200) 2018-06-25 12:41:32 -07:00
Andy f52c881ab1
Improve verify.renameLocations (#25192) 2018-06-25 12:41:12 -07:00
Mohamed Hegazy 9c71eaf590
Merge pull request #25194 from Vimal-Raghubir/master
Fix issue regarding WeakMap constructor
2018-06-25 12:27:57 -07:00
Andy 6cd27a3217
Support doc comment template at function expression (#25050) 2018-06-25 11:40:45 -07:00
Ron Buckton d3ef20caf0 Fix bad merge 2018-06-25 11:36:37 -07:00
Andy 4c326b2b6c
Simplify addJSDocComment (#25196)
* Simplify addJSDocComment

* Add assert
2018-06-25 11:36:37 -07:00
Andy 62e5541a66
parseJSDocCommentWorker: Don't need result (#25197) 2018-06-25 11:34:20 -07:00
Andy 8923a01481
Fix test failure (#25199) 2018-06-25 11:34:04 -07:00
Andy 9aa60f27eb
goToDefinition: Don't add duplicate definitions for PropertyAssignment and ArrowFunction at m: () => {} (#24995)
* goToDefinition: Don't add duplicate definitions for PropertyAssignment and ArrowFunction at `m: () => {}`

* Just use !isCallLikeExpression
2018-06-25 11:33:47 -07:00
Ron Buckton 52fa900b5c Merge branch 'master' into trackFailedTests 2018-06-25 11:26:08 -07:00
Andy e8e80d2bbd
Don't crash on property access with type (#25170)
* Don't crash on property access with type

* Move test
2018-06-25 11:25:52 -07:00
Andy b3a6428186
Fix completions trigger character on JSX opening tag (#25167) 2018-06-25 11:10:38 -07:00
Andy 878bf80a48
Make GetEditsForFileRenameRequestArgs not extend FileRequestArgs (#25052)
* Make GetEditsForFileRenameRequestArgs not extend FileRequestArgs

* Code review: check new location first, and use scriptInfo.getDefaultProject()

* Remove changes to e getDefaultProjectForFile (now #25060)

* Undo API changes (#24966)

* Combine edits from all projects (fixes #25052)

* Update API (#24966)

* Ignore orphan projects or projects with language service disabled
2018-06-25 11:00:51 -07:00
Andy 806a661be3
Add refactor to convert named to default export and back (#24878)
* Add refactor to convert named to default export and back

* Support ambient module

* Handle declaration kinds that can't be default-exported

* Update API (#24966)
2018-06-25 10:34:24 -07:00
Vimal Raghubir b883a82f9f
Fix issue regarding WeakMap constructor 2018-06-25 12:53:41 -04:00
csigs fefad791d3
LEGO: Merge pull request 25191
LEGO: Merge pull request 25191
2018-06-25 09:10:48 -07:00
csigs ed4236e442 LEGO: check in for master to temporary branch. 2018-06-25 16:10:24 +00:00
Andy be5986b32d
Remove unused function (#25138)
* Remove unused function

* Update API (#24966)
2018-06-25 08:32:33 -07:00
Martin Probst 55c3ec3e94 Fix decorator design:types emit for type variables.
Previously, TypeScript would resolve the reified types for the
`design:types` decorator emit in the regular `currentScope`. That scope
does not include class declaration bodies.

However when reifying types, class declarations do introduce a new scope
for any `TypeVariable`s declared on them. Because TS resolved the
EntityName for such types against the parent scope (e.g. the source
file), not the class scope, TypeScript would either fail to resolve the type (giving `TypeReferenceSerializationKind.Unknown`), or
incorrectly resolve to a different, accidentally matching symbol in the outer scope (giving `TypeWithConstructSignatureAndValue`).

This would result in an emit referencing an undeclared symbol, or
mis-referencing the wrong symbol.

    __metadata("design:type", typeof (_a = typeof TypeVariable !== "undefined" && TypeVariable) === "function" && _a || Object)
    __metadata("design:type", TypeVariable)

This change special cases `currentScope` for
`serializeTypeReferenceNode` to use a class scope, if present. This
changes the emit for a `TypeVariable` back to `Object`:

    __metadata("design:type", Object)
2018-06-25 17:24:05 +02:00
Anders Hejlsberg 3cc3b49030 Accept new baselines 2018-06-24 14:33:11 -10:00
Anders Hejlsberg 9cd8eadfd2 Update tests 2018-06-24 14:32:50 -10:00
Anders Hejlsberg 28c9f5933a Complete support for rest elements in tuples 2018-06-24 14:32:41 -10:00
csigs 22d33d2292
LEGO: Merge pull request 25165
LEGO: Merge pull request 25165
2018-06-22 15:10:59 -07:00
csigs 91568b7288 LEGO: check in for master to temporary branch. 2018-06-22 22:10:36 +00:00
Wesley Wigham bd97e12f76
Multifaceted approach to performantly enabling fileExists outside of the synchronize step in the emit host (#25107)
* Multifaceted approach to performantly enabling fileExists outside of the synchronize step in the emit host

* make cache undefinable and handle correctly

* Remove unneeded cast

* Readd assert

* More useful failure messager
2018-06-22 14:05:36 -07:00
Wesley Wigham c441451f83
Cache specifier resolutions for speed when emitting many types from the same place (#25112)
* Cache specifier resolutions for speed when emitting many types from the same place

* I swear I accepted this once already
2018-06-22 14:05:07 -07:00
Andy 38a60ac59b
Fix --strictNullChecks error with getDefaultProjectForFile (#25060)
* Fix --strictNullChecks error with getDefaultProjectForFile

* Mark methods internal
2018-06-22 11:22:34 -07:00
Andy 42fc8431f7
getEditsForFileRename: Don't update import with non-relative path if the imported file didn't move (#25159) 2018-06-22 11:21:45 -07:00
Andy cb9c3e0f6a
Don't provide a path completion if a directory name was already typed (#25055) 2018-06-22 11:18:16 -07:00
Anders Hejlsberg 88444fe414 Accept new baselines 2018-06-22 06:26:59 -10:00
Anders Hejlsberg b650d7d06b Fix issue 2018-06-22 06:26:52 -10:00
csigs 3f214445d7
LEGO: Merge pull request 25156
LEGO: Merge pull request 25156
2018-06-22 09:10:58 -07:00
Anders Hejlsberg b0d8c6551e Merge branch 'master' into restTuples
# Conflicts:
#	src/compiler/checker.ts
2018-06-22 06:10:50 -10:00
csigs 80b4c7ea9e LEGO: check in for master to temporary branch. 2018-06-22 16:10:35 +00:00
Ron Buckton f557d7cd1b Adds support for gulp.watch 2018-06-22 00:09:21 -07:00
Ron Buckton cfe65d183d
Merge pull request #25144 from Microsoft/gulpfileFixes
Fix runtests-parallel, tsserverlibrary, up-to-date checks in gulp builds
2018-06-21 21:54:42 -07:00
Ron Buckton b7918bf92d Fix runtests-parallel, tsserverlibrary, up-to-date checks 2018-06-21 21:27:46 -07:00
Anders Hejlsberg 0a94f77b72 Accept new baselines 2018-06-21 17:29:24 -10:00
Anders Hejlsberg cffa1dd2d0 Accept new baselines 2018-06-21 17:23:27 -10:00
Anders Hejlsberg 4037d07a0b Accept new baselines 2018-06-21 17:21:34 -10:00
Anders Hejlsberg c2310009e1 Update tests 2018-06-21 17:02:35 -10:00
Anders Hejlsberg ae859d6303 Update destructuring to support optional and rest elements in tuples 2018-06-21 17:01:46 -10:00
Nathan Shively-Sanders 0bb897273f
Parse nested prop and param tags the same way (#25139)
That is, only nest them if their name matches the provided parent name.
Otherwise do not nest them.

Note that this commit changes the behaviour of an incorrect typedef that
contains both an `@type` child tag and `@property` child tags.

Previously, the `@type` would be incorrectly nested under a `@property`
tag with type `object`, just like `@property` tags would be. Now, the
`@type` tag causes the entire typedef to ignore the `@property` tags and
treat the typedef as if it were an instance of the
typedef-and-nested-type pattern:

```js
/**
 * @typedef {Object} name
 * @type {{ the, actual, type }}
 */
```
2018-06-21 16:12:55 -07:00