Commit graph

19985 commits

Author SHA1 Message Date
Sheetal Nandi
8fc651870e Merge pull request #19306 from Microsoft/doNoWriteFilesMultipleTimes
Fixes the issue with emit where in same file is emitted multiple times
2017-10-18 16:12:36 -07:00
Andy
0f55f4a701 Use Promise instead of PromiseLike (#19305) 2017-10-18 16:04:42 -07:00
Andy
6c1afba389 Remove extra blank line in logs (#19307) 2017-10-18 16:04:18 -07:00
Andy
f1abe3c284 Fix undefined error using getEffectiveTypeRoots (#19300) 2017-10-18 15:47:15 -07:00
Andy
e5f8287e5c findAllRefs: Support anonymous default export (#19302) 2017-10-18 15:46:39 -07:00
Mohamed Hegazy
5fa8db55b2 Fix https://github.com/Microsoft/TypeScript/issues/19270: ensure output name is a valid locale name (#19308)
* Fix https://github.com/Microsoft/TypeScript/issues/19270: ensure output name is a valid locale name

* Use const instead of var

* Add comment

* Fix typo

* Split the concat logic for generatedLCGFile
2017-10-18 15:46:09 -07:00
Sheetal Nandi
9bea0dbdc2 Actually use cached semantic diagnostics 2017-10-18 15:28:20 -07:00
csigs
7bfda06189 LEGO: Merge pull request 19312
LEGO: Merge pull request 19312
2017-10-18 15:10:49 -07:00
csigs
7d23ed152b LEGO: check in for master to temporary branch. 2017-10-18 22:10:31 +00:00
Wesley Wigham
75a687b524 make getCurrentDirectory required (#19303) 2017-10-18 14:57:18 -07:00
Nathan Shively-Sanders
b40e18df00 Merge pull request #19304 from Microsoft/dedupe-jsdoc-annotation-refactors
Fixes for refactor "Annotate with type from JSDoc"
2017-10-18 14:50:13 -07:00
Sheetal Nandi
f59241971d Merge pull request #19138 from Microsoft/configuredProjectRef
Handle the configured project lifetime to account for files added to the project after config file gets reloaded
2017-10-18 14:23:25 -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
Sheetal Nandi
f9c901ada7 Use get files affected by internally and hence use file paths as input 2017-10-18 13:34:13 -07:00
Sheetal Nandi
d3f954e0cc Add failing testcase where when d.ts file is in program, the files get emitted multiple times with --out setting 2017-10-18 13:34:12 -07:00
Nathan Shively-Sanders
f82dd7b1da Move isJSDocIndexSignature to utilities 2017-10-18 13:16:22 -07:00
Nathan Shively-Sanders
aa73ed8226 Fix bugs in jsdoc annotation refactor
1. Transform index signatures to TS index signatures.
2. Print object literals on a single line.
3. Only offer the refactor when it could add types. (There must not be a
type annotation already, and there must be a JSDoc that applies.)
2017-10-18 13:07:54 -07:00
Nathan Shively-Sanders
2473ffcaac Add a better test for jsdoc index signatures.
The test case shows that the errorenous error no longer appears.
2017-10-18 13:06:15 -07:00
Nathan Shively-Sanders
c13506e70c Update annotateWithTypeFromJSDoc tests
1. Object literals are single-line now.
2. Index signatures transform to TS index signatures.
3. The refactoring is only available when it could add types.
2017-10-18 13:04:13 -07:00
Bill Ticehurst
89e19fff35 Merge pull request #19301 from Microsoft/dev/bill/port19228toMaster
Port #19228 to master
2017-10-18 12:54:51 -07:00
Nathan Shively-Sanders
f374117858 Remove erroneous error for JSDoc object literals
appears with checkJS.
2017-10-18 11:32:48 -07:00
Bill Ticehurst
9da745d37b Update API baselines 2017-10-18 10:41:57 -07:00
Bill Ticehurst
45ba0ac3b9 Set the scriptKind from the host configuration if present 2017-10-18 10:41:57 -07:00
Andy
3220ebc182 Disambiguate same-named refactors using description (#19267)
Disambiguate same-named refactors using actionName
2017-10-18 10:23:18 -07:00
csigs
f8f662d0a1 LEGO: Merge pull request 19297
LEGO: Merge pull request 19297
2017-10-18 09:10:32 -07:00
csigs
2ca0df8844 LEGO: check in for master to temporary branch. 2017-10-18 16:10:11 +00:00
csigs
d01df0208a LEGO: Merge pull request 19288
LEGO: Merge pull request 19288
2017-10-18 03:10:30 -07:00
csigs
d08b58c7d1 LEGO: check in for master to temporary branch. 2017-10-18 10:10:12 +00:00
csigs
574ebf7575 LEGO: Merge pull request 19281
LEGO: Merge pull request 19281
2017-10-17 21:10:23 -07:00
csigs
b792daab98 LEGO: check in for master to temporary branch. 2017-10-18 04:10:04 +00:00
Wesley Wigham
f9df4e69e6 Respect newLine compiler option in language service output (#19279) 2017-10-17 18:45:21 -07:00
Mohamed Hegazy
0c1730a218 Fix #19257: Ensure a generated signature has a return type (#19264)
* Fix #19257: Ensure a generated signature has a return type

* Ensure generated properties have types

* Use the same context for multiple inferences to the same property access
2017-10-17 16:51:22 -07:00
Nathan Shively-Sanders
e962e4abfb Update baselines 2017-10-17 16:35:28 -07:00
Nathan Shively-Sanders
64fc495234 Collapse jsdoc annotation refactors to one
Previously there were two, and two always fired.
2017-10-17 16:33:52 -07:00
Wesley Wigham
2cc4f537af This wasnt required before... (#19262) 2017-10-17 15:41:16 -07:00
Sheetal Nandi
e99e9333fa Merge pull request #19263 from Microsoft/directoryWatcherInsteadOfFileWatch
This fixes the issue with tsc --watch when module emit kind is none and directory watcher gets invoked instead of file
2017-10-17 15:08:08 -07:00
Andy
d05443bb1d Add quickfix and refactoring to install @types packages (#19130)
* Add quickfix and refactoring to install @types packages

* Move `validatePackageName` to `jsTyping.ts`

* Remove combinePaths overloads

* Respond to code review

* Update api baselines

* Use native PromiseConstructor

* Return false instead of undefined

* Remove getProjectRootPath

* Update api
2017-10-17 15:04:09 -07:00
Sheetal Nandi
bd0c2103cf Merge branch 'master' into directoryWatcherInsteadOfFileWatch 2017-10-17 14:34:40 -07:00
Sheetal Nandi
a5861af00e Handle when directory watcher is invoked on file change
Fixes #19206
2017-10-17 14:13:12 -07:00
Sheetal Nandi
314172a988 Merge pull request #19239 from Microsoft/reduceWatchedDirectories
Do not watch root folders for failed lookup locations and effective type roots
2017-10-17 13:05:46 -07:00
Sheetal Nandi
49cfbb438f Added test for windows style paths watched directories 2017-10-17 12:18:17 -07:00
Andy
28509e1732 noUnusedLocals: Warn for recursive call to private method (#18920) 2017-10-17 11:57:47 -07:00
Andy
d0c4d13fe2 In tsserver, indent logged JSON (#19080) 2017-10-17 11:34:59 -07:00
Nathan Shively-Sanders
487504da46 Merge pull request #19250 from Microsoft/mark-fresh-spread-types-with-ContainsObjectLiteral
Mark fresh spread types with ContainsObjectLiteral
2017-10-17 11:01:34 -07:00
Wesley Wigham
f09fe3d0ec Dont try to run unit tests with rwc tests again (#19240) 2017-10-17 10:45:48 -07:00
Andy
2b566b9a53 Add exported members of all project files in the global completion list (#19069)
* checker.ts: Remove null check on symbols

* tsserverProjectSystem.ts: add two tests

* client.ts, completions.ts, types.ts: Add codeActions member to CompletionEntryDetails

* protocol.ts, session.ts: Add codeActions member to CompletionEntryDetails protocol

* protocol.ts, session.ts, types.ts: add hasAction to CompletionEntry

* session.ts, services.ts, types.ts: Add formattingOptions parameter to getCompletionEntryDetails

* completions.ts: define SymbolOriginInfo type

* completions.ts, services.ts: Add allSourceFiles parameter to getCompletionsAtPosition

* completions.ts, services.ts: Plumb allSourceFiles into new function getSymbolsFromOtherSourceFileExports inside getCompletionData

* completions.ts: add symbolToOriginInfoMap parameter to getCompletionEntriesFromSymbols and to return value of getCompletionData

* utilities.ts: Add getOtherModuleSymbols, getUniqueSymbolIdAsString, getUniqueSymbolId

* completions.ts: Set CompletionEntry.hasAction when symbol is found in symbolToOriginInfoMap (meaning there's an import action)

* completions.ts: Populate list with possible exports (implement getSymbolsFromOtherSourceFileExports)

* completions.ts, services.ts: Plumb host and rulesProvider into getCompletionEntryDetails

* completions.ts: Add TODO comment

* importFixes.ts: Add types ImportDeclarationMap and ImportCodeFixContext

* Move getImportDeclarations into getCodeActionForImport, immediately after the implementation

* importFixes.ts: Move createChangeTracker into getCodeActionForImport, immediately after getImportDeclarations

* importFixes.ts: Add convertToImportCodeFixContext function and reference it from the getCodeActions lambda

* importFixes.ts: Add context: ImportCodeFixContext parameter to getCodeActionForImport, update call sites, destructure it, use compilerOptions in getModuleSpecifierForNewImport

* importFixes.ts: Remove moduleSymbol parameter from getImportDeclarations and use the ambient one

* importFixes.ts: Use cachedImportDeclarations from context in getCodeActionForImport

* importFixes.ts: Move createCodeAction out, immediately above convertToImportCodeFixContext

* Move the declaration for lastImportDeclaration out of the getCodeActions lambda into getCodeActionForImport

* importFixes.ts: Use symbolToken in getCodeActionForImport

* importFixes.ts: Remove useCaseSensitiveFileNames altogether from getCodeActions lambda

* importFixes.ts: Remove local getUniqueSymbolId function and add checker parameter to calls to it

* importFixes.ts: Move getCodeActionForImport out into an export, immediately below convertToImportCodeFixContext

* completions.ts: In getCompletionEntryDetails, if there's symbolOriginInfo, call getCodeActionForImport

* importFixes.ts: Create and use importFixContext within getCodeActions lambda

* importFixes.ts: Use local newLineCharacter instead of context.newLineCharacter in getCodeActionForImport

* importFixes.ts: Use local host instead of context.host in getCodeActionForImport

* importFixes.ts: Remove dummy getCanonicalFileName line

* Filter symbols after gathering exports instead of before

* Lint

* Test, fix bugs, refactor

* Suggestions from code review

* Update api baseline

* Fix bug if previousToken is not an Identifier

* Replace `startsWith` with `stringContainsCharactersInOrder`
2017-10-17 10:20:11 -07:00
Nathan Shively-Sanders
e58aa10068 Test excess property checks of spreads of unions. 2017-10-17 09:56:28 -07:00
Nathan Shively-Sanders
08d7e182cd Mark fresh spread objects w/ContainsObjectLiteral 2017-10-17 09:56:04 -07:00