Commit graph

24365 commits

Author SHA1 Message Date
Klaus Meinhardt 0de903ea17 rename function 2018-07-11 18:43:58 +02:00
Klaus Meinhardt f9eb976319 handle multiple prologue directives
Fixes: #24689
2018-07-10 22:42:21 +02:00
Andy 1fc1495863
Increase span of unreachable code error (#25388)
* Increase span of unreachable code error

* Add a new diagnostic for each range of unreachable statements

* Update baselines
2018-07-10 11:45:16 -07:00
Ryan Cavanaugh d7ce0eae3a
Merge pull request #25524 from RyanCavanaugh/useGetEmitDeclarations
Use getEmitDeclarations instead of .declarations
2018-07-10 10:59:06 -07:00
Andy 72be7156d2
Support completions for unique symbol exported from module (#25537) 2018-07-10 10:47:43 -07:00
Mohamed Hegazy 4bf42fd1c4
Merge pull request #25535 from Microsoft/fixAsserts
Fix assert and check for module symbol
2018-07-10 10:28:17 -07:00
Nathan Shively-Sanders c344a3ea5b
Fix bogus use before def in jsdoc (#25532)
Block scoped variables, classes and enums would issue a bogus
use-before-def error in jsdoc because name resolution always adds Value,
even when resolving a type.

Fixes #25097
2018-07-10 08:33:19 -07:00
Nathan Shively-Sanders 60c0dfeb25
Fix crash in JS when checking destructuring shorthand assignment (#25529) 2018-07-10 08:32:56 -07:00
Pi Lanningham b3b6c3bdbc Pass sourceFile to getChildren in getTokenAtPositionWorker (#25505) (#25538)
For performance reasons, we should always pass sourceFile to getChildren
if available.
2018-07-09 18:15:40 -07:00
Andy e9e5ebee73
getEditsForFileRename: Handle all projects and source-mapped files (#25522)
* getEditsForFileRename: Handle all projects and source-mapped files

* Update API (#24966)

* Use areEqual
2018-07-09 17:58:02 -07:00
Ryan Cavanaugh e532f53189
Merge pull request #25531 from RyanCavanaugh/fix25527
Don't crash when an implicit rootDir constraint is violated under composite: true
2018-07-09 17:51:17 -07:00
Mohamed Hegazy 2c70030c8a Compare normalized fileNames 2018-07-09 17:28:10 -07:00
Mohamed Hegazy 68cd382d8f Check for a module sysmbol existing before calling getReferencedSymbolsForModule 2018-07-09 17:26:35 -07:00
Sheetal Nandi 357f0d6fbd
Merge pull request #25521 from Microsoft/dontWatchAmbientModules
Do not watch modules that get resolved by ambient modules
2018-07-09 17:02:33 -07:00
Wesley Wigham 3d64b9d7ac
Handle intersection types when looking up base types for visibility (#25418)
* Handle intersection types when looking up base types for visibility

* Extract protected constructor check to function and recur on intersections

* Remove unneeded cast
2018-07-09 16:58:55 -07:00
Ryan Cavanaugh 72f0789908 Don't crash when an implicit rootDir constraint is violated under composite:true
Fixes #25527
2018-07-09 15:41:15 -07:00
Mohamed Hegazy 6b4a3b2bbb
Merge pull request #25500 from mattmccutchen/issue-25498
Fix crash in elaborateElementwise when the target property is known but it doesn't have a declaration (e.g., in a mapped type).
2018-07-09 15:35:35 -07:00
Ryan Cavanaugh 1b1ffe952b Use getEmitDeclarations instead of .declarations 2018-07-09 14:51:40 -07:00
Sheetal Nandi f941226011 Do not watch modules that get resolved by ambient modules 2018-07-09 12:05:29 -07:00
Benjamin Lichtman b5f5513e4a
Merge pull request #25329 from uniqueiniquity/jsxFolding
Add outlining spans for JSX elements
2018-07-09 12:36:23 -04:00
Benjamin Lichtman 5c7b47e6e3 Pass sourceFile as appropriate 2018-07-09 08:54:57 -07:00
Daniel Rosenwasser fe2baac33f
Merge pull request #25422 from Microsoft/actualSignatureHelpTriggers
Actual signature help trigger filtering
2018-07-08 22:09:35 -07:00
Matt McCutchen d5fd17bf0b Fix crash in elaborateElementwise when the target property is known but
it doesn't have a declaration (e.g., in a mapped type).

Fixes #25498.
2018-07-07 16:27:23 -04:00
Nathan Shively-Sanders 10b174abc1
Fix lineText in references command (#25494)
Previously it was just the identifier text. Now it is back to the full
text of the line.
2018-07-06 16:23:11 -07:00
Wesley Wigham 403df45678
Rework entity name decorator metadata fallback emit to not throw at runtime (#25421)
* Rework entity name decorator metadata fallback emit to not throw at runtime

* Remove trailing whitespace
2018-07-06 15:18:03 -07:00
Wesley Wigham 831be5d078
Introduce truncation into node builder and symbol display part writer (#24258)
* Introduce truncation into node builder and symbol display part writer

* Change default maxa truncation length to 240

* Fancy truncation + higher hard limit
2018-07-06 14:58:46 -07:00
Wesley Wigham 547856a11d
Strip literal freshness from type queries (#25471)
* Strip literal freshness from type queries

* Rename to fix typo
2018-07-06 13:07:29 -07:00
Daniel Rosenwasser ea73ee7fd7
Merge pull request #25477 from Microsoft/youProbablyMeantThisDeclaration
Link back to likely declarations in "did you mean...?" error messages
2018-07-06 12:03:10 -07:00
Daniel Rosenwasser 1d7c9540c5 Update 'package-lock.json'. 2018-07-06 11:35:08 -07:00
Daniel Rosenwasser 428f1de5bd Semicolon. 2018-07-06 11:28:50 -07:00
Nathan Shively-Sanders 6589e867fe
getJSDocReturnType gets return type from @type tags (#25486)
* get return type from `@type` tags

Previously, getJSDocReturnType did not check the `@type` tag for a type
node that has a return type. Now it does.

* Improve doc comment of getJSDocReturnType

* More type predicates in type guards!

* Update API baselines with new documentation (?!)
2018-07-06 10:46:43 -07:00
Nathan Shively-Sanders c228924543
Index signatures contribute properties to unions (#25307)
* Index signatures contribute properties to unions

This means that in a union like this:

```ts
type T = { foo: number } | { [s: string]: string }
```

`foo` is now a property of `T` with type `number | string`. Previously
it was not.

Two points of interest:

1. A readonly index signature makes the resulting union property readonly.
2. A numeric index signature only contributes number-named properties.

Fixes #21141

* Correctly handle numeric and symbol property names

1. Symbol-named properties don't contribute to unions.
2. Number-named properties should use the numeric index signature type,
if present, and fall back to the string index signature type, not the
other way round.
2018-07-06 10:46:05 -07:00
Mohamed Hegazy fd007e747d
Merge pull request #25341 from ajafff/factory-export-default
createExportAssignment: parenthesize nested class or function expression
2018-07-06 10:33:34 -07:00
Daniel Rosenwasser b706adb3dc Merge remote-tracking branch 'origin/master' into youProbablyMeantThisDeclaration 2018-07-06 10:26:58 -07:00
Nathan Shively-Sanders 1785041b8c
make getEffectiveTypeParameterDeclarations public (#25472) 2018-07-06 10:26:53 -07:00
TypeScript Bot bb57c5a6b2 Update user baselines (#25482) 2018-07-06 08:43:59 -07:00
Klaus Meinhardt 25610de38a Merge branch 'master' into factory-export-default 2018-07-06 08:40:12 +02:00
Daniel Rosenwasser e95a178e2c Accepted baselines. 2018-07-05 20:48:09 -07:00
Daniel Rosenwasser 32bb63cbcf getSuggestionForNonexistentModule -> getSuggestionForNonexistentExport 2018-07-05 20:45:00 -07:00
Daniel Rosenwasser b93845ae51 Switch from 'Error' to 'Message' on related span messages. 2018-07-05 20:34:28 -07:00
Daniel Rosenwasser 7f67328a9e Accepted baselines 2018-07-05 18:51:03 -07:00
Daniel Rosenwasser 5afc8fdcef Add a related span for suggested declaration locations in error messages. 2018-07-05 18:49:43 -07:00
Mohamed Hegazy 7a082d45f8
Merge pull request #25253 from micnic/master
Add missing jsdoc tag names
2018-07-05 16:36:03 -07:00
Wesley Wigham fd32cb97a4
Update LKG (#25470) 2018-07-05 16:05:09 -07:00
Wesley Wigham 7ad72d2440
Rework symbol visibility checking to allow for multiple potential containers (#24971)
* Rework symbol visibility checking to allow for multiple potential containers

* Express a preference for the local symbol if accessible from the enclosing declaration
2018-07-05 16:00:07 -07:00
Wesley Wigham b8b34a38ec
Actually cache intermediate results in getBaseConstraint (#25417)
* Have getBaseConstraint push resolutions for the types it actually recurs on

* Cache base constraints correctly
2018-07-05 15:54:43 -07:00
Andy 64555aa6a9
navigateTo: Collect results from all referenced projects. (#25283)
* navigateTo: Collect results from all referenced projects.

* Don't use project references, just source maps

* Move more code to session

* Test when implementation file is deleted

* Use tsserver tests instead of fourslash tests to ensure session is used

* Support find-all-references

* Restore fourslash tests

* Update emit baselines (added missing newline)

* Support rename

* @weswigham code review

* Don't open/close files

* Avoid growing `toDo` too eagerly

* @sheetalkamat code review

* Also get symlinked projects for originalLocation

* Update API (#24966)

* More @sheetalkamat code review

* Remove unnecessary test

* Update API (#24966)
2018-07-05 15:39:03 -07:00
Wesley Wigham 5b92678285
Optimize sourcemap application more (#25425)
* Optimize sourcemap application more

* Remove test-only memory hog sourceMapDecodedMappings field

* Update for style, remove unused function that triggers warnings in node 10

* Avoid all raw buffer constructor calls

* Small TDZ fix
2018-07-05 15:12:10 -07:00
Nathan Shively-Sanders 065e695a28
No merge for redirected source files in initializeTypeChecker (#25463)
Previously, redirected source files merged the same way as other source
files, effectively causing the target of the redirection to be merged
twice. mergeSymbol now has an assert (`source===target`) that catches
this condition, so this change makes sure to skip redirected source
files.

This change doesn't apply to the preceding binding loop, since the
binder handles already-bound source files correctly.
2018-07-05 13:49:34 -07:00
Mohamed Hegazy 0abefeca73
Merge pull request #25439 from ajafff/factory-arrow-comma
createArrowFunction: parenthesize comma sequence
2018-07-05 12:27:18 -07:00