Commit Graph

10142 Commits

Author SHA1 Message Date
Wesley Wigham fa3ce9fe6c Fix build break (#19431) 2017-10-23 14:28:20 -07:00
Andy 159a0a2197 Use NodeFlags to detect nodes inside with statements instead of climbing ancestors (#17721)
* Use NodeFlags to detect nodes inside with statements instead of climbing ancestors

* Add to ContextFlags
2017-10-23 13:38:50 -07:00
Anders Hejlsberg b4b711ff5c Infer from base constraint signatures instead of erased signatures 2017-10-23 12:35:11 -07:00
Andy 74cbb827f9 Fix lint (#19387) 2017-10-20 14:12:24 -07:00
Andy 8b7d859fb3 Make it a noImplicitAny error to fail to provide type arguments to a superclass via @augments (#18778)
* Make it a noImplicitAny error to fail to provide type arguments to a superclass via @augments

* Don't recommend to add an @augments tag if it already exists

* Suggestions from code review

* Shorten error message
2017-10-20 09:41:19 -07:00
Andy d7be61a569 Subsequent variable declarations must have same type: Mention location of other declaration (#19356)
* Subsequent variable declarations must have same type: Mention location of other declaration

* Fix naming, remove template literal
2017-10-20 08:33:16 -07:00
Nathan Shively-Sanders 1ea1254e8e Merge pull request #19355 from Microsoft/sandersn/fix-getParameterSymbolFromJSDoc
fix getParameterSymbolFromJSDoc
2017-10-19 19:35:10 -07:00
Anders Hejlsberg 8a227674ce Merge pull request #19319 from Microsoft/fixMappedTypeInferenceErrors
Fix mapped type inference errors
2017-10-19 18:13:04 -07:00
Mohamed Hegazy 8adbcefbbb Merge pull request #19149 from Kingwl/fix-incorrect-super-without-base-class
fix super call from class that has no basetype but with same symbol (#19068)
2017-10-19 17:32:42 -07:00
Mohamed Hegazy 8a292e3514 Update version (#19353)
* Update version

* Accept baselines after version change
2017-10-19 15:37:38 -07:00
Andy c1b4d59752 Fixup line and offset of rename location of refactor (#19265)
* Fixup line and offset of rename location of refactor

* Fixes

* Handle "\r" only documents

* Update api baselines

* Fix error if an edit comes *after* the rename location

* Add bounds check

* Simpler implementation: get new text, then calculate line starts the usual way
2017-10-19 14:31:23 -07:00
Nathan Shively-Sanders 97a6f14ca2 Consolidate jsdoc node getters
They are now used both in getJSDocCommentsAndTagsWorker and in
geParameterSymbolFromJSDoc.
2017-10-19 14:12:56 -07:00
Nathan Shively-Sanders c2bbfafcbe Fix getParameterSymbolFromJSDoc 2017-10-19 09:13:31 -07:00
Andy 1f282f19e0 Fix "noStringLiteral" lint errors (#19310) 2017-10-19 08:15:48 -07:00
Wesley Wigham 8212c962cd Workaround for nonnull operator on indexed accesses (#19275)
* Quick and dirty workaround

* Add third case to show current behavior

* Rename variable, replace elaboration from comment with links
2017-10-18 17:39:05 -07:00
Anders Hejlsberg a885894baa Infer properties of type {} when argument of a mapped type is incorrect 2017-10-18 16:58:56 -07:00
Nathan Shively-Sanders d8373c3dbb Merge pull request #19314 from Microsoft/fix-tsc-instrumented
Fix four tsc-instrumented bugs
2017-10-18 16:41:40 -07:00
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
Nathan Shively-Sanders 79c672424e Fix lint 2017-10-18 15:32:24 -07:00
Nathan Shively-Sanders 93c2b10f68 Fix tsc-instrumented
1. Make recursiveCreateDirectory correctly handle relative paths.
2. Remove dependency on Harness
3. Correctly increment iocapture0, iocapture1, ... iocaptureN.
4. Stop double-nesting baseline files.
2017-10-18 15:29:11 -07:00
Sheetal Nandi 9bea0dbdc2 Actually use cached semantic diagnostics 2017-10-18 15:28:20 -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 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
Nathan Shively-Sanders f82dd7b1da Move isJSDocIndexSignature to utilities 2017-10-18 13:16:22 -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 45ba0ac3b9 Set the scriptKind from the host configuration if present 2017-10-18 10:41:57 -07:00
Wesley Wigham f9df4e69e6 Respect newLine compiler option in language service output (#19279) 2017-10-17 18:45:21 -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
Andy 28509e1732 noUnusedLocals: Warn for recursive call to private method (#18920) 2017-10-17 11:57:47 -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
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 08d7e182cd Mark fresh spread objects w/ContainsObjectLiteral 2017-10-17 09:56:04 -07:00
Sheetal Nandi 50628e73c5 Do not watch root folders for failed lookup locations and effective type roots
Fixes #19170
2017-10-16 18:40:21 -07:00
Ron Buckton 06fd5e0bfe Merge pull request #19230 from Microsoft/fix18186
Do not reduce subtypes of awaited union type
2017-10-16 15:17:30 -07:00
Ron Buckton eebb0447ab Fix generated name scope when emitting async functions 2017-10-16 14:47:43 -07:00
Ron Buckton 9563246993 Do not reduce subtypes of awaited union type 2017-10-16 14:26:16 -07:00
Wesley Wigham aea7e9a7a8 Fix instantiated generic mixin declaration emit (#19144)
* Fix #18545, dont use declared type of class expression

* Accept API Baselines

* Add thus far unused flag from node builder

* Accept baseline update
2017-10-16 14:17:55 -07:00
Andy 2cb0403e2d Support 'package.json' not in package root (#19133)
* Support 'package.json' not in package root

* Test "foo/@bar"

* More tests, and don't use "types" from the root package.json if not loading the root module
2017-10-16 13:02:15 -07:00
Wesley Wigham 40222d1a77 Fix for-in emit under systemjs (#19223) 2017-10-16 12:57:23 -07:00
kingwl 30c51ed324 fix super call from class that has no basetype but with same symbol interface (#19068) 2017-10-16 10:42:22 +08:00
Anders Hejlsberg d4c0377395 Merge pull request #19185 from Microsoft/fixMappedTypesKeyofAny
Fix 'any' and 'keyof any' in mapped types
2017-10-14 12:12:25 -07:00
Mohamed Hegazy 1f63fbbc08 Merge branch 'fix11857' of https://github.com/RyanCavanaugh/TypeScript into RyanCavanaugh-fix11857 2017-10-14 11:31:39 -07:00
Anders Hejlsberg fa65bd2062 Mapped type { [P in any]: T } should yield { [x: string]: T } 2017-10-14 09:53:51 -07:00